From 9e00c1cdffbac166ecfd5d5be80d098117e09805 Mon Sep 17 00:00:00 2001 From: iaforek Date: Mon, 13 Mar 2017 19:27:14 +0000 Subject: [PATCH 001/391] Code for Dependency Injection Article. --- .../baeldung/constructordi/SpringRunner.java | 62 +++++++++---------- .../baeldung/constructordi/domain/Car.java | 42 ++++++------- 2 files changed, 52 insertions(+), 52 deletions(-) diff --git a/spring-core/src/main/java/com/baeldung/constructordi/SpringRunner.java b/spring-core/src/main/java/com/baeldung/constructordi/SpringRunner.java index 623739f036..bffd35ec59 100644 --- a/spring-core/src/main/java/com/baeldung/constructordi/SpringRunner.java +++ b/spring-core/src/main/java/com/baeldung/constructordi/SpringRunner.java @@ -1,31 +1,31 @@ -package com.baeldung.constructordi; - -import org.springframework.context.ApplicationContext; -import org.springframework.context.annotation.AnnotationConfigApplicationContext; -import org.springframework.context.support.ClassPathXmlApplicationContext; - -import com.baeldung.constructordi.domain.Car; - -public class SpringRunner { - public static void main(String[] args) { - Car toyota = getCarFromXml(); - - System.out.println(toyota); - - toyota = getCarFromJavaConfig(); - - System.out.println(toyota); - } - - private static Car getCarFromJavaConfig() { - ApplicationContext context = new AnnotationConfigApplicationContext(Config.class); - - return context.getBean(Car.class); - } - - private static Car getCarFromXml() { - ApplicationContext context = new ClassPathXmlApplicationContext("baeldung.xml"); - - return context.getBean(Car.class); - } -} +package com.baeldung.constructordi; + +import org.springframework.context.ApplicationContext; +import org.springframework.context.annotation.AnnotationConfigApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +import com.baeldung.constructordi.domain.Car; + +public class SpringRunner { + public static void main(String[] args) { + Car toyota = getCarFromXml(); + + System.out.println(toyota); + + toyota = getCarFromJavaConfig(); + + System.out.println(toyota); + } + + private static Car getCarFromJavaConfig() { + ApplicationContext context = new AnnotationConfigApplicationContext(Config.class); + + return context.getBean(Car.class); + } + + private static Car getCarFromXml() { + ApplicationContext context = new ClassPathXmlApplicationContext("constructordi.xml"); + + return context.getBean(Car.class); + } +} diff --git a/spring-core/src/main/java/com/baeldung/constructordi/domain/Car.java b/spring-core/src/main/java/com/baeldung/constructordi/domain/Car.java index 9f68ba5cd9..5c9467fdf4 100644 --- a/spring-core/src/main/java/com/baeldung/constructordi/domain/Car.java +++ b/spring-core/src/main/java/com/baeldung/constructordi/domain/Car.java @@ -1,21 +1,21 @@ -package com.baeldung.constructordi.domain; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Component -public class Car { - private Engine engine; - private Transmission transmission; - - @Autowired - public Car(Engine engine, Transmission transmission) { - this.engine = engine; - this.transmission = transmission; - } - - @Override - public String toString() { - return String.format("Engine: %s Transmission: %s", engine, transmission); - } -} +package com.baeldung.constructordi.domain; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Component +public class Car { + private Engine engine; + private Transmission transmission; + + @Autowired + public Car(Engine engine, Transmission transmission) { + this.engine = engine; + this.transmission = transmission; + } + + @Override + public String toString() { + return String.format("Engine: %s Transmission: %s", engine, transmission); + } +} From 112fa1290f2cf7570f183d64d39788d034c7614c Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 14 Mar 2017 16:00:38 +0000 Subject: [PATCH 002/391] Added Java based configuration. Downloaded formatter.xml and reformatted all changed files. Manually changed tab into 4 spaces in XML configuration files. --- .../java/com/baeldung/setterdi/Config.java | 35 +++++++++++++++++++ .../com/baeldung/setterdi/SpringRunner.java | 33 +++++++++++++++++ .../com/baeldung/setterdi/domain/Car.java | 34 ++++++++++++++++++ .../com/baeldung/setterdi/domain/Engine.java | 22 ++++++++++++ .../com/baeldung/setterdi/domain/Trailer.java | 11 ++++++ .../setterdi/domain/Transmission.java | 17 +++++++++ .../src/main/resources/constructordi.xml | 20 +++++++++++ spring-core/src/main/resources/setterdi.xml | 24 +++++++++++++ 8 files changed, 196 insertions(+) create mode 100644 spring-core/src/main/java/com/baeldung/setterdi/Config.java create mode 100644 spring-core/src/main/java/com/baeldung/setterdi/SpringRunner.java create mode 100644 spring-core/src/main/java/com/baeldung/setterdi/domain/Car.java create mode 100644 spring-core/src/main/java/com/baeldung/setterdi/domain/Engine.java create mode 100644 spring-core/src/main/java/com/baeldung/setterdi/domain/Trailer.java create mode 100644 spring-core/src/main/java/com/baeldung/setterdi/domain/Transmission.java create mode 100644 spring-core/src/main/resources/constructordi.xml create mode 100644 spring-core/src/main/resources/setterdi.xml diff --git a/spring-core/src/main/java/com/baeldung/setterdi/Config.java b/spring-core/src/main/java/com/baeldung/setterdi/Config.java new file mode 100644 index 0000000000..68c1ae12a2 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/setterdi/Config.java @@ -0,0 +1,35 @@ +package com.baeldung.setterdi; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; + +import com.baeldung.setterdi.domain.Engine; +import com.baeldung.setterdi.domain.Trailer; +import com.baeldung.setterdi.domain.Transmission; + +@Configuration +@ComponentScan("com.baeldung.setterdi") +public class Config { + + @Bean + public Engine engine() { + Engine engine = new Engine(); + engine.setType("v8"); + engine.setVolume(5); + return engine; + } + + @Bean + public Transmission transmission() { + Transmission transmission = new Transmission(); + transmission.setType("sliding"); + return transmission; + } + + @Bean + public Trailer trailer() { + Trailer trailer = new Trailer(); + return trailer; + } +} \ No newline at end of file diff --git a/spring-core/src/main/java/com/baeldung/setterdi/SpringRunner.java b/spring-core/src/main/java/com/baeldung/setterdi/SpringRunner.java new file mode 100644 index 0000000000..bc92b79e8a --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/setterdi/SpringRunner.java @@ -0,0 +1,33 @@ +package com.baeldung.setterdi; + +import org.springframework.context.ApplicationContext; +import org.springframework.context.annotation.AnnotationConfigApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +import com.baeldung.setterdi.Config; +import com.baeldung.setterdi.domain.Car; + +public class SpringRunner { + public static void main(String[] args) { + Car toyota = getCarFromXml(); + + System.out.println(toyota); + + toyota = getCarFromJavaConfig(); + + System.out.println(toyota); + + } + + private static Car getCarFromJavaConfig() { + ApplicationContext context = new AnnotationConfigApplicationContext(Config.class); + + return context.getBean(Car.class); + } + + private static Car getCarFromXml() { + ApplicationContext context = new ClassPathXmlApplicationContext("setterdi.xml"); + + return context.getBean(Car.class); + } +} \ No newline at end of file diff --git a/spring-core/src/main/java/com/baeldung/setterdi/domain/Car.java b/spring-core/src/main/java/com/baeldung/setterdi/domain/Car.java new file mode 100644 index 0000000000..749ff3984a --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/setterdi/domain/Car.java @@ -0,0 +1,34 @@ +package com.baeldung.setterdi.domain; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Component +public class Car { + private Engine engine; + private Transmission transmission; + private Trailer trailer; + + public Car() { + } + + @Autowired + public void setEngine(Engine engine) { + this.engine = engine; + } + + @Autowired + public void setTransmission(Transmission transmission) { + this.transmission = transmission; + } + + @Autowired + public void setTrailer(Trailer trailer) { + this.trailer = trailer; + } + + @Override + public String toString() { + return String.format("Engine: %s Transmission: %s Trailer: %s", engine, transmission, trailer); + } +} diff --git a/spring-core/src/main/java/com/baeldung/setterdi/domain/Engine.java b/spring-core/src/main/java/com/baeldung/setterdi/domain/Engine.java new file mode 100644 index 0000000000..50c247cacf --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/setterdi/domain/Engine.java @@ -0,0 +1,22 @@ +package com.baeldung.setterdi.domain; + +public class Engine { + private String type; + private int volume; + + public Engine() { + } + + public void setType(String type) { + this.type = type; + } + + public void setVolume(int volume) { + this.volume = volume; + } + + @Override + public String toString() { + return String.format("%s %d", type, volume); + } +} \ No newline at end of file diff --git a/spring-core/src/main/java/com/baeldung/setterdi/domain/Trailer.java b/spring-core/src/main/java/com/baeldung/setterdi/domain/Trailer.java new file mode 100644 index 0000000000..616732309e --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/setterdi/domain/Trailer.java @@ -0,0 +1,11 @@ +package com.baeldung.setterdi.domain; + +public class Trailer { + public Trailer() { + } + + @Override + public String toString() { + return "Trailer"; + } +} diff --git a/spring-core/src/main/java/com/baeldung/setterdi/domain/Transmission.java b/spring-core/src/main/java/com/baeldung/setterdi/domain/Transmission.java new file mode 100644 index 0000000000..18b62afdc1 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/setterdi/domain/Transmission.java @@ -0,0 +1,17 @@ +package com.baeldung.setterdi.domain; + +public class Transmission { + private String type; + + public Transmission() { + } + + public void setType(String type) { + this.type = type; + } + + @Override + public String toString() { + return String.format("%s", type); + } +} diff --git a/spring-core/src/main/resources/constructordi.xml b/spring-core/src/main/resources/constructordi.xml new file mode 100644 index 0000000000..231e72adcb --- /dev/null +++ b/spring-core/src/main/resources/constructordi.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + diff --git a/spring-core/src/main/resources/setterdi.xml b/spring-core/src/main/resources/setterdi.xml new file mode 100644 index 0000000000..8b7f0d41e7 --- /dev/null +++ b/spring-core/src/main/resources/setterdi.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + From 57551f33a0d408957fd905ded0fae86e91592f6a Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 4 Apr 2017 15:10:36 +0100 Subject: [PATCH 003/391] BAEL-434 - Spring Roo project files generated by Spring Roo. No formatting applied. Added POM, java and resources folders. --- roo/pom.xml | 644 ++ .../java/com/baeldung/RooApplication.java | 23 + ...aJpaDetachableRepositoryConfiguration.java | 11 + ...ration_Roo_Jpa_Repository_Configuration.aj | 18 + .../baeldung/config/WebMvcConfiguration.java | 13 + ...figuration_Roo_ThymeleafUIConfiguration.aj | 110 + ...vcConfiguration_Roo_WebMvcConfiguration.aj | 72 + .../config/jackson/DomainModelModule.java | 11 + ...DomainModelModule_Roo_DomainModelModule.aj | 28 + .../main/java/com/baeldung/domain/Book.java | 58 + .../com/baeldung/domain/Book_Roo_Equals.aj | 41 + .../com/baeldung/domain/Book_Roo_JavaBean.aj | 100 + .../baeldung/domain/Book_Roo_Jpa_Entity.aj | 28 + .../com/baeldung/domain/Book_Roo_ToString.aj | 26 + .../baeldung/repository/BookRepository.java | 12 + .../repository/BookRepositoryCustom.java | 12 + ...ositoryCustom_Roo_Jpa_Repository_Custom.aj | 23 + .../repository/BookRepositoryImpl.java | 22 + ...kRepositoryImpl_Roo_Jpa_Repository_Impl.aj | 69 + .../BookRepository_Roo_Jpa_Repository.aj | 20 + .../com/baeldung/service/api/BookService.java | 12 + .../service/api/BookService_Roo_Service.aj | 95 + .../service/impl/BookServiceImpl.java | 12 + .../impl/BookServiceImpl_Roo_Service_Impl.aj | 177 + .../com/baeldung/web/BookDeserializer.java | 41 + ...BookDeserializer_Roo_EntityDeserializer.aj | 78 + .../java/com/baeldung/web/BookJsonMixin.java | 12 + .../BooksCollectionThymeleafController.java | 15 + ...ctionThymeleafController_Roo_Controller.aj | 35 + ...ectionThymeleafController_Roo_Thymeleaf.aj | 470 ++ .../BooksCollectionThymeleafLinkFactory.java | 11 + ...ionThymeleafLinkFactory_Roo_LinkFactory.aj | 122 + .../web/BooksItemThymeleafController.java | 15 + ...sItemThymeleafController_Roo_Controller.aj | 35 + ...ksItemThymeleafController_Roo_Thymeleaf.aj | 251 + .../web/BooksItemThymeleafLinkFactory.java | 11 + ...temThymeleafLinkFactory_Roo_LinkFactory.aj | 86 + .../java/com/baeldung/web/MainController.java | 11 + ...Controller_Roo_Thymeleaf_MainController.aj | 59 + .../web/reports/ExportingErrorException.java | 19 + .../web/reports/JasperReportsCsvExporter.java | 71 + .../web/reports/JasperReportsExporter.java | 41 + .../web/reports/JasperReportsPdfExporter.java | 71 + .../web/reports/JasperReportsXlsExporter.java | 77 + .../main/resources/application-dev.properties | 13 + roo/src/main/resources/application.properties | 8 + roo/src/main/resources/banner.txt | 9 + roo/src/main/resources/messages.properties | 146 + .../resources/static/public/css/springroo.css | 475 ++ .../resources/static/public/css/theme.css | 6914 +++++++++++++++++ .../public/fonts/fontawesome-webfont.eot | Bin 0 -> 75220 bytes .../public/fonts/fontawesome-webfont.svg | 685 ++ .../public/fonts/fontawesome-webfont.ttf | Bin 0 -> 150920 bytes .../public/fonts/fontawesome-webfont.woff | Bin 0 -> 89076 bytes .../public/fonts/fontawesome-webfont.woff2 | Bin 0 -> 70728 bytes .../fonts/glyphicons-halflings-regular.eot | Bin 0 -> 20127 bytes .../fonts/glyphicons-halflings-regular.svg | 288 + .../fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 45404 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 0 -> 23424 bytes .../fonts/glyphicons-halflings-regular.woff2 | Bin 0 -> 18028 bytes .../static/public/img/apple-touch-icon.png | Bin 0 -> 4723 bytes .../main/resources/static/public/img/en.png | Bin 0 -> 599 bytes .../main/resources/static/public/img/es.png | Bin 0 -> 469 bytes .../resources/static/public/img/favicon.ico | Bin 0 -> 26918 bytes .../main/resources/static/public/img/geo.png | Bin 0 -> 142350 bytes .../main/resources/static/public/img/logo.png | Bin 0 -> 1761 bytes .../static/public/img/owasp_logo.png | Bin 0 -> 4271 bytes .../static/public/img/springroo-logo.png | Bin 0 -> 25823 bytes .../static/public/js/dataTables.advanced.js | 1334 ++++ .../static/public/js/datatables-defaults.js | 29 + .../public/js/datetimepicker-defaults.js | 107 + .../static/public/js/inputmask-defaults.js | 30 + .../main/resources/static/public/js/main.js | 70 + .../static/public/js/moment-defaults.js | 88 + .../static/public/js/moment-locale-es.js | 73 + .../static/public/js/select2-defaults.js | 49 + .../static/public/js/validation-defaults.js | 233 + .../resources/templates/accessibility.html | 61 + .../resources/templates/books/create.html | 153 + .../main/resources/templates/books/edit.html | 171 + .../main/resources/templates/books/list.html | 98 + .../main/resources/templates/books/show.html | 86 + .../resources/templates/books/showInline.html | 67 + roo/src/main/resources/templates/error.html | 40 + .../resources/templates/fragments/footer.html | 51 + .../resources/templates/fragments/header.html | 21 + .../fragments/js/datatables-locale.js | 67 + .../templates/fragments/js/datatables.html | 78 + .../templates/fragments/js/select2.html | 16 + .../templates/fragments/languages.html | 33 + .../resources/templates/fragments/menu.html | 107 + .../fragments/modal-confirm-delete-batch.html | 34 + .../fragments/modal-confirm-delete.html | 35 + .../templates/fragments/modal-confirm.html | 32 + .../fragments/modal-export-empty-error.html | 20 + .../resources/templates/fragments/modal.html | 27 + .../templates/fragments/session-links.html | 46 + roo/src/main/resources/templates/index.html | 150 + .../layouts/default-layout-no-menu.html | 103 + .../templates/layouts/default-layout.html | 110 + .../layouts/default-list-layout.html | 121 + .../templates/layouts/home-layout.html | 104 + roo/src/main/resources/templates/login.html | 108 + .../templates/reports/export_default.jrxml | 59 + 104 files changed, 15717 insertions(+) create mode 100644 roo/pom.xml create mode 100644 roo/src/main/java/com/baeldung/RooApplication.java create mode 100644 roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration.java create mode 100644 roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration_Roo_Jpa_Repository_Configuration.aj create mode 100644 roo/src/main/java/com/baeldung/config/WebMvcConfiguration.java create mode 100644 roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_ThymeleafUIConfiguration.aj create mode 100644 roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_WebMvcConfiguration.aj create mode 100644 roo/src/main/java/com/baeldung/config/jackson/DomainModelModule.java create mode 100644 roo/src/main/java/com/baeldung/config/jackson/DomainModelModule_Roo_DomainModelModule.aj create mode 100644 roo/src/main/java/com/baeldung/domain/Book.java create mode 100644 roo/src/main/java/com/baeldung/domain/Book_Roo_Equals.aj create mode 100644 roo/src/main/java/com/baeldung/domain/Book_Roo_JavaBean.aj create mode 100644 roo/src/main/java/com/baeldung/domain/Book_Roo_Jpa_Entity.aj create mode 100644 roo/src/main/java/com/baeldung/domain/Book_Roo_ToString.aj create mode 100644 roo/src/main/java/com/baeldung/repository/BookRepository.java create mode 100644 roo/src/main/java/com/baeldung/repository/BookRepositoryCustom.java create mode 100644 roo/src/main/java/com/baeldung/repository/BookRepositoryCustom_Roo_Jpa_Repository_Custom.aj create mode 100644 roo/src/main/java/com/baeldung/repository/BookRepositoryImpl.java create mode 100644 roo/src/main/java/com/baeldung/repository/BookRepositoryImpl_Roo_Jpa_Repository_Impl.aj create mode 100644 roo/src/main/java/com/baeldung/repository/BookRepository_Roo_Jpa_Repository.aj create mode 100644 roo/src/main/java/com/baeldung/service/api/BookService.java create mode 100644 roo/src/main/java/com/baeldung/service/api/BookService_Roo_Service.aj create mode 100644 roo/src/main/java/com/baeldung/service/impl/BookServiceImpl.java create mode 100644 roo/src/main/java/com/baeldung/service/impl/BookServiceImpl_Roo_Service_Impl.aj create mode 100644 roo/src/main/java/com/baeldung/web/BookDeserializer.java create mode 100644 roo/src/main/java/com/baeldung/web/BookDeserializer_Roo_EntityDeserializer.aj create mode 100644 roo/src/main/java/com/baeldung/web/BookJsonMixin.java create mode 100644 roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController.java create mode 100644 roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Controller.aj create mode 100644 roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Thymeleaf.aj create mode 100644 roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory.java create mode 100644 roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory_Roo_LinkFactory.aj create mode 100644 roo/src/main/java/com/baeldung/web/BooksItemThymeleafController.java create mode 100644 roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Controller.aj create mode 100644 roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Thymeleaf.aj create mode 100644 roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory.java create mode 100644 roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory_Roo_LinkFactory.aj create mode 100644 roo/src/main/java/com/baeldung/web/MainController.java create mode 100644 roo/src/main/java/com/baeldung/web/MainController_Roo_Thymeleaf_MainController.aj create mode 100644 roo/src/main/java/com/baeldung/web/reports/ExportingErrorException.java create mode 100644 roo/src/main/java/com/baeldung/web/reports/JasperReportsCsvExporter.java create mode 100644 roo/src/main/java/com/baeldung/web/reports/JasperReportsExporter.java create mode 100644 roo/src/main/java/com/baeldung/web/reports/JasperReportsPdfExporter.java create mode 100644 roo/src/main/java/com/baeldung/web/reports/JasperReportsXlsExporter.java create mode 100644 roo/src/main/resources/application-dev.properties create mode 100644 roo/src/main/resources/application.properties create mode 100644 roo/src/main/resources/banner.txt create mode 100644 roo/src/main/resources/messages.properties create mode 100644 roo/src/main/resources/static/public/css/springroo.css create mode 100644 roo/src/main/resources/static/public/css/theme.css create mode 100644 roo/src/main/resources/static/public/fonts/fontawesome-webfont.eot create mode 100644 roo/src/main/resources/static/public/fonts/fontawesome-webfont.svg create mode 100644 roo/src/main/resources/static/public/fonts/fontawesome-webfont.ttf create mode 100644 roo/src/main/resources/static/public/fonts/fontawesome-webfont.woff create mode 100644 roo/src/main/resources/static/public/fonts/fontawesome-webfont.woff2 create mode 100644 roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.eot create mode 100644 roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.svg create mode 100644 roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.ttf create mode 100644 roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff create mode 100644 roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff2 create mode 100644 roo/src/main/resources/static/public/img/apple-touch-icon.png create mode 100644 roo/src/main/resources/static/public/img/en.png create mode 100644 roo/src/main/resources/static/public/img/es.png create mode 100644 roo/src/main/resources/static/public/img/favicon.ico create mode 100644 roo/src/main/resources/static/public/img/geo.png create mode 100644 roo/src/main/resources/static/public/img/logo.png create mode 100644 roo/src/main/resources/static/public/img/owasp_logo.png create mode 100644 roo/src/main/resources/static/public/img/springroo-logo.png create mode 100644 roo/src/main/resources/static/public/js/dataTables.advanced.js create mode 100644 roo/src/main/resources/static/public/js/datatables-defaults.js create mode 100644 roo/src/main/resources/static/public/js/datetimepicker-defaults.js create mode 100644 roo/src/main/resources/static/public/js/inputmask-defaults.js create mode 100644 roo/src/main/resources/static/public/js/main.js create mode 100644 roo/src/main/resources/static/public/js/moment-defaults.js create mode 100644 roo/src/main/resources/static/public/js/moment-locale-es.js create mode 100644 roo/src/main/resources/static/public/js/select2-defaults.js create mode 100644 roo/src/main/resources/static/public/js/validation-defaults.js create mode 100644 roo/src/main/resources/templates/accessibility.html create mode 100644 roo/src/main/resources/templates/books/create.html create mode 100644 roo/src/main/resources/templates/books/edit.html create mode 100644 roo/src/main/resources/templates/books/list.html create mode 100644 roo/src/main/resources/templates/books/show.html create mode 100644 roo/src/main/resources/templates/books/showInline.html create mode 100644 roo/src/main/resources/templates/error.html create mode 100644 roo/src/main/resources/templates/fragments/footer.html create mode 100644 roo/src/main/resources/templates/fragments/header.html create mode 100644 roo/src/main/resources/templates/fragments/js/datatables-locale.js create mode 100644 roo/src/main/resources/templates/fragments/js/datatables.html create mode 100644 roo/src/main/resources/templates/fragments/js/select2.html create mode 100644 roo/src/main/resources/templates/fragments/languages.html create mode 100644 roo/src/main/resources/templates/fragments/menu.html create mode 100644 roo/src/main/resources/templates/fragments/modal-confirm-delete-batch.html create mode 100644 roo/src/main/resources/templates/fragments/modal-confirm-delete.html create mode 100644 roo/src/main/resources/templates/fragments/modal-confirm.html create mode 100644 roo/src/main/resources/templates/fragments/modal-export-empty-error.html create mode 100644 roo/src/main/resources/templates/fragments/modal.html create mode 100644 roo/src/main/resources/templates/fragments/session-links.html create mode 100644 roo/src/main/resources/templates/index.html create mode 100644 roo/src/main/resources/templates/layouts/default-layout-no-menu.html create mode 100644 roo/src/main/resources/templates/layouts/default-layout.html create mode 100644 roo/src/main/resources/templates/layouts/default-list-layout.html create mode 100644 roo/src/main/resources/templates/layouts/home-layout.html create mode 100644 roo/src/main/resources/templates/login.html create mode 100644 roo/src/main/resources/templates/reports/export_default.jrxml diff --git a/roo/pom.xml b/roo/pom.xml new file mode 100644 index 0000000000..e1d69a3031 --- /dev/null +++ b/roo/pom.xml @@ -0,0 +1,644 @@ + + + + + io.spring.platform + platform-bom + Athens-RELEASE + + + 4.0.0 + com.baeldung + roo + 1.0.0.BUILD-SNAPSHOT + roo + + jar + + + 2.0.0.RC1 + 8 + UTF-8 + 1.8 + 1.5.4 + 1.4.1.RELEASE + 1.8 + 1.2.0.RC1 + 1.1.2 + 3.0.0.RELEASE + 2.0.0 + 2.0.1 + 5.0.11 + 1.0 + 3.3.6 + 1.10.12 + 1.10.11 + 1.1.2 + 1.1.2 + 2.0.2 + 2.0.2 + 1.1.2 + 1.1.2 + 1.1.2 + 2.0.0 + 2.5.4 + 4.6.2 + 1.12.3 + 3.3.1 + 1.15.0 + 2.13.0 + 4.0.3 + 0.1.0-beta.7 + 1.4.2 + 3.7.3 + 1.0.3 + + + + + + maven-snapshot-repository + Maven Snapshot Repository + https://oss.sonatype.org/content/repositories/snapshots + + false + + + true + + + + + spring-roo-repository + Spring Roo Repository + http://repo.spring.io/spring-roo + + + + + + + + + org.springframework.roo + org.springframework.roo.annotations + ${roo.version} + pom + provided + + + + io.springlets + springlets-data-jpa + ${springlets.version} + + + io.springlets + springlets-data-commons + ${springlets.version} + + + io.springlets + springlets-context + ${springlets.version} + + + org.springframework.roo + org.springframework.roo.querydsl.processor + 2.0.0.RELEASE + + + io.tracee.binding + tracee-springmvc + ${tracee.version} + + + io.springlets + springlets-boot-starter-web + ${springlets.version} + + + com.github.mxab.thymeleaf.extras + thymeleaf-extras-data-attribute + ${thymeleaf-data-dialect.version} + + + ar.com.fdvs + DynamicJasper + ${dynamicjasper.version} + + + ar.com.fdvs + DynamicJasper-core-fonts + ${dynamicjasper-fonts.version} + + + org.webjars.bower + bootstrap + ${bootstrap.version} + + + org.webjars.bower + datatables + ${datatables.version} + + + org.webjars.bower + datatables.net-bs + ${datatables-bs.version} + + + org.webjars.bower + datatables.net-buttons + ${datatables-buttons.version} + + + org.webjars.bower + datatables.net-buttons-bs + ${datatables-buttons-bs.version} + + + org.webjars.bower + datatables.net-responsive + ${datatables-responsive.version} + + + org.webjars.bower + datatables.net-responsive-bs + ${datatables-responsive-bs.version} + + + org.webjars.bower + datatables.net-select + ${datatables-select.version} + + + org.webjars.bower + datatables.net-select-bs + ${datatables-select-bs.version} + + + org.webjars.npm + jquery-datatables-checkboxes + ${datatables-checkboxes.version} + + + org.webjars.npm + jquery + + + org.webjars.npm + datatables.net + + + + + org.webjars.bower + github-com-julmot-datatables-mark-js + ${datatables-mark.version} + + + org.webjars.bower + datetimepicker + ${datetimepicker.version} + + + org.webjars.bower + font-awesome + ${fontawesome.version} + + + org.webjars.bower + jquery + ${jquery.version} + + + org.webjars + jquery.inputmask + ${jquery-inputmask.version} + + + org.webjars + jquery + + + + + org.webjars.bower + jquery-validation + ${jquery-validation.version} + + + org.webjars.bower + momentjs + ${momentjs.version} + + + org.webjars.bower + select2 + ${select2.version} + + + org.webjars.bower + select2-bootstrap-theme + ${select2-bootstrap-theme.version} + + + org.webjars + respond + ${respond.version} + + + org.webjars + html5shiv + ${html5shiv.version} + + + org.webjars.bower + ie10-viewport-bug-workaround + ${bootstrap.ie10-viewport-bug-workaround.version} + + + + + + + + org.springframework.boot + spring-boot-starter + + + org.springframework.boot + spring-boot-starter-test + test + + + + org.springframework.boot + spring-boot-devtools + true + + + + + org.springframework.roo + org.springframework.roo.annotations + pom + + + + + org.aspectj + aspectjrt + + + + + org.apache.commons + commons-lang3 + + + + + org.assertj + assertj-core + + + + + + org.springframework.boot + spring-boot-starter-data-jpa + + + org.springframework.boot + spring-boot-starter-jdbc + provided + + + org.hsqldb + hsqldb + provided + + + io.springlets + springlets-data-jpa + + + io.springlets + springlets-data-commons + + + io.springlets + springlets-context + + + javax.validation + validation-api + + + com.querydsl + querydsl-jpa + + + org.springframework.roo + org.springframework.roo.querydsl.processor + + + org.springframework.boot + spring-boot-starter-web + + + joda-time + joda-time + + + io.tracee.binding + tracee-springmvc + + + io.springlets + springlets-boot-starter-web + + + org.springframework.boot + spring-boot-starter-thymeleaf + + + nz.net.ultraq.thymeleaf + thymeleaf-layout-dialect + + + com.github.mxab.thymeleaf.extras + thymeleaf-extras-data-attribute + + + ar.com.fdvs + DynamicJasper + + + ar.com.fdvs + DynamicJasper-core-fonts + + + org.apache.poi + poi + + + org.springframework + spring-context-support + + + org.webjars + webjars-locator + + + org.webjars.bower + bootstrap + + + org.webjars.bower + datatables + + + org.webjars.bower + datatables.net-bs + + + org.webjars.bower + datatables.net-buttons + + + org.webjars.bower + datatables.net-buttons-bs + + + org.webjars.bower + datatables.net-responsive + + + org.webjars.bower + datatables.net-responsive-bs + + + org.webjars.bower + datatables.net-select + + + org.webjars.bower + datatables.net-select-bs + + + org.webjars.npm + jquery-datatables-checkboxes + + + org.webjars.bower + github-com-julmot-datatables-mark-js + + + org.webjars.bower + datetimepicker + + + org.webjars.bower + font-awesome + + + org.webjars.bower + jquery + + + org.webjars + jquery.inputmask + + + org.webjars.bower + jquery-validation + + + org.webjars.bower + momentjs + + + org.webjars.bower + select2 + + + org.webjars.bower + select2-bootstrap-theme + + + org.webjars + respond + + + org.webjars + html5shiv + + + org.webjars.bower + ie10-viewport-bug-workaround + + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + ${start-class} + exec + true + + + + + org.apache.maven.plugins + maven-compiler-plugin + + ${java.version} + ${java.version} + ${project.build.sourceEncoding} + false + + + + + org.codehaus.mojo + aspectj-maven-plugin + ${aspectj.plugin.version} + + ${java.version} + ${java.version} + ignore + ${java.version} + UTF-8 + + + + process-sources + + compile + test-compile + + + + + + org.aspectj + aspectjtools + ${aspectj.version} + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + **/*_Roo_* + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + + + --base-dir ${project.basedir} + --attribute + "projectName=${project.name}" + --attribute + "projectVersion=${project.version}" + --attribute "doctype=book" + + + ${project.groupId}:* + + org.asciidoctor.Asciidoclet + + org.asciidoctor + asciidoclet + ${asciidoclet.version} + + true + true + + http://docs.oracle.com/javase/${java.version}/docs/api/ + http://docs.oracle.com/javaee/${java.product.version}/api/ + http://docs.spring.io/spring-framework/docs/${spring.version}/javadoc-api/ + http://docs.spring.io/spring-boot/docs/${spring-boot.version}/api/ + http://fasterxml.github.io/jackson-core/javadoc/2.8/ + http://fasterxml.github.io/jackson-databind/javadoc/2.8 + http://cxf.apache.org/javadoc/latest-3.1.x/ + + src/main/java/overview.adoc + private + ${java.version} + + + + com.mysema.maven + apt-maven-plugin + 1.1.3 + + + + process + + + target/generated-sources/java + + org.springframework.roo.querydsl.processor.RooAnnotationProcessor + + + + + + + + com.querydsl + querydsl-apt + ${querydsl.version} + + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + org.apache.maven.plugins + maven-compiler-plugin + + + org.codehaus.mojo + aspectj-maven-plugin + + + org.apache.maven.plugins + maven-surefire-plugin + + + org.apache.maven.plugins + maven-javadoc-plugin + + + com.mysema.maven + apt-maven-plugin + + + + + diff --git a/roo/src/main/java/com/baeldung/RooApplication.java b/roo/src/main/java/com/baeldung/RooApplication.java new file mode 100644 index 0000000000..96f5a4ccc2 --- /dev/null +++ b/roo/src/main/java/com/baeldung/RooApplication.java @@ -0,0 +1,23 @@ +package com.baeldung; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +/** + * = RooApplication + * + * TODO Auto-generated class documentation + * + */ +@SpringBootApplication +public class RooApplication { + + /** + * TODO Auto-generated method documentation + * + * @param args + */ + public static void main(String[] args) { + SpringApplication.run(RooApplication.class, args); + } +} \ No newline at end of file diff --git a/roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration.java b/roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration.java new file mode 100644 index 0000000000..98916a9412 --- /dev/null +++ b/roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration.java @@ -0,0 +1,11 @@ +package com.baeldung.config; +import org.springframework.roo.addon.layers.repository.jpa.annotations.RooJpaRepositoryConfiguration; + +/** + * = SpringDataJpaDetachableRepositoryConfiguration + TODO Auto-generated class documentation + * + */ +@RooJpaRepositoryConfiguration +public class SpringDataJpaDetachableRepositoryConfiguration { +} diff --git a/roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration_Roo_Jpa_Repository_Configuration.aj b/roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration_Roo_Jpa_Repository_Configuration.aj new file mode 100644 index 0000000000..7f54997ddb --- /dev/null +++ b/roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration_Roo_Jpa_Repository_Configuration.aj @@ -0,0 +1,18 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.config; + +import com.baeldung.RooApplication; +import com.baeldung.config.SpringDataJpaDetachableRepositoryConfiguration; +import io.springlets.data.jpa.repository.support.DetachableJpaRepositoryImpl; +import org.springframework.context.annotation.Configuration; +import org.springframework.data.jpa.repository.config.EnableJpaRepositories; + +privileged aspect SpringDataJpaDetachableRepositoryConfiguration_Roo_Jpa_Repository_Configuration { + + declare @type: SpringDataJpaDetachableRepositoryConfiguration: @Configuration; + + declare @type: SpringDataJpaDetachableRepositoryConfiguration: @EnableJpaRepositories(repositoryBaseClass = DetachableJpaRepositoryImpl.class, basePackageClasses = RooApplication.class); + +} diff --git a/roo/src/main/java/com/baeldung/config/WebMvcConfiguration.java b/roo/src/main/java/com/baeldung/config/WebMvcConfiguration.java new file mode 100644 index 0000000000..5276300091 --- /dev/null +++ b/roo/src/main/java/com/baeldung/config/WebMvcConfiguration.java @@ -0,0 +1,13 @@ +package com.baeldung.config; +import org.springframework.roo.addon.web.mvc.controller.annotations.config.RooWebMvcConfiguration; +import org.springframework.roo.addon.web.mvc.thymeleaf.annotations.RooWebMvcThymeleafUIConfiguration; + +/** + * = WebMvcConfiguration + TODO Auto-generated class documentation + * + */ +@RooWebMvcConfiguration(defaultLanguage = "en") +@RooWebMvcThymeleafUIConfiguration +public class WebMvcConfiguration { +} diff --git a/roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_ThymeleafUIConfiguration.aj b/roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_ThymeleafUIConfiguration.aj new file mode 100644 index 0000000000..c21cb6b68c --- /dev/null +++ b/roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_ThymeleafUIConfiguration.aj @@ -0,0 +1,110 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.config; + +import com.baeldung.config.WebMvcConfiguration; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.autoconfigure.thymeleaf.ThymeleafProperties; +import org.springframework.context.ApplicationContext; +import org.springframework.context.ApplicationContextAware; +import org.springframework.context.annotation.Bean; +import org.thymeleaf.TemplateEngine; +import org.thymeleaf.spring4.templateresolver.SpringResourceTemplateResolver; +import org.thymeleaf.spring4.view.ThymeleafViewResolver; +import org.thymeleaf.templatemode.TemplateMode; + +privileged aspect WebMvcConfiguration_Roo_ThymeleafUIConfiguration { + + declare parents: WebMvcConfiguration implements ApplicationContextAware; + + /** + * TODO Auto-generated attribute documentation + * + */ + @Autowired + private ThymeleafProperties WebMvcConfiguration.thymeleafProperties; + + /** + * TODO Auto-generated attribute documentation + * + */ + @Autowired + private TemplateEngine WebMvcConfiguration.templateEngine; + + /** + * TODO Auto-generated attribute documentation + * + */ + private ApplicationContext WebMvcConfiguration.applicationContext; + + /** + * TODO Auto-generated method documentation + * + * @return ThymeleafProperties + */ + public ThymeleafProperties WebMvcConfiguration.getThymeleafProperties() { + return thymeleafProperties; + } + + /** + * TODO Auto-generated method documentation + * + * @return TemplateEngine + */ + public TemplateEngine WebMvcConfiguration.getTemplateEngine() { + return templateEngine; + } + + /** + * TODO Auto-generated method documentation + * + * @return ApplicationContext + */ + public ApplicationContext WebMvcConfiguration.getApplicationContext() { + return applicationContext; + } + + /** + * TODO Auto-generated method documentation + * + * @param applicationContext + */ + public void WebMvcConfiguration.setApplicationContext(ApplicationContext applicationContext) { + this.applicationContext = applicationContext; + } + + /** + * TODO Auto-generated method documentation + * + * @return ThymeleafViewResolver + */ + @Bean + public ThymeleafViewResolver WebMvcConfiguration.javascriptThymeleafViewResolver() { + ThymeleafViewResolver resolver = new ThymeleafViewResolver(); + resolver.setTemplateEngine(getTemplateEngine()); + resolver.setCharacterEncoding("UTF-8"); + resolver.setContentType("application/javascript"); + resolver.setViewNames(new String[] {"*.js"}); + resolver.setCache(getThymeleafProperties().isCache()); + return resolver; + } + + /** + * TODO Auto-generated method documentation + * + * @return SpringResourceTemplateResolver + */ + @Bean + public SpringResourceTemplateResolver WebMvcConfiguration.javascriptTemplateResolver() { + SpringResourceTemplateResolver resolver = new SpringResourceTemplateResolver(); + resolver.setApplicationContext(getApplicationContext()); + resolver.setPrefix("classpath:/templates/fragments/js/"); + resolver.setTemplateMode(TemplateMode.JAVASCRIPT); + resolver.setCharacterEncoding("UTF-8"); + resolver.setCheckExistence(true); + resolver.setCacheable(getThymeleafProperties().isCache()); + return resolver; + } + +} diff --git a/roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_WebMvcConfiguration.aj b/roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_WebMvcConfiguration.aj new file mode 100644 index 0000000000..8031c83ca3 --- /dev/null +++ b/roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_WebMvcConfiguration.aj @@ -0,0 +1,72 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.config; + +import com.baeldung.config.WebMvcConfiguration; +import io.tracee.binding.springmvc.TraceeInterceptor; +import java.lang.Override; +import java.util.Locale; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; +import org.springframework.validation.beanvalidation.LocalValidatorFactoryBean; +import org.springframework.web.servlet.LocaleResolver; +import org.springframework.web.servlet.config.annotation.InterceptorRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; +import org.springframework.web.servlet.i18n.LocaleChangeInterceptor; +import org.springframework.web.servlet.i18n.SessionLocaleResolver; + +privileged aspect WebMvcConfiguration_Roo_WebMvcConfiguration { + + declare parents: WebMvcConfiguration extends WebMvcConfigurerAdapter; + + declare @type: WebMvcConfiguration: @Configuration; + + /** + * TODO Auto-generated method documentation + * + * @return LocalValidatorFactoryBean + */ + @Primary + @Bean + public LocalValidatorFactoryBean WebMvcConfiguration.validator() { + return new LocalValidatorFactoryBean(); + } + + /** + * TODO Auto-generated method documentation + * + * @return LocaleResolver + */ + @Bean + public LocaleResolver WebMvcConfiguration.localeResolver() { + SessionLocaleResolver localeResolver = new SessionLocaleResolver(); + localeResolver.setDefaultLocale(new Locale("en")); + return localeResolver; + } + + /** + * TODO Auto-generated method documentation + * + * @return LocaleChangeInterceptor + */ + @Bean + public LocaleChangeInterceptor WebMvcConfiguration.localeChangeInterceptor() { + LocaleChangeInterceptor localeChangeInterceptor = new LocaleChangeInterceptor(); + localeChangeInterceptor.setParamName("lang"); + return localeChangeInterceptor; + } + + /** + * TODO Auto-generated method documentation + * + * @param registry + */ + @Override + public void WebMvcConfiguration.addInterceptors(InterceptorRegistry registry) { + registry.addInterceptor(localeChangeInterceptor()); + registry.addInterceptor(new TraceeInterceptor()); + } + +} diff --git a/roo/src/main/java/com/baeldung/config/jackson/DomainModelModule.java b/roo/src/main/java/com/baeldung/config/jackson/DomainModelModule.java new file mode 100644 index 0000000000..2a66a48846 --- /dev/null +++ b/roo/src/main/java/com/baeldung/config/jackson/DomainModelModule.java @@ -0,0 +1,11 @@ +package com.baeldung.config.jackson; +import org.springframework.roo.addon.web.mvc.controller.annotations.config.RooDomainModelModule; + +/** + * = DomainModelModule + TODO Auto-generated class documentation + * + */ +@RooDomainModelModule +public class DomainModelModule { +} diff --git a/roo/src/main/java/com/baeldung/config/jackson/DomainModelModule_Roo_DomainModelModule.aj b/roo/src/main/java/com/baeldung/config/jackson/DomainModelModule_Roo_DomainModelModule.aj new file mode 100644 index 0000000000..4683a3fe2d --- /dev/null +++ b/roo/src/main/java/com/baeldung/config/jackson/DomainModelModule_Roo_DomainModelModule.aj @@ -0,0 +1,28 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.config.jackson; + +import com.baeldung.config.jackson.DomainModelModule; +import com.baeldung.domain.Book; +import com.baeldung.web.BookJsonMixin; +import com.fasterxml.jackson.databind.module.SimpleModule; +import org.springframework.boot.jackson.JsonComponent; + +privileged aspect DomainModelModule_Roo_DomainModelModule { + + declare parents: DomainModelModule extends SimpleModule; + + declare @type: DomainModelModule: @JsonComponent; + + /** + * TODO Auto-generated constructor documentation + * + */ + public DomainModelModule.new() { + // Mixin registration + + setMixInAnnotation(Book.class, BookJsonMixin.class); + } + +} diff --git a/roo/src/main/java/com/baeldung/domain/Book.java b/roo/src/main/java/com/baeldung/domain/Book.java new file mode 100644 index 0000000000..99e7b894e6 --- /dev/null +++ b/roo/src/main/java/com/baeldung/domain/Book.java @@ -0,0 +1,58 @@ +package com.baeldung.domain; +import org.springframework.roo.addon.javabean.annotations.RooEquals; +import org.springframework.roo.addon.javabean.annotations.RooJavaBean; +import org.springframework.roo.addon.javabean.annotations.RooToString; +import org.springframework.roo.addon.jpa.annotations.entity.RooJpaEntity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.Version; +import javax.validation.constraints.NotNull; + +/** + * = Book + TODO Auto-generated class documentation + * + */ +@RooJavaBean +@RooToString +@RooJpaEntity +@RooEquals(isJpaEntity = true) +public class Book { + + /** + * TODO Auto-generated attribute documentation + * + */ + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + private Long id; + + /** + * TODO Auto-generated attribute documentation + * + */ + @Version + private Integer version; + + /** + * TODO Auto-generated attribute documentation + * + */ + @NotNull + private String title; + + /** + * TODO Auto-generated attribute documentation + * + */ + @NotNull + private String author; + + /** + * TODO Auto-generated attribute documentation + * + */ + @NotNull + private String isbn; +} diff --git a/roo/src/main/java/com/baeldung/domain/Book_Roo_Equals.aj b/roo/src/main/java/com/baeldung/domain/Book_Roo_Equals.aj new file mode 100644 index 0000000000..51d6069eb0 --- /dev/null +++ b/roo/src/main/java/com/baeldung/domain/Book_Roo_Equals.aj @@ -0,0 +1,41 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.domain; + +import com.baeldung.domain.Book; +import java.util.Objects; + +privileged aspect Book_Roo_Equals { + + /** + * This `equals` implementation is specific for JPA entities and uses + * the entity identifier for it, following the article in + * https://vladmihalcea.com/2016/06/06/how-to-implement-equals-and-hashcode-using-the-jpa-entity-identifier/ + * + * @param obj + * @return Boolean + */ + public boolean Book.equals(Object obj) { + if (this == obj) { + return true; + } + // instanceof is false if the instance is null + if (!(obj instanceof Book)) { + return false; + } + return getId() != null && Objects.equals(getId(), ((Book) obj).getId()); + } + + /** + * This `hashCode` implementation is specific for JPA entities and uses a fixed `int` value to be able + * to identify the entity in collections after a new id is assigned to the entity, following the article in + * https://vladmihalcea.com/2016/06/06/how-to-implement-equals-and-hashcode-using-the-jpa-entity-identifier/ + * + * @return Integer + */ + public int Book.hashCode() { + return 31; + } + +} diff --git a/roo/src/main/java/com/baeldung/domain/Book_Roo_JavaBean.aj b/roo/src/main/java/com/baeldung/domain/Book_Roo_JavaBean.aj new file mode 100644 index 0000000000..3ea375ce12 --- /dev/null +++ b/roo/src/main/java/com/baeldung/domain/Book_Roo_JavaBean.aj @@ -0,0 +1,100 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.domain; + +import com.baeldung.domain.Book; + +privileged aspect Book_Roo_JavaBean { + + /** + * TODO Auto-generated method documentation + * + * @return Long + */ + public Long Book.getId() { + return this.id; + } + + /** + * TODO Auto-generated method documentation + * + * @param id + */ + public void Book.setId(Long id) { + this.id = id; + } + + /** + * TODO Auto-generated method documentation + * + * @return Integer + */ + public Integer Book.getVersion() { + return this.version; + } + + /** + * TODO Auto-generated method documentation + * + * @param version + */ + public void Book.setVersion(Integer version) { + this.version = version; + } + + /** + * TODO Auto-generated method documentation + * + * @return String + */ + public String Book.getTitle() { + return this.title; + } + + /** + * TODO Auto-generated method documentation + * + * @param title + */ + public void Book.setTitle(String title) { + this.title = title; + } + + /** + * TODO Auto-generated method documentation + * + * @return String + */ + public String Book.getAuthor() { + return this.author; + } + + /** + * TODO Auto-generated method documentation + * + * @param author + */ + public void Book.setAuthor(String author) { + this.author = author; + } + + /** + * TODO Auto-generated method documentation + * + * @return String + */ + public String Book.getIsbn() { + return this.isbn; + } + + /** + * TODO Auto-generated method documentation + * + * @param isbn + */ + public void Book.setIsbn(String isbn) { + this.isbn = isbn; + } + +} diff --git a/roo/src/main/java/com/baeldung/domain/Book_Roo_Jpa_Entity.aj b/roo/src/main/java/com/baeldung/domain/Book_Roo_Jpa_Entity.aj new file mode 100644 index 0000000000..739a00e058 --- /dev/null +++ b/roo/src/main/java/com/baeldung/domain/Book_Roo_Jpa_Entity.aj @@ -0,0 +1,28 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.domain; + +import com.baeldung.domain.Book; +import io.springlets.format.EntityFormat; +import javax.persistence.Entity; + +privileged aspect Book_Roo_Jpa_Entity { + + declare @type: Book: @Entity; + + declare @type: Book: @EntityFormat; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String Book.ITERABLE_TO_ADD_CANT_BE_NULL_MESSAGE = "The given Iterable of items to add can't be null!"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String Book.ITERABLE_TO_REMOVE_CANT_BE_NULL_MESSAGE = "The given Iterable of items to add can't be null!"; + +} diff --git a/roo/src/main/java/com/baeldung/domain/Book_Roo_ToString.aj b/roo/src/main/java/com/baeldung/domain/Book_Roo_ToString.aj new file mode 100644 index 0000000000..69083eaf9e --- /dev/null +++ b/roo/src/main/java/com/baeldung/domain/Book_Roo_ToString.aj @@ -0,0 +1,26 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.domain; + +import com.baeldung.domain.Book; + +privileged aspect Book_Roo_ToString { + + /** + * TODO Auto-generated method documentation + * + * @return String + */ + public String Book.toString() { + return "Book {" + + "id='" + id + '\'' + + ", version='" + version + '\'' + + ", title='" + title + '\'' + + ", author='" + author + '\'' + + ", isbn='" + isbn + '\'' + + ", ITERABLE_TO_ADD_CANT_BE_NULL_MESSAGE='" + ITERABLE_TO_ADD_CANT_BE_NULL_MESSAGE + '\'' + + ", ITERABLE_TO_REMOVE_CANT_BE_NULL_MESSAGE='" + ITERABLE_TO_REMOVE_CANT_BE_NULL_MESSAGE + '\'' + "}" + super.toString(); + } + +} diff --git a/roo/src/main/java/com/baeldung/repository/BookRepository.java b/roo/src/main/java/com/baeldung/repository/BookRepository.java new file mode 100644 index 0000000000..78567c1c92 --- /dev/null +++ b/roo/src/main/java/com/baeldung/repository/BookRepository.java @@ -0,0 +1,12 @@ +package com.baeldung.repository; +import com.baeldung.domain.Book; +import org.springframework.roo.addon.layers.repository.jpa.annotations.RooJpaRepository; + +/** + * = BookRepository + TODO Auto-generated class documentation + * + */ +@RooJpaRepository(entity = Book.class) +public interface BookRepository { +} diff --git a/roo/src/main/java/com/baeldung/repository/BookRepositoryCustom.java b/roo/src/main/java/com/baeldung/repository/BookRepositoryCustom.java new file mode 100644 index 0000000000..44469e31b6 --- /dev/null +++ b/roo/src/main/java/com/baeldung/repository/BookRepositoryCustom.java @@ -0,0 +1,12 @@ +package com.baeldung.repository; +import com.baeldung.domain.Book; +import org.springframework.roo.addon.layers.repository.jpa.annotations.RooJpaRepositoryCustom; + +/** + * = BookRepositoryCustom + TODO Auto-generated class documentation + * + */ +@RooJpaRepositoryCustom(entity = Book.class) +public interface BookRepositoryCustom { +} diff --git a/roo/src/main/java/com/baeldung/repository/BookRepositoryCustom_Roo_Jpa_Repository_Custom.aj b/roo/src/main/java/com/baeldung/repository/BookRepositoryCustom_Roo_Jpa_Repository_Custom.aj new file mode 100644 index 0000000000..7cb44f84a1 --- /dev/null +++ b/roo/src/main/java/com/baeldung/repository/BookRepositoryCustom_Roo_Jpa_Repository_Custom.aj @@ -0,0 +1,23 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.repository; + +import com.baeldung.domain.Book; +import com.baeldung.repository.BookRepositoryCustom; +import io.springlets.data.domain.GlobalSearch; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; + +privileged aspect BookRepositoryCustom_Roo_Jpa_Repository_Custom { + + /** + * TODO Auto-generated method documentation + * + * @param globalSearch + * @param pageable + * @return Page + */ + public abstract Page BookRepositoryCustom.findAll(GlobalSearch globalSearch, Pageable pageable); + +} diff --git a/roo/src/main/java/com/baeldung/repository/BookRepositoryImpl.java b/roo/src/main/java/com/baeldung/repository/BookRepositoryImpl.java new file mode 100644 index 0000000000..e59ff8ab0e --- /dev/null +++ b/roo/src/main/java/com/baeldung/repository/BookRepositoryImpl.java @@ -0,0 +1,22 @@ +package com.baeldung.repository; + +import io.springlets.data.jpa.repository.support.QueryDslRepositorySupportExt; +import org.springframework.roo.addon.layers.repository.jpa.annotations.RooJpaRepositoryCustomImpl; +import com.baeldung.domain.Book; + +/** + * = BookRepositoryImpl + * + * TODO Auto-generated class documentation + * + */ +@RooJpaRepositoryCustomImpl(repository = BookRepositoryCustom.class) +public class BookRepositoryImpl extends QueryDslRepositorySupportExt { + + /** + * TODO Auto-generated constructor documentation + */ + BookRepositoryImpl() { + super(Book.class); + } +} \ No newline at end of file diff --git a/roo/src/main/java/com/baeldung/repository/BookRepositoryImpl_Roo_Jpa_Repository_Impl.aj b/roo/src/main/java/com/baeldung/repository/BookRepositoryImpl_Roo_Jpa_Repository_Impl.aj new file mode 100644 index 0000000000..9e3db3e1f4 --- /dev/null +++ b/roo/src/main/java/com/baeldung/repository/BookRepositoryImpl_Roo_Jpa_Repository_Impl.aj @@ -0,0 +1,69 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.repository; + +import com.baeldung.domain.Book; +import com.baeldung.domain.QBook; +import com.baeldung.repository.BookRepositoryCustom; +import com.baeldung.repository.BookRepositoryImpl; +import com.querydsl.core.types.Path; +import com.querydsl.jpa.JPQLQuery; +import io.springlets.data.domain.GlobalSearch; +import io.springlets.data.jpa.repository.support.QueryDslRepositorySupportExt.AttributeMappingBuilder; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import org.springframework.transaction.annotation.Transactional; + +privileged aspect BookRepositoryImpl_Roo_Jpa_Repository_Impl { + + declare parents: BookRepositoryImpl implements BookRepositoryCustom; + + declare @type: BookRepositoryImpl: @Transactional(readOnly = true); + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BookRepositoryImpl.TITLE = "title"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BookRepositoryImpl.AUTHOR = "author"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BookRepositoryImpl.ISBN = "isbn"; + + /** + * TODO Auto-generated method documentation + * + * @param globalSearch + * @param pageable + * @return Page + */ + public Page BookRepositoryImpl.findAll(GlobalSearch globalSearch, Pageable pageable) { + + QBook book = QBook.book; + + JPQLQuery query = from(book); + + Path[] paths = new Path[] {book.title,book.author,book.isbn}; + applyGlobalSearch(globalSearch, query, paths); + + AttributeMappingBuilder mapping = buildMapper() + .map(TITLE, book.title) + .map(AUTHOR, book.author) + .map(ISBN, book.isbn); + + applyPagination(pageable, query, mapping); + applyOrderById(query); + + return loadPage(query, pageable, book); + } + +} diff --git a/roo/src/main/java/com/baeldung/repository/BookRepository_Roo_Jpa_Repository.aj b/roo/src/main/java/com/baeldung/repository/BookRepository_Roo_Jpa_Repository.aj new file mode 100644 index 0000000000..2f57062054 --- /dev/null +++ b/roo/src/main/java/com/baeldung/repository/BookRepository_Roo_Jpa_Repository.aj @@ -0,0 +1,20 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.repository; + +import com.baeldung.domain.Book; +import com.baeldung.repository.BookRepository; +import com.baeldung.repository.BookRepositoryCustom; +import io.springlets.data.jpa.repository.DetachableJpaRepository; +import org.springframework.transaction.annotation.Transactional; + +privileged aspect BookRepository_Roo_Jpa_Repository { + + declare parents: BookRepository extends DetachableJpaRepository; + + declare parents: BookRepository extends BookRepositoryCustom; + + declare @type: BookRepository: @Transactional(readOnly = true); + +} diff --git a/roo/src/main/java/com/baeldung/service/api/BookService.java b/roo/src/main/java/com/baeldung/service/api/BookService.java new file mode 100644 index 0000000000..212ee1cdfc --- /dev/null +++ b/roo/src/main/java/com/baeldung/service/api/BookService.java @@ -0,0 +1,12 @@ +package com.baeldung.service.api; +import com.baeldung.domain.Book; +import org.springframework.roo.addon.layers.service.annotations.RooService; + +/** + * = BookService + TODO Auto-generated class documentation + * + */ +@RooService(entity = Book.class) +public interface BookService { +} diff --git a/roo/src/main/java/com/baeldung/service/api/BookService_Roo_Service.aj b/roo/src/main/java/com/baeldung/service/api/BookService_Roo_Service.aj new file mode 100644 index 0000000000..d5698ffb37 --- /dev/null +++ b/roo/src/main/java/com/baeldung/service/api/BookService_Roo_Service.aj @@ -0,0 +1,95 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.service.api; + +import com.baeldung.domain.Book; +import com.baeldung.service.api.BookService; +import io.springlets.data.domain.GlobalSearch; +import io.springlets.format.EntityResolver; +import java.util.List; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; + +privileged aspect BookService_Roo_Service { + + declare parents: BookService extends EntityResolver; + + /** + * TODO Auto-generated method documentation + * + * @param id + * @return Book + */ + public abstract Book BookService.findOne(Long id); + + /** + * TODO Auto-generated method documentation + * + * @param book + */ + public abstract void BookService.delete(Book book); + + /** + * TODO Auto-generated method documentation + * + * @param entities + * @return List + */ + public abstract List BookService.save(Iterable entities); + + /** + * TODO Auto-generated method documentation + * + * @param ids + */ + public abstract void BookService.delete(Iterable ids); + + /** + * TODO Auto-generated method documentation + * + * @param entity + * @return Book + */ + public abstract Book BookService.save(Book entity); + + /** + * TODO Auto-generated method documentation + * + * @param id + * @return Book + */ + public abstract Book BookService.findOneForUpdate(Long id); + + /** + * TODO Auto-generated method documentation + * + * @param ids + * @return List + */ + public abstract List BookService.findAll(Iterable ids); + + /** + * TODO Auto-generated method documentation + * + * @return List + */ + public abstract List BookService.findAll(); + + /** + * TODO Auto-generated method documentation + * + * @return Long + */ + public abstract long BookService.count(); + + /** + * TODO Auto-generated method documentation + * + * @param globalSearch + * @param pageable + * @return Page + */ + public abstract Page BookService.findAll(GlobalSearch globalSearch, Pageable pageable); + +} diff --git a/roo/src/main/java/com/baeldung/service/impl/BookServiceImpl.java b/roo/src/main/java/com/baeldung/service/impl/BookServiceImpl.java new file mode 100644 index 0000000000..1b44547629 --- /dev/null +++ b/roo/src/main/java/com/baeldung/service/impl/BookServiceImpl.java @@ -0,0 +1,12 @@ +package com.baeldung.service.impl; +import com.baeldung.service.api.BookService; +import org.springframework.roo.addon.layers.service.annotations.RooServiceImpl; + +/** + * = BookServiceImpl + TODO Auto-generated class documentation + * + */ +@RooServiceImpl(service = BookService.class) +public class BookServiceImpl implements BookService { +} diff --git a/roo/src/main/java/com/baeldung/service/impl/BookServiceImpl_Roo_Service_Impl.aj b/roo/src/main/java/com/baeldung/service/impl/BookServiceImpl_Roo_Service_Impl.aj new file mode 100644 index 0000000000..8f9fb846aa --- /dev/null +++ b/roo/src/main/java/com/baeldung/service/impl/BookServiceImpl_Roo_Service_Impl.aj @@ -0,0 +1,177 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.service.impl; + +import com.baeldung.domain.Book; +import com.baeldung.repository.BookRepository; +import com.baeldung.service.impl.BookServiceImpl; +import io.springlets.data.domain.GlobalSearch; +import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +privileged aspect BookServiceImpl_Roo_Service_Impl { + + declare @type: BookServiceImpl: @Service; + + declare @type: BookServiceImpl: @Transactional(readOnly = true); + + /** + * TODO Auto-generated attribute documentation + * + */ + private BookRepository BookServiceImpl.bookRepository; + + /** + * TODO Auto-generated constructor documentation + * + * @param bookRepository + */ + @Autowired + public BookServiceImpl.new(BookRepository bookRepository) { + setBookRepository(bookRepository); + } + + /** + * TODO Auto-generated method documentation + * + * @return BookRepository + */ + public BookRepository BookServiceImpl.getBookRepository() { + return bookRepository; + } + + /** + * TODO Auto-generated method documentation + * + * @param bookRepository + */ + public void BookServiceImpl.setBookRepository(BookRepository bookRepository) { + this.bookRepository = bookRepository; + } + + /** + * TODO Auto-generated method documentation + * + * @param book + */ + @Transactional + public void BookServiceImpl.delete(Book book) { + getBookRepository().delete(book); + } + + /** + * TODO Auto-generated method documentation + * + * @param entities + * @return List + */ + @Transactional + public List BookServiceImpl.save(Iterable entities) { + return getBookRepository().save(entities); + } + + /** + * TODO Auto-generated method documentation + * + * @param ids + */ + @Transactional + public void BookServiceImpl.delete(Iterable ids) { + List toDelete = getBookRepository().findAll(ids); + getBookRepository().deleteInBatch(toDelete); + } + + /** + * TODO Auto-generated method documentation + * + * @param entity + * @return Book + */ + @Transactional + public Book BookServiceImpl.save(Book entity) { + return getBookRepository().save(entity); + } + + /** + * TODO Auto-generated method documentation + * + * @param id + * @return Book + */ + public Book BookServiceImpl.findOne(Long id) { + return getBookRepository().findOne(id); + } + + /** + * TODO Auto-generated method documentation + * + * @param id + * @return Book + */ + public Book BookServiceImpl.findOneForUpdate(Long id) { + return getBookRepository().findOneDetached(id); + } + + /** + * TODO Auto-generated method documentation + * + * @param ids + * @return List + */ + public List BookServiceImpl.findAll(Iterable ids) { + return getBookRepository().findAll(ids); + } + + /** + * TODO Auto-generated method documentation + * + * @return List + */ + public List BookServiceImpl.findAll() { + return getBookRepository().findAll(); + } + + /** + * TODO Auto-generated method documentation + * + * @return Long + */ + public long BookServiceImpl.count() { + return getBookRepository().count(); + } + + /** + * TODO Auto-generated method documentation + * + * @param globalSearch + * @param pageable + * @return Page + */ + public Page BookServiceImpl.findAll(GlobalSearch globalSearch, Pageable pageable) { + return getBookRepository().findAll(globalSearch, pageable); + } + + /** + * TODO Auto-generated method documentation + * + * @return Class + */ + public Class BookServiceImpl.getEntityType() { + return Book.class; + } + + /** + * TODO Auto-generated method documentation + * + * @return Class + */ + public Class BookServiceImpl.getIdType() { + return Long.class; + } + +} diff --git a/roo/src/main/java/com/baeldung/web/BookDeserializer.java b/roo/src/main/java/com/baeldung/web/BookDeserializer.java new file mode 100644 index 0000000000..38c447e580 --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/BookDeserializer.java @@ -0,0 +1,41 @@ +package com.baeldung.web; +import com.baeldung.domain.Book; +import com.baeldung.service.api.BookService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.jackson.JsonObjectDeserializer; +import org.springframework.context.annotation.Lazy; +import org.springframework.core.convert.ConversionService; +import org.springframework.roo.addon.web.mvc.controller.annotations.config.RooDeserializer; + +/** + * = BookDeserializer + TODO Auto-generated class documentation + * + */ +@RooDeserializer(entity = Book.class) +public class BookDeserializer extends JsonObjectDeserializer { + + /** + * TODO Auto-generated attribute documentation + * + */ + private BookService bookService; + + /** + * TODO Auto-generated attribute documentation + * + */ + private ConversionService conversionService; + + /** + * TODO Auto-generated constructor documentation + * + * @param bookService + * @param conversionService + */ + @Autowired + public BookDeserializer(@Lazy BookService bookService, ConversionService conversionService) { + this.bookService = bookService; + this.conversionService = conversionService; + } +} diff --git a/roo/src/main/java/com/baeldung/web/BookDeserializer_Roo_EntityDeserializer.aj b/roo/src/main/java/com/baeldung/web/BookDeserializer_Roo_EntityDeserializer.aj new file mode 100644 index 0000000000..5ca42cfb5e --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/BookDeserializer_Roo_EntityDeserializer.aj @@ -0,0 +1,78 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.web; + +import com.baeldung.domain.Book; +import com.baeldung.service.api.BookService; +import com.baeldung.web.BookDeserializer; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonNode; +import io.springlets.web.NotFoundException; +import java.io.IOException; +import org.springframework.boot.jackson.JsonComponent; +import org.springframework.core.convert.ConversionService; + +privileged aspect BookDeserializer_Roo_EntityDeserializer { + + declare @type: BookDeserializer: @JsonComponent; + + /** + * TODO Auto-generated method documentation + * + * @return BookService + */ + public BookService BookDeserializer.getBookService() { + return bookService; + } + + /** + * TODO Auto-generated method documentation + * + * @param bookService + */ + public void BookDeserializer.setBookService(BookService bookService) { + this.bookService = bookService; + } + + /** + * TODO Auto-generated method documentation + * + * @return ConversionService + */ + public ConversionService BookDeserializer.getConversionService() { + return conversionService; + } + + /** + * TODO Auto-generated method documentation + * + * @param conversionService + */ + public void BookDeserializer.setConversionService(ConversionService conversionService) { + this.conversionService = conversionService; + } + + /** + * TODO Auto-generated method documentation + * + * @param jsonParser + * @param context + * @param codec + * @param tree + * @return Book + * @throws IOException + */ + public Book BookDeserializer.deserializeObject(JsonParser jsonParser, DeserializationContext context, ObjectCodec codec, JsonNode tree) throws IOException { + String idText = tree.asText(); + Long id = conversionService.convert(idText, Long.class); + Book book = bookService.findOne(id); + if (book == null) { + throw new NotFoundException("Book not found"); + } + return book; + } + +} diff --git a/roo/src/main/java/com/baeldung/web/BookJsonMixin.java b/roo/src/main/java/com/baeldung/web/BookJsonMixin.java new file mode 100644 index 0000000000..1cde8f0e86 --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/BookJsonMixin.java @@ -0,0 +1,12 @@ +package com.baeldung.web; +import com.baeldung.domain.Book; +import org.springframework.roo.addon.web.mvc.controller.annotations.config.RooJsonMixin; + +/** + * = BookJsonMixin + TODO Auto-generated class documentation + * + */ +@RooJsonMixin(entity = Book.class) +public abstract class BookJsonMixin { +} diff --git a/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController.java b/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController.java new file mode 100644 index 0000000000..9b0179e234 --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController.java @@ -0,0 +1,15 @@ +package com.baeldung.web; +import com.baeldung.domain.Book; +import org.springframework.roo.addon.web.mvc.controller.annotations.ControllerType; +import org.springframework.roo.addon.web.mvc.controller.annotations.RooController; +import org.springframework.roo.addon.web.mvc.thymeleaf.annotations.RooThymeleaf; + +/** + * = BooksCollectionThymeleafController + TODO Auto-generated class documentation + * + */ +@RooController(entity = Book.class, type = ControllerType.COLLECTION) +@RooThymeleaf +public class BooksCollectionThymeleafController { +} diff --git a/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Controller.aj b/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Controller.aj new file mode 100644 index 0000000000..a87b76a745 --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Controller.aj @@ -0,0 +1,35 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.web; + +import com.baeldung.service.api.BookService; +import com.baeldung.web.BooksCollectionThymeleafController; + +privileged aspect BooksCollectionThymeleafController_Roo_Controller { + + /** + * TODO Auto-generated attribute documentation + * + */ + private BookService BooksCollectionThymeleafController.bookService; + + /** + * TODO Auto-generated method documentation + * + * @return BookService + */ + public BookService BooksCollectionThymeleafController.getBookService() { + return bookService; + } + + /** + * TODO Auto-generated method documentation + * + * @param bookService + */ + public void BooksCollectionThymeleafController.setBookService(BookService bookService) { + this.bookService = bookService; + } + +} diff --git a/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Thymeleaf.aj b/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Thymeleaf.aj new file mode 100644 index 0000000000..b0831730be --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Thymeleaf.aj @@ -0,0 +1,470 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.web; + +import ar.com.fdvs.dj.core.DynamicJasperHelper; +import ar.com.fdvs.dj.core.layout.ClassicLayoutManager; +import ar.com.fdvs.dj.domain.builders.ColumnBuilderException; +import ar.com.fdvs.dj.domain.builders.FastReportBuilder; +import com.baeldung.domain.Book; +import com.baeldung.service.api.BookService; +import com.baeldung.web.BooksCollectionThymeleafController; +import com.baeldung.web.BooksItemThymeleafController; +import com.baeldung.web.BooksItemThymeleafLinkFactory; +import com.baeldung.web.reports.ExportingErrorException; +import com.baeldung.web.reports.JasperReportsCsvExporter; +import com.baeldung.web.reports.JasperReportsExporter; +import com.baeldung.web.reports.JasperReportsPdfExporter; +import com.baeldung.web.reports.JasperReportsXlsExporter; +import io.springlets.data.domain.GlobalSearch; +import io.springlets.data.web.datatables.ConvertedDatatablesData; +import io.springlets.data.web.datatables.Datatables; +import io.springlets.data.web.datatables.DatatablesColumns; +import io.springlets.data.web.datatables.DatatablesPageable; +import io.springlets.data.web.select2.Select2DataSupport; +import io.springlets.data.web.select2.Select2DataWithConversion; +import io.springlets.web.mvc.util.ControllerMethodLinkBuilderFactory; +import io.springlets.web.mvc.util.MethodLinkBuilderFactory; +import java.io.IOException; +import java.util.Collection; +import java.util.Locale; +import javax.servlet.http.HttpServletResponse; +import javax.validation.Valid; +import net.sf.jasperreports.engine.JRDataSource; +import net.sf.jasperreports.engine.JRException; +import net.sf.jasperreports.engine.JasperPrint; +import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.MessageSource; +import org.springframework.context.i18n.LocaleContextHolder; +import org.springframework.core.convert.ConversionService; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import org.springframework.data.web.PageableDefault; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.WebDataBinder; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.InitBinder; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.servlet.ModelAndView; +import org.springframework.web.util.UriComponents; + +privileged aspect BooksCollectionThymeleafController_Roo_Thymeleaf { + + declare @type: BooksCollectionThymeleafController: @Controller; + + declare @type: BooksCollectionThymeleafController: @RequestMapping(value = "/books", name = "BooksCollectionThymeleafController", produces = MediaType.TEXT_HTML_VALUE); + + /** + * TODO Auto-generated attribute documentation + * + */ + private MessageSource BooksCollectionThymeleafController.messageSource; + + /** + * TODO Auto-generated attribute documentation + * + */ + private MethodLinkBuilderFactory BooksCollectionThymeleafController.itemLink; + + /** + * TODO Auto-generated attribute documentation + * + */ + private ConversionService BooksCollectionThymeleafController.conversionService; + + /** + * TODO Auto-generated constructor documentation + * + * @param bookService + * @param conversionService + * @param messageSource + * @param linkBuilder + */ + @Autowired + public BooksCollectionThymeleafController.new(BookService bookService, ConversionService conversionService, MessageSource messageSource, ControllerMethodLinkBuilderFactory linkBuilder) { + setBookService(bookService); + setConversionService(conversionService); + setMessageSource(messageSource); + setItemLink(linkBuilder.of(BooksItemThymeleafController.class)); + } + + /** + * TODO Auto-generated method documentation + * + * @return MessageSource + */ + public MessageSource BooksCollectionThymeleafController.getMessageSource() { + return messageSource; + } + + /** + * TODO Auto-generated method documentation + * + * @param messageSource + */ + public void BooksCollectionThymeleafController.setMessageSource(MessageSource messageSource) { + this.messageSource = messageSource; + } + + /** + * TODO Auto-generated method documentation + * + * @return MethodLinkBuilderFactory + */ + public MethodLinkBuilderFactory BooksCollectionThymeleafController.getItemLink() { + return itemLink; + } + + /** + * TODO Auto-generated method documentation + * + * @param itemLink + */ + public void BooksCollectionThymeleafController.setItemLink(MethodLinkBuilderFactory itemLink) { + this.itemLink = itemLink; + } + + /** + * TODO Auto-generated method documentation + * + * @return ConversionService + */ + public ConversionService BooksCollectionThymeleafController.getConversionService() { + return conversionService; + } + + /** + * TODO Auto-generated method documentation + * + * @param conversionService + */ + public void BooksCollectionThymeleafController.setConversionService(ConversionService conversionService) { + this.conversionService = conversionService; + } + + /** + * TODO Auto-generated method documentation + * + * @param model + * @return ModelAndView + */ + @GetMapping(name = "list") + public ModelAndView BooksCollectionThymeleafController.list(Model model) { + return new ModelAndView("/books/list"); + } + + /** + * TODO Auto-generated method documentation + * + * @param datatablesColumns + * @param search + * @param pageable + * @param draw + * @return ResponseEntity + */ + @GetMapping(produces = Datatables.MEDIA_TYPE, name = "datatables", value = "/dt") + @ResponseBody + public ResponseEntity> BooksCollectionThymeleafController.datatables(DatatablesColumns datatablesColumns, GlobalSearch search, DatatablesPageable pageable, @RequestParam("draw") Integer draw) { + Page books = getBookService().findAll(search, pageable); + long totalBooksCount = books.getTotalElements(); + if (search != null && StringUtils.isNotBlank(search.getText())) { + totalBooksCount = getBookService().count(); + } + ConvertedDatatablesData datatablesData = new ConvertedDatatablesData(books, totalBooksCount, draw, getConversionService(), datatablesColumns); + return ResponseEntity.ok(datatablesData); + } + + /** + * TODO Auto-generated method documentation + * + * @param search + * @param pageable + * @param locale + * @return ResponseEntity + */ + @GetMapping(produces = MediaType.APPLICATION_JSON_VALUE, name = "select2", value = "/s2") + @ResponseBody + public ResponseEntity> BooksCollectionThymeleafController.select2(GlobalSearch search, Pageable pageable, Locale locale) { + Page books = getBookService().findAll(search, pageable); + String idExpression = "#{id}"; + Select2DataSupport select2Data = new Select2DataWithConversion(books, idExpression, getConversionService()); + return ResponseEntity.ok(select2Data); + } + + /** + * TODO Auto-generated method documentation + * + * @param dataBinder + */ + @InitBinder("book") + public void BooksCollectionThymeleafController.initBookBinder(WebDataBinder dataBinder) { + dataBinder.setDisallowedFields("id"); + } + + /** + * TODO Auto-generated method documentation + * + * @param model + */ + public void BooksCollectionThymeleafController.populateFormats(Model model) { + model.addAttribute("application_locale", LocaleContextHolder.getLocale().getLanguage()); + } + + /** + * TODO Auto-generated method documentation + * + * @param model + */ + public void BooksCollectionThymeleafController.populateForm(Model model) { + populateFormats(model); + } + + /** + * TODO Auto-generated method documentation + * + * @param book + * @param result + * @param model + * @return ModelAndView + */ + @PostMapping(name = "create") + public ModelAndView BooksCollectionThymeleafController.create(@Valid @ModelAttribute Book book, BindingResult result, Model model) { + if (result.hasErrors()) { + populateForm(model); + + return new ModelAndView("/books/create"); + } + Book newBook = getBookService().save(book); + UriComponents showURI = getItemLink().to(BooksItemThymeleafLinkFactory.SHOW).with("book", newBook.getId()).toUri(); + return new ModelAndView("redirect:" + showURI.toUriString()); + } + + /** + * TODO Auto-generated method documentation + * + * @param model + * @return ModelAndView + */ + @GetMapping(value = "/create-form", name = "createForm") + public ModelAndView BooksCollectionThymeleafController.createForm(Model model) { + populateForm(model); + + model.addAttribute("book", new Book()); + return new ModelAndView("books/create"); + } + + /** + * TODO Auto-generated method documentation + * + * @param ids + * @return ResponseEntity + */ + @DeleteMapping(value = "/batch/{ids}", name = "deleteBatch") + @ResponseBody + public ResponseEntity BooksCollectionThymeleafController.deleteBatch(@PathVariable("ids") Collection ids) { + + getBookService().delete(ids); + + return ResponseEntity.ok().build(); + } + + /** + * Method that obtains the filtered and ordered records using the Datatables information and + * export them to a new report file. (It ignores the current pagination). + * + * To generate the report file it uses the `DynamicJasper` library + * (http://dynamicjasper.com). This library allows developers to generate reports dynamically + * without use an specific template to each entity. + * + * To customize the appearance of ALL generated reports, you could customize the + * "export_default.jrxml" template located in "src/main/resources/templates/reports/". However, + * if you want to customize the appearance of this specific report, you could create a new + * ".jrxml" file and provide it to the library replacing the `builder.setTemplateFile();` + * operation used in this implementation. + * + * @param search GlobalSearch that contains the filter provided by the Datatables component. + * @param pageable Pageable that contains the Sort info provided by the Datatabes component. + * @param datatablesColumns Columns displayed in the Datatables component. + * @param response The HttpServletResponse. + * @param exporter An specific JasperReportsExporter to be used during export process. + * @param fileName The final filename to use. + * @param locale The current Locale in the view context. + */ + public void BooksCollectionThymeleafController.export(GlobalSearch search, @PageableDefault(size = 2147483647) Pageable pageable, String[] datatablesColumns, HttpServletResponse response, JasperReportsExporter exporter, String fileName, Locale locale) { + // Obtain the filtered and ordered elements + Page books = getBookService().findAll(search, pageable); + + // Prevent generation of reports with empty data + if (books == null || books.getContent().isEmpty()) { + return; + } + + // Creates a new ReportBuilder using DynamicJasper library + FastReportBuilder builder = new FastReportBuilder(); + + // IMPORTANT: By default, this application uses "export_default.jrxml" + // to generate all reports. If you want to customize this specific report, + // create a new ".jrxml" template and customize it. (Take in account the + // DynamicJasper restrictions: + // http://dynamicjasper.com/2010/10/06/how-to-use-custom-jrxml-templates/) + builder.setTemplateFile("templates/reports/export_default.jrxml"); + + // The generated report will display the same columns as the Datatables component. + // However, this is not mandatory. You could edit this code if you want to ignore + // the provided datatablesColumns + if (datatablesColumns != null) { + for (String column : datatablesColumns) { + // Delegates in addColumnToReportBuilder to include each datatables column + // to the report builder + addColumnToReportBuilder(column, builder, locale, fileName); + } + } + + // This property resizes the columns to use full width page. + // Set false value if you want to use the specific width of each column. + builder.setUseFullPageWidth(true); + + // Creates a new Jasper Reports Datasource using the obtained elements + JRDataSource ds = new JRBeanCollectionDataSource(books.getContent()); + + // Generates the JasperReport + JasperPrint jp; + try { + jp = DynamicJasperHelper.generateJasperPrint(builder.build(), new ClassicLayoutManager(), ds); + } + catch (JRException e) { + String errorMessage = getMessageSource().getMessage("error_exportingErrorException", + new Object[] {StringUtils.substringAfterLast(fileName, ".").toUpperCase()}, + String.format("Error while exporting data to StringUtils file", StringUtils. + substringAfterLast(fileName, ".").toUpperCase()), locale); + throw new ExportingErrorException(errorMessage); + } + + // Converts the JaspertReport element to a ByteArrayOutputStream and + // write it into the response stream using the provided JasperReportExporter + try { + exporter.export(jp, fileName, response); + } + catch (JRException e) { + String errorMessage = getMessageSource().getMessage("error_exportingErrorException", + new Object[] {StringUtils.substringAfterLast(fileName, ".").toUpperCase()}, + String.format("Error while exporting data to StringUtils file", StringUtils. + substringAfterLast(fileName, ".").toUpperCase()), locale); + throw new ExportingErrorException(errorMessage); + } + catch (IOException e) { + String errorMessage = getMessageSource().getMessage("error_exportingErrorException", + new Object[] {StringUtils.substringAfterLast(fileName, ".").toUpperCase()}, + String.format("Error while exporting data to StringUtils file", StringUtils. + substringAfterLast(fileName, ".").toUpperCase()), locale); + throw new ExportingErrorException(errorMessage); + } + } + + /** + * It delegates in the `export` method providing the necessary information + * to generate a CSV report. + * + * @param search The GlobalSearch that contains the filter provided by the Datatables component + * @param pageable The Pageable that contains the Sort info provided by the Datatabes component + * @param datatablesColumns The Columns displayed in the Datatables component + * @param response The HttpServletResponse + * @return ResponseEntity + */ + @GetMapping(name = "exportCsv", value = "/export/csv") + @ResponseBody + public ResponseEntity BooksCollectionThymeleafController.exportCsv(GlobalSearch search, @PageableDefault(size = 2147483647) Pageable pageable, @RequestParam("datatablesColumns") String[] datatablesColumns, HttpServletResponse response, Locale locale) { + export(search, pageable, datatablesColumns, response, new JasperReportsCsvExporter(), "books_report.csv", locale); + return ResponseEntity.ok().build(); + } + + /** + * It delegates in the `export` method providing the necessary information + * to generate a PDF report. + * + * @param search The GlobalSearch that contains the filter provided by the Datatables component + * @param pageable The Pageable that contains the Sort info provided by the Datatabes component + * @param datatablesColumns The Columns displayed in the Datatables component + * @param response The HttpServletResponse + * @return ResponseEntity + */ + @GetMapping(name = "exportPdf", value = "/export/pdf") + @ResponseBody + public ResponseEntity BooksCollectionThymeleafController.exportPdf(GlobalSearch search, @PageableDefault(size = 2147483647) Pageable pageable, @RequestParam("datatablesColumns") String[] datatablesColumns, HttpServletResponse response, Locale locale) { + export(search, pageable, datatablesColumns, response, new JasperReportsPdfExporter(), "books_report.pdf", locale); + return ResponseEntity.ok().build(); + } + + /** + * It delegates in the `export` method providing the necessary information + * to generate a XLS report. + * + * @param search The GlobalSearch that contains the filter provided by the Datatables component + * @param pageable The Pageable that contains the Sort info provided by the Datatabes component + * @param datatablesColumns The Columns displayed in the Datatables component + * @param response The HttpServletResponse + * @return ResponseEntity + */ + @GetMapping(name = "exportXls", value = "/export/xls") + @ResponseBody + public ResponseEntity BooksCollectionThymeleafController.exportXls(GlobalSearch search, @PageableDefault(size = 2147483647) Pageable pageable, @RequestParam("datatablesColumns") String[] datatablesColumns, HttpServletResponse response, Locale locale) { + export(search, pageable, datatablesColumns, response, new JasperReportsXlsExporter(), "books_report.xls", locale); + return ResponseEntity.ok().build(); + } + + /** + * This method contains all the entity fields that are able to be displayed in a + * report. The developer could add a new column to the report builder providing the + * field name and the builder where the new field will be added as column. + * + * @param columnName the field name to show as column + * @param builder The builder where the new field will be added as column. + */ + public void BooksCollectionThymeleafController.addColumnToReportBuilder(String columnName, FastReportBuilder builder, Locale locale, String fileName) { + try { + if (columnName.equals("id")) { + builder.addColumn(getMessageSource().getMessage("label_book_id", null, "Id", locale), "id", Long.class.getName(), 50); + } + else if (columnName.equals("version")) { + builder.addColumn(getMessageSource().getMessage("label_book_version", null, "Version", locale), "version", Integer.class.getName(), 100); + } + else if (columnName.equals("title")) { + builder.addColumn(getMessageSource().getMessage("label_book_title", null, "Title", locale), "title", String.class.getName(), 100); + } + else if (columnName.equals("author")) { + builder.addColumn(getMessageSource().getMessage("label_book_author", null, "Author", locale), "author", String.class.getName(), 100); + } + else if (columnName.equals("isbn")) { + builder.addColumn(getMessageSource().getMessage("label_book_isbn", null, "Isbn", locale), "isbn", String.class.getName(), 100); + } + } + catch (ColumnBuilderException e) { + String errorMessage = getMessageSource().getMessage("error_exportingErrorException", + new Object[] {StringUtils.substringAfterLast(fileName, ".").toUpperCase()}, + String.format("Error while exporting data to StringUtils file", StringUtils. + substringAfterLast(fileName, ".").toUpperCase()), locale); + throw new ExportingErrorException(errorMessage); + } + catch (ClassNotFoundException e) { + String errorMessage = getMessageSource().getMessage("error_exportingErrorException", + new Object[] {StringUtils.substringAfterLast(fileName, ".").toUpperCase()}, + String.format("Error while exporting data to StringUtils file", StringUtils. + substringAfterLast(fileName, ".").toUpperCase()), locale); + throw new ExportingErrorException(errorMessage); + } + } + +} diff --git a/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory.java b/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory.java new file mode 100644 index 0000000000..413a5e64a0 --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory.java @@ -0,0 +1,11 @@ +package com.baeldung.web; +import org.springframework.roo.addon.web.mvc.thymeleaf.annotations.RooLinkFactory; + +/** + * = BooksCollectionThymeleafLinkFactory + TODO Auto-generated class documentation + * + */ +@RooLinkFactory(controller = BooksCollectionThymeleafController.class) +public class BooksCollectionThymeleafLinkFactory { +} diff --git a/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory_Roo_LinkFactory.aj b/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory_Roo_LinkFactory.aj new file mode 100644 index 0000000000..e6df3efcb7 --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory_Roo_LinkFactory.aj @@ -0,0 +1,122 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.web; + +import com.baeldung.web.BooksCollectionThymeleafController; +import com.baeldung.web.BooksCollectionThymeleafLinkFactory; +import io.springlets.web.mvc.util.MethodLinkFactory; +import io.springlets.web.mvc.util.SpringletsMvcUriComponentsBuilder; +import java.util.Map; +import org.springframework.stereotype.Component; +import org.springframework.web.util.UriComponents; + +privileged aspect BooksCollectionThymeleafLinkFactory_Roo_LinkFactory { + + declare parents: BooksCollectionThymeleafLinkFactory implements MethodLinkFactory; + + declare @type: BooksCollectionThymeleafLinkFactory: @Component; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksCollectionThymeleafLinkFactory.LIST = "list"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksCollectionThymeleafLinkFactory.DATATABLES = "datatables"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksCollectionThymeleafLinkFactory.SELECT2 = "select2"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksCollectionThymeleafLinkFactory.CREATE = "create"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksCollectionThymeleafLinkFactory.CREATEFORM = "createForm"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksCollectionThymeleafLinkFactory.DELETEBATCH = "deleteBatch"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksCollectionThymeleafLinkFactory.EXPORTCSV = "exportCsv"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksCollectionThymeleafLinkFactory.EXPORTPDF = "exportPdf"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksCollectionThymeleafLinkFactory.EXPORTXLS = "exportXls"; + + /** + * TODO Auto-generated method documentation + * + * @return Class + */ + public Class BooksCollectionThymeleafLinkFactory.getControllerClass() { + return BooksCollectionThymeleafController.class; + } + + /** + * TODO Auto-generated method documentation + * + * @param methodName + * @param parameters + * @param pathVariables + * @return UriComponents + */ + public UriComponents BooksCollectionThymeleafLinkFactory.toUri(String methodName, Object[] parameters, Map pathVariables) { + if (methodName.equals(LIST)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).list(null)).buildAndExpand(pathVariables); + } + if (methodName.equals(DATATABLES)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).datatables(null, null, null, null)).buildAndExpand(pathVariables); + } + if (methodName.equals(SELECT2)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).select2(null, null, null)).buildAndExpand(pathVariables); + } + if (methodName.equals(CREATE)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).create(null, null, null)).buildAndExpand(pathVariables); + } + if (methodName.equals(CREATEFORM)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).createForm(null)).buildAndExpand(pathVariables); + } + if (methodName.equals(DELETEBATCH)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).deleteBatch(null)).buildAndExpand(pathVariables); + } + if (methodName.equals(EXPORTCSV)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).exportCsv(null, null, null, null, null)).buildAndExpand(pathVariables); + } + if (methodName.equals(EXPORTPDF)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).exportPdf(null, null, null, null, null)).buildAndExpand(pathVariables); + } + if (methodName.equals(EXPORTXLS)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).exportXls(null, null, null, null, null)).buildAndExpand(pathVariables); + } + throw new IllegalArgumentException("Invalid method name: " + methodName); + } + +} diff --git a/roo/src/main/java/com/baeldung/web/BooksItemThymeleafController.java b/roo/src/main/java/com/baeldung/web/BooksItemThymeleafController.java new file mode 100644 index 0000000000..f16cb7be2d --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/BooksItemThymeleafController.java @@ -0,0 +1,15 @@ +package com.baeldung.web; +import com.baeldung.domain.Book; +import org.springframework.roo.addon.web.mvc.controller.annotations.ControllerType; +import org.springframework.roo.addon.web.mvc.controller.annotations.RooController; +import org.springframework.roo.addon.web.mvc.thymeleaf.annotations.RooThymeleaf; + +/** + * = BooksItemThymeleafController + TODO Auto-generated class documentation + * + */ +@RooController(entity = Book.class, type = ControllerType.ITEM) +@RooThymeleaf +public class BooksItemThymeleafController { +} diff --git a/roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Controller.aj b/roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Controller.aj new file mode 100644 index 0000000000..c0a4ed46df --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Controller.aj @@ -0,0 +1,35 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.web; + +import com.baeldung.service.api.BookService; +import com.baeldung.web.BooksItemThymeleafController; + +privileged aspect BooksItemThymeleafController_Roo_Controller { + + /** + * TODO Auto-generated attribute documentation + * + */ + private BookService BooksItemThymeleafController.bookService; + + /** + * TODO Auto-generated method documentation + * + * @return BookService + */ + public BookService BooksItemThymeleafController.getBookService() { + return bookService; + } + + /** + * TODO Auto-generated method documentation + * + * @param bookService + */ + public void BooksItemThymeleafController.setBookService(BookService bookService) { + this.bookService = bookService; + } + +} diff --git a/roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Thymeleaf.aj b/roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Thymeleaf.aj new file mode 100644 index 0000000000..502c30a81e --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Thymeleaf.aj @@ -0,0 +1,251 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.web; + +import com.baeldung.domain.Book; +import com.baeldung.service.api.BookService; +import com.baeldung.web.BooksItemThymeleafController; +import com.baeldung.web.BooksItemThymeleafLinkFactory; +import io.springlets.web.NotFoundException; +import io.springlets.web.mvc.util.ControllerMethodLinkBuilderFactory; +import io.springlets.web.mvc.util.MethodLinkBuilderFactory; +import java.util.Locale; +import javax.validation.Valid; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.MessageSource; +import org.springframework.context.i18n.LocaleContextHolder; +import org.springframework.http.HttpMethod; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.WebDataBinder; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.InitBinder; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.servlet.ModelAndView; +import org.springframework.web.util.UriComponents; + +privileged aspect BooksItemThymeleafController_Roo_Thymeleaf { + + declare @type: BooksItemThymeleafController: @Controller; + + declare @type: BooksItemThymeleafController: @RequestMapping(value = "/books/{book}", name = "BooksItemThymeleafController", produces = MediaType.TEXT_HTML_VALUE); + + /** + * TODO Auto-generated attribute documentation + * + */ + private MessageSource BooksItemThymeleafController.messageSource; + + /** + * TODO Auto-generated attribute documentation + * + */ + private MethodLinkBuilderFactory BooksItemThymeleafController.itemLink; + + /** + * TODO Auto-generated constructor documentation + * + * @param bookService + * @param messageSource + * @param linkBuilder + */ + @Autowired + public BooksItemThymeleafController.new(BookService bookService, MessageSource messageSource, ControllerMethodLinkBuilderFactory linkBuilder) { + setBookService(bookService); + setMessageSource(messageSource); + setItemLink(linkBuilder.of(BooksItemThymeleafController.class)); + } + + /** + * TODO Auto-generated method documentation + * + * @return MessageSource + */ + public MessageSource BooksItemThymeleafController.getMessageSource() { + return messageSource; + } + + /** + * TODO Auto-generated method documentation + * + * @param messageSource + */ + public void BooksItemThymeleafController.setMessageSource(MessageSource messageSource) { + this.messageSource = messageSource; + } + + /** + * TODO Auto-generated method documentation + * + * @return MethodLinkBuilderFactory + */ + public MethodLinkBuilderFactory BooksItemThymeleafController.getItemLink() { + return itemLink; + } + + /** + * TODO Auto-generated method documentation + * + * @param itemLink + */ + public void BooksItemThymeleafController.setItemLink(MethodLinkBuilderFactory itemLink) { + this.itemLink = itemLink; + } + + /** + * TODO Auto-generated method documentation + * + * @param id + * @param locale + * @param method + * @return Book + */ + @ModelAttribute + public Book BooksItemThymeleafController.getBook(@PathVariable("book") Long id, Locale locale, HttpMethod method) { + Book book = null; + if (HttpMethod.PUT.equals(method)) { + book = bookService.findOneForUpdate(id); + } else { + book = bookService.findOne(id); + } + + if (book == null) { + String message = messageSource.getMessage("error_NotFound", new Object[] {"Book", id}, "The record couldn't be found", locale); + throw new NotFoundException(message); + } + return book; + } + + /** + * TODO Auto-generated method documentation + * + * @param book + * @param model + * @return ModelAndView + */ + @GetMapping(name = "show") + public ModelAndView BooksItemThymeleafController.show(@ModelAttribute Book book, Model model) { + model.addAttribute("book", book); + return new ModelAndView("books/show"); + } + + /** + * TODO Auto-generated method documentation + * + * @param book + * @param model + * @return ModelAndView + */ + @GetMapping(value = "/inline", name = "showInline") + public ModelAndView BooksItemThymeleafController.showInline(@ModelAttribute Book book, Model model) { + model.addAttribute("book", book); + return new ModelAndView("books/showInline :: inline-content"); + } + + /** + * TODO Auto-generated method documentation + * + * @param dataBinder + */ + @InitBinder("book") + public void BooksItemThymeleafController.initBookBinder(WebDataBinder dataBinder) { + dataBinder.setDisallowedFields("id"); + } + + /** + * TODO Auto-generated method documentation + * + * @param model + */ + public void BooksItemThymeleafController.populateFormats(Model model) { + model.addAttribute("application_locale", LocaleContextHolder.getLocale().getLanguage()); + } + + /** + * TODO Auto-generated method documentation + * + * @param model + */ + public void BooksItemThymeleafController.populateForm(Model model) { + populateFormats(model); + } + + /** + * TODO Auto-generated method documentation + * + * @param book + * @param model + * @return ModelAndView + */ + @GetMapping(value = "/edit-form", name = "editForm") + public ModelAndView BooksItemThymeleafController.editForm(@ModelAttribute Book book, Model model) { + populateForm(model); + + model.addAttribute("book", book); + return new ModelAndView("books/edit"); + } + + /** + * TODO Auto-generated method documentation + * + * @param book + * @param version + * @param concurrencyControl + * @param result + * @param model + * @return ModelAndView + */ + @PutMapping(name = "update") + public ModelAndView BooksItemThymeleafController.update(@Valid @ModelAttribute Book book, @RequestParam("version") Integer version, @RequestParam(value = "concurrency", required = false, defaultValue = "") String concurrencyControl, BindingResult result, Model model) { + // Check if provided form contain errors + if (result.hasErrors()) { + populateForm(model); + + return new ModelAndView("books/edit"); + } + // Concurrency control + Book existingBook = getBookService().findOne(book.getId()); + if(book.getVersion() != existingBook.getVersion() && StringUtils.isEmpty(concurrencyControl)){ + populateForm(model); + model.addAttribute("book", book); + model.addAttribute("concurrency", true); + return new ModelAndView("books/edit"); + } else if(book.getVersion() != existingBook.getVersion() && "discard".equals(concurrencyControl)){ + populateForm(model); + model.addAttribute("book", existingBook); + model.addAttribute("concurrency", false); + return new ModelAndView("books/edit"); + } else if(book.getVersion() != existingBook.getVersion() && "apply".equals(concurrencyControl)){ + // Update the version field to be able to override the existing values + book.setVersion(existingBook.getVersion()); + } + Book savedBook = getBookService().save(book); + UriComponents showURI = getItemLink().to(BooksItemThymeleafLinkFactory.SHOW).with("book", savedBook.getId()).toUri(); + return new ModelAndView("redirect:" + showURI.toUriString()); + } + + /** + * TODO Auto-generated method documentation + * + * @param book + * @return ResponseEntity + */ + @ResponseBody + @DeleteMapping(name = "delete") + public ResponseEntity BooksItemThymeleafController.delete(@ModelAttribute Book book) { + getBookService().delete(book); + return ResponseEntity.ok().build(); + } + +} diff --git a/roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory.java b/roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory.java new file mode 100644 index 0000000000..5b69306868 --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory.java @@ -0,0 +1,11 @@ +package com.baeldung.web; +import org.springframework.roo.addon.web.mvc.thymeleaf.annotations.RooLinkFactory; + +/** + * = BooksItemThymeleafLinkFactory + TODO Auto-generated class documentation + * + */ +@RooLinkFactory(controller = BooksItemThymeleafController.class) +public class BooksItemThymeleafLinkFactory { +} diff --git a/roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory_Roo_LinkFactory.aj b/roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory_Roo_LinkFactory.aj new file mode 100644 index 0000000000..fd68866587 --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory_Roo_LinkFactory.aj @@ -0,0 +1,86 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.web; + +import com.baeldung.web.BooksItemThymeleafController; +import com.baeldung.web.BooksItemThymeleafLinkFactory; +import io.springlets.web.mvc.util.MethodLinkFactory; +import io.springlets.web.mvc.util.SpringletsMvcUriComponentsBuilder; +import java.util.Map; +import org.springframework.stereotype.Component; +import org.springframework.web.util.UriComponents; + +privileged aspect BooksItemThymeleafLinkFactory_Roo_LinkFactory { + + declare parents: BooksItemThymeleafLinkFactory implements MethodLinkFactory; + + declare @type: BooksItemThymeleafLinkFactory: @Component; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksItemThymeleafLinkFactory.SHOW = "show"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksItemThymeleafLinkFactory.SHOWINLINE = "showInline"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksItemThymeleafLinkFactory.EDITFORM = "editForm"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksItemThymeleafLinkFactory.UPDATE = "update"; + + /** + * TODO Auto-generated attribute documentation + * + */ + public static final String BooksItemThymeleafLinkFactory.DELETE = "delete"; + + /** + * TODO Auto-generated method documentation + * + * @return Class + */ + public Class BooksItemThymeleafLinkFactory.getControllerClass() { + return BooksItemThymeleafController.class; + } + + /** + * TODO Auto-generated method documentation + * + * @param methodName + * @param parameters + * @param pathVariables + * @return UriComponents + */ + public UriComponents BooksItemThymeleafLinkFactory.toUri(String methodName, Object[] parameters, Map pathVariables) { + if (methodName.equals(SHOW)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).show(null, null)).buildAndExpand(pathVariables); + } + if (methodName.equals(SHOWINLINE)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).showInline(null, null)).buildAndExpand(pathVariables); + } + if (methodName.equals(EDITFORM)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).editForm(null, null)).buildAndExpand(pathVariables); + } + if (methodName.equals(UPDATE)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).update(null, null, null, null, null)).buildAndExpand(pathVariables); + } + if (methodName.equals(DELETE)) { + return SpringletsMvcUriComponentsBuilder.fromMethodCall(SpringletsMvcUriComponentsBuilder.on(getControllerClass()).delete(null)).buildAndExpand(pathVariables); + } + throw new IllegalArgumentException("Invalid method name: " + methodName); + } + +} diff --git a/roo/src/main/java/com/baeldung/web/MainController.java b/roo/src/main/java/com/baeldung/web/MainController.java new file mode 100644 index 0000000000..bf2038b4a1 --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/MainController.java @@ -0,0 +1,11 @@ +package com.baeldung.web; +import org.springframework.roo.addon.web.mvc.thymeleaf.annotations.RooThymeleafMainController; + +/** + * = MainController + TODO Auto-generated class documentation + * + */ +@RooThymeleafMainController +public class MainController { +} diff --git a/roo/src/main/java/com/baeldung/web/MainController_Roo_Thymeleaf_MainController.aj b/roo/src/main/java/com/baeldung/web/MainController_Roo_Thymeleaf_MainController.aj new file mode 100644 index 0000000000..58f0466ed9 --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/MainController_Roo_Thymeleaf_MainController.aj @@ -0,0 +1,59 @@ +// WARNING: DO NOT EDIT THIS FILE. THIS FILE IS MANAGED BY SPRING ROO. +// You may push code into the target .java compilation unit if you wish to edit any member(s). + +package com.baeldung.web; + +import com.baeldung.web.MainController; +import io.springlets.web.NotFoundException; +import org.springframework.context.i18n.LocaleContextHolder; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.util.StringUtils; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +privileged aspect MainController_Roo_Thymeleaf_MainController { + + declare @type: MainController: @Controller; + + /** + * TODO Auto-generated method documentation + * + * @param model + * @return String + */ + @GetMapping("/") + public String MainController.index(Model model) { + model.addAttribute("application_locale", LocaleContextHolder.getLocale().getLanguage()); + return "index"; + } + + /** + * TODO Auto-generated method documentation + * + * @param model + * @return String + */ + @GetMapping("/accessibility") + public String MainController.accessibility(Model model) { + model.addAttribute("application_locale", LocaleContextHolder.getLocale().getLanguage()); + return "accessibility"; + } + + /** + * TODO Auto-generated method documentation + * + * @param template + * @return String + */ + @RequestMapping(value = "/js/{template}.js", method = RequestMethod.GET) + public String MainController.javascriptTemplates(@PathVariable("template") String template) { + if (StringUtils.hasLength(template)) { + return template.concat(".js"); + } + throw new NotFoundException("File not found"); + } + +} diff --git a/roo/src/main/java/com/baeldung/web/reports/ExportingErrorException.java b/roo/src/main/java/com/baeldung/web/reports/ExportingErrorException.java new file mode 100644 index 0000000000..a8c2eca5cc --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/reports/ExportingErrorException.java @@ -0,0 +1,19 @@ +package com.baeldung.web.reports; + +import org.springframework.http.HttpStatus; +import org.springframework.web.bind.annotation.ResponseStatus; + +@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR) +public class ExportingErrorException extends RuntimeException { + + private static final long serialVersionUID = 4075788919321977605L; + + public ExportingErrorException() { + super("Error while trying to export data to file."); + } + + public ExportingErrorException(String message) { + super(message); + } + +} diff --git a/roo/src/main/java/com/baeldung/web/reports/JasperReportsCsvExporter.java b/roo/src/main/java/com/baeldung/web/reports/JasperReportsCsvExporter.java new file mode 100644 index 0000000000..5ea23e16cc --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/reports/JasperReportsCsvExporter.java @@ -0,0 +1,71 @@ +package com.baeldung.web.reports; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; + +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletResponse; + +import net.sf.jasperreports.engine.JRException; +import net.sf.jasperreports.engine.JRExporterParameter; +import net.sf.jasperreports.engine.JasperPrint; +import net.sf.jasperreports.engine.export.JRCsvExporter; + +/** + * = JasperReportsCsvExporter + * + * A JasperReports exporter to export the report in CSV formats. This class + * implements the interface {@link JasperReportsExporter} + */ +public class JasperReportsCsvExporter implements JasperReportsExporter { + + /** + * Generates a ByteArrayOutputStream from the provided JasperReport using + * the {@link JRCsvExporter}. After that, the generated bytes array is + * written in the {@link HttpServletResponse} + * + * @param jp + * The generated JasperReport. + * @param fileName + * The fileName of the exported JasperReport + * @param response + * The HttpServletResponse where generated report has been + * written + * @throws JRException + * during JasperReport export. + * @throws IOException + * when writes the ByteArrayOutputStream into the + * HttpServletResponse + */ + @Override + public void export(JasperPrint jp, String fileName, HttpServletResponse response) throws JRException, IOException { + + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + + // Create a JRCsvExporter instance + JRCsvExporter exporter = new JRCsvExporter(); + + // Here we assign the parameters jp and baos to the exporter + exporter.setParameter(JRExporterParameter.JASPER_PRINT, jp); + exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, baos); + + // Retrieve the exported report in PDF format + exporter.exportReport(); + + // Specifies the response header + response.setHeader("Content-Disposition", "inline; filename=" + fileName); + + // Make sure to set the correct content type + // Each format has its own content type + response.setContentType("text/csv"); + response.setContentLength(baos.size()); + + // Retrieve the output stream + ServletOutputStream outputStream = response.getOutputStream(); + // Write to the output stream + baos.writeTo(outputStream); + // Flush the stream + outputStream.flush(); + + } +} \ No newline at end of file diff --git a/roo/src/main/java/com/baeldung/web/reports/JasperReportsExporter.java b/roo/src/main/java/com/baeldung/web/reports/JasperReportsExporter.java new file mode 100644 index 0000000000..32892df447 --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/reports/JasperReportsExporter.java @@ -0,0 +1,41 @@ +package com.baeldung.web.reports; + +import java.io.IOException; + +import javax.servlet.http.HttpServletResponse; + +import net.sf.jasperreports.engine.JRException; +import net.sf.jasperreports.engine.JasperPrint; +import net.sf.jasperreports.export.Exporter; + +/** + * = JasperReportsExporter + * + * This interface defines the operations for a JasperReport exporter. + * + * JasperReports library already provides an Exporter interface called + * {@link Exporter}. However, it doesn't provides an operation that writes the + * exported JasperReport into the {@link HttpServletResponse}. + */ +public interface JasperReportsExporter { + + /** + * This operation must be implemented by every JasperReport exporter to be + * able to write a generated report into a the {@link HttpServletResponse}}. + * + * @param jp + * The generated JasperReport. + * @param fileName + * The fileName of the exported JasperReport + * @param response + * The HttpServletResponse where generated report has been + * written + * @throws JRException + * during JasperReport export. + * @throws IOException + * when writes the ByteArrayOutputStream into the + * HttpServletResponse + */ + public void export(JasperPrint jp, String fileName, HttpServletResponse response) throws JRException, IOException; + +} \ No newline at end of file diff --git a/roo/src/main/java/com/baeldung/web/reports/JasperReportsPdfExporter.java b/roo/src/main/java/com/baeldung/web/reports/JasperReportsPdfExporter.java new file mode 100644 index 0000000000..ae1e2d8ee0 --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/reports/JasperReportsPdfExporter.java @@ -0,0 +1,71 @@ +package com.baeldung.web.reports; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; + +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletResponse; + +import net.sf.jasperreports.engine.JRException; +import net.sf.jasperreports.engine.JRExporterParameter; +import net.sf.jasperreports.engine.JasperPrint; +import net.sf.jasperreports.engine.export.JRPdfExporter; + +/** + * = JasperReportsPdfExporter + * + * A JasperReports exporter to export the report in PDF formats. This class + * implements the interface {@link JasperReportsExporter} + */ +public class JasperReportsPdfExporter implements JasperReportsExporter { + + /** + * Generates a ByteArrayOutputStream from the provided JasperReport using + * the {@link JRPdfExporter}. After that, the generated bytes array is + * written in the {@link HttpServletResponse} + * + * @param jp + * The generated JasperReport. + * @param fileName + * The fileName of the exported JasperReport + * @param response + * The HttpServletResponse where generated report has been + * written + * @throws JRException + * during JasperReport export. + * @throws IOException + * when writes the ByteArrayOutputStream into the + * HttpServletResponse + */ + @Override + public void export(JasperPrint jp, String fileName, HttpServletResponse response) throws JRException, IOException { + + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + + // Create a JRPdfExporter instance + JRPdfExporter exporter = new JRPdfExporter(); + + // Here we assign the parameters jp and baos to the exporter + exporter.setParameter(JRExporterParameter.JASPER_PRINT, jp); + exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, baos); + + // Retrieve the exported report in PDF format + exporter.exportReport(); + + // Specifies the response header + response.setHeader("Content-Disposition", "inline; filename=" + fileName); + + // Make sure to set the correct content type + // Each format has its own content type + response.setContentType("application/pdf"); + response.setContentLength(baos.size()); + + // Retrieve the output stream + ServletOutputStream outputStream = response.getOutputStream(); + // Write to the output stream + baos.writeTo(outputStream); + // Flush the stream + outputStream.flush(); + + } +} \ No newline at end of file diff --git a/roo/src/main/java/com/baeldung/web/reports/JasperReportsXlsExporter.java b/roo/src/main/java/com/baeldung/web/reports/JasperReportsXlsExporter.java new file mode 100644 index 0000000000..1855d1c93c --- /dev/null +++ b/roo/src/main/java/com/baeldung/web/reports/JasperReportsXlsExporter.java @@ -0,0 +1,77 @@ +package com.baeldung.web.reports; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; + +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletResponse; + +import net.sf.jasperreports.engine.JRException; +import net.sf.jasperreports.engine.JRExporterParameter; +import net.sf.jasperreports.engine.JasperPrint; +import net.sf.jasperreports.engine.export.JRXlsAbstractExporterParameter; +import net.sf.jasperreports.engine.export.JRXlsExporter; + +/** + * = JasperReportsXlsExporter + * + * A JasperReports exporter to export the report in XLS formats. This class + * implements the interface {@link JasperReportsExporter} + */ +public class JasperReportsXlsExporter implements JasperReportsExporter { + + /** + * Generates a ByteArrayOutputStream from the provided JasperReport using + * the {@link JRXlsExporter}. After that, the generated bytes array is + * written in the {@link HttpServletResponse} + * + * @param jp + * The generated JasperReport. + * @param fileName + * The fileName of the exported JasperReport + * @param response + * The HttpServletResponse where generated report has been + * written + * @throws JRException + * during JasperReport export. + * @throws IOException + * when writes the ByteArrayOutputStream into the + * HttpServletResponse + */ + @Override + public void export(JasperPrint jp, String fileName, HttpServletResponse response) throws JRException, IOException { + + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + + // Create a JRXlsExporter instance + JRXlsExporter exporter = new JRXlsExporter(); + + // Here we assign the parameters jp and baos to the exporter + exporter.setParameter(JRExporterParameter.JASPER_PRINT, jp); + exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, baos); + + // Excel specific parameters + exporter.setParameter(JRXlsAbstractExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.FALSE); + exporter.setParameter(JRXlsAbstractExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE); + exporter.setParameter(JRXlsAbstractExporterParameter.IS_WHITE_PAGE_BACKGROUND, Boolean.FALSE); + + // Retrieve the exported report in PDF format + exporter.exportReport(); + + // Specifies the response header + response.setHeader("Content-Disposition", "inline; filename=" + fileName); + + // Make sure to set the correct content type + // Each format has its own content type + response.setContentType("application/vnd.ms-excel"); + response.setContentLength(baos.size()); + + // Retrieve the output stream + ServletOutputStream outputStream = response.getOutputStream(); + // Write to the output stream + baos.writeTo(outputStream); + // Flush the stream + outputStream.flush(); + + } +} \ No newline at end of file diff --git a/roo/src/main/resources/application-dev.properties b/roo/src/main/resources/application-dev.properties new file mode 100644 index 0000000000..6723cabefa --- /dev/null +++ b/roo/src/main/resources/application-dev.properties @@ -0,0 +1,13 @@ +#Updated at Tue Apr 04 15:03:52 BST 2017 +#Tue Apr 04 15:03:52 BST 2017 +logging.file= +logging.level.com.baeldung=DEBUG +logging.level.com.querydsl.jpa.impl.JPAQuery=DEBUG +logging.level.org.hibernate.stat=DEBUG +logging.pattern.level=%5p - QP\:%X{querydsl.parameters} - +spring.jackson.serialization.indent-output=true +spring.jpa.properties.hibernate.format_sql=true +spring.jpa.properties.hibernate.generate_statistics=true +spring.jpa.show-sql=true +spring.messages.cache-seconds=0 +spring.thymeleaf.mode=html diff --git a/roo/src/main/resources/application.properties b/roo/src/main/resources/application.properties new file mode 100644 index 0000000000..77eaa5f3fc --- /dev/null +++ b/roo/src/main/resources/application.properties @@ -0,0 +1,8 @@ +#Updated at Tue Apr 04 15:03:53 BST 2017 +#Tue Apr 04 15:03:53 BST 2017 +spring.datasource.driver-class-name=org.hsqldb.jdbcDriver +spring.datasource.url=jdbc\:hsqldb\:mem\:roo +spring.jpa.hibernate.naming.strategy=org.hibernate.cfg.ImprovedNamingStrategy +spring.messages.encoding=ISO-8859-1 +spring.messages.fallback-to-system-locale=false +spring.thymeleaf.mode=html diff --git a/roo/src/main/resources/banner.txt b/roo/src/main/resources/banner.txt new file mode 100644 index 0000000000..dd2932f7aa --- /dev/null +++ b/roo/src/main/resources/banner.txt @@ -0,0 +1,9 @@ +${AnsiColor.GREEN} _ + ___ _ __ _ __(_)_ __ __ _ _ __ ___ ___ +/ __| '_ \| '__| | '_ \ / _` | | '__/ _ \ / _ \ +\__ \ |_) | | | | | | | (_| | | | | (_) | (_) | +|___/ .__/|_| |_|_| |_|\__, | |_| \___/ \___/ + |_| |___/ + +${AnsiColor.BRIGHT_RED}Spring application made with Spring Roo 2.0 +Doubts? http://projects.spring.io/spring-roo/${AnsiColor.DEFAULT} diff --git a/roo/src/main/resources/messages.properties b/roo/src/main/resources/messages.properties new file mode 100644 index 0000000000..e61a266500 --- /dev/null +++ b/roo/src/main/resources/messages.properties @@ -0,0 +1,146 @@ +#Updated at Tue Apr 04 15:04:02 BST 2017 +#Tue Apr 04 15:04:02 BST 2017 +error_NotFound={0} with identifier ''{1}'' not found. +error_NotNull=Required. +error_Size=The field must be between {2} and {1} characters long. +error_datatables_loading=An error happened while loading list data +error_deleting_item=Error deleting selected item. +error_deleting_item_with_relationships=To delete the selected item, must delete its related elements before. +error_expired_session=Your session has been expired +error_export_empty=No data available to generate a report +error_invalid_date=Please enter a correct date/time +error_invalid_maskValue=Please enter a valid value +error_login=Invalid user and password +help_login=Enter your login and password +info_author=Spring Roo development team +info_closed_session=Log out correctly +info_delete_batch_confirm=Are you sure want to delete the selected items? +info_delete_item_confirm=Are you sure want to delete this item? +info_deleted_item_problem=Error deleting item +info_deleted_items_batch=Deleted items +info_deleted_items_number=Deleted items {0} +info_description=Spring Roo, a next-generation rapid application development tool for Java developers. With Roo you can easily build full Java applications in minutes. +info_error=An unexpected error has occurred +info_homepage_header=With Roo you can easily build full Java applications in minutes. +info_homepage_paragraph=Spring Roo is a next-generation rapid application development tool for Java developers.\nIt focuses on higher productivity, stock-standard Java APIs, high usability, avoiding engineering trade-offs and \nfacilitating easy Roo removal. +info_homepage_project=Hello, this is your home page. +info_homepage_thanks=Thanks for your interest in Spring Roo\! +info_no_deleted_item=No deleted item. +info_no_exist_item=Item doesn't exist. +info_security_login=You tried to access a restricted area of our application. By default, you can log in with +info_select_an_option=Select an option +info_spring_code=Known, modify and redistribute the source code. +info_spring_documentation=If you are looking for Reference Documentation you can get it here. +info_spring_site=All the info about Spring Roo development. +info_spring_support=If you have any question about the project, \nyou can check it. +info_twitter=As always, you can find us also on +label_accessibility=Accessibility +label_accessibility_alt=Level Double-A conformance, W3C WAI Web Content Accessibility Guidelines 2.0 +label_accessibility_lead=Accessibility policy application +label_accessibility_text=

Spring Roo Application is committed to ensuring the accessibility of its web content to people with disabilities. All of the content on our website will meet W3C WAI's Web Content Accessibility Guidelines 2.0, Level AA conformance. Any issues should be reported to springroo@disid.com.

The technologies that is depended to access the accessible content are HTML, CSS and Javascript.

+label_accessibility_title=Explanation of WCAG 2.0 Level Double-A Conformance +label_actions=Actions +label_add_entity=Add {0} +label_back=Back +label_book=Book +label_book_author=Author +label_book_id=Id +label_book_isbn=Isbn +label_book_iterable_to_add_cant_be_null_message=I T E R A B L E_ T O_ A D D_ C A N T_ B E_ N U L L_ M E S S A G E +label_book_iterable_to_remove_cant_be_null_message=I T E R A B L E_ T O_ R E M O V E_ C A N T_ B E_ N U L L_ M E S S A G E +label_book_plural=Books +label_book_title=Title +label_book_version=Version +label_change_password=Change password +label_close=Close +label_code=Code +label_concurrency_apply=Apply my changes anyway +label_concurrency_apply_info=(discard all the changes applied by the other users). +label_concurrency_discard=Discard all my changes and reload this record. +label_concurrency_title=Warning\! This record has been updated by another user. +label_contact=Contact +label_create=Create +label_create_entity=Create {0} +label_data_entity={0} data +label_datatables_add=Add +label_datatables_columns=Columns +label_datatables_decimal=. +label_datatables_delete=Delete +label_datatables_emptyTable=No data available in table +label_datatables_first=First +label_datatables_info=Showing _START_ to _END_ of _TOTAL_ entries +label_datatables_infoEmpty=Showing 0 to 0 of 0 entries +label_datatables_infoFiltered=(filtered from _MAX_ total entries) +label_datatables_infoPostFix= +label_datatables_last=Last +label_datatables_lengthMenu=Show _MENU_ entries +label_datatables_loadingRecords=Loading... +label_datatables_loading_error=An error happened while loading list data +label_datatables_next=Next +label_datatables_previous=Previous +label_datatables_processing=Processing... +label_datatables_search=Search\: +label_datatables_selectedRow=1 selected row +label_datatables_selectedRows=%d selected rows +label_datatables_showRows=Show %d rows +label_datatables_sortAscending=\: activate to sort column ascending +label_datatables_sortDescending=\: activate to sort column descending +label_datatables_thousands= +label_datatables_zeroRecords=No matching records found +label_delete=Delete +label_delete_entity=Delete {0} +label_documentation=Doc +label_edit=Edit +label_edit_entity=Edit {0} +label_edit_search=Edit search +label_entities_found={0} found +label_error=Error +label_errorpage=Error page +label_errorpage_header=\u00C2\u00A1Error\! +label_exit=Exit +label_export_empty_error=Empty report +label_filtered_by=Filtered By +label_goBack=Go Back +label_goEdit=Go to the editing page +label_goHome=Go to homepage +label_gotoGithub=Go to Spring Roo page in GitHub +label_gotoLanguage=Display website in +label_gotowebsite=Go to Spring Roo website +label_help=Help +label_inputmask_groupSeparator=, +label_inputmask_prefix=$ +label_inputmask_radixPoint=. +label_inputmask_suffix= +label_last_access=Last Access {0} +label_list_entity=List {0} +label_list_of_entity=List of {0} +label_login=Login +label_login_password=Password +label_login_username=User +label_logout=Log out +label_menu_entry={0} +label_message=Message +label_not_filtered=Not Filtered +label_owasp_alt=Application developed and tested with OWASP +label_owasp_title=Application developed and tested with OWASP - Web Application Security Project +label_profile=Admin Profile +label_projectpage=Project Page +label_requiredfield=Required field +label_reset=Cancel +label_save=Save +label_search=Search +label_search_entity={0} searcher +label_show=Show +label_show_entity={0} card +label_spring_documentation=Spring Roo reference documentation +label_spring_site=Spring Roo project site +label_spring_sourcecode=Spring Roo source code +label_spring_support=Spring Roo Stackoverflow support +label_submit=Accept +label_support=Support +label_tools=Tools +label_user=User +language_label=Languages +language_label_en=English +language_label_es=Spanish +welcome_label=Welcome diff --git a/roo/src/main/resources/static/public/css/springroo.css b/roo/src/main/resources/static/public/css/springroo.css new file mode 100644 index 0000000000..2db8914ff1 --- /dev/null +++ b/roo/src/main/resources/static/public/css/springroo.css @@ -0,0 +1,475 @@ +/* CSS Theme Roo */ + +body { + background-color: #f1f1f1; + color: rgba(13,13,13,.65); + line-height: 1.8; + letter-spacing: .01em; +} +img {border: 0; max-width: 100%; outline: none;} +a{ + color: #6db33f; + transition: color 150ms ease; + } +a:focus, a:hover{ + outline: none; + color: #3f6824; + } +.content a:hover {text-decoration: underline} +.content a.btn-action:hover, +.content .paginate_button a:hover, +.content a.btn:hover {text-decoration: none;} + +.clearfix {clear: both;} + +/*--NAVBAR-------------*/ + +.navbar-header .organization-logo {vertical-align: middle; padding: 0.2em 1em;} +.navbar-header .application-name { color: #34302d;} +.navbar-header .application-name strong {} +.navbar-default .navbar-header .application-name a {text-decoration: none;} +.navbar-inverse .navbar-header .application-name a {color: #fff; text-decoration: none;} +.navbar-header .application-name small {} + +.dropdown-menu > li button.btn-link { + display: block; + padding: 3px 20px; + white-space: nowrap; + color: #333; + width: 100%; + text-align: left; +} +.dropdown-menu > li button.btn-link:hover, +.dropdown-menu > li button.btn-link:focus { + color: #262626; + text-decoration: none; + background-color: #f5f5f5; +} +.dropdown-menu > .active button.btn-link, +.dropdown-menu > .active button.btn-link:hover, +.dropdown-menu > .active button.btn-link:focus { + color: #262626; + text-decoration: none; + background-color: #f5f5f5; +} + +/*--FOOTER-------------*/ + +footer { padding: 1em 0 3em; text-align: center;} +footer p{font-size: 0.875em;} +footer a:hover, footer a:focus{text-decoration: none;} + + + +/*--HEADINGS-------------*/ + +.content h4,h5,h6 {color: #34302d;} + +/*--CONTENT-------------*/ + +/* second container */ +.content { + clear: both; + min-height: 26.3em; + display: block; + padding: 1em; + background: #fff; + box-shadow: 0 0 0 0,0 6px 12px rgba(34,34,34,.1); +} +.content > .panel{ +/* margin: 1em; */ +} + +/*--SHOW-------------*/ + +.content ul.list-unstyled li{ + margin: 0.25em 0; +} +.content ul.list-unstyled li{ + padding: 0.25em 0; +} +.content ul.list-unstyled li strong{ + min-width: 15%; + display: inline-block; + } +.content ul.list-unstyled li span{ + display: inline-block; + padding-left: 1em; +} +.content [id$="FieldSet"] h2{ + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: inherit; + border-bottom: 1px solid #f1f1f1; +} +dd, dt { + margin: 0px 5px 5px 0px; +} + +/*--ALERTS-------------*/ + +.alert blockquote{ + margin: 0; + font-size: inherit; +} +.alert-info blockquote { + border-left-color: #31708f; +} +/*--FORMS-------------*/ + +legend{ + border-bottom: 1px solid #f1f1f1; +} +.form-horizontal .form-group input[type="radio"], +.form-horizontal .form-group input[type="checkbox"] { + margin-left: 0; +} + +/*--TABLES-------------*/ + +table.dataTable thead .sorting, +table.dataTable thead .sorting_asc, +table.dataTable thead .sorting_desc { + background-image: none; +} + +/** toolbars datatables **/ +div.dataTables_wrapper div.dataTables_paginate, +div.dataTables_wrapper div.dataTables_info{ + padding: 0; +} + +div.dataTables_wrapper div.dataTables_filter, +div.dataTables_wrapper div.dt-buttons.btn-group{ + padding: 1em 0; +} +.pagination{ + text-transform: none; +} +.dataTables_wrapper .dataTables_paginate .paginate_button{ + padding: 0; +} +.dataTables_wrapper .dataTables_paginate .paginate_button:hover { + background: none; +} +/** btn datatables **/ +table a.btn-action { + text-decoration: none; + color: #3e3f3a; +} +table .btn-action + .btn-action { + margin: 0 0 0 0.35em; +} +table a.btn-action:hover, +table a.btn-action:focus, +table a.btn-action:active { + color: #79a736; +} +table.dataTable.no-footer { + border-bottom: 1px solid #dfd7ca; +} + +div.dataTables_wrapper div.dataTables_processing { + position: absolute; + top: 50%; + left: 50%; + width: 200px; + margin-left: -100px; + margin-top: 16px; + padding: 0.5em 0; + height: 30px; + overflow: hidden; + border-radius: 4px; + -moz-animation: progress-bar-stripes 2s linear infinite; + -ms-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 40px 40px; + font-size: 12px; + color: #ffffff; + text-align: center; + background-color: #428bca; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + -webkit-transition: width 0.6s ease; + transition: width 0.6s ease; +} +/*--BTN-------------*/ + +.btn-action:before { + font-family: 'FontAwesome'; + padding: 0 0.3em 0 0; +} +.btn-action.delete:before { + content:"\f014"; + } +.btn-action.edit:before, +.btn-action.modify:before { + content:"\f040"; + } +.btn-action.accept:before { + content:"\f00c"; + } +.btn-action.add:before { + content:"\f067"; + } +.btn-action.showInfo:before { + content:"\f06e"; +} +.alert a.btn{ + color: #555555; + text-decoration: none; +} + +/*-------------------INDEX-------------------*/ + +body.home .content{ + background: none; + padding: 0; + box-shadow: none; +} +body.home .box-center{ + padding: 1em 2em; + background: #fff; + box-shadow: 0 0 0 0,0 6px 12px rgba(34,34,34,.1); +} +body.home .navbar { margin-bottom: 0px;} + +/*--HEADER-------------*/ +.jumbotron { + min-height: 6.5em; + text-align: center; + vertical-align: middle; + margin-bottom: 2em; + background-color: #316128; + background-image: linear-gradient(120deg, #316128, #254211); + border-bottom: 1px solid #969595; + border: none; +} +.jumbotron.bg-banner { + min-height: 20em; + color: #fff; + text-align: center; + padding: 3em; + background-image: url(../img/geo.png); + background-repeat: no-repeat; + background-position: 50% 20%; + -webkit-background-size: cover; + -moz-background-size: cover; + -o-background-size: cover; + background-size: cover; +} +.jumbotron .project-name{ + color: #fff; + text-align: center; + font-size: 4em; +} +.jumbotron .project-tagline { + color: #fff; + margin-bottom: 2rem; + font-weight: normal; + opacity: 0.7; +} + +/*--SOCIAL LINKS-------------*/ + +.social-links a{ + color: #999; + text-decoration: none; + font-size: 1.5em; + margin: 0 0.15em; +} + +/*--BLOCKS----------------*/ + +.blocks { margin-top: 2em;} +.block-item { + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15); + position: relative; + margin-bottom: 30px; +} +.block-item .doc { + padding: 15px; + float: left; + font-size: 4em; +} +.block-item a{ + color: #fff; + cursor: pointer; +} +.block-item .text { + overflow: hidden; + color: rgba(255, 255, 255, 0.9); + padding: 16px 12px; +} +.block-item .text > h2 { + margin: 0; + line-height: 100%; + font-size: 22px; + font-weight: 300; + color: #fff; +} +.block-item .text > small { + margin-bottom: 2px; + display: block; +} +.block-item .text > p, +.block-item .text > h2 { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} +.block-item > .clearfix, +.block-item > .dl-horizontal dd, +.block-item > .container, +.block-item > .container-fluid, +.block-item > .row, +.block-item > .form-horizontal .form-group, +.block-item > .btn-toolbar, +.block-item > .btn-group-vertical > .btn-group, +.block-item > .nav, +.block-item > .navbar, +.block-item > .navbar-header, +.block-item > .navbar-collapse, +.block-item > .pager, +.block-item > .panel-body, +.block-item > .modal-header, +.block-item > .modal-footer { + position: relative; + z-index: 1; +} +.block-item:before { + -webkit-transition: width; + -o-transition: width; + transition: width; + -webkit-transition-duration: 500ms; + transition-duration: 500ms; + -webkit-backface-visibility: hidden; + -moz-backface-visibility: hidden; + backface-visibility: hidden; + content: ""; + width: 83px; + height: 100%; + background: rgba(0, 0, 0, 0.1); + position: absolute; + left: 0; + top: 0; +} +.block-item:hover .text {color: #fff !important;} +.block-item:hover:before { width: 100%;} + +/* + * Material Background Colors + */ + +.bgm-teal { background-color: #009688 !important;} +.bgm-red { background-color: #f44336 !important;} +.bgm-amber { background-color: #ffc107 !important;} +.bgm-bluegray {background-color: #607d8b !important;} + + +/* SANDSTONE THEME CUSTOM +-----------------------------------------------------------------------------*/ + +/*-- NAVBAR -------------*/ + +.navbar-default .navbar-header .application-name a {color: #fff; text-decoration: none;} + +.dropdown-menu > li button.btn-link { + clear: both; + font-size: 11px; + line-height: 22px; + font-weight: 500; + text-transform: uppercase; + color: #98978b; +} +.dropdown-menu > li button.btn-link:hover, +.dropdown-menu > li button.btn-link:focus { + color: #98978b; + background-color: #f8f5f0; +} +.dropdown-menu > .active button.btn-link, +.dropdown-menu > .active button.btn-link:hover, +.dropdown-menu > .active button.btn-link:focus { + color: #98978b; + background-color: #f8f5f0; +} + +/*-- SELECT2 -------------*/ + +.select2-container--bootstrap .select2-selection{ + height: 46px; + padding: 12px 16px; + font-size: 14px; + line-height: 1.42857143; + color: #3e3f3a; + background-color: #ffffff; + background-image: none; + border: 1px solid #dfd7ca; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; + -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; +} +.select2-container--bootstrap .select2-selection--multiple { + padding: 6px; +} +.select2-container--bootstrap .select2-selection--multiple .select2-selection__arrow, +.select2-container--bootstrap .select2-selection--multiple .select2-selection__placeholder, +.select2-container--bootstrap .select2-selection--single .select2-selection__arrow, +.select2-container--bootstrap .select2-selection--single .select2-selection__placeholder{ + color: #dfd7ca; + padding: 0; +} +.select2-container--bootstrap .select2-selection--multiple .select2-selection__arrow b, +.select2-container--bootstrap .select2-selection--single .select2-selection__arrow b { + border-color: #dfd7ca transparent transparent transparent; +} +/* align options in left */ +.select2-container--bootstrap .select2-selection--multiple .select2-selection__rendered{ + padding-right: 0.5em !important; +} +.select2-container--bootstrap .select2-selection--multiple .select2-selection__clear { + margin-right: 0 !important; +} + +/* MEDIA QUERIES +-------------------------------------------------------------------------------*/ + +@media print { + body {background: #fff;} + .content .main {width: 98%;} +} + +@media (max-width: 768px) { + .jumbotron .project-name{font-size: 3em;} + /* navbar fixes */ + .navbar-nav#entitiesMenuEntries { + max-width: 410px; + } +} + +@media (max-width: 992px){ + .navbar-nav.upper-nav > li > a {padding: 15px 5px} +} + +@media (min-width: 1020px){ + /* navbar fixes */ + .navbar-nav#entitiesMenuEntries { + max-width: 370px; + } +} + +@media (min-width: 1100px){ + /* navbar fixes */ + .navbar-nav#entitiesMenuEntries { + max-width: 50%; + } +} diff --git a/roo/src/main/resources/static/public/css/theme.css b/roo/src/main/resources/static/public/css/theme.css new file mode 100644 index 0000000000..02722dd20c --- /dev/null +++ b/roo/src/main/resources/static/public/css/theme.css @@ -0,0 +1,6914 @@ +@import url("https://fonts.googleapis.com/css?family=Roboto:400,500"); +/*! + * bootswatch v3.3.6 + * Homepage: http://bootswatch.com + * Copyright 2012-2015 Thomas Park + * Licensed under MIT + * Based on Bootstrap + * Sandstone theme +*/ +/*! + * Bootstrap v3.3.6 (http://getbootstrap.com) + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ +html { + font-family: sans-serif; + -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; +} +body { + margin: 0; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; +} +audio, +canvas, +progress, +video { + display: inline-block; + vertical-align: baseline; +} +audio:not([controls]) { + display: none; + height: 0; +} +[hidden], +template { + display: none; +} +a { + background-color: transparent; +} +a:active, +a:hover { + outline: 0; +} +abbr[title] { + border-bottom: 1px dotted; +} +b, +strong { + font-weight: bold; +} +dfn { + font-style: italic; +} +h1 { + font-size: 2em; + margin: 0.67em 0; +} +/*mark { + background: #ff0; + color: #000; +}*/ +small { + font-size: 80%; +} +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} +sup { + top: -0.5em; +} +sub { + bottom: -0.25em; +} +img { + border: 0; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 1em 40px; +} +hr { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + height: 0; +} +pre { + overflow: auto; +} +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} +button, +input, +optgroup, +select, +textarea { + color: inherit; + font: inherit; + margin: 0; +} +button { + overflow: visible; +} +button, +select { + text-transform: none; +} +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} +button[disabled], +html input[disabled] { + cursor: default; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} +input { + line-height: normal; +} +input[type="checkbox"], +input[type="radio"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + padding: 0; +} +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} +input[type="search"] { + -webkit-appearance: textfield; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} +legend { + border: 0; + padding: 0; +} +textarea { + overflow: auto; +} +optgroup { + font-weight: bold; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +td, +th { + padding: 0; +} +/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ +@media print { + *, + *:before, + *:after { + background: transparent !important; + color: #000 !important; + -webkit-box-shadow: none !important; + box-shadow: none !important; + text-shadow: none !important; + } + a, + a:visited { + text-decoration: underline; + } + a[href]:after { + content: " (" attr(href) ")"; + } + abbr[title]:after { + content: " (" attr(title) ")"; + } + a[href^="#"]:after, + a[href^="javascript:"]:after { + content: ""; + } + pre, + blockquote { + border: 1px solid #999; + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + img { + max-width: 100% !important; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } + .navbar { + display: none; + } + .btn > .caret, + .dropup > .btn > .caret { + border-top-color: #000 !important; + } + .label { + border: 1px solid #000; + } + .table { + border-collapse: collapse !important; + } + .table td, + .table th { + background-color: #fff !important; + } + .table-bordered th, + .table-bordered td { + border: 1px solid #ddd !important; + } +} +/* @font-face { + font-family: 'Glyphicons Halflings'; + src: url('../fonts/glyphicons-halflings-regular.eot'); + src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); +} */ +.glyphicon { + position: relative; + top: 1px; + display: inline-block; + font-family: 'Glyphicons Halflings'; + font-style: normal; + font-weight: normal; + line-height: 1; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +.glyphicon-asterisk:before { + content: "\002a"; +} +.glyphicon-plus:before { + content: "\002b"; +} +.glyphicon-euro:before, +.glyphicon-eur:before { + content: "\20ac"; +} +.glyphicon-minus:before { + content: "\2212"; +} +.glyphicon-cloud:before { + content: "\2601"; +} +.glyphicon-envelope:before { + content: "\2709"; +} +.glyphicon-pencil:before { + content: "\270f"; +} +.glyphicon-glass:before { + content: "\e001"; +} +.glyphicon-music:before { + content: "\e002"; +} +.glyphicon-search:before { + content: "\e003"; +} +.glyphicon-heart:before { + content: "\e005"; +} +.glyphicon-star:before { + content: "\e006"; +} +.glyphicon-star-empty:before { + content: "\e007"; +} +.glyphicon-user:before { + content: "\e008"; +} +.glyphicon-film:before { + content: "\e009"; +} +.glyphicon-th-large:before { + content: "\e010"; +} +.glyphicon-th:before { + content: "\e011"; +} +.glyphicon-th-list:before { + content: "\e012"; +} +.glyphicon-ok:before { + content: "\e013"; +} +.glyphicon-remove:before { + content: "\e014"; +} +.glyphicon-zoom-in:before { + content: "\e015"; +} +.glyphicon-zoom-out:before { + content: "\e016"; +} +.glyphicon-off:before { + content: "\e017"; +} +.glyphicon-signal:before { + content: "\e018"; +} +.glyphicon-cog:before { + content: "\e019"; +} +.glyphicon-trash:before { + content: "\e020"; +} +.glyphicon-home:before { + content: "\e021"; +} +.glyphicon-file:before { + content: "\e022"; +} +.glyphicon-time:before { + content: "\e023"; +} +.glyphicon-road:before { + content: "\e024"; +} +.glyphicon-download-alt:before { + content: "\e025"; +} +.glyphicon-download:before { + content: "\e026"; +} +.glyphicon-upload:before { + content: "\e027"; +} +.glyphicon-inbox:before { + content: "\e028"; +} +.glyphicon-play-circle:before { + content: "\e029"; +} +.glyphicon-repeat:before { + content: "\e030"; +} +.glyphicon-refresh:before { + content: "\e031"; +} +.glyphicon-list-alt:before { + content: "\e032"; +} +.glyphicon-lock:before { + content: "\e033"; +} +.glyphicon-flag:before { + content: "\e034"; +} +.glyphicon-headphones:before { + content: "\e035"; +} +.glyphicon-volume-off:before { + content: "\e036"; +} +.glyphicon-volume-down:before { + content: "\e037"; +} +.glyphicon-volume-up:before { + content: "\e038"; +} +.glyphicon-qrcode:before { + content: "\e039"; +} +.glyphicon-barcode:before { + content: "\e040"; +} +.glyphicon-tag:before { + content: "\e041"; +} +.glyphicon-tags:before { + content: "\e042"; +} +.glyphicon-book:before { + content: "\e043"; +} +.glyphicon-bookmark:before { + content: "\e044"; +} +.glyphicon-print:before { + content: "\e045"; +} +.glyphicon-camera:before { + content: "\e046"; +} +.glyphicon-font:before { + content: "\e047"; +} +.glyphicon-bold:before { + content: "\e048"; +} +.glyphicon-italic:before { + content: "\e049"; +} +.glyphicon-text-height:before { + content: "\e050"; +} +.glyphicon-text-width:before { + content: "\e051"; +} +.glyphicon-align-left:before { + content: "\e052"; +} +.glyphicon-align-center:before { + content: "\e053"; +} +.glyphicon-align-right:before { + content: "\e054"; +} +.glyphicon-align-justify:before { + content: "\e055"; +} +.glyphicon-list:before { + content: "\e056"; +} +.glyphicon-indent-left:before { + content: "\e057"; +} +.glyphicon-indent-right:before { + content: "\e058"; +} +.glyphicon-facetime-video:before { + content: "\e059"; +} +.glyphicon-picture:before { + content: "\e060"; +} +.glyphicon-map-marker:before { + content: "\e062"; +} +.glyphicon-adjust:before { + content: "\e063"; +} +.glyphicon-tint:before { + content: "\e064"; +} +.glyphicon-edit:before { + content: "\e065"; +} +.glyphicon-share:before { + content: "\e066"; +} +.glyphicon-check:before { + content: "\e067"; +} +.glyphicon-move:before { + content: "\e068"; +} +.glyphicon-step-backward:before { + content: "\e069"; +} +.glyphicon-fast-backward:before { + content: "\e070"; +} +.glyphicon-backward:before { + content: "\e071"; +} +.glyphicon-play:before { + content: "\e072"; +} +.glyphicon-pause:before { + content: "\e073"; +} +.glyphicon-stop:before { + content: "\e074"; +} +.glyphicon-forward:before { + content: "\e075"; +} +.glyphicon-fast-forward:before { + content: "\e076"; +} +.glyphicon-step-forward:before { + content: "\e077"; +} +.glyphicon-eject:before { + content: "\e078"; +} +.glyphicon-chevron-left:before { + content: "\e079"; +} +.glyphicon-chevron-right:before { + content: "\e080"; +} +.glyphicon-plus-sign:before { + content: "\e081"; +} +.glyphicon-minus-sign:before { + content: "\e082"; +} +.glyphicon-remove-sign:before { + content: "\e083"; +} +.glyphicon-ok-sign:before { + content: "\e084"; +} +.glyphicon-question-sign:before { + content: "\e085"; +} +.glyphicon-info-sign:before { + content: "\e086"; +} +.glyphicon-screenshot:before { + content: "\e087"; +} +.glyphicon-remove-circle:before { + content: "\e088"; +} +.glyphicon-ok-circle:before { + content: "\e089"; +} +.glyphicon-ban-circle:before { + content: "\e090"; +} +.glyphicon-arrow-left:before { + content: "\e091"; +} +.glyphicon-arrow-right:before { + content: "\e092"; +} +.glyphicon-arrow-up:before { + content: "\e093"; +} +.glyphicon-arrow-down:before { + content: "\e094"; +} +.glyphicon-share-alt:before { + content: "\e095"; +} +.glyphicon-resize-full:before { + content: "\e096"; +} +.glyphicon-resize-small:before { + content: "\e097"; +} +.glyphicon-exclamation-sign:before { + content: "\e101"; +} +.glyphicon-gift:before { + content: "\e102"; +} +.glyphicon-leaf:before { + content: "\e103"; +} +.glyphicon-fire:before { + content: "\e104"; +} +.glyphicon-eye-open:before { + content: "\e105"; +} +.glyphicon-eye-close:before { + content: "\e106"; +} +.glyphicon-warning-sign:before { + content: "\e107"; +} +.glyphicon-plane:before { + content: "\e108"; +} +.glyphicon-calendar:before { + content: "\e109"; +} +.glyphicon-random:before { + content: "\e110"; +} +.glyphicon-comment:before { + content: "\e111"; +} +.glyphicon-magnet:before { + content: "\e112"; +} +.glyphicon-chevron-up:before { + content: "\e113"; +} +.glyphicon-chevron-down:before { + content: "\e114"; +} +.glyphicon-retweet:before { + content: "\e115"; +} +.glyphicon-shopping-cart:before { + content: "\e116"; +} +.glyphicon-folder-close:before { + content: "\e117"; +} +.glyphicon-folder-open:before { + content: "\e118"; +} +.glyphicon-resize-vertical:before { + content: "\e119"; +} +.glyphicon-resize-horizontal:before { + content: "\e120"; +} +.glyphicon-hdd:before { + content: "\e121"; +} +.glyphicon-bullhorn:before { + content: "\e122"; +} +.glyphicon-bell:before { + content: "\e123"; +} +.glyphicon-certificate:before { + content: "\e124"; +} +.glyphicon-thumbs-up:before { + content: "\e125"; +} +.glyphicon-thumbs-down:before { + content: "\e126"; +} +.glyphicon-hand-right:before { + content: "\e127"; +} +.glyphicon-hand-left:before { + content: "\e128"; +} +.glyphicon-hand-up:before { + content: "\e129"; +} +.glyphicon-hand-down:before { + content: "\e130"; +} +.glyphicon-circle-arrow-right:before { + content: "\e131"; +} +.glyphicon-circle-arrow-left:before { + content: "\e132"; +} +.glyphicon-circle-arrow-up:before { + content: "\e133"; +} +.glyphicon-circle-arrow-down:before { + content: "\e134"; +} +.glyphicon-globe:before { + content: "\e135"; +} +.glyphicon-wrench:before { + content: "\e136"; +} +.glyphicon-tasks:before { + content: "\e137"; +} +.glyphicon-filter:before { + content: "\e138"; +} +.glyphicon-briefcase:before { + content: "\e139"; +} +.glyphicon-fullscreen:before { + content: "\e140"; +} +.glyphicon-dashboard:before { + content: "\e141"; +} +.glyphicon-paperclip:before { + content: "\e142"; +} +.glyphicon-heart-empty:before { + content: "\e143"; +} +.glyphicon-link:before { + content: "\e144"; +} +.glyphicon-phone:before { + content: "\e145"; +} +.glyphicon-pushpin:before { + content: "\e146"; +} +.glyphicon-usd:before { + content: "\e148"; +} +.glyphicon-gbp:before { + content: "\e149"; +} +.glyphicon-sort:before { + content: "\e150"; +} +.glyphicon-sort-by-alphabet:before { + content: "\e151"; +} +.glyphicon-sort-by-alphabet-alt:before { + content: "\e152"; +} +.glyphicon-sort-by-order:before { + content: "\e153"; +} +.glyphicon-sort-by-order-alt:before { + content: "\e154"; +} +.glyphicon-sort-by-attributes:before { + content: "\e155"; +} +.glyphicon-sort-by-attributes-alt:before { + content: "\e156"; +} +.glyphicon-unchecked:before { + content: "\e157"; +} +.glyphicon-expand:before { + content: "\e158"; +} +.glyphicon-collapse-down:before { + content: "\e159"; +} +.glyphicon-collapse-up:before { + content: "\e160"; +} +.glyphicon-log-in:before { + content: "\e161"; +} +.glyphicon-flash:before { + content: "\e162"; +} +.glyphicon-log-out:before { + content: "\e163"; +} +.glyphicon-new-window:before { + content: "\e164"; +} +.glyphicon-record:before { + content: "\e165"; +} +.glyphicon-save:before { + content: "\e166"; +} +.glyphicon-open:before { + content: "\e167"; +} +.glyphicon-saved:before { + content: "\e168"; +} +.glyphicon-import:before { + content: "\e169"; +} +.glyphicon-export:before { + content: "\e170"; +} +.glyphicon-send:before { + content: "\e171"; +} +.glyphicon-floppy-disk:before { + content: "\e172"; +} +.glyphicon-floppy-saved:before { + content: "\e173"; +} +.glyphicon-floppy-remove:before { + content: "\e174"; +} +.glyphicon-floppy-save:before { + content: "\e175"; +} +.glyphicon-floppy-open:before { + content: "\e176"; +} +.glyphicon-credit-card:before { + content: "\e177"; +} +.glyphicon-transfer:before { + content: "\e178"; +} +.glyphicon-cutlery:before { + content: "\e179"; +} +.glyphicon-header:before { + content: "\e180"; +} +.glyphicon-compressed:before { + content: "\e181"; +} +.glyphicon-earphone:before { + content: "\e182"; +} +.glyphicon-phone-alt:before { + content: "\e183"; +} +.glyphicon-tower:before { + content: "\e184"; +} +.glyphicon-stats:before { + content: "\e185"; +} +.glyphicon-sd-video:before { + content: "\e186"; +} +.glyphicon-hd-video:before { + content: "\e187"; +} +.glyphicon-subtitles:before { + content: "\e188"; +} +.glyphicon-sound-stereo:before { + content: "\e189"; +} +.glyphicon-sound-dolby:before { + content: "\e190"; +} +.glyphicon-sound-5-1:before { + content: "\e191"; +} +.glyphicon-sound-6-1:before { + content: "\e192"; +} +.glyphicon-sound-7-1:before { + content: "\e193"; +} +.glyphicon-copyright-mark:before { + content: "\e194"; +} +.glyphicon-registration-mark:before { + content: "\e195"; +} +.glyphicon-cloud-download:before { + content: "\e197"; +} +.glyphicon-cloud-upload:before { + content: "\e198"; +} +.glyphicon-tree-conifer:before { + content: "\e199"; +} +.glyphicon-tree-deciduous:before { + content: "\e200"; +} +.glyphicon-cd:before { + content: "\e201"; +} +.glyphicon-save-file:before { + content: "\e202"; +} +.glyphicon-open-file:before { + content: "\e203"; +} +.glyphicon-level-up:before { + content: "\e204"; +} +.glyphicon-copy:before { + content: "\e205"; +} +.glyphicon-paste:before { + content: "\e206"; +} +.glyphicon-alert:before { + content: "\e209"; +} +.glyphicon-equalizer:before { + content: "\e210"; +} +.glyphicon-king:before { + content: "\e211"; +} +.glyphicon-queen:before { + content: "\e212"; +} +.glyphicon-pawn:before { + content: "\e213"; +} +.glyphicon-bishop:before { + content: "\e214"; +} +.glyphicon-knight:before { + content: "\e215"; +} +.glyphicon-baby-formula:before { + content: "\e216"; +} +.glyphicon-tent:before { + content: "\26fa"; +} +.glyphicon-blackboard:before { + content: "\e218"; +} +.glyphicon-bed:before { + content: "\e219"; +} +.glyphicon-apple:before { + content: "\f8ff"; +} +.glyphicon-erase:before { + content: "\e221"; +} +.glyphicon-hourglass:before { + content: "\231b"; +} +.glyphicon-lamp:before { + content: "\e223"; +} +.glyphicon-duplicate:before { + content: "\e224"; +} +.glyphicon-piggy-bank:before { + content: "\e225"; +} +.glyphicon-scissors:before { + content: "\e226"; +} +.glyphicon-bitcoin:before { + content: "\e227"; +} +.glyphicon-btc:before { + content: "\e227"; +} +.glyphicon-xbt:before { + content: "\e227"; +} +.glyphicon-yen:before { + content: "\00a5"; +} +.glyphicon-jpy:before { + content: "\00a5"; +} +.glyphicon-ruble:before { + content: "\20bd"; +} +.glyphicon-rub:before { + content: "\20bd"; +} +.glyphicon-scale:before { + content: "\e230"; +} +.glyphicon-ice-lolly:before { + content: "\e231"; +} +.glyphicon-ice-lolly-tasted:before { + content: "\e232"; +} +.glyphicon-education:before { + content: "\e233"; +} +.glyphicon-option-horizontal:before { + content: "\e234"; +} +.glyphicon-option-vertical:before { + content: "\e235"; +} +.glyphicon-menu-hamburger:before { + content: "\e236"; +} +.glyphicon-modal-window:before { + content: "\e237"; +} +.glyphicon-oil:before { + content: "\e238"; +} +.glyphicon-grain:before { + content: "\e239"; +} +.glyphicon-sunglasses:before { + content: "\e240"; +} +.glyphicon-text-size:before { + content: "\e241"; +} +.glyphicon-text-color:before { + content: "\e242"; +} +.glyphicon-text-background:before { + content: "\e243"; +} +.glyphicon-object-align-top:before { + content: "\e244"; +} +.glyphicon-object-align-bottom:before { + content: "\e245"; +} +.glyphicon-object-align-horizontal:before { + content: "\e246"; +} +.glyphicon-object-align-left:before { + content: "\e247"; +} +.glyphicon-object-align-vertical:before { + content: "\e248"; +} +.glyphicon-object-align-right:before { + content: "\e249"; +} +.glyphicon-triangle-right:before { + content: "\e250"; +} +.glyphicon-triangle-left:before { + content: "\e251"; +} +.glyphicon-triangle-bottom:before { + content: "\e252"; +} +.glyphicon-triangle-top:before { + content: "\e253"; +} +.glyphicon-console:before { + content: "\e254"; +} +.glyphicon-superscript:before { + content: "\e255"; +} +.glyphicon-subscript:before { + content: "\e256"; +} +.glyphicon-menu-left:before { + content: "\e257"; +} +.glyphicon-menu-right:before { + content: "\e258"; +} +.glyphicon-menu-down:before { + content: "\e259"; +} +.glyphicon-menu-up:before { + content: "\e260"; +} +* { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +*:before, +*:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +html { + font-size: 10px; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +body { + font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.42857143; + color: #3e3f3a; + background-color: #ffffff; +} +input, +button, +select, +textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} +a { + color: #93c54b; + text-decoration: none; +} +a:hover, +a:focus { + color: #79a736; + text-decoration: underline; +} +a:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +figure { + margin: 0; +} +img { + vertical-align: middle; +} +.img-responsive, +.thumbnail > img, +.thumbnail a > img, +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + display: block; + max-width: 100%; + height: auto; +} +.img-rounded { + border-radius: 6px; +} +.img-thumbnail { + padding: 4px; + line-height: 1.42857143; + background-color: #f8f5f0; + border: 1px solid #dfd7ca; + border-radius: 4px; + -webkit-transition: all 0.2s ease-in-out; + -o-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; + display: inline-block; + max-width: 100%; + height: auto; +} +.img-circle { + border-radius: 50%; +} +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #f8f5f0; +} +.sr-only { + position: absolute; + width: 1px; + height: 1px; + margin: -1px; + padding: 0; + overflow: hidden; + clip: rect(0, 0, 0, 0); + border: 0; +} +.sr-only-focusable:active, +.sr-only-focusable:focus { + position: static; + width: auto; + height: auto; + margin: 0; + overflow: visible; + clip: auto; +} +[role="button"] { + cursor: pointer; +} +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6 { + font-family: inherit; + font-weight: 400; + line-height: 1.1; + color: inherit; +} +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small, +.h1 small, +.h2 small, +.h3 small, +.h4 small, +.h5 small, +.h6 small, +h1 .small, +h2 .small, +h3 .small, +h4 .small, +h5 .small, +h6 .small, +.h1 .small, +.h2 .small, +.h3 .small, +.h4 .small, +.h5 .small, +.h6 .small { + font-weight: normal; + line-height: 1; + color: #98978b; +} +h1, +.h1, +h2, +.h2, +h3, +.h3 { + margin-top: 20px; + margin-bottom: 10px; +} +h1 small, +.h1 small, +h2 small, +.h2 small, +h3 small, +.h3 small, +h1 .small, +.h1 .small, +h2 .small, +.h2 .small, +h3 .small, +.h3 .small { + font-size: 65%; +} +h4, +.h4, +h5, +.h5, +h6, +.h6 { + margin-top: 10px; + margin-bottom: 10px; +} +h4 small, +.h4 small, +h5 small, +.h5 small, +h6 small, +.h6 small, +h4 .small, +.h4 .small, +h5 .small, +.h5 .small, +h6 .small, +.h6 .small { + font-size: 75%; +} +h1, +.h1 { + font-size: 36px; +} +h2, +.h2 { + font-size: 30px; +} +h3, +.h3 { + font-size: 24px; +} +h4, +.h4 { + font-size: 18px; +} +h5, +.h5 { + font-size: 14px; +} +h6, +.h6 { + font-size: 12px; +} +p { + margin: 0 0 10px; +} +.lead { + margin-bottom: 20px; + font-size: 16px; + font-weight: 300; + line-height: 1.4; +} +@media (min-width: 768px) { + .lead { + font-size: 21px; + } +} +small, +.small { + font-size: 85%; +} +/*mark, +.mark { + background-color: #fcf8e3; + padding: .2em; +}*/ +.text-left { + text-align: left; +} +.text-right { + text-align: right; +} +.text-center { + text-align: center; +} +.text-justify { + text-align: justify; +} +.text-nowrap { + white-space: nowrap; +} +.text-lowercase { + text-transform: lowercase; +} +.text-uppercase { + text-transform: uppercase; +} +.text-capitalize { + text-transform: capitalize; +} +.text-muted { + color: #98978b; +} +.text-primary { + color: #325d88; +} +a.text-primary:hover, +a.text-primary:focus { + color: #244363; +} +.text-success { + color: #93c54b; +} +a.text-success:hover, +a.text-success:focus { + color: #79a736; +} +.text-info { + color: #29abe0; +} +a.text-info:hover, +a.text-info:focus { + color: #1b8dbb; +} +.text-warning { + color: #f47c3c; +} +a.text-warning:hover, +a.text-warning:focus { + color: #ef5c0e; +} +.text-danger { + color: #d9534f; +} +a.text-danger:hover, +a.text-danger:focus { + color: #c9302c; +} +.bg-primary { + color: #fff; + background-color: #325d88; +} +a.bg-primary:hover, +a.bg-primary:focus { + background-color: #244363; +} +.bg-success { + background-color: #dff0d8; +} +a.bg-success:hover, +a.bg-success:focus { + background-color: #c1e2b3; +} +.bg-info { + background-color: #d9edf7; +} +a.bg-info:hover, +a.bg-info:focus { + background-color: #afd9ee; +} +.bg-warning { + background-color: #fcf8e3; +} +a.bg-warning:hover, +a.bg-warning:focus { + background-color: #f7ecb5; +} +.bg-danger { + background-color: #f2dede; +} +a.bg-danger:hover, +a.bg-danger:focus { + background-color: #e4b9b9; +} +.page-header { + padding-bottom: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #f8f5f0; +} +ul, +ol { + margin-top: 0; + margin-bottom: 10px; +} +ul ul, +ol ul, +ul ol, +ol ol { + margin-bottom: 0; +} +.list-unstyled { + padding-left: 0; + list-style: none; +} +.list-inline { + padding-left: 0; + list-style: none; + margin-left: -5px; +} +.list-inline > li { + display: inline-block; + padding-left: 5px; + padding-right: 5px; +} +dl { + margin-top: 0; + margin-bottom: 20px; +} +dt, +dd { + line-height: 1.42857143; +} +dt { + font-weight: bold; +} +dd { + margin-left: 0; +} +@media (min-width: 768px) { + .dl-horizontal dt { + float: left; + width: 160px; + clear: left; + text-align: right; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } +} +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #98978b; +} +.initialism { + font-size: 90%; + text-transform: uppercase; +} +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + font-size: 17.5px; + border-left: 5px solid #dfd7ca; +} +blockquote p:last-child, +blockquote ul:last-child, +blockquote ol:last-child { + margin-bottom: 0; +} +blockquote footer, +blockquote small, +blockquote .small { + display: block; + font-size: 80%; + line-height: 1.42857143; + color: #3e3f3a; +} +blockquote footer:before, +blockquote small:before, +blockquote .small:before { + content: '\2014 \00A0'; +} +.blockquote-reverse, +blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + border-right: 5px solid #dfd7ca; + border-left: 0; + text-align: right; +} +.blockquote-reverse footer:before, +blockquote.pull-right footer:before, +.blockquote-reverse small:before, +blockquote.pull-right small:before, +.blockquote-reverse .small:before, +blockquote.pull-right .small:before { + content: ''; +} +.blockquote-reverse footer:after, +blockquote.pull-right footer:after, +.blockquote-reverse small:after, +blockquote.pull-right small:after, +.blockquote-reverse .small:after, +blockquote.pull-right .small:after { + content: '\00A0 \2014'; +} +address { + margin-bottom: 20px; + font-style: normal; + line-height: 1.42857143; +} +code, +kbd, +pre, +samp { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; +} +code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + background-color: #f9f2f4; + border-radius: 4px; +} +kbd { + padding: 2px 4px; + font-size: 90%; + color: #ffffff; + background-color: #333333; + border-radius: 3px; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); +} +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: bold; + -webkit-box-shadow: none; + box-shadow: none; +} +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.42857143; + word-break: break-all; + word-wrap: break-word; + color: #8e8c84; + background-color: #f5f5f5; + border: 1px solid #cccccc; + border-radius: 4px; +} +pre code { + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border-radius: 0; +} +.pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} +.container { + margin-right: auto; + margin-left: auto; + padding-left: 15px; + padding-right: 15px; +} +@media (min-width: 768px) { + .container { + width: 750px; + } +} +@media (min-width: 992px) { + .container { + width: 970px; + } +} +@media (min-width: 1200px) { + .container { + width: 1170px; + } +} +.container-fluid { + margin-right: auto; + margin-left: auto; + padding-left: 15px; + padding-right: 15px; +} +.row { + margin-left: -15px; + margin-right: -15px; +} +.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { + position: relative; + min-height: 1px; + padding-left: 15px; + padding-right: 15px; +} +.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { + float: left; +} +.col-xs-12 { + width: 100%; +} +.col-xs-11 { + width: 91.66666667%; +} +.col-xs-10 { + width: 83.33333333%; +} +.col-xs-9 { + width: 75%; +} +.col-xs-8 { + width: 66.66666667%; +} +.col-xs-7 { + width: 58.33333333%; +} +.col-xs-6 { + width: 50%; +} +.col-xs-5 { + width: 41.66666667%; +} +.col-xs-4 { + width: 33.33333333%; +} +.col-xs-3 { + width: 25%; +} +.col-xs-2 { + width: 16.66666667%; +} +.col-xs-1 { + width: 8.33333333%; +} +.col-xs-pull-12 { + right: 100%; +} +.col-xs-pull-11 { + right: 91.66666667%; +} +.col-xs-pull-10 { + right: 83.33333333%; +} +.col-xs-pull-9 { + right: 75%; +} +.col-xs-pull-8 { + right: 66.66666667%; +} +.col-xs-pull-7 { + right: 58.33333333%; +} +.col-xs-pull-6 { + right: 50%; +} +.col-xs-pull-5 { + right: 41.66666667%; +} +.col-xs-pull-4 { + right: 33.33333333%; +} +.col-xs-pull-3 { + right: 25%; +} +.col-xs-pull-2 { + right: 16.66666667%; +} +.col-xs-pull-1 { + right: 8.33333333%; +} +.col-xs-pull-0 { + right: auto; +} +.col-xs-push-12 { + left: 100%; +} +.col-xs-push-11 { + left: 91.66666667%; +} +.col-xs-push-10 { + left: 83.33333333%; +} +.col-xs-push-9 { + left: 75%; +} +.col-xs-push-8 { + left: 66.66666667%; +} +.col-xs-push-7 { + left: 58.33333333%; +} +.col-xs-push-6 { + left: 50%; +} +.col-xs-push-5 { + left: 41.66666667%; +} +.col-xs-push-4 { + left: 33.33333333%; +} +.col-xs-push-3 { + left: 25%; +} +.col-xs-push-2 { + left: 16.66666667%; +} +.col-xs-push-1 { + left: 8.33333333%; +} +.col-xs-push-0 { + left: auto; +} +.col-xs-offset-12 { + margin-left: 100%; +} +.col-xs-offset-11 { + margin-left: 91.66666667%; +} +.col-xs-offset-10 { + margin-left: 83.33333333%; +} +.col-xs-offset-9 { + margin-left: 75%; +} +.col-xs-offset-8 { + margin-left: 66.66666667%; +} +.col-xs-offset-7 { + margin-left: 58.33333333%; +} +.col-xs-offset-6 { + margin-left: 50%; +} +.col-xs-offset-5 { + margin-left: 41.66666667%; +} +.col-xs-offset-4 { + margin-left: 33.33333333%; +} +.col-xs-offset-3 { + margin-left: 25%; +} +.col-xs-offset-2 { + margin-left: 16.66666667%; +} +.col-xs-offset-1 { + margin-left: 8.33333333%; +} +.col-xs-offset-0 { + margin-left: 0%; +} +@media (min-width: 768px) { + .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { + float: left; + } + .col-sm-12 { + width: 100%; + } + .col-sm-11 { + width: 91.66666667%; + } + .col-sm-10 { + width: 83.33333333%; + } + .col-sm-9 { + width: 75%; + } + .col-sm-8 { + width: 66.66666667%; + } + .col-sm-7 { + width: 58.33333333%; + } + .col-sm-6 { + width: 50%; + } + .col-sm-5 { + width: 41.66666667%; + } + .col-sm-4 { + width: 33.33333333%; + } + .col-sm-3 { + width: 25%; + } + .col-sm-2 { + width: 16.66666667%; + } + .col-sm-1 { + width: 8.33333333%; + } + .col-sm-pull-12 { + right: 100%; + } + .col-sm-pull-11 { + right: 91.66666667%; + } + .col-sm-pull-10 { + right: 83.33333333%; + } + .col-sm-pull-9 { + right: 75%; + } + .col-sm-pull-8 { + right: 66.66666667%; + } + .col-sm-pull-7 { + right: 58.33333333%; + } + .col-sm-pull-6 { + right: 50%; + } + .col-sm-pull-5 { + right: 41.66666667%; + } + .col-sm-pull-4 { + right: 33.33333333%; + } + .col-sm-pull-3 { + right: 25%; + } + .col-sm-pull-2 { + right: 16.66666667%; + } + .col-sm-pull-1 { + right: 8.33333333%; + } + .col-sm-pull-0 { + right: auto; + } + .col-sm-push-12 { + left: 100%; + } + .col-sm-push-11 { + left: 91.66666667%; + } + .col-sm-push-10 { + left: 83.33333333%; + } + .col-sm-push-9 { + left: 75%; + } + .col-sm-push-8 { + left: 66.66666667%; + } + .col-sm-push-7 { + left: 58.33333333%; + } + .col-sm-push-6 { + left: 50%; + } + .col-sm-push-5 { + left: 41.66666667%; + } + .col-sm-push-4 { + left: 33.33333333%; + } + .col-sm-push-3 { + left: 25%; + } + .col-sm-push-2 { + left: 16.66666667%; + } + .col-sm-push-1 { + left: 8.33333333%; + } + .col-sm-push-0 { + left: auto; + } + .col-sm-offset-12 { + margin-left: 100%; + } + .col-sm-offset-11 { + margin-left: 91.66666667%; + } + .col-sm-offset-10 { + margin-left: 83.33333333%; + } + .col-sm-offset-9 { + margin-left: 75%; + } + .col-sm-offset-8 { + margin-left: 66.66666667%; + } + .col-sm-offset-7 { + margin-left: 58.33333333%; + } + .col-sm-offset-6 { + margin-left: 50%; + } + .col-sm-offset-5 { + margin-left: 41.66666667%; + } + .col-sm-offset-4 { + margin-left: 33.33333333%; + } + .col-sm-offset-3 { + margin-left: 25%; + } + .col-sm-offset-2 { + margin-left: 16.66666667%; + } + .col-sm-offset-1 { + margin-left: 8.33333333%; + } + .col-sm-offset-0 { + margin-left: 0%; + } +} +@media (min-width: 992px) { + .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { + float: left; + } + .col-md-12 { + width: 100%; + } + .col-md-11 { + width: 91.66666667%; + } + .col-md-10 { + width: 83.33333333%; + } + .col-md-9 { + width: 75%; + } + .col-md-8 { + width: 66.66666667%; + } + .col-md-7 { + width: 58.33333333%; + } + .col-md-6 { + width: 50%; + } + .col-md-5 { + width: 41.66666667%; + } + .col-md-4 { + width: 33.33333333%; + } + .col-md-3 { + width: 25%; + } + .col-md-2 { + width: 16.66666667%; + } + .col-md-1 { + width: 8.33333333%; + } + .col-md-pull-12 { + right: 100%; + } + .col-md-pull-11 { + right: 91.66666667%; + } + .col-md-pull-10 { + right: 83.33333333%; + } + .col-md-pull-9 { + right: 75%; + } + .col-md-pull-8 { + right: 66.66666667%; + } + .col-md-pull-7 { + right: 58.33333333%; + } + .col-md-pull-6 { + right: 50%; + } + .col-md-pull-5 { + right: 41.66666667%; + } + .col-md-pull-4 { + right: 33.33333333%; + } + .col-md-pull-3 { + right: 25%; + } + .col-md-pull-2 { + right: 16.66666667%; + } + .col-md-pull-1 { + right: 8.33333333%; + } + .col-md-pull-0 { + right: auto; + } + .col-md-push-12 { + left: 100%; + } + .col-md-push-11 { + left: 91.66666667%; + } + .col-md-push-10 { + left: 83.33333333%; + } + .col-md-push-9 { + left: 75%; + } + .col-md-push-8 { + left: 66.66666667%; + } + .col-md-push-7 { + left: 58.33333333%; + } + .col-md-push-6 { + left: 50%; + } + .col-md-push-5 { + left: 41.66666667%; + } + .col-md-push-4 { + left: 33.33333333%; + } + .col-md-push-3 { + left: 25%; + } + .col-md-push-2 { + left: 16.66666667%; + } + .col-md-push-1 { + left: 8.33333333%; + } + .col-md-push-0 { + left: auto; + } + .col-md-offset-12 { + margin-left: 100%; + } + .col-md-offset-11 { + margin-left: 91.66666667%; + } + .col-md-offset-10 { + margin-left: 83.33333333%; + } + .col-md-offset-9 { + margin-left: 75%; + } + .col-md-offset-8 { + margin-left: 66.66666667%; + } + .col-md-offset-7 { + margin-left: 58.33333333%; + } + .col-md-offset-6 { + margin-left: 50%; + } + .col-md-offset-5 { + margin-left: 41.66666667%; + } + .col-md-offset-4 { + margin-left: 33.33333333%; + } + .col-md-offset-3 { + margin-left: 25%; + } + .col-md-offset-2 { + margin-left: 16.66666667%; + } + .col-md-offset-1 { + margin-left: 8.33333333%; + } + .col-md-offset-0 { + margin-left: 0%; + } +} +@media (min-width: 1200px) { + .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { + float: left; + } + .col-lg-12 { + width: 100%; + } + .col-lg-11 { + width: 91.66666667%; + } + .col-lg-10 { + width: 83.33333333%; + } + .col-lg-9 { + width: 75%; + } + .col-lg-8 { + width: 66.66666667%; + } + .col-lg-7 { + width: 58.33333333%; + } + .col-lg-6 { + width: 50%; + } + .col-lg-5 { + width: 41.66666667%; + } + .col-lg-4 { + width: 33.33333333%; + } + .col-lg-3 { + width: 25%; + } + .col-lg-2 { + width: 16.66666667%; + } + .col-lg-1 { + width: 8.33333333%; + } + .col-lg-pull-12 { + right: 100%; + } + .col-lg-pull-11 { + right: 91.66666667%; + } + .col-lg-pull-10 { + right: 83.33333333%; + } + .col-lg-pull-9 { + right: 75%; + } + .col-lg-pull-8 { + right: 66.66666667%; + } + .col-lg-pull-7 { + right: 58.33333333%; + } + .col-lg-pull-6 { + right: 50%; + } + .col-lg-pull-5 { + right: 41.66666667%; + } + .col-lg-pull-4 { + right: 33.33333333%; + } + .col-lg-pull-3 { + right: 25%; + } + .col-lg-pull-2 { + right: 16.66666667%; + } + .col-lg-pull-1 { + right: 8.33333333%; + } + .col-lg-pull-0 { + right: auto; + } + .col-lg-push-12 { + left: 100%; + } + .col-lg-push-11 { + left: 91.66666667%; + } + .col-lg-push-10 { + left: 83.33333333%; + } + .col-lg-push-9 { + left: 75%; + } + .col-lg-push-8 { + left: 66.66666667%; + } + .col-lg-push-7 { + left: 58.33333333%; + } + .col-lg-push-6 { + left: 50%; + } + .col-lg-push-5 { + left: 41.66666667%; + } + .col-lg-push-4 { + left: 33.33333333%; + } + .col-lg-push-3 { + left: 25%; + } + .col-lg-push-2 { + left: 16.66666667%; + } + .col-lg-push-1 { + left: 8.33333333%; + } + .col-lg-push-0 { + left: auto; + } + .col-lg-offset-12 { + margin-left: 100%; + } + .col-lg-offset-11 { + margin-left: 91.66666667%; + } + .col-lg-offset-10 { + margin-left: 83.33333333%; + } + .col-lg-offset-9 { + margin-left: 75%; + } + .col-lg-offset-8 { + margin-left: 66.66666667%; + } + .col-lg-offset-7 { + margin-left: 58.33333333%; + } + .col-lg-offset-6 { + margin-left: 50%; + } + .col-lg-offset-5 { + margin-left: 41.66666667%; + } + .col-lg-offset-4 { + margin-left: 33.33333333%; + } + .col-lg-offset-3 { + margin-left: 25%; + } + .col-lg-offset-2 { + margin-left: 16.66666667%; + } + .col-lg-offset-1 { + margin-left: 8.33333333%; + } + .col-lg-offset-0 { + margin-left: 0%; + } +} +table { + background-color: transparent; +} +caption { + padding-top: 8px; + padding-bottom: 8px; + color: #98978b; + text-align: left; +} +th { + text-align: left; +} +.table { + width: 100%; + max-width: 100%; + margin-bottom: 20px; +} +.table > thead > tr > th, +.table > tbody > tr > th, +.table > tfoot > tr > th, +.table > thead > tr > td, +.table > tbody > tr > td, +.table > tfoot > tr > td { + padding: 8px; + line-height: 1.42857143; + vertical-align: top; + border-top: 1px solid #dfd7ca; +} +.table > thead > tr > th { + vertical-align: bottom; + border-bottom: 2px solid #dfd7ca; +} +.table > caption + thead > tr:first-child > th, +.table > colgroup + thead > tr:first-child > th, +.table > thead:first-child > tr:first-child > th, +.table > caption + thead > tr:first-child > td, +.table > colgroup + thead > tr:first-child > td, +.table > thead:first-child > tr:first-child > td { + border-top: 0; +} +.table > tbody + tbody { + border-top: 2px solid #dfd7ca; +} +.table .table { + background-color: #ffffff; +} +.table-condensed > thead > tr > th, +.table-condensed > tbody > tr > th, +.table-condensed > tfoot > tr > th, +.table-condensed > thead > tr > td, +.table-condensed > tbody > tr > td, +.table-condensed > tfoot > tr > td { + padding: 5px; +} +.table-bordered { + border: 1px solid #dfd7ca; +} +.table-bordered > thead > tr > th, +.table-bordered > tbody > tr > th, +.table-bordered > tfoot > tr > th, +.table-bordered > thead > tr > td, +.table-bordered > tbody > tr > td, +.table-bordered > tfoot > tr > td { + border: 1px solid #dfd7ca; +} +.table-bordered > thead > tr > th, +.table-bordered > thead > tr > td { + border-bottom-width: 2px; +} +.table-striped > tbody > tr:nth-of-type(odd) { + background-color: #f8f5f0; +} +.table-hover > tbody > tr:hover { + background-color: #f8f5f0; +} +table col[class*="col-"] { + position: static; + float: none; + display: table-column; +} +table td[class*="col-"], +table th[class*="col-"] { + position: static; + float: none; + display: table-cell; +} +.table > thead > tr > td.active, +.table > tbody > tr > td.active, +.table > tfoot > tr > td.active, +.table > thead > tr > th.active, +.table > tbody > tr > th.active, +.table > tfoot > tr > th.active, +.table > thead > tr.active > td, +.table > tbody > tr.active > td, +.table > tfoot > tr.active > td, +.table > thead > tr.active > th, +.table > tbody > tr.active > th, +.table > tfoot > tr.active > th { + background-color: #f8f5f0; +} +.table-hover > tbody > tr > td.active:hover, +.table-hover > tbody > tr > th.active:hover, +.table-hover > tbody > tr.active:hover > td, +.table-hover > tbody > tr:hover > .active, +.table-hover > tbody > tr.active:hover > th { + background-color: #f0e9df; +} +.table > thead > tr > td.success, +.table > tbody > tr > td.success, +.table > tfoot > tr > td.success, +.table > thead > tr > th.success, +.table > tbody > tr > th.success, +.table > tfoot > tr > th.success, +.table > thead > tr.success > td, +.table > tbody > tr.success > td, +.table > tfoot > tr.success > td, +.table > thead > tr.success > th, +.table > tbody > tr.success > th, +.table > tfoot > tr.success > th { + background-color: #dff0d8; +} +.table-hover > tbody > tr > td.success:hover, +.table-hover > tbody > tr > th.success:hover, +.table-hover > tbody > tr.success:hover > td, +.table-hover > tbody > tr:hover > .success, +.table-hover > tbody > tr.success:hover > th { + background-color: #d0e9c6; +} +.table > thead > tr > td.info, +.table > tbody > tr > td.info, +.table > tfoot > tr > td.info, +.table > thead > tr > th.info, +.table > tbody > tr > th.info, +.table > tfoot > tr > th.info, +.table > thead > tr.info > td, +.table > tbody > tr.info > td, +.table > tfoot > tr.info > td, +.table > thead > tr.info > th, +.table > tbody > tr.info > th, +.table > tfoot > tr.info > th { + background-color: #d9edf7; +} +.table-hover > tbody > tr > td.info:hover, +.table-hover > tbody > tr > th.info:hover, +.table-hover > tbody > tr.info:hover > td, +.table-hover > tbody > tr:hover > .info, +.table-hover > tbody > tr.info:hover > th { + background-color: #c4e3f3; +} +.table > thead > tr > td.warning, +.table > tbody > tr > td.warning, +.table > tfoot > tr > td.warning, +.table > thead > tr > th.warning, +.table > tbody > tr > th.warning, +.table > tfoot > tr > th.warning, +.table > thead > tr.warning > td, +.table > tbody > tr.warning > td, +.table > tfoot > tr.warning > td, +.table > thead > tr.warning > th, +.table > tbody > tr.warning > th, +.table > tfoot > tr.warning > th { + background-color: #fcf8e3; +} +.table-hover > tbody > tr > td.warning:hover, +.table-hover > tbody > tr > th.warning:hover, +.table-hover > tbody > tr.warning:hover > td, +.table-hover > tbody > tr:hover > .warning, +.table-hover > tbody > tr.warning:hover > th { + background-color: #faf2cc; +} +.table > thead > tr > td.danger, +.table > tbody > tr > td.danger, +.table > tfoot > tr > td.danger, +.table > thead > tr > th.danger, +.table > tbody > tr > th.danger, +.table > tfoot > tr > th.danger, +.table > thead > tr.danger > td, +.table > tbody > tr.danger > td, +.table > tfoot > tr.danger > td, +.table > thead > tr.danger > th, +.table > tbody > tr.danger > th, +.table > tfoot > tr.danger > th { + background-color: #f2dede; +} +.table-hover > tbody > tr > td.danger:hover, +.table-hover > tbody > tr > th.danger:hover, +.table-hover > tbody > tr.danger:hover > td, +.table-hover > tbody > tr:hover > .danger, +.table-hover > tbody > tr.danger:hover > th { + background-color: #ebcccc; +} +.table-responsive { + overflow-x: auto; + min-height: 0.01%; +} +@media screen and (max-width: 767px) { + .table-responsive { + width: 100%; + margin-bottom: 15px; + overflow-y: hidden; + -ms-overflow-style: -ms-autohiding-scrollbar; + border: 1px solid #dfd7ca; + } + .table-responsive > .table { + margin-bottom: 0; + } + .table-responsive > .table > thead > tr > th, + .table-responsive > .table > tbody > tr > th, + .table-responsive > .table > tfoot > tr > th, + .table-responsive > .table > thead > tr > td, + .table-responsive > .table > tbody > tr > td, + .table-responsive > .table > tfoot > tr > td { + white-space: nowrap; + } + .table-responsive > .table-bordered { + border: 0; + } + .table-responsive > .table-bordered > thead > tr > th:first-child, + .table-responsive > .table-bordered > tbody > tr > th:first-child, + .table-responsive > .table-bordered > tfoot > tr > th:first-child, + .table-responsive > .table-bordered > thead > tr > td:first-child, + .table-responsive > .table-bordered > tbody > tr > td:first-child, + .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; + } + .table-responsive > .table-bordered > thead > tr > th:last-child, + .table-responsive > .table-bordered > tbody > tr > th:last-child, + .table-responsive > .table-bordered > tfoot > tr > th:last-child, + .table-responsive > .table-bordered > thead > tr > td:last-child, + .table-responsive > .table-bordered > tbody > tr > td:last-child, + .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; + } + .table-responsive > .table-bordered > tbody > tr:last-child > th, + .table-responsive > .table-bordered > tfoot > tr:last-child > th, + .table-responsive > .table-bordered > tbody > tr:last-child > td, + .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0; + } +} +fieldset { + padding: 0; + margin: 0; + border: 0; + min-width: 0; +} +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: inherit; + border: 0; + border-bottom: 1px solid transparent; +} +label { + display: inline-block; + max-width: 100%; + margin-bottom: 5px; + font-weight: bold; +} +input[type="search"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +input[type="radio"], +input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; + line-height: normal; +} +input[type="file"] { + display: block; +} +input[type="range"] { + display: block; + width: 100%; +} +select[multiple], +select[size] { + height: auto; +} +input[type="file"]:focus, +input[type="radio"]:focus, +input[type="checkbox"]:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +output { + display: block; + padding-top: 13px; + font-size: 14px; + line-height: 1.42857143; + color: #3e3f3a; +} +.form-control { + display: block; + width: 100%; + height: 46px; + padding: 12px 16px; + font-size: 14px; + line-height: 1.42857143; + color: #3e3f3a; + background-color: #ffffff; + background-image: none; + border: 1px solid #dfd7ca; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; + -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; +} +/* .form-control:focus { + border-color: transparent; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(0, 0, 0, 0.6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(0, 0, 0, 0.6); +} */ +.form-control::-moz-placeholder { + color: #dfd7ca; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #dfd7ca; +} +.form-control::-webkit-input-placeholder { + color: #dfd7ca; +} +.form-control::-ms-expand { + border: 0; + background-color: transparent; +} +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + background-color: #f8f5f0; + opacity: 1; +} +.form-control[disabled], +fieldset[disabled] .form-control { + cursor: not-allowed; +} +textarea.form-control { + height: auto; +} +input[type="search"] { + -webkit-appearance: none; +} +@media screen and (-webkit-min-device-pixel-ratio: 0) { + input[type="date"].form-control, + input[type="time"].form-control, + input[type="datetime-local"].form-control, + input[type="month"].form-control { + line-height: 46px; + } + input[type="date"].input-sm, + input[type="time"].input-sm, + input[type="datetime-local"].input-sm, + input[type="month"].input-sm, + .input-group-sm input[type="date"], + .input-group-sm input[type="time"], + .input-group-sm input[type="datetime-local"], + .input-group-sm input[type="month"] { + line-height: 30px; + } + input[type="date"].input-lg, + input[type="time"].input-lg, + input[type="datetime-local"].input-lg, + input[type="month"].input-lg, + .input-group-lg input[type="date"], + .input-group-lg input[type="time"], + .input-group-lg input[type="datetime-local"], + .input-group-lg input[type="month"] { + line-height: 66px; + } +} +.form-group { + margin-bottom: 15px; +} +.radio, +.checkbox { + position: relative; + display: block; + margin-top: 10px; + margin-bottom: 10px; +} +.radio label, +.checkbox label { + min-height: 20px; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + cursor: pointer; +} +.radio input[type="radio"], +.radio-inline input[type="radio"], +.checkbox input[type="checkbox"], +.checkbox-inline input[type="checkbox"] { + position: absolute; + margin-left: -20px; + margin-top: 4px \9; +} +.radio + .radio, +.checkbox + .checkbox { + margin-top: -5px; +} +.radio-inline, +.checkbox-inline { + position: relative; + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + vertical-align: middle; + font-weight: normal; + cursor: pointer; +} +.radio-inline + .radio-inline, +.checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px; +} +input[type="radio"][disabled], +input[type="checkbox"][disabled], +input[type="radio"].disabled, +input[type="checkbox"].disabled, +fieldset[disabled] input[type="radio"], +fieldset[disabled] input[type="checkbox"] { + cursor: not-allowed; +} +.radio-inline.disabled, +.checkbox-inline.disabled, +fieldset[disabled] .radio-inline, +fieldset[disabled] .checkbox-inline { + cursor: not-allowed; +} +.radio.disabled label, +.checkbox.disabled label, +fieldset[disabled] .radio label, +fieldset[disabled] .checkbox label { + cursor: not-allowed; +} +.form-control-static { + padding-top: 13px; + padding-bottom: 13px; + margin-bottom: 0; + min-height: 34px; +} +.form-control-static.input-lg, +.form-control-static.input-sm { + padding-left: 0; + padding-right: 0; +} +.input-sm { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-sm { + height: 30px; + line-height: 30px; +} +textarea.input-sm, +select[multiple].input-sm { + height: auto; +} +.form-group-sm .form-control { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.form-group-sm select.form-control { + height: 30px; + line-height: 30px; +} +.form-group-sm textarea.form-control, +.form-group-sm select[multiple].form-control { + height: auto; +} +.form-group-sm .form-control-static { + height: 30px; + min-height: 32px; + padding: 6px 10px; + font-size: 12px; + line-height: 1.5; +} +.input-lg { + height: 66px; + padding: 20px 30px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-lg { + height: 66px; + line-height: 66px; +} +textarea.input-lg, +select[multiple].input-lg { + height: auto; +} +.form-group-lg .form-control { + height: 66px; + padding: 20px 30px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.form-group-lg select.form-control { + height: 66px; + line-height: 66px; +} +.form-group-lg textarea.form-control, +.form-group-lg select[multiple].form-control { + height: auto; +} +.form-group-lg .form-control-static { + height: 66px; + min-height: 38px; + padding: 21px 30px; + font-size: 18px; + line-height: 1.3333333; +} +.has-feedback { + position: relative; +} +.has-feedback .form-control { + padding-right: 57.5px; +} +.form-control-feedback { + position: absolute; + top: 0; + right: 0; + z-index: 2; + display: block; + width: 46px; + height: 46px; + line-height: 46px; + text-align: center; + pointer-events: none; +} +.input-lg + .form-control-feedback, +.input-group-lg + .form-control-feedback, +.form-group-lg .form-control + .form-control-feedback { + width: 66px; + height: 66px; + line-height: 66px; +} +.input-sm + .form-control-feedback, +.input-group-sm + .form-control-feedback, +.form-group-sm .form-control + .form-control-feedback { + width: 30px; + height: 30px; + line-height: 30px; +} +.has-success .help-block, +.has-success .control-label, +.has-success .radio, +.has-success .checkbox, +.has-success .radio-inline, +.has-success .checkbox-inline, +.has-success.radio label, +.has-success.checkbox label, +.has-success.radio-inline label, +.has-success.checkbox-inline label { + color: #93c54b; +} +.has-success .form-control { + border-color: #93c54b; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.has-success .form-control:focus { + border-color: #79a736; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c1de98; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c1de98; +} +.has-success .input-group-addon { + color: #93c54b; + border-color: #93c54b; + background-color: #dff0d8; +} +.has-success .form-control-feedback { + color: #93c54b; +} +.has-warning .help-block, +.has-warning .control-label, +.has-warning .radio, +.has-warning .checkbox, +.has-warning .radio-inline, +.has-warning .checkbox-inline, +.has-warning.radio label, +.has-warning.checkbox label, +.has-warning.radio-inline label, +.has-warning.checkbox-inline label { + color: #f47c3c; +} +.has-warning .form-control { + border-color: #f47c3c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.has-warning .form-control:focus { + border-color: #ef5c0e; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #f9bd9d; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #f9bd9d; +} +.has-warning .input-group-addon { + color: #f47c3c; + border-color: #f47c3c; + background-color: #fcf8e3; +} +.has-warning .form-control-feedback { + color: #f47c3c; +} +.has-error .help-block, +.has-error .control-label, +.has-error .radio, +.has-error .checkbox, +.has-error .radio-inline, +.has-error .checkbox-inline, +.has-error.radio label, +.has-error.checkbox label, +.has-error.radio-inline label, +.has-error.checkbox-inline label { + color: #d9534f; +} +.has-error .form-control { + border-color: #d9534f; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.has-error .form-control:focus { + border-color: #c9302c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #eba5a3; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #eba5a3; +} +.has-error .input-group-addon { + color: #d9534f; + border-color: #d9534f; + background-color: #f2dede; +} +.has-error .form-control-feedback { + color: #d9534f; +} +.has-feedback label ~ .form-control-feedback { + top: 25px; +} +.has-feedback label.sr-only ~ .form-control-feedback { + top: 0; +} +.help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #7f8177; +} +@media (min-width: 768px) { + .form-inline .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .form-inline .form-control-static { + display: inline-block; + } + .form-inline .input-group { + display: inline-table; + vertical-align: middle; + } + .form-inline .input-group .input-group-addon, + .form-inline .input-group .input-group-btn, + .form-inline .input-group .form-control { + width: auto; + } + .form-inline .input-group > .form-control { + width: 100%; + } + .form-inline .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio, + .form-inline .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio label, + .form-inline .checkbox label { + padding-left: 0; + } + .form-inline .radio input[type="radio"], + .form-inline .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .form-inline .has-feedback .form-control-feedback { + top: 0; + } +} +.form-horizontal .radio, +.form-horizontal .checkbox, +.form-horizontal .radio-inline, +.form-horizontal .checkbox-inline { + margin-top: 0; + margin-bottom: 0; + padding-top: 13px; +} +.form-horizontal .radio, +.form-horizontal .checkbox { + min-height: 33px; +} +.form-horizontal .form-group { + margin-left: -15px; + margin-right: -15px; +} +@media (min-width: 768px) { + .form-horizontal .control-label { + text-align: right; + margin-bottom: 0; + padding-top: 13px; + } +} +.form-horizontal .has-feedback .form-control-feedback { + right: 15px; +} +@media (min-width: 768px) { + .form-horizontal .form-group-lg .control-label { + padding-top: 21px; + font-size: 18px; + } +} +@media (min-width: 768px) { + .form-horizontal .form-group-sm .control-label { + padding-top: 6px; + font-size: 12px; + } +} +.btn { + display: inline-block; + margin-bottom: 0; + font-weight: normal; + text-align: center; + vertical-align: middle; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + background-image: none; + border: 1px solid transparent; + white-space: nowrap; + padding: 12px 16px; + font-size: 14px; + line-height: 1.42857143; + border-radius: 4px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.btn:focus, +.btn:active:focus, +.btn.active:focus, +.btn.focus, +.btn:active.focus, +.btn.active.focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.btn:hover, +.btn:focus, +.btn.focus { + color: #ffffff; + text-decoration: none; +} +.btn:active, +.btn.active { + outline: 0; + background-image: none; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.btn.disabled, +.btn[disabled], +fieldset[disabled] .btn { + cursor: not-allowed; + opacity: 0.65; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; +} +a.btn.disabled, +fieldset[disabled] a.btn { + pointer-events: none; +} +.btn-default { + color: #ffffff; + background-color: #3e3f3a; + border-color: transparent; +} +.btn-default:focus, +.btn-default.focus { + color: #ffffff; + background-color: #242422; + border-color: rgba(0, 0, 0, 0); +} +.btn-default:hover { + color: #ffffff; + background-color: #242422; + border-color: rgba(0, 0, 0, 0); +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + color: #ffffff; + background-color: #242422; + border-color: rgba(0, 0, 0, 0); +} +.btn-default:active:hover, +.btn-default.active:hover, +.open > .dropdown-toggle.btn-default:hover, +.btn-default:active:focus, +.btn-default.active:focus, +.open > .dropdown-toggle.btn-default:focus, +.btn-default:active.focus, +.btn-default.active.focus, +.open > .dropdown-toggle.btn-default.focus { + color: #ffffff; + background-color: #121210; + border-color: rgba(0, 0, 0, 0); +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + background-image: none; +} +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled.focus, +.btn-default[disabled].focus, +fieldset[disabled] .btn-default.focus { + background-color: #3e3f3a; + border-color: transparent; +} +.btn-default .badge { + color: #3e3f3a; + background-color: #ffffff; +} +.btn-primary { + color: #ffffff; + background-color: #325d88; + border-color: transparent; +} +.btn-primary:focus, +.btn-primary.focus { + color: #ffffff; + background-color: #244363; + border-color: rgba(0, 0, 0, 0); +} +.btn-primary:hover { + color: #ffffff; + background-color: #244363; + border-color: rgba(0, 0, 0, 0); +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + color: #ffffff; + background-color: #244363; + border-color: rgba(0, 0, 0, 0); +} +.btn-primary:active:hover, +.btn-primary.active:hover, +.open > .dropdown-toggle.btn-primary:hover, +.btn-primary:active:focus, +.btn-primary.active:focus, +.open > .dropdown-toggle.btn-primary:focus, +.btn-primary:active.focus, +.btn-primary.active.focus, +.open > .dropdown-toggle.btn-primary.focus { + color: #ffffff; + background-color: #1b3249; + border-color: rgba(0, 0, 0, 0); +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + background-image: none; +} +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled.focus, +.btn-primary[disabled].focus, +fieldset[disabled] .btn-primary.focus { + background-color: #325d88; + border-color: transparent; +} +.btn-primary .badge { + color: #325d88; + background-color: #ffffff; +} +.btn-success { + color: #ffffff; + background-color: #93c54b; + border-color: transparent; +} +.btn-success:focus, +.btn-success.focus { + color: #ffffff; + background-color: #79a736; + border-color: rgba(0, 0, 0, 0); +} +.btn-success:hover { + color: #ffffff; + background-color: #79a736; + border-color: rgba(0, 0, 0, 0); +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + color: #ffffff; + background-color: #79a736; + border-color: rgba(0, 0, 0, 0); +} +.btn-success:active:hover, +.btn-success.active:hover, +.open > .dropdown-toggle.btn-success:hover, +.btn-success:active:focus, +.btn-success.active:focus, +.open > .dropdown-toggle.btn-success:focus, +.btn-success:active.focus, +.btn-success.active.focus, +.open > .dropdown-toggle.btn-success.focus { + color: #ffffff; + background-color: #658c2d; + border-color: rgba(0, 0, 0, 0); +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + background-image: none; +} +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled.focus, +.btn-success[disabled].focus, +fieldset[disabled] .btn-success.focus { + background-color: #93c54b; + border-color: transparent; +} +.btn-success .badge { + color: #93c54b; + background-color: #ffffff; +} +.btn-info { + color: #ffffff; + background-color: #29abe0; + border-color: transparent; +} +.btn-info:focus, +.btn-info.focus { + color: #ffffff; + background-color: #1b8dbb; + border-color: rgba(0, 0, 0, 0); +} +.btn-info:hover { + color: #ffffff; + background-color: #1b8dbb; + border-color: rgba(0, 0, 0, 0); +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + color: #ffffff; + background-color: #1b8dbb; + border-color: rgba(0, 0, 0, 0); +} +.btn-info:active:hover, +.btn-info.active:hover, +.open > .dropdown-toggle.btn-info:hover, +.btn-info:active:focus, +.btn-info.active:focus, +.open > .dropdown-toggle.btn-info:focus, +.btn-info:active.focus, +.btn-info.active.focus, +.open > .dropdown-toggle.btn-info.focus { + color: #ffffff; + background-color: #17759c; + border-color: rgba(0, 0, 0, 0); +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + background-image: none; +} +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled.focus, +.btn-info[disabled].focus, +fieldset[disabled] .btn-info.focus { + background-color: #29abe0; + border-color: transparent; +} +.btn-info .badge { + color: #29abe0; + background-color: #ffffff; +} +.btn-warning { + color: #ffffff; + background-color: #f47c3c; + border-color: transparent; +} +.btn-warning:focus, +.btn-warning.focus { + color: #ffffff; + background-color: #ef5c0e; + border-color: rgba(0, 0, 0, 0); +} +.btn-warning:hover { + color: #ffffff; + background-color: #ef5c0e; + border-color: rgba(0, 0, 0, 0); +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + color: #ffffff; + background-color: #ef5c0e; + border-color: rgba(0, 0, 0, 0); +} +.btn-warning:active:hover, +.btn-warning.active:hover, +.open > .dropdown-toggle.btn-warning:hover, +.btn-warning:active:focus, +.btn-warning.active:focus, +.open > .dropdown-toggle.btn-warning:focus, +.btn-warning:active.focus, +.btn-warning.active.focus, +.open > .dropdown-toggle.btn-warning.focus { + color: #ffffff; + background-color: #ce4f0c; + border-color: rgba(0, 0, 0, 0); +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + background-image: none; +} +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled.focus, +.btn-warning[disabled].focus, +fieldset[disabled] .btn-warning.focus { + background-color: #f47c3c; + border-color: transparent; +} +.btn-warning .badge { + color: #f47c3c; + background-color: #ffffff; +} +.btn-danger { + color: #ffffff; + background-color: #d9534f; + border-color: transparent; +} +.btn-danger:focus, +.btn-danger.focus { + color: #ffffff; + background-color: #c9302c; + border-color: rgba(0, 0, 0, 0); +} +.btn-danger:hover { + color: #ffffff; + background-color: #c9302c; + border-color: rgba(0, 0, 0, 0); +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + color: #ffffff; + background-color: #c9302c; + border-color: rgba(0, 0, 0, 0); +} +.btn-danger:active:hover, +.btn-danger.active:hover, +.open > .dropdown-toggle.btn-danger:hover, +.btn-danger:active:focus, +.btn-danger.active:focus, +.open > .dropdown-toggle.btn-danger:focus, +.btn-danger:active.focus, +.btn-danger.active.focus, +.open > .dropdown-toggle.btn-danger.focus { + color: #ffffff; + background-color: #ac2925; + border-color: rgba(0, 0, 0, 0); +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + background-image: none; +} +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled.focus, +.btn-danger[disabled].focus, +fieldset[disabled] .btn-danger.focus { + background-color: #d9534f; + border-color: transparent; +} +.btn-danger .badge { + color: #d9534f; + background-color: #ffffff; +} +.btn-link { + color: #93c54b; + font-weight: normal; + border-radius: 0; +} +.btn-link, +.btn-link:active, +.btn-link.active, +.btn-link[disabled], +fieldset[disabled] .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-link, +.btn-link:hover, +.btn-link:focus, +.btn-link:active { + border-color: transparent; +} +.btn-link:hover, +.btn-link:focus { + color: #79a736; + text-decoration: underline; + background-color: transparent; +} +.btn-link[disabled]:hover, +fieldset[disabled] .btn-link:hover, +.btn-link[disabled]:focus, +fieldset[disabled] .btn-link:focus { + color: #dfd7ca; + text-decoration: none; +} +.btn-lg, +.btn-group-lg > .btn { + padding: 20px 30px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.btn-sm, +.btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-xs, +.btn-group-xs > .btn { + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-block { + display: block; + width: 100%; +} +.btn-block + .btn-block { + margin-top: 5px; +} +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} +.fade { + opacity: 0; + -webkit-transition: opacity 0.15s linear; + -o-transition: opacity 0.15s linear; + transition: opacity 0.15s linear; +} +.fade.in { + opacity: 1; +} +.collapse { + display: none; +} +.collapse.in { + display: block; +} +tr.collapse.in { + display: table-row; +} +tbody.collapse.in { + display: table-row-group; +} +.collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition-property: height, visibility; + -o-transition-property: height, visibility; + transition-property: height, visibility; + -webkit-transition-duration: 0.35s; + -o-transition-duration: 0.35s; + transition-duration: 0.35s; + -webkit-transition-timing-function: ease; + -o-transition-timing-function: ease; + transition-timing-function: ease; +} +.caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: 4px dashed; + border-top: 4px solid \9; + border-right: 4px solid transparent; + border-left: 4px solid transparent; +} +.dropup, +.dropdown { + position: relative; +} +.dropdown-toggle:focus { + outline: 0; +} +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + list-style: none; + font-size: 14px; + text-align: left; + background-color: #ffffff; + border: 1px solid #dfd7ca; + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + -webkit-background-clip: padding-box; + background-clip: padding-box; +} +.dropdown-menu.pull-right { + right: 0; + left: auto; +} +.dropdown-menu .divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #f8f5f0; +} +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.42857143; + color: #98978b; + white-space: nowrap; +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + text-decoration: none; + color: #98978b; + background-color: #f8f5f0; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #98978b; + text-decoration: none; + outline: 0; + background-color: #f8f5f0; +} +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #dfd7ca; +} +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + text-decoration: none; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + cursor: not-allowed; +} +.open > .dropdown-menu { + display: block; +} +.open > a { + outline: 0; +} +.dropdown-menu-right { + left: auto; + right: 0; +} +.dropdown-menu-left { + left: 0; + right: auto; +} +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.42857143; + color: #dfd7ca; + white-space: nowrap; +} +.dropdown-backdrop { + position: fixed; + left: 0; + right: 0; + bottom: 0; + top: 0; + z-index: 990; +} +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} +.dropup .caret, +.navbar-fixed-bottom .dropdown .caret { + border-top: 0; + border-bottom: 4px dashed; + border-bottom: 4px solid \9; + content: ""; +} +.dropup .dropdown-menu, +.navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 2px; +} +@media (min-width: 768px) { + .navbar-right .dropdown-menu { + left: auto; + right: 0; + } + .navbar-right .dropdown-menu-left { + left: 0; + right: auto; + } +} +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + float: left; +} +.btn-group > .btn:hover, +.btn-group-vertical > .btn:hover, +.btn-group > .btn:focus, +.btn-group-vertical > .btn:focus, +.btn-group > .btn:active, +.btn-group-vertical > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn.active { + z-index: 2; +} +.btn-group .btn + .btn, +.btn-group .btn + .btn-group, +.btn-group .btn-group + .btn, +.btn-group .btn-group + .btn-group { + margin-left: -1px; +} +.btn-toolbar { + margin-left: -5px; +} +.btn-toolbar .btn, +.btn-toolbar .btn-group, +.btn-toolbar .input-group { + float: left; +} +.btn-toolbar > .btn, +.btn-toolbar > .btn-group, +.btn-toolbar > .input-group { + margin-left: 5px; +} +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0; +} +.btn-group > .btn:first-child { + margin-left: 0; +} +.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { + border-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.btn-group > .btn-group { + float: left; +} +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} +.btn-group > .btn + .dropdown-toggle { + padding-left: 8px; + padding-right: 8px; +} +.btn-group > .btn-lg + .dropdown-toggle { + padding-left: 12px; + padding-right: 12px; +} +.btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.btn-group.open .dropdown-toggle.btn-link { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn .caret { + margin-left: 0; +} +.btn-lg .caret { + border-width: 5px 5px 0; + border-bottom-width: 0; +} +.dropup .btn-lg .caret { + border-width: 0 5px 5px; +} +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group, +.btn-group-vertical > .btn-group > .btn { + display: block; + float: none; + width: 100%; + max-width: 100%; +} +.btn-group-vertical > .btn-group > .btn { + float: none; +} +.btn-group-vertical > .btn + .btn, +.btn-group-vertical > .btn + .btn-group, +.btn-group-vertical > .btn-group + .btn, +.btn-group-vertical > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0; +} +.btn-group-vertical > .btn:not(:first-child):not(:last-child) { + border-radius: 0; +} +.btn-group-vertical > .btn:first-child:not(:last-child) { + border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn:last-child:not(:first-child) { + border-top-right-radius: 0; + border-top-left-radius: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate; +} +.btn-group-justified > .btn, +.btn-group-justified > .btn-group { + float: none; + display: table-cell; + width: 1%; +} +.btn-group-justified > .btn-group .btn { + width: 100%; +} +.btn-group-justified > .btn-group .dropdown-menu { + left: auto; +} +[data-toggle="buttons"] > .btn input[type="radio"], +[data-toggle="buttons"] > .btn-group > .btn input[type="radio"], +[data-toggle="buttons"] > .btn input[type="checkbox"], +[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} +.input-group { + position: relative; + display: table; + border-collapse: separate; +} +.input-group[class*="col-"] { + float: none; + padding-left: 0; + padding-right: 0; +} +.input-group .form-control { + position: relative; + z-index: 2; + float: left; + width: 100%; + margin-bottom: 0; +} +.input-group .form-control:focus { + z-index: 3; +} +.input-group-lg > .form-control, +.input-group-lg > .input-group-addon, +.input-group-lg > .input-group-btn > .btn { + height: 66px; + padding: 20px 30px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-group-lg > .form-control, +select.input-group-lg > .input-group-addon, +select.input-group-lg > .input-group-btn > .btn { + height: 66px; + line-height: 66px; +} +textarea.input-group-lg > .form-control, +textarea.input-group-lg > .input-group-addon, +textarea.input-group-lg > .input-group-btn > .btn, +select[multiple].input-group-lg > .form-control, +select[multiple].input-group-lg > .input-group-addon, +select[multiple].input-group-lg > .input-group-btn > .btn { + height: auto; +} +.input-group-sm > .form-control, +.input-group-sm > .input-group-addon, +.input-group-sm > .input-group-btn > .btn { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-group-sm > .form-control, +select.input-group-sm > .input-group-addon, +select.input-group-sm > .input-group-btn > .btn { + height: 30px; + line-height: 30px; +} +textarea.input-group-sm > .form-control, +textarea.input-group-sm > .input-group-addon, +textarea.input-group-sm > .input-group-btn > .btn, +select[multiple].input-group-sm > .form-control, +select[multiple].input-group-sm > .input-group-addon, +select[multiple].input-group-sm > .input-group-btn > .btn { + height: auto; +} +.input-group-addon, +.input-group-btn, +.input-group .form-control { + display: table-cell; +} +.input-group-addon:not(:first-child):not(:last-child), +.input-group-btn:not(:first-child):not(:last-child), +.input-group .form-control:not(:first-child):not(:last-child) { + border-radius: 0; +} +.input-group-addon, +.input-group-btn { + width: 1%; + white-space: nowrap; + vertical-align: middle; +} +.input-group-addon { + padding: 12px 16px; + font-size: 14px; + font-weight: normal; + line-height: 1; + color: #3e3f3a; + text-align: center; + background-color: #f8f5f0; + border: 1px solid #dfd7ca; + border-radius: 4px; +} +.input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 3px; +} +.input-group-addon.input-lg { + padding: 20px 30px; + font-size: 18px; + border-radius: 6px; +} +.input-group-addon input[type="radio"], +.input-group-addon input[type="checkbox"] { + margin-top: 0; +} +.input-group .form-control:first-child, +.input-group-addon:first-child, +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group > .btn, +.input-group-btn:first-child > .dropdown-toggle, +.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), +.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { + border-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.input-group-addon:first-child { + border-right: 0; +} +.input-group .form-control:last-child, +.input-group-addon:last-child, +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group > .btn, +.input-group-btn:last-child > .dropdown-toggle, +.input-group-btn:first-child > .btn:not(:first-child), +.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.input-group-addon:last-child { + border-left: 0; +} +.input-group-btn { + position: relative; + font-size: 0; + white-space: nowrap; +} +.input-group-btn > .btn { + position: relative; +} +.input-group-btn > .btn + .btn { + margin-left: -1px; +} +.input-group-btn > .btn:hover, +.input-group-btn > .btn:focus, +.input-group-btn > .btn:active { + z-index: 2; +} +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group { + margin-right: -1px; +} +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group { + z-index: 2; + margin-left: -1px; +} +.nav { + margin-bottom: 0; + padding-left: 0; + list-style: none; +} +.nav > li { + position: relative; + display: block; +} +.nav > li > a { + position: relative; + display: block; + padding: 10px 15px; +} +.nav > li > a:hover, +.nav > li > a:focus { + text-decoration: none; + background-color: #f8f5f0; +} +.nav > li.disabled > a { + color: #dfd7ca; +} +.nav > li.disabled > a:hover, +.nav > li.disabled > a:focus { + color: #dfd7ca; + text-decoration: none; + background-color: transparent; + cursor: not-allowed; +} +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + background-color: #f8f5f0; + border-color: #93c54b; +} +.nav .nav-divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.nav > li > a > img { + max-width: none; +} +.nav-tabs { + border-bottom: 1px solid #dfd7ca; +} +.nav-tabs > li { + float: left; + margin-bottom: -1px; +} +.nav-tabs > li > a { + margin-right: 2px; + line-height: 1.42857143; + border: 1px solid transparent; + border-radius: 4px 4px 0 0; +} +.nav-tabs > li > a:hover { + border-color: #dfd7ca #dfd7ca #dfd7ca; +} +.nav-tabs > li.active > a, +.nav-tabs > li.active > a:hover, +.nav-tabs > li.active > a:focus { + color: #98978b; + background-color: #ffffff; + border: 1px solid #dfd7ca; + border-bottom-color: transparent; + cursor: default; +} +.nav-tabs.nav-justified { + width: 100%; + border-bottom: 0; +} +.nav-tabs.nav-justified > li { + float: none; +} +.nav-tabs.nav-justified > li > a { + text-align: center; + margin-bottom: 5px; +} +.nav-tabs.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-tabs.nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs.nav-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs.nav-justified > .active > a, +.nav-tabs.nav-justified > .active > a:hover, +.nav-tabs.nav-justified > .active > a:focus { + border: 1px solid #dfd7ca; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li > a { + border-bottom: 1px solid #dfd7ca; + border-radius: 4px 4px 0 0; + } + .nav-tabs.nav-justified > .active > a, + .nav-tabs.nav-justified > .active > a:hover, + .nav-tabs.nav-justified > .active > a:focus { + border-bottom-color: #ffffff; + } +} +.nav-pills > li { + float: left; +} +.nav-pills > li > a { + border-radius: 4px; +} +.nav-pills > li + li { + margin-left: 2px; +} +.nav-pills > li.active > a, +.nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + color: #98978b; + background-color: #f8f5f0; +} +.nav-stacked > li { + float: none; +} +.nav-stacked > li + li { + margin-top: 2px; + margin-left: 0; +} +.nav-justified { + width: 100%; +} +.nav-justified > li { + float: none; +} +.nav-justified > li > a { + text-align: center; + margin-bottom: 5px; +} +.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs-justified { + border-bottom: 0; +} +.nav-tabs-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs-justified > .active > a, +.nav-tabs-justified > .active > a:hover, +.nav-tabs-justified > .active > a:focus { + border: 1px solid #dfd7ca; +} +@media (min-width: 768px) { + .nav-tabs-justified > li > a { + border-bottom: 1px solid #dfd7ca; + border-radius: 4px 4px 0 0; + } + .nav-tabs-justified > .active > a, + .nav-tabs-justified > .active > a:hover, + .nav-tabs-justified > .active > a:focus { + border-bottom-color: #ffffff; + } +} +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.navbar { + position: relative; + min-height: 60px; + margin-bottom: 20px; + border: 1px solid transparent; +} +@media (min-width: 768px) { + .navbar { + border-radius: 4px; + } +} +@media (min-width: 768px) { + .navbar-header { + float: left; + } +} +.navbar-collapse { + overflow-x: visible; + padding-right: 15px; + padding-left: 15px; + border-top: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); + -webkit-overflow-scrolling: touch; +} +.navbar-collapse.in { + overflow-y: auto; +} +@media (min-width: 768px) { + .navbar-collapse { + width: auto; + border-top: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-collapse.collapse { + display: block !important; + height: auto !important; + padding-bottom: 0; + overflow: visible !important; + } + .navbar-collapse.in { + overflow-y: visible; + } + .navbar-fixed-top .navbar-collapse, + .navbar-static-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + padding-left: 0; + padding-right: 0; + } +} +.navbar-fixed-top .navbar-collapse, +.navbar-fixed-bottom .navbar-collapse { + max-height: 340px; +} +@media (max-device-width: 480px) and (orientation: landscape) { + .navbar-fixed-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + max-height: 200px; + } +} +.container > .navbar-header, +.container-fluid > .navbar-header, +.container > .navbar-collapse, +.container-fluid > .navbar-collapse { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .container > .navbar-header, + .container-fluid > .navbar-header, + .container > .navbar-collapse, + .container-fluid > .navbar-collapse { + margin-right: 0; + margin-left: 0; + } +} +.navbar-static-top { + z-index: 1000; + border-width: 0 0 1px; +} +@media (min-width: 768px) { + .navbar-static-top { + border-radius: 0; + } +} +.navbar-fixed-top, +.navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030; +} +@media (min-width: 768px) { + .navbar-fixed-top, + .navbar-fixed-bottom { + border-radius: 0; + } +} +.navbar-fixed-top { + top: 0; + border-width: 0 0 1px; +} +.navbar-fixed-bottom { + bottom: 0; + margin-bottom: 0; + border-width: 1px 0 0; +} +.navbar-brand { + float: left; + padding: 20px 15px; + font-size: 18px; + line-height: 20px; + height: 60px; +} +.navbar-brand:hover, +.navbar-brand:focus { + text-decoration: none; +} +.navbar-brand > img { + display: block; +} +@media (min-width: 768px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: -15px; + } +} +.navbar-toggle { + position: relative; + float: right; + margin-right: 15px; + padding: 9px 10px; + margin-top: 13px; + margin-bottom: 13px; + background-color: transparent; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.navbar-toggle:focus { + outline: 0; +} +.navbar-toggle .icon-bar { + display: block; + width: 22px; + height: 2px; + border-radius: 1px; +} +.navbar-toggle .icon-bar + .icon-bar { + margin-top: 4px; +} +@media (min-width: 768px) { + .navbar-toggle { + display: none; + } +} +.navbar-nav { + margin: 10px -15px; +} +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 20px; +} +@media (max-width: 767px) { + .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-nav .open .dropdown-menu > li > a, + .navbar-nav .open .dropdown-menu .dropdown-header { + padding: 5px 15px 5px 25px; + } + .navbar-nav .open .dropdown-menu > li > a { + line-height: 20px; + } + .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none; + } +} +@media (min-width: 768px) { + .navbar-nav { + float: left; + margin: 0; + } + .navbar-nav > li { + float: left; + } + .navbar-nav > li > a { + padding-top: 20px; + padding-bottom: 20px; + } +} +.navbar-form { + margin-left: -15px; + margin-right: -15px; + padding: 10px 15px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + margin-top: 7px; + margin-bottom: 7px; +} +@media (min-width: 768px) { + .navbar-form .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .navbar-form .form-control-static { + display: inline-block; + } + .navbar-form .input-group { + display: inline-table; + vertical-align: middle; + } + .navbar-form .input-group .input-group-addon, + .navbar-form .input-group .input-group-btn, + .navbar-form .input-group .form-control { + width: auto; + } + .navbar-form .input-group > .form-control { + width: 100%; + } + .navbar-form .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio, + .navbar-form .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio label, + .navbar-form .checkbox label { + padding-left: 0; + } + .navbar-form .radio input[type="radio"], + .navbar-form .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .navbar-form .has-feedback .form-control-feedback { + top: 0; + } +} +@media (max-width: 767px) { + .navbar-form .form-group { + margin-bottom: 5px; + } + .navbar-form .form-group:last-child { + margin-bottom: 0; + } +} +@media (min-width: 768px) { + .navbar-form { + width: auto; + border: 0; + margin-left: 0; + margin-right: 0; + padding-top: 0; + padding-bottom: 0; + -webkit-box-shadow: none; + box-shadow: none; + } +} +.navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + margin-bottom: 0; + border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.navbar-btn { + margin-top: 7px; + margin-bottom: 7px; +} +.navbar-btn.btn-sm { + margin-top: 15px; + margin-bottom: 15px; +} +.navbar-btn.btn-xs { + margin-top: 19px; + margin-bottom: 19px; +} +.navbar-text { + margin-top: 20px; + margin-bottom: 20px; +} +@media (min-width: 768px) { + .navbar-text { + float: left; + margin-left: 15px; + margin-right: 15px; + } +} +@media (min-width: 768px) { + .navbar-left { + float: left !important; + } + .navbar-right { + float: right !important; + margin-right: -15px; + } + .navbar-right ~ .navbar-right { + margin-right: 0; + } +} +.navbar-default { + background-color: #3e3f3a; + border-color: #3e3f3a; +} +.navbar-default .navbar-brand { + color: #ffffff; +} +.navbar-default .navbar-brand:hover, +.navbar-default .navbar-brand:focus { + color: #ffffff; + background-color: transparent; +} +.navbar-default .navbar-text { + color: #8e8c84; +} +.navbar-default .navbar-nav > li > a { + color: #98978b; +} +.navbar-default .navbar-nav > li > a:hover, +.navbar-default .navbar-nav > li > a:focus { + color: #ffffff; + background-color: transparent; +} +.navbar-default .navbar-nav > .active > a, +.navbar-default .navbar-nav > .active > a:hover, +.navbar-default .navbar-nav > .active > a:focus { + color: #ffffff; + background-color: #393a35; +} +.navbar-default .navbar-nav > .disabled > a, +.navbar-default .navbar-nav > .disabled > a:hover, +.navbar-default .navbar-nav > .disabled > a:focus { + color: #cccccc; + background-color: transparent; +} +.navbar-default .navbar-toggle { + border-color: transparent; +} +.navbar-default .navbar-toggle:hover, +.navbar-default .navbar-toggle:focus { + background-color: #393a35; +} +.navbar-default .navbar-toggle .icon-bar { + background-color: #98978b; +} +.navbar-default .navbar-collapse, +.navbar-default .navbar-form { + border-color: #3e3f3a; +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .open > a:hover, +.navbar-default .navbar-nav > .open > a:focus { + background-color: #393a35; + color: #ffffff; +} +@media (max-width: 767px) { + .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #98978b; + } + .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #ffffff; + background-color: transparent; + } + .navbar-default .navbar-nav .open .dropdown-menu > .active > a, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #ffffff; + background-color: #393a35; + } + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #cccccc; + background-color: transparent; + } +} +.navbar-default .navbar-link { + color: #98978b; +} +.navbar-default .navbar-link:hover { + color: #ffffff; +} +.navbar-default .btn-link { + color: #98978b; +} +.navbar-default .btn-link:hover, +.navbar-default .btn-link:focus { + color: #ffffff; +} +.navbar-default .btn-link[disabled]:hover, +fieldset[disabled] .navbar-default .btn-link:hover, +.navbar-default .btn-link[disabled]:focus, +fieldset[disabled] .navbar-default .btn-link:focus { + color: #cccccc; +} +.navbar-inverse { + background-color: #93c54b; + border-color: #93c54b; +} +.navbar-inverse .navbar-brand { + color: #ffffff; +} +.navbar-inverse .navbar-brand:hover, +.navbar-inverse .navbar-brand:focus { + color: #ffffff; + background-color: transparent; +} +.navbar-inverse .navbar-text { + color: #dfd7ca; +} +.navbar-inverse .navbar-nav > li > a { + color: #6b9430; +} +.navbar-inverse .navbar-nav > li > a:hover, +.navbar-inverse .navbar-nav > li > a:focus { + color: #ffffff; + background-color: transparent; +} +.navbar-inverse .navbar-nav > .active > a, +.navbar-inverse .navbar-nav > .active > a:hover, +.navbar-inverse .navbar-nav > .active > a:focus { + color: #ffffff; + background-color: #89be3d; +} +.navbar-inverse .navbar-nav > .disabled > a, +.navbar-inverse .navbar-nav > .disabled > a:hover, +.navbar-inverse .navbar-nav > .disabled > a:focus { + color: #444444; + background-color: transparent; +} +.navbar-inverse .navbar-toggle { + border-color: transparent; +} +.navbar-inverse .navbar-toggle:hover, +.navbar-inverse .navbar-toggle:focus { + background-color: #89be3d; +} +.navbar-inverse .navbar-toggle .icon-bar { + background-color: #6b9430; +} +.navbar-inverse .navbar-collapse, +.navbar-inverse .navbar-form { + border-color: #81b33a; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .open > a:hover, +.navbar-inverse .navbar-nav > .open > a:focus { + background-color: #89be3d; + color: #ffffff; +} +@media (max-width: 767px) { + .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { + border-color: #93c54b; + } + .navbar-inverse .navbar-nav .open .dropdown-menu .divider { + background-color: #93c54b; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { + color: #6b9430; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #ffffff; + background-color: transparent; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #ffffff; + background-color: #89be3d; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #444444; + background-color: transparent; + } +} +.navbar-inverse .navbar-link { + color: #6b9430; +} +.navbar-inverse .navbar-link:hover { + color: #ffffff; +} +.navbar-inverse .btn-link { + color: #6b9430; +} +.navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link:focus { + color: #ffffff; +} +.navbar-inverse .btn-link[disabled]:hover, +fieldset[disabled] .navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link[disabled]:focus, +fieldset[disabled] .navbar-inverse .btn-link:focus { + color: #444444; +} +.breadcrumb { + padding: 8px 15px; + margin-bottom: 20px; + list-style: none; + background-color: #f8f5f0; + border-radius: 4px; +} +.breadcrumb > li { + display: inline-block; +} +.breadcrumb > li + li:before { + content: "/\00a0"; + padding: 0 5px; + color: #dfd7ca; +} +.breadcrumb > .active { + color: #98978b; +} +.pagination { + display: inline-block; + padding-left: 0; + margin: 20px 0; + border-radius: 4px; +} +.pagination > li { + display: inline; +} +.pagination > li > a, +.pagination > li > span { + position: relative; + float: left; + padding: 12px 16px; + line-height: 1.42857143; + text-decoration: none; + color: #98978b; + background-color: #f8f5f0; + border: 1px solid #dfd7ca; + margin-left: -1px; +} +.pagination > li:first-child > a, +.pagination > li:first-child > span { + margin-left: 0; + border-bottom-left-radius: 4px; + border-top-left-radius: 4px; +} +.pagination > li:last-child > a, +.pagination > li:last-child > span { + border-bottom-right-radius: 4px; + border-top-right-radius: 4px; +} +.pagination > li > a:hover, +.pagination > li > span:hover, +.pagination > li > a:focus, +.pagination > li > span:focus { + z-index: 2; + color: #8e8c84; + background-color: #dfd7ca; + border-color: #dfd7ca; +} +.pagination > .active > a, +.pagination > .active > span, +.pagination > .active > a:hover, +.pagination > .active > span:hover, +.pagination > .active > a:focus, +.pagination > .active > span:focus { + z-index: 3; + color: #8e8c84; + background-color: #dfd7ca; + border-color: #dfd7ca; + cursor: default; +} +.pagination > .disabled > span, +.pagination > .disabled > span:hover, +.pagination > .disabled > span:focus, +.pagination > .disabled > a, +.pagination > .disabled > a:hover, +.pagination > .disabled > a:focus { + color: #dfd7ca; + background-color: #f8f5f0; + border-color: #dfd7ca; + cursor: not-allowed; +} +.pagination-lg > li > a, +.pagination-lg > li > span { + padding: 20px 30px; + font-size: 18px; + line-height: 1.3333333; +} +.pagination-lg > li:first-child > a, +.pagination-lg > li:first-child > span { + border-bottom-left-radius: 6px; + border-top-left-radius: 6px; +} +.pagination-lg > li:last-child > a, +.pagination-lg > li:last-child > span { + border-bottom-right-radius: 6px; + border-top-right-radius: 6px; +} +.pagination-sm > li > a, +.pagination-sm > li > span { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; +} +.pagination-sm > li:first-child > a, +.pagination-sm > li:first-child > span { + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; +} +.pagination-sm > li:last-child > a, +.pagination-sm > li:last-child > span { + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; +} +.pager { + padding-left: 0; + margin: 20px 0; + list-style: none; + text-align: center; +} +.pager li { + display: inline; +} +.pager li > a, +.pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #f8f5f0; + border: 1px solid #dfd7ca; + border-radius: 15px; +} +.pager li > a:hover, +.pager li > a:focus { + text-decoration: none; + background-color: #dfd7ca; +} +.pager .next > a, +.pager .next > span { + float: right; +} +.pager .previous > a, +.pager .previous > span { + float: left; +} +.pager .disabled > a, +.pager .disabled > a:hover, +.pager .disabled > a:focus, +.pager .disabled > span { + color: #dfd7ca; + background-color: #f8f5f0; + cursor: not-allowed; +} +.label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #ffffff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em; +} +a.label:hover, +a.label:focus { + color: #ffffff; + text-decoration: none; + cursor: pointer; +} +.label:empty { + display: none; +} +.btn .label { + position: relative; + top: -1px; +} +.label-default { + background-color: #3e3f3a; +} +.label-default[href]:hover, +.label-default[href]:focus { + background-color: #242422; +} +.label-primary { + background-color: #325d88; +} +.label-primary[href]:hover, +.label-primary[href]:focus { + background-color: #244363; +} +.label-success { + background-color: #93c54b; +} +.label-success[href]:hover, +.label-success[href]:focus { + background-color: #79a736; +} +.label-info { + background-color: #29abe0; +} +.label-info[href]:hover, +.label-info[href]:focus { + background-color: #1b8dbb; +} +.label-warning { + background-color: #f47c3c; +} +.label-warning[href]:hover, +.label-warning[href]:focus { + background-color: #ef5c0e; +} +.label-danger { + background-color: #d9534f; +} +.label-danger[href]:hover, +.label-danger[href]:focus { + background-color: #c9302c; +} +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: 12px; + font-weight: normal; + color: #ffffff; + line-height: 1; + vertical-align: middle; + white-space: nowrap; + text-align: center; + background-color: #93c54b; + border-radius: 10px; +} +.badge:empty { + display: none; +} +.btn .badge { + position: relative; + top: -1px; +} +.btn-xs .badge, +.btn-group-xs > .btn .badge { + top: 0; + padding: 1px 5px; +} +a.badge:hover, +a.badge:focus { + color: #ffffff; + text-decoration: none; + cursor: pointer; +} +.list-group-item.active > .badge, +.nav-pills > .active > a > .badge { + color: #ffffff; + background-color: #93c54b; +} +.list-group-item > .badge { + float: right; +} +.list-group-item > .badge + .badge { + margin-right: 5px; +} +.nav-pills > li > a > .badge { + margin-left: 3px; +} +.jumbotron { + padding-top: 30px; + padding-bottom: 30px; + margin-bottom: 30px; + color: inherit; + background-color: #f8f5f0; +} +.jumbotron h1, +.jumbotron .h1 { + color: inherit; +} +.jumbotron p { + margin-bottom: 15px; + font-size: 21px; + font-weight: 200; +} +.jumbotron > hr { + border-top-color: #e8decd; +} +.container .jumbotron, +.container-fluid .jumbotron { + border-radius: 6px; + padding-left: 15px; + padding-right: 15px; +} +.jumbotron .container { + max-width: 100%; +} +@media screen and (min-width: 768px) { + .jumbotron { + padding-top: 48px; + padding-bottom: 48px; + } + .container .jumbotron, + .container-fluid .jumbotron { + padding-left: 60px; + padding-right: 60px; + } + .jumbotron h1, + .jumbotron .h1 { + font-size: 63px; + } +} +.thumbnail { + display: block; + padding: 4px; + margin-bottom: 20px; + line-height: 1.42857143; + background-color: #f8f5f0; + border: 1px solid #dfd7ca; + border-radius: 4px; + -webkit-transition: border 0.2s ease-in-out; + -o-transition: border 0.2s ease-in-out; + transition: border 0.2s ease-in-out; +} +.thumbnail > img, +.thumbnail a > img { + margin-left: auto; + margin-right: auto; +} +a.thumbnail:hover, +a.thumbnail:focus, +a.thumbnail.active { + border-color: #93c54b; +} +.thumbnail .caption { + padding: 9px; + color: #3e3f3a; +} +.alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 4px; +} +.alert h4 { + margin-top: 0; + color: inherit; +} +.alert .alert-link { + font-weight: bold; +} +.alert > p, +.alert > ul { + margin-bottom: 0; +} +.alert > p + p { + margin-top: 5px; +} +.alert-dismissable, +.alert-dismissible { + padding-right: 35px; +} +.alert-dismissable .close, +.alert-dismissible .close { + position: relative; + top: -2px; + right: -21px; + color: inherit; +} +.alert-success { + background-color: #93c54b; + border-color: transparent; + color: #ffffff; +} +.alert-success hr { + border-top-color: rgba(0, 0, 0, 0); +} +.alert-success .alert-link { + color: #e6e6e6; +} +.alert-info { + background-color: #29abe0; + border-color: transparent; + color: #ffffff; +} +.alert-info hr { + border-top-color: rgba(0, 0, 0, 0); +} +.alert-info .alert-link { + color: #e6e6e6; +} +.alert-warning { + background-color: #f47c3c; + border-color: transparent; + color: #ffffff; +} +.alert-warning hr { + border-top-color: rgba(0, 0, 0, 0); +} +.alert-warning .alert-link { + color: #e6e6e6; +} +.alert-danger { + background-color: #d9534f; + border-color: transparent; + color: #ffffff; +} +.alert-danger hr { + border-top-color: rgba(0, 0, 0, 0); +} +.alert-danger .alert-link { + color: #e6e6e6; +} +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@-o-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.progress { + overflow: hidden; + height: 20px; + margin-bottom: 20px; + background-color: #f5f5f5; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); +} +.progress-bar { + float: left; + width: 0%; + height: 100%; + font-size: 12px; + line-height: 20px; + color: #ffffff; + text-align: center; + background-color: #325d88; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + -webkit-transition: width 0.6s ease; + -o-transition: width 0.6s ease; + transition: width 0.6s ease; +} +.progress-striped .progress-bar, +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + -webkit-background-size: 40px 40px; + background-size: 40px 40px; +} +.progress.active .progress-bar, +.progress-bar.active { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; +} +.progress-bar-success { + background-color: #93c54b; +} +.progress-striped .progress-bar-success { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.progress-bar-info { + background-color: #29abe0; +} +.progress-striped .progress-bar-info { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.progress-bar-warning { + background-color: #f47c3c; +} +.progress-striped .progress-bar-warning { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.progress-bar-danger { + background-color: #d9534f; +} +.progress-striped .progress-bar-danger { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.media { + margin-top: 15px; +} +.media:first-child { + margin-top: 0; +} +.media, +.media-body { + zoom: 1; + overflow: hidden; +} +.media-body { + width: 10000px; +} +.media-object { + display: block; +} +.media-object.img-thumbnail { + max-width: none; +} +.media-right, +.media > .pull-right { + padding-left: 10px; +} +.media-left, +.media > .pull-left { + padding-right: 10px; +} +.media-left, +.media-right, +.media-body { + display: table-cell; + vertical-align: top; +} +.media-middle { + vertical-align: middle; +} +.media-bottom { + vertical-align: bottom; +} +.media-heading { + margin-top: 0; + margin-bottom: 5px; +} +.media-list { + padding-left: 0; + list-style: none; +} +.list-group { + margin-bottom: 20px; + padding-left: 0; +} +.list-group-item { + position: relative; + display: block; + padding: 10px 15px; + margin-bottom: -1px; + background-color: #ffffff; + border: 1px solid #dfd7ca; +} +.list-group-item:first-child { + border-top-right-radius: 4px; + border-top-left-radius: 4px; +} +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +a.list-group-item, +button.list-group-item { + color: #3e3f3a; +} +a.list-group-item .list-group-item-heading, +button.list-group-item .list-group-item-heading { + color: inherit; +} +a.list-group-item:hover, +button.list-group-item:hover, +a.list-group-item:focus, +button.list-group-item:focus { + text-decoration: none; + color: #3e3f3a; + background-color: #f8f5f0; +} +button.list-group-item { + width: 100%; + text-align: left; +} +.list-group-item.disabled, +.list-group-item.disabled:hover, +.list-group-item.disabled:focus { + background-color: #f8f5f0; + color: #dfd7ca; + cursor: not-allowed; +} +.list-group-item.disabled .list-group-item-heading, +.list-group-item.disabled:hover .list-group-item-heading, +.list-group-item.disabled:focus .list-group-item-heading { + color: inherit; +} +.list-group-item.disabled .list-group-item-text, +.list-group-item.disabled:hover .list-group-item-text, +.list-group-item.disabled:focus .list-group-item-text { + color: #dfd7ca; +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + z-index: 2; + color: #3e3f3a; + background-color: #f8f5f0; + border-color: #dfd7ca; +} +.list-group-item.active .list-group-item-heading, +.list-group-item.active:hover .list-group-item-heading, +.list-group-item.active:focus .list-group-item-heading, +.list-group-item.active .list-group-item-heading > small, +.list-group-item.active:hover .list-group-item-heading > small, +.list-group-item.active:focus .list-group-item-heading > small, +.list-group-item.active .list-group-item-heading > .small, +.list-group-item.active:hover .list-group-item-heading > .small, +.list-group-item.active:focus .list-group-item-heading > .small { + color: inherit; +} +.list-group-item.active .list-group-item-text, +.list-group-item.active:hover .list-group-item-text, +.list-group-item.active:focus .list-group-item-text { + color: #3e3f3a; +} +.list-group-item-success { + color: #93c54b; + background-color: #dff0d8; +} +a.list-group-item-success, +button.list-group-item-success { + color: #93c54b; +} +a.list-group-item-success .list-group-item-heading, +button.list-group-item-success .list-group-item-heading { + color: inherit; +} +a.list-group-item-success:hover, +button.list-group-item-success:hover, +a.list-group-item-success:focus, +button.list-group-item-success:focus { + color: #93c54b; + background-color: #d0e9c6; +} +a.list-group-item-success.active, +button.list-group-item-success.active, +a.list-group-item-success.active:hover, +button.list-group-item-success.active:hover, +a.list-group-item-success.active:focus, +button.list-group-item-success.active:focus { + color: #fff; + background-color: #93c54b; + border-color: #93c54b; +} +.list-group-item-info { + color: #29abe0; + background-color: #d9edf7; +} +a.list-group-item-info, +button.list-group-item-info { + color: #29abe0; +} +a.list-group-item-info .list-group-item-heading, +button.list-group-item-info .list-group-item-heading { + color: inherit; +} +a.list-group-item-info:hover, +button.list-group-item-info:hover, +a.list-group-item-info:focus, +button.list-group-item-info:focus { + color: #29abe0; + background-color: #c4e3f3; +} +a.list-group-item-info.active, +button.list-group-item-info.active, +a.list-group-item-info.active:hover, +button.list-group-item-info.active:hover, +a.list-group-item-info.active:focus, +button.list-group-item-info.active:focus { + color: #fff; + background-color: #29abe0; + border-color: #29abe0; +} +.list-group-item-warning { + color: #f47c3c; + background-color: #fcf8e3; +} +a.list-group-item-warning, +button.list-group-item-warning { + color: #f47c3c; +} +a.list-group-item-warning .list-group-item-heading, +button.list-group-item-warning .list-group-item-heading { + color: inherit; +} +a.list-group-item-warning:hover, +button.list-group-item-warning:hover, +a.list-group-item-warning:focus, +button.list-group-item-warning:focus { + color: #f47c3c; + background-color: #faf2cc; +} +a.list-group-item-warning.active, +button.list-group-item-warning.active, +a.list-group-item-warning.active:hover, +button.list-group-item-warning.active:hover, +a.list-group-item-warning.active:focus, +button.list-group-item-warning.active:focus { + color: #fff; + background-color: #f47c3c; + border-color: #f47c3c; +} +.list-group-item-danger { + color: #d9534f; + background-color: #f2dede; +} +a.list-group-item-danger, +button.list-group-item-danger { + color: #d9534f; +} +a.list-group-item-danger .list-group-item-heading, +button.list-group-item-danger .list-group-item-heading { + color: inherit; +} +a.list-group-item-danger:hover, +button.list-group-item-danger:hover, +a.list-group-item-danger:focus, +button.list-group-item-danger:focus { + color: #d9534f; + background-color: #ebcccc; +} +a.list-group-item-danger.active, +button.list-group-item-danger.active, +a.list-group-item-danger.active:hover, +button.list-group-item-danger.active:hover, +a.list-group-item-danger.active:focus, +button.list-group-item-danger.active:focus { + color: #fff; + background-color: #d9534f; + border-color: #d9534f; +} +.list-group-item-heading { + margin-top: 0; + margin-bottom: 5px; +} +.list-group-item-text { + margin-bottom: 0; + line-height: 1.3; +} +.panel { + margin-bottom: 20px; + background-color: #ffffff; + border: 1px solid transparent; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); +} +.panel-body { + padding: 15px; +} +.panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} +.panel-heading > .dropdown .dropdown-toggle { + color: inherit; +} +.panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 16px; + color: inherit; +} +.panel-title > a, +.panel-title > small, +.panel-title > .small, +.panel-title > small > a, +.panel-title > .small > a { + color: inherit; +} +.panel-footer { + padding: 10px 15px; + background-color: #f8f5f0; + border-top: 1px solid #dfd7ca; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .list-group, +.panel > .panel-collapse > .list-group { + margin-bottom: 0; +} +.panel > .list-group .list-group-item, +.panel > .panel-collapse > .list-group .list-group-item { + border-width: 1px 0; + border-radius: 0; +} +.panel > .list-group:first-child .list-group-item:first-child, +.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { + border-top: 0; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} +.panel > .list-group:last-child .list-group-item:last-child, +.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { + border-bottom: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child { + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.panel-heading + .list-group .list-group-item:first-child { + border-top-width: 0; +} +.list-group + .panel-footer { + border-top-width: 0; +} +.panel > .table, +.panel > .table-responsive > .table, +.panel > .panel-collapse > .table { + margin-bottom: 0; +} +.panel > .table caption, +.panel > .table-responsive > .table caption, +.panel > .panel-collapse > .table caption { + padding-left: 15px; + padding-right: 15px; +} +.panel > .table:first-child, +.panel > .table-responsive:first-child > .table:first-child { + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { + border-top-left-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { + border-top-right-radius: 3px; +} +.panel > .table:last-child, +.panel > .table-responsive:last-child > .table:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { + border-bottom-right-radius: 3px; +} +.panel > .panel-body + .table, +.panel > .panel-body + .table-responsive, +.panel > .table + .panel-body, +.panel > .table-responsive + .panel-body { + border-top: 1px solid #dfd7ca; +} +.panel > .table > tbody:first-child > tr:first-child th, +.panel > .table > tbody:first-child > tr:first-child td { + border-top: 0; +} +.panel > .table-bordered, +.panel > .table-responsive > .table-bordered { + border: 0; +} +.panel > .table-bordered > thead > tr > th:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:first-child, +.panel > .table-bordered > tbody > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, +.panel > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-bordered > thead > tr > td:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:first-child, +.panel > .table-bordered > tbody > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, +.panel > .table-bordered > tfoot > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; +} +.panel > .table-bordered > thead > tr > th:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:last-child, +.panel > .table-bordered > tbody > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, +.panel > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-bordered > thead > tr > td:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:last-child, +.panel > .table-bordered > tbody > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, +.panel > .table-bordered > tfoot > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; +} +.panel > .table-bordered > thead > tr:first-child > td, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > td, +.panel > .table-bordered > tbody > tr:first-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, +.panel > .table-bordered > thead > tr:first-child > th, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > th, +.panel > .table-bordered > tbody > tr:first-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { + border-bottom: 0; +} +.panel > .table-bordered > tbody > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, +.panel > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-bordered > tbody > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, +.panel > .table-bordered > tfoot > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { + border-bottom: 0; +} +.panel > .table-responsive { + border: 0; + margin-bottom: 0; +} +.panel-group { + margin-bottom: 20px; +} +.panel-group .panel { + margin-bottom: 0; + border-radius: 4px; +} +.panel-group .panel + .panel { + margin-top: 5px; +} +.panel-group .panel-heading { + border-bottom: 0; +} +.panel-group .panel-heading + .panel-collapse > .panel-body, +.panel-group .panel-heading + .panel-collapse > .list-group { + border-top: 1px solid #dfd7ca; +} +.panel-group .panel-footer { + border-top: 0; +} +.panel-group .panel-footer + .panel-collapse .panel-body { + border-bottom: 1px solid #dfd7ca; +} +.panel-default { + border-color: #dfd7ca; +} +.panel-default > .panel-heading { + color: #3e3f3a; + background-color: #f8f5f0; + border-color: #dfd7ca; +} +.panel-default > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #dfd7ca; +} +.panel-default > .panel-heading .badge { + color: #f8f5f0; + background-color: #3e3f3a; +} +.panel-default > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #dfd7ca; +} +.panel-primary { + border-color: #325d88; +} +.panel-primary > .panel-heading { + color: #ffffff; + background-color: #325d88; + border-color: #325d88; +} +.panel-primary > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #325d88; +} +.panel-primary > .panel-heading .badge { + color: #325d88; + background-color: #ffffff; +} +.panel-primary > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #325d88; +} +.panel-success { + border-color: #d6e9c6; +} +.panel-success > .panel-heading { + color: #93c54b; + background-color: #93c54b; + border-color: #d6e9c6; +} +.panel-success > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #d6e9c6; +} +.panel-success > .panel-heading .badge { + color: #93c54b; + background-color: #93c54b; +} +.panel-success > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #d6e9c6; +} +.panel-info { + border-color: #bce8f1; +} +.panel-info > .panel-heading { + color: #29abe0; + background-color: #29abe0; + border-color: #bce8f1; +} +.panel-info > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #bce8f1; +} +.panel-info > .panel-heading .badge { + color: #29abe0; + background-color: #29abe0; +} +.panel-info > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #bce8f1; +} +.panel-warning { + border-color: #faebcc; +} +.panel-warning > .panel-heading { + color: #f47c3c; + background-color: #f47c3c; + border-color: #faebcc; +} +.panel-warning > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #faebcc; +} +.panel-warning > .panel-heading .badge { + color: #f47c3c; + background-color: #f47c3c; +} +.panel-warning > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #faebcc; +} +.panel-danger { + border-color: #ebccd1; +} +.panel-danger > .panel-heading { + color: #d9534f; + background-color: #d9534f; + border-color: #ebccd1; +} +.panel-danger > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ebccd1; +} +.panel-danger > .panel-heading .badge { + color: #d9534f; + background-color: #d9534f; +} +.panel-danger > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ebccd1; +} +.embed-responsive { + position: relative; + display: block; + height: 0; + padding: 0; + overflow: hidden; +} +.embed-responsive .embed-responsive-item, +.embed-responsive iframe, +.embed-responsive embed, +.embed-responsive object, +.embed-responsive video { + position: absolute; + top: 0; + left: 0; + bottom: 0; + height: 100%; + width: 100%; + border: 0; +} +.embed-responsive-16by9 { + padding-bottom: 56.25%; +} +.embed-responsive-4by3 { + padding-bottom: 75%; +} +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #f8f5f0; + border: 1px solid transparent; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); +} +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, 0.15); +} +.well-lg { + padding: 24px; + border-radius: 6px; +} +.well-sm { + padding: 9px; + border-radius: 3px; +} +.close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000000; + text-shadow: 0 0 0 transparent; + opacity: 0.2; + filter: alpha(opacity=20); +} +.close:hover, +.close:focus { + color: #000000; + text-decoration: none; + cursor: pointer; + opacity: 0.5; + filter: alpha(opacity=50); +} +button.close { + padding: 0; + cursor: pointer; + background: transparent; + border: 0; + -webkit-appearance: none; +} +.modal-open { + overflow: hidden; +} +.modal { + display: none; + overflow: hidden; + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + -webkit-overflow-scrolling: touch; + outline: 0; +} +.modal.fade .modal-dialog { + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + -o-transform: translate(0, -25%); + transform: translate(0, -25%); + -webkit-transition: -webkit-transform 0.3s ease-out; + -o-transition: -o-transform 0.3s ease-out; + transition: transform 0.3s ease-out; +} +.modal.in .modal-dialog { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); +} +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto; +} +.modal-dialog { + position: relative; + width: auto; + margin: 10px; +} +.modal-content { + position: relative; + background-color: #ffffff; + border: 1px solid #f8f5f0; + border-radius: 6px; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + -webkit-background-clip: padding-box; + background-clip: padding-box; + outline: 0; +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000000; +} +.modal-backdrop.fade { + opacity: 0; + filter: alpha(opacity=0); +} +.modal-backdrop.in { + opacity: 0.5; + filter: alpha(opacity=50); +} +.modal-header { + padding: 15px; + border-bottom: 1px solid #f8f5f0; +} +.modal-header .close { + margin-top: -2px; +} +.modal-title { + margin: 0; + line-height: 1.42857143; +} +.modal-body { + position: relative; + padding: 15px; +} +.modal-footer { + padding: 15px; + text-align: right; + border-top: 1px solid #f8f5f0; +} +.modal-footer .btn + .btn { + margin-left: 5px; + margin-bottom: 0; +} +.modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} +.modal-footer .btn-block + .btn-block { + margin-left: 0; +} +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll; +} +@media (min-width: 768px) { + .modal-dialog { + width: 600px; + margin: 30px auto; + } + .modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); + box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); + } + .modal-sm { + width: 300px; + } +} +@media (min-width: 992px) { + .modal-lg { + width: 900px; + } +} +.tooltip { + position: absolute; + z-index: 1070; + display: block; + font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif; + font-style: normal; + font-weight: normal; + letter-spacing: normal; + line-break: auto; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + white-space: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + font-size: 12px; + opacity: 0; + filter: alpha(opacity=0); +} +.tooltip.in { + opacity: 1; + filter: alpha(opacity=100); +} +.tooltip.top { + margin-top: -3px; + padding: 5px 0; +} +.tooltip.right { + margin-left: 3px; + padding: 0 5px; +} +.tooltip.bottom { + margin-top: 3px; + padding: 5px 0; +} +.tooltip.left { + margin-left: -3px; + padding: 0 5px; +} +.tooltip-inner { + max-width: 200px; + padding: 3px 8px; + color: #ffffff; + text-align: center; + background-color: #3e3f3a; + border-radius: 4px; +} +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-width: 5px 5px 0; + border-top-color: #3e3f3a; +} +.tooltip.top-left .tooltip-arrow { + bottom: 0; + right: 5px; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #3e3f3a; +} +.tooltip.top-right .tooltip-arrow { + bottom: 0; + left: 5px; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #3e3f3a; +} +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-width: 5px 5px 5px 0; + border-right-color: #3e3f3a; +} +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-width: 5px 0 5px 5px; + border-left-color: #3e3f3a; +} +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-width: 0 5px 5px; + border-bottom-color: #3e3f3a; +} +.tooltip.bottom-left .tooltip-arrow { + top: 0; + right: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #3e3f3a; +} +.tooltip.bottom-right .tooltip-arrow { + top: 0; + left: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #3e3f3a; +} +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: none; + max-width: 276px; + padding: 1px; + font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif; + font-style: normal; + font-weight: normal; + letter-spacing: normal; + line-break: auto; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + white-space: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + font-size: 14px; + background-color: #ffffff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #dfd7ca; + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); +} +.popover.top { + margin-top: -10px; +} +.popover.right { + margin-left: 10px; +} +.popover.bottom { + margin-top: 10px; +} +.popover.left { + margin-left: -10px; +} +.popover-title { + margin: 0; + padding: 8px 14px; + font-size: 14px; + background-color: #f8f5f0; + border-bottom: 1px solid #f0e9df; + border-radius: 5px 5px 0 0; +} +.popover-content { + padding: 9px 14px; +} +.popover > .arrow, +.popover > .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.popover > .arrow { + border-width: 11px; +} +.popover > .arrow:after { + border-width: 10px; + content: ""; +} +.popover.top > .arrow { + left: 50%; + margin-left: -11px; + border-bottom-width: 0; + border-top-color: #b9a78a; + border-top-color: #dfd7ca; + bottom: -11px; +} +.popover.top > .arrow:after { + content: " "; + bottom: 1px; + margin-left: -10px; + border-bottom-width: 0; + border-top-color: #ffffff; +} +.popover.right > .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-left-width: 0; + border-right-color: #b9a78a; + border-right-color: #dfd7ca; +} +.popover.right > .arrow:after { + content: " "; + left: 1px; + bottom: -10px; + border-left-width: 0; + border-right-color: #ffffff; +} +.popover.bottom > .arrow { + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #b9a78a; + border-bottom-color: #dfd7ca; + top: -11px; +} +.popover.bottom > .arrow:after { + content: " "; + top: 1px; + margin-left: -10px; + border-top-width: 0; + border-bottom-color: #ffffff; +} +.popover.left > .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-right-width: 0; + border-left-color: #b9a78a; + border-left-color: #dfd7ca; +} +.popover.left > .arrow:after { + content: " "; + right: 1px; + border-right-width: 0; + border-left-color: #ffffff; + bottom: -10px; +} +.carousel { + position: relative; +} +.carousel-inner { + position: relative; + overflow: hidden; + width: 100%; +} +.carousel-inner > .item { + display: none; + position: relative; + -webkit-transition: 0.6s ease-in-out left; + -o-transition: 0.6s ease-in-out left; + transition: 0.6s ease-in-out left; +} +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + line-height: 1; +} +@media all and (transform-3d), (-webkit-transform-3d) { + .carousel-inner > .item { + -webkit-transition: -webkit-transform 0.6s ease-in-out; + -o-transition: -o-transform 0.6s ease-in-out; + transition: transform 0.6s ease-in-out; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-perspective: 1000px; + perspective: 1000px; + } + .carousel-inner > .item.next, + .carousel-inner > .item.active.right { + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + left: 0; + } + .carousel-inner > .item.prev, + .carousel-inner > .item.active.left { + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + left: 0; + } + .carousel-inner > .item.next.left, + .carousel-inner > .item.prev.right, + .carousel-inner > .item.active { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + left: 0; + } +} +.carousel-inner > .active, +.carousel-inner > .next, +.carousel-inner > .prev { + display: block; +} +.carousel-inner > .active { + left: 0; +} +.carousel-inner > .next, +.carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} +.carousel-inner > .next { + left: 100%; +} +.carousel-inner > .prev { + left: -100%; +} +.carousel-inner > .next.left, +.carousel-inner > .prev.right { + left: 0; +} +.carousel-inner > .active.left { + left: -100%; +} +.carousel-inner > .active.right { + left: 100%; +} +.carousel-control { + position: absolute; + top: 0; + left: 0; + bottom: 0; + width: 15%; + opacity: 0.5; + filter: alpha(opacity=50); + font-size: 20px; + color: #ffffff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); + background-color: rgba(0, 0, 0, 0); +} +.carousel-control.left { + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001))); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); +} +.carousel-control.right { + left: auto; + right: 0; + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5))); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); +} +.carousel-control:hover, +.carousel-control:focus { + outline: 0; + color: #ffffff; + text-decoration: none; + opacity: 0.9; + filter: alpha(opacity=90); +} +.carousel-control .icon-prev, +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-left, +.carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + margin-top: -10px; + z-index: 5; + display: inline-block; +} +.carousel-control .icon-prev, +.carousel-control .glyphicon-chevron-left { + left: 50%; + margin-left: -10px; +} +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-right { + right: 50%; + margin-right: -10px; +} +.carousel-control .icon-prev, +.carousel-control .icon-next { + width: 20px; + height: 20px; + line-height: 1; + font-family: serif; +} +.carousel-control .icon-prev:before { + content: '\2039'; +} +.carousel-control .icon-next:before { + content: '\203a'; +} +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + margin-left: -30%; + padding-left: 0; + list-style: none; + text-align: center; +} +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + border: 1px solid #ffffff; + border-radius: 10px; + cursor: pointer; + background-color: #000 \9; + background-color: rgba(0, 0, 0, 0); +} +.carousel-indicators .active { + margin: 0; + width: 12px; + height: 12px; + background-color: #ffffff; +} +.carousel-caption { + position: absolute; + left: 15%; + right: 15%; + bottom: 20px; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #ffffff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); +} +.carousel-caption .btn { + text-shadow: none; +} +@media screen and (min-width: 768px) { + .carousel-control .glyphicon-chevron-left, + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-prev, + .carousel-control .icon-next { + width: 30px; + height: 30px; + margin-top: -10px; + font-size: 30px; + } + .carousel-control .glyphicon-chevron-left, + .carousel-control .icon-prev { + margin-left: -10px; + } + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-next { + margin-right: -10px; + } + .carousel-caption { + left: 20%; + right: 20%; + padding-bottom: 30px; + } + .carousel-indicators { + bottom: 20px; + } +} +.clearfix:before, +.clearfix:after, +.dl-horizontal dd:before, +.dl-horizontal dd:after, +.container:before, +.container:after, +.container-fluid:before, +.container-fluid:after, +.row:before, +.row:after, +.form-horizontal .form-group:before, +.form-horizontal .form-group:after, +.btn-toolbar:before, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:before, +.btn-group-vertical > .btn-group:after, +.nav:before, +.nav:after, +.navbar:before, +.navbar:after, +.navbar-header:before, +.navbar-header:after, +.navbar-collapse:before, +.navbar-collapse:after, +.pager:before, +.pager:after, +.panel-body:before, +.panel-body:after, +.modal-header:before, +.modal-header:after, +.modal-footer:before, +.modal-footer:after { + content: " "; + display: table; +} +.clearfix:after, +.dl-horizontal dd:after, +.container:after, +.container-fluid:after, +.row:after, +.form-horizontal .form-group:after, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:after, +.nav:after, +.navbar:after, +.navbar-header:after, +.navbar-collapse:after, +.pager:after, +.panel-body:after, +.modal-header:after, +.modal-footer:after { + clear: both; +} +.center-block { + display: block; + margin-left: auto; + margin-right: auto; +} +.pull-right { + float: right !important; +} +.pull-left { + float: left !important; +} +.hide { + display: none !important; +} +.show { + display: block !important; +} +.invisible { + visibility: hidden; +} +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} +.hidden { + display: none !important; +} +.affix { + position: fixed; +} +@-ms-viewport { + width: device-width; +} +.visible-xs, +.visible-sm, +.visible-md, +.visible-lg { + display: none !important; +} +.visible-xs-block, +.visible-xs-inline, +.visible-xs-inline-block, +.visible-sm-block, +.visible-sm-inline, +.visible-sm-inline-block, +.visible-md-block, +.visible-md-inline, +.visible-md-inline-block, +.visible-lg-block, +.visible-lg-inline, +.visible-lg-inline-block { + display: none !important; +} +@media (max-width: 767px) { + .visible-xs { + display: block !important; + } + table.visible-xs { + display: table !important; + } + tr.visible-xs { + display: table-row !important; + } + th.visible-xs, + td.visible-xs { + display: table-cell !important; + } +} +@media (max-width: 767px) { + .visible-xs-block { + display: block !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline { + display: inline !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline-block { + display: inline-block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm { + display: block !important; + } + table.visible-sm { + display: table !important; + } + tr.visible-sm { + display: table-row !important; + } + th.visible-sm, + td.visible-sm { + display: table-cell !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-block { + display: block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline { + display: inline !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline-block { + display: inline-block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md { + display: block !important; + } + table.visible-md { + display: table !important; + } + tr.visible-md { + display: table-row !important; + } + th.visible-md, + td.visible-md { + display: table-cell !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-block { + display: block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline { + display: inline !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline-block { + display: inline-block !important; + } +} +@media (min-width: 1200px) { + .visible-lg { + display: block !important; + } + table.visible-lg { + display: table !important; + } + tr.visible-lg { + display: table-row !important; + } + th.visible-lg, + td.visible-lg { + display: table-cell !important; + } +} +@media (min-width: 1200px) { + .visible-lg-block { + display: block !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline { + display: inline !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline-block { + display: inline-block !important; + } +} +@media (max-width: 767px) { + .hidden-xs { + display: none !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .hidden-sm { + display: none !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-md { + display: none !important; + } +} +@media (min-width: 1200px) { + .hidden-lg { + display: none !important; + } +} +.visible-print { + display: none !important; +} +@media print { + .visible-print { + display: block !important; + } + table.visible-print { + display: table !important; + } + tr.visible-print { + display: table-row !important; + } + th.visible-print, + td.visible-print { + display: table-cell !important; + } +} +.visible-print-block { + display: none !important; +} +@media print { + .visible-print-block { + display: block !important; + } +} +.visible-print-inline { + display: none !important; +} +@media print { + .visible-print-inline { + display: inline !important; + } +} +.visible-print-inline-block { + display: none !important; +} +@media print { + .visible-print-inline-block { + display: inline-block !important; + } +} +@media print { + .hidden-print { + display: none !important; + } +} +.sandstone { + font-size: 11px; + line-height: 22px; + font-weight: 500; + text-transform: uppercase; +} +.navbar .nav > li > a { + font-size: 11px; + line-height: 22px; + font-weight: 500; + text-transform: uppercase; +} +.navbar-form input, +.navbar-form .form-control { + border: none; +} +.btn { + border: none; + font-size: 11px; + line-height: 22px; + font-weight: 500; + text-transform: uppercase; +} +.btn:hover { + border-color: transparent; +} +.btn-lg { + line-height: 26px; +} +.btn-default:hover { + background-color: #393a35; +} +input, +.form-control { + -webkit-box-shadow: none; + box-shadow: none; +} +/* input:focus, +.form-control:focus { + border-color: #dfd7ca; + -webkit-box-shadow: none; + box-shadow: none; +} */ +.nav { + font-size: 11px; + line-height: 22px; + font-weight: 500; + text-transform: uppercase; +} +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + border-color: #dfd7ca; +} +.nav-tabs > li > a { + background-color: #f8f5f0; + border-color: #dfd7ca; + color: #98978b; +} +.nav-tabs > li.disabled > a:hover { + background-color: #f8f5f0; +} +.nav-pills a { + color: #98978b; +} +.nav-pills li > a { + border: 1px solid transparent; +} +.nav-pills li.active > a, +.nav-pills li > a:hover { + border-color: #dfd7ca; +} +.nav-pills li.disabled > a { + border-color: transparent; +} +.breadcrumb { + font-size: 11px; + line-height: 22px; + font-weight: 500; + text-transform: uppercase; + border: 1px solid #dfd7ca; +} +.breadcrumb a { + color: #98978b; +} +.pagination { + font-size: 11px; + line-height: 22px; + font-weight: 500; + text-transform: uppercase; +} +.pager { + font-size: 11px; + line-height: 22px; + font-weight: 500; + text-transform: uppercase; +} +.pager li > a { + color: #98978b; +} +.dropdown-menu > li > a { + font-size: 11px; + line-height: 22px; + font-weight: 500; + text-transform: uppercase; +} +.alert a, +.alert .alert-link { + color: #fff; +} +.tooltip { + font-size: 11px; + line-height: 22px; + font-weight: 500; + text-transform: uppercase; +} +.progress { + border-radius: 10px; + background-color: #dfd7ca; + -webkit-box-shadow: none; + box-shadow: none; +} +.progress-bar { + -webkit-box-shadow: none; + box-shadow: none; +} +.list-group-item { + padding: 16px 24px; +} +.well { + -webkit-box-shadow: none; + box-shadow: none; +} +.panel { + -webkit-box-shadow: none; + box-shadow: none; +} +.panel .panel-heading, +.panel .panel-title { + font-size: 11px; + line-height: 22px; + font-weight: 500; + text-transform: uppercase; + color: #fff; +} +.panel .panel-footer { + font-size: 11px; + line-height: 22px; + font-weight: 500; + text-transform: uppercase; +} +.panel-default .panel-heading, +.panel-default .panel-title, +.panel-default .panel-footer { + color: #98978b; +} diff --git a/roo/src/main/resources/static/public/fonts/fontawesome-webfont.eot b/roo/src/main/resources/static/public/fonts/fontawesome-webfont.eot new file mode 100644 index 0000000000000000000000000000000000000000..99e847f985b54ecc5e8dd5003d4775cd387b799c GIT binary patch literal 75220 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/roo/src/main/resources/static/public/fonts/fontawesome-webfont.ttf b/roo/src/main/resources/static/public/fonts/fontawesome-webfont.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f471fde429ccdfbf6c62b9746d0c75faaade7f2f GIT binary patch literal 150920 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

jH0rRyLL+1|R$y$3@bdgc?;t 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ℨ{dsBK*`T4-6b-D1rq7 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

cl(Ou6^Utmxy^`$=v=$va*K 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 Ucf|P*8a#-I?padb-XkLVUsriYi2wiq literal 0 HcmV?d00001 diff --git a/roo/src/main/resources/static/public/fonts/fontawesome-webfont.woff2 b/roo/src/main/resources/static/public/fonts/fontawesome-webfont.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..aaed3de59c52ca76abc62d509676652b40d55ae4 GIT binary patch literal 70728 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
j0s;6+k3VBhH195iM@+jSx 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 literal 0 HcmV?d00001 diff --git a/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.svg b/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.svg new file mode 100644 index 0000000000..94fb5490a2 --- /dev/null +++ b/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.svg @@ -0,0 +1,288 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.ttf b/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..06e2a16b443c2d296f7fdf95eea5c7c20e81a6a7 GIT binary patch literal 45404 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 literal 0 HcmV?d00001 diff --git a/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff b/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..dda02ad5372b7771616f56ddc04bf58f8ab9bbaa GIT binary patch literal 23424 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⋘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 r*WvQ}vj00xp)KfYD-wz$vNU#5o&H6t8)Z(KX literal 0 HcmV?d00001 diff --git a/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff2 b/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..ad69b8d4c10507b7b80d8894bf97822aa81bccfc GIT binary patch literal 18028 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 literal 0 HcmV?d00001 diff --git a/roo/src/main/resources/static/public/img/es.png b/roo/src/main/resources/static/public/img/es.png new file mode 100644 index 0000000000000000000000000000000000000000..c2de2d7111e3cb59cf6511dd2ab045e824bdb43e GIT binary patch literal 469 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 literal 0 HcmV?d00001 diff --git a/roo/src/main/resources/static/public/img/geo.png b/roo/src/main/resources/static/public/img/geo.png new file mode 100644 index 0000000000000000000000000000000000000000..a4995b6f56d45bad081f089ac6e166c9f7e2a4fc GIT binary patch literal 142350 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 literal 0 HcmV?d00001 diff --git a/roo/src/main/resources/static/public/img/logo.png b/roo/src/main/resources/static/public/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..e23f915763c67d9101f70d4883325da7911e4f5d GIT binary patch literal 1761 zcmV<71|Io|P)n6U0*s&eQdzqQ94?9ln zWq0FC3^qslG`n-t|9o@K|NPI<$T8D0f{oFzO2h^f3*2O$bH4*Nvj|Mf*>wTD4TKw` z;eRG#1I}XF`K>@X@Br}h#TGUXP5S+UX&Lt~Ch+&>{D0N7jNdGH@TO&K1}bx|`+z^2 zma$`@@B9w{k>?&i@R(^C2TjXpSg7F50^ld?d%zjfGX7v%#_ELtUU(r>0sI@d89)k9 z3W`*z9$-JPyQ8f$_DzE~fW5$Sr65w{(mN~|&lLL*C?E-(2lfH)0H1WUb@qPU;O_?B z07{jDhDw*_u*>`1Izr6qy`#VoFbs@%$BV!@pbI$UIX%+R)|r|uc-=eJ0;K>#!0AEB zT{qbbH#!_Vqv6+P{N6He6|-}|yQXFQ1K8Km)|sAh!g`XRc8X?@@YWF@_iaq`omvOm zotLlP0Q>^j4ea$ocgAd^0pTep1$=o~@a`8r9^8_lzG7Yl<`Upepu@C`=uE*&pyDfv zO~QvKbizzR>2 zr>+HF1GWJh^Kz+xlr8w^q)ua{Vr8|<`g)hvW`~N9OUeM zLDGhiq~OA3N#BUz!lWhh>MQDKa)M9nx)fRZ{qnNl^q?emOy~5V#5c8`{K!+a1;J~H*nnz`hF1dj zPuGFVDM44i#^HoUc}P)Prci+EvC)*pq~)D+J%^U~;f4yu#zu#XBS>75xfHrH5gQmP z+QT+R!&P3=2B(`wFJ5aNS!q z2?vhry!NTDptSHw7#x$NovbsruCQrZ=I-UC!|CXzo@YJn^L#8GX(~27*bZE|?vpJE zo#!>qOijiq*GH0&ak5wID;1C2p4t$LM}8fPM_Pd`KppT#EFM{!7ko!s=Lz7K^C4Kq z(t`dGk+-!>+K|kE6l$_Vn}BD%F6{}A^EU!Ji_9wRJ;2j*jsJYfoN@C%>k0-M|U&e-hXli$}ImXj))e>jk(^0*?WK>(XxucyLRa_4Urx-4`NDl`nnl z=Z9-E)Rd_YbjiPfkAP33n|g*Po{z;NRY26Myq^Ql6|E(vW!wq;(Hncr$*M~g54WVK zTB5E3mjZUS``J+MfFN`7qS)}K?Ok8YWyC!>2ljj3J_ID@vg<8P8EQ)ZAJZ8J{`!HR z+A^0Ty^@y?`j36s-cb!dQNOEjIa%o(w(k0>PD%=@^&vB#==qr*hnirOO+D0Es;g=G> z20;WBb!BRGUAf&dp5e#CgsRpEZ@d8EX#nZMXjc(x62$Os0rX00000NkvXXu0mjf DKx9>r literal 0 HcmV?d00001 diff --git a/roo/src/main/resources/static/public/img/owasp_logo.png b/roo/src/main/resources/static/public/img/owasp_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..8c820aa076ce15ef4908439a9d5c478c7641f2db GIT binary patch literal 4271 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 R_JjZc002ovPDHLkV1m3z8S4N5 literal 0 HcmV?d00001 diff --git a/roo/src/main/resources/static/public/img/springroo-logo.png b/roo/src/main/resources/static/public/img/springroo-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..5e9891fc3469e2d628a95d6553ac51ea36554df2 GIT binary patch literal 25823 zcmXtg1yohd7w>^fTXM>oQoVJPw9Cf(A(BiF9Btcz(Zj$k-%$n4_r7N$ylYPD^OTy zuUQby-Z?u*Iy%gxH*+6Z628hphdO@fT#B)druxRUbSMylBjq8-B@EySk@yr!yAJUP zW6_4-WYN|@aB_`iq}9S$OX^X91G4vewmPfEZttX^v`h4&&Io{t#t|7n1ZYkhy*bf^ z(%#}KY$F12xU0cK@a}fk-?9OwF!~UjE=a-$7WJA=2!FWH`0B*9OiY6Djax-O`&{Y7cLvPB?hE@u|q zHc=jxk?MKl%)`Vi&k!qjDweRFND4qs!1b19G&yIhk25KRl=_p_u}I9FP|mC9r&`# z^nroRO`_HjD)BWty`CJULg!Me+uP6XBe)*=1W!DyTD7nD)SnI&D9u|d5Axhw#gteC zS#b-J*j2@;IH9YSwr57_L@X7tmS9TdiP)A|{2NYvzHPQbxONUMBA}4qi8SEN@*n~z zND3rL4UO(3S=6C-o^&~Omn(Q`3 zyuvuNA-kg>^AQC8$WTF_}juE2E>r6T8PFFFzPZa^)$tf5xQ zwtL=loLYf99_UH6b;Gdx^_rmMcY4aB=&wy`P}mW=ue)`d*_X*q^1lPdLvg*3%N`%) z%dS2Rb5yzzoQJ@Rp>Ev_>0!C2w|{{DhGnLaohP6Evrtro36s!sg(+UYTAaB`gy&~q+FH5KV z4@c@c`dt9J8j44l_`+TlK1b@tsl1wbG|HwIPFtJF-!ROZbM77Dp~0co!YrT+!~Is5 z@k9qXN41a*3o4I_&`!_UgibFCRRt!flCS*8fma_ewuTAg%dP(>w9_z<7MFS7&#Lk$ zat(-8x8K`NQe4;99J>sx9wu~IgrQQ%!D7`#ec>AQeMjb~3?VqjpfJMB#WTc~RV-sW z7FyhzA)W(DB5Js?%l&lQ^d_*XIEhjO6JFfeg{$7zQxDY~ud)O|eOBzzO`})nY>in= zJ4@(TNEiChZ;R}9C{nUE&!`ELKkP5Sm!OBlqKyHkUK-uR-^oT78S(c+aLgx$uq3Xj zc}C7Hyx*e|2)Ia1&_Iv}P&92+ALf1h@i1w^12T@My^sp==eRtBc{)T)_ydkG79`h} zkq%9^A5bPGldc0M^C(`AO)tDqwEkW`Zntj_>Z>rQlQ_5qRn)U#!Y)#Sl3jmrV-$G~ zE$8rKXGS89GOuJHFf6!$)D?9WLI4!a)&8*XQ?lQ&v=W4M~NkbPfs#EcOxROVx~vB?+iQ3cAtCCok%JKr-?2+_x^7T z6HxqUz zlC@HzxH@c%4xzi$f8J7<|J^ZL0{T`F$N%-L3ms=TTOH4Qqa<4?itX{$r3-^dPzJD`zz^-Y7=O5}A^Cz#??ht2n}?iG%XM z@0Y84Bi$JZv8lzHJ=D)De*4M~W4()b!z_9Z>xTc4sPAa)4XU4XQ&EgCU;1YMWM!NY zfq@Z&xGRa=*9S75|L?Zhb}D5e&X;#y+eYR#jvJM0h2IWE$77F&KTd>Y?`LAi7!{%A z?gf}$K=ToQ(X3Te_tHltZpR2zInO_u*97CyP5hd(BuP838R}Gu#YVjq87DifQ55Ea zJC$%_@|^C!Wh1-#^4KQKaAKS3O@1#eJF2Mkwcko)F}irNms7w>7j8CF8N=VbcFM|mUS zJobb!WMIwd!>OmFXJ4r-_Atq_cMstKom7Zn%!`?(L#4IuKIhp~<~|;~fd=VB<>XyC z44?j7p_#4W!N&PR!w~34rvXg*khRMpgdD%{uuS=p2j~wh9)}~B`F}bYMhsl~pc}b% z&thj|i4P8mU;xbpit3n331FbCSnoC=E)AV24JkOI@KB74>p}~w+YR-%8-}oCA{^+{ z;=A8`IE(O>d|YN9PNF{w>8ytD2JUDErGK@|X;bWs`|dQ#qLh2=yIx7IlOf>I^R+tr zxOkD?3@P;Vi>_HW6u&RcaiwAQv%rkwF{?b?n)T%2uWTAo7e_4PH9y5X->r8#=22j5 z7++Q3#->L?vPE3l6QT@ppSjX441+eheS>%=jLF7(gzf*?*FOIlH54Zk@d$#FRF*nM zc}N7$!To{T%ektCokG4Rglpshsm^Qnke5WyZwE}EPLy_ zef?|Ao9e1ywBWrs&XdwV*5aVkIM&O3s$-*98&%fKGeZu|u>*OJH%1nU+@`ONa; zsK2@zt7BVFg#x>?p63%C7H$Mm7pNdX$j-kmh7i_dh}SFYG)Xx6#>0ELj$a;26%4r$ zi_#QWfUvoe3xw-ZnPB+nd`FuEs?c6QRL9JxP7XY;S`;6PWXjoLhhHe{8#b)L2JERR zX`kI_q(ZoxT*4w%$jrr;cZ4-w%`Z7W{Hxhw7Iw5SN;!<=7$F)RI{7olgvkTq8>u9Q za|g)?e&LW6pX<=DQTOHs2jeanM7+5Q9~nPGl*1k$*SdAPwmsl@%UUX;=GR0m?2G!> zYhE0u;kfVonBD{oeOz)(jmNImXfW6OK!r$@dTQ128AVz$Ty1D7cY(m!b;a+8Y4d(M znW8UQp4ZSlS^c4qj%n>`&yKsR_|0&V#>!gsUi?g&gj{z7oYS5|&pn>uIOzx#5GdL> zykT};`;$AkV)rf*qu3L7>gz7}BmUcXoruE>H`hgrGEJ zKAfFaLZ&#APhgN(Z*>MtZrH1ln)P!@u9&n<(6ez>okt+Ha43jMZN+j@HF?NywM&DD zO@`$^qkpi@9KSlFMrr2z&t?QOM}P0>-}L-aoH<)#)N6EW?%pIv#3jmeA>ouVZ$L+o z0R16-G0Pb%-4IL|OBn_^aJL4a#oZ$QR28i7xlR-`waiq3E{Sx#&Q89jdinnxO`^go zSL+VpC^Zn=E}LgnZroV^7{JnhD9}3Yq#{|E2;-{WDOX$OVhQ6CRp|dC1JM&&AA8Yj z_ELNN33ogOSFKO1qtGsXD2@R4J!qeASg9OIp$~2YBmcV5>ZvsyS6Cq5u(N*$a>bN! z3B6?!B z%J51h7u=acbuPE6Kw8NCWM*7FfFDN2@@7xzkRGqu`>8w=sgQO+6a&M};ci2CJf z6PSN7rDEzMVBW@YsGfJc4whyvo6nV0Yc7S~)W~_qAip8&N#&E1ACO^YiiN>o-*SV; z)@gPp8V*vRsf{&GPv_?Sv?1F0I(STAkXn%)@(1PMuSjmUro(d-5sfw?eKMoe)vk$r z7l-dgsZn)M6!g%qz%+S@ZN`gEmYhln!X@YpUQU;2lo7=aY{|TAFCfSwMa$774)Rj} zmBG2X)N6X$PyIbTYU0*4knlxmw00^NR7fhR~+J%=nIFzIW(2YU4tdQ##q zf$<=KRv|zHwWaYwg!z@#u4`hZoIBo;177oC!1&-tMMk*S!k>1MSV`u1jp^f07l9Kq z)0tE8Za{e^T3kIy7a@f$Glk7}2bM3^?w0?!TUj8~{!kUZU=7Gw?;>lJ}B)0f3#yhfl&S)a)SO zG`urHUc|x|qI}rrF`IT7#031F)dwjZbY|noCfSUL+dNbP6>IK_-&OeLBhi_KbKXiC zcPK=dGsH}Bx#nZ#+@V-KIU=)%L({KHEf*^D*ruXUc$T3G+jNMRrHgjsEntQ>vnMha z3N2|6_oCVCqY#$E#3E(?b>~d zu4jf(CpLeh=gz_DKYl!l6S}g6lH6q_67dk<5(;KrH7E&p07yrm;Af>6N*j1CK33gJ zNiUT(qF$Ao=**-$aemP41SxR%8<~RW1{07=r<8|r1sur}l&usP2N06*j&&SN$c_>q zhV{FDoJ&tCGYLp?Tnh=}uy}KSb|lPp)$!R4OjHscC!!(dDyw^2qMZy`(=JTT$j$XrKwCm*uycJeS~GpNXw!x$2vxIp*(3}640H1 zDB@HBsTr&mNp%L|hb$Z|Q=f1_Fw-unOr=doc@kZFJ_Xv!f6bYNTZHbr4>&vHN`glG zC4T}pIO2@5W)n)NlsV=i(OY6m28HiRzETj4AVBQH7> zJ10{Gn)r++z7K{qu%SHkfP2R3G24LR1=B4QqZo$EoT!O_i*XbtW-?2$oIHAHs3p{9 zRoipz3DJ*^R!Zj0J5j>NM1w3xC>#ge+AJ6q#*uL-G2%gKr2Cqaq0SYTXj-Sr$lmY{ z7lT5tDaXh`LYYnm3I?B4Qnd^ZWQ0x7Zoaw-K@AQyIu^`bWr8lIf_qC4CKFw>)TIVH z;pNKAG+r+2|E(UE2+iTmHmlAKYsjF{ZQp2ifH@h)n*o*upARoPP>?D-a&8(6nlaPn@70xAN5;SrF*de zk{Xk}N|NQ4(DH?X^+8`&0y>7iLFY?}YAcCt5(xQK@gqBTcdN~F!RcW(2PapNLwOxM z@9#sJuHHC$G@@CZsF4E5LS>B2$iH|Zu`yqaYo#z zG*07riSGYyviQ_?21(l{Og)%^M{4nOvve}U>!SZVB!WR0!?L_6bhzd(ot2KNo|0I# zl@qizOg3{e^1a;&{uJ?UTBVXi^D{6lQtQMs`i*yfyv?l^>SE9bO5CFF`_ zWX8b67zqV|8q(NzC_snFV|0!{n2ud^9d6t?r7C33u$L+%6;8Gt>3gLbRDc+H_UO6& zQ1{u*Mvx%3TVJe?Mp|$?1q8aNe+JZ3jUi6}PC#!T6 zfi<=Job+y2GDg}qYIVOt-Wnb&i1lBCKL>L710D!}B~q^l>1Hd;?iN8~*MAGwsxiS0 zn4~!rD*zLVs3aYAiUS%Mod8L$b&bz<9u(i}607`Dq8z0$PVmnZKr6w@P^p@YK2l3N z?E@j%flstV#G@ow&>`V!d$EC7vx#FNv?5z%HKQ_J2FkYYqFShcQILz9Rs_#`9|qwf z>JvU-Zxot*LAUBxsaPmf<=23=+)Z|jW{C=@mnkS|Vs71GL_O^D_W1={wk_oP!7N7l zHpP%xWT4Q|Gcg1pRWIv{74RO6y-Pgi{{`NgQcm^@;S!=W%*VE9__Qnbz87@MF5PKs z8wn~gAAMv&I~ZUivYV?nmi-XJ!)k>Zkh??GYfE!`8R_xKOSUO9WJpm~ySL zv3F}`&nwq}!MelWt}_VR_*tzE#b!EA>L%q6NQnA9eCwunJP~C-Q=N#~Q`fvSVFre> z+G-#&9S1kCC}b0TUA7LL@l>iEwg042-z0c8(%&Y|(?UmG1Ova7llh%%zt-2K3S|$! zJ()_5E);OA%{;XWwwJ~XMkV=0a?~jxocsA~qqneQy#Z*rJc~oGtEljwn%UNBja7y6 zfG*FSd1KXZt!Ul|dIGw;wWhahS*5kclaG&Au8hXI!oz_j=9sRFzAZ0brtP{s85T?z zKGg`c>;d?q<2yR3oK_#>+Sl}4q*68vNY>6X(=DI9M?Ra zZWrRnjcL5g;`qfIZZCEX4-Fy3-Aj751FjZNJpu(!XcCI6_TB7BuAjv(=tOAWO?OnF zb+Luz-H#uVg!ub3ReE<^UXi`p{hRaMs{Wi=(1--SI;&-L4Qpz1N$4)$Oih}$cq%Ki zv1UfN>N0yke%zY4jqF|NVGhv-3!(u@=d-g2T2^ipUE&!iRW3DQt3G70NAkD*3{C52 zCygXALlf_gGkH$u@fH*G z``M$Mb*Rj`L;zn|t_j1PjlMpYc|Q3I^n@Y$p0~CS;WR6zAc-9=kn0@PZZ=*`0qItc z6R_%1_UUTnbeerdnQWA#oc>3=#SYqdVZ{Q=fSrC0+pQ^%X!r_q#E96`{EfJN*h?7| zu+B@sM}p)vaR`$!w3#d2P@YzG*v%C_tSDK2K?!Kq7LEBf-ZZjKjxRPlFBg;9H&4pV z$CT?t*QB=>y1K?P6?k{f&379;>1k(sC0>0&!=(U8d^3@vWt2AptZ5#5jQy~Sgz#l4)rW1SyG?EtY)Ua1;jJup&ei@kvj)}_)sI-%06G_*^24`)0$R$aqp1s z&mjpu>UDZwzr#9Hz<4t;5=E#W4VYd!{xS?c{Uj^M)qxU>wK+J5=Z71m)0-tgqn?j4o!{hW;bo$eRt9M?>^eT3-Lhv zXr@WpnTfVPhm^vuW-5*(SE-0~5TXftfCm^F9t&|!Pk&^-iNK2O-9e3G^Vm-;s(jSr z8;Bg7SY8zA6<$K=L!~i8W^2X6I*iZ|!rIzCwlk=OT216D&{H<6zF9j#U^%O`rQ>+@ zd*vq|O)mO60(b=o7Q&BFHU*z0@2FNmId3Apx$e11MOZnN!RqceuFlNy4eysJmDamC z)L>550b6Z*w^wvO2VgA{!}nq00rO^}*5l&5)X>bzn=BKHK0IPVGJ2F1x<2TKuZ&5T zFNsqrqa$o`&)JF1jeoA80K;I4eQ$qNJ$Cc$M8JA*Cd4mm2mu(9hF|0|xEK|T-6W%{ zX)Kaq*90B_wP}>mr5sjX1iUlB>qtZN2cMMBHC)YPwa|F-(IDHK3 zuxLLni`8Jl*y1Va3`MY(m369}myGzuFrb@ZveZ|64!xcO?_8f;zKIwueFm)EGX;CZ zTum*9s;-z_b8cJbx&Gf=Fj5FDY*f;YHF*n1`zi3=q^~sU$o6YbuXJ&x1v@I5>Fp~I zV@b>7A$~^_>VX5nN61GYL4VREKElw|OqhK2U5Ac^Aq_p{ug&Kde`0P()A7a+?z>wDgxm=!o2pV9ROQCiZ?Gv|8-! zsdpr}Wj_)Y%9UYYh86{sR$<&T59BPHsGS)LH%{erRT8aJtUI6#@EI*2O;@rYi>si&o z!)d&aXDP`%c!IbNN3X*NWmdL&R#-3f}!OMW4z zcR$8qO6gU{Rv{An0bppayx*_qw8!)bdHh(->Y1O%vIBWbgv-oxjpO2#XR3LQRbzs` zuAIcI6ptOd{T#gFc>|mGYen za#B%a=du3}a}Vfp8~%n9NY}=?UiS_8Kz!U~@HJhlh1;tZQ`Y-rg z?P=C0ykE#MTI)vgIOi+$UMT#L@{k2LANbinOHq`y>cEJ*ia77cp3j0b^cKsG+hC^5 zXj$7#XEeLaq^l|`{00*ROi`*^d;i{BE#4*@_OQqZB$#sC=Xv>UmZCV)26%z0y37yhfbR8h$xWn9I{XR&$!59IVH7zrvjY2XBBeY*tE#o2$?8RqM<2h%f_Fw+`yI)8S`>@TQXv43 z+CrbP#rRYu6+)}9-Bn2hUNO$Tvh>h&o66M1Cvn1?_`LnVliE@oij zH7;r764}3`I&ac(pF58g&hF{Xju4ag||c1Wv+GXt5JjmeB9KB6kEAVmJq1IgW3Wc{61VGm@L$O(8k2&qe4~Mz(>- zbmW8r7FaVh(oPI(E4MTFR6qU7^36Ys7%3S#u)M_ZXDP{~n!!!KPsNVzbQ&-ojw==? z<@p7_QaqwT)2+Numhjq3E_YtfO8FYrGM#l4(*M^UjkA{e+>smmY0EFRZ49tYRu$m6v= z#arBwhfFl$;7a}DA*Qvx;pC@6J*`Z9qOJ7Vmyu{njo<*j<4EKcBZLKPLP8B#zlmCQ2W z-P_j^2qSg$_=qi2!!Qpy31u1?B(N9gHi^;tgLy(6IuM}Y^GWEt*(GV^BAGIv<@vXx z@(&opRHmDmO3>aLZ!2JYlaWA!E9_F0h`YCGh{NdMkwm*$FAY-nd;V?%dK}Quz|UF{ zzi_#_zvMmXe9Hc$6l1V9m4%3c@28)z+zRh6_*}s58&Yu2QpJq|hniC%hlT}nA;RC_ zgav=nPpqjH}=JFNpJsbMiKmGz&+cZ`00v%=CZ1-k6kwCKo6{ptpv9spA9?%R>T*!OR8u+(0 zGhYrO$-nNkQtA$Hb3eti^(07x_ga|P8Bm@dDks;AkI5zNkc_na7TNw=k zm~UfvPrHwwxLg2}U4RkavEFs$nTCygeUvYbN13uCmKijdU9NB#7rpjghSHf(&Hhzg&&_q*|T*ei~OHxV^n z;&^LV=3RXcXqtAa)kc+Q-EDX1OqnC4em)N=fidqv?t)m{<0;WZT|4jE7-`Sx>9ts+=rMxF?%oRo>XqB{;#+~akXq( z&Dyd@e1vXoqwSDtt0m+$`SvV>h&K%2;`Xn~6}=t4O>_>#%TP5vjt2- zhkdntEuVH_mT|JY+#7lSy%E!ATWE$Ry=P74)gGDSyL=U1%q~`ZySI;JFv2Lq0J`Se zq~Etw=};F!fMm!%<dvpSQI(@Wrc3 z6ztK-!q(51y0Ax3+(kTSMUX&M!5&*(6y9q%@T;pBo?Y#x1e>zdI)5P=u?7?aAOS_dizUi*d9gk9@vfX zqlB+~PUSis$%hiIazfU{gwuf<{HQNdxpT1p*cyJ%sZMZ9#`6{!3cyC5A(?xV^Vay$P{n%ZjyYQR zCbNIQXMVr-1Is-WVipM96^B~FNGeIf9=+zv%Do|;9LivUmMWigzYWC!+jUj@Zju=2 zFmz?%+}Yu;yKOph2K`}EoP__$I%9Bv_6kEvRMa0!+Z;Dho>ff4dQ|&m{ftSG_F1h1 zW+HrY#j$RS8CXoTqJ`aF-G=sa2255t6ZD_o?I@|1R>Gw2v1Ck<<-2$_p%yzq?N)O+ zKALP7!o^dO-(I}4>J|nFzMnF0=YrF!}>Dq-sf z6I&7ZFS}Y~KO}m8yW6M0UCpbw0&EbCJ8fu_^o+we2nUW%!X>T+j6Ssn`c3S@4>NTM;; zerTYRTRqHIEfVLI+zx!l6!3@iT|Q#KF_i*VjPoqs{^b9Na-*k7t}aUcVd{!G1fRtziBJCvUR6xL5w! zPN0bWO6x^>#2#k+%G9EgJs-P=f%Gx!TJn@Z#4%>hV!Q^G*(=P+ zSz%-wQ&Q~YV{%2NNMJ_X4nng)>W=LJU5}ire{VV#%YFPO>&KR@*wR}sWn0_0tq?EM zW^)!RBezLbWu}GgQN>kgfdW;S=c`Yf`IFwcg4oKGW*W7#O?PRHqb}Usnxjv7?~ny7MqhjuTy?fqZHU-#Nct3C5HQ8Rm{vUa z&`x=X&m&!2rg(!ONO=&P`3r%DFKXP5*+mHcxf`>YssFLvR@JMryL)i|gPnEZ_d9}M zP13b}5CUx}&MLXFeIW$9WH0EzUTHW7s@_Gm|DVMIW*q|8A02ptK+)m+YWomdVM_Umk-<3w@_Cn4?y+y8ckT3;%4&YYR#P6R*un`GfGp_ z&USNkbekkL4~GCruEh;q@EV}MNo1}Lv&`!0DBSHnFE3ABZL>lA#a|E9$_Ky=XY6;t zhy;bJzh4-_>0k30;};&~Klyln2sC)MyW4sc09*|r1NEf+wAfHzRU`X$Sa5#0!1l(|N%I;Vu)D}j zTL#*JqCj|()yLWJ8s~4)#)W0a15Uz^XnB=Qj@LrK3HM9tc}!nhgLpe4_8=i9M)rA{ z4Ad?g^LCPB-L23RmW9&!;T&G%rJm076 zYW!P9>h}z*Aiw+t*vOSka1qa+5)E)*nd)uzU<2p!^!e;lZ{pRz)S;Hy!42hI(X>57 zKNrh)L->#1a$LEa#9yopFkXH}Ha%UIxi+Wf0t{!L3K%b5+X=;KD!R=dfC< zQ6WrnE@4qO_RB+S{%mEhRA05$I(#~Rl<3(h1uw}C)+;I+(r)s^uxf%&OAsHsGY*Lw zEWW!bn_63;jA5)%0@xbU1u;Akc1WiX;JaR3=a9ILX3EcjX*@A|_R9B)(`jsLH^bZJ zh)-$I6T%V8V)vcC_B^)OKdDV*hRF@frCP`CH+)Y>~05Zr28DbF@+u}PZg%)6G=RU2)exEDNI?QTwrDF^Wr(Gvw z^6$sWE|>0s-1Ge(*364<+{G~Z+{ZVa&`KPqlM#D^#46asWS>ghRkTz7!QjUXPLQ>Z zqNrQ(P#!-2;P(^>?8gWf5;l;zN+`{OK{!dshB?z`YA308(i0bd zQo_~PG#MUdKF2;H{7OYvu`xI?8ap4{XPzQ9vp+jnIEZSVdQEvxD)QzJ(kmVezdV74 zE$MjqZ6|(8q*DvPzd|cX-WohO~}lN=L>VZe%2%cqINB<+JcoGf}l0q{LuE zhkM(#zo$RVPMIk{HZ%Uv`|Xcpz(4!OlwabI^Ca2%;Y7us>BJW)GAp9u`3>`b=SJY6 zjDo{YTa_|?&GR+xZUj4gq7`_Bkk*ObbxrfF=_~%ioAU58h2aof*0slT{XQl{Jv|WQ z>vGp@`5FxJqzo@KH-KzZ&74+8e8Tcw@?`_NrhaY8^%Pgm&TJ#SR&5Cm6a?f@if-u3 z-2CPy(SOum2t@xlSlzXcy#LA-W~@H^Ek%s|Kjwk#bU$>ceax>BxM!=ZR*Bw}#uupOEUcyeVl8WL zv1cGIpTSAUy-n;VmxZ@?iXVT(A(M9OZEcOZXga@j`X-LNzQ@>X(_YxYdNAZnt z_V?A@X2vtn(2V}8+}MDXmUbFre)3KK>*Ph8_=tb=&!zXM(N3Qp(-mGq#wKQ~^Vfo~ zgl@lfn4C(%&0}~@qm$~LqviG73_hu+sClBpha@tE-=MI*I~mRr=B2S-JEtCL#gO5o zaoNFb3=Met4K{Q)2_46nj$j}NK9`(*Q&>lY+tH37lv06k@i!8 z`{%nH{rhiG5ezs7?ArbR9cChAmT4ulHGTMaK@o80Gcyc-NV+WMN9HD~ft~LEM#dby zxL6nuDYCe4x*s+*aryA1aoUY|5`Az%1HK%?O7O@glHEg5LiI8={c*S*OMpI*-5@bx z(mL`(-(7FhV$cVeSW&8hWcJ{wWqHLx&0BN6@)w$KLYv+X3zgO^lQ*xR0Qe5mS|Y}z^$Na^Pf7~aSB3KbKoBMRdXwU3bJ#F+-S+!;vOw(a?g`@D+=1kf z^lRz1*_3lIuWLbw(b1)PnkxJ8EEt@F zlbmN9{H7Cv{I7X_;!GUiU_7}yVCZDfk9T?yKV#nJJ@C52Hd6p6 z#{TjGgzuz8l;^P*8QXpxzRV-++fH9yb<>3h?_-tTTGWH}+UT^Me)iY{0SE}&jw~;a2-ll$4s!Wb~Iy)TIy$WrOk+d)RwpqSaAKRkW z-igxd@OSV}U$e8l%gJHrD72OcjW^J+iD(u08FHHY!b`jBy8)HlOEK57TT$SQ z+?BeSpP=xq8gsg46D6gZkKXQg__#4qXgkAigM`8Yd}=n&5Fpp-N_~jR2j#>9Ja#5m z+k74yNKj6;=D$JYiaqTMS)O23KYt(YF6qK4vih%q6QaQ^8oKf^>7w|5uMz$clXGm9 zWs8hiU7X(KKd^E2UH&ucf7xN9@;8H&7;l{eRuM|A*vCB?k4E*|XY26Ou|-w@OGXx# zM=V^Nb#QtAZYJ381NV0`9*L_ap*XmBS()G>>F1n>sCPFc|X_w|2FpFzi{CXfcV86E!OOq z6M3KaDOoH9pW3@N)RnDmfLE;Nr91rX`*dHj2T)A5g2LjhxA}b_5-7MGTm6k?Wh5P< zci|RH&fEIoO0Q9GyibmCWc{(#L)i@oc3!t(nSaz+#e?4`0-@H02y&#uiBJhw?F z@}qt)7>K|6up65hfSOll)Wk+@yL&0Opa(LDPkq$B6=mq-ckd^ZRb0LQ46;<##Zdm$5BW z6TBN~-if+fgZTB>%~OxAk!oG_8o|8*idCO?xJ@iMwWC=?+XHMqenZA=@SZ9ae!mV$ z+>9LHOvm9m4cClCw*h-wV*VL@~s^?49VdHDqd+bM?bwsKHYtV|Em0 z{3+{IHEF`Osr}OXcgk0uIOqRaTHKZUiCt=1l%C~hFJinz+IM_!&my2rQQXup8@XJX z)X~bvo}_yi(kF40K^n+5eaJ=!3-$w>@a$j_*Y)2*MJoy2QzosN&;!Kl4eHBv#~j?h zvpYEJffTmNpcx>;cZ86ToV=xT6Kh%?RAq{_!#^|{`N_OxE@UrJz)Z3${ZR>rGgIILe5gM2KJ_XPnzXfV>@`ok5N$0ko~cZy}#$_ zpI$iBi3wQjeIxKMuUQghU}f56^a+mad^-Io+bKaSr)FQt<@{487UsX$t38wahwoC` zm0cZ%gZ4w$`~3EI=z;Gs$)Dl(*^mN-_FBmvdyP?h5BRK>h-yvFnJtRXGQYH=0O2fh zEP%7_Mm=iwF``l*{6`BGFO2+4{F@KM58`*Hyq- z$^7K=C|7s9qjkery|gaP#_Yefb7o>-Wnpepug@eyP06&4TL50(*D>68J$1L~44;Pz zL!9AM4Aa+AyFx_0&O9b&mxV-#=rR|FILPV@*=OZvBLai*hS_nPi+{B4SN9XGW>0&{216y~9spi1V>pmr4 zR{{{O1bX-*Sh_l226`XTJ4qw(&nxRw->v#Q&DCyNp^v%WT*SUY8>6XghIv)~+-4YkOe&%nSCdnjsn=4?0KmW}MOpv9y>pL`qCWTk=lRZV zE<#Z2-J(Et0U-%Uc98^<4N+Urm#wY$%Q;r9N2{&1dRi3|>h_R`N3GV=U%hc^^;oMy zTd&1>sUf?8B(S?&k_7_UkRr7xD99y{WM`h=9|;yEJG(nGyE_}^{d(!^m7VW=zYnvs z^UU}AeV)&=b(c2dG6PHI`rQ)nZcBaGkZN+XYNt#DFj|K-t6S^ZGMZw$yl!0w2)b5# zSf=yUThMuW`WK*k-~M%Gbu*$iz8iq%m?Q$u13*VO^O-ZZ9bgjQM*;y11YDrVyv`SJ z{J|G;PS$EnrV%#tFSC9XNuhWFTe;#mDdCi*p#I}Fia9jgCEH_&vn8kstJiBMK$F1CAe)c0yR_&AtLoQELm2UPC@IxfFmM=iK8q8r|(Bbz59oMHK&pCx` zuROaeJ09qVG0WWZKja$nPrKhp*bK&>n5+hb=OB-&!R0-9aOiyV4E=>oaWwfIg|8jIQ;bute_>Fzc2eHIgVpPr9S%l?#Tve~ENl zBOtP(uH7_SG#FR~*Z#c`&WalaID1;xDw(C}JdoS0W$z;w!1+YHagN{G>Lyqej z0uv0;8rBOd=Gk*g7DZ6EdW*!wL}FlCB|Jl6WjKrB000EhIJM)H{L8v&uuGiz-!G%F z>A^O`f(K{aJ+T0KwAf81ce|>-{X>F^x@a5}1w%f^m=(>>H-@>c5deUo-6p2OghKkO z-J5n+xgxi)Leoj#9@Q}nT*8d!C6c%MgASiR;5Ip z*GVu;Qx)?I^w`A8@k!<9RZZ_)UFnK=SfSFvnYx}?jl@7DGyf7~+vW>7n*2e>%}q@c z3v~3EGy-IL)wfv4gm|{c%|DI_A*<4qEMg-_{XSrb*aeodgN&vYvcYjTLSfC%Kmv9K zpE2K-34=Ay%)v3PN1XdwwM(IVq}iSnp~#YUn}|kgO17_>-nqKU6}d$g@+2a95c+4g z0*qM>2P|Yq8q?W^; z6=d>dgl+xNwMKR*gbpV~Y}OLR+P@>l(9WDm^Ggo{rhD$o)TigWE6}CjRz0n|yRx)% zUS(-yEEH4__&4#=r4rx-0%}0EExw@RcMU;@o*=HcL}fBXYJwIRN&;`-|J3BniL@&> zS(px+`e9+ZnOu@&>^Drn_T>+C80tVt=#ckRj?@k@1v)Bj#w`59istJi6!TR8&C5~r z*u;i>@kC(H^vLo`SJ#iKN+YL|A~~4(Cjj1u_WHKD0IrvS^^GCNZ)>gJ??Quz9Gmq7QoE_-TT10n8CQ(uM@K_!I_kxXt#+8yVAP9GIQp(10HwRUp(%}tsZye3?@+p z-~}We6)ypJs4?I)tjY}uUAfqqC5{*fsh6|0I7$$40#qr!sEm0jz*r!I`=88)2Z}E9 zhW7!aIkH)ilnNv5(aSmWrcMBGvexq@l7^JqW*v1E2v99NlnDr=`Fmr~ri=zlRF!V_ zd0dg}$liZCKs5kjmU%oJBEF|F;P_7?Y+!vVX&EKH!W(y`#}W%O!xUE-DQkZNHWHb& zok)8T5mi`wy$D9NfrjWt*yM9{oF3h6lZULIK&<^5F>qS>yb?VMa>n9?05DtY=>*QK zGe1P-l&!lwuFeO<0oyn*-G>DB)`{>?<7&rD-Gej76!JGcjIub#H>b%G3ll@}?}L;4 zt0rXS3Y7v<{|#g-`b14G8dQ-p2aKz8}1wGm~3NR!Y?ebX1k20T$xf0;8d;W zGx0`KIP*hPRCMh1xH}ihEV}@#j?-L_f~T0Z7p5PiWW|cnSr^ehsB^En$HIj6G?`;z zVtQ;NHX>e0V@a8n9&3z+RH|xaGdhK6j*)Zi*BWMw4hCnxn#+_DbIfXftGwau0Q6Kn zyxw)QMjZ}=VMX~5J?GmctT2@`KSZ^=d*catd1Zqtb83_{1)Z1b9L}!f<<8dGN7`ZL zbD_Rh$TpifDoR;omN`?`?MIxKV+Nm>CUXp9up*=W)j2a_7Y(}3SNI+?I4YL77CK@Y z7^GT0l^J@j)0mu-d#}@Rz9E#=7Ec0jnT{?ZP2TWUQ#x}1C@Ko~RkjuWWkXsCK-kr+hqsWxDIcQ7(MYv>Vq7a)^qX(^=DyKWl;9hy5J z8f!nf_ih7CN}96T;@JSM(bGqiWmVmKA?R;<`e&fN;@%SNH7xW)0G`A^aJMFSK+i?@ z5_QVS=i~2WAP}daXYG^`44$LjiW}2ojYT$~fYhBiFiI*A zSv5N+h)XhULn1OzZg%v2lKT#j11O zKtCzPzuI{zgH`h*8N8&rdYO9kvc=H{D=)=qA)ttR(_)Jb-U}2SON^gn+K#k9yhwK+ zjBg$6-?1ni4!vxC(M<$Aq`M=+8~%l>cO=sExX%x~4d5R-N6Z(j{CVd5qUk#OiOY=p zicgWE^cN=RO$TKGJbUPmta0X~s72!%qb*Iuk1SrSJrE()gu_KSP?UH-6a@mmN{c}j zSw*F*Ybk&YYHbL7{qoi0&rXv`n#d)pK_(?!(@4Iw|5*aG*8)ET(e($TJ70I*<2u#= zvyQ|IQ8vG10hks+zh7Y?b6uj1-~M%HFEKx&b4&m@QDOREMor1Z2J|%~Gv*adCV}Mu zN_BTec&&LsTic;Ov&Wg+5%VpL2}adpE;-fVxY3}#4Cm9{gSUWaoO&x-S~ac95{t1o z0wORm{l7TPgsdnFSx3prR5G{?@S{xIkuH{byALvx5snG~F0|WwSC!Wkonugc0D$tE zsb4SaFM12iwT5&^cx%N2;iR?~`s{hn05BqZXCx87T2@>1puq)esH~>wdn8dS0EYqn zF=X+j7oMzf=KcK~^Wj3k=LQb-kS{RCbj4SiR*jnoMqEvL1+xAnE{kDHkNueE5&xk# z*B5f!oDO@Eff*zedKy61i9G3{-=6ann7a+?Zafn;m(>(6s_+)+svI`kTQqV;P077X z@&*uHV32)L8j$u*il8^x!{Gli$OZ!Fp5FeE;j;O~R}4z6YGy{wl(Mqg;sy{s2N+g* zb#coB>q3WrkTuTSCUH!uJAz?1IshC8lAbfua(hF=*gQpu7ZEq7mfo7}+F}L1S;S<{ z)OGtA6!)P=;9vSe&dKSpDN&kMJMUzeOLsgS3^*!bWQ>3S;ihPmHkZ{F|9(bo$%RGU zgi~|roSI^HS#9wn2cy(Y#0vo!C>_hcK78po8P4pO{1kwoVU`dI!FXjxw0M1aZSl`$ z)=V0c=()4KXCGHKzvTL|n&JB0IntQwFObyKcl9&i3kA@)`97>FIusZ z&k#jKJPiZIKr~lCQ-?lc+d;3^vzIJcBA3?`-Nr=CFmR$uz(fWfVv-&zn_sjE3i(LT zT9C4t74b!(9U?wc0hJK*%!ARW3xJf8%_=5ubN$*Q0{*hbnFBG!`uClflNVc5Mk55e z%^z@dRJtSoV|3ri&=@GZ7lfZ!rQq=Pbbaw;gvILOT1*F8S*{*d!7B3hV0 z)6G4$k@uwBAd6u`rK{^LV*YIcP0y1?Nv|&5oPOaE0B8t|J&OeY6@Xe4c8bc7nhXEJ z)jI^!HHcR z5r}>f&COlw3ptHkTF4^RTjgMii(cCfVd1mPXf)WB$8Ww0jK`_*f=ml_=3(mS@64H z{#xvY2+MhS{{g71Z4&QIfr%NVwXSUeh#$?g9R{(SdI~OHvSf*&t1HXB9Uqa6X9M`y z$bK_~%uJWBtP87FkQ1Pok%&a#8x`)~hOmOZ)|8VMk2JO z#W~6!axRpK!(hyg(|nHr&HWcK+ZQUlG!QsF z>6*$74P)~f1BKT#1|7``kw3}&*$?vhKt>~sEru7Bu1Gx?KTr4sqH)ahTWQpXUA};G z-tx7Mq|=p{A(n-l<-VZfnLayj8{Aro7ihN^3NAdfwKO+49s{Z&&J)Qh)lLx@obc|;Z2LQgbr9S+8q9@p@r*-dU z#vFghaT9gy@b(BkaM_{0Ei8<}5Yg(E~`l z4)qxzen5_*&KGp7CBg^Hw1yRg?fnP;o|ALRUbj2g9|*YYeSIGnMD2Dbh+GUR^M^23 zfRlL%*a-#S@l1~_KlFjzhw&;2Yta$%@!jz{70fb|)`VahGO{?0a7$ggx2(4KV*rl= zv9}z|05Lz4XWxIvGH-e(BFziiHcqc8u8;^XVc^+oX0|CLu35QYT~Y#IHeg_L9EdDx zTw1XNko0MBbW-K+de9eeYy{!|kesrY05FXi(*OnuAex(t zD0agabf5>jf!u#hx|4OC1hgwQ+qbKxc6>SdUZ@G*U`rws42IZ|SjfOob}8F6ooFyE zb?r~is-5zI4CNK*tRtQxJ_GoM=KAm(nKEEiefx(1DreLd|CoS>Va^h|FSG67Eh{zT z+ka`ltLmJ{hXAhf1)L9ol!X8#QxdcQz`0;LmjEa-LmDMa(VI3k#hm}kVCRa0WMz)4^oYkWOcSQsWBs+Z+;>pEOs*G#+I zcR!f#MCPAcgU}l`n{s=TH*AJwZf>n>e|$zwQBaV0ior#hHfWHY47$6uuI)K!e6t*K zfy(3V40&8#b68*&fH$;u4uEJtt!O+3k?oX)8mR%GTk4r?hkZ-cjTxq6d*VQI_oty0Xd@ zxujwUM-BiCDvNb8DQHS$kmdz#ZJ^k>>MHDv+H*4YY#555H`vp%pzR(aauGPwbsDx1 z=({a-Z5Nxwk$*vJeYmOblbmS;+y@|&84ofup6$2wO=_)c`yI6VT6KBEs%eoG9#`aI zAyEkf&j8r1bs&u#Bu1UBw|7dWa;ayzJ0lg-I_HAhrd9|XTYsNf^+C+wn1VVa#6BHnr45NyU#@!ht?o2j73{+CoxPQ%o%0Bo z0pJ~@`&Xe4L{G{>o>b-PTpX*>^3b?3pxDdo3RA+)j5zs9T@3aHy+KpPt~4)bYiq6x zdx(@$0$xCRU&vO1`P(hFc4u>4+iPhYHz|V81pAxo+85^8_;dz-0$^JjhwlOSzhxVb zZmneUAHbS>~mAmT?soWozS$-B6q82=38}-;;P1U$s zuu0M%0PGs#(60Wd@_V&&i74iBt02-;p()*PPBaXlH^$-c6<4J0VO{Bp1U;_ET)|w4 z0jHj-ps!vKJt>hg!Bg6KTlKVV)yYFtq3CLZ-=2uoV) z!cQdJK0`DwSiictuKhY9ng-%WDRs}T{QzDh!E;+|?d2`?;WuN+j+%{S-tfNGy7tHW zZMhS{d_9=|hSc5TZ3NuiugK1py70ZLykWy)E;QG4X=oUmCkkvHf-(n0hOv3lDBERVz6=A!3G_yg?q

;ybr>53$$!{CJ|?=Puk;#$PsZ&m>OCeL=_ zUCX@7vQ8uY^2;xmwock`E-}vq)A;~OpxqCA2;hBUelORKHMk6X; z4AA*BkT$GV8$gXd0L@^2UlDk7<$`bmsn6OltUy~s!)%)<*g6S72?0(JIWbTVHV?pY zUm0sR29`9oGSM0VIq=WUE$yk8U8KU9A5K%#!~!{AzJP#o0=pQPhWIf7pMuZ^#!6D? z?dZPIO@l#q86gmG*$;@%CMyalA9r=FPvtC6FN+sLI;F61vJfnypN|PAdfgfVW6zRE zdI~@#6Lx_4PX}!y@6IModuEV7E@{Nue#uKjr}? z#xn*#{wElJAwf@Qt+#DPX53eN3IwJCm;_)F7-I#Ioxxu?F9!A#&^I`%-@rfz*?3*E zH{6*q!_&y+mtQV@IKE>lh$jvFhqJ&q76Upchf*{Y0G|_~m%$xiY*a|vc<=y1>mEtZ zGbR<)R!v2!o%vT;ycp8go#RIL$)bQHDv+Rz005Th00|t7%JM&|&*?TrI*Wyc(KLjM zM%sFN94sT3{lpX*000CyNklByjMVco=^L>8=;ZV7<4>Mz|BJ*WNh2s z6&Y*hmr@H0qsgXv=2^kO10?yGhK0p&pt>l$4?xP65&@tg=x`EnL#*Q@=rPNYTO4g9 z6aZ&oVPRnwB=G%+y{El5O3`Q2X^(}48L*tWg@r}d&=?x;0q9zlCQrwUg14|3j#$pz z!ongeSi0GnORPKvm2@<+_dk$Mn=CBMg5}IDERJGUtQehdR2kD$Gjb1}#6Z;bkPy@T zl~cA3rA1(2G3>FNxrN11NKAs-j{b+9PK55j}-Tq+V{fie5)B`djje){D0FD{- z#y}vtcl0yqw8_H4Ojyp`!r~}I;piU#oCiPvG=f3iQytFN-dQ_kM5b-~D!!28Dk6F` zb_?DwB)&G2S`8K!nZ|PF78XYt4S@+K0;oFj2w#*R-QU=-);T)uM#Z2p=)3}q=b`qj zV)2v8v%5B>&ngQG^I+ z@Gw-KQ4G8-e?I!hX*A8k!n9b<+`{50q|z0s15_P409*yKZS;qncP-uQ%#G7lH;WfT z@&%kXF}Mwci`Ci^;Fk{AuC(^aEi4AGoVkU?Q3w&(`tD!h;+@dB8?mO%4f29^T+dwXx++j>eBH?46NDN*H85dAv<`@T zV87OJEi8s3mNU1UxrGIq0)=NPL@xsZzUEJf)E)x2E3$-Vf$SWmzt+ERFmh z5jg!eSXg8i!+x2a8RQQ+J^^sz5Qn#VT#+&9w#mXGoA9r4&St@P0GJCPFNH&GCh&_) z;t5Y_=Z+MPV_`Au81~K_0DOVMTS4^1S3f7>Ybr~-Udn_`78cn?L%3+9?LhAZOt=`} zY5=F}>{4c6H31D!ls|f=Z&_)CofZ~HBS(cZ2L_5YfH4oiWH34a)Oy^J*D`IFg+;c~ z5Og?g;7TTp2jdI^jbY$4CKM2(0KhQ-7{G2Y?}iXNz`P#71~7+vfu?V`yFSnCzrw;| bc<}!Lw@DCRefresh"; + } + callback(emptyData(data.draw)); + }); + } + + + /** + * Converts the first char of the given string to lower case. + * @param str the string to convert + * @returns the converted string + */ + function toLowerCaseFirst(str) { + if (str.length > 0) { + var value = str.charAt(0).toLowerCase(); + if (str.length > 1) { + value = value.concat(str.slice(1)); + } + return value; + } + } + + /** + * Returns the parent datatables whose id is given through + * the 'data-parent-table' attribute. + */ + function getParentDatatables(datatables) { + var parentTableId = getParentTableId(datatables); + // Validate if parent-table id has been specified and + // if the parent Datatable has been initialized + if (parentTableId && $.fn.dataTable.isDataTable($(parentTableId))) { + return $(parentTableId).DataTable(); + } + } + + /** + * Returns the parent table id when this datatables is a detail. + */ + function getParentTableId(datatables) { + var parentTableId = getDataValue(datatables, 'parent-table'); + if (parentTableId) { + return "#" + parentTableId; + } + } + + /** + * Returns the id of the selected row in the parent table, if any. + * @param datatables child datatables + * @returns the id of the parent datatables selected row + */ + function getParentSelectedRowId(datatables) { + var parentDatatables = getParentDatatables(datatables); + if (parentDatatables) { + var selected = parentDatatables.row({ + selected: true + }); + + if (selected.any()) { + return selected.data().id; + } + } + } + + /** + * Returns if the datatables has a related parent datatables + * @param datatables to find if it has a parent datatables + * @returns if there is a parent datatables + */ + function hasParentTable(datatables) { + var parentTableId = getParentTableId(datatables); + if (parentTableId) { + return true; + } + return false; + } + + /** + * Process the given Url to perform the following actions* + * - If the given datatables is not related to a parent one, it + * returns the given url as is. + * - If the url contains the '_PARENTID_' valuea and there is a related + * parent table, if the parent table has a selected row, its identifier + * is used to replace the '_PARENTID_' value in the given url. + * Otherwise no url is returned because it is considered as an invalid + * url. + * If the processed url is valid, the given id value is used to replace + * the '_ID_' parameter in the url + * @param datatables DataTable on which the calling should act upon + * @param url to process + * @param id (optional) identifier of the datatables row to act upon + * @returns the processed url + */ + function processUrl(datatables, url, id) { + var processedUrl = url; + // If it is a detail table, we have to get the parent id from + // the selected row in the parent table, and replace the + // _PARENTID_ variable in the given URL. + if (url && url.indexOf('_PARENTID_') > -1 && hasParentTable(datatables)) { + var parentRowId = getParentSelectedRowId(datatables); + if (parentRowId !== undefined) { + processedUrl = url.replace('_PARENTID_', parentRowId); + } else { + processedUrl = undefined; + } + } + + if (id !== undefined && processedUrl) { + processedUrl = processedUrl.replace('_ID_', id); + } + + return processedUrl; + } + + /** + * Process the given Url and the Datatables configuration to build + * an URL that contains the Datatables parameters. + * This function is useful when is necessary to make a petition + * to the server side without using AJAX. + * + * @param datatables DataTable on which the calling should act upon + * @param url to process + * @returns the processed url + */ + function getUrlWithDatatablesParams(datatables, url) { + + // Remove existing parameters + url = url.split("?")[0]; + + // Getting data from Datatables + var dtContext = datatables.context[0]; + var data = dtContext.oAjaxData; + + // Getting search value + var searchValue = data.search.value; + + // Getting order + var order = data.order; + + // Getting columns + var columns = data.columns; + + var sortParams = ""; + for (var i = 0; i < order.length; i++) { + if (order[i] !== null && order[i] !== undefined && + order[i].column !== null && order[i].column !== undefined) { + var columnName = columns[order[i].column].data; + var dir = order[i].dir; + + sortParams += "sort=" + columnName + "," + dir + "&"; + + } + } + if (sortParams.length > 0) { + sortParams = sortParams.substr(0, sortParams.length - 1); + } + + var datatablesColumns = ""; + for (i = 0; i < columns.length; i++) { + if (columns[i] !== null && columns[i] !== undefined && + columns[i].data !== null && columns[i].data !== undefined && + datatablesColumns.indexOf(columns[i].data) === -1) { + datatablesColumns += columns[i].data + ","; + } + } + if (datatablesColumns.length > 0) { + datatablesColumns = datatablesColumns.substr(0, datatablesColumns.length - 1); + datatablesColumns = "datatablesColumns=" + datatablesColumns; + } + + + // Build URL parameters + var hasParameters = false; + var params = ""; + if (searchValue != null && searchValue != "" && searchValue != undefined) { + if (hasParameters) { + params += "&"; + } + params += "search[value]=" + searchValue; + hasParameters = true; + } + + if (sortParams != null && sortParams != "" && sortParams != undefined) { + if (hasParameters) { + params += "&"; + } + params += sortParams; + hasParameters = true; + } + + if (datatablesColumns != null && datatablesColumns != "" && datatablesColumns != undefined) { + if (hasParameters) { + params += "&"; + } + params += datatablesColumns; + } + + return url + "?" + params; + + } + + /** + * Deletes the element whose id is the one in the datatables + * row whose _delete_ button has been selected, and the + * the opened modal confirmacion has been accepted + * (see modal-confirm-delete.html) + * @param datatables DataTable on which the calling should act upon + */ + function deleteElement(datatables) { + var $token = $("meta[name='_csrf']"); + var $header = $("meta[name='_csrf_header']"); + + var tableId = getTableId(datatables); + var rowId = $('#' + tableId + 'DeleteRowId').data('row-id'); + var url = getDeleteUrl(datatables, rowId); + + $.ajax({ + url: url, + type: 'DELETE', + beforeSend: function(request) { + if ($token != null && $token.length > 0 && $header != null && $header.length > 0) { + request.setRequestHeader($header.attr("content"), $token.attr("content")); + } + } + }) + .done(function(result) { + var $deleteSuccess = $('#' + tableId + 'DeleteSuccess'); + $deleteSuccess.modal(); + datatables.ajax.reload(); // Refresh Datatables + }) + .fail(function(jqXHR, status) { + var $deleteError = $('#' + tableId + 'DeleteError'); + $deleteError.modal(); + }); + } + + /** + * Returns the URL to load the data for a Datatables. The value + * is defined through a 'data-load-url' attribute in the + * Datatables table tag. + * @param datatables DataTable on which the calling should act upon + */ + function getLoadUrl(datatables) { + var url = getDataValue(datatables, 'load-url'); + return processUrl(datatables, url); + } + + /** + * Returns the URL to create a new element for the Datatables. + * The URL is processed to replace any parameters. + * + * @param datatables DataTable on which the calling should act upon + */ + function getCreateUrl(datatables) { + var url = getDataCreateUrl(datatables); + return processUrl(datatables, url); + } + + /** + * Returns the URL to create a new element for the Datatables + * as defined in the table data attributes. + * The value is defined in the Datatables table tag with a + * 'data-create-url-function' as a function which returns the URL + * or, if it is not defined, the value of the attribute + * 'data-create-url' to be used as the URL. + * + * @param datatables DataTable on which the calling should act upon + */ + function getDataCreateUrl(datatables) { + var urlFunction = getDataValue(datatables, 'create-url-function'); + var url = urlFunction ? $[urlFunction]() : getDataValue(datatables, 'create-url'); + return url; + } + + /** + * Returns the URL to show the details of an element of the Datatables. + * The value is defined in the Datatables table tag with a + * 'data-show-url' as the URL to use. + * The URL contains the text *_ID_* in the place where + * the selected element Id has to be inserted. + * + * @param datatables DataTable on which the calling should act upon + * @param id identifier of the element to edit + */ + function getShowUrl(datatables, id) { + if (id == null || id === "null") { + return null; + } + var url = getDataValue(datatables, 'show-url'); + return processUrl(datatables, url, id); + } + + /** + * Returns the URL to edit an element of the Datatables. + * The value is defined in the Datatables table tag with a + * 'data-edit-url' as the URL to use. + * The URL contains the text *_ID_* in the place where + * the selected element Id has to be inserted. + * + * @param datatables DataTable on which the calling should act upon + * @param id identifier of the element to edit + */ + function getEditUrl(datatables, id) { + var url = getDataValue(datatables, 'edit-url'); + return processUrl(datatables, url, id); + } + + /** + * Returns the URL to remove an element of the Datatables. + * The value is defined in the Datatables table tag with a + * 'data-delete-url' as the URL to use. + * The URL contains the text *_ID_* in the place where + * the selected element Id has to be inserted. + * + * @param datatables DataTable on which the calling should act upon + */ + function getDataDeleteUrl(datatables) { + var url = getDataValue(datatables, 'delete-url'); + return url; + } + + /** + * Returns the URL to remove an element of the Datatables. + * The value is defined in the Datatables table tag with a + * 'data-delete-url' as the URL to use. + * + * The URL contains the text *_ID_* in the place where + * the selected element Id has to be inserted, AND it is + * replaced with the provided id. + * + * @param datatables DataTable on which the calling should act upon + * @param id identifier of the element to remove + */ + function getDeleteUrl(datatables, id) { + var url = getDataDeleteUrl(datatables); + return processUrl(datatables, url, id); + } + + /** + * Returns the URL to remove a list of elements from the Datatables. + * The value is defined in the Datatables table tag with a + * 'data-delete-batch-url' as the URL to use. + * The URL contains the text *_ID_* in the place where + * the selected elements Ids have to be inserted. + * + * @param datatables DataTable on which the calling should act upon + */ + function getDataDeleteBatchUrl(datatables) { + var url = getDataValue(datatables, 'delete-batch-url'); + return url; + } + + /** + * Returns the URL to remove a list of elements from the Datatables. + * The value is defined in the Datatables table tag with a + * 'data-delete-batch-url' as the URL to use. + * The URL contains the text *_ID_* in the place where + * the selected elements Ids have to be inserted, and it is + * replaced with the provided idlist. + * + * @param datatables DataTable on which the calling should act upon + * @param idlist list of identifiers of the elements to remove + */ + function getDeleteBatchUrl(datatables, idlist) { + var url = getDataDeleteBatchUrl(datatables); + return processUrl(datatables, url, idlist); + } + + /** + * Returns the 'data-name' attribute value of a datatables. + * @param datatables DataTable on which the calling should act upon + * @param name the name of the data attribute to return the value of + */ + function getDataValue(datatables, name) { + var $dt = jQueryTable(datatables); + return $dt.data(name); + } + + /** + * Returns all the 'data-*' attributes of a datatables. + * @param datatables DataTable on which the calling should act upon + */ + function getAllDataValues(datatables) { + var $dt = jQueryTable(datatables); + return $dt.data(); + } + + /** + * Returns the jQuery object for the given datatables element. + */ + function jQueryTable(datatables) { + return $(datatables.table().node()); + } + + /** + * Returns the table id attribute for the given datatables element. + */ + function getTableId(datatables) { + var $jQueryTable = jQueryTable(datatables); + return $jQueryTable.attr('id'); + } + + /** + * Generates a JSON object with the necessary data for indicating a + * DataTables object that 0 elements have been found. + * This is used for details related tables, when a parent table + * row is not selected. + * + * @param draw DataTables request counter + * @returns {json} JSON object with empty data + */ + function emptyData(draw) { + return { + 'data': [], + 'draw': draw, + 'error': null, + 'recordsFiltered': '0', + 'recordsTotal': '0' + }; + } + + /** + * This function will be called when DataTables has been fully + * initialised and data loaded. + */ + function onInitComplete(oSettings, json) { + var datatables = this.DataTable(); + // Save the selected row to state + saveSelectedRowToState(datatables, oSettings, json); + // Register checkboxes + registerCheckBoxesEvents(datatables); + } + + /** + * If a row is selected, store it in the persisted table state + * so if the user goes to another page and returns, the current + * selected row is still selected. + * @param datatables the Datatables element + * @param oSettings DataTable object options + * @param json + */ + function saveSelectedRowToState(datatables, oSettings, json) { + var state = datatables.state; + datatables.on('select', function(e, dt, type, indexes) { + if (type === 'row') { + var rowSelectedId = datatables.rows(indexes).ids()[0]; + state.loaded().rowSelectedId = rowSelectedId; + state.save(); + } + }); + datatables.on('deselect', function(e, dt, type, indexes) { + if (type === 'row') { + state.loaded().rowSelectedId = undefined; + state.save(); + } + }); + if (!state.loaded()) { + oSettings.oLoadedState = datatables.state(); + } + } + + /** + * Loads a previously persisted datatables state. + * @param settings DataTable object options + * @param data DataTable object data + */ + function loadFromState(settings, data) { + var datatables = this.DataTable(); + loadSelectedRowFromState(datatables, data); + } + + /** + * Loads a previously selected row id from the persisted state. + * @param settings DataTable object options + * @param data DataTable object data + */ + function loadSelectedRowFromState(datatables, data) { + var state = datatables.state; + if (state.loaded()) { + var rowSelectedId = state.loaded().rowSelectedId; + if (rowSelectedId) { + data.rowSelectedId = rowSelectedId; + } + } + } + + /** + * Registers events for the given datatables + */ + function registerEvents(datatables) { + registerDeleteModalEvents(datatables); + registerAddModalEvents(datatables); + registerToParentEvents(datatables); + registerOnDrawFinishesEvents(datatables); + } + + /** + * This function registers all the necessary actions to execute + * when the provided datatables is completly drawed. + */ + function registerOnDrawFinishesEvents(datatables) { + // When this datatable is re-drawed, the + // following actions will be executed + datatables.on('draw.dt', function() { + // Register events to the new included checkboxes + registerCheckBoxesEvents(datatables); + }); + } + + /** + * Registers events related to the checkboxes of the given + * datatables. + */ + function registerCheckBoxesEvents(datatables) { + // Getting the table id + var tableId = getTableId(datatables); + // Obtain all checkboxes for this table + var checkBoxes = jQuery("#" + tableId + " input:checkbox"); + // Register change event for every checkbox. Every time that some checkbox + // changes, validates if the delete batch button should be enabled or not + jQuery.each(checkBoxes, function(item) { + jQuery(this).change(function() { + var rows_selected = datatables.columns().checkboxes.selected(); + if (rows_selected.join(",") === "") { + datatables.button('delete:name').disable(); + } else { + datatables.button('delete:name').enable(); + } + }); + }); + + // Re-initialize the delete batch button + var rows_selected = datatables.columns().checkboxes.selected(); + if (rows_selected.join(",") === "") { + datatables.button('delete:name').disable(); + } else { + datatables.button('delete:name').enable(); + } + + } + + /** + * Registers the events related to the delete modals, so the + * modal knows the id of the row to delete. + */ + function registerDeleteModalEvents(datatables) { + var tableId = getTableId(datatables); + var $deleteConfirm = $('#' + tableId + 'DeleteConfirm'); + + // When the delete element modal is opened, copy the current + // element id to be deleted to the 'TABLE_ID + DeleteRowId' + // element + $deleteConfirm.on('show.bs.modal', function(e) { + // Get data-row-id attribute of the clicked element + var rowId = jQuery(e.relatedTarget).data('row-id'); + // Populate the row-id data attribute in the modal + $('#' + tableId + 'DeleteRowId').data('row-id', rowId) + }); + + $('#' + tableId + 'DeleteButton').on('click', function() { + deleteElement(datatables); + }); + } + + /** + * When a table is linked to parent table, for a master detail list + * for example, it registers the row selection events in the parent + * table to update the data in the child table. + */ + function registerToParentEvents(datatables) { + var parentDatatables = getParentDatatables(datatables); + + if (parentDatatables) { + // Register to de/select events + parentDatatables.on('select', function() { + datatables.button('add:name').enable(); + datatables.ajax.reload(); + }); + + parentDatatables.on('deselect', function() { + datatables.button('add:name').disable(); + datatables.ajax.reload(); + }); + + // Register to reload finished event, needed when the selected row has + // been deleted in the parent table or any other change + parentDatatables.on('xhr.dt', function() { + datatables.ajax.reload(); + }); + + datatables.button('add:name').disable(); + } + } + + /** + * Registers the events related to the delete modals, so the + * modal knows the id of the row to delete. + */ + function registerAddModalEvents(datatables) { + var parentDatatables = getParentDatatables(datatables); + + // The add modal dialog is only used in child datatables + if (parentDatatables) { + var tableId = getTableId(datatables); + + $('#' + tableId + 'AddButton').on('click', function() { + var url = getCreateUrl(datatables); + $addForm = $('#' + tableId + 'AddForm'); + var params = $addForm.serialize(); + $.ajax({ + type: $addForm.attr('method'), + url: url, + data: params, + success: function(data) { + datatables.ajax.reload(); + } + }); + }); + } + } + + /** + * Renders the tools column, with the buttons to perform operations + * on the table rows. + */ + function renderTools(data, type, full, meta) { + var datatables = new $.fn.dataTable.Api(meta.settings); + var tableId = getTableId(datatables); + var rowId = data; + var buttons = '
'; + + var showUrl = getShowUrl(datatables, rowId); + // Check if the show will be inline + var showInline = getDataValue(datatables, 'show-inline'); + if (showUrl && !showInline) { + buttons = buttons.concat(''); + }else if(showUrl && showInline){ + buttons = buttons.concat(''); + } + + var editUrl = getEditUrl(datatables, rowId); + if (editUrl) { + buttons = buttons.concat(''); + } + + var deleteUrl = getDeleteUrl(datatables, rowId); + if (deleteUrl) { + buttons = buttons.concat(''); + } + + buttons = buttons.concat('
'); + return buttons; + } + + + /** + * This method tries to display the show view of the selected record + * expanding the selected row. + */ + function showInline(showButton, datatables, showUrl){ + var tr = showButton.closest('tr'); + var row = datatables.row( tr ); + if ( row.child.isShown() ) { + // This row is already open - close it + $(showButton).attr("aria-expanded", "false"); + row.child.hide(); + } + else { + $(showButton).attr("aria-expanded", "true"); + $.ajax({ + url: showUrl + "/inline", + dataType: 'html' + }).done(function(data) { + // Open this row + row.child(data).show(); + }).fail(function(data){ + // Show error in new row + row.child("
ERROR: An error occurred while trying to obtain more info.
").show(); + }); + } + } + + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * DataTables Advanced Extension API + * + * For complete documentation, please refer to the docs/api directory or the + * DataTables site + */ + + // Local variables to improve compression + var apiRegister = DataTable.Api.register; + + apiRegister('advanced()', function() { + return this.iterator('table', function(settings) { + DataTable.advanced.init(settings); + }); + }); + + apiRegister('advanced.getTableId()', getTableId); + apiRegister('advanced.getCreateUrl()', getCreateUrl); + apiRegister('advanced.getEditUrl()', getEditUrl) + apiRegister('advanced.getDeleteUrl()', getDeleteUrl); + apiRegister('advanced.getDeleteBatchUrl()', getDeleteBatchUrl); + apiRegister('advanced.getShowUrl()', getShowUrl); + apiRegister('advanced.getDataValue()', getDataValue); + apiRegister('advanced.processUrl()', processUrl); + + apiRegister('advanced.getCreateButton()', createButton); + apiRegister('advanced.getDeleteBatchButton()', deleteBatchButton); + apiRegister('advanced.getExportCsvButton()', exportCsvButton); + apiRegister('advanced.getExportExcelButton()', exportExcelButton); + apiRegister('advanced.getExportPdfButton()', exportPdfButton); + + apiRegister('advanced.showInline()', showInline); + + + + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Initialization + */ + + // DataTables creation - check if advanced has been defined in the options. + $(document).on('preInit.dt.dtadvanced', function(e, settings) { + if (e.namespace !== 'dt') { + return; + } + + // If the 'advanced' option has been specified, + // initialize the advanced configuration for this + // DataTable. + if (settings.oInit.advanced !== undefined) { + DataTable.advanced.init(settings); + } + + }); + + return DataTable.advanced; +})); diff --git a/roo/src/main/resources/static/public/js/datatables-defaults.js b/roo/src/main/resources/static/public/js/datatables-defaults.js new file mode 100644 index 0000000000..ab247078e4 --- /dev/null +++ b/roo/src/main/resources/static/public/js/datatables-defaults.js @@ -0,0 +1,29 @@ +// IIFE - Immediately Invoked Function Expression +(function(extendDatatables) { + + // The global jQuery object is passed as a parameter + extendDatatables(window.jQuery, window, document); + +}(function($, window, document) { + + // The $ is now locally scoped, it won't collide with other libraries + + // Listen for the jQuery ready event on the document + // READY EVENT BEGIN + $(function() { + // Initialize all datatables in current page + $('table[data-datatables="true"]').each(function(){ + // Use the advanced extension to auto-configure all + // advanced features (ajax, export, add, edit, show, delete, etc.) + $(this).DataTable({ + mark: true, + advanced: true + }); + }); + }); + + // READY EVENT END + //console.log('The DOM may not be ready'); + + // The rest of code goes here! +})); \ No newline at end of file diff --git a/roo/src/main/resources/static/public/js/datetimepicker-defaults.js b/roo/src/main/resources/static/public/js/datetimepicker-defaults.js new file mode 100644 index 0000000000..3d114d93aa --- /dev/null +++ b/roo/src/main/resources/static/public/js/datetimepicker-defaults.js @@ -0,0 +1,107 @@ +(function(jQuery) { + jQuery(document).ready(function() { + + /* + * jQuery Utilities ================================================== + */ + /** + * Select the most switchable time format for time selectod related to + * requiered format + * + * @param format + * @returns time format + */ + function getSelectorTimeFormat(format) { + // + if (format.search(/h{1,2}/) > -1 && format.search(/[aA]/) > -1) { + if (format.search(/[A]/) > -1) { + return "hh:mm A"; + } else { + return "hh:mm a"; + } + } + return "HH:mm"; + } + + // Use the same locale than MomentJs + // (set it before setDateFormater as setLocale override formatter) + jQuery.datetimepicker.setLocale(moment.locale()); + + // Define parse/format date using moment library + jQuery.datetimepicker.setDateFormatter({ + parseDate : function(date, format) { + var d = moment(date, format); + return d.isValid() ? d.toDate() : false; + }, + + formatDate : function(date, format) { + return moment(date).format(format); + } + }); + + jQuery(".datetimepicker").each(function(index) { + var $input = jQuery(this); + var options = { + step : 5 + }; + + var pattern = $input.attr("data-dateformat"); + var value = $input.attr("data-timestep"); + + if (value) { + try { + options.step = parseInt(value); + } catch (e) { + timeStep = 5; + } + } + + // FormatDate YYYY/MM/DD + value = $input.attr("data-startdate"); + if (value) { + options.startDate = value; + } + value = $input.attr("data-mindate"); + if (value) { + options.minDate = value; + } + value = $input.attr("data-maxdate"); + if (value) { + options.maxDate = value; + } + + // FormatTime : "HH:mm" + value = $input.attr("data-mintime"); + if (value) { + options.minTime = value; + } + value = $input.attr("data-maxtime"); + if (value) { + options.maxTime = value; + } + value = $input.attr("data-allowtimes"); + if (value) { + options.allowTimes = value.split(","); + } + + if (isNotEmpty(pattern)) { + var momentPattern = moment.javaToMomentDateFormat(pattern); + jQuery.extend(options, { + format : momentPattern, + datepicker : moment.isDateFormatDate(momentPattern), + timepicker : moment.isDateFormatTime(momentPattern), + formatDate : "YYYY/MM/DD", + formatTime : getSelectorTimeFormat(momentPattern) + }); + } else { + var emptyMomentPattern = moment.javaToMomentDateFormat(); + jQuery.extend(options, { + format : emptyMomentPattern, + formatDate : "YYYY/MM/DD", + formatTime : "HH:mm" + }); + } + $input.datetimepicker(options); + }); + }); +})(jQuery); \ No newline at end of file diff --git a/roo/src/main/resources/static/public/js/inputmask-defaults.js b/roo/src/main/resources/static/public/js/inputmask-defaults.js new file mode 100644 index 0000000000..f3a299bb5d --- /dev/null +++ b/roo/src/main/resources/static/public/js/inputmask-defaults.js @@ -0,0 +1,30 @@ +(function(jQuery) { + jQuery(document).ready(function() { + + /* + Inputmask.extendDefaults({ + 'autoUnmask' : true + }); + */ + + jQuery(".inputmask").each(function(index) { + var $input = jQuery(this); + var options = { + removeMaskOnSubmit : true + }; + + var pattern = $input.attr("data-inputmask-mask"); + if (pattern) { + options.mask = pattern; + } else { + var alias = $input.attr("data-inputmask-alias"); + if (alias) { + options.alias = alias; + } else { + throw "missing input initialization value on (id='"+this.id+"' name='"+this.name+"')"; + } + } + $input.inputmask(options); + }); + }); +})(jQuery); \ No newline at end of file diff --git a/roo/src/main/resources/static/public/js/main.js b/roo/src/main/resources/static/public/js/main.js new file mode 100644 index 0000000000..b704282624 --- /dev/null +++ b/roo/src/main/resources/static/public/js/main.js @@ -0,0 +1,70 @@ +(function(jQuery) { + jQuery(document).ready( + function() { + + //dropdown + jQuery('ul.dropdown-menu [data-toggle=dropdown]').on( + 'click', + function(event) { + event.preventDefault(); + event.stopPropagation(); + jQuery(this).parent().siblings() + .removeClass('open'); + jQuery(this).parent().toggleClass('open'); + }); + + //tooltip + jQuery('[data-toggle="tooltip"]').tooltip(); + + }); +})(jQuery); + +/** + * Checks if an object in JavaScript is undefined, null or empty string + * + * @param obj + * @returns {Boolean} + */ +function isEmpty(obj) { + if (jQuery.isPlainObject(obj)) { + return jQuery.isEmptyObject(obj); + } else if (jQuery.isArray(obj)) { + return 0 === obj.length; + } else if (typeof obj === "string") { + return (isNull(obj) || 0 === obj.length); + } + return isNull(obj); +} + +/** + * Checks if an object in JavaScript is undefined or null + * + * @param obj + * @returns {Boolean} + */ +function isNull(obj) { + if (typeof obj === "undefined" || obj == null) { + return true; + } + return false; +} + +/** + * Checks if an object in JavaScript is defined and not null + * + * @param obj + * @returns {Boolean} + */ +function isNotNull(obj) { + return !isNull(obj); +} + +/** + * Checks if an object in JavaScript is undefined, null or empty string + * + * @param obj + * @returns {Boolean} + */ +function isNotEmpty(obj) { + return !isEmpty(obj); +} diff --git a/roo/src/main/resources/static/public/js/moment-defaults.js b/roo/src/main/resources/static/public/js/moment-defaults.js new file mode 100644 index 0000000000..e8f4cf963a --- /dev/null +++ b/roo/src/main/resources/static/public/js/moment-defaults.js @@ -0,0 +1,88 @@ +(function(jQuery) { + + moment().format(); + + /** + * Convert Java's SimpleDateFormat to momentJS formatDate. Takes a Java + * pattern + * (http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html) + * and turns it into the expected momentJS formatDate + * (http://momentjs.com/docs/#/parsing/string-format/). + * + * @param pattern + * SimpleDateFormat pattern + * @return moment pattern (if 'pattern' is ommited return defautl + * pattern) + */ + moment.javaToMomentDateFormat = function (pattern) { + if (pattern) { + // Year + if (pattern.search(/y{3,}/g) >= 0) { + pattern = pattern.replace(/y{3,}/g, "YYYY"); // yyyy to + // yy + } else if (pattern.search(/y{2}/g) >= 0) { // yy to YY + pattern = pattern.replace(/y{2}/g, "YY"); + } + + // Day + if (pattern.search(/d{2,}/g) >= 0) { // dd to DD + pattern = pattern.replace(/d{2,}/g, "DD"); + } else if (pattern.search(/d{1}/g) >= 0) { // d to D + pattern = pattern.replace(/d{1}/g, "D"); + } else if (pattern.search(/D{1,}/g) >= 0) { // D,DD, DDD to DDD + pattern = pattern.replace(/D{1,}/g, "DDD"); + } + + // Day in week + if (pattern.search(/E{4,}/g) >= 0) { // EEEE to dddd + pattern = pattern.replace(/E{4,}/g, "dddd"); + } else if (pattern.search(/E{2,3}/g) >= 0) { // EEE to ddd + pattern = pattern.replace(/E{2,3}/g, "ddd"); + } + + // Day in week (number) + if (pattern.search(/F{1}/g) >= 0) { // F to e + pattern = pattern.replace(/F{1}/g, "e"); + } + + // week of the year + if (pattern.search(/w{1,}/g) >= 0) { // ww to WW + pattern = pattern.replace(/w{1,}/g, "WW"); + } + } else { + return "YYYY/MM/DD HH:mm"; + } + + return pattern; + } + + /** + * Informs if date format (momentJS) includes date information + * + * @param format + * string + * @returns true if !format or format contains ('YQDMdw') + */ + moment.isDateFormatDate = function (format) { + if (!format) { + return true; + } + return format.search(/[YQDMdw]/) > -1; + } + + /** + * Informs if date format (ISO 8601) includes time information + * + * @param format + * string + * @returns true if !format or format contains ('HmAasSZ') + */ + moment.isDateFormatTime = function (format) { + if (!format) { + return true; + } + return format.search(/[HhmAasSZ]/) > -1; + ; + } + +})(jQuery); diff --git a/roo/src/main/resources/static/public/js/moment-locale-es.js b/roo/src/main/resources/static/public/js/moment-locale-es.js new file mode 100644 index 0000000000..fbf94e406e --- /dev/null +++ b/roo/src/main/resources/static/public/js/moment-locale-es.js @@ -0,0 +1,73 @@ +//! moment.js locale configuration +//! locale : spanish (es) +//! author : Julio Napurí : https://github.com/julionc + +// ROO-3814 Remove var "monthsShortDot" and "if" that assigns it. + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['moment'], factory) : + factory(global.moment) +}(this, function (moment) { 'use strict'; + + var es = moment.defineLocale('es', { + months : 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split('_'), + monthsShort : 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'), + monthsParseExact : true, + weekdays : 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'), + weekdaysShort : 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'), + weekdaysMin : 'do_lu_ma_mi_ju_vi_sá'.split('_'), + weekdaysParseExact : true, + longDateFormat : { + LT : 'H:mm', + LTS : 'H:mm:ss', + L : 'DD/MM/YYYY', + LL : 'D [de] MMMM [de] YYYY', + LLL : 'D [de] MMMM [de] YYYY H:mm', + LLLL : 'dddd, D [de] MMMM [de] YYYY H:mm' + }, + calendar : { + sameDay : function () { + return '[hoy a la' + ((this.hours() !== 1) ? 's' : '') + '] LT'; + }, + nextDay : function () { + return '[mañana a la' + ((this.hours() !== 1) ? 's' : '') + '] LT'; + }, + nextWeek : function () { + return 'dddd [a la' + ((this.hours() !== 1) ? 's' : '') + '] LT'; + }, + lastDay : function () { + return '[ayer a la' + ((this.hours() !== 1) ? 's' : '') + '] LT'; + }, + lastWeek : function () { + return '[el] dddd [pasado a la' + ((this.hours() !== 1) ? 's' : '') + '] LT'; + }, + sameElse : 'L' + }, + relativeTime : { + future : 'en %s', + past : 'hace %s', + s : 'unos segundos', + m : 'un minuto', + mm : '%d minutos', + h : 'una hora', + hh : '%d horas', + d : 'un día', + dd : '%d días', + M : 'un mes', + MM : '%d meses', + y : 'un año', + yy : '%d años' + }, + ordinalParse : /\d{1,2}º/, + ordinal : '%dº', + week : { + dow : 1, // Monday is the first day of the week. + doy : 4 // The week that contains Jan 4th is the first week of the year. + } + }); + + return es; + +})); \ No newline at end of file diff --git a/roo/src/main/resources/static/public/js/select2-defaults.js b/roo/src/main/resources/static/public/js/select2-defaults.js new file mode 100644 index 0000000000..6e45799dfb --- /dev/null +++ b/roo/src/main/resources/static/public/js/select2-defaults.js @@ -0,0 +1,49 @@ +// IIFE - Immediately Invoked Function Expression +(function(extendSelect2) { + + // The global jQuery object is passed as a parameter + extendSelect2(window.jQuery, window, document); + +}(function($, window, document) { + + // The $ is now locally scoped, it won't collide with other libraries + + // Listen for the jQuery ready event on the document + // READY EVENT BEGIN + $(function() { + + // The DOM is ready! + //console.log('The DOM is ready'); + + // Init select simple + $('.dropdown-select-simple').select2({ + debug : false, + theme : 'bootstrap', + allowClear : true, + }); + + // Init select with AJAX search + $('.dropdown-select-ajax').select2({ + debug : false, + theme : 'bootstrap', + allowClear : true, + ajax : { + data : function(params) { + // set search params names to match with GlobalSearch and + // Pageable arguments + var query = { + 'search[value]' : params.term, + 'page' : params.page - 1, + }; + return query; + } + } + }); + }); + + // READY EVENT END + //console.log('The DOM may not be ready'); + + // The rest of code goes here! +})); + diff --git a/roo/src/main/resources/static/public/js/validation-defaults.js b/roo/src/main/resources/static/public/js/validation-defaults.js new file mode 100644 index 0000000000..a92da83d58 --- /dev/null +++ b/roo/src/main/resources/static/public/js/validation-defaults.js @@ -0,0 +1,233 @@ +(function(jQuery) { + jQuery(document) + .ready( + function() { + + function getLanguage() { + // usamos el locale de momentjs + moment.locale(); + } + + jQuery.validator.setDefaults({ + ignoreTitle : true + }); + + /** + * Initialize jQuery Validator methods + */ + /** + * Date/time validation with format + * + * @name jQuery.validator.methods.number + * @type Boolean + */ + jQuery.validator.addMethod("dateformat", function(value, element, params) { + if (this.optional(element)) { + return true; + } + if (params === "DEFAULT") { + return moment(value, moment.javaToMomentDateFormat()).isValid(); + } else { + return moment(value, params, true).isValid(); + } + }, "Please enter a correct date/time"); + + /** + * Replaces the standard number validation to support number with comma. + * + * @name jQuery.validator.methods.number + * @type Boolean + */ + jQuery.validator.methods.number = function(value, element) { + return this.optional(element) || Inputmask.isValid(value, { + alias : "numeric" + }); + }; + + /** + * Replaces the standar min validation to support number with comma. + * + * @name jQuery.validator.methods.number + * @type Boolean + */ + jQuery.validator.methods.min = function(value, element, params) { + var localizedValue = Inputmask.unmask(value, { + alias : "numeric", + unmaskAsNumber : true + }); + return this.optional(element) || localizedValue >= params; + }; + + /** + * Replaces the standar max validation to support number with comma. + * + * @name jQuery.validator.methods.number + * @type Boolean + */ + jQuery.validator.methods.max = function(value, element, params) { + var localizedValue = Inputmask.unmask(value, { + alias : "numeric", + unmaskAsNumber : true + }); + return this.optional(element) || localizedValue <= params; + }; + + /** + * Replaces the standard range validation to support number with comma. + * + * @name jQuery.validator.methods.number + * @type Boolean + */ + jQuery.validator.methods.range = function(value, element, params) { + var localizedValue = Inputmask.unmask(value, { + alias : "numeric", + unmaskAsNumber : true + }); + return this.optional(element) + || (localizedValue >= params[0] && localizedValue <= params[1]); + }; + + /** + * Return true if the field value matches the given RegExp + * + * The difference between `pattern` method is than this one + * use parameter as expression literally (`pattern` includes + * prefix and suffix). + */ + $.validator.addMethod("regexp", function(value, element, param) { + if (this.optional(element)) { + return true; + } + if (typeof param === "string") { + param = new RegExp(param); + } + return param.test(value); + }, "Invalid format."); + + /** + * jquery.inputmask rule: delegates on inputmask control + */ + jQuery.validator.addMethod("inputmask", function(value, element, params) { + if (this.optional(element)) { + return true; + } + var $inputmask = jQuery(element); + return $inputmask.inputmask && $inputmask.inputmask("isComplete"); + }, "Please enter a valid value."); + + // Form validation init + jQuery("form.validate") + .each( + function(index) { + var $form = $(this); + + // see options at https://jqueryvalidation.org/documentation/ + $form + .validate({ + highlight : function(element) { + var $element = $(element); + // añadir marca error + $element.closest('.form-group').addClass('has-error has-feedback'); + // añadir span con icono + var iconSpan = $element.parent().find('span.form-control-feedback'); + if (!iconSpan.length) { + $element + .after(''); + } + }, + unhighlight : function(element) { + var $element = $(element); + // añadir marca error + $element.closest('.form-group').removeClass('has-error has-feedback'); + // quitar span con icono + $element.parent().find('span.form-control-feedback.glyphicon-remove') + .remove(); + // limpiar errores + if ($element.parent('.input-group').length) { + $element.parent('.input-group').parent().find( + 'span.help-block[id=' + $element.attr('id') + '-error]') + .remove(); + + } else { + $element.parent().find( + 'span.help-block[id=' + $element.attr('id') + '-error]') + .remove(); + } + }, + errorElement : 'span', + errorClass : 'help-block', + errorPlacement : function(error, element) { + var $element = $(element); + + var $previousErrors; + if ($element.parent('.input-group').length) { + $previousErrors = $element.parent('.input-group').parent() + .find('span.help-block[id=' + $element.attr('id') + '-error]'); + } else { + $previousErrors = $element.parent().find( + 'span.help-block[id=' + $element.attr('id') + '-error]'); + } + + if ($previousErrors.length === 1) { + $previousErrors.replaceWith(error); + } else { + if ($previousErrors.length > 1) { + // mas de un error limpiamos + $previousErrors.remove(); + } + // insertar error + if ($element.parent('.input-group').length) { + error.insertAfter($element.parent()); + } else { + $element.parent().append(error); + } + } + + } + }); + + // Iterate form inputs to set validation rules and messages + $form.find("input,textarea,select").each(function(index) { + var $input = $(this); + var data = $input.data(); + + // this input validation rules + var rules = { + required : data.required, + messages : {} + }; + if (isNotNull(data.missing)) { + rules.messages.required = data.missing + } + if (isNotNull(data.invalid)) { + rules.messages.remote = data.invalid + } + + // inputmaks + if ($input.hasClass("inputmask")) { + rules["inputmask"] = true; + if (isNotNull(data.invalid)) { + rules.messages.inputmask = data.invalid + } + } + // datetimepicker + if (isNotEmpty(data.dateformat)) { + rules["dateformat"] = moment.javaToMomentDateFormat(data.dateformat); + if (isNotNull(data.invalid)) { + rules.messages.dateformat = data.invalid + } + // datetimepicker without format + } else if ($input.hasClass("datetimepicker")) { + rules["dateformat"] = "DEFAULT"; + if (isNotNull(data.invalid)) { + rules.messages.dateformat = data.invalid + } + } + + $input.rules("add", rules); + }); + }); + }); +})(jQuery); + + diff --git a/roo/src/main/resources/templates/accessibility.html b/roo/src/main/resources/templates/accessibility.html new file mode 100644 index 0000000000..f486646c65 --- /dev/null +++ b/roo/src/main/resources/templates/accessibility.html @@ -0,0 +1,61 @@ + + + + + Accessibility - Spring Roo application + + + + +
+ +
+ + +
+ + +
+ +
+
+

Accessibility

+

Accessibility policy application

+

+ Spring Roo Application is committed to ensuring the accessibility of + its web content to people with disabilities. All of the content on + our website will meet + W3C WAI's Web Content Accessibility Guidelines 2.0, Level AA + conformance. Any issues should be reported to + springroo@disid.com. + The technologies that is depended to access the accessible content are HTML, CSS and Javascript. +

+
+
+ +
+ +
+ + +
+ +
+ + + + + +
+
+ + + + \ No newline at end of file diff --git a/roo/src/main/resources/templates/books/create.html b/roo/src/main/resources/templates/books/create.html new file mode 100644 index 0000000000..dabe34da10 --- /dev/null +++ b/roo/src/main/resources/templates/books/create.html @@ -0,0 +1,153 @@ + + + + + + Create Book - roo - SpringRoo Application + + + + + + + + +
+ +
+ + +
+ + +
+
+ +

Create Book

+ + +
+ +
+ Book data + +
+ +
+ + + Error message. +
+
+
+ +
+ + + Error message. +
+
+
+ +
+ + + Error message. +
+
+
+ + + +
+
+ + +
+
+ +
+ + +
+ +
+ +
+ + +
+ +
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
+ + + + \ No newline at end of file diff --git a/roo/src/main/resources/templates/books/edit.html b/roo/src/main/resources/templates/books/edit.html new file mode 100644 index 0000000000..e6d39a44be --- /dev/null +++ b/roo/src/main/resources/templates/books/edit.html @@ -0,0 +1,171 @@ + + + + + + Edit Book - Spring Roo application + + + + + + + + + +
+ +
+ + +
+ + +
+ +
+ +

Edit Book

+ + +
+ + + + +
+

Warning! This record has been updated by an other user.

+
+ +
+
+ +
+
+ +
+ + +
+ Book data + +
+ +
+ + + Error message. +
+
+
+ +
+ + + Error message. +
+
+
+ +
+ + + Error message. +
+
+
+ + + +
+
+
+ +
+
+ +
+
+
+ +
+ + +
+ +
+ +
+ + +
+ +
+ + + + + +
+ + + + + + + + + + + + + + + + + +
+ + + + diff --git a/roo/src/main/resources/templates/books/list.html b/roo/src/main/resources/templates/books/list.html new file mode 100644 index 0000000000..d7e1fe24ca --- /dev/null +++ b/roo/src/main/resources/templates/books/list.html @@ -0,0 +1,98 @@ + + + + + + List Book - roo - SpringRoo Application + + + + + +
+ +
+ + +
+ + +
+
+ +

Books

+ + +
+ + + + + + + + + + + + + + + + + + + + +
Book List
titleauthorisbnTools
titleauthorisbnTools
+ +
+
+
+
+
+
+
+ + + +
+ +
+ +
+ +
+ +
+ + +
+ +
+ + + + + +
+
+ + + + diff --git a/roo/src/main/resources/templates/books/show.html b/roo/src/main/resources/templates/books/show.html new file mode 100644 index 0000000000..92311c36f5 --- /dev/null +++ b/roo/src/main/resources/templates/books/show.html @@ -0,0 +1,86 @@ + + + + + Show Book - Spring Roo application + + + + + +
+ +
+ + +
+ + +
+
+ + +

Show Book

+ +
+

Book data

+
    +
  • + title + titleValue +
  • +
  • + author + authorValue +
  • +
  • + isbn + isbnValue +
  • +
+
+ + +
+
+ Edit +
+
+ + +
+ +
+
+ +
+ +
+ + +
+ +
+ + + + + +
+
+ + + + diff --git a/roo/src/main/resources/templates/books/showInline.html b/roo/src/main/resources/templates/books/showInline.html new file mode 100644 index 0000000000..9fbc62cf26 --- /dev/null +++ b/roo/src/main/resources/templates/books/showInline.html @@ -0,0 +1,67 @@ + + + + + Show Book - Spring Roo application + + + + + +
+ +
+ + +
+ + +
+
+ + +
+
    +
  • + title + titleValue +
  • +
  • + author + authorValue +
  • +
  • + isbn + isbnValue +
  • +
+
+ +
+ +
+ +
+ + +
+ +
+ + + + + +
+
+ + + + diff --git a/roo/src/main/resources/templates/error.html b/roo/src/main/resources/templates/error.html new file mode 100644 index 0000000000..7559baba22 --- /dev/null +++ b/roo/src/main/resources/templates/error.html @@ -0,0 +1,40 @@ + + + + + Error - Spring Roo application + + + + + +
+

Error Page

+ +
+ + +
+ + +
+ +
+ +
+ +
+ +
+ + \ No newline at end of file diff --git a/roo/src/main/resources/templates/fragments/footer.html b/roo/src/main/resources/templates/fragments/footer.html new file mode 100644 index 0000000000..38999c1b75 --- /dev/null +++ b/roo/src/main/resources/templates/fragments/footer.html @@ -0,0 +1,51 @@ + + + + + Footer + + + + + + + diff --git a/roo/src/main/resources/templates/fragments/header.html b/roo/src/main/resources/templates/fragments/header.html new file mode 100644 index 0000000000..8421d6d77f --- /dev/null +++ b/roo/src/main/resources/templates/fragments/header.html @@ -0,0 +1,21 @@ + + + + + Header + + + +
+
+
+

roo

+

Hello, this is your home page.

+
+
+
+ + \ No newline at end of file diff --git a/roo/src/main/resources/templates/fragments/js/datatables-locale.js b/roo/src/main/resources/templates/fragments/js/datatables-locale.js new file mode 100644 index 0000000000..ad1a32955d --- /dev/null +++ b/roo/src/main/resources/templates/fragments/js/datatables-locale.js @@ -0,0 +1,67 @@ +// IIFE - Immediately Invoked Function Expression +(function(translateDatatables) { + + // The global jQuery object is passed as a parameter + translateDatatables(window.jQuery, window, document); + +}(function($, window, document) { + + // The $ is now locally scoped, it won't collide with other libraries + + // Listen for the jQuery ready event on the document + // READY EVENT BEGIN + $(function() { + + // The DOM is ready! + //console.log('The DOM is ready'); + + // Set datatables defaults + $.extend($.fn.dataTable.defaults, { + // multilingual texts definitions, adding some to those already provided + // default by Datatables + 'language': { + 'buttons': { + 'add': /*[[#{label_datatables_add}]]*/ 'Add', + 'delete': /*[[#{label_datatables_delete}]]*/ 'Delete', + 'colvis': /*[[#{label_datatables_columns}]]*/ 'Columns', + 'pageLength': /*[[#{label_datatables_showRows}]]*/ 'Show %d rows' + }, + 'select': { + 'rows': { + _: /*[[#{label_datatables_selectedRows}]]*/ '%d selected rows', + 0: "", + 1: /*[[#{label_datatables_selectedRow}]]*/ '1 selected row' + } + }, + 'decimal': /*[[#{label_datatables_decimal}]]*/ '.', + 'emptyTable': /*[[#{label_datatables_emptyTable}]]*/ 'No data available in table', + 'info': /*[[#{label_datatables_info}]]*/ 'Showing _START_ to _END_ of _TOTAL_ entries', + 'infoEmpty': /*[[#{label_datatables_infoEmpty}]]*/ 'Showing 0 to 0 of 0 entries', + 'infoFiltered': /*[[#{label_datatables_infoFiltered}]]*/ '(filtered from _MAX_ total entries)', + 'infoPostFix': /*[[#{label_datatables_infoPostFix}]]*/ '', + 'thousands': /*[[#{label_datatables_thousands}]]*/ '', + 'lengthMenu': /*[[#{label_datatables_lengthMenu}]]*/ 'Show _MENU_ entries', + 'loadingRecords': /*[[#{label_datatables_loadingRecords}]]*/ 'Loading...', + 'processing': /*[[#{label_datatables_processing}]]*/ 'Processing...', + 'search': /*[[#{label_datatables_search}]]*/ 'Search:', + 'zeroRecords': /*[[#{label_datatables_zeroRecords}]]*/ ' No matching records found', + 'paginate': { + 'first': /*[[#{label_datatables_first}]]*/ 'First', + 'last': /*[[#{label_datatables_last}]]*/ 'Last', + 'next': /*[[#{label_datatables_next}]]*/ 'Next', + 'previous': /*[[#{label_datatables_previous}]]*/ 'Previous' + }, + 'aria': { + 'sortAscending': /*[[#{label_datatables_sortAscending}]]*/ ': activate to sort column ascending', + 'sortDescending': /*[[#{label_datatables_sortDescending}]]*/ ': activate to sort column descending' + } + } + }); + + }); + + // READY EVENT END + //console.log('The DOM may not be ready'); + + // The rest of code goes here! +})); diff --git a/roo/src/main/resources/templates/fragments/js/datatables.html b/roo/src/main/resources/templates/fragments/js/datatables.html new file mode 100644 index 0000000000..5993777eb3 --- /dev/null +++ b/roo/src/main/resources/templates/fragments/js/datatables.html @@ -0,0 +1,78 @@ + + + + + Session info + + + + + +
+ + +
+

Error

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+ + \ No newline at end of file diff --git a/roo/src/main/resources/templates/fragments/js/select2.html b/roo/src/main/resources/templates/fragments/js/select2.html new file mode 100644 index 0000000000..ce2c6bd7a4 --- /dev/null +++ b/roo/src/main/resources/templates/fragments/js/select2.html @@ -0,0 +1,16 @@ + + + + +Select2 + + +
+ + + +
+ + diff --git a/roo/src/main/resources/templates/fragments/languages.html b/roo/src/main/resources/templates/fragments/languages.html new file mode 100644 index 0000000000..248f9eaea0 --- /dev/null +++ b/roo/src/main/resources/templates/fragments/languages.html @@ -0,0 +1,33 @@ + + + + + Languages + + + + + + + \ No newline at end of file diff --git a/roo/src/main/resources/templates/fragments/menu.html b/roo/src/main/resources/templates/fragments/menu.html new file mode 100644 index 0000000000..86143276e1 --- /dev/null +++ b/roo/src/main/resources/templates/fragments/menu.html @@ -0,0 +1,107 @@ + + + + + Page menu + + + + + + + + + + diff --git a/roo/src/main/resources/templates/fragments/modal-confirm-delete-batch.html b/roo/src/main/resources/templates/fragments/modal-confirm-delete-batch.html new file mode 100644 index 0000000000..3ce82279ac --- /dev/null +++ b/roo/src/main/resources/templates/fragments/modal-confirm-delete-batch.html @@ -0,0 +1,34 @@ + + + + +Modal + + + +
+
+
+

Going to remove the selected elements

+
+
+ + +
+
+ +
+

Removed selected items

+
+ +
+

Error deleting selected items.

+
+ +
+ + \ No newline at end of file diff --git a/roo/src/main/resources/templates/fragments/modal-confirm-delete.html b/roo/src/main/resources/templates/fragments/modal-confirm-delete.html new file mode 100644 index 0000000000..658c04054f --- /dev/null +++ b/roo/src/main/resources/templates/fragments/modal-confirm-delete.html @@ -0,0 +1,35 @@ + + + + +Modal + + + +
+
+
+

Going to remove the selected + element

+
+
+ + +
+
+ +
+

1 Removed item

+
+ +
+

Error deleting selected item.

+
+ +
+ + \ No newline at end of file diff --git a/roo/src/main/resources/templates/fragments/modal-confirm.html b/roo/src/main/resources/templates/fragments/modal-confirm.html new file mode 100644 index 0000000000..7d0fb8d4f8 --- /dev/null +++ b/roo/src/main/resources/templates/fragments/modal-confirm.html @@ -0,0 +1,32 @@ + + + + +Modal + + + +
+
+
+ +

Going to remove the selected + element

+ +
+
+ 100% Complete +
+
+
+ +
+
+ + \ No newline at end of file diff --git a/roo/src/main/resources/templates/fragments/modal-export-empty-error.html b/roo/src/main/resources/templates/fragments/modal-export-empty-error.html new file mode 100644 index 0000000000..dd84d8fe9e --- /dev/null +++ b/roo/src/main/resources/templates/fragments/modal-export-empty-error.html @@ -0,0 +1,20 @@ + + + + +Modal + + + +
+ +
+

No records found to generate a report.

+
+ +
+ + \ No newline at end of file diff --git a/roo/src/main/resources/templates/fragments/modal.html b/roo/src/main/resources/templates/fragments/modal.html new file mode 100644 index 0000000000..55e13158a4 --- /dev/null +++ b/roo/src/main/resources/templates/fragments/modal.html @@ -0,0 +1,27 @@ + + + + + Modal + + + + + + \ No newline at end of file diff --git a/roo/src/main/resources/templates/fragments/session-links.html b/roo/src/main/resources/templates/fragments/session-links.html new file mode 100644 index 0000000000..786a7a4aec --- /dev/null +++ b/roo/src/main/resources/templates/fragments/session-links.html @@ -0,0 +1,46 @@ + + + + + Session info + + + + + + + + + \ No newline at end of file diff --git a/roo/src/main/resources/templates/index.html b/roo/src/main/resources/templates/index.html new file mode 100644 index 0000000000..e4aac5e9a7 --- /dev/null +++ b/roo/src/main/resources/templates/index.html @@ -0,0 +1,150 @@ + + + + + Welcome - SpringRoo Application + + + + + +
+ +
+ + +
+ + +
+
+ +
+ +
+ +
+

With Roo you can easily build full Java applications in minutes.

+

Spring Roo is a next-generation rapid application development tool for Java developers. + It focuses on higher productivity, stock-standard Java APIs, high usability, avoiding engineering trade-offs and + facilitating easy Roo removal. +

+

Thanks for your interest in Spring Roo!

+
+
+
+ + +
+ + +
+
+
+
+ +
+
+

Doc

+ If you are looking for Reference Documentation you can get it here. +
+
+
+
+ + +
+
+
+
+ +
+
+

Project Page

+ All the info about Spring Roo development. +
+
+
+
+ + +
+
+
+
+ +
+
+

Support

+ If you have any question about the project, + you can check it. +
+
+
+
+ + +
+
+
+
+ +
+
+

Code

+ Known, modify and redistribute the source code. +
+
+
+
+ +
+ + +
+
+ +
+
+ +
+
+ +
+ + +
+ +
+ + + + + +
+
+ + + + diff --git a/roo/src/main/resources/templates/layouts/default-layout-no-menu.html b/roo/src/main/resources/templates/layouts/default-layout-no-menu.html new file mode 100644 index 0000000000..40d502800f --- /dev/null +++ b/roo/src/main/resources/templates/layouts/default-layout-no-menu.html @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + Spring Roo application + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ +

Sample static body for direct display of the template

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent + scelerisque neque neque, ac elementum quam dignissim interdum. Phasellus et + placerat elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + Praesent scelerisque neque neque, ac elementum quam dignissim interdum. + Phasellus et placerat elit.

+
+ +
+ +
+ + © 2016 Spring Roo (footer for example for direct display of the template) +
+ + + + + + + + + + + + + + + + + + +
+ +
+ + + + + diff --git a/roo/src/main/resources/templates/layouts/default-layout.html b/roo/src/main/resources/templates/layouts/default-layout.html new file mode 100644 index 0000000000..ba597630d4 --- /dev/null +++ b/roo/src/main/resources/templates/layouts/default-layout.html @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + Spring Roo application + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ +

Sample static body for direct display of the template

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent + scelerisque neque neque, ac elementum quam dignissim interdum. Phasellus et + placerat elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + Praesent scelerisque neque neque, ac elementum quam dignissim interdum. + Phasellus et placerat elit.

+
+ +
+ +
+ + © 2016 Spring Roo (footer for example for direct display of the template) +
+ + + + + + + + + + + + + + + + + + + +
+
+ +
+ +
+ + + + + diff --git a/roo/src/main/resources/templates/layouts/default-list-layout.html b/roo/src/main/resources/templates/layouts/default-list-layout.html new file mode 100644 index 0000000000..23f5002241 --- /dev/null +++ b/roo/src/main/resources/templates/layouts/default-list-layout.html @@ -0,0 +1,121 @@ + + + + + + + + + + + + + + + + Spring Roo application + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ +

Sample static body for direct display of the template

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent + scelerisque neque neque, ac elementum quam dignissim interdum. Phasellus et + placerat elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + Praesent scelerisque neque neque, ac elementum quam dignissim interdum. + Phasellus et placerat elit.

+
+ +
+ +
+ + © 2016 Spring Roo (footer for example for direct display of the template) +
+ + + + + + + + + + + + + + + + + + + +
+
+ +
+ +
+ + + + + diff --git a/roo/src/main/resources/templates/layouts/home-layout.html b/roo/src/main/resources/templates/layouts/home-layout.html new file mode 100644 index 0000000000..7c1d2f7c5c --- /dev/null +++ b/roo/src/main/resources/templates/layouts/home-layout.html @@ -0,0 +1,104 @@ + + + + + + + + + + + + + + Spring Roo application + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +

Sample page header for direct display of the template

+
+
+ +
+ +
+ +

Sample static body for direct display of the template

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent + scelerisque neque neque, ac elementum quam dignissim interdum. Phasellus et + placerat elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. + Praesent scelerisque neque neque, ac elementum quam dignissim interdum. + Phasellus et placerat elit.

+
+ +
+ +
+ + © 2016 Spring Roo (footer for example for direct display of the template) +
+ + + + + + + + + + + + + + + + + + +
+ +
+ + + + + diff --git a/roo/src/main/resources/templates/login.html b/roo/src/main/resources/templates/login.html new file mode 100644 index 0000000000..627b165049 --- /dev/null +++ b/roo/src/main/resources/templates/login.html @@ -0,0 +1,108 @@ + + + + + Login- Spring Roo application + + + + + +
+ +
+ + +
+ + +
+
+ +
+
+

Login

+
+
+
+
+ Enter your login and password + + + + + + +
+ +
+ + +
+
+
+ +
+ + +
+
+
+
+ + +
+
+
+
+
+
+
+
+ +
+ + +
+ +
+ + + + + +
+
+ + + + diff --git a/roo/src/main/resources/templates/reports/export_default.jrxml b/roo/src/main/resources/templates/reports/export_default.jrxml new file mode 100644 index 0000000000..3540f690de --- /dev/null +++ b/roo/src/main/resources/templates/reports/export_default.jrxml @@ -0,0 +1,59 @@ + + + + + + + + + + <band height="94"> + <frame> + <reportElement mode="Opaque" x="-20" y="-20" width="595" height="92" backcolor="#054571" uuid="96670a12-0a0b-4503-8309-d43c1bd41fa5"/> + <staticText> + <reportElement x="20" y="20" width="234" height="43" forecolor="#FFFFFF" uuid="887580cd-50ec-499d-ba19-3971bf3a5552"/> + <textElement> + <font size="34" isBold="true"/> + </textElement> + <text><![CDATA[Export]]></text> + </staticText> + </frame> + <staticText> + <reportElement x="206" y="74" width="100" height="20" uuid="6efdf519-1cda-447d-bb04-5dfca2ae8aed"/> + <text><![CDATA[]]></text> + </staticText> + </band> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 18903e239dd1962d1db3f1abb5adbc2ae76cc235 Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 18 Apr 2017 11:21:57 +0100 Subject: [PATCH 004/391] Moved project from roo to spring-roo folder. --- {roo => spring-roo}/pom.xml | 0 .../src/main/java/com/baeldung/RooApplication.java | 0 ...ingDataJpaDetachableRepositoryConfiguration.java | 0 ...onfiguration_Roo_Jpa_Repository_Configuration.aj | 0 .../com/baeldung/config/WebMvcConfiguration.java | 0 ...MvcConfiguration_Roo_ThymeleafUIConfiguration.aj | 0 .../WebMvcConfiguration_Roo_WebMvcConfiguration.aj | 0 .../baeldung/config/jackson/DomainModelModule.java | 0 .../DomainModelModule_Roo_DomainModelModule.aj | 0 .../src/main/java/com/baeldung/domain/Book.java | 0 .../java/com/baeldung/domain/Book_Roo_Equals.aj | 0 .../java/com/baeldung/domain/Book_Roo_JavaBean.aj | 0 .../java/com/baeldung/domain/Book_Roo_Jpa_Entity.aj | 0 .../java/com/baeldung/domain/Book_Roo_ToString.aj | 0 .../com/baeldung/repository/BookRepository.java | 0 .../baeldung/repository/BookRepositoryCustom.java | 0 ...ookRepositoryCustom_Roo_Jpa_Repository_Custom.aj | 0 .../com/baeldung/repository/BookRepositoryImpl.java | 0 .../BookRepositoryImpl_Roo_Jpa_Repository_Impl.aj | 0 .../repository/BookRepository_Roo_Jpa_Repository.aj | 0 .../java/com/baeldung/service/api/BookService.java | 0 .../baeldung/service/api/BookService_Roo_Service.aj | 0 .../com/baeldung/service/impl/BookServiceImpl.java | 0 .../impl/BookServiceImpl_Roo_Service_Impl.aj | 0 .../java/com/baeldung/web/BookDeserializer.java | 0 .../web/BookDeserializer_Roo_EntityDeserializer.aj | 0 .../main/java/com/baeldung/web/BookJsonMixin.java | 0 .../web/BooksCollectionThymeleafController.java | 0 ...sCollectionThymeleafController_Roo_Controller.aj | 0 ...ksCollectionThymeleafController_Roo_Thymeleaf.aj | 0 .../web/BooksCollectionThymeleafLinkFactory.java | 0 ...ollectionThymeleafLinkFactory_Roo_LinkFactory.aj | 0 .../baeldung/web/BooksItemThymeleafController.java | 0 .../BooksItemThymeleafController_Roo_Controller.aj | 0 .../BooksItemThymeleafController_Roo_Thymeleaf.aj | 0 .../baeldung/web/BooksItemThymeleafLinkFactory.java | 0 ...BooksItemThymeleafLinkFactory_Roo_LinkFactory.aj | 0 .../main/java/com/baeldung/web/MainController.java | 0 .../MainController_Roo_Thymeleaf_MainController.aj | 0 .../web/reports/ExportingErrorException.java | 0 .../web/reports/JasperReportsCsvExporter.java | 0 .../baeldung/web/reports/JasperReportsExporter.java | 0 .../web/reports/JasperReportsPdfExporter.java | 0 .../web/reports/JasperReportsXlsExporter.java | 0 .../src/main/resources/application-dev.properties | 0 .../src/main/resources/application.properties | 0 {roo => spring-roo}/src/main/resources/banner.txt | 0 .../src/main/resources/messages.properties | 0 .../main/resources/static/public/css/springroo.css | 0 .../src/main/resources/static/public/css/theme.css | 0 .../static/public/fonts/fontawesome-webfont.eot | Bin .../static/public/fonts/fontawesome-webfont.svg | 0 .../static/public/fonts/fontawesome-webfont.ttf | Bin .../static/public/fonts/fontawesome-webfont.woff | Bin .../static/public/fonts/fontawesome-webfont.woff2 | Bin .../public/fonts/glyphicons-halflings-regular.eot | Bin .../public/fonts/glyphicons-halflings-regular.svg | 0 .../public/fonts/glyphicons-halflings-regular.ttf | Bin .../public/fonts/glyphicons-halflings-regular.woff | Bin .../public/fonts/glyphicons-halflings-regular.woff2 | Bin .../static/public/img/apple-touch-icon.png | Bin .../src/main/resources/static/public/img/en.png | Bin .../src/main/resources/static/public/img/es.png | Bin .../main/resources/static/public/img/favicon.ico | Bin .../src/main/resources/static/public/img/geo.png | Bin .../src/main/resources/static/public/img/logo.png | Bin .../main/resources/static/public/img/owasp_logo.png | Bin .../resources/static/public/img/springroo-logo.png | Bin .../static/public/js/dataTables.advanced.js | 0 .../static/public/js/datatables-defaults.js | 0 .../static/public/js/datetimepicker-defaults.js | 0 .../static/public/js/inputmask-defaults.js | 0 .../src/main/resources/static/public/js/main.js | 0 .../resources/static/public/js/moment-defaults.js | 0 .../resources/static/public/js/moment-locale-es.js | 0 .../resources/static/public/js/select2-defaults.js | 0 .../static/public/js/validation-defaults.js | 0 .../src/main/resources/templates/accessibility.html | 0 .../src/main/resources/templates/books/create.html | 0 .../src/main/resources/templates/books/edit.html | 0 .../src/main/resources/templates/books/list.html | 0 .../src/main/resources/templates/books/show.html | 0 .../main/resources/templates/books/showInline.html | 0 .../src/main/resources/templates/error.html | 0 .../main/resources/templates/fragments/footer.html | 0 .../main/resources/templates/fragments/header.html | 0 .../templates/fragments/js/datatables-locale.js | 0 .../templates/fragments/js/datatables.html | 0 .../resources/templates/fragments/js/select2.html | 0 .../resources/templates/fragments/languages.html | 0 .../main/resources/templates/fragments/menu.html | 0 .../fragments/modal-confirm-delete-batch.html | 0 .../templates/fragments/modal-confirm-delete.html | 0 .../templates/fragments/modal-confirm.html | 0 .../fragments/modal-export-empty-error.html | 0 .../main/resources/templates/fragments/modal.html | 0 .../templates/fragments/session-links.html | 0 .../src/main/resources/templates/index.html | 0 .../templates/layouts/default-layout-no-menu.html | 0 .../resources/templates/layouts/default-layout.html | 0 .../templates/layouts/default-list-layout.html | 0 .../resources/templates/layouts/home-layout.html | 0 .../src/main/resources/templates/login.html | 0 .../templates/reports/export_default.jrxml | 0 104 files changed, 0 insertions(+), 0 deletions(-) rename {roo => spring-roo}/pom.xml (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/RooApplication.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration_Roo_Jpa_Repository_Configuration.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/config/WebMvcConfiguration.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_ThymeleafUIConfiguration.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_WebMvcConfiguration.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/config/jackson/DomainModelModule.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/config/jackson/DomainModelModule_Roo_DomainModelModule.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/domain/Book.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/domain/Book_Roo_Equals.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/domain/Book_Roo_JavaBean.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/domain/Book_Roo_Jpa_Entity.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/domain/Book_Roo_ToString.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/repository/BookRepository.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/repository/BookRepositoryCustom.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/repository/BookRepositoryCustom_Roo_Jpa_Repository_Custom.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/repository/BookRepositoryImpl.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/repository/BookRepositoryImpl_Roo_Jpa_Repository_Impl.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/repository/BookRepository_Roo_Jpa_Repository.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/service/api/BookService.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/service/api/BookService_Roo_Service.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/service/impl/BookServiceImpl.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/service/impl/BookServiceImpl_Roo_Service_Impl.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/BookDeserializer.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/BookDeserializer_Roo_EntityDeserializer.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/BookJsonMixin.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/BooksCollectionThymeleafController.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Controller.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Thymeleaf.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory_Roo_LinkFactory.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/BooksItemThymeleafController.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Controller.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Thymeleaf.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory_Roo_LinkFactory.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/MainController.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/MainController_Roo_Thymeleaf_MainController.aj (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/reports/ExportingErrorException.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/reports/JasperReportsCsvExporter.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/reports/JasperReportsExporter.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/reports/JasperReportsPdfExporter.java (100%) rename {roo => spring-roo}/src/main/java/com/baeldung/web/reports/JasperReportsXlsExporter.java (100%) rename {roo => spring-roo}/src/main/resources/application-dev.properties (100%) rename {roo => spring-roo}/src/main/resources/application.properties (100%) rename {roo => spring-roo}/src/main/resources/banner.txt (100%) rename {roo => spring-roo}/src/main/resources/messages.properties (100%) rename {roo => spring-roo}/src/main/resources/static/public/css/springroo.css (100%) rename {roo => spring-roo}/src/main/resources/static/public/css/theme.css (100%) rename {roo => spring-roo}/src/main/resources/static/public/fonts/fontawesome-webfont.eot (100%) rename {roo => spring-roo}/src/main/resources/static/public/fonts/fontawesome-webfont.svg (100%) rename {roo => spring-roo}/src/main/resources/static/public/fonts/fontawesome-webfont.ttf (100%) rename {roo => spring-roo}/src/main/resources/static/public/fonts/fontawesome-webfont.woff (100%) rename {roo => spring-roo}/src/main/resources/static/public/fonts/fontawesome-webfont.woff2 (100%) rename {roo => spring-roo}/src/main/resources/static/public/fonts/glyphicons-halflings-regular.eot (100%) rename {roo => spring-roo}/src/main/resources/static/public/fonts/glyphicons-halflings-regular.svg (100%) rename {roo => spring-roo}/src/main/resources/static/public/fonts/glyphicons-halflings-regular.ttf (100%) rename {roo => spring-roo}/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff (100%) rename {roo => spring-roo}/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff2 (100%) rename {roo => spring-roo}/src/main/resources/static/public/img/apple-touch-icon.png (100%) rename {roo => spring-roo}/src/main/resources/static/public/img/en.png (100%) rename {roo => spring-roo}/src/main/resources/static/public/img/es.png (100%) rename {roo => spring-roo}/src/main/resources/static/public/img/favicon.ico (100%) rename {roo => spring-roo}/src/main/resources/static/public/img/geo.png (100%) rename {roo => spring-roo}/src/main/resources/static/public/img/logo.png (100%) rename {roo => spring-roo}/src/main/resources/static/public/img/owasp_logo.png (100%) rename {roo => spring-roo}/src/main/resources/static/public/img/springroo-logo.png (100%) rename {roo => spring-roo}/src/main/resources/static/public/js/dataTables.advanced.js (100%) rename {roo => spring-roo}/src/main/resources/static/public/js/datatables-defaults.js (100%) rename {roo => spring-roo}/src/main/resources/static/public/js/datetimepicker-defaults.js (100%) rename {roo => spring-roo}/src/main/resources/static/public/js/inputmask-defaults.js (100%) rename {roo => spring-roo}/src/main/resources/static/public/js/main.js (100%) rename {roo => spring-roo}/src/main/resources/static/public/js/moment-defaults.js (100%) rename {roo => spring-roo}/src/main/resources/static/public/js/moment-locale-es.js (100%) rename {roo => spring-roo}/src/main/resources/static/public/js/select2-defaults.js (100%) rename {roo => spring-roo}/src/main/resources/static/public/js/validation-defaults.js (100%) rename {roo => spring-roo}/src/main/resources/templates/accessibility.html (100%) rename {roo => spring-roo}/src/main/resources/templates/books/create.html (100%) rename {roo => spring-roo}/src/main/resources/templates/books/edit.html (100%) rename {roo => spring-roo}/src/main/resources/templates/books/list.html (100%) rename {roo => spring-roo}/src/main/resources/templates/books/show.html (100%) rename {roo => spring-roo}/src/main/resources/templates/books/showInline.html (100%) rename {roo => spring-roo}/src/main/resources/templates/error.html (100%) rename {roo => spring-roo}/src/main/resources/templates/fragments/footer.html (100%) rename {roo => spring-roo}/src/main/resources/templates/fragments/header.html (100%) rename {roo => spring-roo}/src/main/resources/templates/fragments/js/datatables-locale.js (100%) rename {roo => spring-roo}/src/main/resources/templates/fragments/js/datatables.html (100%) rename {roo => spring-roo}/src/main/resources/templates/fragments/js/select2.html (100%) rename {roo => spring-roo}/src/main/resources/templates/fragments/languages.html (100%) rename {roo => spring-roo}/src/main/resources/templates/fragments/menu.html (100%) rename {roo => spring-roo}/src/main/resources/templates/fragments/modal-confirm-delete-batch.html (100%) rename {roo => spring-roo}/src/main/resources/templates/fragments/modal-confirm-delete.html (100%) rename {roo => spring-roo}/src/main/resources/templates/fragments/modal-confirm.html (100%) rename {roo => spring-roo}/src/main/resources/templates/fragments/modal-export-empty-error.html (100%) rename {roo => spring-roo}/src/main/resources/templates/fragments/modal.html (100%) rename {roo => spring-roo}/src/main/resources/templates/fragments/session-links.html (100%) rename {roo => spring-roo}/src/main/resources/templates/index.html (100%) rename {roo => spring-roo}/src/main/resources/templates/layouts/default-layout-no-menu.html (100%) rename {roo => spring-roo}/src/main/resources/templates/layouts/default-layout.html (100%) rename {roo => spring-roo}/src/main/resources/templates/layouts/default-list-layout.html (100%) rename {roo => spring-roo}/src/main/resources/templates/layouts/home-layout.html (100%) rename {roo => spring-roo}/src/main/resources/templates/login.html (100%) rename {roo => spring-roo}/src/main/resources/templates/reports/export_default.jrxml (100%) diff --git a/roo/pom.xml b/spring-roo/pom.xml similarity index 100% rename from roo/pom.xml rename to spring-roo/pom.xml diff --git a/roo/src/main/java/com/baeldung/RooApplication.java b/spring-roo/src/main/java/com/baeldung/RooApplication.java similarity index 100% rename from roo/src/main/java/com/baeldung/RooApplication.java rename to spring-roo/src/main/java/com/baeldung/RooApplication.java diff --git a/roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration.java b/spring-roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration.java similarity index 100% rename from roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration.java rename to spring-roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration.java diff --git a/roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration_Roo_Jpa_Repository_Configuration.aj b/spring-roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration_Roo_Jpa_Repository_Configuration.aj similarity index 100% rename from roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration_Roo_Jpa_Repository_Configuration.aj rename to spring-roo/src/main/java/com/baeldung/config/SpringDataJpaDetachableRepositoryConfiguration_Roo_Jpa_Repository_Configuration.aj diff --git a/roo/src/main/java/com/baeldung/config/WebMvcConfiguration.java b/spring-roo/src/main/java/com/baeldung/config/WebMvcConfiguration.java similarity index 100% rename from roo/src/main/java/com/baeldung/config/WebMvcConfiguration.java rename to spring-roo/src/main/java/com/baeldung/config/WebMvcConfiguration.java diff --git a/roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_ThymeleafUIConfiguration.aj b/spring-roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_ThymeleafUIConfiguration.aj similarity index 100% rename from roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_ThymeleafUIConfiguration.aj rename to spring-roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_ThymeleafUIConfiguration.aj diff --git a/roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_WebMvcConfiguration.aj b/spring-roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_WebMvcConfiguration.aj similarity index 100% rename from roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_WebMvcConfiguration.aj rename to spring-roo/src/main/java/com/baeldung/config/WebMvcConfiguration_Roo_WebMvcConfiguration.aj diff --git a/roo/src/main/java/com/baeldung/config/jackson/DomainModelModule.java b/spring-roo/src/main/java/com/baeldung/config/jackson/DomainModelModule.java similarity index 100% rename from roo/src/main/java/com/baeldung/config/jackson/DomainModelModule.java rename to spring-roo/src/main/java/com/baeldung/config/jackson/DomainModelModule.java diff --git a/roo/src/main/java/com/baeldung/config/jackson/DomainModelModule_Roo_DomainModelModule.aj b/spring-roo/src/main/java/com/baeldung/config/jackson/DomainModelModule_Roo_DomainModelModule.aj similarity index 100% rename from roo/src/main/java/com/baeldung/config/jackson/DomainModelModule_Roo_DomainModelModule.aj rename to spring-roo/src/main/java/com/baeldung/config/jackson/DomainModelModule_Roo_DomainModelModule.aj diff --git a/roo/src/main/java/com/baeldung/domain/Book.java b/spring-roo/src/main/java/com/baeldung/domain/Book.java similarity index 100% rename from roo/src/main/java/com/baeldung/domain/Book.java rename to spring-roo/src/main/java/com/baeldung/domain/Book.java diff --git a/roo/src/main/java/com/baeldung/domain/Book_Roo_Equals.aj b/spring-roo/src/main/java/com/baeldung/domain/Book_Roo_Equals.aj similarity index 100% rename from roo/src/main/java/com/baeldung/domain/Book_Roo_Equals.aj rename to spring-roo/src/main/java/com/baeldung/domain/Book_Roo_Equals.aj diff --git a/roo/src/main/java/com/baeldung/domain/Book_Roo_JavaBean.aj b/spring-roo/src/main/java/com/baeldung/domain/Book_Roo_JavaBean.aj similarity index 100% rename from roo/src/main/java/com/baeldung/domain/Book_Roo_JavaBean.aj rename to spring-roo/src/main/java/com/baeldung/domain/Book_Roo_JavaBean.aj diff --git a/roo/src/main/java/com/baeldung/domain/Book_Roo_Jpa_Entity.aj b/spring-roo/src/main/java/com/baeldung/domain/Book_Roo_Jpa_Entity.aj similarity index 100% rename from roo/src/main/java/com/baeldung/domain/Book_Roo_Jpa_Entity.aj rename to spring-roo/src/main/java/com/baeldung/domain/Book_Roo_Jpa_Entity.aj diff --git a/roo/src/main/java/com/baeldung/domain/Book_Roo_ToString.aj b/spring-roo/src/main/java/com/baeldung/domain/Book_Roo_ToString.aj similarity index 100% rename from roo/src/main/java/com/baeldung/domain/Book_Roo_ToString.aj rename to spring-roo/src/main/java/com/baeldung/domain/Book_Roo_ToString.aj diff --git a/roo/src/main/java/com/baeldung/repository/BookRepository.java b/spring-roo/src/main/java/com/baeldung/repository/BookRepository.java similarity index 100% rename from roo/src/main/java/com/baeldung/repository/BookRepository.java rename to spring-roo/src/main/java/com/baeldung/repository/BookRepository.java diff --git a/roo/src/main/java/com/baeldung/repository/BookRepositoryCustom.java b/spring-roo/src/main/java/com/baeldung/repository/BookRepositoryCustom.java similarity index 100% rename from roo/src/main/java/com/baeldung/repository/BookRepositoryCustom.java rename to spring-roo/src/main/java/com/baeldung/repository/BookRepositoryCustom.java diff --git a/roo/src/main/java/com/baeldung/repository/BookRepositoryCustom_Roo_Jpa_Repository_Custom.aj b/spring-roo/src/main/java/com/baeldung/repository/BookRepositoryCustom_Roo_Jpa_Repository_Custom.aj similarity index 100% rename from roo/src/main/java/com/baeldung/repository/BookRepositoryCustom_Roo_Jpa_Repository_Custom.aj rename to spring-roo/src/main/java/com/baeldung/repository/BookRepositoryCustom_Roo_Jpa_Repository_Custom.aj diff --git a/roo/src/main/java/com/baeldung/repository/BookRepositoryImpl.java b/spring-roo/src/main/java/com/baeldung/repository/BookRepositoryImpl.java similarity index 100% rename from roo/src/main/java/com/baeldung/repository/BookRepositoryImpl.java rename to spring-roo/src/main/java/com/baeldung/repository/BookRepositoryImpl.java diff --git a/roo/src/main/java/com/baeldung/repository/BookRepositoryImpl_Roo_Jpa_Repository_Impl.aj b/spring-roo/src/main/java/com/baeldung/repository/BookRepositoryImpl_Roo_Jpa_Repository_Impl.aj similarity index 100% rename from roo/src/main/java/com/baeldung/repository/BookRepositoryImpl_Roo_Jpa_Repository_Impl.aj rename to spring-roo/src/main/java/com/baeldung/repository/BookRepositoryImpl_Roo_Jpa_Repository_Impl.aj diff --git a/roo/src/main/java/com/baeldung/repository/BookRepository_Roo_Jpa_Repository.aj b/spring-roo/src/main/java/com/baeldung/repository/BookRepository_Roo_Jpa_Repository.aj similarity index 100% rename from roo/src/main/java/com/baeldung/repository/BookRepository_Roo_Jpa_Repository.aj rename to spring-roo/src/main/java/com/baeldung/repository/BookRepository_Roo_Jpa_Repository.aj diff --git a/roo/src/main/java/com/baeldung/service/api/BookService.java b/spring-roo/src/main/java/com/baeldung/service/api/BookService.java similarity index 100% rename from roo/src/main/java/com/baeldung/service/api/BookService.java rename to spring-roo/src/main/java/com/baeldung/service/api/BookService.java diff --git a/roo/src/main/java/com/baeldung/service/api/BookService_Roo_Service.aj b/spring-roo/src/main/java/com/baeldung/service/api/BookService_Roo_Service.aj similarity index 100% rename from roo/src/main/java/com/baeldung/service/api/BookService_Roo_Service.aj rename to spring-roo/src/main/java/com/baeldung/service/api/BookService_Roo_Service.aj diff --git a/roo/src/main/java/com/baeldung/service/impl/BookServiceImpl.java b/spring-roo/src/main/java/com/baeldung/service/impl/BookServiceImpl.java similarity index 100% rename from roo/src/main/java/com/baeldung/service/impl/BookServiceImpl.java rename to spring-roo/src/main/java/com/baeldung/service/impl/BookServiceImpl.java diff --git a/roo/src/main/java/com/baeldung/service/impl/BookServiceImpl_Roo_Service_Impl.aj b/spring-roo/src/main/java/com/baeldung/service/impl/BookServiceImpl_Roo_Service_Impl.aj similarity index 100% rename from roo/src/main/java/com/baeldung/service/impl/BookServiceImpl_Roo_Service_Impl.aj rename to spring-roo/src/main/java/com/baeldung/service/impl/BookServiceImpl_Roo_Service_Impl.aj diff --git a/roo/src/main/java/com/baeldung/web/BookDeserializer.java b/spring-roo/src/main/java/com/baeldung/web/BookDeserializer.java similarity index 100% rename from roo/src/main/java/com/baeldung/web/BookDeserializer.java rename to spring-roo/src/main/java/com/baeldung/web/BookDeserializer.java diff --git a/roo/src/main/java/com/baeldung/web/BookDeserializer_Roo_EntityDeserializer.aj b/spring-roo/src/main/java/com/baeldung/web/BookDeserializer_Roo_EntityDeserializer.aj similarity index 100% rename from roo/src/main/java/com/baeldung/web/BookDeserializer_Roo_EntityDeserializer.aj rename to spring-roo/src/main/java/com/baeldung/web/BookDeserializer_Roo_EntityDeserializer.aj diff --git a/roo/src/main/java/com/baeldung/web/BookJsonMixin.java b/spring-roo/src/main/java/com/baeldung/web/BookJsonMixin.java similarity index 100% rename from roo/src/main/java/com/baeldung/web/BookJsonMixin.java rename to spring-roo/src/main/java/com/baeldung/web/BookJsonMixin.java diff --git a/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController.java b/spring-roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController.java similarity index 100% rename from roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController.java rename to spring-roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController.java diff --git a/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Controller.aj b/spring-roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Controller.aj similarity index 100% rename from roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Controller.aj rename to spring-roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Controller.aj diff --git a/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Thymeleaf.aj b/spring-roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Thymeleaf.aj similarity index 100% rename from roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Thymeleaf.aj rename to spring-roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafController_Roo_Thymeleaf.aj diff --git a/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory.java b/spring-roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory.java similarity index 100% rename from roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory.java rename to spring-roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory.java diff --git a/roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory_Roo_LinkFactory.aj b/spring-roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory_Roo_LinkFactory.aj similarity index 100% rename from roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory_Roo_LinkFactory.aj rename to spring-roo/src/main/java/com/baeldung/web/BooksCollectionThymeleafLinkFactory_Roo_LinkFactory.aj diff --git a/roo/src/main/java/com/baeldung/web/BooksItemThymeleafController.java b/spring-roo/src/main/java/com/baeldung/web/BooksItemThymeleafController.java similarity index 100% rename from roo/src/main/java/com/baeldung/web/BooksItemThymeleafController.java rename to spring-roo/src/main/java/com/baeldung/web/BooksItemThymeleafController.java diff --git a/roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Controller.aj b/spring-roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Controller.aj similarity index 100% rename from roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Controller.aj rename to spring-roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Controller.aj diff --git a/roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Thymeleaf.aj b/spring-roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Thymeleaf.aj similarity index 100% rename from roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Thymeleaf.aj rename to spring-roo/src/main/java/com/baeldung/web/BooksItemThymeleafController_Roo_Thymeleaf.aj diff --git a/roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory.java b/spring-roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory.java similarity index 100% rename from roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory.java rename to spring-roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory.java diff --git a/roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory_Roo_LinkFactory.aj b/spring-roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory_Roo_LinkFactory.aj similarity index 100% rename from roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory_Roo_LinkFactory.aj rename to spring-roo/src/main/java/com/baeldung/web/BooksItemThymeleafLinkFactory_Roo_LinkFactory.aj diff --git a/roo/src/main/java/com/baeldung/web/MainController.java b/spring-roo/src/main/java/com/baeldung/web/MainController.java similarity index 100% rename from roo/src/main/java/com/baeldung/web/MainController.java rename to spring-roo/src/main/java/com/baeldung/web/MainController.java diff --git a/roo/src/main/java/com/baeldung/web/MainController_Roo_Thymeleaf_MainController.aj b/spring-roo/src/main/java/com/baeldung/web/MainController_Roo_Thymeleaf_MainController.aj similarity index 100% rename from roo/src/main/java/com/baeldung/web/MainController_Roo_Thymeleaf_MainController.aj rename to spring-roo/src/main/java/com/baeldung/web/MainController_Roo_Thymeleaf_MainController.aj diff --git a/roo/src/main/java/com/baeldung/web/reports/ExportingErrorException.java b/spring-roo/src/main/java/com/baeldung/web/reports/ExportingErrorException.java similarity index 100% rename from roo/src/main/java/com/baeldung/web/reports/ExportingErrorException.java rename to spring-roo/src/main/java/com/baeldung/web/reports/ExportingErrorException.java diff --git a/roo/src/main/java/com/baeldung/web/reports/JasperReportsCsvExporter.java b/spring-roo/src/main/java/com/baeldung/web/reports/JasperReportsCsvExporter.java similarity index 100% rename from roo/src/main/java/com/baeldung/web/reports/JasperReportsCsvExporter.java rename to spring-roo/src/main/java/com/baeldung/web/reports/JasperReportsCsvExporter.java diff --git a/roo/src/main/java/com/baeldung/web/reports/JasperReportsExporter.java b/spring-roo/src/main/java/com/baeldung/web/reports/JasperReportsExporter.java similarity index 100% rename from roo/src/main/java/com/baeldung/web/reports/JasperReportsExporter.java rename to spring-roo/src/main/java/com/baeldung/web/reports/JasperReportsExporter.java diff --git a/roo/src/main/java/com/baeldung/web/reports/JasperReportsPdfExporter.java b/spring-roo/src/main/java/com/baeldung/web/reports/JasperReportsPdfExporter.java similarity index 100% rename from roo/src/main/java/com/baeldung/web/reports/JasperReportsPdfExporter.java rename to spring-roo/src/main/java/com/baeldung/web/reports/JasperReportsPdfExporter.java diff --git a/roo/src/main/java/com/baeldung/web/reports/JasperReportsXlsExporter.java b/spring-roo/src/main/java/com/baeldung/web/reports/JasperReportsXlsExporter.java similarity index 100% rename from roo/src/main/java/com/baeldung/web/reports/JasperReportsXlsExporter.java rename to spring-roo/src/main/java/com/baeldung/web/reports/JasperReportsXlsExporter.java diff --git a/roo/src/main/resources/application-dev.properties b/spring-roo/src/main/resources/application-dev.properties similarity index 100% rename from roo/src/main/resources/application-dev.properties rename to spring-roo/src/main/resources/application-dev.properties diff --git a/roo/src/main/resources/application.properties b/spring-roo/src/main/resources/application.properties similarity index 100% rename from roo/src/main/resources/application.properties rename to spring-roo/src/main/resources/application.properties diff --git a/roo/src/main/resources/banner.txt b/spring-roo/src/main/resources/banner.txt similarity index 100% rename from roo/src/main/resources/banner.txt rename to spring-roo/src/main/resources/banner.txt diff --git a/roo/src/main/resources/messages.properties b/spring-roo/src/main/resources/messages.properties similarity index 100% rename from roo/src/main/resources/messages.properties rename to spring-roo/src/main/resources/messages.properties diff --git a/roo/src/main/resources/static/public/css/springroo.css b/spring-roo/src/main/resources/static/public/css/springroo.css similarity index 100% rename from roo/src/main/resources/static/public/css/springroo.css rename to spring-roo/src/main/resources/static/public/css/springroo.css diff --git a/roo/src/main/resources/static/public/css/theme.css b/spring-roo/src/main/resources/static/public/css/theme.css similarity index 100% rename from roo/src/main/resources/static/public/css/theme.css rename to spring-roo/src/main/resources/static/public/css/theme.css diff --git a/roo/src/main/resources/static/public/fonts/fontawesome-webfont.eot b/spring-roo/src/main/resources/static/public/fonts/fontawesome-webfont.eot similarity index 100% rename from roo/src/main/resources/static/public/fonts/fontawesome-webfont.eot rename to spring-roo/src/main/resources/static/public/fonts/fontawesome-webfont.eot diff --git a/roo/src/main/resources/static/public/fonts/fontawesome-webfont.svg b/spring-roo/src/main/resources/static/public/fonts/fontawesome-webfont.svg similarity index 100% rename from roo/src/main/resources/static/public/fonts/fontawesome-webfont.svg rename to spring-roo/src/main/resources/static/public/fonts/fontawesome-webfont.svg diff --git a/roo/src/main/resources/static/public/fonts/fontawesome-webfont.ttf b/spring-roo/src/main/resources/static/public/fonts/fontawesome-webfont.ttf similarity index 100% rename from roo/src/main/resources/static/public/fonts/fontawesome-webfont.ttf rename to spring-roo/src/main/resources/static/public/fonts/fontawesome-webfont.ttf diff --git a/roo/src/main/resources/static/public/fonts/fontawesome-webfont.woff b/spring-roo/src/main/resources/static/public/fonts/fontawesome-webfont.woff similarity index 100% rename from roo/src/main/resources/static/public/fonts/fontawesome-webfont.woff rename to spring-roo/src/main/resources/static/public/fonts/fontawesome-webfont.woff diff --git a/roo/src/main/resources/static/public/fonts/fontawesome-webfont.woff2 b/spring-roo/src/main/resources/static/public/fonts/fontawesome-webfont.woff2 similarity index 100% rename from roo/src/main/resources/static/public/fonts/fontawesome-webfont.woff2 rename to spring-roo/src/main/resources/static/public/fonts/fontawesome-webfont.woff2 diff --git a/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.eot b/spring-roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.eot similarity index 100% rename from roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.eot rename to spring-roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.eot diff --git a/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.svg b/spring-roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.svg similarity index 100% rename from roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.svg rename to spring-roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.svg diff --git a/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.ttf b/spring-roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.ttf similarity index 100% rename from roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.ttf rename to spring-roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.ttf diff --git a/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff b/spring-roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff similarity index 100% rename from roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff rename to spring-roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff diff --git a/roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff2 b/spring-roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff2 similarity index 100% rename from roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff2 rename to spring-roo/src/main/resources/static/public/fonts/glyphicons-halflings-regular.woff2 diff --git a/roo/src/main/resources/static/public/img/apple-touch-icon.png b/spring-roo/src/main/resources/static/public/img/apple-touch-icon.png similarity index 100% rename from roo/src/main/resources/static/public/img/apple-touch-icon.png rename to spring-roo/src/main/resources/static/public/img/apple-touch-icon.png diff --git a/roo/src/main/resources/static/public/img/en.png b/spring-roo/src/main/resources/static/public/img/en.png similarity index 100% rename from roo/src/main/resources/static/public/img/en.png rename to spring-roo/src/main/resources/static/public/img/en.png diff --git a/roo/src/main/resources/static/public/img/es.png b/spring-roo/src/main/resources/static/public/img/es.png similarity index 100% rename from roo/src/main/resources/static/public/img/es.png rename to spring-roo/src/main/resources/static/public/img/es.png diff --git a/roo/src/main/resources/static/public/img/favicon.ico b/spring-roo/src/main/resources/static/public/img/favicon.ico similarity index 100% rename from roo/src/main/resources/static/public/img/favicon.ico rename to spring-roo/src/main/resources/static/public/img/favicon.ico diff --git a/roo/src/main/resources/static/public/img/geo.png b/spring-roo/src/main/resources/static/public/img/geo.png similarity index 100% rename from roo/src/main/resources/static/public/img/geo.png rename to spring-roo/src/main/resources/static/public/img/geo.png diff --git a/roo/src/main/resources/static/public/img/logo.png b/spring-roo/src/main/resources/static/public/img/logo.png similarity index 100% rename from roo/src/main/resources/static/public/img/logo.png rename to spring-roo/src/main/resources/static/public/img/logo.png diff --git a/roo/src/main/resources/static/public/img/owasp_logo.png b/spring-roo/src/main/resources/static/public/img/owasp_logo.png similarity index 100% rename from roo/src/main/resources/static/public/img/owasp_logo.png rename to spring-roo/src/main/resources/static/public/img/owasp_logo.png diff --git a/roo/src/main/resources/static/public/img/springroo-logo.png b/spring-roo/src/main/resources/static/public/img/springroo-logo.png similarity index 100% rename from roo/src/main/resources/static/public/img/springroo-logo.png rename to spring-roo/src/main/resources/static/public/img/springroo-logo.png diff --git a/roo/src/main/resources/static/public/js/dataTables.advanced.js b/spring-roo/src/main/resources/static/public/js/dataTables.advanced.js similarity index 100% rename from roo/src/main/resources/static/public/js/dataTables.advanced.js rename to spring-roo/src/main/resources/static/public/js/dataTables.advanced.js diff --git a/roo/src/main/resources/static/public/js/datatables-defaults.js b/spring-roo/src/main/resources/static/public/js/datatables-defaults.js similarity index 100% rename from roo/src/main/resources/static/public/js/datatables-defaults.js rename to spring-roo/src/main/resources/static/public/js/datatables-defaults.js diff --git a/roo/src/main/resources/static/public/js/datetimepicker-defaults.js b/spring-roo/src/main/resources/static/public/js/datetimepicker-defaults.js similarity index 100% rename from roo/src/main/resources/static/public/js/datetimepicker-defaults.js rename to spring-roo/src/main/resources/static/public/js/datetimepicker-defaults.js diff --git a/roo/src/main/resources/static/public/js/inputmask-defaults.js b/spring-roo/src/main/resources/static/public/js/inputmask-defaults.js similarity index 100% rename from roo/src/main/resources/static/public/js/inputmask-defaults.js rename to spring-roo/src/main/resources/static/public/js/inputmask-defaults.js diff --git a/roo/src/main/resources/static/public/js/main.js b/spring-roo/src/main/resources/static/public/js/main.js similarity index 100% rename from roo/src/main/resources/static/public/js/main.js rename to spring-roo/src/main/resources/static/public/js/main.js diff --git a/roo/src/main/resources/static/public/js/moment-defaults.js b/spring-roo/src/main/resources/static/public/js/moment-defaults.js similarity index 100% rename from roo/src/main/resources/static/public/js/moment-defaults.js rename to spring-roo/src/main/resources/static/public/js/moment-defaults.js diff --git a/roo/src/main/resources/static/public/js/moment-locale-es.js b/spring-roo/src/main/resources/static/public/js/moment-locale-es.js similarity index 100% rename from roo/src/main/resources/static/public/js/moment-locale-es.js rename to spring-roo/src/main/resources/static/public/js/moment-locale-es.js diff --git a/roo/src/main/resources/static/public/js/select2-defaults.js b/spring-roo/src/main/resources/static/public/js/select2-defaults.js similarity index 100% rename from roo/src/main/resources/static/public/js/select2-defaults.js rename to spring-roo/src/main/resources/static/public/js/select2-defaults.js diff --git a/roo/src/main/resources/static/public/js/validation-defaults.js b/spring-roo/src/main/resources/static/public/js/validation-defaults.js similarity index 100% rename from roo/src/main/resources/static/public/js/validation-defaults.js rename to spring-roo/src/main/resources/static/public/js/validation-defaults.js diff --git a/roo/src/main/resources/templates/accessibility.html b/spring-roo/src/main/resources/templates/accessibility.html similarity index 100% rename from roo/src/main/resources/templates/accessibility.html rename to spring-roo/src/main/resources/templates/accessibility.html diff --git a/roo/src/main/resources/templates/books/create.html b/spring-roo/src/main/resources/templates/books/create.html similarity index 100% rename from roo/src/main/resources/templates/books/create.html rename to spring-roo/src/main/resources/templates/books/create.html diff --git a/roo/src/main/resources/templates/books/edit.html b/spring-roo/src/main/resources/templates/books/edit.html similarity index 100% rename from roo/src/main/resources/templates/books/edit.html rename to spring-roo/src/main/resources/templates/books/edit.html diff --git a/roo/src/main/resources/templates/books/list.html b/spring-roo/src/main/resources/templates/books/list.html similarity index 100% rename from roo/src/main/resources/templates/books/list.html rename to spring-roo/src/main/resources/templates/books/list.html diff --git a/roo/src/main/resources/templates/books/show.html b/spring-roo/src/main/resources/templates/books/show.html similarity index 100% rename from roo/src/main/resources/templates/books/show.html rename to spring-roo/src/main/resources/templates/books/show.html diff --git a/roo/src/main/resources/templates/books/showInline.html b/spring-roo/src/main/resources/templates/books/showInline.html similarity index 100% rename from roo/src/main/resources/templates/books/showInline.html rename to spring-roo/src/main/resources/templates/books/showInline.html diff --git a/roo/src/main/resources/templates/error.html b/spring-roo/src/main/resources/templates/error.html similarity index 100% rename from roo/src/main/resources/templates/error.html rename to spring-roo/src/main/resources/templates/error.html diff --git a/roo/src/main/resources/templates/fragments/footer.html b/spring-roo/src/main/resources/templates/fragments/footer.html similarity index 100% rename from roo/src/main/resources/templates/fragments/footer.html rename to spring-roo/src/main/resources/templates/fragments/footer.html diff --git a/roo/src/main/resources/templates/fragments/header.html b/spring-roo/src/main/resources/templates/fragments/header.html similarity index 100% rename from roo/src/main/resources/templates/fragments/header.html rename to spring-roo/src/main/resources/templates/fragments/header.html diff --git a/roo/src/main/resources/templates/fragments/js/datatables-locale.js b/spring-roo/src/main/resources/templates/fragments/js/datatables-locale.js similarity index 100% rename from roo/src/main/resources/templates/fragments/js/datatables-locale.js rename to spring-roo/src/main/resources/templates/fragments/js/datatables-locale.js diff --git a/roo/src/main/resources/templates/fragments/js/datatables.html b/spring-roo/src/main/resources/templates/fragments/js/datatables.html similarity index 100% rename from roo/src/main/resources/templates/fragments/js/datatables.html rename to spring-roo/src/main/resources/templates/fragments/js/datatables.html diff --git a/roo/src/main/resources/templates/fragments/js/select2.html b/spring-roo/src/main/resources/templates/fragments/js/select2.html similarity index 100% rename from roo/src/main/resources/templates/fragments/js/select2.html rename to spring-roo/src/main/resources/templates/fragments/js/select2.html diff --git a/roo/src/main/resources/templates/fragments/languages.html b/spring-roo/src/main/resources/templates/fragments/languages.html similarity index 100% rename from roo/src/main/resources/templates/fragments/languages.html rename to spring-roo/src/main/resources/templates/fragments/languages.html diff --git a/roo/src/main/resources/templates/fragments/menu.html b/spring-roo/src/main/resources/templates/fragments/menu.html similarity index 100% rename from roo/src/main/resources/templates/fragments/menu.html rename to spring-roo/src/main/resources/templates/fragments/menu.html diff --git a/roo/src/main/resources/templates/fragments/modal-confirm-delete-batch.html b/spring-roo/src/main/resources/templates/fragments/modal-confirm-delete-batch.html similarity index 100% rename from roo/src/main/resources/templates/fragments/modal-confirm-delete-batch.html rename to spring-roo/src/main/resources/templates/fragments/modal-confirm-delete-batch.html diff --git a/roo/src/main/resources/templates/fragments/modal-confirm-delete.html b/spring-roo/src/main/resources/templates/fragments/modal-confirm-delete.html similarity index 100% rename from roo/src/main/resources/templates/fragments/modal-confirm-delete.html rename to spring-roo/src/main/resources/templates/fragments/modal-confirm-delete.html diff --git a/roo/src/main/resources/templates/fragments/modal-confirm.html b/spring-roo/src/main/resources/templates/fragments/modal-confirm.html similarity index 100% rename from roo/src/main/resources/templates/fragments/modal-confirm.html rename to spring-roo/src/main/resources/templates/fragments/modal-confirm.html diff --git a/roo/src/main/resources/templates/fragments/modal-export-empty-error.html b/spring-roo/src/main/resources/templates/fragments/modal-export-empty-error.html similarity index 100% rename from roo/src/main/resources/templates/fragments/modal-export-empty-error.html rename to spring-roo/src/main/resources/templates/fragments/modal-export-empty-error.html diff --git a/roo/src/main/resources/templates/fragments/modal.html b/spring-roo/src/main/resources/templates/fragments/modal.html similarity index 100% rename from roo/src/main/resources/templates/fragments/modal.html rename to spring-roo/src/main/resources/templates/fragments/modal.html diff --git a/roo/src/main/resources/templates/fragments/session-links.html b/spring-roo/src/main/resources/templates/fragments/session-links.html similarity index 100% rename from roo/src/main/resources/templates/fragments/session-links.html rename to spring-roo/src/main/resources/templates/fragments/session-links.html diff --git a/roo/src/main/resources/templates/index.html b/spring-roo/src/main/resources/templates/index.html similarity index 100% rename from roo/src/main/resources/templates/index.html rename to spring-roo/src/main/resources/templates/index.html diff --git a/roo/src/main/resources/templates/layouts/default-layout-no-menu.html b/spring-roo/src/main/resources/templates/layouts/default-layout-no-menu.html similarity index 100% rename from roo/src/main/resources/templates/layouts/default-layout-no-menu.html rename to spring-roo/src/main/resources/templates/layouts/default-layout-no-menu.html diff --git a/roo/src/main/resources/templates/layouts/default-layout.html b/spring-roo/src/main/resources/templates/layouts/default-layout.html similarity index 100% rename from roo/src/main/resources/templates/layouts/default-layout.html rename to spring-roo/src/main/resources/templates/layouts/default-layout.html diff --git a/roo/src/main/resources/templates/layouts/default-list-layout.html b/spring-roo/src/main/resources/templates/layouts/default-list-layout.html similarity index 100% rename from roo/src/main/resources/templates/layouts/default-list-layout.html rename to spring-roo/src/main/resources/templates/layouts/default-list-layout.html diff --git a/roo/src/main/resources/templates/layouts/home-layout.html b/spring-roo/src/main/resources/templates/layouts/home-layout.html similarity index 100% rename from roo/src/main/resources/templates/layouts/home-layout.html rename to spring-roo/src/main/resources/templates/layouts/home-layout.html diff --git a/roo/src/main/resources/templates/login.html b/spring-roo/src/main/resources/templates/login.html similarity index 100% rename from roo/src/main/resources/templates/login.html rename to spring-roo/src/main/resources/templates/login.html diff --git a/roo/src/main/resources/templates/reports/export_default.jrxml b/spring-roo/src/main/resources/templates/reports/export_default.jrxml similarity index 100% rename from roo/src/main/resources/templates/reports/export_default.jrxml rename to spring-roo/src/main/resources/templates/reports/export_default.jrxml From d889dba9281d6f4a376b606b8a5e4fb018f0a835 Mon Sep 17 00:00:00 2001 From: iaforek Date: Sun, 7 May 2017 22:53:55 +0100 Subject: [PATCH 005/391] BAEL-838 Initial code showing how to remove last char - helper class and tests. --- .../com/baeldung/string/RemoveLastChar.java | 18 ++++++ .../baeldung/string/RemoveLastCharTest.java | 56 +++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100644 core-java/src/main/java/com/baeldung/string/RemoveLastChar.java create mode 100644 core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java diff --git a/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java b/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java new file mode 100644 index 0000000000..3816a61f45 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java @@ -0,0 +1,18 @@ +/** + * + */ +package com.baeldung.string; + +/** + * @author iaforek + * + */ +public class RemoveLastChar { + public static String substring (String s) { + if (s == null || s.length() == 0) { + return null; + } else { + return (s.substring(0, s.length() - 1)); + } + } +} diff --git a/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java b/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java new file mode 100644 index 0000000000..80d76e96ac --- /dev/null +++ b/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java @@ -0,0 +1,56 @@ +/** + * + */ +package com.baeldung.string; + +import org.apache.commons.lang3.StringUtils; +import org.junit.Assert; +import org.junit.Test; + +/** + * @author iaforek + * + */ +public class RemoveLastCharTest { + + public static final String TEST_STRING = "abcdef"; + public static final String NULL_STRING = null; + public static final String EMPTY_STRING = ""; + public static final String ONE_CHAR_STRING = "a"; + public static final String WHITE_SPACE_AT_THE_END_STRING = "abc "; + + /** + * Test method for {@link com.baeldung.string.RemoveLastChar#substring(java.lang.String)}. + */ + @Test + public void givenTestString_substring_getStingWithoutLastChar() { + Assert.assertEquals("abcde", RemoveLastChar.substring(TEST_STRING)); + Assert.assertEquals("abcde", StringUtils.chop(TEST_STRING)); + } + + @Test + public void givenNullString_substring_getNullString() { + Assert.assertEquals(NULL_STRING, RemoveLastChar.substring(NULL_STRING)); + Assert.assertEquals(NULL_STRING, StringUtils.chop(NULL_STRING)); + + } + + @Test + public void givenEmptyString_substring_getEmptyString() { + Assert.assertEquals(NULL_STRING, RemoveLastChar.substring(EMPTY_STRING)); + Assert.assertEquals(NULL_STRING, StringUtils.chop(NULL_STRING)); + } + + @Test + public void givenOneCharString_substring_getEmptyString() { + Assert.assertEquals(EMPTY_STRING, RemoveLastChar.substring(ONE_CHAR_STRING)); + Assert.assertEquals(EMPTY_STRING, StringUtils.chop(ONE_CHAR_STRING)); + } + + @Test + public void givenStringWithWhiteSpaceAtTheEnd_substring_getStringWithoutWhiteSpaceAtTheEnd() { + Assert.assertEquals("abc", RemoveLastChar.substring(WHITE_SPACE_AT_THE_END_STRING)); + Assert.assertEquals("abc", StringUtils.chop(WHITE_SPACE_AT_THE_END_STRING)); + } + +} From 124966a0f68f39802efb41a8b886280485d374b1 Mon Sep 17 00:00:00 2001 From: iaforek Date: Sun, 7 May 2017 23:11:03 +0100 Subject: [PATCH 006/391] BAEL-838 Corrected Helper class and associated empty string test case. Added StringUtils.substing tests. --- .../main/java/com/baeldung/string/RemoveLastChar.java | 2 +- .../java/com/baeldung/string/RemoveLastCharTest.java | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java b/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java index 3816a61f45..faf30f7b25 100644 --- a/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java +++ b/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java @@ -10,7 +10,7 @@ package com.baeldung.string; public class RemoveLastChar { public static String substring (String s) { if (s == null || s.length() == 0) { - return null; + return s; } else { return (s.substring(0, s.length() - 1)); } diff --git a/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java b/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java index 80d76e96ac..a39212ced4 100644 --- a/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java +++ b/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java @@ -26,6 +26,7 @@ public class RemoveLastCharTest { public void givenTestString_substring_getStingWithoutLastChar() { Assert.assertEquals("abcde", RemoveLastChar.substring(TEST_STRING)); Assert.assertEquals("abcde", StringUtils.chop(TEST_STRING)); + Assert.assertEquals("abcde", StringUtils.substring(TEST_STRING, 0, TEST_STRING.length() - 1)); } @Test @@ -37,20 +38,25 @@ public class RemoveLastCharTest { @Test public void givenEmptyString_substring_getEmptyString() { - Assert.assertEquals(NULL_STRING, RemoveLastChar.substring(EMPTY_STRING)); - Assert.assertEquals(NULL_STRING, StringUtils.chop(NULL_STRING)); + Assert.assertEquals(EMPTY_STRING, RemoveLastChar.substring(EMPTY_STRING)); + Assert.assertEquals(EMPTY_STRING, StringUtils.chop(EMPTY_STRING)); + Assert.assertEquals(EMPTY_STRING, StringUtils.substring(EMPTY_STRING, 0, EMPTY_STRING.length() - 1)); + } @Test public void givenOneCharString_substring_getEmptyString() { Assert.assertEquals(EMPTY_STRING, RemoveLastChar.substring(ONE_CHAR_STRING)); Assert.assertEquals(EMPTY_STRING, StringUtils.chop(ONE_CHAR_STRING)); + Assert.assertEquals(EMPTY_STRING, StringUtils.substring(ONE_CHAR_STRING, 0, ONE_CHAR_STRING.length() - 1)); + } @Test public void givenStringWithWhiteSpaceAtTheEnd_substring_getStringWithoutWhiteSpaceAtTheEnd() { Assert.assertEquals("abc", RemoveLastChar.substring(WHITE_SPACE_AT_THE_END_STRING)); Assert.assertEquals("abc", StringUtils.chop(WHITE_SPACE_AT_THE_END_STRING)); + Assert.assertEquals("abc", StringUtils.substring(WHITE_SPACE_AT_THE_END_STRING, 0, WHITE_SPACE_AT_THE_END_STRING.length() - 1)); } } From d9d35f8a4f8b4d9a014c6d5b83fe6cfbffccea7a Mon Sep 17 00:00:00 2001 From: iaforek Date: Mon, 8 May 2017 19:12:17 +0100 Subject: [PATCH 007/391] BAEL-838 Refromatted code using formatter.xml. Added Assert.assertEquals import. Renamed test to follow convention. Reordered tests. --- .../com/baeldung/string/RemoveLastChar.java | 21 ++--- .../baeldung/string/RemoveLastCharTest.java | 87 ++++++++----------- 2 files changed, 44 insertions(+), 64 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java b/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java index faf30f7b25..ee1d5c597d 100644 --- a/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java +++ b/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java @@ -1,18 +1,11 @@ -/** - * - */ package com.baeldung.string; -/** - * @author iaforek - * - */ public class RemoveLastChar { - public static String substring (String s) { - if (s == null || s.length() == 0) { - return s; - } else { - return (s.substring(0, s.length() - 1)); - } - } + public static String substring(String s) { + if (s == null || s.length() == 0) { + return s; + } else { + return (s.substring(0, s.length() - 1)); + } + } } diff --git a/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java b/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java index a39212ced4..f1212b2ed9 100644 --- a/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java +++ b/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java @@ -1,62 +1,49 @@ -/** - * - */ package com.baeldung.string; +import static org.junit.Assert.assertEquals; + import org.apache.commons.lang3.StringUtils; -import org.junit.Assert; import org.junit.Test; -/** - * @author iaforek - * - */ public class RemoveLastCharTest { - - public static final String TEST_STRING = "abcdef"; - public static final String NULL_STRING = null; - public static final String EMPTY_STRING = ""; - public static final String ONE_CHAR_STRING = "a"; - public static final String WHITE_SPACE_AT_THE_END_STRING = "abc "; - /** - * Test method for {@link com.baeldung.string.RemoveLastChar#substring(java.lang.String)}. - */ - @Test - public void givenTestString_substring_getStingWithoutLastChar() { - Assert.assertEquals("abcde", RemoveLastChar.substring(TEST_STRING)); - Assert.assertEquals("abcde", StringUtils.chop(TEST_STRING)); - Assert.assertEquals("abcde", StringUtils.substring(TEST_STRING, 0, TEST_STRING.length() - 1)); - } - - @Test - public void givenNullString_substring_getNullString() { - Assert.assertEquals(NULL_STRING, RemoveLastChar.substring(NULL_STRING)); - Assert.assertEquals(NULL_STRING, StringUtils.chop(NULL_STRING)); + public static final String TEST_STRING = "abcdef"; + public static final String NULL_STRING = null; + public static final String EMPTY_STRING = ""; + public static final String ONE_CHAR_STRING = "a"; + public static final String WHITE_SPACE_AT_THE_END_STRING = "abc "; - } + @Test + public void givenTestString_whenSubstring_thenGetStingWithoutLastChar() { + assertEquals("abcde", RemoveLastChar.substring(TEST_STRING)); + assertEquals("abcde", StringUtils.substring(TEST_STRING, 0, TEST_STRING.length() - 1)); + assertEquals("abcde", StringUtils.chop(TEST_STRING)); + } - @Test - public void givenEmptyString_substring_getEmptyString() { - Assert.assertEquals(EMPTY_STRING, RemoveLastChar.substring(EMPTY_STRING)); - Assert.assertEquals(EMPTY_STRING, StringUtils.chop(EMPTY_STRING)); - Assert.assertEquals(EMPTY_STRING, StringUtils.substring(EMPTY_STRING, 0, EMPTY_STRING.length() - 1)); + @Test + public void givenNullString_whenSubstring_thenGetNullString() { + assertEquals(NULL_STRING, RemoveLastChar.substring(NULL_STRING)); + assertEquals(NULL_STRING, StringUtils.chop(NULL_STRING)); + } - } - - @Test - public void givenOneCharString_substring_getEmptyString() { - Assert.assertEquals(EMPTY_STRING, RemoveLastChar.substring(ONE_CHAR_STRING)); - Assert.assertEquals(EMPTY_STRING, StringUtils.chop(ONE_CHAR_STRING)); - Assert.assertEquals(EMPTY_STRING, StringUtils.substring(ONE_CHAR_STRING, 0, ONE_CHAR_STRING.length() - 1)); + @Test + public void givenEmptyString_whenSubstring_thenGetEmptyString() { + assertEquals(EMPTY_STRING, RemoveLastChar.substring(EMPTY_STRING)); + assertEquals(EMPTY_STRING, StringUtils.substring(EMPTY_STRING, 0, EMPTY_STRING.length() - 1)); + assertEquals(EMPTY_STRING, StringUtils.chop(EMPTY_STRING)); + } - } - - @Test - public void givenStringWithWhiteSpaceAtTheEnd_substring_getStringWithoutWhiteSpaceAtTheEnd() { - Assert.assertEquals("abc", RemoveLastChar.substring(WHITE_SPACE_AT_THE_END_STRING)); - Assert.assertEquals("abc", StringUtils.chop(WHITE_SPACE_AT_THE_END_STRING)); - Assert.assertEquals("abc", StringUtils.substring(WHITE_SPACE_AT_THE_END_STRING, 0, WHITE_SPACE_AT_THE_END_STRING.length() - 1)); - } - + @Test + public void givenOneCharString_whenSubstring_thenGetEmptyString() { + assertEquals(EMPTY_STRING, RemoveLastChar.substring(ONE_CHAR_STRING)); + assertEquals(EMPTY_STRING, StringUtils.substring(ONE_CHAR_STRING, 0, ONE_CHAR_STRING.length() - 1)); + assertEquals(EMPTY_STRING, StringUtils.chop(ONE_CHAR_STRING)); + } + + @Test + public void givenStringWithWhiteSpaceAtTheEnd_whenSubstring_thenGetStringWithoutWhiteSpaceAtTheEnd() { + assertEquals("abc", RemoveLastChar.substring(WHITE_SPACE_AT_THE_END_STRING)); + assertEquals("abc", StringUtils.substring(WHITE_SPACE_AT_THE_END_STRING, 0, WHITE_SPACE_AT_THE_END_STRING.length() - 1)); + assertEquals("abc", StringUtils.chop(WHITE_SPACE_AT_THE_END_STRING)); + } } From 0fb69164c0be88c51211a344d53ae97cf62cb7b2 Mon Sep 17 00:00:00 2001 From: iaforek Date: Wed, 10 May 2017 13:47:45 +0100 Subject: [PATCH 008/391] BAEL-838 - Added regex method and updated tests. --- .../main/java/com/baeldung/string/RemoveLastChar.java | 8 ++++++++ .../java/com/baeldung/string/RemoveLastCharTest.java | 9 +++++++++ 2 files changed, 17 insertions(+) diff --git a/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java b/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java index ee1d5c597d..c6bb81b133 100644 --- a/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java +++ b/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java @@ -8,4 +8,12 @@ public class RemoveLastChar { return (s.substring(0, s.length() - 1)); } } + + public static String chop(String s) { + if (s == null) { + return s; + } else { + return s.replaceAll(".$", ""); + } + } } diff --git a/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java b/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java index f1212b2ed9..7d82d1a91b 100644 --- a/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java +++ b/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java @@ -18,12 +18,15 @@ public class RemoveLastCharTest { assertEquals("abcde", RemoveLastChar.substring(TEST_STRING)); assertEquals("abcde", StringUtils.substring(TEST_STRING, 0, TEST_STRING.length() - 1)); assertEquals("abcde", StringUtils.chop(TEST_STRING)); + assertEquals("abcde", TEST_STRING.replaceAll(".$", "")); + assertEquals("abcde", RemoveLastChar.chop(TEST_STRING)); } @Test public void givenNullString_whenSubstring_thenGetNullString() { assertEquals(NULL_STRING, RemoveLastChar.substring(NULL_STRING)); assertEquals(NULL_STRING, StringUtils.chop(NULL_STRING)); + assertEquals(NULL_STRING, RemoveLastChar.chop(NULL_STRING)); } @Test @@ -31,6 +34,8 @@ public class RemoveLastCharTest { assertEquals(EMPTY_STRING, RemoveLastChar.substring(EMPTY_STRING)); assertEquals(EMPTY_STRING, StringUtils.substring(EMPTY_STRING, 0, EMPTY_STRING.length() - 1)); assertEquals(EMPTY_STRING, StringUtils.chop(EMPTY_STRING)); + assertEquals(EMPTY_STRING, EMPTY_STRING.replaceAll(".$", "")); + assertEquals(EMPTY_STRING, RemoveLastChar.chop(EMPTY_STRING)); } @Test @@ -38,6 +43,8 @@ public class RemoveLastCharTest { assertEquals(EMPTY_STRING, RemoveLastChar.substring(ONE_CHAR_STRING)); assertEquals(EMPTY_STRING, StringUtils.substring(ONE_CHAR_STRING, 0, ONE_CHAR_STRING.length() - 1)); assertEquals(EMPTY_STRING, StringUtils.chop(ONE_CHAR_STRING)); + assertEquals(EMPTY_STRING, ONE_CHAR_STRING.replaceAll(".$", "")); + assertEquals(EMPTY_STRING, RemoveLastChar.chop(ONE_CHAR_STRING)); } @Test @@ -45,5 +52,7 @@ public class RemoveLastCharTest { assertEquals("abc", RemoveLastChar.substring(WHITE_SPACE_AT_THE_END_STRING)); assertEquals("abc", StringUtils.substring(WHITE_SPACE_AT_THE_END_STRING, 0, WHITE_SPACE_AT_THE_END_STRING.length() - 1)); assertEquals("abc", StringUtils.chop(WHITE_SPACE_AT_THE_END_STRING)); + assertEquals("abc", WHITE_SPACE_AT_THE_END_STRING.replaceAll(".$", "")); + assertEquals("abc", RemoveLastChar.chop(WHITE_SPACE_AT_THE_END_STRING)); } } From cbed304478e917c24c6b563160539f2892c6cfa1 Mon Sep 17 00:00:00 2001 From: iaforek Date: Wed, 10 May 2017 14:21:33 +0100 Subject: [PATCH 009/391] BAEL-838 Added new line examples. --- .../baeldung/string/RemoveLastCharTest.java | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java b/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java index 7d82d1a91b..5ada9c66f2 100644 --- a/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java +++ b/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java @@ -1,6 +1,7 @@ package com.baeldung.string; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotEquals; import org.apache.commons.lang3.StringUtils; import org.junit.Test; @@ -12,6 +13,8 @@ public class RemoveLastCharTest { public static final String EMPTY_STRING = ""; public static final String ONE_CHAR_STRING = "a"; public static final String WHITE_SPACE_AT_THE_END_STRING = "abc "; + public static final String NEW_LINE_AT_THE_END_STRING = "abc\n"; + public static final String MULTIPLE_LINES_STRING = "abc\ndef"; @Test public void givenTestString_whenSubstring_thenGetStingWithoutLastChar() { @@ -55,4 +58,22 @@ public class RemoveLastCharTest { assertEquals("abc", WHITE_SPACE_AT_THE_END_STRING.replaceAll(".$", "")); assertEquals("abc", RemoveLastChar.chop(WHITE_SPACE_AT_THE_END_STRING)); } + + @Test + public void givenStringWithNewLineAtTheEnd_whenSubstring_thenGetStringWithoutNewLine() { + assertEquals("abc", RemoveLastChar.substring(NEW_LINE_AT_THE_END_STRING)); + assertEquals("abc", StringUtils.substring(NEW_LINE_AT_THE_END_STRING, 0, NEW_LINE_AT_THE_END_STRING.length() - 1)); + assertEquals("abc", StringUtils.chop(NEW_LINE_AT_THE_END_STRING)); + assertNotEquals("abc", NEW_LINE_AT_THE_END_STRING.replaceAll(".$", "")); + assertNotEquals("abc", RemoveLastChar.chop(NEW_LINE_AT_THE_END_STRING)); + } + + @Test + public void givenMultiLineString_whenSubstring_thenGetStringWithoutNewLine() { + assertEquals("abc\nde", RemoveLastChar.substring(MULTIPLE_LINES_STRING)); + assertEquals("abc\nde", StringUtils.substring(MULTIPLE_LINES_STRING, 0, MULTIPLE_LINES_STRING.length() - 1)); + assertEquals("abc\nde", StringUtils.chop(MULTIPLE_LINES_STRING)); + assertEquals("abc\nde", MULTIPLE_LINES_STRING.replaceAll(".$", "")); + assertEquals("abc\nde", RemoveLastChar.chop(MULTIPLE_LINES_STRING)); + } } From 1af7196a652db82b2907844731998d1b09987603 Mon Sep 17 00:00:00 2001 From: iaforek Date: Fri, 12 May 2017 13:18:01 +0100 Subject: [PATCH 010/391] BAEL-838 Renamed RemoveLastChar class to StringHelper and added Java8 examples. Refactord code. --- .../com/baeldung/string/RemoveLastChar.java | 19 -------- .../com/baeldung/string/StringHelper.java | 26 +++++++++++ ...astCharTest.java => StringHelperTest.java} | 44 ++++++++++++------- 3 files changed, 55 insertions(+), 34 deletions(-) delete mode 100644 core-java/src/main/java/com/baeldung/string/RemoveLastChar.java create mode 100644 core-java/src/main/java/com/baeldung/string/StringHelper.java rename core-java/src/test/java/com/baeldung/string/{RemoveLastCharTest.java => StringHelperTest.java} (55%) diff --git a/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java b/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java deleted file mode 100644 index 8d15f0d7f5..0000000000 --- a/core-java/src/main/java/com/baeldung/string/RemoveLastChar.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.baeldung.string; - -public class RemoveLastChar { - public static String substring(String s) { - if (s == null || s.length() == 0) { - return s; - } else { - return (s.substring(0, s.length() - 1)); - } - } - - public static String chop(String s) { - if (s == null) { - return s; - } else { - return s.replaceAll(".$", ""); - } - } -} diff --git a/core-java/src/main/java/com/baeldung/string/StringHelper.java b/core-java/src/main/java/com/baeldung/string/StringHelper.java new file mode 100644 index 0000000000..6b9d5d36d7 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/string/StringHelper.java @@ -0,0 +1,26 @@ +package com.baeldung.string; + +import java.util.Optional; + +public class StringHelper { + public static String withoutLastChar(String s) { + return (s == null || s.length() == 0) ? s : (s.substring(0, s.length() - 1)); + } + + public static String removeLastChar(String s) { + return (s == null) ? s : s.replaceAll(".$", ""); + } + + public static String withoutLastCharacter(String s) { + return Optional.ofNullable(s) + .filter(str -> str.length() != 0) + .map(str -> str.substring(0, str.length() - 1)) + .orElse(s); + } + + public static String removeLastCharacter(String s) { + return Optional.ofNullable(s) + .map(str -> str.replaceAll(".$", "")) + .orElse(null); + } +} diff --git a/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java b/core-java/src/test/java/com/baeldung/string/StringHelperTest.java similarity index 55% rename from core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java rename to core-java/src/test/java/com/baeldung/string/StringHelperTest.java index 29cf856da3..ae8aaec71e 100644 --- a/core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java +++ b/core-java/src/test/java/com/baeldung/string/StringHelperTest.java @@ -5,7 +5,7 @@ import static org.junit.Assert.assertNotEquals; import org.apache.commons.lang3.StringUtils; import org.junit.Test; -public class RemoveLastCharTest { +public class StringHelperTest { public static final String TEST_STRING = "abcdef"; public static final String NULL_STRING = null; @@ -17,62 +17,76 @@ public class RemoveLastCharTest { @Test public void givenTestString_whenSubstring_thenGetStingWithoutLastChar() { - assertEquals("abcde", RemoveLastChar.substring(TEST_STRING)); + assertEquals("abcde", StringHelper.withoutLastChar(TEST_STRING)); assertEquals("abcde", StringUtils.substring(TEST_STRING, 0, TEST_STRING.length() - 1)); assertEquals("abcde", StringUtils.chop(TEST_STRING)); assertEquals("abcde", TEST_STRING.replaceAll(".$", "")); - assertEquals("abcde", RemoveLastChar.chop(TEST_STRING)); + assertEquals("abcde", StringHelper.removeLastChar(TEST_STRING)); + assertEquals("abcde", StringHelper.withoutLastCharacter(TEST_STRING)); + assertEquals("abcde", StringHelper.removeLastCharacter(TEST_STRING)); } @Test public void givenNullString_whenSubstring_thenGetNullString() { - assertEquals(NULL_STRING, RemoveLastChar.substring(NULL_STRING)); + assertEquals(NULL_STRING, StringHelper.withoutLastChar(NULL_STRING)); assertEquals(NULL_STRING, StringUtils.chop(NULL_STRING)); - assertEquals(NULL_STRING, RemoveLastChar.chop(NULL_STRING)); + assertEquals(NULL_STRING, StringHelper.removeLastChar(NULL_STRING)); + assertEquals(NULL_STRING, StringHelper.withoutLastCharacter(NULL_STRING)); + assertEquals(NULL_STRING, StringHelper.removeLastCharacter(NULL_STRING)); } @Test public void givenEmptyString_whenSubstring_thenGetEmptyString() { - assertEquals(EMPTY_STRING, RemoveLastChar.substring(EMPTY_STRING)); + assertEquals(EMPTY_STRING, StringHelper.withoutLastChar(EMPTY_STRING)); assertEquals(EMPTY_STRING, StringUtils.substring(EMPTY_STRING, 0, EMPTY_STRING.length() - 1)); assertEquals(EMPTY_STRING, StringUtils.chop(EMPTY_STRING)); assertEquals(EMPTY_STRING, EMPTY_STRING.replaceAll(".$", "")); - assertEquals(EMPTY_STRING, RemoveLastChar.chop(EMPTY_STRING)); + assertEquals(EMPTY_STRING, StringHelper.removeLastChar(EMPTY_STRING)); + assertEquals(EMPTY_STRING, StringHelper.withoutLastCharacter(EMPTY_STRING)); + assertEquals(EMPTY_STRING, StringHelper.removeLastCharacter(EMPTY_STRING)); } @Test public void givenOneCharString_whenSubstring_thenGetEmptyString() { - assertEquals(EMPTY_STRING, RemoveLastChar.substring(ONE_CHAR_STRING)); + assertEquals(EMPTY_STRING, StringHelper.withoutLastChar(ONE_CHAR_STRING)); assertEquals(EMPTY_STRING, StringUtils.substring(ONE_CHAR_STRING, 0, ONE_CHAR_STRING.length() - 1)); assertEquals(EMPTY_STRING, StringUtils.chop(ONE_CHAR_STRING)); assertEquals(EMPTY_STRING, ONE_CHAR_STRING.replaceAll(".$", "")); - assertEquals(EMPTY_STRING, RemoveLastChar.chop(ONE_CHAR_STRING)); + assertEquals(EMPTY_STRING, StringHelper.removeLastChar(ONE_CHAR_STRING)); + assertEquals(EMPTY_STRING, StringHelper.withoutLastCharacter(ONE_CHAR_STRING)); + assertEquals(EMPTY_STRING, StringHelper.removeLastCharacter(ONE_CHAR_STRING)); } @Test public void givenStringWithWhiteSpaceAtTheEnd_whenSubstring_thenGetStringWithoutWhiteSpaceAtTheEnd() { - assertEquals("abc", RemoveLastChar.substring(WHITE_SPACE_AT_THE_END_STRING)); + assertEquals("abc", StringHelper.withoutLastChar(WHITE_SPACE_AT_THE_END_STRING)); assertEquals("abc", StringUtils.substring(WHITE_SPACE_AT_THE_END_STRING, 0, WHITE_SPACE_AT_THE_END_STRING.length() - 1)); assertEquals("abc", StringUtils.chop(WHITE_SPACE_AT_THE_END_STRING)); assertEquals("abc", WHITE_SPACE_AT_THE_END_STRING.replaceAll(".$", "")); - assertEquals("abc", RemoveLastChar.chop(WHITE_SPACE_AT_THE_END_STRING)); + assertEquals("abc", StringHelper.removeLastChar(WHITE_SPACE_AT_THE_END_STRING)); + assertEquals("abc", StringHelper.withoutLastCharacter(WHITE_SPACE_AT_THE_END_STRING)); + assertEquals("abc", StringHelper.removeLastCharacter(WHITE_SPACE_AT_THE_END_STRING)); } @Test public void givenStringWithNewLineAtTheEnd_whenSubstring_thenGetStringWithoutNewLine() { - assertEquals("abc", RemoveLastChar.substring(NEW_LINE_AT_THE_END_STRING)); + assertEquals("abc", StringHelper.withoutLastChar(NEW_LINE_AT_THE_END_STRING)); assertEquals("abc", StringUtils.substring(NEW_LINE_AT_THE_END_STRING, 0, NEW_LINE_AT_THE_END_STRING.length() - 1)); assertEquals("abc", StringUtils.chop(NEW_LINE_AT_THE_END_STRING)); assertNotEquals("abc", NEW_LINE_AT_THE_END_STRING.replaceAll(".$", "")); - assertNotEquals("abc", RemoveLastChar.chop(NEW_LINE_AT_THE_END_STRING)); + assertNotEquals("abc", StringHelper.removeLastChar(NEW_LINE_AT_THE_END_STRING)); + assertEquals("abc", StringHelper.withoutLastCharacter(NEW_LINE_AT_THE_END_STRING)); + assertNotEquals("abc", StringHelper.removeLastCharacter(NEW_LINE_AT_THE_END_STRING)); } @Test public void givenMultiLineString_whenSubstring_thenGetStringWithoutNewLine() { - assertEquals("abc\nde", RemoveLastChar.substring(MULTIPLE_LINES_STRING)); + assertEquals("abc\nde", StringHelper.withoutLastChar(MULTIPLE_LINES_STRING)); assertEquals("abc\nde", StringUtils.substring(MULTIPLE_LINES_STRING, 0, MULTIPLE_LINES_STRING.length() - 1)); assertEquals("abc\nde", StringUtils.chop(MULTIPLE_LINES_STRING)); assertEquals("abc\nde", MULTIPLE_LINES_STRING.replaceAll(".$", "")); - assertEquals("abc\nde", RemoveLastChar.chop(MULTIPLE_LINES_STRING)); + assertEquals("abc\nde", StringHelper.removeLastChar(MULTIPLE_LINES_STRING)); + assertEquals("abc\nde", StringHelper.withoutLastCharacter(MULTIPLE_LINES_STRING)); + assertEquals("abc\nde", StringHelper.removeLastCharacter(MULTIPLE_LINES_STRING)); } } From e497266a8205bc436fd95d06bd08cff1c1e0f006 Mon Sep 17 00:00:00 2001 From: Predrag Maric Date: Sun, 14 May 2017 00:13:18 +0200 Subject: [PATCH 011/391] BAEL-838 Changed method names --- .gitignore | 2 - .../com/baeldung/string/StringHelper.java | 8 +-- .../com/baeldung/string/StringHelperTest.java | 56 +++++++++---------- 3 files changed, 32 insertions(+), 34 deletions(-) diff --git a/.gitignore b/.gitignore index 111ff98630..60c38ed8f5 100644 --- a/.gitignore +++ b/.gitignore @@ -33,5 +33,3 @@ spring-openid/src/main/resources/application.properties spring-security-openid/src/main/resources/application.properties spring-all/*.log -core-java/src/main/java/com/baeldung/string/RemoveLastChar.java -core-java/src/test/java/com/baeldung/string/RemoveLastCharTest.java diff --git a/core-java/src/main/java/com/baeldung/string/StringHelper.java b/core-java/src/main/java/com/baeldung/string/StringHelper.java index 6b9d5d36d7..93ce1b684e 100644 --- a/core-java/src/main/java/com/baeldung/string/StringHelper.java +++ b/core-java/src/main/java/com/baeldung/string/StringHelper.java @@ -3,22 +3,22 @@ package com.baeldung.string; import java.util.Optional; public class StringHelper { - public static String withoutLastChar(String s) { + public static String removeLastChar(String s) { return (s == null || s.length() == 0) ? s : (s.substring(0, s.length() - 1)); } - public static String removeLastChar(String s) { + public static String removeLastCharRegex(String s) { return (s == null) ? s : s.replaceAll(".$", ""); } - public static String withoutLastCharacter(String s) { + public static String removeLastCharOptional(String s) { return Optional.ofNullable(s) .filter(str -> str.length() != 0) .map(str -> str.substring(0, str.length() - 1)) .orElse(s); } - public static String removeLastCharacter(String s) { + public static String removeLastCharRegexOptional(String s) { return Optional.ofNullable(s) .map(str -> str.replaceAll(".$", "")) .orElse(null); diff --git a/core-java/src/test/java/com/baeldung/string/StringHelperTest.java b/core-java/src/test/java/com/baeldung/string/StringHelperTest.java index ae8aaec71e..48a9fb9364 100644 --- a/core-java/src/test/java/com/baeldung/string/StringHelperTest.java +++ b/core-java/src/test/java/com/baeldung/string/StringHelperTest.java @@ -17,76 +17,76 @@ public class StringHelperTest { @Test public void givenTestString_whenSubstring_thenGetStingWithoutLastChar() { - assertEquals("abcde", StringHelper.withoutLastChar(TEST_STRING)); + assertEquals("abcde", StringHelper.removeLastChar(TEST_STRING)); assertEquals("abcde", StringUtils.substring(TEST_STRING, 0, TEST_STRING.length() - 1)); assertEquals("abcde", StringUtils.chop(TEST_STRING)); assertEquals("abcde", TEST_STRING.replaceAll(".$", "")); - assertEquals("abcde", StringHelper.removeLastChar(TEST_STRING)); - assertEquals("abcde", StringHelper.withoutLastCharacter(TEST_STRING)); - assertEquals("abcde", StringHelper.removeLastCharacter(TEST_STRING)); + assertEquals("abcde", StringHelper.removeLastCharRegex(TEST_STRING)); + assertEquals("abcde", StringHelper.removeLastCharOptional(TEST_STRING)); + assertEquals("abcde", StringHelper.removeLastCharRegexOptional(TEST_STRING)); } @Test public void givenNullString_whenSubstring_thenGetNullString() { - assertEquals(NULL_STRING, StringHelper.withoutLastChar(NULL_STRING)); - assertEquals(NULL_STRING, StringUtils.chop(NULL_STRING)); assertEquals(NULL_STRING, StringHelper.removeLastChar(NULL_STRING)); - assertEquals(NULL_STRING, StringHelper.withoutLastCharacter(NULL_STRING)); - assertEquals(NULL_STRING, StringHelper.removeLastCharacter(NULL_STRING)); + assertEquals(NULL_STRING, StringUtils.chop(NULL_STRING)); + assertEquals(NULL_STRING, StringHelper.removeLastCharRegex(NULL_STRING)); + assertEquals(NULL_STRING, StringHelper.removeLastCharOptional(NULL_STRING)); + assertEquals(NULL_STRING, StringHelper.removeLastCharRegexOptional(NULL_STRING)); } @Test public void givenEmptyString_whenSubstring_thenGetEmptyString() { - assertEquals(EMPTY_STRING, StringHelper.withoutLastChar(EMPTY_STRING)); + assertEquals(EMPTY_STRING, StringHelper.removeLastChar(EMPTY_STRING)); assertEquals(EMPTY_STRING, StringUtils.substring(EMPTY_STRING, 0, EMPTY_STRING.length() - 1)); assertEquals(EMPTY_STRING, StringUtils.chop(EMPTY_STRING)); assertEquals(EMPTY_STRING, EMPTY_STRING.replaceAll(".$", "")); - assertEquals(EMPTY_STRING, StringHelper.removeLastChar(EMPTY_STRING)); - assertEquals(EMPTY_STRING, StringHelper.withoutLastCharacter(EMPTY_STRING)); - assertEquals(EMPTY_STRING, StringHelper.removeLastCharacter(EMPTY_STRING)); + assertEquals(EMPTY_STRING, StringHelper.removeLastCharRegex(EMPTY_STRING)); + assertEquals(EMPTY_STRING, StringHelper.removeLastCharOptional(EMPTY_STRING)); + assertEquals(EMPTY_STRING, StringHelper.removeLastCharRegexOptional(EMPTY_STRING)); } @Test public void givenOneCharString_whenSubstring_thenGetEmptyString() { - assertEquals(EMPTY_STRING, StringHelper.withoutLastChar(ONE_CHAR_STRING)); + assertEquals(EMPTY_STRING, StringHelper.removeLastChar(ONE_CHAR_STRING)); assertEquals(EMPTY_STRING, StringUtils.substring(ONE_CHAR_STRING, 0, ONE_CHAR_STRING.length() - 1)); assertEquals(EMPTY_STRING, StringUtils.chop(ONE_CHAR_STRING)); assertEquals(EMPTY_STRING, ONE_CHAR_STRING.replaceAll(".$", "")); - assertEquals(EMPTY_STRING, StringHelper.removeLastChar(ONE_CHAR_STRING)); - assertEquals(EMPTY_STRING, StringHelper.withoutLastCharacter(ONE_CHAR_STRING)); - assertEquals(EMPTY_STRING, StringHelper.removeLastCharacter(ONE_CHAR_STRING)); + assertEquals(EMPTY_STRING, StringHelper.removeLastCharRegex(ONE_CHAR_STRING)); + assertEquals(EMPTY_STRING, StringHelper.removeLastCharOptional(ONE_CHAR_STRING)); + assertEquals(EMPTY_STRING, StringHelper.removeLastCharRegexOptional(ONE_CHAR_STRING)); } @Test public void givenStringWithWhiteSpaceAtTheEnd_whenSubstring_thenGetStringWithoutWhiteSpaceAtTheEnd() { - assertEquals("abc", StringHelper.withoutLastChar(WHITE_SPACE_AT_THE_END_STRING)); + assertEquals("abc", StringHelper.removeLastChar(WHITE_SPACE_AT_THE_END_STRING)); assertEquals("abc", StringUtils.substring(WHITE_SPACE_AT_THE_END_STRING, 0, WHITE_SPACE_AT_THE_END_STRING.length() - 1)); assertEquals("abc", StringUtils.chop(WHITE_SPACE_AT_THE_END_STRING)); assertEquals("abc", WHITE_SPACE_AT_THE_END_STRING.replaceAll(".$", "")); - assertEquals("abc", StringHelper.removeLastChar(WHITE_SPACE_AT_THE_END_STRING)); - assertEquals("abc", StringHelper.withoutLastCharacter(WHITE_SPACE_AT_THE_END_STRING)); - assertEquals("abc", StringHelper.removeLastCharacter(WHITE_SPACE_AT_THE_END_STRING)); + assertEquals("abc", StringHelper.removeLastCharRegex(WHITE_SPACE_AT_THE_END_STRING)); + assertEquals("abc", StringHelper.removeLastCharOptional(WHITE_SPACE_AT_THE_END_STRING)); + assertEquals("abc", StringHelper.removeLastCharRegexOptional(WHITE_SPACE_AT_THE_END_STRING)); } @Test public void givenStringWithNewLineAtTheEnd_whenSubstring_thenGetStringWithoutNewLine() { - assertEquals("abc", StringHelper.withoutLastChar(NEW_LINE_AT_THE_END_STRING)); + assertEquals("abc", StringHelper.removeLastChar(NEW_LINE_AT_THE_END_STRING)); assertEquals("abc", StringUtils.substring(NEW_LINE_AT_THE_END_STRING, 0, NEW_LINE_AT_THE_END_STRING.length() - 1)); assertEquals("abc", StringUtils.chop(NEW_LINE_AT_THE_END_STRING)); assertNotEquals("abc", NEW_LINE_AT_THE_END_STRING.replaceAll(".$", "")); - assertNotEquals("abc", StringHelper.removeLastChar(NEW_LINE_AT_THE_END_STRING)); - assertEquals("abc", StringHelper.withoutLastCharacter(NEW_LINE_AT_THE_END_STRING)); - assertNotEquals("abc", StringHelper.removeLastCharacter(NEW_LINE_AT_THE_END_STRING)); + assertNotEquals("abc", StringHelper.removeLastCharRegex(NEW_LINE_AT_THE_END_STRING)); + assertEquals("abc", StringHelper.removeLastCharOptional(NEW_LINE_AT_THE_END_STRING)); + assertNotEquals("abc", StringHelper.removeLastCharRegexOptional(NEW_LINE_AT_THE_END_STRING)); } @Test public void givenMultiLineString_whenSubstring_thenGetStringWithoutNewLine() { - assertEquals("abc\nde", StringHelper.withoutLastChar(MULTIPLE_LINES_STRING)); + assertEquals("abc\nde", StringHelper.removeLastChar(MULTIPLE_LINES_STRING)); assertEquals("abc\nde", StringUtils.substring(MULTIPLE_LINES_STRING, 0, MULTIPLE_LINES_STRING.length() - 1)); assertEquals("abc\nde", StringUtils.chop(MULTIPLE_LINES_STRING)); assertEquals("abc\nde", MULTIPLE_LINES_STRING.replaceAll(".$", "")); - assertEquals("abc\nde", StringHelper.removeLastChar(MULTIPLE_LINES_STRING)); - assertEquals("abc\nde", StringHelper.withoutLastCharacter(MULTIPLE_LINES_STRING)); - assertEquals("abc\nde", StringHelper.removeLastCharacter(MULTIPLE_LINES_STRING)); + assertEquals("abc\nde", StringHelper.removeLastCharRegex(MULTIPLE_LINES_STRING)); + assertEquals("abc\nde", StringHelper.removeLastCharOptional(MULTIPLE_LINES_STRING)); + assertEquals("abc\nde", StringHelper.removeLastCharRegexOptional(MULTIPLE_LINES_STRING)); } } From a8041fef4f011566322086550540d32fb4311a09 Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 16 May 2017 12:17:59 +0100 Subject: [PATCH 012/391] BAEL-838 Tiny change to keep code consistant. Return null or empty. --- core-java/src/main/java/com/baeldung/string/StringHelper.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core-java/src/main/java/com/baeldung/string/StringHelper.java b/core-java/src/main/java/com/baeldung/string/StringHelper.java index 93ce1b684e..ad2a0b3419 100644 --- a/core-java/src/main/java/com/baeldung/string/StringHelper.java +++ b/core-java/src/main/java/com/baeldung/string/StringHelper.java @@ -21,6 +21,6 @@ public class StringHelper { public static String removeLastCharRegexOptional(String s) { return Optional.ofNullable(s) .map(str -> str.replaceAll(".$", "")) - .orElse(null); + .orElse(s); } } From 467646d61373825260fece59e46a2afaf748d79f Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 16 May 2017 15:32:16 +0100 Subject: [PATCH 013/391] BAEL-838 Removed unresolved conflict. --- core-java/src/main/java/com/baeldung/string/StringHelper.java | 4 ---- 1 file changed, 4 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/string/StringHelper.java b/core-java/src/main/java/com/baeldung/string/StringHelper.java index adf8d70531..ad2a0b3419 100644 --- a/core-java/src/main/java/com/baeldung/string/StringHelper.java +++ b/core-java/src/main/java/com/baeldung/string/StringHelper.java @@ -21,10 +21,6 @@ public class StringHelper { public static String removeLastCharRegexOptional(String s) { return Optional.ofNullable(s) .map(str -> str.replaceAll(".$", "")) -<<<<<<< HEAD .orElse(s); -======= - .orElse(null); ->>>>>>> refs/remotes/eugenp/master } } From 6d407f88a339f6ef905063096de21f266a41d020 Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 30 May 2017 09:57:12 +0100 Subject: [PATCH 014/391] BAEL-821 New class that shows different rounding techniques. Updated POM. --- core-java/pom.xml | 7 ++++ .../main/java/com/baeldung/maths/Round.java | 38 +++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 core-java/src/main/java/com/baeldung/maths/Round.java diff --git a/core-java/pom.xml b/core-java/pom.xml index bcec20b1e1..5c9bf06a57 100644 --- a/core-java/pom.xml +++ b/core-java/pom.xml @@ -45,6 +45,12 @@ commons-math3 ${commons-math3.version} + + + org.decimal4j + decimal4j + ${decimal4j.version} + org.bouncycastle @@ -369,6 +375,7 @@ 1.55 1.10 3.6.1 + 1.0.3 2.5 4.1 4.01 diff --git a/core-java/src/main/java/com/baeldung/maths/Round.java b/core-java/src/main/java/com/baeldung/maths/Round.java new file mode 100644 index 0000000000..3b30ab2c7a --- /dev/null +++ b/core-java/src/main/java/com/baeldung/maths/Round.java @@ -0,0 +1,38 @@ +package com.baeldung.maths; + +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.text.DecimalFormat; + +import org.apache.commons.math3.util.Precision; +import org.decimal4j.util.DoubleRounder; + +public class Round { + private static final double PI = 3.1415d; + + public static void main (String args[]) { + System.out.println("PI: " + PI); + System.out.printf("Value with 3 digits after decimal point %.3f %n", PI); + // OUTPUTS: Value with 3 digits after decimal point 3.142 + DecimalFormat df = new DecimalFormat("###.###"); + System.out.println(df.format(PI)); + System.out.println(round(PI, 3)); + System.out.println(roundOptional(PI, 3)); + System.out.println(Precision.round(PI, 3)); + System.out.println(DoubleRounder.round(PI, 3)); + } + + public static double round(double value, int places) { + if (places < 0) throw new IllegalArgumentException(); + + BigDecimal bd = new BigDecimal(value); + bd = bd.setScale(places, RoundingMode.HALF_UP); + return bd.doubleValue(); + } + + public static double roundOptional(double value, int places) { + double scale = Math.pow(10, places); + double rounded = Math.round(value * scale) / scale; + return rounded; + } +} From fc58395ad484e24fa99496c5317ccc716ba6c7c0 Mon Sep 17 00:00:00 2001 From: iaforek Date: Wed, 31 May 2017 10:21:08 +0100 Subject: [PATCH 015/391] BAEL-821 - Added unit test for different round methods. --- .../java/com/baeldung/maths/RoundTest.java | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 core-java/src/test/java/com/baeldung/maths/RoundTest.java diff --git a/core-java/src/test/java/com/baeldung/maths/RoundTest.java b/core-java/src/test/java/com/baeldung/maths/RoundTest.java new file mode 100644 index 0000000000..932836e417 --- /dev/null +++ b/core-java/src/test/java/com/baeldung/maths/RoundTest.java @@ -0,0 +1,29 @@ +package com.baeldung.maths; + +import org.apache.commons.math3.util.Precision; +import org.decimal4j.util.DoubleRounder; +import org.junit.Assert; +import org.junit.Test; + +public class RoundTest { + private double value = 2.03456d; + private int places = 2; + private double delta = 0.0d; + private double expected = 2.03d; + + @Test + public void givenDecimalNumber_roundToNDecimalPlaces_getExpectedResult() { + Assert.assertEquals(expected, Round.round(value, places), delta); + Assert.assertEquals(expected, Round.roundOptional(value, places), delta); + Assert.assertEquals(expected, Precision.round(value, places), delta); + Assert.assertEquals(expected, DoubleRounder.round(value, places), delta); + + places = 3; + expected = 2.035d; + + Assert.assertEquals(expected, Round.round(value, places), delta); + Assert.assertEquals(expected, Round.roundOptional(value, places), delta); + Assert.assertEquals(expected, Precision.round(value, places), delta); + Assert.assertEquals(expected, DoubleRounder.round(value, places), delta); + } +} From efeffc4034a6f04282178482fb90b6891ac9c2a9 Mon Sep 17 00:00:00 2001 From: Predrag Maric Date: Thu, 1 Jun 2017 01:11:25 +0200 Subject: [PATCH 016/391] BAEL-821 Changed test method name to follow the convention --- core-java/src/test/java/com/baeldung/maths/RoundTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core-java/src/test/java/com/baeldung/maths/RoundTest.java b/core-java/src/test/java/com/baeldung/maths/RoundTest.java index 932836e417..2621cfb65c 100644 --- a/core-java/src/test/java/com/baeldung/maths/RoundTest.java +++ b/core-java/src/test/java/com/baeldung/maths/RoundTest.java @@ -12,7 +12,7 @@ public class RoundTest { private double expected = 2.03d; @Test - public void givenDecimalNumber_roundToNDecimalPlaces_getExpectedResult() { + public void givenDecimalNumber_whenRoundToNDecimalPlaces_thenGetExpectedResult() { Assert.assertEquals(expected, Round.round(value, places), delta); Assert.assertEquals(expected, Round.roundOptional(value, places), delta); Assert.assertEquals(expected, Precision.round(value, places), delta); From c763d263ece2957f5166f704326074e084225e84 Mon Sep 17 00:00:00 2001 From: iaforek Date: Fri, 2 Jun 2017 00:18:29 +0100 Subject: [PATCH 017/391] BAEL-821 Added more test and updated round methods. --- .../main/java/com/baeldung/maths/Round.java | 13 +++++- .../java/com/baeldung/maths/RoundTest.java | 46 ++++++++++++++++++- 2 files changed, 55 insertions(+), 4 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/maths/Round.java b/core-java/src/main/java/com/baeldung/maths/Round.java index 3b30ab2c7a..a38f5e2526 100644 --- a/core-java/src/main/java/com/baeldung/maths/Round.java +++ b/core-java/src/main/java/com/baeldung/maths/Round.java @@ -17,7 +17,8 @@ public class Round { DecimalFormat df = new DecimalFormat("###.###"); System.out.println(df.format(PI)); System.out.println(round(PI, 3)); - System.out.println(roundOptional(PI, 3)); + System.out.println(roundNotPrecise(PI, 3)); + System.out.println(roundAvoid(PI, 3)); System.out.println(Precision.round(PI, 3)); System.out.println(DoubleRounder.round(PI, 3)); } @@ -25,12 +26,20 @@ public class Round { public static double round(double value, int places) { if (places < 0) throw new IllegalArgumentException(); + BigDecimal bd = new BigDecimal(Double.toString(value)); + bd = bd.setScale(places, RoundingMode.HALF_UP); + return bd.doubleValue(); + } + + public static double roundNotPrecise(double value, int places) { + if (places < 0) throw new IllegalArgumentException(); + BigDecimal bd = new BigDecimal(value); bd = bd.setScale(places, RoundingMode.HALF_UP); return bd.doubleValue(); } - public static double roundOptional(double value, int places) { + public static double roundAvoid(double value, int places) { double scale = Math.pow(10, places); double rounded = Math.round(value * scale) / scale; return rounded; diff --git a/core-java/src/test/java/com/baeldung/maths/RoundTest.java b/core-java/src/test/java/com/baeldung/maths/RoundTest.java index 932836e417..8a31b90cb3 100644 --- a/core-java/src/test/java/com/baeldung/maths/RoundTest.java +++ b/core-java/src/test/java/com/baeldung/maths/RoundTest.java @@ -14,7 +14,8 @@ public class RoundTest { @Test public void givenDecimalNumber_roundToNDecimalPlaces_getExpectedResult() { Assert.assertEquals(expected, Round.round(value, places), delta); - Assert.assertEquals(expected, Round.roundOptional(value, places), delta); + Assert.assertEquals(expected, Round.roundNotPrecise(value, places), delta); + Assert.assertEquals(expected, Round.roundAvoid(value, places), delta); Assert.assertEquals(expected, Precision.round(value, places), delta); Assert.assertEquals(expected, DoubleRounder.round(value, places), delta); @@ -22,7 +23,48 @@ public class RoundTest { expected = 2.035d; Assert.assertEquals(expected, Round.round(value, places), delta); - Assert.assertEquals(expected, Round.roundOptional(value, places), delta); + Assert.assertEquals(expected, Round.roundNotPrecise(value, places), delta); + Assert.assertEquals(expected, Round.roundAvoid(value, places), delta); + Assert.assertEquals(expected, Precision.round(value, places), delta); + Assert.assertEquals(expected, DoubleRounder.round(value, places), delta); + + value = 1000.0d; + places = 17; + expected = 1000.0d; + + Assert.assertEquals(expected, Round.round(value, places), delta); + Assert.assertEquals(expected, Round.roundNotPrecise(value, places), delta); + Assert.assertNotEquals(expected, Round.roundAvoid(value, places), delta); // Returns: 92.23372036854776 ! + Assert.assertEquals(expected, Precision.round(value, places), delta); + Assert.assertEquals(expected, DoubleRounder.round(value, places), delta); + + value = 256.025d; + places = 2; + expected = 256.03d; + + Assert.assertEquals(expected, Round.round(value, places), delta); + Assert.assertNotEquals(expected, Round.roundNotPrecise(value, places), delta); // Returns: 256.02 ! + Assert.assertNotEquals(expected, Round.roundAvoid(value, places), delta); // Returns: 256.02 ! + Assert.assertEquals(expected, Precision.round(value, places), delta); + Assert.assertNotEquals(expected, DoubleRounder.round(value, places), delta); // Returns: 256.02 ! + + value = 260.775d; + places = 2; + expected = 260.78d; + + Assert.assertEquals(expected, Round.round(value, places), delta); + Assert.assertNotEquals(expected, Round.roundNotPrecise(value, places), delta); // Returns: 260.77 ! + Assert.assertNotEquals(expected, Round.roundAvoid(value, places), delta); // Returns: 260.77 ! + Assert.assertEquals(expected, Precision.round(value, places), delta); + Assert.assertNotEquals(expected, DoubleRounder.round(value, places), delta); // Returns: 260.77 ! + + value = 90080070060.1d; + places = 9; + expected = 90080070060.1d; + + Assert.assertEquals(expected, Round.round(value, places), delta); + Assert.assertEquals(expected, Round.roundNotPrecise(value, places), delta); + Assert.assertNotEquals(expected, Round.roundAvoid(value, places), delta); // Returns: 9.223372036854776E9 ! Assert.assertEquals(expected, Precision.round(value, places), delta); Assert.assertEquals(expected, DoubleRounder.round(value, places), delta); } From c5f2fb5b2c30f2ce40cded6760180350f097f722 Mon Sep 17 00:00:00 2001 From: iaforek Date: Mon, 12 Jun 2017 12:21:57 +0100 Subject: [PATCH 018/391] BAEL-837 - initial commit. A few examples of adding doubles. --- .../maths/FloatingPointArithmetic.java | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 core-java/src/main/java/com/baeldung/maths/FloatingPointArithmetic.java diff --git a/core-java/src/main/java/com/baeldung/maths/FloatingPointArithmetic.java b/core-java/src/main/java/com/baeldung/maths/FloatingPointArithmetic.java new file mode 100644 index 0000000000..9cdeeb5e81 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/maths/FloatingPointArithmetic.java @@ -0,0 +1,44 @@ +package com.baeldung.maths; + +import java.math.BigDecimal; + +public class FloatingPointArithmetic { + public static void main(String[] args) { + + double a = 13.22; + double b = 4.88; + double c = 21.45; + + System.out.println("a = " + a); + System.out.println("b = " + b); + System.out.println("c = " + c); + + double ab = a + b; + System.out.println("a + b = " + ab); + + double abc = a + b + c; + System.out.println("a + b + c = " + abc); + + double ac = a + c; + System.out.println("a + c = " + ac); + + double acb = a + c + b; + System.out.println("a + c + b = " + acb); + + double ac_b = ac + b; + System.out.println("ac + b = " + ac_b); + + BigDecimal d = new BigDecimal(String.valueOf(a)); + BigDecimal e = new BigDecimal(String.valueOf(b)); + BigDecimal f = new BigDecimal(String.valueOf(c)); + + BigDecimal def; + BigDecimal dfe; + + def = d.add(e).add(f); + dfe = d.add(f).add(e); + + System.out.println("d + e + f = " + def); + System.out.println("d + f + e = " + dfe); + } +} From de138a4a925c8019cdacc10cb2ecce2ea58f3c53 Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 13 Jun 2017 22:29:27 +0100 Subject: [PATCH 019/391] BAEL-837 - Couple of smaller changes --- .../maths/FloatingPointArithmetic.java | 27 ++++++++++++------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/maths/FloatingPointArithmetic.java b/core-java/src/main/java/com/baeldung/maths/FloatingPointArithmetic.java index 9cdeeb5e81..4163adcf09 100644 --- a/core-java/src/main/java/com/baeldung/maths/FloatingPointArithmetic.java +++ b/core-java/src/main/java/com/baeldung/maths/FloatingPointArithmetic.java @@ -13,30 +13,37 @@ public class FloatingPointArithmetic { System.out.println("b = " + b); System.out.println("c = " + c); - double ab = a + b; - System.out.println("a + b = " + ab); + double sum_ab = a + b; + System.out.println("a + b = " + sum_ab); double abc = a + b + c; System.out.println("a + b + c = " + abc); - double ac = a + c; - System.out.println("a + c = " + ac); + double ab_c = sum_ab + c; + System.out.println("ab + c = " + ab_c); + + double sum_ac = a + c; + System.out.println("a + c = " + sum_ac); double acb = a + c + b; System.out.println("a + c + b = " + acb); - double ac_b = ac + b; + double ac_b = sum_ac + b; System.out.println("ac + b = " + ac_b); + double ab = 18.1; + double ac = 34.67; + double sum_ab_c = ab + c; + double sum_ac_b = ac + b; + System.out.println("ab + c = " + sum_ab_c); + System.out.println("ac + b = " + sum_ac_b); + BigDecimal d = new BigDecimal(String.valueOf(a)); BigDecimal e = new BigDecimal(String.valueOf(b)); BigDecimal f = new BigDecimal(String.valueOf(c)); - BigDecimal def; - BigDecimal dfe; - - def = d.add(e).add(f); - dfe = d.add(f).add(e); + BigDecimal def = d.add(e).add(f); + BigDecimal dfe = d.add(f).add(e); System.out.println("d + e + f = " + def); System.out.println("d + f + e = " + dfe); From f6a39f84bb36adad56c75ed77e411ab775d2cd54 Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 13 Jun 2017 22:29:27 +0100 Subject: [PATCH 020/391] BAEL-837 - Added jUnit test. --- .../maths/FloatingPointArithmetic.java | 27 ++++++----- .../maths/FloatingPointArithmeticTest.java | 45 +++++++++++++++++++ 2 files changed, 62 insertions(+), 10 deletions(-) create mode 100644 core-java/src/test/java/com/baeldung/maths/FloatingPointArithmeticTest.java diff --git a/core-java/src/main/java/com/baeldung/maths/FloatingPointArithmetic.java b/core-java/src/main/java/com/baeldung/maths/FloatingPointArithmetic.java index 9cdeeb5e81..4163adcf09 100644 --- a/core-java/src/main/java/com/baeldung/maths/FloatingPointArithmetic.java +++ b/core-java/src/main/java/com/baeldung/maths/FloatingPointArithmetic.java @@ -13,30 +13,37 @@ public class FloatingPointArithmetic { System.out.println("b = " + b); System.out.println("c = " + c); - double ab = a + b; - System.out.println("a + b = " + ab); + double sum_ab = a + b; + System.out.println("a + b = " + sum_ab); double abc = a + b + c; System.out.println("a + b + c = " + abc); - double ac = a + c; - System.out.println("a + c = " + ac); + double ab_c = sum_ab + c; + System.out.println("ab + c = " + ab_c); + + double sum_ac = a + c; + System.out.println("a + c = " + sum_ac); double acb = a + c + b; System.out.println("a + c + b = " + acb); - double ac_b = ac + b; + double ac_b = sum_ac + b; System.out.println("ac + b = " + ac_b); + double ab = 18.1; + double ac = 34.67; + double sum_ab_c = ab + c; + double sum_ac_b = ac + b; + System.out.println("ab + c = " + sum_ab_c); + System.out.println("ac + b = " + sum_ac_b); + BigDecimal d = new BigDecimal(String.valueOf(a)); BigDecimal e = new BigDecimal(String.valueOf(b)); BigDecimal f = new BigDecimal(String.valueOf(c)); - BigDecimal def; - BigDecimal dfe; - - def = d.add(e).add(f); - dfe = d.add(f).add(e); + BigDecimal def = d.add(e).add(f); + BigDecimal dfe = d.add(f).add(e); System.out.println("d + e + f = " + def); System.out.println("d + f + e = " + dfe); diff --git a/core-java/src/test/java/com/baeldung/maths/FloatingPointArithmeticTest.java b/core-java/src/test/java/com/baeldung/maths/FloatingPointArithmeticTest.java new file mode 100644 index 0000000000..2066f13c6d --- /dev/null +++ b/core-java/src/test/java/com/baeldung/maths/FloatingPointArithmeticTest.java @@ -0,0 +1,45 @@ +package com.baeldung.maths; + +import java.math.BigDecimal; + +import org.junit.Assert; +import org.junit.Test; + +public class FloatingPointArithmeticTest { + + @Test + public void givenDecimalNumbers_whenAddedTogether_thenGetExpectedResult() { + double a = 13.22; + double b = 4.88; + double c = 21.45; + double result = 39.55; + + double abc = a + b + c; + double acb = a + c + b; + + Assert.assertEquals(result, abc, 0); + Assert.assertNotEquals(result, acb, 0); + + double ab = 18.1; + double ac = 34.67; + + double ab_c = ab + c; + double ac_b = ac + b; + + Assert.assertEquals(result, ab_c, 0); + Assert.assertNotEquals(result, ac_b, 0); + + BigDecimal d = new BigDecimal(String.valueOf(a)); + BigDecimal e = new BigDecimal(String.valueOf(b)); + BigDecimal f = new BigDecimal(String.valueOf(c)); + BigDecimal sum = new BigDecimal("39.55"); + + BigDecimal def = d.add(e).add(f); + BigDecimal dfe = d.add(f).add(e); + + Assert.assertEquals(0, def.compareTo(sum)); + Assert.assertEquals(0, dfe.compareTo(sum)); + + Assert.assertNotEquals(0, sum.compareTo(new BigDecimal(String.valueOf(acb)))); + } +} From f775bf91e53a1ecfb9b70596688d7c8202bf495f Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 4 Jul 2017 15:16:41 +0100 Subject: [PATCH 021/391] BAEL-579 Updated Spring Cloud Version I was getting error: java.lang.NoSuchMethodError: org.springframework.cloud.config.environment.Environment After version update, all is okay. --- spring-cloud/spring-cloud-config/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-cloud/spring-cloud-config/pom.xml b/spring-cloud/spring-cloud-config/pom.xml index 81693b7e2e..d91b30d13f 100644 --- a/spring-cloud/spring-cloud-config/pom.xml +++ b/spring-cloud/spring-cloud-config/pom.xml @@ -34,7 +34,7 @@ - Brixton.SR7 + Dalston.SR1 From 076657a26a57e0aa676989a4d97966a3b9d53e1c Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 4 Jul 2017 17:39:33 +0100 Subject: [PATCH 022/391] BAEL-579 Added actuator to Cloud Config Client. --- .../spring-cloud-config/client/pom.xml | 98 ++++++++++--------- .../cloud/config/client/ConfigClient.java | 60 ++++++------ 2 files changed, 82 insertions(+), 76 deletions(-) diff --git a/spring-cloud/spring-cloud-config/client/pom.xml b/spring-cloud/spring-cloud-config/client/pom.xml index 667040ed3c..c49f26f65d 100644 --- a/spring-cloud/spring-cloud-config/client/pom.xml +++ b/spring-cloud/spring-cloud-config/client/pom.xml @@ -1,47 +1,51 @@ - - - 4.0.0 - - - com.baeldung.spring.cloud - spring-cloud-config - 1.0-SNAPSHOT - - client - - - - org.springframework.cloud - spring-cloud-starter-config - ${spring-cloud-starter-config.version} - - - org.springframework.boot - spring-boot-starter-web - ${org.springframework.boot.version} - - - - org.springframework.boot - spring-boot-starter-test - ${org.springframework.boot.version} - test - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - - - 1.2.2.RELEASE - 1.4.2.RELEASE - - + + + 4.0.0 + + + com.baeldung.spring.cloud + spring-cloud-config + 1.0-SNAPSHOT + + client + + + + org.springframework.cloud + spring-cloud-starter-config + ${spring-cloud-starter-config.version} + + + org.springframework.boot + spring-boot-starter-web + ${org.springframework.boot.version} + + + + org.springframework.boot + spring-boot-starter-test + ${org.springframework.boot.version} + test + + + org.springframework.boot + spring-boot-actuator + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + + 1.2.2.RELEASE + 1.4.2.RELEASE + + diff --git a/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java b/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java index 1dd3bbdab0..96121eb9b5 100644 --- a/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java +++ b/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java @@ -1,29 +1,31 @@ -package com.baeldung.spring.cloud.config.client; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.http.MediaType; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RestController; - -@SpringBootApplication -@RestController -public class ConfigClient { - @Value("${user.role}") - private String role; - - @Value("${user.password}") - private String password; - - public static void main(String[] args) { - SpringApplication.run(ConfigClient.class, args); - } - - @RequestMapping(value = "/whoami/{username}", method = RequestMethod.GET, produces = MediaType.TEXT_PLAIN_VALUE) - public String whoami(@PathVariable("username") String username) { - return String.format("Hello %s! You are a(n) %s and your password is '%s'.\n", username, role, password); - } -} +package com.baeldung.spring.cloud.config.client; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cloud.context.config.annotation.RefreshScope; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +@SpringBootApplication +@RestController +@RefreshScope +public class ConfigClient { + @Value("${user.role}") + private String role; + + @Value("${user.password}") + private String password; + + public static void main(String[] args) { + SpringApplication.run(ConfigClient.class, args); + } + + @RequestMapping(value = "/whoami/{username}", method = RequestMethod.GET, produces = MediaType.TEXT_PLAIN_VALUE) + public String whoami(@PathVariable("username") String username) { + return String.format("Hello %s! You are a(n) %s and your password is '%s'.\n", username, role, password); + } +} From 7845da922d89d53506dd0fff387ea13694c50bc1 Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 4 Jul 2017 23:04:25 +0100 Subject: [PATCH 023/391] BAEL-579 Enabled cloud bus and updated dependencies. --- .../spring-cloud-config/server/pom.xml | 107 +++++++++--------- .../src/main/resources/application.properties | 23 ++-- 2 files changed, 67 insertions(+), 63 deletions(-) diff --git a/spring-cloud/spring-cloud-config/server/pom.xml b/spring-cloud/spring-cloud-config/server/pom.xml index 0157851001..7aeb1967a0 100644 --- a/spring-cloud/spring-cloud-config/server/pom.xml +++ b/spring-cloud/spring-cloud-config/server/pom.xml @@ -1,54 +1,53 @@ - - - 4.0.0 - - - com.baeldung.spring.cloud - spring-cloud-config - 1.0-SNAPSHOT - - server - - - - org.springframework.cloud - spring-cloud-config-server - ${spring-cloud-config-server.version} - - - org.springframework.boot - spring-boot-starter-security - ${org.springframework.boot.version} - - - org.springframework.boot - spring-boot-starter-web - ${org.springframework.boot.version} - - - - org.springframework.boot - spring-boot-starter-test - ${org.springframework.boot.version} - test - - - - - - - org.springframework.boot - spring-boot-maven-plugin - ${org.springframework.boot.version} - - - - - - 1.2.2.RELEASE - 1.4.2.RELEASE - - - + + + 4.0.0 + + + com.baeldung.spring.cloud + spring-cloud-config + 1.0-SNAPSHOT + + server + + + + org.springframework.cloud + spring-cloud-config-server + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-test + test + + + + org.springframework.cloud + spring-cloud-config-monitor + + + org.springframework.cloud + spring-cloud-starter-stream-rabbit + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/spring-cloud/spring-cloud-config/server/src/main/resources/application.properties b/spring-cloud/spring-cloud-config/server/src/main/resources/application.properties index 3d4f3bcd47..95699c9fa0 100644 --- a/spring-cloud/spring-cloud-config/server/src/main/resources/application.properties +++ b/spring-cloud/spring-cloud-config/server/src/main/resources/application.properties @@ -1,9 +1,14 @@ -server.port=8888 -spring.cloud.config.server.git.uri= -spring.cloud.config.server.git.clone-on-start=true -security.user.name=root -security.user.password=s3cr3t -encrypt.key-store.location=classpath:/config-server.jks -encrypt.key-store.password=my-s70r3-s3cr3t -encrypt.key-store.alias=config-server-key -encrypt.key-store.secret=my-k34-s3cr3t +server.port=8888 +spring.cloud.config.server.git.uri= +spring.cloud.config.server.git.clone-on-start=true +security.user.name=root +security.user.password=s3cr3t +encrypt.key-store.location=classpath:/config-server.jks +encrypt.key-store.password=my-s70r3-s3cr3t +encrypt.key-store.alias=config-server-key +encrypt.key-store.secret=my-k34-s3cr3t +spring.cloud.bus.enabled=true +spring.rabbitmq.host=localhost +spring.rabbitmq.port=5672 +spring.rabbitmq.username=guest +spring.rabbitmq.password=guest \ No newline at end of file From 1d96bc5761994a33af9a7a9aa5ab68604a5b44dc Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 4 Jul 2017 23:41:22 +0100 Subject: [PATCH 024/391] BAEL-579 Config Client using Spring Cloud Bus. --- .../spring-cloud-config/client/pom.xml | 12 ++++------ .../cloud/config/client/ConfigClient.java | 20 ---------------- .../config/client/ConfigClientController.java | 24 +++++++++++++++++++ .../src/main/resources/bootstrap.properties | 16 ++++++++----- 4 files changed, 39 insertions(+), 33 deletions(-) create mode 100644 spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClientController.java diff --git a/spring-cloud/spring-cloud-config/client/pom.xml b/spring-cloud/spring-cloud-config/client/pom.xml index c49f26f65d..e7316aa832 100644 --- a/spring-cloud/spring-cloud-config/client/pom.xml +++ b/spring-cloud/spring-cloud-config/client/pom.xml @@ -15,24 +15,26 @@ org.springframework.cloud spring-cloud-starter-config - ${spring-cloud-starter-config.version} org.springframework.boot spring-boot-starter-web - ${org.springframework.boot.version} org.springframework.boot spring-boot-starter-test - ${org.springframework.boot.version} test + org.springframework.boot spring-boot-actuator + + org.springframework.cloud + spring-cloud-starter-bus-amqp + @@ -44,8 +46,4 @@ - - 1.2.2.RELEASE - 1.4.2.RELEASE - diff --git a/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java b/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java index 96121eb9b5..1cc3752a16 100644 --- a/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java +++ b/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java @@ -1,31 +1,11 @@ package com.baeldung.spring.cloud.config.client; -import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.cloud.context.config.annotation.RefreshScope; -import org.springframework.http.MediaType; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RestController; @SpringBootApplication -@RestController -@RefreshScope public class ConfigClient { - @Value("${user.role}") - private String role; - - @Value("${user.password}") - private String password; - public static void main(String[] args) { SpringApplication.run(ConfigClient.class, args); } - - @RequestMapping(value = "/whoami/{username}", method = RequestMethod.GET, produces = MediaType.TEXT_PLAIN_VALUE) - public String whoami(@PathVariable("username") String username) { - return String.format("Hello %s! You are a(n) %s and your password is '%s'.\n", username, role, password); - } } diff --git a/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClientController.java b/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClientController.java new file mode 100644 index 0000000000..bd882e5870 --- /dev/null +++ b/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClientController.java @@ -0,0 +1,24 @@ +package com.baeldung.spring.cloud.config.client; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.cloud.context.config.annotation.RefreshScope; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RefreshScope +public class ConfigClientController { + @Value("${user.role}") + private String role; + + @Value("${user.password}") + private String password; + + @RequestMapping(value = "/whoami/{username}", method = RequestMethod.GET, produces = MediaType.TEXT_PLAIN_VALUE) + public String whoami(@PathVariable("username") String username) { + return String.format("Hello %s! You are a(n) %s and your password is '%s'.\n", username, role, password); + } +} diff --git a/spring-cloud/spring-cloud-config/client/src/main/resources/bootstrap.properties b/spring-cloud/spring-cloud-config/client/src/main/resources/bootstrap.properties index 5dde8baa28..8b3f97b5c6 100644 --- a/spring-cloud/spring-cloud-config/client/src/main/resources/bootstrap.properties +++ b/spring-cloud/spring-cloud-config/client/src/main/resources/bootstrap.properties @@ -1,6 +1,10 @@ -spring.application.name=config-client -spring.profiles.active=development -spring.cloud.config.uri=http://localhost:8888 -spring.cloud.config.username=root -spring.cloud.config.password=s3cr3t -spring.cloud.config.fail-fast=true +spring.application.name=config-client +spring.profiles.active=development +spring.cloud.config.uri=http://localhost:8888 +spring.cloud.config.username=root +spring.cloud.config.password=s3cr3t +spring.cloud.config.fail-fast=true +spring.rabbitmq.host=localhost +spring.rabbitmq.port=5672 +spring.rabbitmq.username=guest +spring.rabbitmq.password=guest \ No newline at end of file From 73d05a5d5f97f41e4eab4a422898abbee53ebffd Mon Sep 17 00:00:00 2001 From: iaforek Date: Wed, 5 Jul 2017 12:51:02 +0100 Subject: [PATCH 025/391] BAEL-579 Recreated Basic Config Server. --- .../spring-cloud-config-server/pom.xml | 68 ++++++++++++++++++ .../SpringCloudConfigServerApplication.java | 14 ++++ .../src/main/resources/application.properties | 9 +++ .../src/main/resources/config-server.jks | Bin 0 -> 3842 bytes ...ringCloudConfigServerApplicationTests.java | 16 +++++ 5 files changed, 107 insertions(+) create mode 100644 spring-cloud-bus/spring-cloud-config-server/pom.xml create mode 100644 spring-cloud-bus/spring-cloud-config-server/src/main/java/com/baeldung/SpringCloudConfigServerApplication.java create mode 100644 spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties create mode 100644 spring-cloud-bus/spring-cloud-config-server/src/main/resources/config-server.jks create mode 100644 spring-cloud-bus/spring-cloud-config-server/src/test/java/com/baeldung/SpringCloudConfigServerApplicationTests.java diff --git a/spring-cloud-bus/spring-cloud-config-server/pom.xml b/spring-cloud-bus/spring-cloud-config-server/pom.xml new file mode 100644 index 0000000000..e03a975c54 --- /dev/null +++ b/spring-cloud-bus/spring-cloud-config-server/pom.xml @@ -0,0 +1,68 @@ + + + 4.0.0 + + com.baeldung.spring.cloud + spring-cloud-config-server + 0.0.1-SNAPSHOT + jar + + spring-cloud-config-server + Demo Spring Cloud Config Server + + + org.springframework.boot + spring-boot-starter-parent + 1.5.4.RELEASE + + + + + UTF-8 + UTF-8 + 1.8 + Dalston.SR1 + + + + + org.springframework.cloud + spring-cloud-config-server + + + + org.springframework.boot + spring-boot-starter-security + + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.cloud + spring-cloud-dependencies + ${spring-cloud.version} + pom + import + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + + diff --git a/spring-cloud-bus/spring-cloud-config-server/src/main/java/com/baeldung/SpringCloudConfigServerApplication.java b/spring-cloud-bus/spring-cloud-config-server/src/main/java/com/baeldung/SpringCloudConfigServerApplication.java new file mode 100644 index 0000000000..4feace7c89 --- /dev/null +++ b/spring-cloud-bus/spring-cloud-config-server/src/main/java/com/baeldung/SpringCloudConfigServerApplication.java @@ -0,0 +1,14 @@ +package com.baeldung; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cloud.config.server.EnableConfigServer; + +@SpringBootApplication +@EnableConfigServer +public class SpringCloudConfigServerApplication { + + public static void main(String[] args) { + SpringApplication.run(SpringCloudConfigServerApplication.class, args); + } +} diff --git a/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties b/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties new file mode 100644 index 0000000000..45be8c1e89 --- /dev/null +++ b/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties @@ -0,0 +1,9 @@ +server.port=8888 +spring.cloud.config.server.git.uri=https://github.com/iaforek/spring-cloudconfig-properties +spring.cloud.config.server.git.clone-on-start=true +security.user.name=root +security.user.password=s3cr3t +encrypt.key-store.location=classpath:/config-server.jks +encrypt.key-store.password=my-s70r3-s3cr3t +encrypt.key-store.alias=config-server-key +encrypt.key-store.secret=my-k34-s3cr3t \ No newline at end of file diff --git a/spring-cloud-bus/spring-cloud-config-server/src/main/resources/config-server.jks b/spring-cloud-bus/spring-cloud-config-server/src/main/resources/config-server.jks new file mode 100644 index 0000000000000000000000000000000000000000..f3dddb4a8f4c4773a8feae4d8534b129e5e67f45 GIT binary patch literal 3842 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 Date: Wed, 5 Jul 2017 13:08:33 +0100 Subject: [PATCH 026/391] BAEL-579 Recreated Config Client. --- .../spring-cloud-config-client/pom.xml | 66 +++++++++++++++++++ .../SpringCloudConfigClientApplication.java | 30 +++++++++ .../src/main/resources/bootstrap.properties | 6 ++ ...ringCloudConfigClientApplicationTests.java | 16 +++++ 4 files changed, 118 insertions(+) create mode 100644 spring-cloud-bus/spring-cloud-config-client/pom.xml create mode 100644 spring-cloud-bus/spring-cloud-config-client/src/main/java/com/baeldung/SpringCloudConfigClientApplication.java create mode 100644 spring-cloud-bus/spring-cloud-config-client/src/main/resources/bootstrap.properties create mode 100644 spring-cloud-bus/spring-cloud-config-client/src/test/java/com/baeldung/SpringCloudConfigClientApplicationTests.java diff --git a/spring-cloud-bus/spring-cloud-config-client/pom.xml b/spring-cloud-bus/spring-cloud-config-client/pom.xml new file mode 100644 index 0000000000..58726bc3cc --- /dev/null +++ b/spring-cloud-bus/spring-cloud-config-client/pom.xml @@ -0,0 +1,66 @@ + + + 4.0.0 + + com.baeldung.spring.cloud + spring-cloud-config-client + 0.0.1-SNAPSHOT + jar + + spring-cloud-config-client + Demo Spring Cloud Config Client + + + org.springframework.boot + spring-boot-starter-parent + 1.5.4.RELEASE + + + + UTF-8 + UTF-8 + 1.8 + Dalston.SR1 + + + + + org.springframework.cloud + spring-cloud-starter-config + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.cloud + spring-cloud-dependencies + ${spring-cloud.version} + pom + import + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + + diff --git a/spring-cloud-bus/spring-cloud-config-client/src/main/java/com/baeldung/SpringCloudConfigClientApplication.java b/spring-cloud-bus/spring-cloud-config-client/src/main/java/com/baeldung/SpringCloudConfigClientApplication.java new file mode 100644 index 0000000000..cfa56eea99 --- /dev/null +++ b/spring-cloud-bus/spring-cloud-config-client/src/main/java/com/baeldung/SpringCloudConfigClientApplication.java @@ -0,0 +1,30 @@ +package com.baeldung; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +@SpringBootApplication +@RestController +public class SpringCloudConfigClientApplication { + + @Value("${user.role}") + private String role; + + @Value("${user.password}") + private String password; + + public static void main(String[] args) { + SpringApplication.run(SpringCloudConfigClientApplication.class, args); + } + + @RequestMapping(value = "/whoami/{username}", method = RequestMethod.GET, produces = MediaType.TEXT_PLAIN_VALUE) + public String whoami(@PathVariable("username") String username) { + return String.format("Hello %s! You are a(n) %s and your password is '%s'.\n", username, role, password); + } +} diff --git a/spring-cloud-bus/spring-cloud-config-client/src/main/resources/bootstrap.properties b/spring-cloud-bus/spring-cloud-config-client/src/main/resources/bootstrap.properties new file mode 100644 index 0000000000..a0af4978c2 --- /dev/null +++ b/spring-cloud-bus/spring-cloud-config-client/src/main/resources/bootstrap.properties @@ -0,0 +1,6 @@ +spring.application.name=config-client +spring.profiles.active=development +spring.cloud.config.uri=http://localhost:8888 +spring.cloud.config.username=root +spring.cloud.config.password=s3cr3t +spring.cloud.config.fail-fast=true \ No newline at end of file diff --git a/spring-cloud-bus/spring-cloud-config-client/src/test/java/com/baeldung/SpringCloudConfigClientApplicationTests.java b/spring-cloud-bus/spring-cloud-config-client/src/test/java/com/baeldung/SpringCloudConfigClientApplicationTests.java new file mode 100644 index 0000000000..3b361f385a --- /dev/null +++ b/spring-cloud-bus/spring-cloud-config-client/src/test/java/com/baeldung/SpringCloudConfigClientApplicationTests.java @@ -0,0 +1,16 @@ +package com.baeldung; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@SpringBootTest +public class SpringCloudConfigClientApplicationTests { + + @Test + public void contextLoads() { + } + +} From 2b55217ee98bb5438a9261b23ff37b7933830ae2 Mon Sep 17 00:00:00 2001 From: iaforek Date: Thu, 6 Jul 2017 09:37:50 +0100 Subject: [PATCH 027/391] BAEL-579 Removed test Git URL. --- .../src/main/resources/application.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties b/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties index 45be8c1e89..1a7c67b7cd 100644 --- a/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties +++ b/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties @@ -1,5 +1,5 @@ server.port=8888 -spring.cloud.config.server.git.uri=https://github.com/iaforek/spring-cloudconfig-properties +spring.cloud.config.server.git.uri= spring.cloud.config.server.git.clone-on-start=true security.user.name=root security.user.password=s3cr3t From 42af88c3c2e105bf56e30bf29503e3d661ce6dfc Mon Sep 17 00:00:00 2001 From: iaforek Date: Thu, 6 Jul 2017 10:34:48 +0100 Subject: [PATCH 028/391] BAEL-579 Added Actuator to Config Client --- spring-cloud-bus/spring-cloud-config-client/pom.xml | 5 +++++ .../com/baeldung/SpringCloudConfigClientApplication.java | 2 ++ .../src/main/resources/bootstrap.properties | 3 ++- 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/spring-cloud-bus/spring-cloud-config-client/pom.xml b/spring-cloud-bus/spring-cloud-config-client/pom.xml index 58726bc3cc..fce0e6d56b 100644 --- a/spring-cloud-bus/spring-cloud-config-client/pom.xml +++ b/spring-cloud-bus/spring-cloud-config-client/pom.xml @@ -39,6 +39,11 @@ spring-boot-starter-test test + + + org.springframework.boot + spring-boot-actuator + diff --git a/spring-cloud-bus/spring-cloud-config-client/src/main/java/com/baeldung/SpringCloudConfigClientApplication.java b/spring-cloud-bus/spring-cloud-config-client/src/main/java/com/baeldung/SpringCloudConfigClientApplication.java index cfa56eea99..d0afd7f6bf 100644 --- a/spring-cloud-bus/spring-cloud-config-client/src/main/java/com/baeldung/SpringCloudConfigClientApplication.java +++ b/spring-cloud-bus/spring-cloud-config-client/src/main/java/com/baeldung/SpringCloudConfigClientApplication.java @@ -3,6 +3,7 @@ package com.baeldung; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cloud.context.config.annotation.RefreshScope; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; @@ -11,6 +12,7 @@ import org.springframework.web.bind.annotation.RestController; @SpringBootApplication @RestController +@RefreshScope public class SpringCloudConfigClientApplication { @Value("${user.role}") diff --git a/spring-cloud-bus/spring-cloud-config-client/src/main/resources/bootstrap.properties b/spring-cloud-bus/spring-cloud-config-client/src/main/resources/bootstrap.properties index a0af4978c2..7b362614ba 100644 --- a/spring-cloud-bus/spring-cloud-config-client/src/main/resources/bootstrap.properties +++ b/spring-cloud-bus/spring-cloud-config-client/src/main/resources/bootstrap.properties @@ -3,4 +3,5 @@ spring.profiles.active=development spring.cloud.config.uri=http://localhost:8888 spring.cloud.config.username=root spring.cloud.config.password=s3cr3t -spring.cloud.config.fail-fast=true \ No newline at end of file +spring.cloud.config.fail-fast=true +management.security.enabled=false \ No newline at end of file From dc5a4b3af6ddcfbb5190faa373a9c6ebb043a298 Mon Sep 17 00:00:00 2001 From: iaforek Date: Thu, 6 Jul 2017 11:24:30 +0100 Subject: [PATCH 029/391] BAEL-579 Added Spring Cloud Bus to Client. --- spring-cloud-bus/spring-cloud-config-client/pom.xml | 5 +++++ .../src/main/resources/application.yml | 7 +++++++ 2 files changed, 12 insertions(+) create mode 100644 spring-cloud-bus/spring-cloud-config-client/src/main/resources/application.yml diff --git a/spring-cloud-bus/spring-cloud-config-client/pom.xml b/spring-cloud-bus/spring-cloud-config-client/pom.xml index fce0e6d56b..2eb0191c79 100644 --- a/spring-cloud-bus/spring-cloud-config-client/pom.xml +++ b/spring-cloud-bus/spring-cloud-config-client/pom.xml @@ -44,6 +44,11 @@ org.springframework.boot spring-boot-actuator + + + org.springframework.cloud + spring-cloud-starter-bus-amqp + diff --git a/spring-cloud-bus/spring-cloud-config-client/src/main/resources/application.yml b/spring-cloud-bus/spring-cloud-config-client/src/main/resources/application.yml new file mode 100644 index 0000000000..547e0284f3 --- /dev/null +++ b/spring-cloud-bus/spring-cloud-config-client/src/main/resources/application.yml @@ -0,0 +1,7 @@ +--- +spring: + rabbitmq: + host: localhost + port: 5672 + username: guest + password: guest \ No newline at end of file From ee95780416b48528ee92b8fb41920595d4c8f10c Mon Sep 17 00:00:00 2001 From: iaforek Date: Thu, 6 Jul 2017 12:02:51 +0100 Subject: [PATCH 030/391] BAEL-579 Server changes for Spring Cloud Bus Added dependencies and removed git.clone-on-start as this was causing server to throw errors after git properties change. --- spring-cloud-bus/spring-cloud-config-server/pom.xml | 10 ++++++++++ .../src/main/resources/application.properties | 9 ++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/spring-cloud-bus/spring-cloud-config-server/pom.xml b/spring-cloud-bus/spring-cloud-config-server/pom.xml index e03a975c54..2425c95620 100644 --- a/spring-cloud-bus/spring-cloud-config-server/pom.xml +++ b/spring-cloud-bus/spring-cloud-config-server/pom.xml @@ -41,6 +41,16 @@ spring-boot-starter-test test + + + org.springframework.cloud + spring-cloud-config-monitor + + + + org.springframework.cloud + spring-cloud-starter-stream-rabbit + diff --git a/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties b/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties index 1a7c67b7cd..85b75fa64a 100644 --- a/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties +++ b/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties @@ -1,9 +1,12 @@ server.port=8888 -spring.cloud.config.server.git.uri= -spring.cloud.config.server.git.clone-on-start=true +spring.cloud.config.server.git.uri=https://github.com/iaforek/spring-cloudconfig-properties security.user.name=root security.user.password=s3cr3t encrypt.key-store.location=classpath:/config-server.jks encrypt.key-store.password=my-s70r3-s3cr3t encrypt.key-store.alias=config-server-key -encrypt.key-store.secret=my-k34-s3cr3t \ No newline at end of file +encrypt.key-store.secret=my-k34-s3cr3t +spring.rabbitmq.host=localhost +spring.rabbitmq.port=5672 +spring.rabbitmq.username=guest +spring.rabbitmq.password=guest \ No newline at end of file From 7f8b32cdd68d15ea31a07e653b7a81d8fdc30ba8 Mon Sep 17 00:00:00 2001 From: iaforek Date: Thu, 6 Jul 2017 12:05:13 +0100 Subject: [PATCH 031/391] BAEL-579 Removed Git URL. --- .../src/main/resources/application.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties b/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties index 85b75fa64a..4c18c192c0 100644 --- a/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties +++ b/spring-cloud-bus/spring-cloud-config-server/src/main/resources/application.properties @@ -1,5 +1,5 @@ server.port=8888 -spring.cloud.config.server.git.uri=https://github.com/iaforek/spring-cloudconfig-properties +spring.cloud.config.server.git.uri= security.user.name=root security.user.password=s3cr3t encrypt.key-store.location=classpath:/config-server.jks From a68b0e59f31aa2b747283c41b487d6cdcbb53ffe Mon Sep 17 00:00:00 2001 From: iaforek Date: Thu, 6 Jul 2017 12:13:29 +0100 Subject: [PATCH 032/391] Revert "BAEL-579 Updated Spring Cloud Version" This reverts commit f775bf91e53a1ecfb9b70596688d7c8202bf495f. --- spring-cloud/spring-cloud-config/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-cloud/spring-cloud-config/pom.xml b/spring-cloud/spring-cloud-config/pom.xml index d91b30d13f..81693b7e2e 100644 --- a/spring-cloud/spring-cloud-config/pom.xml +++ b/spring-cloud/spring-cloud-config/pom.xml @@ -34,7 +34,7 @@ - Dalston.SR1 + Brixton.SR7 From 5681be08446e16eb2ab20e888fa5a47688361104 Mon Sep 17 00:00:00 2001 From: iaforek Date: Thu, 6 Jul 2017 12:18:37 +0100 Subject: [PATCH 033/391] Revert "BAEL-579 Config Client using Spring Cloud Bus." This reverts commit 1d96bc5761994a33af9a7a9aa5ab68604a5b44dc. --- .../spring-cloud-config/client/pom.xml | 12 ++++++---- .../cloud/config/client/ConfigClient.java | 20 ++++++++++++++++ .../config/client/ConfigClientController.java | 24 ------------------- .../src/main/resources/bootstrap.properties | 16 +++++-------- 4 files changed, 33 insertions(+), 39 deletions(-) delete mode 100644 spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClientController.java diff --git a/spring-cloud/spring-cloud-config/client/pom.xml b/spring-cloud/spring-cloud-config/client/pom.xml index e7316aa832..c49f26f65d 100644 --- a/spring-cloud/spring-cloud-config/client/pom.xml +++ b/spring-cloud/spring-cloud-config/client/pom.xml @@ -15,26 +15,24 @@ org.springframework.cloud spring-cloud-starter-config + ${spring-cloud-starter-config.version} org.springframework.boot spring-boot-starter-web + ${org.springframework.boot.version} org.springframework.boot spring-boot-starter-test + ${org.springframework.boot.version} test - org.springframework.boot spring-boot-actuator - - org.springframework.cloud - spring-cloud-starter-bus-amqp - @@ -46,4 +44,8 @@ + + 1.2.2.RELEASE + 1.4.2.RELEASE + diff --git a/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java b/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java index 1cc3752a16..96121eb9b5 100644 --- a/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java +++ b/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java @@ -1,11 +1,31 @@ package com.baeldung.spring.cloud.config.client; +import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cloud.context.config.annotation.RefreshScope; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; @SpringBootApplication +@RestController +@RefreshScope public class ConfigClient { + @Value("${user.role}") + private String role; + + @Value("${user.password}") + private String password; + public static void main(String[] args) { SpringApplication.run(ConfigClient.class, args); } + + @RequestMapping(value = "/whoami/{username}", method = RequestMethod.GET, produces = MediaType.TEXT_PLAIN_VALUE) + public String whoami(@PathVariable("username") String username) { + return String.format("Hello %s! You are a(n) %s and your password is '%s'.\n", username, role, password); + } } diff --git a/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClientController.java b/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClientController.java deleted file mode 100644 index bd882e5870..0000000000 --- a/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClientController.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.baeldung.spring.cloud.config.client; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.cloud.context.config.annotation.RefreshScope; -import org.springframework.http.MediaType; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RestController; - -@RestController -@RefreshScope -public class ConfigClientController { - @Value("${user.role}") - private String role; - - @Value("${user.password}") - private String password; - - @RequestMapping(value = "/whoami/{username}", method = RequestMethod.GET, produces = MediaType.TEXT_PLAIN_VALUE) - public String whoami(@PathVariable("username") String username) { - return String.format("Hello %s! You are a(n) %s and your password is '%s'.\n", username, role, password); - } -} diff --git a/spring-cloud/spring-cloud-config/client/src/main/resources/bootstrap.properties b/spring-cloud/spring-cloud-config/client/src/main/resources/bootstrap.properties index 8b3f97b5c6..5dde8baa28 100644 --- a/spring-cloud/spring-cloud-config/client/src/main/resources/bootstrap.properties +++ b/spring-cloud/spring-cloud-config/client/src/main/resources/bootstrap.properties @@ -1,10 +1,6 @@ -spring.application.name=config-client -spring.profiles.active=development -spring.cloud.config.uri=http://localhost:8888 -spring.cloud.config.username=root -spring.cloud.config.password=s3cr3t -spring.cloud.config.fail-fast=true -spring.rabbitmq.host=localhost -spring.rabbitmq.port=5672 -spring.rabbitmq.username=guest -spring.rabbitmq.password=guest \ No newline at end of file +spring.application.name=config-client +spring.profiles.active=development +spring.cloud.config.uri=http://localhost:8888 +spring.cloud.config.username=root +spring.cloud.config.password=s3cr3t +spring.cloud.config.fail-fast=true From 3856d1a83238f752f49fc40a8fb18c312c9026c1 Mon Sep 17 00:00:00 2001 From: iaforek Date: Thu, 6 Jul 2017 12:19:08 +0100 Subject: [PATCH 034/391] Revert "BAEL-579 Enabled cloud bus and updated dependencies." This reverts commit 7845da922d89d53506dd0fff387ea13694c50bc1. --- .../spring-cloud-config/server/pom.xml | 107 +++++++++--------- .../src/main/resources/application.properties | 23 ++-- 2 files changed, 63 insertions(+), 67 deletions(-) diff --git a/spring-cloud/spring-cloud-config/server/pom.xml b/spring-cloud/spring-cloud-config/server/pom.xml index 7aeb1967a0..0157851001 100644 --- a/spring-cloud/spring-cloud-config/server/pom.xml +++ b/spring-cloud/spring-cloud-config/server/pom.xml @@ -1,53 +1,54 @@ - - - 4.0.0 - - - com.baeldung.spring.cloud - spring-cloud-config - 1.0-SNAPSHOT - - server - - - - org.springframework.cloud - spring-cloud-config-server - - - org.springframework.boot - spring-boot-starter-security - - - org.springframework.boot - spring-boot-starter-web - - - - org.springframework.boot - spring-boot-starter-test - test - - - - org.springframework.cloud - spring-cloud-config-monitor - - - org.springframework.cloud - spring-cloud-starter-stream-rabbit - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - - + + + 4.0.0 + + + com.baeldung.spring.cloud + spring-cloud-config + 1.0-SNAPSHOT + + server + + + + org.springframework.cloud + spring-cloud-config-server + ${spring-cloud-config-server.version} + + + org.springframework.boot + spring-boot-starter-security + ${org.springframework.boot.version} + + + org.springframework.boot + spring-boot-starter-web + ${org.springframework.boot.version} + + + + org.springframework.boot + spring-boot-starter-test + ${org.springframework.boot.version} + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + ${org.springframework.boot.version} + + + + + + 1.2.2.RELEASE + 1.4.2.RELEASE + + + diff --git a/spring-cloud/spring-cloud-config/server/src/main/resources/application.properties b/spring-cloud/spring-cloud-config/server/src/main/resources/application.properties index 95699c9fa0..3d4f3bcd47 100644 --- a/spring-cloud/spring-cloud-config/server/src/main/resources/application.properties +++ b/spring-cloud/spring-cloud-config/server/src/main/resources/application.properties @@ -1,14 +1,9 @@ -server.port=8888 -spring.cloud.config.server.git.uri= -spring.cloud.config.server.git.clone-on-start=true -security.user.name=root -security.user.password=s3cr3t -encrypt.key-store.location=classpath:/config-server.jks -encrypt.key-store.password=my-s70r3-s3cr3t -encrypt.key-store.alias=config-server-key -encrypt.key-store.secret=my-k34-s3cr3t -spring.cloud.bus.enabled=true -spring.rabbitmq.host=localhost -spring.rabbitmq.port=5672 -spring.rabbitmq.username=guest -spring.rabbitmq.password=guest \ No newline at end of file +server.port=8888 +spring.cloud.config.server.git.uri= +spring.cloud.config.server.git.clone-on-start=true +security.user.name=root +security.user.password=s3cr3t +encrypt.key-store.location=classpath:/config-server.jks +encrypt.key-store.password=my-s70r3-s3cr3t +encrypt.key-store.alias=config-server-key +encrypt.key-store.secret=my-k34-s3cr3t From bf7829d539acbfe3a7d580e1db617e3c56fb2922 Mon Sep 17 00:00:00 2001 From: iaforek Date: Thu, 6 Jul 2017 12:19:26 +0100 Subject: [PATCH 035/391] Revert "BAEL-579 Added actuator to Cloud Config Client." This reverts commit 076657a26a57e0aa676989a4d97966a3b9d53e1c. --- .../spring-cloud-config/client/pom.xml | 98 +++++++++---------- .../cloud/config/client/ConfigClient.java | 60 ++++++------ 2 files changed, 76 insertions(+), 82 deletions(-) diff --git a/spring-cloud/spring-cloud-config/client/pom.xml b/spring-cloud/spring-cloud-config/client/pom.xml index c49f26f65d..667040ed3c 100644 --- a/spring-cloud/spring-cloud-config/client/pom.xml +++ b/spring-cloud/spring-cloud-config/client/pom.xml @@ -1,51 +1,47 @@ - - - 4.0.0 - - - com.baeldung.spring.cloud - spring-cloud-config - 1.0-SNAPSHOT - - client - - - - org.springframework.cloud - spring-cloud-starter-config - ${spring-cloud-starter-config.version} - - - org.springframework.boot - spring-boot-starter-web - ${org.springframework.boot.version} - - - - org.springframework.boot - spring-boot-starter-test - ${org.springframework.boot.version} - test - - - org.springframework.boot - spring-boot-actuator - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - - - 1.2.2.RELEASE - 1.4.2.RELEASE - - + + + 4.0.0 + + + com.baeldung.spring.cloud + spring-cloud-config + 1.0-SNAPSHOT + + client + + + + org.springframework.cloud + spring-cloud-starter-config + ${spring-cloud-starter-config.version} + + + org.springframework.boot + spring-boot-starter-web + ${org.springframework.boot.version} + + + + org.springframework.boot + spring-boot-starter-test + ${org.springframework.boot.version} + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + + 1.2.2.RELEASE + 1.4.2.RELEASE + + diff --git a/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java b/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java index 96121eb9b5..1dd3bbdab0 100644 --- a/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java +++ b/spring-cloud/spring-cloud-config/client/src/main/java/com/baeldung/spring/cloud/config/client/ConfigClient.java @@ -1,31 +1,29 @@ -package com.baeldung.spring.cloud.config.client; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.cloud.context.config.annotation.RefreshScope; -import org.springframework.http.MediaType; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RestController; - -@SpringBootApplication -@RestController -@RefreshScope -public class ConfigClient { - @Value("${user.role}") - private String role; - - @Value("${user.password}") - private String password; - - public static void main(String[] args) { - SpringApplication.run(ConfigClient.class, args); - } - - @RequestMapping(value = "/whoami/{username}", method = RequestMethod.GET, produces = MediaType.TEXT_PLAIN_VALUE) - public String whoami(@PathVariable("username") String username) { - return String.format("Hello %s! You are a(n) %s and your password is '%s'.\n", username, role, password); - } -} +package com.baeldung.spring.cloud.config.client; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +@SpringBootApplication +@RestController +public class ConfigClient { + @Value("${user.role}") + private String role; + + @Value("${user.password}") + private String password; + + public static void main(String[] args) { + SpringApplication.run(ConfigClient.class, args); + } + + @RequestMapping(value = "/whoami/{username}", method = RequestMethod.GET, produces = MediaType.TEXT_PLAIN_VALUE) + public String whoami(@PathVariable("username") String username) { + return String.format("Hello %s! You are a(n) %s and your password is '%s'.\n", username, role, password); + } +} From 67dc0bd2e6366bce742ddcfbf31276e05b87fc6c Mon Sep 17 00:00:00 2001 From: iaforek Date: Fri, 7 Jul 2017 09:44:38 +0100 Subject: [PATCH 036/391] BAEL-579 Added missing dependency versions. --- .../spring-cloud-config-server/pom.xml | 159 +++++++++--------- 1 file changed, 81 insertions(+), 78 deletions(-) diff --git a/spring-cloud-bus/spring-cloud-config-server/pom.xml b/spring-cloud-bus/spring-cloud-config-server/pom.xml index 2425c95620..9ec661b718 100644 --- a/spring-cloud-bus/spring-cloud-config-server/pom.xml +++ b/spring-cloud-bus/spring-cloud-config-server/pom.xml @@ -1,78 +1,81 @@ - - - 4.0.0 - - com.baeldung.spring.cloud - spring-cloud-config-server - 0.0.1-SNAPSHOT - jar - - spring-cloud-config-server - Demo Spring Cloud Config Server - - - org.springframework.boot - spring-boot-starter-parent - 1.5.4.RELEASE - - - - - UTF-8 - UTF-8 - 1.8 - Dalston.SR1 - - - - - org.springframework.cloud - spring-cloud-config-server - - - - org.springframework.boot - spring-boot-starter-security - - - - org.springframework.boot - spring-boot-starter-test - test - - - - org.springframework.cloud - spring-cloud-config-monitor - - - - org.springframework.cloud - spring-cloud-starter-stream-rabbit - - - - - - - org.springframework.cloud - spring-cloud-dependencies - ${spring-cloud.version} - pom - import - - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - - - + + + 4.0.0 + + com.baeldung.spring.cloud + spring-cloud-config-server + 0.0.1-SNAPSHOT + jar + + spring-cloud-config-server + Demo Spring Cloud Config Server + + + org.springframework.boot + spring-boot-starter-parent + 1.5.4.RELEASE + + + + UTF-8 + UTF-8 + 1.8 + Dalston.SR1 + + + + + org.springframework.cloud + spring-cloud-config-server + 1.3.1.RELEASE + + + + org.springframework.boot + spring-boot-starter-security + 1.5.4.RELEASE + + + + org.springframework.boot + spring-boot-starter-test + 1.5.4.RELEASE + test + + + + org.springframework.cloud + spring-cloud-config-monitor + 1.3.1.RELEASE + + + + org.springframework.cloud + spring-cloud-starter-stream-rabbit + 1.2.1.RELEASE + + + + + + + org.springframework.cloud + spring-cloud-dependencies + ${spring-cloud.version} + pom + import + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + From fc3af59d27a491263246c6d9677d3bc4627cdc0b Mon Sep 17 00:00:00 2001 From: iaforek Date: Fri, 7 Jul 2017 09:49:29 +0100 Subject: [PATCH 037/391] BAEL-579 Added missing dependency versions. --- .../spring-cloud-config-client/pom.xml | 157 +++++++++--------- .../spring-cloud-config-server/pom.xml | 1 + 2 files changed, 82 insertions(+), 76 deletions(-) diff --git a/spring-cloud-bus/spring-cloud-config-client/pom.xml b/spring-cloud-bus/spring-cloud-config-client/pom.xml index 2eb0191c79..977f18b17f 100644 --- a/spring-cloud-bus/spring-cloud-config-client/pom.xml +++ b/spring-cloud-bus/spring-cloud-config-client/pom.xml @@ -1,76 +1,81 @@ - - - 4.0.0 - - com.baeldung.spring.cloud - spring-cloud-config-client - 0.0.1-SNAPSHOT - jar - - spring-cloud-config-client - Demo Spring Cloud Config Client - - - org.springframework.boot - spring-boot-starter-parent - 1.5.4.RELEASE - - - - UTF-8 - UTF-8 - 1.8 - Dalston.SR1 - - - - - org.springframework.cloud - spring-cloud-starter-config - - - org.springframework.boot - spring-boot-starter-web - - - - org.springframework.boot - spring-boot-starter-test - test - - - - org.springframework.boot - spring-boot-actuator - - - - org.springframework.cloud - spring-cloud-starter-bus-amqp - - - - - - - org.springframework.cloud - spring-cloud-dependencies - ${spring-cloud.version} - pom - import - - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - - - + + + 4.0.0 + + com.baeldung.spring.cloud + spring-cloud-config-client + 0.0.1-SNAPSHOT + jar + + spring-cloud-config-client + Demo Spring Cloud Config Client + + + org.springframework.boot + spring-boot-starter-parent + 1.5.4.RELEASE + + + + UTF-8 + UTF-8 + 1.8 + Dalston.SR1 + + + + + org.springframework.cloud + spring-cloud-starter-config + 1.3.1.RELEASE + + + org.springframework.boot + spring-boot-starter-web + 1.5.4.RELEASE + + + + org.springframework.boot + spring-boot-starter-test + 1.5.4.RELEASE + test + + + + org.springframework.boot + spring-boot-actuator + 1.5.4.RELEASE + + + + org.springframework.cloud + spring-cloud-starter-bus-amqp + 1.3.1.RELEASE + + + + + + + org.springframework.cloud + spring-cloud-dependencies + ${spring-cloud.version} + pom + import + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 1.5.4.RELEASE + + + + + diff --git a/spring-cloud-bus/spring-cloud-config-server/pom.xml b/spring-cloud-bus/spring-cloud-config-server/pom.xml index 9ec661b718..e37f601d2c 100644 --- a/spring-cloud-bus/spring-cloud-config-server/pom.xml +++ b/spring-cloud-bus/spring-cloud-config-server/pom.xml @@ -74,6 +74,7 @@ org.springframework.boot spring-boot-maven-plugin + 1.5.4.RELEASE From ac7c7f2701bd9f6ea3506f175271805cc77df57d Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 8 Aug 2017 12:41:24 +0100 Subject: [PATCH 038/391] Updated gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 1890e8bd0e..67f33c2a0b 100644 --- a/.gitignore +++ b/.gitignore @@ -41,3 +41,4 @@ SpringDataInjectionDemo/.mvn/wrapper/maven-wrapper.properties spring-call-getters-using-reflection/.mvn/wrapper/maven-wrapper.properties spring-check-if-a-property-is-null/.mvn/wrapper/maven-wrapper.properties +*.springBeans From 21279619227ea2459a24f30de18c822b54fd70bd Mon Sep 17 00:00:00 2001 From: iaforek Date: Wed, 9 Aug 2017 23:01:59 +0100 Subject: [PATCH 039/391] BAEL-1065 Simple performance check StringBuffer vs StringBuilder. --- .../string/StringBufferStringBuilder.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 core-java/src/main/java/com/baeldung/string/StringBufferStringBuilder.java diff --git a/core-java/src/main/java/com/baeldung/string/StringBufferStringBuilder.java b/core-java/src/main/java/com/baeldung/string/StringBufferStringBuilder.java new file mode 100644 index 0000000000..4623b83de0 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/string/StringBufferStringBuilder.java @@ -0,0 +1,25 @@ +package com.baeldung.string; + +public class StringBufferStringBuilder { + + public static void main(String[] args) { + + int iterations = 10000000; + + System.gc(); + long startTime = System.currentTimeMillis(); + StringBuffer stringBuffer = new StringBuffer("abc"); + for (int i = 0; i < iterations; i++) { + stringBuffer.append("def"); + } + System.out.println("Time taken by StringBuffer: " + (System.currentTimeMillis() - startTime) + "ms"); // Time taken by StringBuffer: 394ms + + System.gc(); + startTime = System.currentTimeMillis(); + StringBuilder stringBuilder = new StringBuilder("abc"); + for (int i = 0; i < iterations; i++) { + stringBuilder.append("def"); + } + System.out.println("Time taken by StringBuilder: " + (System.currentTimeMillis() - startTime) + "ms"); // Time taken by StringBuilder: 129ms + } +} From 6c4397787690ae61e6121f8506c4b78380f3f43e Mon Sep 17 00:00:00 2001 From: iaforek Date: Mon, 4 Sep 2017 21:09:29 +0100 Subject: [PATCH 040/391] BAEL-1065 Added JMH benchmarks --- core-java/pom.xml | 784 +++++++++--------- .../string/StringBufferStringBuilder.java | 57 +- 2 files changed, 449 insertions(+), 392 deletions(-) diff --git a/core-java/pom.xml b/core-java/pom.xml index 84a56c8bc7..295eabc265 100644 --- a/core-java/pom.xml +++ b/core-java/pom.xml @@ -1,420 +1,456 @@ - 4.0.0 - com.baeldung - core-java - 0.1.0-SNAPSHOT - jar + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 + com.baeldung + core-java + 0.1.0-SNAPSHOT + jar - core-java + core-java - + - - - net.sourceforge.collections - collections-generic - ${collections-generic.version} - - - com.google.guava - guava - ${guava.version} - + + org.openjdk.jmh + jmh-core + 1.19 + + + org.openjdk.jmh + jmh-generator-annprocess + 1.19 + - - org.apache.commons - commons-collections4 - ${commons-collections4.version} - + + + net.sourceforge.collections + collections-generic + ${collections-generic.version} + + + com.google.guava + guava + ${guava.version} + - - commons-io - commons-io - ${commons-io.version} - + + org.apache.commons + commons-collections4 + ${commons-collections4.version} + - - org.apache.commons - commons-lang3 - ${commons-lang3.version} - + + commons-io + commons-io + ${commons-io.version} + - - org.apache.commons - commons-math3 - ${commons-math3.version} - + + org.apache.commons + commons-lang3 + ${commons-lang3.version} + - - org.decimal4j - decimal4j - ${decimal4j.version} - + + org.apache.commons + commons-math3 + ${commons-math3.version} + - - org.bouncycastle - bcprov-jdk15on - ${bouncycastle.version} - + + org.decimal4j + decimal4j + ${decimal4j.version} + - - org.unix4j - unix4j-command - ${unix4j.version} - + + org.bouncycastle + bcprov-jdk15on + ${bouncycastle.version} + - - com.googlecode.grep4j - grep4j - ${grep4j.version} - - + + org.unix4j + unix4j-command + ${unix4j.version} + - + + com.googlecode.grep4j + grep4j + ${grep4j.version} + + - - com.fasterxml.jackson.core - jackson-databind - ${jackson.version} - + - + + com.fasterxml.jackson.core + jackson-databind + ${jackson.version} + - - org.slf4j - slf4j-api - ${org.slf4j.version} - - - ch.qos.logback - logback-classic - ${logback.version} - - - - org.slf4j - jcl-over-slf4j - ${org.slf4j.version} - - - - org.slf4j - log4j-over-slf4j - ${org.slf4j.version} - - - org.projectlombok - lombok - ${lombok.version} - provided - + - + + org.slf4j + slf4j-api + ${org.slf4j.version} + + + ch.qos.logback + logback-classic + ${logback.version} + + + + org.slf4j + jcl-over-slf4j + ${org.slf4j.version} + + + + org.slf4j + log4j-over-slf4j + ${org.slf4j.version} + + + org.projectlombok + lombok + ${lombok.version} + provided + - - org.hamcrest - hamcrest-all - 1.3 - test - + - - junit - junit - ${junit.version} - test - + + org.hamcrest + hamcrest-all + 1.3 + test + - - org.hamcrest - hamcrest-core - ${org.hamcrest.version} - test - - - org.hamcrest - hamcrest-library - ${org.hamcrest.version} - test - + + junit + junit + ${junit.version} + test + - - org.assertj - assertj-core - ${assertj.version} - test - + + org.hamcrest + hamcrest-core + ${org.hamcrest.version} + test + + + org.hamcrest + hamcrest-library + ${org.hamcrest.version} + test + - - org.mockito - mockito-core - ${mockito.version} - test - - - com.jayway.awaitility - awaitility - ${avaitility.version} - test - + + org.assertj + assertj-core + ${assertj.version} + test + - - commons-codec - commons-codec - ${commons-codec.version} - + + org.mockito + mockito-core + ${mockito.version} + test + + + com.jayway.awaitility + awaitility + ${avaitility.version} + test + - - org.javamoney - moneta - 1.1 - + + commons-codec + commons-codec + ${commons-codec.version} + - - org.owasp.esapi - esapi - 2.1.0.1 - + + org.javamoney + moneta + 1.1 + - - com.sun.messaging.mq - fscontext - ${fscontext.version} - - + + org.owasp.esapi + esapi + 2.1.0.1 + - - core-java - - - src/main/resources - true - - + + com.sun.messaging.mq + fscontext + ${fscontext.version} + + - + + core-java + + + src/main/resources + true + + - - org.apache.maven.plugins - maven-compiler-plugin - ${maven-compiler-plugin.version} - - 1.8 - 1.8 - - + - - org.apache.maven.plugins - maven-surefire-plugin - - - **/*IntegrationTest.java - **/*LongRunningUnitTest.java - **/*ManualTest.java - - true - - + + org.codehaus.mojo + exec-maven-plugin - - org.apache.maven.plugins - maven-dependency-plugin - - - copy-dependencies - prepare-package - - copy-dependencies - - - ${project.build.directory}/libs - - - - + + + run-benchmarks + integration-test + + exec + + + test + java + + -classpath + + org.openjdk.jmh.Main + .* + + + + + - - org.apache.maven.plugins - maven-jar-plugin - - - - true - libs/ - org.baeldung.executable.ExecutableMavenJar - - - - + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + 1.8 + 1.8 + + - - org.apache.maven.plugins - maven-assembly-plugin - - - package - - single - - - ${project.basedir} - - - org.baeldung.executable.ExecutableMavenJar - - - - jar-with-dependencies - - - - - + + org.apache.maven.plugins + maven-surefire-plugin + + + **/*IntegrationTest.java + **/*LongRunningUnitTest.java + **/*ManualTest.java + + true + + - - org.apache.maven.plugins - maven-shade-plugin - - - - shade - - - true - - - org.baeldung.executable.ExecutableMavenJar - - - - - - + + org.apache.maven.plugins + maven-dependency-plugin + + + copy-dependencies + prepare-package + + copy-dependencies + + + ${project.build.directory}/libs + + + + - - com.jolira - onejar-maven-plugin - - - - org.baeldung.executable.ExecutableMavenJar - true - ${project.build.finalName}-onejar.${project.packaging} - - - one-jar - - - - + + org.apache.maven.plugins + maven-jar-plugin + + + + true + libs/ + org.baeldung.executable.ExecutableMavenJar + + + + - - org.springframework.boot - spring-boot-maven-plugin - - - - repackage - - - spring-boot - org.baeldung.executable.ExecutableMavenJar - - - - + + org.apache.maven.plugins + maven-assembly-plugin + + + package + + single + + + ${project.basedir} + + + org.baeldung.executable.ExecutableMavenJar + + + + jar-with-dependencies + + + + + - - org.codehaus.mojo - exec-maven-plugin - 1.6.0 - - java - com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed - - -Xmx300m - -XX:+UseParallelGC - -classpath - - com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed - - - - + + org.apache.maven.plugins + maven-shade-plugin + + + + shade + + + true + + + org.baeldung.executable.ExecutableMavenJar + + + + + + - + + com.jolira + onejar-maven-plugin + + + + org.baeldung.executable.ExecutableMavenJar + true + ${project.build.finalName}-onejar.${project.packaging} + + + one-jar + + + + - - - integration - - - - org.apache.maven.plugins - maven-surefire-plugin - - - integration-test - - test - - - - **/*ManualTest.java - - - **/*IntegrationTest.java - - - - - - - json - - - - - - - + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + spring-boot + org.baeldung.executable.ExecutableMavenJar + + + + - - - 2.8.5 + + org.codehaus.mojo + exec-maven-plugin + 1.6.0 + + java + com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed + + -Xmx300m + -XX:+UseParallelGC + -classpath + + com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed + + + + - - 1.7.21 - 1.1.7 + - - 21.0 - 3.5 - 1.55 - 1.10 - 3.6.1 - 1.0.3 - 2.5 - 4.1 - 4.01 - 0.4 - 1.8.7 - 1.16.12 - 4.6-b01 + + + integration + + + + org.apache.maven.plugins + maven-surefire-plugin + + + integration-test + + test + + + + **/*ManualTest.java + + + **/*IntegrationTest.java + + + + + + + json + + + + + + + - - 1.3 - 4.12 - 1.10.19 - 3.6.1 - 1.7.0 + + + 2.8.5 - - 3.6.0 - 2.19.1 + + 1.7.21 + 1.1.7 - + + 21.0 + 3.5 + 1.55 + 1.10 + 3.6.1 + 1.0.3 + 2.5 + 4.1 + 4.01 + 0.4 + 1.8.7 + 1.16.12 + 4.6-b01 + + + 1.3 + 4.12 + 1.10.19 + 3.6.1 + 1.7.0 + + + 3.6.0 + 2.19.1 + + \ No newline at end of file diff --git a/core-java/src/main/java/com/baeldung/string/StringBufferStringBuilder.java b/core-java/src/main/java/com/baeldung/string/StringBufferStringBuilder.java index 4623b83de0..74f489d57f 100644 --- a/core-java/src/main/java/com/baeldung/string/StringBufferStringBuilder.java +++ b/core-java/src/main/java/com/baeldung/string/StringBufferStringBuilder.java @@ -1,25 +1,46 @@ package com.baeldung.string; +import org.openjdk.jmh.annotations.Benchmark; +import org.openjdk.jmh.annotations.Scope; +import org.openjdk.jmh.annotations.State; +import org.openjdk.jmh.runner.Runner; +import org.openjdk.jmh.runner.RunnerException; +import org.openjdk.jmh.runner.options.Options; +import org.openjdk.jmh.runner.options.OptionsBuilder; + public class StringBufferStringBuilder { - public static void main(String[] args) { + public static void main(String[] args) throws RunnerException { - int iterations = 10000000; + Options opt = new OptionsBuilder() + .include(StringBufferStringBuilder.class.getSimpleName()) + .build(); - System.gc(); - long startTime = System.currentTimeMillis(); - StringBuffer stringBuffer = new StringBuffer("abc"); - for (int i = 0; i < iterations; i++) { - stringBuffer.append("def"); - } - System.out.println("Time taken by StringBuffer: " + (System.currentTimeMillis() - startTime) + "ms"); // Time taken by StringBuffer: 394ms - - System.gc(); - startTime = System.currentTimeMillis(); - StringBuilder stringBuilder = new StringBuilder("abc"); - for (int i = 0; i < iterations; i++) { - stringBuilder.append("def"); - } - System.out.println("Time taken by StringBuilder: " + (System.currentTimeMillis() - startTime) + "ms"); // Time taken by StringBuilder: 129ms + new Runner(opt).run(); } -} + + @State(Scope.Benchmark) + public static class MyState { + int iterations = 1000; + String initial = "abc"; + String suffix = "def"; + } + + @Benchmark + public StringBuffer benchmarkStringBuffer(MyState state) { + StringBuffer stringBuffer = new StringBuffer(state.initial); + for (int i = 0; i < state.iterations; i++) { + stringBuffer.append(state.suffix); + } + return stringBuffer; + } + + @Benchmark + public StringBuilder benchmarkStringBuilder(MyState state) { + StringBuilder stringBuilder = new StringBuilder(state.initial); + for (int i = 0; i < state.iterations; i++) { + stringBuilder.append(state.suffix); + } + return stringBuilder; + } +} \ No newline at end of file From 261a16988da2ecf2cd762dbb9ef8c76dda249adf Mon Sep 17 00:00:00 2001 From: Radu Tamas Date: Tue, 24 Oct 2017 22:48:54 +0300 Subject: [PATCH 041/391] Code for test article: Different Types of Bean Injection in Spring --- .../dependencyinjectiontypes/Article.java | 21 +++++++++++++++++++ .../ArticleFormatter.java | 16 ++++++++++++++ .../TextFormatter.java | 8 +++++++ .../dependencyinjectiontypes-context.xml | 16 ++++++++++++++ 4 files changed, 61 insertions(+) create mode 100644 spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/Article.java create mode 100644 spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleFormatter.java create mode 100644 spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/TextFormatter.java create mode 100644 spring-core/src/main/resources/dependencyinjectiontypes-context.xml diff --git a/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/Article.java b/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/Article.java new file mode 100644 index 0000000000..921bba01fb --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/Article.java @@ -0,0 +1,21 @@ +package com.baeldung.dependencyinjectiontypes; + +import org.springframework.beans.factory.annotation.Autowired; + +public class Article { + + private TextFormatter formatter; + + public Article(TextFormatter formatter) { + this.formatter = formatter; + } + + @Autowired + public void setTextFormatter(TextFormatter formatter) { + this.formatter = formatter; + } + + public String format(String text) { + return formatter.format(text); + } +} diff --git a/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleFormatter.java b/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleFormatter.java new file mode 100644 index 0000000000..dc9fa49b19 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleFormatter.java @@ -0,0 +1,16 @@ +package com.baeldung.dependencyinjectiontypes; + +import org.springframework.context.ApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +public class ArticleFormatter { + + @SuppressWarnings("resource") + public static void main(String[] args) { + ApplicationContext context = new ClassPathXmlApplicationContext("dependencyinjectiontypes-context.xml"); + Article article = (Article) context.getBean("articleBean"); + String formattedArticle = article.format("This is a text !"); + + System.out.print(formattedArticle); + } +} diff --git a/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/TextFormatter.java b/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/TextFormatter.java new file mode 100644 index 0000000000..204436c9bd --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/TextFormatter.java @@ -0,0 +1,8 @@ +package com.baeldung.dependencyinjectiontypes; + +public class TextFormatter { + + public String format(String text) { + return text.toUpperCase(); + } +} diff --git a/spring-core/src/main/resources/dependencyinjectiontypes-context.xml b/spring-core/src/main/resources/dependencyinjectiontypes-context.xml new file mode 100644 index 0000000000..b03d185c43 --- /dev/null +++ b/spring-core/src/main/resources/dependencyinjectiontypes-context.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + \ No newline at end of file From 4ceff2d55306012ec760d427306dc1014e1e392f Mon Sep 17 00:00:00 2001 From: Radu Tamas Date: Wed, 25 Oct 2017 13:32:02 +0300 Subject: [PATCH 042/391] Adding jUnits for test article: Different Types of Bean Injection in Spring --- .../ArticleFormatter.java | 2 +- .../ArticleWithConstructorInjection.java | 17 +++++++++ ...e.java => ArticleWithSetterInjection.java} | 4 +-- .../dependencyinjectiontypes-context.xml | 11 ++++-- .../DependencyInjectionTest.java | 35 +++++++++++++++++++ 5 files changed, 64 insertions(+), 5 deletions(-) create mode 100644 spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleWithConstructorInjection.java rename spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/{Article.java => ArticleWithSetterInjection.java} (79%) create mode 100644 spring-core/src/test/java/com/baeldung/dependencyinjectiontypes/DependencyInjectionTest.java diff --git a/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleFormatter.java b/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleFormatter.java index dc9fa49b19..069e9df084 100644 --- a/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleFormatter.java +++ b/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleFormatter.java @@ -8,7 +8,7 @@ public class ArticleFormatter { @SuppressWarnings("resource") public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("dependencyinjectiontypes-context.xml"); - Article article = (Article) context.getBean("articleBean"); + ArticleWithSetterInjection article = (ArticleWithSetterInjection) context.getBean("articleWithSetterInjectionBean"); String formattedArticle = article.format("This is a text !"); System.out.print(formattedArticle); diff --git a/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleWithConstructorInjection.java b/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleWithConstructorInjection.java new file mode 100644 index 0000000000..776e9f4040 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleWithConstructorInjection.java @@ -0,0 +1,17 @@ +package com.baeldung.dependencyinjectiontypes; + +import org.springframework.beans.factory.annotation.Autowired; + +public class ArticleWithConstructorInjection { + + private TextFormatter formatter; + + @Autowired + public ArticleWithConstructorInjection(TextFormatter formatter) { + this.formatter = formatter; + } + + public String format(String text) { + return formatter.format(text); + } +} diff --git a/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/Article.java b/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleWithSetterInjection.java similarity index 79% rename from spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/Article.java rename to spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleWithSetterInjection.java index 921bba01fb..931c6ea276 100644 --- a/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/Article.java +++ b/spring-core/src/main/java/com/baeldung/dependencyinjectiontypes/ArticleWithSetterInjection.java @@ -2,11 +2,11 @@ package com.baeldung.dependencyinjectiontypes; import org.springframework.beans.factory.annotation.Autowired; -public class Article { +public class ArticleWithSetterInjection { private TextFormatter formatter; - public Article(TextFormatter formatter) { + public ArticleWithSetterInjection(TextFormatter formatter) { this.formatter = formatter; } diff --git a/spring-core/src/main/resources/dependencyinjectiontypes-context.xml b/spring-core/src/main/resources/dependencyinjectiontypes-context.xml index b03d185c43..bd6b3c408d 100644 --- a/spring-core/src/main/resources/dependencyinjectiontypes-context.xml +++ b/spring-core/src/main/resources/dependencyinjectiontypes-context.xml @@ -6,11 +6,18 @@ - + + + + + + + \ No newline at end of file diff --git a/spring-core/src/test/java/com/baeldung/dependencyinjectiontypes/DependencyInjectionTest.java b/spring-core/src/test/java/com/baeldung/dependencyinjectiontypes/DependencyInjectionTest.java new file mode 100644 index 0000000000..57c1927e58 --- /dev/null +++ b/spring-core/src/test/java/com/baeldung/dependencyinjectiontypes/DependencyInjectionTest.java @@ -0,0 +1,35 @@ +package com.baeldung.dependencyinjectiontypes; + +import static org.junit.Assert.assertTrue; + +import org.junit.Test; +import org.springframework.context.ApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +public class DependencyInjectionTest { + + @Test + public void givenAutowiredAnnotation_WhenSetOnSetter_ThenDependencyValid() { + + ApplicationContext context = new ClassPathXmlApplicationContext("dependencyinjectiontypes-context.xml"); + ArticleWithSetterInjection article = (ArticleWithSetterInjection) context.getBean("articleWithSetterInjectionBean"); + + String originalText = "This is a text !"; + String formattedArticle = article.format(originalText); + + assertTrue(originalText.toUpperCase().equals(formattedArticle)); + } + + @Test + public void givenAutowiredAnnotation_WhenSetOnConstructor_ThenDependencyValid() { + + ApplicationContext context = new ClassPathXmlApplicationContext("dependencyinjectiontypes-context.xml"); + ArticleWithConstructorInjection article = (ArticleWithConstructorInjection) context.getBean("articleWithConstructorInjectionBean"); + + String originalText = "This is a text !"; + String formattedArticle = article.format(originalText); + + assertTrue(originalText.toUpperCase().equals(formattedArticle)); + } + +} From 8c0eaac37bee95890bc49265738047ce66407012 Mon Sep 17 00:00:00 2001 From: Radu Tamas Date: Tue, 31 Oct 2017 13:35:17 +0200 Subject: [PATCH 043/391] BAEL-1265: Adding jUnit for article --- .../executorservice/DelayedCallable.java | 26 ++++ .../WaitingForThreadsToFinishTest.java | 146 ++++++++++++++++++ 2 files changed, 172 insertions(+) create mode 100644 core-java-concurrency/src/main/java/com/baeldung/concurrent/executorservice/DelayedCallable.java create mode 100644 core-java-concurrency/src/test/java/com/baeldung/concurrent/executorservice/WaitingForThreadsToFinishTest.java diff --git a/core-java-concurrency/src/main/java/com/baeldung/concurrent/executorservice/DelayedCallable.java b/core-java-concurrency/src/main/java/com/baeldung/concurrent/executorservice/DelayedCallable.java new file mode 100644 index 0000000000..2f0796b491 --- /dev/null +++ b/core-java-concurrency/src/main/java/com/baeldung/concurrent/executorservice/DelayedCallable.java @@ -0,0 +1,26 @@ +package com.baeldung.concurrent.executorservice; + +import java.util.concurrent.Callable; + +public class DelayedCallable implements Callable { + + private String name; + private long period; + + public DelayedCallable(String name, long period) { + this.name = name; + this.period = period; + } + + public String call() { + + try { + Thread.sleep(period); + } catch (InterruptedException ex) { + // handle exception + ex.printStackTrace(); + } + + return name; + } +} diff --git a/core-java-concurrency/src/test/java/com/baeldung/concurrent/executorservice/WaitingForThreadsToFinishTest.java b/core-java-concurrency/src/test/java/com/baeldung/concurrent/executorservice/WaitingForThreadsToFinishTest.java new file mode 100644 index 0000000000..4a3ee00f24 --- /dev/null +++ b/core-java-concurrency/src/test/java/com/baeldung/concurrent/executorservice/WaitingForThreadsToFinishTest.java @@ -0,0 +1,146 @@ +package com.baeldung.concurrent.executorservice; + +import org.junit.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.Arrays; +import java.util.List; +import java.util.concurrent.*; + +import static junit.framework.TestCase.assertTrue; + +public class WaitingForThreadsToFinishTest { + + private static final Logger LOG = LoggerFactory.getLogger(WaitingForThreadsToFinishTest.class); + private final static ExecutorService WORKER_THREAD_POOL = Executors.newFixedThreadPool(10); + + @Test + public void givenMultipleThreads_whenInvokeAll_thenMainThreadShouldWaitForAllToFinish() { + + ExecutorService WORKER_THREAD_POOL = Executors.newFixedThreadPool(10); + + List> callables = Arrays.asList(new DelayedCallable("fast thread", 100), new DelayedCallable("slow thread", 3000)); + + try { + long startProcessingTime = System.currentTimeMillis(); + List> futures = WORKER_THREAD_POOL.invokeAll(callables); + + long totalProcessingTime = System.currentTimeMillis() - startProcessingTime; + assertTrue(totalProcessingTime >= 3000); + + String firstThreadResponse = futures.get(0) + .get(); + assertTrue("First response should be from the fast thread", "fast thread".equals(firstThreadResponse)); + + String secondThreadResponse = futures.get(1) + .get(); + assertTrue("Last response should be from the slow thread", "slow thread".equals(secondThreadResponse)); + + } catch (ExecutionException | InterruptedException ex) { + ex.printStackTrace(); + } + + WORKER_THREAD_POOL.shutdown(); + } + + @Test + public void givenMultipleThreads_whenUsingCompletionService_thenMainThreadShouldWaitForAllToFinish() { + + CompletionService service = new ExecutorCompletionService<>(WORKER_THREAD_POOL); + + List> callables = Arrays.asList(new DelayedCallable("fast thread", 100), new DelayedCallable("slow thread", 3000)); + + for (Callable callable : callables) { + service.submit(callable); + } + + WORKER_THREAD_POOL.shutdown(); + + try { + + long startProcessingTime = System.currentTimeMillis(); + + Future future = service.take(); + String firstThreadResponse = future.get(); + long totalProcessingTime = System.currentTimeMillis() - startProcessingTime; + + assertTrue("First response should be from the fast thread", "fast thread".equals(firstThreadResponse)); + assertTrue(totalProcessingTime >= 100 && totalProcessingTime < 1000); + LOG.debug("Thread finished after: " + totalProcessingTime + " milliseconds"); + + future = service.take(); + String secondThreadResponse = future.get(); + totalProcessingTime = System.currentTimeMillis() - startProcessingTime; + + assertTrue("Last response should be from the slow thread", "slow thread".equals(secondThreadResponse)); + assertTrue(totalProcessingTime >= 3000 && totalProcessingTime < 4000); + LOG.debug("Thread finished after: " + totalProcessingTime + " milliseconds"); + + } catch (ExecutionException | InterruptedException ex) { + ex.printStackTrace(); + } + + } + + @Test + public void givenMultipleThreads_whenUsingCompletableFutures_thenMainThreadShouldWaitForAllToFinish() { + + CompletableFuture future1 = CompletableFuture.supplyAsync(() -> { + + try { + Thread.sleep(1000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + + return "Hello"; + }); + + CompletableFuture future2 = CompletableFuture.supplyAsync(() -> { + + try { + Thread.sleep(5000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + + return "Beautiful"; + }); + + CompletableFuture future3 = CompletableFuture.supplyAsync(() -> { + + try { + Thread.sleep(3000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + + return "World"; + }); + + long startProcessingTime = System.currentTimeMillis(); + CompletableFuture combinedFuture = CompletableFuture.allOf(future1, future2, future3); + combinedFuture.join(); + + long totalProcessingTime = System.currentTimeMillis() - startProcessingTime; + assertTrue(totalProcessingTime >= 5000 && totalProcessingTime < 6000); + + LOG.debug("Responses from all threads are available after " + totalProcessingTime + " milliseconds"); + + try { + String thread1Response = future1.get(); + assertTrue(thread1Response.equals("Hello")); + + String thread2Response = future2.get(); + assertTrue(thread2Response.equals("Beautiful")); + + String thread3Response = future3.get(); + assertTrue(thread3Response.equals("World")); + + } catch (InterruptedException | ExecutionException e) { + e.printStackTrace(); + } + + } +} From bb416035b082d331f2d27b6c802d36e4d310163e Mon Sep 17 00:00:00 2001 From: Radu Tamas Date: Tue, 31 Oct 2017 19:25:06 +0200 Subject: [PATCH 044/391] BAEL-1265: Closing ExecutorService in jUnit --- .../executorservice/WaitingForThreadsToFinishTest.java | 1 + 1 file changed, 1 insertion(+) diff --git a/core-java-concurrency/src/test/java/com/baeldung/concurrent/executorservice/WaitingForThreadsToFinishTest.java b/core-java-concurrency/src/test/java/com/baeldung/concurrent/executorservice/WaitingForThreadsToFinishTest.java index 4a3ee00f24..0f461909ea 100644 --- a/core-java-concurrency/src/test/java/com/baeldung/concurrent/executorservice/WaitingForThreadsToFinishTest.java +++ b/core-java-concurrency/src/test/java/com/baeldung/concurrent/executorservice/WaitingForThreadsToFinishTest.java @@ -142,5 +142,6 @@ public class WaitingForThreadsToFinishTest { e.printStackTrace(); } + WORKER_THREAD_POOL.shutdown(); } } From e5ce748b165301b0fe9dcbd66a7c429afb35e4d1 Mon Sep 17 00:00:00 2001 From: iaforek Date: Mon, 13 Nov 2017 21:38:21 +0000 Subject: [PATCH 045/391] BAEL-1298 Sudoku - Backtracking Algorithm --- .../sudoku/BacktrackingAlgorithm.java | 89 +++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java new file mode 100644 index 0000000000..e763653fc8 --- /dev/null +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java @@ -0,0 +1,89 @@ +package com.baeldung.algorithms.sudoku; + +public class BacktrackingAlgorithm { + + public static void main(String[] args) { + + char[][] board = { + { '8', '.', '.', '.', '.', '.', '.', '.', '.' }, + { '.', '.', '3', '6', '.', '.', '.', '.', '.' }, + { '.', '7', '.', '.', '9', '.', '2', '.', '.' }, + { '.', '5', '.', '.', '.', '7', '.', '.', '.' }, + { '.', '.', '.', '.', '4', '5', '7', '.', '.' }, + { '.', '.', '.', '1', '.', '.', '.', '3', '.' }, + { '.', '.', '1', '.', '.', '.', '.', '6', '8' }, + { '.', '.', '8', '5', '.', '.', '.', '1', '.' }, + { '.', '9', '.', '.', '.', '.', '4', '.', '.' } + }; + + BacktrackingAlgorithm solver = new BacktrackingAlgorithm(); + solver.solve(board); + + for (int i = 0; i < 9; i++) { + for (int j = 0; j < 9; j++) { + System.out.print(board[i][j] + " "); + } + System.out.println(); + } + } + + public boolean solve(char[][] board) { + for (int r = 0; r < board.length; r++) { + for (int c = 0; c < board[0].length; c++) { + if (board[r][c] == '.') { + for (int k = 1; k <= 9; k++) { + board[r][c] = (char) ('0' + k); + if (isValid(board, r, c) && solve(board)) { + return true; + } else { + board[r][c] = '.'; + } + } + return false; + } + } + } + return true; + } + + public boolean isValid(char[][] board, int r, int c) { + //check row + boolean[] row = new boolean[9]; + for (int i = 0; i < 9; i++) { + if (board[r][i] >= '1' && board[r][i] <= '9') { + if (row[board[r][i] - '1'] == false) { + row[board[r][i] - '1'] = true; + } else { + return false; + } + } + } + + //check column + boolean[] col = new boolean[9]; + for (int i = 0; i < 9; i++) { + if (board[i][c] >= '1' && board[i][c] <= '9') { + if (col[board[i][c] - '1'] == false) { + col[board[i][c] - '1'] = true; + } else { + return false; + } + } + } + + //check the 3*3 grid + boolean[] grid = new boolean[9]; + for (int i = (r / 3) * 3; i < (r / 3) * 3 + 3; i++) { + for (int j = (c / 3) * 3; j < (c / 3) * 3 + 3; j++) { + if (board[i][j] >= '1' && board[i][j] <= '9') { + if (grid[board[i][j] - '1'] == false) { + grid[board[i][j] - '1'] = true; + } else { + return false; + } + } + } + } + return true; + } +} From 3351d50a5adf25f82ab58bacb547ba78ef5128d4 Mon Sep 17 00:00:00 2001 From: iaforek Date: Mon, 13 Nov 2017 21:39:44 +0000 Subject: [PATCH 046/391] BAEL-1298 Sudoku - Backtracking Algorithm --- .../baeldung/algorithms/sudoku/BacktrackingAlgorithm.java | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java index e763653fc8..6d41caf97e 100644 --- a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java @@ -47,7 +47,6 @@ public class BacktrackingAlgorithm { } public boolean isValid(char[][] board, int r, int c) { - //check row boolean[] row = new boolean[9]; for (int i = 0; i < 9; i++) { if (board[r][i] >= '1' && board[r][i] <= '9') { @@ -59,7 +58,6 @@ public class BacktrackingAlgorithm { } } - //check column boolean[] col = new boolean[9]; for (int i = 0; i < 9; i++) { if (board[i][c] >= '1' && board[i][c] <= '9') { @@ -70,8 +68,7 @@ public class BacktrackingAlgorithm { } } } - - //check the 3*3 grid + boolean[] grid = new boolean[9]; for (int i = (r / 3) * 3; i < (r / 3) * 3 + 3; i++) { for (int j = (c / 3) * 3; j < (c / 3) * 3 + 3; j++) { From cbf7bcbbbf8ba18d88a5c7af34e11c361102dc07 Mon Sep 17 00:00:00 2001 From: iaforek Date: Sun, 3 Dec 2017 19:48:43 +0000 Subject: [PATCH 047/391] BAEL-1298 Dancing Links Algorithm. Smaller changes to Backtracking --- .../sudoku/BacktrackingAlgorithm.java | 32 +++-- .../algorithms/sudoku/ColumnNode.java | 33 +++++ .../algorithms/sudoku/DancingLinks.java | 134 ++++++++++++++++++ .../sudoku/DancingLinksAlgorithm.java | 102 +++++++++++++ .../algorithms/sudoku/DancingNode.java | 50 +++++++ 5 files changed, 336 insertions(+), 15 deletions(-) create mode 100644 algorithms/src/main/java/com/baeldung/algorithms/sudoku/ColumnNode.java create mode 100644 algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinks.java create mode 100644 algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java create mode 100644 algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingNode.java diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java index 6d41caf97e..effdcd9c04 100644 --- a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java @@ -2,23 +2,25 @@ package com.baeldung.algorithms.sudoku; public class BacktrackingAlgorithm { - public static void main(String[] args) { - - char[][] board = { - { '8', '.', '.', '.', '.', '.', '.', '.', '.' }, - { '.', '.', '3', '6', '.', '.', '.', '.', '.' }, - { '.', '7', '.', '.', '9', '.', '2', '.', '.' }, + static char[][] board = { + { '8', '.', '.', '.', '.', '.', '.', '.', '.' }, + { '.', '.', '3', '6', '.', '.', '.', '.', '.' }, + { '.', '7', '.', '.', '9', '.', '2', '.', '.' }, { '.', '5', '.', '.', '.', '7', '.', '.', '.' }, - { '.', '.', '.', '.', '4', '5', '7', '.', '.' }, - { '.', '.', '.', '1', '.', '.', '.', '3', '.' }, - { '.', '.', '1', '.', '.', '.', '.', '6', '8' }, + { '.', '.', '.', '.', '4', '5', '7', '.', '.' }, + { '.', '.', '.', '1', '.', '.', '.', '3', '.' }, + { '.', '.', '1', '.', '.', '.', '.', '6', '8' }, { '.', '.', '8', '5', '.', '.', '.', '1', '.' }, - { '.', '9', '.', '.', '.', '.', '4', '.', '.' } + { '.', '9', '.', '.', '.', '.', '4', '.', '.' } }; - + + public static void main(String[] args) { BacktrackingAlgorithm solver = new BacktrackingAlgorithm(); solver.solve(board); + solver.printBoard(); + } + public void printBoard() { for (int i = 0; i < 9; i++) { for (int j = 0; j < 9; j++) { System.out.print(board[i][j] + " "); @@ -26,7 +28,7 @@ public class BacktrackingAlgorithm { System.out.println(); } } - + public boolean solve(char[][] board) { for (int r = 0; r < board.length; r++) { for (int c = 0; c < board[0].length; c++) { @@ -45,7 +47,7 @@ public class BacktrackingAlgorithm { } return true; } - + public boolean isValid(char[][] board, int r, int c) { boolean[] row = new boolean[9]; for (int i = 0; i < 9; i++) { @@ -68,7 +70,7 @@ public class BacktrackingAlgorithm { } } } - + boolean[] grid = new boolean[9]; for (int i = (r / 3) * 3; i < (r / 3) * 3 + 3; i++) { for (int j = (c / 3) * 3; j < (c / 3) * 3 + 3; j++) { @@ -79,7 +81,7 @@ public class BacktrackingAlgorithm { return false; } } - } + } } return true; } diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/ColumnNode.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/ColumnNode.java new file mode 100644 index 0000000000..48538344b6 --- /dev/null +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/ColumnNode.java @@ -0,0 +1,33 @@ +package com.baeldung.algorithms.sudoku; + +class ColumnNode extends DancingNode { + int size; + String name; + + public ColumnNode(String n) { + super(); + size = 0; + name = n; + C = this; + } + + void cover() { + unlinkLR(); + for (DancingNode i = this.D; i != this; i = i.D) { + for (DancingNode j = i.R; j != i; j = j.R) { + j.unlinkUD(); + j.C.size--; + } + } + } + + void uncover() { + for (DancingNode i = this.U; i != this; i = i.U) { + for (DancingNode j = i.L; j != i; j = j.L) { + j.C.size++; + j.relinkUD(); + } + } + relinkLR(); + } +} \ No newline at end of file diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinks.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinks.java new file mode 100644 index 0000000000..a30f8ecab5 --- /dev/null +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinks.java @@ -0,0 +1,134 @@ +package com.baeldung.algorithms.sudoku; + +import java.util.ArrayList; +import java.util.LinkedList; +import java.util.List; + +public class DancingLinks { + + private ColumnNode header; + private List answer; + + private void search(int k) { + if (header.R == header) { + handleSolution(answer); + } else { + ColumnNode c = selectColumnNodeHeuristic(); + c.cover(); + + for (DancingNode r = c.D; r != c; r = r.D) { + answer.add(r); + + for (DancingNode j = r.R; j != r; j = j.R) { + j.C.cover(); + } + + search(k + 1); + + r = answer.remove(answer.size() - 1); + c = r.C; + + for (DancingNode j = r.L; j != r; j = j.L) { + j.C.uncover(); + } + } + c.uncover(); + } + } + + private ColumnNode selectColumnNodeHeuristic() { + int min = Integer.MAX_VALUE; + ColumnNode ret = null; + for (ColumnNode c = (ColumnNode) header.R; c != header; c = (ColumnNode) c.R) { + if (c.size < min) { + min = c.size; + ret = c; + } + } + return ret; + } + + private ColumnNode makeDLXBoard(boolean[][] grid) { + final int COLS = grid[0].length; + final int ROWS = grid.length; + + ColumnNode headerNode = new ColumnNode("header"); + ArrayList columnNodes = new ArrayList(); + + for (int i = 0; i < COLS; i++) { + ColumnNode n = new ColumnNode(Integer.toString(i)); + columnNodes.add(n); + headerNode = (ColumnNode) headerNode.hookRight(n); + } + headerNode = headerNode.R.C; + + for (int i = 0; i < ROWS; i++) { + DancingNode prev = null; + for (int j = 0; j < COLS; j++) { + if (grid[i][j] == true) { + ColumnNode col = columnNodes.get(j); + DancingNode newNode = new DancingNode(col); + if (prev == null) + prev = newNode; + col.U.hookDown(newNode); + prev = prev.hookRight(newNode); + col.size++; + } + } + } + + headerNode.size = COLS; + + return headerNode; + } + + public DancingLinks(boolean[][] cover) { + header = makeDLXBoard(cover); + } + + public void runSolver() { + answer = new LinkedList(); + search(0); + } + + public void handleSolution(List answer) { + int[][] result = parseBoard(answer); + printSolution(result); + } + + int size = 9; + + private int[][] parseBoard(List answer) { + int[][] result = new int[size][size]; + for (DancingNode n : answer) { + DancingNode rcNode = n; + int min = Integer.parseInt(rcNode.C.name); + for (DancingNode tmp = n.R; tmp != n; tmp = tmp.R) { + int val = Integer.parseInt(tmp.C.name); + if (val < min) { + min = val; + rcNode = tmp; + } + } + int ans1 = Integer.parseInt(rcNode.C.name); + int ans2 = Integer.parseInt(rcNode.R.C.name); + int r = ans1 / size; + int c = ans1 % size; + int num = (ans2 % size) + 1; + result[r][c] = num; + } + return result; + } + + public static void printSolution(int[][] result) { + int N = result.length; + for (int i = 0; i < N; i++) { + String ret = ""; + for (int j = 0; j < N; j++) { + ret += result[i][j] + " "; + } + System.out.println(ret); + } + System.out.println(); + } +} diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java new file mode 100644 index 0000000000..5cff88c644 --- /dev/null +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java @@ -0,0 +1,102 @@ +package com.baeldung.algorithms.sudoku; + +import java.util.*; + +public class DancingLinksAlgorithm { + private static int S = 9; + private static int SIDE = 3; + + static char[][] board = { + { '8', '.', '.', '.', '.', '.', '.', '.', '.' }, + { '.', '.', '3', '6', '.', '.', '.', '.', '.' }, + { '.', '7', '.', '.', '9', '.', '2', '.', '.' }, + { '.', '5', '.', '.', '.', '7', '.', '.', '.' }, + { '.', '.', '.', '.', '4', '5', '7', '.', '.' }, + { '.', '.', '.', '1', '.', '.', '.', '3', '.' }, + { '.', '.', '1', '.', '.', '.', '.', '6', '8' }, + { '.', '.', '8', '5', '.', '.', '.', '1', '.' }, + { '.', '9', '.', '.', '.', '.', '4', '.', '.' } + }; + + public static void main(String[] args) { + + DancingLinksAlgorithm solver = new DancingLinksAlgorithm(); + solver.solve(board); + } + + public boolean solve(char[][] board) { + boolean[][] cover = initializeExactCoverBoard(board); + DancingLinks dlx = new DancingLinks(cover); + dlx.runSolver(); + + return true; + } + + private int getIndex(int row, int col, int num) { + return (row - 1) * S * S + (col - 1) * S + (num - 1); + } + + private boolean[][] createExactCoverBoard() { + boolean[][] R = new boolean[9 * 9 * 9][9 * 9 * 4]; + + int hBase = 0; + + for (int r = 1; r <= S; r++) { + for (int c = 1; c <= S; c++, hBase++) { + for (int n = 1; n <= S; n++) { + int index = getIndex(r, c, n); + R[index][hBase] = true; + } + } + } + + for (int r = 1; r <= S; r++) { + for (int n = 1; n <= S; n++, hBase++) { + for (int c1 = 1; c1 <= S; c1++) { + int index = getIndex(r, c1, n); + R[index][hBase] = true; + } + } + } + + for (int c = 1; c <= S; c++) { + for (int n = 1; n <= S; n++, hBase++) { + for (int r1 = 1; r1 <= S; r1++) { + int index = getIndex(r1, c, n); + R[index][hBase] = true; + } + } + } + + for (int br = 1; br <= S; br += SIDE) { + for (int bc = 1; bc <= S; bc += SIDE) { + for (int n = 1; n <= S; n++, hBase++) { + for (int rDelta = 0; rDelta < SIDE; rDelta++) { + for (int cDelta = 0; cDelta < SIDE; cDelta++) { + int index = getIndex(br + rDelta, bc + cDelta, n); + R[index][hBase] = true; + } + } + } + } + } + return R; + } + + private boolean[][] initializeExactCoverBoard(char[][] sudoku) { + boolean[][] R = createExactCoverBoard(); + for (int i = 1; i <= S; i++) { + for (int j = 1; j <= S; j++) { + char n = sudoku[i - 1][j - 1]; + if (n != '.') { + for (int num = 1; num <= S; num++) { + if ((char) ('0' + num) != n) { + Arrays.fill(R[getIndex(i, j, num)], false); + } + } + } + } + } + return R; + } +} \ No newline at end of file diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingNode.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingNode.java new file mode 100644 index 0000000000..13dc3f2b57 --- /dev/null +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingNode.java @@ -0,0 +1,50 @@ +package com.baeldung.algorithms.sudoku; + +class DancingNode { + DancingNode L, R, U, D; + ColumnNode C; + + DancingNode hookDown(DancingNode n1) { + assert (this.C == n1.C); + n1.D = this.D; + n1.D.U = n1; + n1.U = this; + this.D = n1; + return n1; + } + + DancingNode hookRight(DancingNode n1) { + n1.R = this.R; + n1.R.L = n1; + n1.L = this; + this.R = n1; + return n1; + } + + void unlinkLR() { + this.L.R = this.R; + this.R.L = this.L; + } + + void relinkLR() { + this.L.R = this.R.L = this; + } + + void unlinkUD() { + this.U.D = this.D; + this.D.U = this.U; + } + + void relinkUD() { + this.U.D = this.D.U = this; + } + + public DancingNode() { + L = R = U = D = this; + } + + public DancingNode(ColumnNode c) { + this(); + C = c; + } +} \ No newline at end of file From c2575d3b642185ad9f8e201796d0527389cdf14d Mon Sep 17 00:00:00 2001 From: iaforek Date: Mon, 4 Dec 2017 20:45:50 +0000 Subject: [PATCH 048/391] BAEL-1298 Resolve conflict - use most up-to-date POM --- core-java/pom.xml | 884 ++++++++++++++++++++++++---------------------- 1 file changed, 452 insertions(+), 432 deletions(-) diff --git a/core-java/pom.xml b/core-java/pom.xml index 0e57b35ab8..6be76cab33 100644 --- a/core-java/pom.xml +++ b/core-java/pom.xml @@ -1,476 +1,496 @@ - 4.0.0 - com.baeldung - core-java - 0.1.0-SNAPSHOT - jar + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 + com.baeldung + core-java + 0.1.0-SNAPSHOT + jar - core-java + core-java - + - - - net.sourceforge.collections - collections-generic - ${collections-generic.version} - - - com.google.guava - guava - ${guava.version} - + + + net.sourceforge.collections + collections-generic + ${collections-generic.version} + + + com.google.guava + guava + ${guava.version} + - - org.apache.commons - commons-collections4 - ${commons-collections4.version} - + + org.apache.commons + commons-collections4 + ${commons-collections4.version} + - - commons-io - commons-io - ${commons-io.version} - + + commons-io + commons-io + ${commons-io.version} + - - org.apache.commons - commons-lang3 - ${commons-lang3.version} - + + org.apache.commons + commons-lang3 + ${commons-lang3.version} + - - org.apache.commons - commons-math3 - ${commons-math3.version} - + + org.apache.commons + commons-math3 + ${commons-math3.version} + - - org.decimal4j - decimal4j - ${decimal4j.version} - + + org.decimal4j + decimal4j + ${decimal4j.version} + - - org.bouncycastle - bcprov-jdk15on - ${bouncycastle.version} - + + org.bouncycastle + bcprov-jdk15on + ${bouncycastle.version} + - - org.unix4j - unix4j-command - ${unix4j.version} - + + org.unix4j + unix4j-command + ${unix4j.version} + - - com.googlecode.grep4j - grep4j - ${grep4j.version} - - + + com.googlecode.grep4j + grep4j + ${grep4j.version} + + - + - - com.fasterxml.jackson.core - jackson-databind - ${jackson.version} - + + com.fasterxml.jackson.core + jackson-databind + ${jackson.version} + - - - log4j - log4j - 1.2.17 - - - org.slf4j - slf4j-api - ${org.slf4j.version} - - - ch.qos.logback - logback-classic - ${logback.version} - - - - org.slf4j - jcl-over-slf4j - ${org.slf4j.version} - - - - org.slf4j - log4j-over-slf4j - ${org.slf4j.version} - - - org.projectlombok - lombok - ${lombok.version} - provided - + + + log4j + log4j + 1.2.17 + + + org.slf4j + slf4j-api + ${org.slf4j.version} + + + ch.qos.logback + logback-classic + ${logback.version} + + + + org.slf4j + jcl-over-slf4j + ${org.slf4j.version} + + + + org.slf4j + log4j-over-slf4j + ${org.slf4j.version} + + + org.projectlombok + lombok + ${lombok.version} + provided + - + - - org.hamcrest - hamcrest-all - 1.3 - test - + + org.hamcrest + hamcrest-all + 1.3 + test + - - junit - junit - ${junit.version} - test - + + junit + junit + ${junit.version} + test + - - org.hamcrest - hamcrest-core - ${org.hamcrest.version} - test - - - org.hamcrest - hamcrest-library - ${org.hamcrest.version} - test - + + org.hamcrest + hamcrest-core + ${org.hamcrest.version} + test + + + org.hamcrest + hamcrest-library + ${org.hamcrest.version} + test + - - org.assertj - assertj-core - ${assertj.version} - test - + + org.assertj + assertj-core + ${assertj.version} + test + - - org.mockito - mockito-core - ${mockito.version} - test - - - com.jayway.awaitility - awaitility - ${avaitility.version} - test - + + org.mockito + mockito-core + ${mockito.version} + test + + + com.jayway.awaitility + awaitility + ${avaitility.version} + test + - - commons-codec - commons-codec - ${commons-codec.version} - + + commons-codec + commons-codec + ${commons-codec.version} + - - org.javamoney - moneta - 1.1 - + + org.javamoney + moneta + 1.1 + - - org.owasp.esapi - esapi - 2.1.0.1 - + + org.owasp.esapi + esapi + 2.1.0.1 + + + com.h2database + h2 + 1.4.196 + runtime + + + com.sun.messaging.mq + fscontext + ${fscontext.version} + + + com.codepoetics + protonpack + ${protonpack.version} + + + one.util + streamex + ${streamex.version} + + + io.vavr + vavr + ${vavr.version} + + + org.openjdk.jmh + jmh-core + 1.19 + + + org.openjdk.jmh + jmh-generator-annprocess + 1.19 + + + org.springframework + spring-web + 4.3.4.RELEASE + - - com.sun.messaging.mq - fscontext - ${fscontext.version} - - - com.codepoetics - protonpack - ${protonpack.version} - - - one.util - streamex - ${streamex.version} - - - io.vavr - vavr - ${vavr.version} - - - org.openjdk.jmh - jmh-core - 1.19 - - - org.openjdk.jmh - jmh-generator-annprocess - 1.19 - - + + org.springframework.boot + spring-boot-starter + 1.5.8.RELEASE + - - core-java - - - src/main/resources - true - - + - + + core-java + + + src/main/resources + true + + - - org.apache.maven.plugins - maven-compiler-plugin - ${maven-compiler-plugin.version} - - 1.8 - 1.8 - - + - - org.apache.maven.plugins - maven-surefire-plugin - - - **/*IntegrationTest.java - **/*LongRunningUnitTest.java - **/*ManualTest.java - - true - - + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + 1.8 + 1.8 + + - - org.apache.maven.plugins - maven-dependency-plugin - - - copy-dependencies - prepare-package - - copy-dependencies - - - ${project.build.directory}/libs - - - - + + org.apache.maven.plugins + maven-surefire-plugin + + + **/*LiveTest.java + **/*IntegrationTest.java + **/*LongRunningUnitTest.java + **/*ManualTest.java + - - org.apache.maven.plugins - maven-jar-plugin - - - - true - libs/ - org.baeldung.executable.ExecutableMavenJar - - - - + + - - org.apache.maven.plugins - maven-assembly-plugin - - - package - - single - - - ${project.basedir} - - - org.baeldung.executable.ExecutableMavenJar - - - - jar-with-dependencies - - - - - + + org.apache.maven.plugins + maven-dependency-plugin + + + copy-dependencies + prepare-package + + copy-dependencies + + + ${project.build.directory}/libs + + + + - - org.apache.maven.plugins - maven-shade-plugin - - - - shade - - - true - - - org.baeldung.executable.ExecutableMavenJar - - - - - - + + org.apache.maven.plugins + maven-jar-plugin + + + + true + libs/ + org.baeldung.executable.ExecutableMavenJar + + + + - - com.jolira - onejar-maven-plugin - - - - org.baeldung.executable.ExecutableMavenJar - true - ${project.build.finalName}-onejar.${project.packaging} - - - one-jar - - - - + + org.apache.maven.plugins + maven-assembly-plugin + + + package + + single + + + ${project.basedir} + + + org.baeldung.executable.ExecutableMavenJar + + + + jar-with-dependencies + + + + + - - org.springframework.boot - spring-boot-maven-plugin - - - - repackage - - - spring-boot - org.baeldung.executable.ExecutableMavenJar - - - - + + org.apache.maven.plugins + maven-shade-plugin + + + + shade + + + true + + + org.baeldung.executable.ExecutableMavenJar + + + + + + - - org.codehaus.mojo - exec-maven-plugin - 1.6.0 - - java - com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed - - -Xmx300m - -XX:+UseParallelGC - -classpath - - com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed - - - - - - org.codehaus.mojo - exec-maven-plugin - - - - run-benchmarks - integration-test - - exec - - - test - java - - -classpath - - org.openjdk.jmh.Main - .* - - - - - - + + com.jolira + onejar-maven-plugin + + + + org.baeldung.executable.ExecutableMavenJar + true + ${project.build.finalName}-onejar.${project.packaging} + + + one-jar + + + + - + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + spring-boot + org.baeldung.executable.ExecutableMavenJar + + + + - - - integration - - - - org.apache.maven.plugins - maven-surefire-plugin - - - integration-test - - test - - - - **/*ManualTest.java - - - **/*IntegrationTest.java - - - - - - - json - - - - - - - + + org.codehaus.mojo + exec-maven-plugin + 1.6.0 + + java + com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed + + -Xmx300m + -XX:+UseParallelGC + -classpath + + com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed + + + - - - 2.8.5 - - 1.7.21 - 1.1.7 + - - 22.0 - 3.5 - 1.55 - 1.10 - 3.6.1 - 1.0.3 - 2.5 - 4.1 - 4.01 - 0.4 - 1.8.7 - 1.16.12 - 4.6-b01 - 1.13 - 0.6.5 - 0.9.0 + - - 1.3 - 4.12 - 2.8.9 - 3.6.1 - 1.7.0 + + + integration + + + + org.apache.maven.plugins + maven-surefire-plugin + + + integration-test + + test + + + + **/*ManualTest.java + + + **/*IntegrationTest.java + + + + + + + json + + + + + org.codehaus.mojo + exec-maven-plugin - - 3.6.0 - 2.19.1 - + + + run-benchmarks + + none + + exec + + + test + java + + -classpath + + org.openjdk.jmh.Main + .* + + + + + + + + + + + + + 2.8.5 + + + 1.7.21 + 1.1.7 + + + 22.0 + 3.5 + 1.55 + 1.10 + 3.6.1 + 1.0.3 + 2.5 + 4.1 + 4.01 + 0.4 + 1.8.7 + 1.16.12 + 4.6-b01 + 1.13 + 0.6.5 + 0.9.0 + + + 1.3 + 4.12 + 2.8.9 + 3.6.1 + 1.7.0 + + + 3.6.0 + 2.19.1 + \ No newline at end of file From d76d39fb87892a38da04105836facefbc7face5c Mon Sep 17 00:00:00 2001 From: Chris Franklin Date: Fri, 22 Dec 2017 10:59:53 -0500 Subject: [PATCH 049/391] Christopher Franklin Different Types of Bean Injection in Spring My first article about the three different types of bean injection supported by the Spring Framework. This code walks through all three methods and has supporting tests. --- .../baeldung/beaninjectiontypes/Config.java | 16 ++++++++ .../beaninjectiontypes/ExampleService.java | 11 +++++ .../ExampleWithConstructorInjection.java | 19 +++++++++ .../ExampleWithPropertyInjection.java | 16 ++++++++ .../ExampleWithSetterInjection.java | 20 +++++++++ .../beaninjectiontypes/BeanInjectionTest.java | 41 +++++++++++++++++++ 6 files changed, 123 insertions(+) create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleService.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithConstructorInjection.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithPropertyInjection.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithSetterInjection.java create mode 100644 spring-core/src/test/java/com/baeldung/beaninjectiontypes/BeanInjectionTest.java diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java new file mode 100644 index 0000000000..d523dc3f1f --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java @@ -0,0 +1,16 @@ +package com.baeldung.beaninjectiontypes; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; + +@Configuration +@ComponentScan("com.baeldung.beaninjectiontypes") +public class Config { + + @Bean + public ExampleService exampleService() { + return new ExampleService(); + } + +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleService.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleService.java new file mode 100644 index 0000000000..9112fee577 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleService.java @@ -0,0 +1,11 @@ +package com.baeldung.beaninjectiontypes; + +import org.springframework.stereotype.Component; + +@Component +public class ExampleService { + + public String getExampleText() { + return "Example"; + } +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithConstructorInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithConstructorInjection.java new file mode 100644 index 0000000000..340d283dbd --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithConstructorInjection.java @@ -0,0 +1,19 @@ +package com.baeldung.beaninjectiontypes; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Component +public class ExampleWithConstructorInjection { + + private ExampleService exampleService; + + @Autowired + public ExampleWithConstructorInjection(ExampleService exampleService) { + this.exampleService = exampleService; + } + + public String verifyInjection() { + return this.exampleService.getExampleText(); + } +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithPropertyInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithPropertyInjection.java new file mode 100644 index 0000000000..d9495e5c05 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithPropertyInjection.java @@ -0,0 +1,16 @@ +package com.baeldung.beaninjectiontypes; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Component +public class ExampleWithPropertyInjection { + + @Autowired + private ExampleService exampleService; + + public String verifyInjection() { + return this.exampleService.getExampleText(); + } + +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithSetterInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithSetterInjection.java new file mode 100644 index 0000000000..97f1355ec5 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithSetterInjection.java @@ -0,0 +1,20 @@ +package com.baeldung.beaninjectiontypes; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Component +public class ExampleWithSetterInjection { + + private ExampleService exampleService; + + @Autowired + public void setExampleService(ExampleService exampleService) { + this.exampleService = exampleService; + } + + public String verifyInjection() { + return this.exampleService.getExampleText(); + } + +} diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BeanInjectionTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BeanInjectionTest.java new file mode 100644 index 0000000000..ae609d5df5 --- /dev/null +++ b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BeanInjectionTest.java @@ -0,0 +1,41 @@ +package com.baeldung.beaninjectiontypes; + +import static org.junit.Assert.assertEquals; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.context.ApplicationContext; +import org.springframework.context.annotation.AnnotationConfigApplicationContext; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.support.AnnotationConfigContextLoader; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(loader = AnnotationConfigContextLoader.class, classes = Config.class) +public class BeanInjectionTest { + + @Test + public void whenConstructorInjection_ThenBeanValid() { + ApplicationContext context = new AnnotationConfigApplicationContext(Config.class); + ExampleWithConstructorInjection exampleBean = context.getBean(ExampleWithConstructorInjection.class); + + assertEquals("Example", exampleBean.verifyInjection()); + } + + @Test + public void whenSetterInjection_ThenBeanValid() { + ApplicationContext context = new AnnotationConfigApplicationContext(Config.class); + ExampleWithSetterInjection exampleBean = context.getBean(ExampleWithSetterInjection.class); + + assertEquals("Example", exampleBean.verifyInjection()); + } + + @Test + public void whenProperyInjection_ThenBeanValid() { + ApplicationContext context = new AnnotationConfigApplicationContext(Config.class); + ExampleWithPropertyInjection exampleBean = context.getBean(ExampleWithPropertyInjection.class); + + assertEquals("Example", exampleBean.verifyInjection()); + } + +} From 4f7d19e86a42172c0c49eee1c9d6e9d7b75aa666 Mon Sep 17 00:00:00 2001 From: Chris Franklin Date: Tue, 26 Dec 2017 12:19:13 -0500 Subject: [PATCH 050/391] Revert "Christopher Franklin Different Types of Bean Injection in Spring" This reverts commit d76d39fb87892a38da04105836facefbc7face5c. --- .../baeldung/beaninjectiontypes/Config.java | 16 -------- .../beaninjectiontypes/ExampleService.java | 11 ----- .../ExampleWithConstructorInjection.java | 19 --------- .../ExampleWithPropertyInjection.java | 16 -------- .../ExampleWithSetterInjection.java | 20 --------- .../beaninjectiontypes/BeanInjectionTest.java | 41 ------------------- 6 files changed, 123 deletions(-) delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleService.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithConstructorInjection.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithPropertyInjection.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithSetterInjection.java delete mode 100644 spring-core/src/test/java/com/baeldung/beaninjectiontypes/BeanInjectionTest.java diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java deleted file mode 100644 index d523dc3f1f..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.ComponentScan; -import org.springframework.context.annotation.Configuration; - -@Configuration -@ComponentScan("com.baeldung.beaninjectiontypes") -public class Config { - - @Bean - public ExampleService exampleService() { - return new ExampleService(); - } - -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleService.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleService.java deleted file mode 100644 index 9112fee577..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleService.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import org.springframework.stereotype.Component; - -@Component -public class ExampleService { - - public String getExampleText() { - return "Example"; - } -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithConstructorInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithConstructorInjection.java deleted file mode 100644 index 340d283dbd..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithConstructorInjection.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Component -public class ExampleWithConstructorInjection { - - private ExampleService exampleService; - - @Autowired - public ExampleWithConstructorInjection(ExampleService exampleService) { - this.exampleService = exampleService; - } - - public String verifyInjection() { - return this.exampleService.getExampleText(); - } -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithPropertyInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithPropertyInjection.java deleted file mode 100644 index d9495e5c05..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithPropertyInjection.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Component -public class ExampleWithPropertyInjection { - - @Autowired - private ExampleService exampleService; - - public String verifyInjection() { - return this.exampleService.getExampleText(); - } - -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithSetterInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithSetterInjection.java deleted file mode 100644 index 97f1355ec5..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/ExampleWithSetterInjection.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Component -public class ExampleWithSetterInjection { - - private ExampleService exampleService; - - @Autowired - public void setExampleService(ExampleService exampleService) { - this.exampleService = exampleService; - } - - public String verifyInjection() { - return this.exampleService.getExampleText(); - } - -} diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BeanInjectionTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BeanInjectionTest.java deleted file mode 100644 index ae609d5df5..0000000000 --- a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BeanInjectionTest.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import static org.junit.Assert.assertEquals; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.context.ApplicationContext; -import org.springframework.context.annotation.AnnotationConfigApplicationContext; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; -import org.springframework.test.context.support.AnnotationConfigContextLoader; - -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration(loader = AnnotationConfigContextLoader.class, classes = Config.class) -public class BeanInjectionTest { - - @Test - public void whenConstructorInjection_ThenBeanValid() { - ApplicationContext context = new AnnotationConfigApplicationContext(Config.class); - ExampleWithConstructorInjection exampleBean = context.getBean(ExampleWithConstructorInjection.class); - - assertEquals("Example", exampleBean.verifyInjection()); - } - - @Test - public void whenSetterInjection_ThenBeanValid() { - ApplicationContext context = new AnnotationConfigApplicationContext(Config.class); - ExampleWithSetterInjection exampleBean = context.getBean(ExampleWithSetterInjection.class); - - assertEquals("Example", exampleBean.verifyInjection()); - } - - @Test - public void whenProperyInjection_ThenBeanValid() { - ApplicationContext context = new AnnotationConfigApplicationContext(Config.class); - ExampleWithPropertyInjection exampleBean = context.getBean(ExampleWithPropertyInjection.class); - - assertEquals("Example", exampleBean.verifyInjection()); - } - -} From 102ac020b357946489e386165db31884516c68f1 Mon Sep 17 00:00:00 2001 From: DOHA Date: Thu, 28 Dec 2017 13:32:24 +0200 Subject: [PATCH 051/391] make sure modules using java8 --- animal-sniffer-mvn-plugin/pom.xml | 6 +++--- annotations/annotation-processing/pom.xml | 2 +- apache-shiro/pom.xml | 2 +- camel-api/pom.xml | 2 +- cas/cas-server/pom.xml | 6 +++++- core-java-9/pom.xml | 2 +- core-java-sun/pom.xml | 2 +- core-java/pom.xml | 2 +- core-kotlin/pom.xml | 6 +++++- dubbo/pom.xml | 1 + ejb/ejb-session-beans/pom.xml | 2 +- geotools/pom.xml | 1 + guest/core-java-9/pom.xml | 2 +- guest/core-java/pom.xml | 2 +- guest/junit5-example/pom.xml | 2 +- guest/log4j2-example/pom.xml | 2 +- guest/logback-example/pom.xml | 2 +- guest/memory-leaks/pom.xml | 2 +- guest/spring-boot-app/pom.xml | 2 +- guest/thread-pools/pom.xml | 2 +- guest/tomcat-app/pom.xml | 2 +- guest/webservices/rest-client/pom.xml | 2 +- guest/webservices/rest-server/pom.xml | 2 +- hibernate5/pom.xml | 2 +- java-difference-date/pom.xml | 1 + .../javaeeannotations/JavaEEAnnotationsSample/pom.xml | 6 +++--- jhipster/jhipster-microservice/car-app/pom.xml | 2 ++ libraries-data/pom.xml | 2 +- libraries/pom.xml | 1 + linkrest/pom.xml | 2 +- mustache/pom.xml | 2 +- parent-boot-4/pom.xml | 2 +- parent-boot-5/pom.xml | 2 +- patterns/front-controller/pom.xml | 5 +++++ patterns/intercepting-filter/pom.xml | 5 +++++ persistence-modules/liquibase/pom.xml | 2 +- persistence-modules/spring-hibernate-5/pom.xml | 2 +- pom.xml | 2 +- saas/pom.xml | 2 +- spring-boot-actuator/pom.xml | 1 + .../greeter-spring-boot-autoconfigure/pom.xml | 2 +- .../greeter-spring-boot-starter/pom.xml | 2 +- spring-cloud/pom.xml | 2 +- spring-cloud/spring-cloud-connectors-heroku/pom.xml | 2 +- spring-cloud/spring-cloud-consul/pom.xml | 2 +- spring-cloud/spring-cloud-eureka/pom.xml | 2 +- .../spring-cloud-eureka/spring-cloud-eureka-client/pom.xml | 5 +++++ .../spring-cloud-eureka-feign-client/pom.xml | 5 +++++ .../spring-cloud-eureka/spring-cloud-eureka-server/pom.xml | 5 +++++ spring-cloud/spring-cloud-gateway/pom.xml | 2 +- .../spring-cloud-hystrix/feign-rest-consumer/pom.xml | 5 +++++ spring-cloud/spring-cloud-hystrix/pom.xml | 2 +- spring-cloud/spring-cloud-hystrix/rest-consumer/pom.xml | 5 +++++ spring-cloud/spring-cloud-hystrix/rest-producer/pom.xml | 5 +++++ spring-cloud/spring-cloud-rest/pom.xml | 2 +- spring-cloud/spring-cloud-stream/pom.xml | 2 +- spring-mvc-simple/pom.xml | 1 + spring-rest-simple/pom.xml | 1 + spring-roo/pom.xml | 3 ++- spring-security-mvc-socket/pom.xml | 2 +- .../spring-swagger-codegen-api-client/pom.xml | 6 +++--- testing-modules/junit-5/pom.xml | 2 +- vertx-and-rxjava/pom.xml | 1 + vraptor/pom.xml | 2 +- xml/pom.xml | 1 + 65 files changed, 113 insertions(+), 53 deletions(-) diff --git a/animal-sniffer-mvn-plugin/pom.xml b/animal-sniffer-mvn-plugin/pom.xml index 3190950d9b..2356c7d5a2 100644 --- a/animal-sniffer-mvn-plugin/pom.xml +++ b/animal-sniffer-mvn-plugin/pom.xml @@ -9,7 +9,7 @@ http://maven.apache.org - 3.6.0 + 3.7.0 @@ -26,8 +26,8 @@ maven-compiler-plugin 3.7.0 - 1.6 - 1.6 + 1.8 + 1.8 diff --git a/annotations/annotation-processing/pom.xml b/annotations/annotation-processing/pom.xml index df6f9d44b7..b5219d57ba 100644 --- a/annotations/annotation-processing/pom.xml +++ b/annotations/annotation-processing/pom.xml @@ -15,7 +15,7 @@ 1.0-rc2 - 3.6.0 + 3.7.0 diff --git a/apache-shiro/pom.xml b/apache-shiro/pom.xml index 711ddb5cee..2c5ef86837 100644 --- a/apache-shiro/pom.xml +++ b/apache-shiro/pom.xml @@ -65,7 +65,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.6.2 + 3.7.0 1.8 1.8 diff --git a/camel-api/pom.xml b/camel-api/pom.xml index 6db9f9bfd1..c342a73150 100644 --- a/camel-api/pom.xml +++ b/camel-api/pom.xml @@ -12,7 +12,7 @@ UTF-8 - 3.6.0 + 3.7.0 2.19.1 2.19.1 1.5.4.RELEASE diff --git a/cas/cas-server/pom.xml b/cas/cas-server/pom.xml index e8625b48f7..9cae9c487b 100644 --- a/cas/cas-server/pom.xml +++ b/cas/cas-server/pom.xml @@ -52,7 +52,11 @@ org.apache.maven.plugins maven-compiler-plugin - 3.3 + 3.7.0 + + 1.8 + 1.8 + cas diff --git a/core-java-9/pom.xml b/core-java-9/pom.xml index f6792fdbd9..6b82744954 100644 --- a/core-java-9/pom.xml +++ b/core-java-9/pom.xml @@ -90,7 +90,7 @@ 1.7.21 1.2.1 - 3.6.0 + 3.7.0 2.19.1 diff --git a/core-java-sun/pom.xml b/core-java-sun/pom.xml index 3997f47d19..11aa21f44d 100644 --- a/core-java-sun/pom.xml +++ b/core-java-sun/pom.xml @@ -483,7 +483,7 @@ 1.7.0 - 3.6.0 + 3.7.0 2.19.1 \ No newline at end of file diff --git a/core-java/pom.xml b/core-java/pom.xml index 88ac6bca49..f99e4d68cf 100644 --- a/core-java/pom.xml +++ b/core-java/pom.xml @@ -489,7 +489,7 @@ 1.7.0 - 3.6.0 + 3.7.0 2.19.1 \ No newline at end of file diff --git a/core-kotlin/pom.xml b/core-kotlin/pom.xml index e795d1e042..b511f0dd7b 100644 --- a/core-kotlin/pom.xml +++ b/core-kotlin/pom.xml @@ -105,7 +105,11 @@ org.apache.maven.plugins maven-compiler-plugin - 3.5.1 + 3.7.0 + + 1.8 + 1.8 + diff --git a/dubbo/pom.xml b/dubbo/pom.xml index 3faef99e8d..af242e5905 100644 --- a/dubbo/pom.xml +++ b/dubbo/pom.xml @@ -52,6 +52,7 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 1.8 1.8 diff --git a/ejb/ejb-session-beans/pom.xml b/ejb/ejb-session-beans/pom.xml index a9b667baac..b89ff6ed15 100644 --- a/ejb/ejb-session-beans/pom.xml +++ b/ejb/ejb-session-beans/pom.xml @@ -82,7 +82,7 @@ maven-compiler-plugin - 3.1 + 3.7.0 1.8 1.8 diff --git a/geotools/pom.xml b/geotools/pom.xml index 37b4a2338a..d0eb787be8 100644 --- a/geotools/pom.xml +++ b/geotools/pom.xml @@ -59,6 +59,7 @@ true org.apache.maven.plugins maven-compiler-plugin + 3.7.0 1.8 1.8 diff --git a/guest/core-java-9/pom.xml b/guest/core-java-9/pom.xml index d588df4abc..0e227798af 100644 --- a/guest/core-java-9/pom.xml +++ b/guest/core-java-9/pom.xml @@ -16,7 +16,7 @@ maven-compiler-plugin - 3.6.2 + 3.7.0 1.9 1.9 diff --git a/guest/core-java/pom.xml b/guest/core-java/pom.xml index 548d5c663b..222716386b 100644 --- a/guest/core-java/pom.xml +++ b/guest/core-java/pom.xml @@ -22,7 +22,7 @@ maven-compiler-plugin - 3.5 + 3.7.0 1.8 1.8 diff --git a/guest/junit5-example/pom.xml b/guest/junit5-example/pom.xml index aec7f9228a..37c71e77af 100644 --- a/guest/junit5-example/pom.xml +++ b/guest/junit5-example/pom.xml @@ -41,7 +41,7 @@ maven-compiler-plugin - 3.5 + 3.7.0 1.8 1.8 diff --git a/guest/log4j2-example/pom.xml b/guest/log4j2-example/pom.xml index 197f3df2b9..43f1d106f0 100644 --- a/guest/log4j2-example/pom.xml +++ b/guest/log4j2-example/pom.xml @@ -39,7 +39,7 @@ maven-compiler-plugin - 3.5 + 3.7.0 1.8 1.8 diff --git a/guest/logback-example/pom.xml b/guest/logback-example/pom.xml index 9d88c94197..8ad406fc89 100644 --- a/guest/logback-example/pom.xml +++ b/guest/logback-example/pom.xml @@ -30,7 +30,7 @@ maven-compiler-plugin - 3.5 + 3.7.0 1.8 1.8 diff --git a/guest/memory-leaks/pom.xml b/guest/memory-leaks/pom.xml index eada59c5a1..82361779e2 100644 --- a/guest/memory-leaks/pom.xml +++ b/guest/memory-leaks/pom.xml @@ -28,7 +28,7 @@ maven-compiler-plugin - 3.5 + 3.7.0 1.8 1.8 diff --git a/guest/spring-boot-app/pom.xml b/guest/spring-boot-app/pom.xml index 88b8c229e3..ba57bbd5c5 100644 --- a/guest/spring-boot-app/pom.xml +++ b/guest/spring-boot-app/pom.xml @@ -38,7 +38,7 @@ maven-compiler-plugin - 3.6.1 + 3.7.0 1.8 1.8 diff --git a/guest/thread-pools/pom.xml b/guest/thread-pools/pom.xml index 72a10213c4..4588f3da4c 100644 --- a/guest/thread-pools/pom.xml +++ b/guest/thread-pools/pom.xml @@ -17,7 +17,7 @@ maven-compiler-plugin - 3.5.1 + 3.7.0 1.8 1.8 diff --git a/guest/tomcat-app/pom.xml b/guest/tomcat-app/pom.xml index e62c6f78d8..2a4bf8ef59 100644 --- a/guest/tomcat-app/pom.xml +++ b/guest/tomcat-app/pom.xml @@ -52,7 +52,7 @@ maven-compiler-plugin - 3.5.1 + 3.7.0 1.8 1.8 diff --git a/guest/webservices/rest-client/pom.xml b/guest/webservices/rest-client/pom.xml index af03ac1948..016fa54af7 100644 --- a/guest/webservices/rest-client/pom.xml +++ b/guest/webservices/rest-client/pom.xml @@ -8,7 +8,7 @@ maven-compiler-plugin - 3.5 + 3.7.0 1.8 1.8 diff --git a/guest/webservices/rest-server/pom.xml b/guest/webservices/rest-server/pom.xml index 350e7eb9c9..69d370965f 100644 --- a/guest/webservices/rest-server/pom.xml +++ b/guest/webservices/rest-server/pom.xml @@ -33,7 +33,7 @@ maven-compiler-plugin - 3.5.1 + 3.7.0 1.8 1.8 diff --git a/hibernate5/pom.xml b/hibernate5/pom.xml index 3b0b2fcd88..1b7396fefb 100644 --- a/hibernate5/pom.xml +++ b/hibernate5/pom.xml @@ -16,7 +16,7 @@ UTF-8 - 3.6.0 + 3.7.0 5.2.12.Final 6.0.6 2.2.3 diff --git a/java-difference-date/pom.xml b/java-difference-date/pom.xml index 388753de90..ac3f0fa3b5 100644 --- a/java-difference-date/pom.xml +++ b/java-difference-date/pom.xml @@ -41,6 +41,7 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 1.8 1.8 diff --git a/jee-7/src/main/java/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/pom.xml b/jee-7/src/main/java/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/pom.xml index b4bb243559..de69efa43a 100644 --- a/jee-7/src/main/java/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/pom.xml +++ b/jee-7/src/main/java/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/pom.xml @@ -34,10 +34,10 @@ org.apache.maven.plugins maven-compiler-plugin - 3.2 + 3.7.0 - 1.7 - 1.7 + 1.8 + 1.8 diff --git a/jhipster/jhipster-microservice/car-app/pom.xml b/jhipster/jhipster-microservice/car-app/pom.xml index 23da8767cb..5fd7febd07 100644 --- a/jhipster/jhipster-microservice/car-app/pom.xml +++ b/jhipster/jhipster-microservice/car-app/pom.xml @@ -506,6 +506,8 @@ maven-compiler-plugin ${maven-compiler-plugin.version} + 1.8 + 1.8 org.mapstruct diff --git a/libraries-data/pom.xml b/libraries-data/pom.xml index 90b1f6bb1d..63cf60ac36 100644 --- a/libraries-data/pom.xml +++ b/libraries-data/pom.xml @@ -148,7 +148,7 @@ 1.4.196 16.5.1 4.12 - 3.6.2 + 3.7.0 5.0 \ No newline at end of file diff --git a/libraries/pom.xml b/libraries/pom.xml index 3627e74472..e4383eaadc 100644 --- a/libraries/pom.xml +++ b/libraries/pom.xml @@ -107,6 +107,7 @@ maven-compiler-plugin + 3.7.0 1.8 1.8 diff --git a/linkrest/pom.xml b/linkrest/pom.xml index aa2f0f8bda..0363f0bc4c 100644 --- a/linkrest/pom.xml +++ b/linkrest/pom.xml @@ -33,7 +33,7 @@ maven-compiler-plugin - 3.5 + 3.7.0 1.8 1.8 diff --git a/mustache/pom.xml b/mustache/pom.xml index 230aeecd60..1c64dbdb0b 100644 --- a/mustache/pom.xml +++ b/mustache/pom.xml @@ -169,7 +169,7 @@ UTF-8 - 3.6.0 + 3.7.0 2.19.1 1.8 diff --git a/parent-boot-4/pom.xml b/parent-boot-4/pom.xml index 608e57ddaf..51ef9f4854 100644 --- a/parent-boot-4/pom.xml +++ b/parent-boot-4/pom.xml @@ -15,7 +15,7 @@ 3.0.1 2.19.1 - 3.6.0 + 3.7.0 diff --git a/parent-boot-5/pom.xml b/parent-boot-5/pom.xml index 2fa397f298..6b1445fcdd 100644 --- a/parent-boot-5/pom.xml +++ b/parent-boot-5/pom.xml @@ -15,7 +15,7 @@ 3.0.1 2.19.1 - 3.6.0 + 3.7.0 diff --git a/patterns/front-controller/pom.xml b/patterns/front-controller/pom.xml index 7887af5430..b746d5dc6c 100644 --- a/patterns/front-controller/pom.xml +++ b/patterns/front-controller/pom.xml @@ -25,6 +25,11 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 + + 1.8 + 1.8 + org.apache.maven.plugins diff --git a/patterns/intercepting-filter/pom.xml b/patterns/intercepting-filter/pom.xml index 5b7eb48a86..b26b993d69 100644 --- a/patterns/intercepting-filter/pom.xml +++ b/patterns/intercepting-filter/pom.xml @@ -30,6 +30,11 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 + + 1.8 + 1.8 + org.apache.maven.plugins diff --git a/persistence-modules/liquibase/pom.xml b/persistence-modules/liquibase/pom.xml index a574ba497c..a70483437f 100644 --- a/persistence-modules/liquibase/pom.xml +++ b/persistence-modules/liquibase/pom.xml @@ -26,7 +26,7 @@ org.apache.maven.plugins maven-compiler-plugin - 2.5.1 + 3.7.0 1.8 1.8 diff --git a/persistence-modules/spring-hibernate-5/pom.xml b/persistence-modules/spring-hibernate-5/pom.xml index 23cf9a4d44..88db38b2fc 100644 --- a/persistence-modules/spring-hibernate-5/pom.xml +++ b/persistence-modules/spring-hibernate-5/pom.xml @@ -220,7 +220,7 @@ 2.9.0 - 3.6.0 + 3.7.0 2.19.1 2.7 1.6.1 diff --git a/pom.xml b/pom.xml index 5eb1bb257d..5276076bd5 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ 1.1.7 2.19.1 - 3.6.0 + 3.7.0 diff --git a/saas/pom.xml b/saas/pom.xml index 7c8745910f..b76b27011a 100644 --- a/saas/pom.xml +++ b/saas/pom.xml @@ -79,6 +79,6 @@ - 3.6.0 + 3.7.0 \ No newline at end of file diff --git a/spring-boot-actuator/pom.xml b/spring-boot-actuator/pom.xml index bec126a247..299c7e76a5 100644 --- a/spring-boot-actuator/pom.xml +++ b/spring-boot-actuator/pom.xml @@ -59,6 +59,7 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 1.8 1.8 diff --git a/spring-boot-custom-starter/greeter-spring-boot-autoconfigure/pom.xml b/spring-boot-custom-starter/greeter-spring-boot-autoconfigure/pom.xml index 62c3676ae4..d5946900ae 100644 --- a/spring-boot-custom-starter/greeter-spring-boot-autoconfigure/pom.xml +++ b/spring-boot-custom-starter/greeter-spring-boot-autoconfigure/pom.xml @@ -47,7 +47,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.5.1 + 3.7.0 1.8 1.8 diff --git a/spring-boot-custom-starter/greeter-spring-boot-starter/pom.xml b/spring-boot-custom-starter/greeter-spring-boot-starter/pom.xml index 7b38c53c09..9b8858a8ab 100644 --- a/spring-boot-custom-starter/greeter-spring-boot-starter/pom.xml +++ b/spring-boot-custom-starter/greeter-spring-boot-starter/pom.xml @@ -39,7 +39,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.5.1 + 3.7.0 1.8 1.8 diff --git a/spring-cloud/pom.xml b/spring-cloud/pom.xml index d11455f90c..374f7010c6 100644 --- a/spring-cloud/pom.xml +++ b/spring-cloud/pom.xml @@ -43,7 +43,7 @@ 1.2.3.RELEASE 1.3.0.RELEASE 1.4.2.RELEASE - 3.6.0 + 3.7.0 1.4.2.RELEASE diff --git a/spring-cloud/spring-cloud-connectors-heroku/pom.xml b/spring-cloud/spring-cloud-connectors-heroku/pom.xml index ba3f0ef28f..83e8e360c8 100644 --- a/spring-cloud/spring-cloud-connectors-heroku/pom.xml +++ b/spring-cloud/spring-cloud-connectors-heroku/pom.xml @@ -88,7 +88,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.6.0 + 3.7.0 1.8 1.8 diff --git a/spring-cloud/spring-cloud-consul/pom.xml b/spring-cloud/spring-cloud-consul/pom.xml index 0a0650ec8b..7ce570d50d 100644 --- a/spring-cloud/spring-cloud-consul/pom.xml +++ b/spring-cloud/spring-cloud-consul/pom.xml @@ -18,7 +18,7 @@ UTF-8 - 3.6.0 + 3.7.0 diff --git a/spring-cloud/spring-cloud-eureka/pom.xml b/spring-cloud/spring-cloud-eureka/pom.xml index d1d564c9bf..e90609c48d 100644 --- a/spring-cloud/spring-cloud-eureka/pom.xml +++ b/spring-cloud/spring-cloud-eureka/pom.xml @@ -26,7 +26,7 @@ UTF-8 - 3.6.0 + 3.7.0 1.4.2.RELEASE diff --git a/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-client/pom.xml b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-client/pom.xml index 794a2a72f3..cd363ffef1 100644 --- a/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-client/pom.xml +++ b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-client/pom.xml @@ -48,6 +48,11 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 + + 1.8 + 1.8 + org.springframework.boot diff --git a/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-feign-client/pom.xml b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-feign-client/pom.xml index 9c43d35b23..038a0ab81d 100644 --- a/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-feign-client/pom.xml +++ b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-feign-client/pom.xml @@ -58,6 +58,11 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 + + 1.8 + 1.8 + org.springframework.boot diff --git a/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-server/pom.xml b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-server/pom.xml index 19df5e0e01..e4bae32011 100644 --- a/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-server/pom.xml +++ b/spring-cloud/spring-cloud-eureka/spring-cloud-eureka-server/pom.xml @@ -43,6 +43,11 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 + + 1.8 + 1.8 + org.springframework.boot diff --git a/spring-cloud/spring-cloud-gateway/pom.xml b/spring-cloud/spring-cloud-gateway/pom.xml index 095ca4ea31..5142b25400 100644 --- a/spring-cloud/spring-cloud-gateway/pom.xml +++ b/spring-cloud/spring-cloud-gateway/pom.xml @@ -23,7 +23,7 @@ UTF-8 - 3.6.0 + 3.7.0 1.4.2.RELEASE diff --git a/spring-cloud/spring-cloud-hystrix/feign-rest-consumer/pom.xml b/spring-cloud/spring-cloud-hystrix/feign-rest-consumer/pom.xml index 91ca3ced3f..5913b60a01 100644 --- a/spring-cloud/spring-cloud-hystrix/feign-rest-consumer/pom.xml +++ b/spring-cloud/spring-cloud-hystrix/feign-rest-consumer/pom.xml @@ -72,6 +72,11 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 + + 1.8 + 1.8 + org.springframework.boot diff --git a/spring-cloud/spring-cloud-hystrix/pom.xml b/spring-cloud/spring-cloud-hystrix/pom.xml index fe759cd0f1..9a6af9a790 100644 --- a/spring-cloud/spring-cloud-hystrix/pom.xml +++ b/spring-cloud/spring-cloud-hystrix/pom.xml @@ -25,7 +25,7 @@ UTF-8 - 3.6.0 + 3.7.0 1.4.2.RELEASE diff --git a/spring-cloud/spring-cloud-hystrix/rest-consumer/pom.xml b/spring-cloud/spring-cloud-hystrix/rest-consumer/pom.xml index 6be3449502..46e408d339 100644 --- a/spring-cloud/spring-cloud-hystrix/rest-consumer/pom.xml +++ b/spring-cloud/spring-cloud-hystrix/rest-consumer/pom.xml @@ -62,6 +62,11 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 + + 1.8 + 1.8 + org.springframework.boot diff --git a/spring-cloud/spring-cloud-hystrix/rest-producer/pom.xml b/spring-cloud/spring-cloud-hystrix/rest-producer/pom.xml index 796cb4159b..804ef2eb29 100644 --- a/spring-cloud/spring-cloud-hystrix/rest-producer/pom.xml +++ b/spring-cloud/spring-cloud-hystrix/rest-producer/pom.xml @@ -30,6 +30,11 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 + + 1.8 + 1.8 + org.springframework.boot diff --git a/spring-cloud/spring-cloud-rest/pom.xml b/spring-cloud/spring-cloud-rest/pom.xml index d0e9999ef6..6983ee2c7c 100644 --- a/spring-cloud/spring-cloud-rest/pom.xml +++ b/spring-cloud/spring-cloud-rest/pom.xml @@ -25,7 +25,7 @@ UTF-8 - 3.6.0 + 3.7.0 1.4.2.RELEASE diff --git a/spring-cloud/spring-cloud-stream/pom.xml b/spring-cloud/spring-cloud-stream/pom.xml index 5ec24268d9..65a327e664 100644 --- a/spring-cloud/spring-cloud-stream/pom.xml +++ b/spring-cloud/spring-cloud-stream/pom.xml @@ -22,7 +22,7 @@ UTF-8 - 3.6.0 + 3.7.0 diff --git a/spring-mvc-simple/pom.xml b/spring-mvc-simple/pom.xml index 8a51c04113..2cc6aec906 100644 --- a/spring-mvc-simple/pom.xml +++ b/spring-mvc-simple/pom.xml @@ -141,6 +141,7 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 1.8 1.8 diff --git a/spring-rest-simple/pom.xml b/spring-rest-simple/pom.xml index 7314785731..ac74534328 100644 --- a/spring-rest-simple/pom.xml +++ b/spring-rest-simple/pom.xml @@ -206,6 +206,7 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 1.8 1.8 diff --git a/spring-roo/pom.xml b/spring-roo/pom.xml index e1d69a3031..acc03953d0 100644 --- a/spring-roo/pom.xml +++ b/spring-roo/pom.xml @@ -1,6 +1,6 @@ - io.spring.platform @@ -500,6 +500,7 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 ${java.version} ${java.version} diff --git a/spring-security-mvc-socket/pom.xml b/spring-security-mvc-socket/pom.xml index c1715d36d2..40d81649f5 100644 --- a/spring-security-mvc-socket/pom.xml +++ b/spring-security-mvc-socket/pom.xml @@ -151,7 +151,7 @@ maven-compiler-plugin - 3.1 + 3.7.0 1.8 1.8 diff --git a/spring-swagger-codegen/spring-swagger-codegen-api-client/pom.xml b/spring-swagger-codegen/spring-swagger-codegen-api-client/pom.xml index fb25a888fd..fca3e6351d 100644 --- a/spring-swagger-codegen/spring-swagger-codegen-api-client/pom.xml +++ b/spring-swagger-codegen/spring-swagger-codegen-api-client/pom.xml @@ -118,10 +118,10 @@ org.apache.maven.plugins maven-compiler-plugin - 3.6.1 + 3.7.0 - 1.7 - 1.7 + 1.8 + 1.8 diff --git a/testing-modules/junit-5/pom.xml b/testing-modules/junit-5/pom.xml index 684a9253d5..585232b3fe 100644 --- a/testing-modules/junit-5/pom.xml +++ b/testing-modules/junit-5/pom.xml @@ -27,7 +27,7 @@ 1.4.196 2.11.0 - 3.6.0 + 3.7.0 2.19.1 4.12 5.0.1.RELEASE diff --git a/vertx-and-rxjava/pom.xml b/vertx-and-rxjava/pom.xml index 9c2c9bfd48..067b88c410 100644 --- a/vertx-and-rxjava/pom.xml +++ b/vertx-and-rxjava/pom.xml @@ -17,6 +17,7 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 1.8 1.8 diff --git a/vraptor/pom.xml b/vraptor/pom.xml index 49b0922ddd..64a4f2d85d 100644 --- a/vraptor/pom.xml +++ b/vraptor/pom.xml @@ -115,7 +115,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.1 + 3.7.0 1.8 1.8 diff --git a/xml/pom.xml b/xml/pom.xml index 2249767050..66c17a4f33 100644 --- a/xml/pom.xml +++ b/xml/pom.xml @@ -159,6 +159,7 @@ org.apache.maven.plugins maven-compiler-plugin + 3.7.0 ${java-version} ${java-version} From 1cc40b139103ae64f3c1e8ad173ada00319903dd Mon Sep 17 00:00:00 2001 From: DOHA Date: Sat, 30 Dec 2017 20:31:30 +0200 Subject: [PATCH 052/391] move url matching code --- spring-5-reactive/pom.xml | 2 +- .../controller}/PathPatternController.java | 2 +- .../com/baeldung/reactive/urlmatch/Actor.java | 23 ++++++ ...Spring5URLPatternUsingRouterFunctions.java | 2 +- .../reactive/urlmatch/FormHandler.java | 41 ++++++++++ .../urlmatch/FunctionalWebApplication.java | 80 +++++++++++++++++++ .../reactive/urlmatch/IndexRewriteFilter.java | 27 +++++++ .../src/main/resources/files/hello.txt | 1 + .../src/main/resources/files/test/test.txt | 1 + ...rnUsingRouterFunctionsIntegrationTest.java | 6 +- ...ernsUsingHandlerMethodIntegrationTest.java | 8 +- 11 files changed, 185 insertions(+), 8 deletions(-) rename {spring-5/src/main/java/com/baeldung/web => spring-5-reactive/src/main/java/com/baeldung/reactive/controller}/PathPatternController.java (93%) create mode 100644 spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/Actor.java rename {spring-5/src/main/java/com/baeldung/functional => spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch}/ExploreSpring5URLPatternUsingRouterFunctions.java (98%) create mode 100644 spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/FormHandler.java create mode 100644 spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/FunctionalWebApplication.java create mode 100644 spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/IndexRewriteFilter.java create mode 100644 spring-5-reactive/src/main/resources/files/hello.txt create mode 100644 spring-5-reactive/src/main/resources/files/test/test.txt rename spring-5/src/test/java/com/baeldung/functional/ExploreSpring5URLPatternUsingRouterFunctionsTest.java => spring-5-reactive/src/test/java/com/baeldung/reactive/urlmatch/ExploreSpring5URLPatternUsingRouterFunctionsIntegrationTest.java (93%) rename {spring-5/src/test/java/com/baeldung/web => spring-5-reactive/src/test/java/com/baeldung/reactive/urlmatch}/PathPatternsUsingHandlerMethodIntegrationTest.java (92%) diff --git a/spring-5-reactive/pom.xml b/spring-5-reactive/pom.xml index 5d7cf0d7e5..e5b35de2f5 100644 --- a/spring-5-reactive/pom.xml +++ b/spring-5-reactive/pom.xml @@ -28,7 +28,7 @@ org.springframework.boot - spring-boot-starter-web + spring-boot-starter-tomcat org.springframework.boot diff --git a/spring-5/src/main/java/com/baeldung/web/PathPatternController.java b/spring-5-reactive/src/main/java/com/baeldung/reactive/controller/PathPatternController.java similarity index 93% rename from spring-5/src/main/java/com/baeldung/web/PathPatternController.java rename to spring-5-reactive/src/main/java/com/baeldung/reactive/controller/PathPatternController.java index 6fd972f2a4..f5a5d9e769 100644 --- a/spring-5/src/main/java/com/baeldung/web/PathPatternController.java +++ b/spring-5-reactive/src/main/java/com/baeldung/reactive/controller/PathPatternController.java @@ -1,4 +1,4 @@ -package com.baeldung.web; +package com.baeldung.reactive.controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; diff --git a/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/Actor.java b/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/Actor.java new file mode 100644 index 0000000000..ee06b94be7 --- /dev/null +++ b/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/Actor.java @@ -0,0 +1,23 @@ +package com.baeldung.reactive.urlmatch; + +class Actor { + private String firstname; + private String lastname; + + public Actor() { + } + + public Actor(String firstname, String lastname) { + this.firstname = firstname; + this.lastname = lastname; + } + + public String getFirstname() { + return firstname; + } + + public String getLastname() { + return lastname; + } + +} diff --git a/spring-5/src/main/java/com/baeldung/functional/ExploreSpring5URLPatternUsingRouterFunctions.java b/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/ExploreSpring5URLPatternUsingRouterFunctions.java similarity index 98% rename from spring-5/src/main/java/com/baeldung/functional/ExploreSpring5URLPatternUsingRouterFunctions.java rename to spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/ExploreSpring5URLPatternUsingRouterFunctions.java index 2a6d04538c..78f40be57a 100644 --- a/spring-5/src/main/java/com/baeldung/functional/ExploreSpring5URLPatternUsingRouterFunctions.java +++ b/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/ExploreSpring5URLPatternUsingRouterFunctions.java @@ -1,4 +1,4 @@ -package com.baeldung.functional; +package com.baeldung.reactive.urlmatch; import static org.springframework.web.reactive.function.BodyInserters.fromObject; import static org.springframework.web.reactive.function.server.RequestPredicates.GET; diff --git a/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/FormHandler.java b/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/FormHandler.java new file mode 100644 index 0000000000..0781230379 --- /dev/null +++ b/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/FormHandler.java @@ -0,0 +1,41 @@ +package com.baeldung.reactive.urlmatch; + +import org.springframework.core.io.buffer.DataBuffer; +import org.springframework.util.MultiValueMap; +import org.springframework.web.reactive.function.server.ServerRequest; +import org.springframework.web.reactive.function.server.ServerResponse; +import reactor.core.publisher.Mono; + +import java.util.List; +import java.util.concurrent.atomic.AtomicLong; + +import static org.springframework.web.reactive.function.BodyExtractors.toDataBuffers; +import static org.springframework.web.reactive.function.BodyExtractors.toFormData; +import static org.springframework.web.reactive.function.BodyInserters.fromObject; +import static org.springframework.web.reactive.function.server.ServerResponse.ok; + +public class FormHandler { + + Mono handleLogin(ServerRequest request) { + return request.body(toFormData()) + .map(MultiValueMap::toSingleValueMap) + .filter(formData -> "baeldung".equals(formData.get("user"))) + .filter(formData -> "you_know_what_to_do".equals(formData.get("token"))) + .flatMap(formData -> ok().body(Mono.just("welcome back!"), String.class)) + .switchIfEmpty(ServerResponse.badRequest() + .build()); + } + + Mono handleUpload(ServerRequest request) { + return request.body(toDataBuffers()) + .collectList() + .flatMap(dataBuffers -> ok().body(fromObject(extractData(dataBuffers).toString()))); + } + + private AtomicLong extractData(List dataBuffers) { + AtomicLong atomicLong = new AtomicLong(0); + dataBuffers.forEach(d -> atomicLong.addAndGet(d.asByteBuffer() + .array().length)); + return atomicLong; + } +} diff --git a/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/FunctionalWebApplication.java b/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/FunctionalWebApplication.java new file mode 100644 index 0000000000..2ea5420a2b --- /dev/null +++ b/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/FunctionalWebApplication.java @@ -0,0 +1,80 @@ +package com.baeldung.reactive.urlmatch; + +import static org.springframework.web.reactive.function.BodyInserters.fromObject; +import static org.springframework.web.reactive.function.server.RequestPredicates.GET; +import static org.springframework.web.reactive.function.server.RequestPredicates.POST; +import static org.springframework.web.reactive.function.server.RequestPredicates.path; +import static org.springframework.web.reactive.function.server.RouterFunctions.route; +import static org.springframework.web.reactive.function.server.RouterFunctions.toHttpHandler; +import static org.springframework.web.reactive.function.server.ServerResponse.ok; + +import java.util.Arrays; +import java.util.List; +import java.util.concurrent.CopyOnWriteArrayList; + +import org.apache.catalina.Context; +import org.apache.catalina.startup.Tomcat; +import org.springframework.boot.web.embedded.tomcat.TomcatWebServer; +import org.springframework.boot.web.server.WebServer; +import org.springframework.core.io.ClassPathResource; +import org.springframework.http.server.reactive.HttpHandler; +import org.springframework.http.server.reactive.ServletHttpHandlerAdapter; +import org.springframework.web.reactive.function.server.RouterFunction; +import org.springframework.web.reactive.function.server.RouterFunctions; +import org.springframework.web.reactive.function.server.ServerResponse; +import org.springframework.web.server.WebHandler; +import org.springframework.web.server.adapter.WebHttpHandlerBuilder; + +import reactor.core.publisher.Flux; + +public class FunctionalWebApplication { + + private static final Actor BRAD_PITT = new Actor("Brad", "Pitt"); + private static final Actor TOM_HANKS = new Actor("Tom", "Hanks"); + private static final List actors = new CopyOnWriteArrayList<>(Arrays.asList(BRAD_PITT, TOM_HANKS)); + + private RouterFunction routingFunction() { + FormHandler formHandler = new FormHandler(); + + RouterFunction restfulRouter = route(GET("/"), serverRequest -> ok().body(Flux.fromIterable(actors), Actor.class)).andRoute(POST("/"), serverRequest -> serverRequest.bodyToMono(Actor.class) + .doOnNext(actors::add) + .then(ok().build())); + + return route(GET("/test"), serverRequest -> ok().body(fromObject("helloworld"))).andRoute(POST("/login"), formHandler::handleLogin) + .andRoute(POST("/upload"), formHandler::handleUpload) + .and(RouterFunctions.resources("/files/**", new ClassPathResource("files/"))) + .andNest(path("/actor"), restfulRouter) + .filter((request, next) -> { + System.out.println("Before handler invocation: " + request.path()); + return next.handle(request); + }); + } + + WebServer start() throws Exception { + WebHandler webHandler = (WebHandler) toHttpHandler(routingFunction()); + HttpHandler httpHandler = WebHttpHandlerBuilder.webHandler(webHandler) + .filter(new IndexRewriteFilter()) + .build(); + + Tomcat tomcat = new Tomcat(); + tomcat.setHostname("localhost"); + tomcat.setPort(9090); + Context rootContext = tomcat.addContext("", System.getProperty("java.io.tmpdir")); + ServletHttpHandlerAdapter servlet = new ServletHttpHandlerAdapter(httpHandler); + Tomcat.addServlet(rootContext, "httpHandlerServlet", servlet); + rootContext.addServletMappingDecoded("/", "httpHandlerServlet"); + + TomcatWebServer server = new TomcatWebServer(tomcat); + server.start(); + return server; + + } + + public static void main(String[] args) { + try { + new FunctionalWebApplication().start(); + } catch (Exception e) { + e.printStackTrace(); + } + } +} diff --git a/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/IndexRewriteFilter.java b/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/IndexRewriteFilter.java new file mode 100644 index 0000000000..2eb252ed2b --- /dev/null +++ b/spring-5-reactive/src/main/java/com/baeldung/reactive/urlmatch/IndexRewriteFilter.java @@ -0,0 +1,27 @@ +package com.baeldung.reactive.urlmatch; + +import org.springframework.http.server.reactive.ServerHttpRequest; +import org.springframework.web.server.ServerWebExchange; +import org.springframework.web.server.WebFilter; +import org.springframework.web.server.WebFilterChain; +import reactor.core.publisher.Mono; + +class IndexRewriteFilter implements WebFilter { + + @Override + public Mono filter(ServerWebExchange serverWebExchange, WebFilterChain webFilterChain) { + ServerHttpRequest request = serverWebExchange.getRequest(); + if (request.getURI() + .getPath() + .equals("/")) { + return webFilterChain.filter(serverWebExchange.mutate() + .request(builder -> builder.method(request.getMethod()) + .contextPath(request.getPath() + .toString()) + .path("/test")) + .build()); + } + return webFilterChain.filter(serverWebExchange); + } + +} diff --git a/spring-5-reactive/src/main/resources/files/hello.txt b/spring-5-reactive/src/main/resources/files/hello.txt new file mode 100644 index 0000000000..b6fc4c620b --- /dev/null +++ b/spring-5-reactive/src/main/resources/files/hello.txt @@ -0,0 +1 @@ +hello \ No newline at end of file diff --git a/spring-5-reactive/src/main/resources/files/test/test.txt b/spring-5-reactive/src/main/resources/files/test/test.txt new file mode 100644 index 0000000000..30d74d2584 --- /dev/null +++ b/spring-5-reactive/src/main/resources/files/test/test.txt @@ -0,0 +1 @@ +test \ No newline at end of file diff --git a/spring-5/src/test/java/com/baeldung/functional/ExploreSpring5URLPatternUsingRouterFunctionsTest.java b/spring-5-reactive/src/test/java/com/baeldung/reactive/urlmatch/ExploreSpring5URLPatternUsingRouterFunctionsIntegrationTest.java similarity index 93% rename from spring-5/src/test/java/com/baeldung/functional/ExploreSpring5URLPatternUsingRouterFunctionsTest.java rename to spring-5-reactive/src/test/java/com/baeldung/reactive/urlmatch/ExploreSpring5URLPatternUsingRouterFunctionsIntegrationTest.java index 7a38fa697f..21ba11616d 100644 --- a/spring-5/src/test/java/com/baeldung/functional/ExploreSpring5URLPatternUsingRouterFunctionsTest.java +++ b/spring-5-reactive/src/test/java/com/baeldung/reactive/urlmatch/ExploreSpring5URLPatternUsingRouterFunctionsIntegrationTest.java @@ -1,4 +1,4 @@ -package com.baeldung.functional; +package com.baeldung.reactive.urlmatch; import org.junit.AfterClass; import org.junit.BeforeClass; @@ -6,7 +6,9 @@ import org.junit.Test; import org.springframework.boot.web.server.WebServer; import org.springframework.test.web.reactive.server.WebTestClient; -public class ExploreSpring5URLPatternUsingRouterFunctionsTest { +import com.baeldung.reactive.urlmatch.ExploreSpring5URLPatternUsingRouterFunctions; + +public class ExploreSpring5URLPatternUsingRouterFunctionsIntegrationTest { private static WebTestClient client; private static WebServer server; diff --git a/spring-5/src/test/java/com/baeldung/web/PathPatternsUsingHandlerMethodIntegrationTest.java b/spring-5-reactive/src/test/java/com/baeldung/reactive/urlmatch/PathPatternsUsingHandlerMethodIntegrationTest.java similarity index 92% rename from spring-5/src/test/java/com/baeldung/web/PathPatternsUsingHandlerMethodIntegrationTest.java rename to spring-5-reactive/src/test/java/com/baeldung/reactive/urlmatch/PathPatternsUsingHandlerMethodIntegrationTest.java index c2ed8ff071..9f31608ff7 100644 --- a/spring-5/src/test/java/com/baeldung/web/PathPatternsUsingHandlerMethodIntegrationTest.java +++ b/spring-5-reactive/src/test/java/com/baeldung/reactive/urlmatch/PathPatternsUsingHandlerMethodIntegrationTest.java @@ -1,6 +1,5 @@ -package com.baeldung.web; +package com.baeldung.reactive.urlmatch; -import com.baeldung.Spring5Application; import org.junit.BeforeClass; import org.junit.Test; import org.junit.runner.RunWith; @@ -8,8 +7,11 @@ import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.web.reactive.server.WebTestClient; +import com.baeldung.reactive.Spring5ReactiveApplication; +import com.baeldung.reactive.controller.PathPatternController; + @RunWith(SpringRunner.class) -@SpringBootTest(classes = Spring5Application.class) +@SpringBootTest(classes = Spring5ReactiveApplication.class) public class PathPatternsUsingHandlerMethodIntegrationTest { private static WebTestClient client; From 3db819c8423d8c8024a9fd07188a5f9b38e7d62d Mon Sep 17 00:00:00 2001 From: DOHA Date: Thu, 4 Jan 2018 22:52:28 +0200 Subject: [PATCH 053/391] upgrade boot parent --- hystrix/pom.xml | 4 +- jjwt/pom.xml | 4 +- .../DemoApplicationIntegrationTest.java | 4 +- parent-boot-4/README.md | 1 - parent-boot-4/pom.xml | 81 ------------------- parent-boot-5/pom.xml | 6 +- pom.xml | 1 + spring-all/pom.xml | 4 +- spring-boot-keycloak/pom.xml | 4 +- spring-cloud-data-flow/batch-job/pom.xml | 4 +- .../data-flow-server/pom.xml | 4 +- .../data-flow-shell/pom.xml | 4 +- spring-cloud-data-flow/log-sink/pom.xml | 4 +- spring-cloud-data-flow/time-processor/pom.xml | 4 +- spring-cloud-data-flow/time-source/pom.xml | 4 +- .../spring-cloud-bootstrap/config/pom.xml | 4 +- .../spring-cloud-bootstrap/discovery/pom.xml | 4 +- .../spring-cloud-bootstrap/gateway/pom.xml | 4 +- .../spring-cloud-bootstrap/svc-book/pom.xml | 4 +- .../spring-cloud-bootstrap/svc-rating/pom.xml | 4 +- .../spring-cloud-bootstrap/zipkin/pom.xml | 4 +- .../config/client/ConfigClientLiveTest.java | 5 +- spring-cloud/spring-cloud-config/pom.xml | 4 +- .../ConfigServerListIntegrationTest.java | 4 +- .../spring-cloud-rest-books-api/pom.xml | 4 +- .../spring-cloud-rest-config-server/pom.xml | 4 +- .../pom.xml | 4 +- .../spring-cloud-rest-reviews-api/pom.xml | 4 +- .../spring-cloud-ribbon-client/pom.xml | 4 +- spring-cucumber/pom.xml | 4 +- .../com/baeldung/SpringIntegrationTest.java | 13 ++- spring-katharsis/pom.xml | 4 +- .../main/java/org/baeldung/Application.java | 2 +- spring-mobile/pom.xml | 4 +- spring-mockito/pom.xml | 4 +- .../baeldung/UserServiceIntegrationTest.java | 4 +- spring-mvc-email/pom.xml | 4 +- spring-protobuf/pom.xml | 4 +- .../protobuf/ApplicationIntegrationTest.java | 22 ++--- spring-quartz/pom.xml | 4 +- spring-reactor/pom.xml | 4 +- spring-remoting/pom.xml | 4 +- spring-rest-docs/pom.xml | 4 +- .../ApiDocumentationIntegrationTest.java | 45 ++++++----- ...ngStartedDocumentationIntegrationTest.java | 33 ++++---- spring-rest-full/pom.xml | 4 +- spring-rest-query-language/pom.xml | 4 +- spring-rest/pom.xml | 4 +- spring-security-cache-control/pom.xml | 4 +- .../pom.xml | 4 +- .../spring-security-jsp-authorize/pom.xml | 4 +- .../spring-security-jsp-config/pom.xml | 4 +- .../spring-security-mvc/pom.xml | 4 +- .../java/org/baeldung/config/Application.java | 2 +- .../pom.xml | 4 +- .../pom.xml | 4 +- .../spring-security-thymeleaf-config/pom.xml | 4 +- spring-security-core/pom.xml | 4 +- spring-security-mvc-ldap/pom.xml | 4 +- spring-security-rest-custom/pom.xml | 4 +- spring-security-stormpath/pom.xml | 4 +- spring-security-x509/pom.xml | 4 +- spring-session/pom.xml | 4 +- spring-sleuth/pom.xml | 4 +- spring-social-login/pom.xml | 4 +- spring-userservice/derby.log | 13 +++ spring-zuul/pom.xml | 4 +- .../config/ResourceServerApplication.java | 2 +- 68 files changed, 188 insertions(+), 258 deletions(-) delete mode 100644 parent-boot-4/README.md delete mode 100644 parent-boot-4/pom.xml create mode 100644 spring-userservice/derby.log diff --git a/hystrix/pom.xml b/hystrix/pom.xml index 58e09816ea..9e4b2bb082 100644 --- a/hystrix/pom.xml +++ b/hystrix/pom.xml @@ -7,10 +7,10 @@ hystrix - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/jjwt/pom.xml b/jjwt/pom.xml index 83a1131211..cd2dd9f97e 100644 --- a/jjwt/pom.xml +++ b/jjwt/pom.xml @@ -12,10 +12,10 @@ Exercising the JJWT - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/jjwt/src/test/java/io/jsonwebtoken/jjwtfun/DemoApplicationIntegrationTest.java b/jjwt/src/test/java/io/jsonwebtoken/jjwtfun/DemoApplicationIntegrationTest.java index df147232d9..846445ab2b 100644 --- a/jjwt/src/test/java/io/jsonwebtoken/jjwtfun/DemoApplicationIntegrationTest.java +++ b/jjwt/src/test/java/io/jsonwebtoken/jjwtfun/DemoApplicationIntegrationTest.java @@ -2,12 +2,12 @@ package io.jsonwebtoken.jjwtfun; import org.junit.Test; import org.junit.runner.RunWith; -import org.springframework.boot.test.SpringApplicationConfiguration; +import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.web.WebAppConfiguration; @RunWith(SpringJUnit4ClassRunner.class) -@SpringApplicationConfiguration(classes = JJWTFunApplication.class) +@SpringBootTest(classes = JJWTFunApplication.class) @WebAppConfiguration public class DemoApplicationIntegrationTest { diff --git a/parent-boot-4/README.md b/parent-boot-4/README.md deleted file mode 100644 index ff12555376..0000000000 --- a/parent-boot-4/README.md +++ /dev/null @@ -1 +0,0 @@ -## Relevant articles: diff --git a/parent-boot-4/pom.xml b/parent-boot-4/pom.xml deleted file mode 100644 index 51ef9f4854..0000000000 --- a/parent-boot-4/pom.xml +++ /dev/null @@ -1,81 +0,0 @@ - - 4.0.0 - com.baeldung - parent-boot-4 - 0.0.1-SNAPSHOT - pom - Parent Boot 4 - Parent for all spring boot 1.4 modules - - - UTF-8 - UTF-8 - 1.8 - 3.0.1 - - 2.19.1 - 3.7.0 - - - - spring-boot-starter-parent - org.springframework.boot - 1.4.4.RELEASE - - - - - - junit - junit - test - - - io.rest-assured - rest-assured - ${rest-assured.version} - - - org.springframework.boot - spring-boot-starter-test - test - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - org.apache.maven.plugins - maven-surefire-plugin - ${maven-surefire-plugin.version} - - 3 - true - - **/*IntegrationTest.java - **/*LongRunningUnitTest.java - **/*ManualTest.java - **/JdbcTest.java - **/*LiveTest.java - - - - - - org.apache.maven.plugins - maven-compiler-plugin - ${maven-compiler-plugin.version} - - 1.8 - 1.8 - - - - - - \ No newline at end of file diff --git a/parent-boot-5/pom.xml b/parent-boot-5/pom.xml index 6b1445fcdd..55ac0957ff 100644 --- a/parent-boot-5/pom.xml +++ b/parent-boot-5/pom.xml @@ -12,16 +12,16 @@ UTF-8 UTF-8 1.8 - 3.0.1 + 3.0.6 - 2.19.1 + 2.20.1 3.7.0 spring-boot-starter-parent org.springframework.boot - 1.5.3.RELEASE + 1.5.9.RELEASE diff --git a/pom.xml b/pom.xml index 19e42009c9..38fa010f95 100644 --- a/pom.xml +++ b/pom.xml @@ -28,6 +28,7 @@ + parent-boot-5 asm atomix apache-cayenne diff --git a/spring-all/pom.xml b/spring-all/pom.xml index 6615e1d6cd..b04ffae9c8 100644 --- a/spring-all/pom.xml +++ b/spring-all/pom.xml @@ -9,10 +9,10 @@ war - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-boot-keycloak/pom.xml b/spring-boot-keycloak/pom.xml index ab76d0af43..741e2313b4 100644 --- a/spring-boot-keycloak/pom.xml +++ b/spring-boot-keycloak/pom.xml @@ -14,9 +14,9 @@ com.baeldung - parent-boot-4 + parent-boot-5 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-cloud-data-flow/batch-job/pom.xml b/spring-cloud-data-flow/batch-job/pom.xml index 9a40c80e37..f2e9f35c8e 100644 --- a/spring-cloud-data-flow/batch-job/pom.xml +++ b/spring-cloud-data-flow/batch-job/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-cloud-data-flow/data-flow-server/pom.xml b/spring-cloud-data-flow/data-flow-server/pom.xml index ec0057191b..456a8abf4b 100644 --- a/spring-cloud-data-flow/data-flow-server/pom.xml +++ b/spring-cloud-data-flow/data-flow-server/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-cloud-data-flow/data-flow-shell/pom.xml b/spring-cloud-data-flow/data-flow-shell/pom.xml index b34c3cefeb..edb300a3b3 100644 --- a/spring-cloud-data-flow/data-flow-shell/pom.xml +++ b/spring-cloud-data-flow/data-flow-shell/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-cloud-data-flow/log-sink/pom.xml b/spring-cloud-data-flow/log-sink/pom.xml index b97a72d9c4..c07380de56 100644 --- a/spring-cloud-data-flow/log-sink/pom.xml +++ b/spring-cloud-data-flow/log-sink/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-cloud-data-flow/time-processor/pom.xml b/spring-cloud-data-flow/time-processor/pom.xml index 9b190e7250..08d5e2b9be 100644 --- a/spring-cloud-data-flow/time-processor/pom.xml +++ b/spring-cloud-data-flow/time-processor/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-cloud-data-flow/time-source/pom.xml b/spring-cloud-data-flow/time-source/pom.xml index 3112c7ede8..4d35e30be2 100644 --- a/spring-cloud-data-flow/time-source/pom.xml +++ b/spring-cloud-data-flow/time-source/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-cloud/spring-cloud-bootstrap/config/pom.xml b/spring-cloud/spring-cloud-bootstrap/config/pom.xml index 77ceedab39..f01ab55eb2 100644 --- a/spring-cloud/spring-cloud-bootstrap/config/pom.xml +++ b/spring-cloud/spring-cloud-bootstrap/config/pom.xml @@ -7,10 +7,10 @@ 1.0.0-SNAPSHOT - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-4 + ../../../parent-boot-5 diff --git a/spring-cloud/spring-cloud-bootstrap/discovery/pom.xml b/spring-cloud/spring-cloud-bootstrap/discovery/pom.xml index 3156e0f3e6..137e9bebad 100644 --- a/spring-cloud/spring-cloud-bootstrap/discovery/pom.xml +++ b/spring-cloud/spring-cloud-bootstrap/discovery/pom.xml @@ -7,10 +7,10 @@ 1.0.0-SNAPSHOT - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-4 + ../../../parent-boot-5 diff --git a/spring-cloud/spring-cloud-bootstrap/gateway/pom.xml b/spring-cloud/spring-cloud-bootstrap/gateway/pom.xml index 84dc2a6ca9..f32de88076 100644 --- a/spring-cloud/spring-cloud-bootstrap/gateway/pom.xml +++ b/spring-cloud/spring-cloud-bootstrap/gateway/pom.xml @@ -7,10 +7,10 @@ 1.0.0-SNAPSHOT - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-4 + ../../../parent-boot-5 diff --git a/spring-cloud/spring-cloud-bootstrap/svc-book/pom.xml b/spring-cloud/spring-cloud-bootstrap/svc-book/pom.xml index d35e4f6576..9cc3cdb516 100644 --- a/spring-cloud/spring-cloud-bootstrap/svc-book/pom.xml +++ b/spring-cloud/spring-cloud-bootstrap/svc-book/pom.xml @@ -8,10 +8,10 @@ 1.0.0-SNAPSHOT - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-4 + ../../../parent-boot-5 diff --git a/spring-cloud/spring-cloud-bootstrap/svc-rating/pom.xml b/spring-cloud/spring-cloud-bootstrap/svc-rating/pom.xml index 736a6114cf..3aa5cfa250 100644 --- a/spring-cloud/spring-cloud-bootstrap/svc-rating/pom.xml +++ b/spring-cloud/spring-cloud-bootstrap/svc-rating/pom.xml @@ -8,10 +8,10 @@ 1.0.0-SNAPSHOT - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-4 + ../../../parent-boot-5 diff --git a/spring-cloud/spring-cloud-bootstrap/zipkin/pom.xml b/spring-cloud/spring-cloud-bootstrap/zipkin/pom.xml index 3b4c984721..7e0d146f95 100644 --- a/spring-cloud/spring-cloud-bootstrap/zipkin/pom.xml +++ b/spring-cloud/spring-cloud-bootstrap/zipkin/pom.xml @@ -7,10 +7,10 @@ 1.0.0-SNAPSHOT - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-4 + ../../../parent-boot-5 diff --git a/spring-cloud/spring-cloud-config/client/src/test/java/com/baeldung/spring/cloud/config/client/ConfigClientLiveTest.java b/spring-cloud/spring-cloud-config/client/src/test/java/com/baeldung/spring/cloud/config/client/ConfigClientLiveTest.java index 058fd45f35..9bca369c64 100644 --- a/spring-cloud/spring-cloud-config/client/src/test/java/com/baeldung/spring/cloud/config/client/ConfigClientLiveTest.java +++ b/spring-cloud/spring-cloud-config/client/src/test/java/com/baeldung/spring/cloud/config/client/ConfigClientLiveTest.java @@ -1,14 +1,13 @@ package com.baeldung.spring.cloud.config.client; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; -import org.springframework.boot.test.SpringApplicationConfiguration; +import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.web.WebAppConfiguration; @RunWith(SpringJUnit4ClassRunner.class) -@SpringApplicationConfiguration(classes = ConfigClient.class) +@SpringBootTest(classes = ConfigClient.class) @WebAppConfiguration public class ConfigClientLiveTest { @Test diff --git a/spring-cloud/spring-cloud-config/pom.xml b/spring-cloud/spring-cloud-config/pom.xml index 81693b7e2e..a5f3f5271d 100644 --- a/spring-cloud/spring-cloud-config/pom.xml +++ b/spring-cloud/spring-cloud-config/pom.xml @@ -15,10 +15,10 @@ - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-cloud/spring-cloud-config/server/src/test/java/com/baeldung/spring/cloud/config/server/ConfigServerListIntegrationTest.java b/spring-cloud/spring-cloud-config/server/src/test/java/com/baeldung/spring/cloud/config/server/ConfigServerListIntegrationTest.java index 34c08cc815..c521a0d2ef 100644 --- a/spring-cloud/spring-cloud-config/server/src/test/java/com/baeldung/spring/cloud/config/server/ConfigServerListIntegrationTest.java +++ b/spring-cloud/spring-cloud-config/server/src/test/java/com/baeldung/spring/cloud/config/server/ConfigServerListIntegrationTest.java @@ -3,12 +3,12 @@ package com.baeldung.spring.cloud.config.server; import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; -import org.springframework.boot.test.SpringApplicationConfiguration; +import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.web.WebAppConfiguration; @RunWith(SpringJUnit4ClassRunner.class) -@SpringApplicationConfiguration(classes = ConfigServer.class) +@SpringBootTest(classes = ConfigServer.class) @WebAppConfiguration @Ignore public class ConfigServerListIntegrationTest { diff --git a/spring-cloud/spring-cloud-rest/spring-cloud-rest-books-api/pom.xml b/spring-cloud/spring-cloud-rest/spring-cloud-rest-books-api/pom.xml index fb84b33876..07f6ae3b55 100644 --- a/spring-cloud/spring-cloud-rest/spring-cloud-rest-books-api/pom.xml +++ b/spring-cloud/spring-cloud-rest/spring-cloud-rest-books-api/pom.xml @@ -12,10 +12,10 @@ Simple books API - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-4 + ../../../parent-boot-5 diff --git a/spring-cloud/spring-cloud-rest/spring-cloud-rest-config-server/pom.xml b/spring-cloud/spring-cloud-rest/spring-cloud-rest-config-server/pom.xml index f0a563f16f..11320107be 100644 --- a/spring-cloud/spring-cloud-rest/spring-cloud-rest-config-server/pom.xml +++ b/spring-cloud/spring-cloud-rest/spring-cloud-rest-config-server/pom.xml @@ -12,10 +12,10 @@ Spring Cloud REST configuration server - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-4 + ../../../parent-boot-5 diff --git a/spring-cloud/spring-cloud-rest/spring-cloud-rest-discovery-server/pom.xml b/spring-cloud/spring-cloud-rest/spring-cloud-rest-discovery-server/pom.xml index 0735808eea..d8dbc660d0 100644 --- a/spring-cloud/spring-cloud-rest/spring-cloud-rest-discovery-server/pom.xml +++ b/spring-cloud/spring-cloud-rest/spring-cloud-rest-discovery-server/pom.xml @@ -12,10 +12,10 @@ Spring Cloud REST server - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-4 + ../../../parent-boot-5 diff --git a/spring-cloud/spring-cloud-rest/spring-cloud-rest-reviews-api/pom.xml b/spring-cloud/spring-cloud-rest/spring-cloud-rest-reviews-api/pom.xml index 2574cae4eb..4252947664 100644 --- a/spring-cloud/spring-cloud-rest/spring-cloud-rest-reviews-api/pom.xml +++ b/spring-cloud/spring-cloud-rest/spring-cloud-rest-reviews-api/pom.xml @@ -12,10 +12,10 @@ Simple reviews API - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../../parent-boot-4 + ../../../parent-boot-5 diff --git a/spring-cloud/spring-cloud-ribbon-client/pom.xml b/spring-cloud/spring-cloud-ribbon-client/pom.xml index 68f3bd9439..85baff12cd 100644 --- a/spring-cloud/spring-cloud-ribbon-client/pom.xml +++ b/spring-cloud/spring-cloud-ribbon-client/pom.xml @@ -9,10 +9,10 @@ Introduction to Spring Cloud Rest Client with Netflix Ribbon - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-cucumber/pom.xml b/spring-cucumber/pom.xml index 8270fc3ae2..df4723484d 100644 --- a/spring-cucumber/pom.xml +++ b/spring-cucumber/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-cucumber/src/test/java/com/baeldung/SpringIntegrationTest.java b/spring-cucumber/src/test/java/com/baeldung/SpringIntegrationTest.java index 9fbaeb348d..f4d47d7871 100644 --- a/spring-cucumber/src/test/java/com/baeldung/SpringIntegrationTest.java +++ b/spring-cucumber/src/test/java/com/baeldung/SpringIntegrationTest.java @@ -1,8 +1,10 @@ package com.baeldung; +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; + import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.IntegrationTest; -import org.springframework.boot.test.SpringApplicationContextLoader; import org.springframework.http.HttpMethod; import org.springframework.http.client.ClientHttpResponse; import org.springframework.test.context.ContextConfiguration; @@ -10,14 +12,9 @@ import org.springframework.test.context.web.WebAppConfiguration; import org.springframework.web.client.ResponseErrorHandler; import org.springframework.web.client.RestTemplate; -import java.io.IOException; -import java.util.HashMap; -import java.util.Map; - //@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration(classes = SpringDemoApplication.class, loader = SpringApplicationContextLoader.class) +@ContextConfiguration(classes = SpringDemoApplication.class) @WebAppConfiguration -@IntegrationTest public class SpringIntegrationTest { static ResponseResults latestResponse = null; diff --git a/spring-katharsis/pom.xml b/spring-katharsis/pom.xml index a5e79e138b..49c0a5acf9 100644 --- a/spring-katharsis/pom.xml +++ b/spring-katharsis/pom.xml @@ -7,10 +7,10 @@ war - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-katharsis/src/main/java/org/baeldung/Application.java b/spring-katharsis/src/main/java/org/baeldung/Application.java index e7beb16e04..b61151d87f 100644 --- a/spring-katharsis/src/main/java/org/baeldung/Application.java +++ b/spring-katharsis/src/main/java/org/baeldung/Application.java @@ -2,7 +2,7 @@ package org.baeldung; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.boot.context.web.SpringBootServletInitializer; +import org.springframework.boot.web.support.SpringBootServletInitializer; @SpringBootApplication public class Application extends SpringBootServletInitializer { diff --git a/spring-mobile/pom.xml b/spring-mobile/pom.xml index 8b8618aeee..3a129c179e 100644 --- a/spring-mobile/pom.xml +++ b/spring-mobile/pom.xml @@ -11,10 +11,10 @@ http://maven.apache.org - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-mockito/pom.xml b/spring-mockito/pom.xml index d8bcc5682a..8c2949275c 100644 --- a/spring-mockito/pom.xml +++ b/spring-mockito/pom.xml @@ -12,10 +12,10 @@ Injecting Mockito Mocks into Spring Beans - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-mockito/src/test/java/com/baeldung/UserServiceIntegrationTest.java b/spring-mockito/src/test/java/com/baeldung/UserServiceIntegrationTest.java index 70861a96e1..d70f916b12 100644 --- a/spring-mockito/src/test/java/com/baeldung/UserServiceIntegrationTest.java +++ b/spring-mockito/src/test/java/com/baeldung/UserServiceIntegrationTest.java @@ -5,13 +5,13 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mockito; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.SpringApplicationConfiguration; +import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.ActiveProfiles; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @ActiveProfiles("test") @RunWith(SpringJUnit4ClassRunner.class) -@SpringApplicationConfiguration(classes = MocksApplication.class) +@SpringBootTest(classes = MocksApplication.class) public class UserServiceIntegrationTest { @Autowired diff --git a/spring-mvc-email/pom.xml b/spring-mvc-email/pom.xml index 9228054878..ddb1765af0 100644 --- a/spring-mvc-email/pom.xml +++ b/spring-mvc-email/pom.xml @@ -10,10 +10,10 @@ war - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-protobuf/pom.xml b/spring-protobuf/pom.xml index 36310e08f1..1771c3e1f2 100644 --- a/spring-protobuf/pom.xml +++ b/spring-protobuf/pom.xml @@ -7,10 +7,10 @@ spring-protobuf - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-protobuf/src/test/java/com/baeldung/protobuf/ApplicationIntegrationTest.java b/spring-protobuf/src/test/java/com/baeldung/protobuf/ApplicationIntegrationTest.java index 914cf18627..4b9f41ace3 100644 --- a/spring-protobuf/src/test/java/com/baeldung/protobuf/ApplicationIntegrationTest.java +++ b/spring-protobuf/src/test/java/com/baeldung/protobuf/ApplicationIntegrationTest.java @@ -1,7 +1,11 @@ package com.baeldung.protobuf; -import com.baeldung.protobuf.BaeldungTraining.Course; -import com.googlecode.protobuf.format.JsonFormat; +import static org.hamcrest.CoreMatchers.containsString; +import static org.junit.Assert.assertThat; + +import java.io.IOException; +import java.io.InputStream; + import org.apache.http.HttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.CloseableHttpClient; @@ -9,21 +13,17 @@ import org.apache.http.impl.client.HttpClients; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.SpringApplicationConfiguration; -import org.springframework.boot.test.WebIntegrationTest; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.http.ResponseEntity; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.web.client.RestTemplate; -import java.io.IOException; -import java.io.InputStream; - -import static org.hamcrest.CoreMatchers.containsString; -import static org.junit.Assert.assertThat; +import com.baeldung.protobuf.BaeldungTraining.Course; +import com.googlecode.protobuf.format.JsonFormat; @RunWith(SpringJUnit4ClassRunner.class) -@SpringApplicationConfiguration(classes = Application.class) -@WebIntegrationTest +@SpringBootTest(classes = Application.class, webEnvironment = WebEnvironment.DEFINED_PORT) public class ApplicationIntegrationTest { private static final String COURSE1_URL = "http://localhost:8080/courses/1"; diff --git a/spring-quartz/pom.xml b/spring-quartz/pom.xml index eb00911543..78beab6e38 100644 --- a/spring-quartz/pom.xml +++ b/spring-quartz/pom.xml @@ -11,10 +11,10 @@ Demo project for Scheduling in Spring with Quartz - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-reactor/pom.xml b/spring-reactor/pom.xml index 759e9f2b58..1a19d9c6d9 100644 --- a/spring-reactor/pom.xml +++ b/spring-reactor/pom.xml @@ -9,10 +9,10 @@ http://maven.apache.org - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-remoting/pom.xml b/spring-remoting/pom.xml index b40f77eb50..aac8357c10 100644 --- a/spring-remoting/pom.xml +++ b/spring-remoting/pom.xml @@ -11,10 +11,10 @@ Parent for all projects related to Spring Remoting. - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-rest-docs/pom.xml b/spring-rest-docs/pom.xml index 4647577629..ffd3cb89b6 100644 --- a/spring-rest-docs/pom.xml +++ b/spring-rest-docs/pom.xml @@ -12,10 +12,10 @@ Demo project for Spring Boot - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-rest-docs/src/test/java/com/example/ApiDocumentationIntegrationTest.java b/spring-rest-docs/src/test/java/com/example/ApiDocumentationIntegrationTest.java index f2ac9d0f82..1c3aef4845 100644 --- a/spring-rest-docs/src/test/java/com/example/ApiDocumentationIntegrationTest.java +++ b/spring-rest-docs/src/test/java/com/example/ApiDocumentationIntegrationTest.java @@ -1,26 +1,5 @@ package com.example; -import com.fasterxml.jackson.databind.ObjectMapper; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.SpringApplicationConfiguration; -import org.springframework.hateoas.MediaTypes; -import org.springframework.restdocs.RestDocumentation; -import org.springframework.restdocs.constraints.ConstraintDescriptions; -import org.springframework.restdocs.mockmvc.RestDocumentationResultHandler; -import org.springframework.restdocs.payload.FieldDescriptor; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; -import org.springframework.test.context.web.WebAppConfiguration; -import org.springframework.test.web.servlet.MockMvc; -import org.springframework.test.web.servlet.setup.MockMvcBuilders; -import org.springframework.web.context.WebApplicationContext; - -import java.util.HashMap; -import java.util.Map; - import static java.util.Collections.singletonList; import static org.springframework.restdocs.headers.HeaderDocumentation.headerWithName; import static org.springframework.restdocs.headers.HeaderDocumentation.responseHeaders; @@ -43,8 +22,30 @@ import static org.springframework.restdocs.snippet.Attributes.key; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; import static org.springframework.util.StringUtils.collectionToDelimitedString; +import java.util.HashMap; +import java.util.Map; + +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.hateoas.MediaTypes; +import org.springframework.restdocs.RestDocumentation; +import org.springframework.restdocs.constraints.ConstraintDescriptions; +import org.springframework.restdocs.mockmvc.RestDocumentationResultHandler; +import org.springframework.restdocs.payload.FieldDescriptor; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.web.WebAppConfiguration; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; +import org.springframework.web.context.WebApplicationContext; + +import com.fasterxml.jackson.databind.ObjectMapper; + @RunWith(SpringJUnit4ClassRunner.class) -@SpringApplicationConfiguration(classes = SpringRestDocsApplication.class) +@SpringBootTest(classes = SpringRestDocsApplication.class) @WebAppConfiguration public class ApiDocumentationIntegrationTest { diff --git a/spring-rest-docs/src/test/java/com/example/GettingStartedDocumentationIntegrationTest.java b/spring-rest-docs/src/test/java/com/example/GettingStartedDocumentationIntegrationTest.java index c02c0c27f8..3300fc519c 100644 --- a/spring-rest-docs/src/test/java/com/example/GettingStartedDocumentationIntegrationTest.java +++ b/spring-rest-docs/src/test/java/com/example/GettingStartedDocumentationIntegrationTest.java @@ -1,20 +1,5 @@ package com.example; -import com.fasterxml.jackson.databind.ObjectMapper; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.SpringApplicationConfiguration; -import org.springframework.hateoas.MediaTypes; -import org.springframework.restdocs.RestDocumentation; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; -import org.springframework.test.context.web.WebAppConfiguration; -import org.springframework.test.web.servlet.MockMvc; -import org.springframework.test.web.servlet.setup.MockMvcBuilders; -import org.springframework.web.context.WebApplicationContext; - import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.notNullValue; import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document; @@ -26,8 +11,24 @@ import static org.springframework.restdocs.operation.preprocess.Preprocessors.pr import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.hateoas.MediaTypes; +import org.springframework.restdocs.RestDocumentation; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.web.WebAppConfiguration; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; +import org.springframework.web.context.WebApplicationContext; + +import com.fasterxml.jackson.databind.ObjectMapper; + @RunWith(SpringJUnit4ClassRunner.class) -@SpringApplicationConfiguration(classes = SpringRestDocsApplication.class) +@SpringBootTest(classes = SpringRestDocsApplication.class) @WebAppConfiguration public class GettingStartedDocumentationIntegrationTest { diff --git a/spring-rest-full/pom.xml b/spring-rest-full/pom.xml index c596e79b31..c00387e7de 100644 --- a/spring-rest-full/pom.xml +++ b/spring-rest-full/pom.xml @@ -9,10 +9,10 @@ war - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-rest-query-language/pom.xml b/spring-rest-query-language/pom.xml index bf3eb8cb78..6826634bc9 100644 --- a/spring-rest-query-language/pom.xml +++ b/spring-rest-query-language/pom.xml @@ -9,10 +9,10 @@ war - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-rest/pom.xml b/spring-rest/pom.xml index 06747ffd41..6da891b054 100644 --- a/spring-rest/pom.xml +++ b/spring-rest/pom.xml @@ -8,10 +8,10 @@ war - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-security-cache-control/pom.xml b/spring-security-cache-control/pom.xml index e525cd4e8e..4ccb83c29b 100644 --- a/spring-security-cache-control/pom.xml +++ b/spring-security-cache-control/pom.xml @@ -8,10 +8,10 @@ 1.0-SNAPSHOT - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-security-client/spring-security-jsp-authentication/pom.xml b/spring-security-client/spring-security-jsp-authentication/pom.xml index 6f4095c2d5..b29ce90aa4 100644 --- a/spring-security-client/spring-security-jsp-authentication/pom.xml +++ b/spring-security-client/spring-security-jsp-authentication/pom.xml @@ -12,10 +12,10 @@ Spring Security JSP Authentication tag sample - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-security-client/spring-security-jsp-authorize/pom.xml b/spring-security-client/spring-security-jsp-authorize/pom.xml index 2e1a57a468..6fd89933bb 100644 --- a/spring-security-client/spring-security-jsp-authorize/pom.xml +++ b/spring-security-client/spring-security-jsp-authorize/pom.xml @@ -12,10 +12,10 @@ Spring Security JSP Authorize tag sample - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-security-client/spring-security-jsp-config/pom.xml b/spring-security-client/spring-security-jsp-config/pom.xml index 4f92e24563..f533410acc 100644 --- a/spring-security-client/spring-security-jsp-config/pom.xml +++ b/spring-security-client/spring-security-jsp-config/pom.xml @@ -12,10 +12,10 @@ Spring Security JSP configuration - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-security-client/spring-security-mvc/pom.xml b/spring-security-client/spring-security-mvc/pom.xml index a642e8719d..c67bc336f6 100644 --- a/spring-security-client/spring-security-mvc/pom.xml +++ b/spring-security-client/spring-security-mvc/pom.xml @@ -12,10 +12,10 @@ Spring Security MVC - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-security-client/spring-security-mvc/src/main/java/org/baeldung/config/Application.java b/spring-security-client/spring-security-mvc/src/main/java/org/baeldung/config/Application.java index 4057a85f13..34c43fbe5a 100644 --- a/spring-security-client/spring-security-mvc/src/main/java/org/baeldung/config/Application.java +++ b/spring-security-client/spring-security-mvc/src/main/java/org/baeldung/config/Application.java @@ -3,7 +3,7 @@ package org.baeldung.config; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; -import org.springframework.boot.context.web.SpringBootServletInitializer; +import org.springframework.boot.web.support.SpringBootServletInitializer; @SpringBootApplication public class Application extends SpringBootServletInitializer { diff --git a/spring-security-client/spring-security-thymeleaf-authentication/pom.xml b/spring-security-client/spring-security-thymeleaf-authentication/pom.xml index 7573d430d3..941cbb8a76 100644 --- a/spring-security-client/spring-security-thymeleaf-authentication/pom.xml +++ b/spring-security-client/spring-security-thymeleaf-authentication/pom.xml @@ -12,10 +12,10 @@ Spring Security thymeleaf authentication tag sample - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-security-client/spring-security-thymeleaf-authorize/pom.xml b/spring-security-client/spring-security-thymeleaf-authorize/pom.xml index 20d141e70c..c70a099e68 100644 --- a/spring-security-client/spring-security-thymeleaf-authorize/pom.xml +++ b/spring-security-client/spring-security-thymeleaf-authorize/pom.xml @@ -12,10 +12,10 @@ Spring Security thymeleaf authorize tag sample - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-security-client/spring-security-thymeleaf-config/pom.xml b/spring-security-client/spring-security-thymeleaf-config/pom.xml index ad856c7e20..9ef2444d6c 100644 --- a/spring-security-client/spring-security-thymeleaf-config/pom.xml +++ b/spring-security-client/spring-security-thymeleaf-config/pom.xml @@ -12,10 +12,10 @@ Spring Security thymeleaf configuration sample project - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../../parent-boot-4 + ../../parent-boot-5 diff --git a/spring-security-core/pom.xml b/spring-security-core/pom.xml index 7deea5deb0..db8837df46 100644 --- a/spring-security-core/pom.xml +++ b/spring-security-core/pom.xml @@ -9,10 +9,10 @@ war - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-security-mvc-ldap/pom.xml b/spring-security-mvc-ldap/pom.xml index e6452ea70b..4b0b9525e4 100644 --- a/spring-security-mvc-ldap/pom.xml +++ b/spring-security-mvc-ldap/pom.xml @@ -9,10 +9,10 @@ war - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-security-rest-custom/pom.xml b/spring-security-rest-custom/pom.xml index 77a58a56d8..746ddb6615 100644 --- a/spring-security-rest-custom/pom.xml +++ b/spring-security-rest-custom/pom.xml @@ -9,10 +9,10 @@ war - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-security-stormpath/pom.xml b/spring-security-stormpath/pom.xml index 982c677bf5..060f8a553d 100644 --- a/spring-security-stormpath/pom.xml +++ b/spring-security-stormpath/pom.xml @@ -24,10 +24,10 @@ - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-security-x509/pom.xml b/spring-security-x509/pom.xml index 77830ebe5a..6225f73ebc 100644 --- a/spring-security-x509/pom.xml +++ b/spring-security-x509/pom.xml @@ -15,10 +15,10 @@ - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-session/pom.xml b/spring-session/pom.xml index bb644c8b2e..b62d814665 100644 --- a/spring-session/pom.xml +++ b/spring-session/pom.xml @@ -8,10 +8,10 @@ jar - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-sleuth/pom.xml b/spring-sleuth/pom.xml index dda5e09a26..aac0084720 100644 --- a/spring-sleuth/pom.xml +++ b/spring-sleuth/pom.xml @@ -9,10 +9,10 @@ jar - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-social-login/pom.xml b/spring-social-login/pom.xml index 0ca04ac298..50e2abfbfc 100644 --- a/spring-social-login/pom.xml +++ b/spring-social-login/pom.xml @@ -7,10 +7,10 @@ war - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-userservice/derby.log b/spring-userservice/derby.log new file mode 100644 index 0000000000..040321765f --- /dev/null +++ b/spring-userservice/derby.log @@ -0,0 +1,13 @@ +---------------------------------------------------------------- +Thu Jan 04 22:08:53 EET 2018: +Booting Derby version The Apache Software Foundation - Apache Derby - 10.13.1.1 - (1765088): instance a816c00e-0160-c2ca-649a-000003c87738 +on database directory memory:/Users/ESSAM/Work/tutorials/spring-userservice/spring_custom_user_service with class loader sun.misc.Launcher$AppClassLoader@6d03e736 +Loaded from file:/Users/ESSAM/.m2/repository/org/apache/derby/derby/10.13.1.1/derby-10.13.1.1.jar +java.vendor=Oracle Corporation +java.runtime.version=1.8.0_05-b13 +user.dir=/Users/ESSAM/Work/tutorials/spring-userservice +os.name=Mac OS X +os.arch=x86_64 +os.version=10.11.6 +derby.system.home=null +Database Class Loader started - derby.database.classpath='' diff --git a/spring-zuul/pom.xml b/spring-zuul/pom.xml index e1a551bc84..ca9cbc765d 100644 --- a/spring-zuul/pom.xml +++ b/spring-zuul/pom.xml @@ -9,10 +9,10 @@ pom - parent-boot-4 + parent-boot-5 com.baeldung 0.0.1-SNAPSHOT - ../parent-boot-4 + ../parent-boot-5 diff --git a/spring-zuul/spring-zuul-foos-resource/src/main/java/org/baeldung/config/ResourceServerApplication.java b/spring-zuul/spring-zuul-foos-resource/src/main/java/org/baeldung/config/ResourceServerApplication.java index 1e35eff551..9f1d2e162b 100644 --- a/spring-zuul/spring-zuul-foos-resource/src/main/java/org/baeldung/config/ResourceServerApplication.java +++ b/spring-zuul/spring-zuul-foos-resource/src/main/java/org/baeldung/config/ResourceServerApplication.java @@ -2,7 +2,7 @@ package org.baeldung.config; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.boot.context.web.SpringBootServletInitializer; +import org.springframework.boot.web.support.SpringBootServletInitializer; @SpringBootApplication public class ResourceServerApplication extends SpringBootServletInitializer { From f79c7b592fcff2b85cdbb8a869f55cb00127d87c Mon Sep 17 00:00:00 2001 From: DOHA Date: Fri, 5 Jan 2018 20:46:57 +0200 Subject: [PATCH 054/391] minor cleanup --- spring-userservice/derby.log | 13 ------------- 1 file changed, 13 deletions(-) delete mode 100644 spring-userservice/derby.log diff --git a/spring-userservice/derby.log b/spring-userservice/derby.log deleted file mode 100644 index 040321765f..0000000000 --- a/spring-userservice/derby.log +++ /dev/null @@ -1,13 +0,0 @@ ----------------------------------------------------------------- -Thu Jan 04 22:08:53 EET 2018: -Booting Derby version The Apache Software Foundation - Apache Derby - 10.13.1.1 - (1765088): instance a816c00e-0160-c2ca-649a-000003c87738 -on database directory memory:/Users/ESSAM/Work/tutorials/spring-userservice/spring_custom_user_service with class loader sun.misc.Launcher$AppClassLoader@6d03e736 -Loaded from file:/Users/ESSAM/.m2/repository/org/apache/derby/derby/10.13.1.1/derby-10.13.1.1.jar -java.vendor=Oracle Corporation -java.runtime.version=1.8.0_05-b13 -user.dir=/Users/ESSAM/Work/tutorials/spring-userservice -os.name=Mac OS X -os.arch=x86_64 -os.version=10.11.6 -derby.system.home=null -Database Class Loader started - derby.database.classpath='' From a45716fe488f3950086c933237bdb4f9776462da Mon Sep 17 00:00:00 2001 From: DOHA Date: Mon, 8 Jan 2018 23:14:58 +0200 Subject: [PATCH 055/391] fix blocking tests --- .../concurrent/stopping/StopThreadTest.java | 18 ++++--- ...estOne.java => EthControllerLiveTest.java} | 19 ++++--- .../baeldung/guava/GuavaCacheUnitTest.java | 7 +-- .../micrometer/MicrometerAtlasTest.java | 45 ++++++++++------ .../metrics/servo/MetricTypeTest.java | 52 ++++++++++--------- ... => CabBookingServiceIntegrationTest.java} | 4 +- 6 files changed, 85 insertions(+), 60 deletions(-) rename ethereumj/src/test/java/com/baeldung/ethereumj/controllers/{EthControllerTestOne.java => EthControllerLiveTest.java} (90%) rename spring-remoting/remoting-hessian-burlap/client/src/test/java/com/baeldung/client/{CabBookingServiceTest.java => CabBookingServiceIntegrationTest.java} (97%) diff --git a/core-java-concurrency/src/test/java/com/baeldung/concurrent/stopping/StopThreadTest.java b/core-java-concurrency/src/test/java/com/baeldung/concurrent/stopping/StopThreadTest.java index 70854f013f..af54d6932e 100644 --- a/core-java-concurrency/src/test/java/com/baeldung/concurrent/stopping/StopThreadTest.java +++ b/core-java-concurrency/src/test/java/com/baeldung/concurrent/stopping/StopThreadTest.java @@ -1,20 +1,21 @@ package com.baeldung.concurrent.stopping; -import com.jayway.awaitility.Awaitility; -import org.junit.Test; - -import java.util.concurrent.TimeUnit; - import static com.jayway.awaitility.Awaitility.await; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; +import java.util.concurrent.TimeUnit; + +import org.junit.Test; + +import com.jayway.awaitility.Awaitility; + public class StopThreadTest { @Test public void whenStoppedThreadIsStopped() throws InterruptedException { - int interval = 100; + int interval = 5; ControlSubThread controlSubThread = new ControlSubThread(interval); controlSubThread.start(); @@ -33,13 +34,13 @@ public class StopThreadTest { @Test public void whenInterruptedThreadIsStopped() throws InterruptedException { - int interval = 5000; + int interval = 50; ControlSubThread controlSubThread = new ControlSubThread(interval); controlSubThread.start(); // Give things a chance to get set up - Thread.sleep(100); + Thread.sleep(interval); assertTrue(controlSubThread.isRunning()); assertFalse(controlSubThread.isStopped()); @@ -48,6 +49,7 @@ public class StopThreadTest { // Wait less than the time we would normally sleep, and make sure we exited. Awaitility.await() + .pollDelay(2, TimeUnit.MILLISECONDS) .atMost(interval/ 10, TimeUnit.MILLISECONDS) .until(controlSubThread::isStopped); } diff --git a/ethereumj/src/test/java/com/baeldung/ethereumj/controllers/EthControllerTestOne.java b/ethereumj/src/test/java/com/baeldung/ethereumj/controllers/EthControllerLiveTest.java similarity index 90% rename from ethereumj/src/test/java/com/baeldung/ethereumj/controllers/EthControllerTestOne.java rename to ethereumj/src/test/java/com/baeldung/ethereumj/controllers/EthControllerLiveTest.java index 9298c34ec2..f62d229261 100644 --- a/ethereumj/src/test/java/com/baeldung/ethereumj/controllers/EthControllerTestOne.java +++ b/ethereumj/src/test/java/com/baeldung/ethereumj/controllers/EthControllerLiveTest.java @@ -1,25 +1,30 @@ package com.baeldung.ethereumj.controllers; -import com.baeldung.ethereumj.ApplicationMain; -import com.baeldung.ethereumj.Constants; -import com.baeldung.ethereumj.transfer.EthResponse; +import static junit.framework.TestCase.assertTrue; +import static org.junit.Assert.assertNotNull; + import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.context.embedded.LocalServerPort; import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.http.*; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpMethod; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; import org.springframework.test.context.TestPropertySource; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.web.client.RestTemplate; -import static junit.framework.TestCase.assertTrue; -import static org.junit.Assert.assertNotNull; +import com.baeldung.ethereumj.ApplicationMain; +import com.baeldung.ethereumj.Constants; +import com.baeldung.ethereumj.transfer.EthResponse; @RunWith(SpringRunner.class) @SpringBootTest(classes = ApplicationMain.class, webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT) @TestPropertySource(properties = "server.port=8080") -public class EthControllerTestOne { +public class EthControllerLiveTest { @LocalServerPort int port; diff --git a/guava/src/test/java/org/baeldung/guava/GuavaCacheUnitTest.java b/guava/src/test/java/org/baeldung/guava/GuavaCacheUnitTest.java index eb67d8af44..49ce6b1a09 100644 --- a/guava/src/test/java/org/baeldung/guava/GuavaCacheUnitTest.java +++ b/guava/src/test/java/org/baeldung/guava/GuavaCacheUnitTest.java @@ -89,7 +89,7 @@ public class GuavaCacheUnitTest { cache.getUnchecked("hello"); assertEquals(1, cache.size()); cache.getUnchecked("hello"); - Thread.sleep(300); + Thread.sleep(3); cache.getUnchecked("test"); assertEquals(1, cache.size()); assertNull(cache.getIfPresent("hello")); @@ -106,7 +106,7 @@ public class GuavaCacheUnitTest { final LoadingCache cache = CacheBuilder.newBuilder().expireAfterWrite(2, TimeUnit.MILLISECONDS).build(loader); cache.getUnchecked("hello"); assertEquals(1, cache.size()); - Thread.sleep(300); + Thread.sleep(3); cache.getUnchecked("test"); assertEquals(1, cache.size()); assertNull(cache.getIfPresent("hello")); @@ -203,8 +203,9 @@ public class GuavaCacheUnitTest { private String getSuffix(final String str) { final int lastIndex = str.lastIndexOf('.'); - if (lastIndex == -1) + if (lastIndex == -1) { return null; + } return str.substring(lastIndex + 1); } diff --git a/metrics/src/test/java/com/baeldung/metrics/micrometer/MicrometerAtlasTest.java b/metrics/src/test/java/com/baeldung/metrics/micrometer/MicrometerAtlasTest.java index 826e06d598..b76dc40ba0 100644 --- a/metrics/src/test/java/com/baeldung/metrics/micrometer/MicrometerAtlasTest.java +++ b/metrics/src/test/java/com/baeldung/metrics/micrometer/MicrometerAtlasTest.java @@ -1,27 +1,40 @@ package com.baeldung.metrics.micrometer; -import com.netflix.spectator.atlas.AtlasConfig; +import static org.hamcrest.CoreMatchers.allOf; +import static org.hamcrest.CoreMatchers.equalTo; +import static org.hamcrest.collection.IsMapContaining.hasEntry; +import static org.junit.Assert.assertThat; +import static org.junit.Assert.assertTrue; import io.micrometer.atlas.AtlasMeterRegistry; -import io.micrometer.core.instrument.*; +import io.micrometer.core.instrument.Clock; +import io.micrometer.core.instrument.Counter; +import io.micrometer.core.instrument.DistributionSummary; +import io.micrometer.core.instrument.Gauge; +import io.micrometer.core.instrument.LongTaskTimer; +import io.micrometer.core.instrument.Measurement; +import io.micrometer.core.instrument.Meter.Type; +import io.micrometer.core.instrument.MeterRegistry; +import io.micrometer.core.instrument.Metrics; +import io.micrometer.core.instrument.Tag; import io.micrometer.core.instrument.Timer; import io.micrometer.core.instrument.composite.CompositeMeterRegistry; import io.micrometer.core.instrument.simple.SimpleMeterRegistry; import io.micrometer.core.instrument.stats.hist.Histogram; import io.micrometer.core.instrument.stats.quantile.WindowSketchQuantiles; -import org.junit.Before; -import org.junit.Test; import java.time.Duration; -import java.util.*; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Optional; import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; -import static io.micrometer.core.instrument.Meter.Type; -import static org.hamcrest.CoreMatchers.*; -import static org.hamcrest.collection.IsMapContaining.hasEntry; -import static org.hamcrest.core.IsCollectionContaining.hasItems; -import static org.junit.Assert.assertThat; -import static org.junit.Assert.assertTrue; +import org.junit.Before; +import org.junit.Test; + +import com.netflix.spectator.atlas.AtlasConfig; /** * @author aiet @@ -135,15 +148,15 @@ public class MicrometerAtlasTest { Timer timer = registry.timer("app.event"); timer.record(() -> { try { - TimeUnit.MILLISECONDS.sleep(1500); + TimeUnit.MILLISECONDS.sleep(15); } catch (InterruptedException ignored) { } }); - timer.record(3000, TimeUnit.MILLISECONDS); + timer.record(30, TimeUnit.MILLISECONDS); assertTrue(2 == timer.count()); - assertTrue(4510 > timer.totalTime(TimeUnit.MILLISECONDS) && 4500 <= timer.totalTime(TimeUnit.MILLISECONDS)); + assertTrue(50 > timer.totalTime(TimeUnit.MILLISECONDS) && 45 <= timer.totalTime(TimeUnit.MILLISECONDS)); } @Test @@ -155,12 +168,12 @@ public class MicrometerAtlasTest { long currentTaskId = longTaskTimer.start(); try { - TimeUnit.SECONDS.sleep(2); + TimeUnit.MILLISECONDS.sleep(2); } catch (InterruptedException ignored) { } long timeElapsed = longTaskTimer.stop(currentTaskId); - assertTrue(timeElapsed / (int) 1e9 == 2); + assertTrue(timeElapsed / (int) 1e6 == 2); } @Test diff --git a/metrics/src/test/java/com/baeldung/metrics/servo/MetricTypeTest.java b/metrics/src/test/java/com/baeldung/metrics/servo/MetricTypeTest.java index 99009f8d84..237092b1c3 100644 --- a/metrics/src/test/java/com/baeldung/metrics/servo/MetricTypeTest.java +++ b/metrics/src/test/java/com/baeldung/metrics/servo/MetricTypeTest.java @@ -1,5 +1,19 @@ package com.baeldung.metrics.servo; +import static java.util.concurrent.TimeUnit.MILLISECONDS; +import static java.util.concurrent.TimeUnit.SECONDS; +import static java.util.stream.Collectors.toMap; +import static org.hamcrest.Matchers.allOf; +import static org.hamcrest.Matchers.containsInAnyOrder; +import static org.hamcrest.Matchers.hasEntry; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertThat; + +import java.util.Map; + +import org.junit.Ignore; +import org.junit.Test; + import com.netflix.servo.monitor.BasicCounter; import com.netflix.servo.monitor.BasicGauge; import com.netflix.servo.monitor.BasicInformational; @@ -17,18 +31,6 @@ import com.netflix.servo.monitor.StatsTimer; import com.netflix.servo.monitor.StepCounter; import com.netflix.servo.monitor.Stopwatch; import com.netflix.servo.stats.StatsConfig; -import org.junit.Ignore; -import org.junit.Test; - -import java.util.Map; - -import static java.util.concurrent.TimeUnit.SECONDS; -import static java.util.stream.Collectors.toMap; -import static org.hamcrest.Matchers.allOf; -import static org.hamcrest.Matchers.containsInAnyOrder; -import static org.hamcrest.Matchers.hasEntry; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertThat; public class MetricTypeTest { @@ -104,17 +106,18 @@ public class MetricTypeTest { public void givenTimer_whenExecuteTask_thenTimerUpdated() throws Exception { BasicTimer timer = new BasicTimer(MonitorConfig .builder("test") - .build(), SECONDS); + .build(), MILLISECONDS); Stopwatch stopwatch = timer.start(); - SECONDS.sleep(1); - timer.record(2, SECONDS); + MILLISECONDS.sleep(1); + timer.record(2, MILLISECONDS); stopwatch.stop(); - assertEquals("timer should count 1 second", 1, timer + assertEquals("timer should count 1 millisecond", 1, timer .getValue() .intValue()); - assertEquals("timer should count 3 seconds in total", 3.0, timer.getTotalTime(), 0.01); + assertEquals("timer should count 3 millisecond in total", 3, timer.getTotalTime() + .intValue()); assertEquals("timer should record 2 updates", 2, timer .getCount() .intValue()); @@ -158,6 +161,7 @@ public class MetricTypeTest { } @Test + //== public void givenStatsTimer_whenExecuteTask_thenStatsCalculated() throws Exception { System.setProperty("netflix.servo", "1000"); StatsTimer timer = new StatsTimer(MonitorConfig @@ -171,20 +175,20 @@ public class MetricTypeTest { .withPublishMean(true) .withPublishStdDev(true) .withPublishVariance(true) - .build(), SECONDS); + .build(), MILLISECONDS); Stopwatch stopwatch = timer.start(); - SECONDS.sleep(1); - timer.record(3, SECONDS); + MILLISECONDS.sleep(1); + timer.record(3, MILLISECONDS); stopwatch.stop(); stopwatch = timer.start(); - timer.record(6, SECONDS); - SECONDS.sleep(2); + timer.record(6, MILLISECONDS); + MILLISECONDS.sleep(2); stopwatch.stop(); - assertEquals("timer should count 12 seconds in total", 12, timer.getTotalTime()); - assertEquals("timer should count 12 seconds in total", 12, timer.getTotalMeasurement()); + assertEquals("timer should count 12 milliseconds in total", 12, timer.getTotalTime()); + assertEquals("timer should count 12 milliseconds in total", 12, timer.getTotalMeasurement()); assertEquals("timer should record 4 updates", 4, timer.getCount()); assertEquals("stats timer value time-cost/update should be 2", 3, timer .getValue() diff --git a/spring-remoting/remoting-hessian-burlap/client/src/test/java/com/baeldung/client/CabBookingServiceTest.java b/spring-remoting/remoting-hessian-burlap/client/src/test/java/com/baeldung/client/CabBookingServiceIntegrationTest.java similarity index 97% rename from spring-remoting/remoting-hessian-burlap/client/src/test/java/com/baeldung/client/CabBookingServiceTest.java rename to spring-remoting/remoting-hessian-burlap/client/src/test/java/com/baeldung/client/CabBookingServiceIntegrationTest.java index 373701f714..a1fed9637f 100644 --- a/spring-remoting/remoting-hessian-burlap/client/src/test/java/com/baeldung/client/CabBookingServiceTest.java +++ b/spring-remoting/remoting-hessian-burlap/client/src/test/java/com/baeldung/client/CabBookingServiceIntegrationTest.java @@ -18,9 +18,9 @@ import static java.lang.Thread.sleep; @SpringBootTest(classes = {BurlapClient.class, HessianClient.class}) @RunWith(SpringRunner.class) -public class CabBookingServiceTest { +public class CabBookingServiceIntegrationTest { - static Logger log = LoggerFactory.getLogger(CabBookingServiceTest.class); + static Logger log = LoggerFactory.getLogger(CabBookingServiceIntegrationTest.class); @Autowired @Qualifier("burlapInvoker") CabBookingService burlapClient; @Autowired @Qualifier("hessianInvoker") CabBookingService hessianClient; static Thread serverThread; From cafee5736f33378a842dff350b68ebaf0316f94b Mon Sep 17 00:00:00 2001 From: Dominik Date: Mon, 8 Jan 2018 00:06:53 +0100 Subject: [PATCH 056/391] BAEL-1409: Rxjava2 Flowable Tests --- rxjava/pom.xml | 7 ++ .../com/baeldung/rxjava/FlowableTest.java | 94 +++++++++++++++++++ 2 files changed, 101 insertions(+) create mode 100644 rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java diff --git a/rxjava/pom.xml b/rxjava/pom.xml index 0f950914ff..a6c5e9d2fb 100644 --- a/rxjava/pom.xml +++ b/rxjava/pom.xml @@ -31,6 +31,13 @@ 1.0.0 + + junit + junit + 4.12 + test + + com.jayway.awaitility awaitility diff --git a/rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java b/rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java new file mode 100644 index 0000000000..71d4f87b35 --- /dev/null +++ b/rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java @@ -0,0 +1,94 @@ +package com.baeldung.rxjava; + +import io.reactivex.BackpressureStrategy; +import io.reactivex.Flowable; +import io.reactivex.FlowableOnSubscribe; +import io.reactivex.Observable; +import io.reactivex.exceptions.MissingBackpressureException; +import io.reactivex.exceptions.OnErrorNotImplementedException; +import io.reactivex.schedulers.Schedulers; +import io.reactivex.subscribers.TestSubscriber; +import org.junit.Test; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; +import java.util.stream.IntStream; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +public class FlowableTest { + + @Test public void whenFlowableIsCreated_thenItIsProperlyInitialized() { + Flowable integerFlowable = Flowable.just(1, 2, 3, 4); + assertNotNull(integerFlowable); + } + + @Test public void whenFlowableIsCreatedFromObservable_thenItIsProperlyInitialized() throws InterruptedException { + Observable integerObservable = Observable.just(1, 2, 3); + Flowable integerFlowable = integerObservable.toFlowable(BackpressureStrategy.BUFFER); + assertNotNull(integerFlowable); + + } + + @Test public void whenFlowableIsCreatedFromFlowableOnSubscribe_thenItIsProperlyInitialized() throws InterruptedException { + FlowableOnSubscribe flowableOnSubscribe = flowableEmitter -> { + flowableEmitter.onNext(1); + }; + Flowable integerFlowable = Flowable.create(flowableOnSubscribe, BackpressureStrategy.BUFFER); + assertNotNull(integerFlowable); + } + + @Test public void givenFlowableWithBufferStrategy_whenSourceEmitsFasterThanConsumerConsumes_thenAllValuesAreBufferedAndReceived() throws InterruptedException { + List testList = IntStream.range(0, 100000).boxed().collect(Collectors.toList()); + List listToFill = new ArrayList(); + + Observable observable = Observable.fromIterable(testList); + observable.toFlowable(BackpressureStrategy.BUFFER).observeOn(Schedulers.computation()).subscribe(listToFill::add); + Thread.sleep(5000); + assertEquals(testList, listToFill); + } + + @Test public void givenFlowableWithDropStrategy_whenSourceEmitsFasterThanConsumerConsumes_thenNotAllValuesAreReceived() throws InterruptedException { + List testList = IntStream.range(0, 100000).boxed().collect(Collectors.toList()); + List listToFill = new ArrayList(); + + Observable observable = Observable.fromIterable(testList); + observable.toFlowable(BackpressureStrategy.DROP).observeOn(Schedulers.computation()).subscribe(listToFill::add); + Thread.sleep(5000); + assertThat(listToFill.size() < testList.size()); + assertThat(!listToFill.contains(100000)); + } + + @Test + public void givenFlowableWithMissingStrategy_whenSourceEmitsFasterThanConsumerConsumes_thenExceptionIsThrown() throws InterruptedException { + Observable observable = Observable.range(1, 100000); + TestSubscriber subscriber =observable.toFlowable(BackpressureStrategy.MISSING).observeOn(Schedulers.computation()).test(); + subscriber.awaitTerminalEvent(); + subscriber.assertError(MissingBackpressureException.class); + } + + @Test + public void givenFlowableWithErrorStrategy_whenSourceEmitsFasterThanConsumerConsumes_thenExceptionIsThrown() throws InterruptedException { + Observable observable = Observable.range(1, 100000); + TestSubscriber subscriber =observable.toFlowable(BackpressureStrategy.ERROR).observeOn(Schedulers.computation()).test(); + + subscriber.awaitTerminalEvent(); + subscriber.assertError(MissingBackpressureException.class); + } + + @Test + public void givenFlowableWithLatestStrategy_whenSourceEmitsFasterThanConsumerConsumes_thenExceptionIsThrown() throws InterruptedException { + List testList = IntStream.range(0, 100000).boxed().collect(Collectors.toList()); + List listToFill = new ArrayList(); + + Observable observable = Observable.fromIterable(testList); + observable.toFlowable(BackpressureStrategy.LATEST).observeOn(Schedulers.computation()).subscribe(listToFill::add); + Thread.sleep(6000); + assertThat(listToFill.size() < testList.size()); + assertThat(listToFill.contains(100000)); + } + +} \ No newline at end of file From f9dc53e62d44f36581ff637d61793fac7995fb1d Mon Sep 17 00:00:00 2001 From: DOHA Date: Thu, 11 Jan 2018 21:43:14 +0200 Subject: [PATCH 057/391] add core-java-io module --- core-java-io/.gitignore | 26 + core-java-io/README.md | 28 + core-java-io/pom.xml | 505 + .../DirectoryMonitoringExample.java | 0 .../filesystem/jndi/LookupFSJNDI.java | 42 + .../java/nio/selector/EchoClient.java | 0 .../java/nio/selector/EchoServer.java | 0 .../com/baeldung/java/nio/selector/README.md | 0 .../java/nio2/visitor/FileSearchExample.java | 0 .../java/nio2/visitor/FileVisitorImpl.java | 0 .../nio2/watcher/DirectoryWatcherExample.java | 0 .../java/com/baeldung/stream/FileCopy.java | 0 .../com/baeldung/stream/StreamIndices.java | 0 .../java/com/baeldung/unzip/UnzipFile.java | 0 .../java/com/baeldung/util/StreamUtils.java | 0 .../java/com/baeldung/zip/ZipDirectory.java | 0 .../main/java/com/baeldung/zip/ZipFile.java | 0 .../com/baeldung/zip/ZipMultipleFiles.java | 0 .../src/main/resources/ESAPI.properties | 453 + .../src/main/resources/META-INF/BenchmarkList | 0 .../main/resources/META-INF/persistence.xml | 20 + .../services/com.sun.source.util.Plugin | 1 + .../src/main/resources/countries.properties | 3 + core-java-io/src/main/resources/data.csv | 3 + .../src/main/resources/datasource.properties | 6 + .../src/main/resources/dirCompressed.zip | Bin core-java-io/src/main/resources/js/bind.js | 15 + .../src/main/resources/js/locations.js | 1 + .../src/main/resources/js/math_module.js | 19 + core-java-io/src/main/resources/js/no_such.js | 11 + core-java-io/src/main/resources/js/script.js | 1 + core-java-io/src/main/resources/js/trim.js | 2 + .../src/main/resources/js/typed_arrays.js | 9 + .../src/main/resources/log4j.properties | 6 + .../resources/log4jstructuraldp.properties | 9 + core-java-io/src/main/resources/logback.xml | 19 + .../src/main/resources/multiCompressed.zip | Bin .../src/main/resources/targetFile.tmp | 0 .../baeldung/copyfiles/FileCopierTest.java | 0 .../file/FileOperationsManualTest.java | 0 .../java/com/baeldung/file/FilesTest.java | 0 .../test/LookupFSJNDIIntegrationTest.java | 0 .../IterableStreamConversionUnitTest.java | 0 .../java/nio/selector/NioEchoLiveTest.java | 0 .../java/nio2/FileIntegrationTest.java | 0 .../baeldung/java/nio2/PathManualTest.java | 0 .../java/com/baeldung/java/nio2/README.md | 0 .../java/nio2/async/AsyncEchoClient.java | 0 .../nio2/async/AsyncEchoIntegrationTest.java | 0 .../java/nio2/async/AsyncEchoServer.java | 0 .../java/nio2/async/AsyncEchoServer2.java | 0 .../nio2/async/AsyncFileIntegrationTest.java | 0 .../BasicAttribsIntegrationTest.java | 0 .../baeldung/java8/JavaFileSizeUnitTest.java | 0 .../java8/JavaFolderSizeUnitTest.java | 0 .../MappedByteBufferUnitTest.java | 0 .../com/baeldung/stream/FileCopyTest.java | 0 .../baeldung/stream/StreamIndicesTest.java | 0 .../string/StringToCharStreamUnitTest.java | 0 .../FileNotFoundExceptionUnitTest.java | 0 .../java/io/JavaFilePathUnitTest.java | 0 .../baeldung/java/io/JavaFileUnitTest.java | 0 .../java/io/JavaInputStreamToXUnitTest.java | 0 .../java/io/JavaReadFromFileUnitTest.java | 0 .../java/io/JavaReaderToXUnitTest.java | 0 .../baeldung/java/io/JavaScannerUnitTest.java | 0 .../java/io/JavaWriteToFileUnitTest.java | 0 .../java/io/JavaXToByteArrayUnitTest.java | 0 .../java/io/JavaXToInputStreamUnitTest.java | 0 .../java/io/JavaXToReaderUnitTest.java | 0 .../java/io/JavaXToWriterUnitTest.java | 0 core-java-io/src/test/resources/.gitignore | 13 + .../test/resources/configuration.properties | 4 + core-java-io/src/test/resources/dictionary.in | 178691 +++++++++++++++ core-java-io/src/test/resources/test.find | 1 + .../resources/testFolder/sample_file_1.in | 1 + .../resources/testFolder/sample_file_2.in | 1 + core-java-io/src/test/resources/test_read.in | 1 + core-java-io/src/test/resources/test_read1.in | 1 + core-java-io/src/test/resources/test_read2.in | 1 + core-java-io/src/test/resources/test_read3.in | 1 + core-java-io/src/test/resources/test_read4.in | Bin 0 -> 7 bytes core-java-io/src/test/resources/test_read7.in | 1 + core-java-io/src/test/resources/test_read8.in | 2 + .../src/test/resources/test_read_d.in | 1 + .../src/test/resources/test_read_multiple.in | 2 + core-java/README.md | 16 - core-java/src/main/resources/fileTest.txt | 1 - pom.xml | 1 + 89 files changed, 179901 insertions(+), 17 deletions(-) create mode 100644 core-java-io/.gitignore create mode 100644 core-java-io/README.md create mode 100644 core-java-io/pom.xml rename {core-java => core-java-io}/src/main/java/com/baeldung/dirmonitoring/DirectoryMonitoringExample.java (100%) create mode 100644 core-java-io/src/main/java/com/baeldung/filesystem/jndi/LookupFSJNDI.java rename {core-java => core-java-io}/src/main/java/com/baeldung/java/nio/selector/EchoClient.java (100%) rename {core-java => core-java-io}/src/main/java/com/baeldung/java/nio/selector/EchoServer.java (100%) rename {core-java => core-java-io}/src/main/java/com/baeldung/java/nio/selector/README.md (100%) rename {core-java => core-java-io}/src/main/java/com/baeldung/java/nio2/visitor/FileSearchExample.java (100%) rename {core-java => core-java-io}/src/main/java/com/baeldung/java/nio2/visitor/FileVisitorImpl.java (100%) rename {core-java => core-java-io}/src/main/java/com/baeldung/java/nio2/watcher/DirectoryWatcherExample.java (100%) rename {core-java => core-java-io}/src/main/java/com/baeldung/stream/FileCopy.java (100%) rename {core-java => core-java-io}/src/main/java/com/baeldung/stream/StreamIndices.java (100%) rename {core-java => core-java-io}/src/main/java/com/baeldung/unzip/UnzipFile.java (100%) rename {core-java => core-java-io}/src/main/java/com/baeldung/util/StreamUtils.java (100%) rename {core-java => core-java-io}/src/main/java/com/baeldung/zip/ZipDirectory.java (100%) rename {core-java => core-java-io}/src/main/java/com/baeldung/zip/ZipFile.java (100%) rename {core-java => core-java-io}/src/main/java/com/baeldung/zip/ZipMultipleFiles.java (100%) create mode 100644 core-java-io/src/main/resources/ESAPI.properties create mode 100755 core-java-io/src/main/resources/META-INF/BenchmarkList create mode 100644 core-java-io/src/main/resources/META-INF/persistence.xml create mode 100644 core-java-io/src/main/resources/META-INF/services/com.sun.source.util.Plugin create mode 100644 core-java-io/src/main/resources/countries.properties create mode 100644 core-java-io/src/main/resources/data.csv create mode 100644 core-java-io/src/main/resources/datasource.properties rename {core-java => core-java-io}/src/main/resources/dirCompressed.zip (100%) create mode 100644 core-java-io/src/main/resources/js/bind.js create mode 100644 core-java-io/src/main/resources/js/locations.js create mode 100644 core-java-io/src/main/resources/js/math_module.js create mode 100644 core-java-io/src/main/resources/js/no_such.js create mode 100644 core-java-io/src/main/resources/js/script.js create mode 100644 core-java-io/src/main/resources/js/trim.js create mode 100644 core-java-io/src/main/resources/js/typed_arrays.js create mode 100644 core-java-io/src/main/resources/log4j.properties create mode 100644 core-java-io/src/main/resources/log4jstructuraldp.properties create mode 100644 core-java-io/src/main/resources/logback.xml rename {core-java => core-java-io}/src/main/resources/multiCompressed.zip (100%) rename core-java/src/main/resources/sample.txt => core-java-io/src/main/resources/targetFile.tmp (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/copyfiles/FileCopierTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/file/FileOperationsManualTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/file/FilesTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/filesystem/jndi/test/LookupFSJNDIIntegrationTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/java/conversion/IterableStreamConversionUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/java/nio/selector/NioEchoLiveTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/java/nio2/FileIntegrationTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/java/nio2/PathManualTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/java/nio2/README.md (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/java/nio2/async/AsyncEchoClient.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/java/nio2/async/AsyncEchoIntegrationTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/java/nio2/async/AsyncEchoServer.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/java/nio2/async/AsyncEchoServer2.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/java/nio2/async/AsyncFileIntegrationTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/java/nio2/attributes/BasicAttribsIntegrationTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/java8/JavaFileSizeUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/java8/JavaFolderSizeUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/mappedbytebuffer/MappedByteBufferUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/stream/FileCopyTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/stream/StreamIndicesTest.java (100%) rename {core-java => core-java-io}/src/test/java/com/baeldung/string/StringToCharStreamUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/org/baeldung/core/exceptions/FileNotFoundExceptionUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/org/baeldung/java/io/JavaFilePathUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/org/baeldung/java/io/JavaFileUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/org/baeldung/java/io/JavaInputStreamToXUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/org/baeldung/java/io/JavaReadFromFileUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/org/baeldung/java/io/JavaReaderToXUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/org/baeldung/java/io/JavaScannerUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/org/baeldung/java/io/JavaWriteToFileUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/org/baeldung/java/io/JavaXToByteArrayUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/org/baeldung/java/io/JavaXToInputStreamUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/org/baeldung/java/io/JavaXToReaderUnitTest.java (100%) rename {core-java => core-java-io}/src/test/java/org/baeldung/java/io/JavaXToWriterUnitTest.java (100%) create mode 100644 core-java-io/src/test/resources/.gitignore create mode 100644 core-java-io/src/test/resources/configuration.properties create mode 100644 core-java-io/src/test/resources/dictionary.in create mode 100644 core-java-io/src/test/resources/test.find create mode 100644 core-java-io/src/test/resources/testFolder/sample_file_1.in create mode 100644 core-java-io/src/test/resources/testFolder/sample_file_2.in create mode 100644 core-java-io/src/test/resources/test_read.in create mode 100644 core-java-io/src/test/resources/test_read1.in create mode 100644 core-java-io/src/test/resources/test_read2.in create mode 100644 core-java-io/src/test/resources/test_read3.in create mode 100644 core-java-io/src/test/resources/test_read4.in create mode 100644 core-java-io/src/test/resources/test_read7.in create mode 100644 core-java-io/src/test/resources/test_read8.in create mode 100644 core-java-io/src/test/resources/test_read_d.in create mode 100644 core-java-io/src/test/resources/test_read_multiple.in delete mode 100644 core-java/src/main/resources/fileTest.txt diff --git a/core-java-io/.gitignore b/core-java-io/.gitignore new file mode 100644 index 0000000000..3de4cc647e --- /dev/null +++ b/core-java-io/.gitignore @@ -0,0 +1,26 @@ +*.class + +0.* + +#folders# +/target +/neoDb* +/data +/src/main/webapp/WEB-INF/classes +*/META-INF/* +.resourceCache + +# Packaged files # +*.jar +*.war +*.ear + +# Files generated by integration tests +*.txt +backup-pom.xml +/bin/ +/temp + +#IntelliJ specific +.idea/ +*.iml \ No newline at end of file diff --git a/core-java-io/README.md b/core-java-io/README.md new file mode 100644 index 0000000000..79974ab523 --- /dev/null +++ b/core-java-io/README.md @@ -0,0 +1,28 @@ +========= + +## Core Java IO Cookbooks and Examples + +### Relevant Articles: +- [Java - Reading a Large File Efficiently](http://www.baeldung.com/java-read-lines-large-file) +- [Java InputStream to String](http://www.baeldung.com/convert-input-stream-to-string) +- [Java – Write to File](http://www.baeldung.com/java-write-to-file) +- [Java - Convert File to InputStream](http://www.baeldung.com/convert-file-to-input-stream) +- [Java Scanner](http://www.baeldung.com/java-scanner) +- [Java – Byte Array to Writer](http://www.baeldung.com/java-convert-byte-array-to-writer) +- [Java – Directory Size](http://www.baeldung.com/java-folder-size) +- [Differences Between the Java WatchService API and the Apache Commons IO Monitor Library](http://www.baeldung.com/java-watchservice-vs-apache-commons-io-monitor-library) +- [Calculate the Size of a File in Java](http://www.baeldung.com/java-file-size) +- [Iterable to Stream in Java](http://www.baeldung.com/java-iterable-to-stream) +- [Comparing getPath(), getAbsolutePath(), and getCanonicalPath() in Java](http://www.baeldung.com/java-path) +- [Using Java MappedByteBuffer](http://www.baeldung.com/java-mapped-byte-buffer) +- [Converting String to Stream of chars](http://www.baeldung.com/java-string-to-stream) +- [How to Iterate Over a Stream With Indices](http://www.baeldung.com/java-stream-indices) +- [Copy a File with Java](http://www.baeldung.com/java-copy-file) +- [Java – Append Data to a File](http://www.baeldung.com/java-append-to-file) +- [FileNotFoundException in Java](http://www.baeldung.com/java-filenotfound-exception) +- [How to Read a File in Java](http://www.baeldung.com/reading-file-in-java) +- [A Guide To NIO2 Asynchronous File Channel](http://www.baeldung.com/java-nio2-async-file-channel) +- [A Guide To NIO2 FileVisitor](http://www.baeldung.com/java-nio2-file-visitor) +- [A Guide To NIO2 File Attribute APIs](http://www.baeldung.com/java-nio2-file-attribute) +- [Introduction to the Java NIO2 File API](http://www.baeldung.com/java-nio-2-file-api) +- [Zipping and Unzipping in Java](http://www.baeldung.com/java-compress-and-uncompress) \ No newline at end of file diff --git a/core-java-io/pom.xml b/core-java-io/pom.xml new file mode 100644 index 0000000000..9aa8743aa6 --- /dev/null +++ b/core-java-io/pom.xml @@ -0,0 +1,505 @@ + + 4.0.0 + com.baeldung + core-java-io + 0.1.0-SNAPSHOT + jar + + core-java-io + + + + + + net.sourceforge.collections + collections-generic + ${collections-generic.version} + + + com.google.guava + guava + ${guava.version} + + + + org.apache.commons + commons-collections4 + ${commons-collections4.version} + + + + commons-io + commons-io + ${commons-io.version} + + + + org.apache.commons + commons-lang3 + ${commons-lang3.version} + + + + org.apache.commons + commons-math3 + ${commons-math3.version} + + + + org.decimal4j + decimal4j + ${decimal4j.version} + + + + org.bouncycastle + bcprov-jdk15on + ${bouncycastle.version} + + + + org.unix4j + unix4j-command + ${unix4j.version} + + + + com.googlecode.grep4j + grep4j + ${grep4j.version} + + + + + + + com.fasterxml.jackson.core + jackson-databind + ${jackson.version} + + + + + log4j + log4j + 1.2.17 + + + org.slf4j + slf4j-api + ${org.slf4j.version} + + + ch.qos.logback + logback-classic + ${logback.version} + + + + org.slf4j + jcl-over-slf4j + ${org.slf4j.version} + + + + org.slf4j + log4j-over-slf4j + ${org.slf4j.version} + + + org.projectlombok + lombok + ${lombok.version} + provided + + + + + + org.hamcrest + hamcrest-all + 1.3 + test + + + + junit + junit + ${junit.version} + test + + + + org.hamcrest + hamcrest-core + ${org.hamcrest.version} + test + + + org.hamcrest + hamcrest-library + ${org.hamcrest.version} + test + + + + org.assertj + assertj-core + ${assertj.version} + test + + + + org.mockito + mockito-core + ${mockito.version} + test + + + com.jayway.awaitility + awaitility + ${avaitility.version} + test + + + + commons-codec + commons-codec + ${commons-codec.version} + + + + org.javamoney + moneta + 1.1 + + + + org.owasp.esapi + esapi + 2.1.0.1 + + + + com.sun.messaging.mq + fscontext + ${fscontext.version} + + + com.codepoetics + protonpack + ${protonpack.version} + + + one.util + streamex + ${streamex.version} + + + io.vavr + vavr + ${vavr.version} + + + org.openjdk.jmh + jmh-core + 1.19 + + + org.openjdk.jmh + jmh-generator-annprocess + 1.19 + + + org.springframework + spring-web + 4.3.4.RELEASE + + + org.springframework.boot + spring-boot-starter + 1.5.8.RELEASE + + + org.hsqldb + hsqldb + 2.4.0 + runtime + + + + + core-java-io + + + src/main/resources + true + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + 1.8 + 1.8 + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + **/*LiveTest.java + **/*IntegrationTest.java + **/*LongRunningUnitTest.java + **/*ManualTest.java + + true + + + + + org.apache.maven.plugins + maven-dependency-plugin + + + copy-dependencies + prepare-package + + copy-dependencies + + + ${project.build.directory}/libs + + + + + + + org.apache.maven.plugins + maven-jar-plugin + + + + true + libs/ + org.baeldung.executable.ExecutableMavenJar + + + + + + + org.apache.maven.plugins + maven-assembly-plugin + + + package + + single + + + ${project.basedir} + + + org.baeldung.executable.ExecutableMavenJar + + + + jar-with-dependencies + + + + + + + + org.apache.maven.plugins + maven-shade-plugin + + + + shade + + + true + + + org.baeldung.executable.ExecutableMavenJar + + + + + + + + + com.jolira + onejar-maven-plugin + + + + org.baeldung.executable.ExecutableMavenJar + true + ${project.build.finalName}-onejar.${project.packaging} + + + one-jar + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + spring-boot + org.baeldung.executable.ExecutableMavenJar + + + + + + + org.codehaus.mojo + exec-maven-plugin + 1.6.0 + + java + com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed + + -Xmx300m + -XX:+UseParallelGC + -classpath + + com.baeldung.outofmemoryerror.OutOfMemoryGCLimitExceed + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + 3.0.0-M1 + + 1.8 + 1.8 + + + + + + + + + + + integration + + + + org.apache.maven.plugins + maven-surefire-plugin + + + integration-test + + test + + + + **/*ManualTest.java + + + **/*IntegrationTest.java + + + + + + + json + + + + + org.codehaus.mojo + exec-maven-plugin + + + + run-benchmarks + + none + + exec + + + test + java + + -classpath + + org.openjdk.jmh.Main + .* + + + + + + + + + + + + + 2.8.5 + + + 1.7.21 + 1.1.7 + + + 22.0 + 3.5 + 1.55 + 1.10 + 3.6.1 + 1.0.3 + 2.5 + 4.1 + 4.01 + 0.4 + 1.8.7 + 1.16.12 + 4.6-b01 + 1.13 + 0.6.5 + 0.9.0 + + + 1.3 + 4.12 + 2.8.9 + 3.6.1 + 1.7.0 + + + 3.7.0 + 2.19.1 + + \ No newline at end of file diff --git a/core-java/src/main/java/com/baeldung/dirmonitoring/DirectoryMonitoringExample.java b/core-java-io/src/main/java/com/baeldung/dirmonitoring/DirectoryMonitoringExample.java similarity index 100% rename from core-java/src/main/java/com/baeldung/dirmonitoring/DirectoryMonitoringExample.java rename to core-java-io/src/main/java/com/baeldung/dirmonitoring/DirectoryMonitoringExample.java diff --git a/core-java-io/src/main/java/com/baeldung/filesystem/jndi/LookupFSJNDI.java b/core-java-io/src/main/java/com/baeldung/filesystem/jndi/LookupFSJNDI.java new file mode 100644 index 0000000000..7e6bb5d3b2 --- /dev/null +++ b/core-java-io/src/main/java/com/baeldung/filesystem/jndi/LookupFSJNDI.java @@ -0,0 +1,42 @@ +package com.baeldung.filesystem.jndi; + +import java.io.File; +import java.util.Hashtable; + +import javax.naming.Context; +import javax.naming.InitialContext; +import javax.naming.NamingException; + +public class LookupFSJNDI { + private InitialContext ctx = null; + + public LookupFSJNDI() throws NamingException { + super(); + init(); + } + + private void init() throws NamingException { + Hashtable env = new Hashtable(); + + env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.fscontext.RefFSContextFactory"); + // URI to namespace (actual directory) + env.put(Context.PROVIDER_URL, "file:./src/test/resources"); + + ctx = new InitialContext(env); + } + + public InitialContext getCtx() { + return ctx; + } + + public File getFile(String fileName) { + File file; + try { + file = (File) getCtx().lookup(fileName); + } catch (NamingException e) { + file = null; + } + return file; + } + +} diff --git a/core-java/src/main/java/com/baeldung/java/nio/selector/EchoClient.java b/core-java-io/src/main/java/com/baeldung/java/nio/selector/EchoClient.java similarity index 100% rename from core-java/src/main/java/com/baeldung/java/nio/selector/EchoClient.java rename to core-java-io/src/main/java/com/baeldung/java/nio/selector/EchoClient.java diff --git a/core-java/src/main/java/com/baeldung/java/nio/selector/EchoServer.java b/core-java-io/src/main/java/com/baeldung/java/nio/selector/EchoServer.java similarity index 100% rename from core-java/src/main/java/com/baeldung/java/nio/selector/EchoServer.java rename to core-java-io/src/main/java/com/baeldung/java/nio/selector/EchoServer.java diff --git a/core-java/src/main/java/com/baeldung/java/nio/selector/README.md b/core-java-io/src/main/java/com/baeldung/java/nio/selector/README.md similarity index 100% rename from core-java/src/main/java/com/baeldung/java/nio/selector/README.md rename to core-java-io/src/main/java/com/baeldung/java/nio/selector/README.md diff --git a/core-java/src/main/java/com/baeldung/java/nio2/visitor/FileSearchExample.java b/core-java-io/src/main/java/com/baeldung/java/nio2/visitor/FileSearchExample.java similarity index 100% rename from core-java/src/main/java/com/baeldung/java/nio2/visitor/FileSearchExample.java rename to core-java-io/src/main/java/com/baeldung/java/nio2/visitor/FileSearchExample.java diff --git a/core-java/src/main/java/com/baeldung/java/nio2/visitor/FileVisitorImpl.java b/core-java-io/src/main/java/com/baeldung/java/nio2/visitor/FileVisitorImpl.java similarity index 100% rename from core-java/src/main/java/com/baeldung/java/nio2/visitor/FileVisitorImpl.java rename to core-java-io/src/main/java/com/baeldung/java/nio2/visitor/FileVisitorImpl.java diff --git a/core-java/src/main/java/com/baeldung/java/nio2/watcher/DirectoryWatcherExample.java b/core-java-io/src/main/java/com/baeldung/java/nio2/watcher/DirectoryWatcherExample.java similarity index 100% rename from core-java/src/main/java/com/baeldung/java/nio2/watcher/DirectoryWatcherExample.java rename to core-java-io/src/main/java/com/baeldung/java/nio2/watcher/DirectoryWatcherExample.java diff --git a/core-java/src/main/java/com/baeldung/stream/FileCopy.java b/core-java-io/src/main/java/com/baeldung/stream/FileCopy.java similarity index 100% rename from core-java/src/main/java/com/baeldung/stream/FileCopy.java rename to core-java-io/src/main/java/com/baeldung/stream/FileCopy.java diff --git a/core-java/src/main/java/com/baeldung/stream/StreamIndices.java b/core-java-io/src/main/java/com/baeldung/stream/StreamIndices.java similarity index 100% rename from core-java/src/main/java/com/baeldung/stream/StreamIndices.java rename to core-java-io/src/main/java/com/baeldung/stream/StreamIndices.java diff --git a/core-java/src/main/java/com/baeldung/unzip/UnzipFile.java b/core-java-io/src/main/java/com/baeldung/unzip/UnzipFile.java similarity index 100% rename from core-java/src/main/java/com/baeldung/unzip/UnzipFile.java rename to core-java-io/src/main/java/com/baeldung/unzip/UnzipFile.java diff --git a/core-java/src/main/java/com/baeldung/util/StreamUtils.java b/core-java-io/src/main/java/com/baeldung/util/StreamUtils.java similarity index 100% rename from core-java/src/main/java/com/baeldung/util/StreamUtils.java rename to core-java-io/src/main/java/com/baeldung/util/StreamUtils.java diff --git a/core-java/src/main/java/com/baeldung/zip/ZipDirectory.java b/core-java-io/src/main/java/com/baeldung/zip/ZipDirectory.java similarity index 100% rename from core-java/src/main/java/com/baeldung/zip/ZipDirectory.java rename to core-java-io/src/main/java/com/baeldung/zip/ZipDirectory.java diff --git a/core-java/src/main/java/com/baeldung/zip/ZipFile.java b/core-java-io/src/main/java/com/baeldung/zip/ZipFile.java similarity index 100% rename from core-java/src/main/java/com/baeldung/zip/ZipFile.java rename to core-java-io/src/main/java/com/baeldung/zip/ZipFile.java diff --git a/core-java/src/main/java/com/baeldung/zip/ZipMultipleFiles.java b/core-java-io/src/main/java/com/baeldung/zip/ZipMultipleFiles.java similarity index 100% rename from core-java/src/main/java/com/baeldung/zip/ZipMultipleFiles.java rename to core-java-io/src/main/java/com/baeldung/zip/ZipMultipleFiles.java diff --git a/core-java-io/src/main/resources/ESAPI.properties b/core-java-io/src/main/resources/ESAPI.properties new file mode 100644 index 0000000000..24dcaa9dfa --- /dev/null +++ b/core-java-io/src/main/resources/ESAPI.properties @@ -0,0 +1,453 @@ +# +# OWASP Enterprise Security API (ESAPI) Properties file -- PRODUCTION Version +# +# This file is part of the Open Web Application Security Project (OWASP) +# Enterprise Security API (ESAPI) project. For details, please see +# http://www.owasp.org/index.php/ESAPI. +# +# Copyright (c) 2008,2009 - The OWASP Foundation +# +# DISCUSS: This may cause a major backwards compatibility issue, etc. but +# from a name space perspective, we probably should have prefaced +# all the property names with ESAPI or at least OWASP. Otherwise +# there could be problems is someone loads this properties file into +# the System properties. We could also put this file into the +# esapi.jar file (perhaps as a ResourceBundle) and then allow an external +# ESAPI properties be defined that would overwrite these defaults. +# That keeps the application's properties relatively simple as usually +# they will only want to override a few properties. If looks like we +# already support multiple override levels of this in the +# DefaultSecurityConfiguration class, but I'm suggesting placing the +# defaults in the esapi.jar itself. That way, if the jar is signed, +# we could detect if those properties had been tampered with. (The +# code to check the jar signatures is pretty simple... maybe 70-90 LOC, +# but off course there is an execution penalty (similar to the way +# that the separate sunjce.jar used to be when a class from it was +# first loaded). Thoughts? +############################################################################### +# +# WARNING: Operating system protection should be used to lock down the .esapi +# resources directory and all the files inside and all the directories all the +# way up to the root directory of the file system. Note that if you are using +# file-based implementations, that some files may need to be read-write as they +# get updated dynamically. +# +# Before using, be sure to update the MasterKey and MasterSalt as described below. +# N.B.: If you had stored data that you have previously encrypted with ESAPI 1.4, +# you *must* FIRST decrypt it using ESAPI 1.4 and then (if so desired) +# re-encrypt it with ESAPI 2.0. If you fail to do this, you will NOT be +# able to decrypt your data with ESAPI 2.0. +# +# YOU HAVE BEEN WARNED!!! More details are in the ESAPI 2.0 Release Notes. +# +#=========================================================================== +# ESAPI Configuration +# +# If true, then print all the ESAPI properties set here when they are loaded. +# If false, they are not printed. Useful to reduce output when running JUnit tests. +# If you need to troubleshoot a properties related problem, turning this on may help. +# This is 'false' in the src/test/resources/.esapi version. It is 'true' by +# default for reasons of backward compatibility with earlier ESAPI versions. +ESAPI.printProperties=true + +# ESAPI is designed to be easily extensible. You can use the reference implementation +# or implement your own providers to take advantage of your enterprise's security +# infrastructure. The functions in ESAPI are referenced using the ESAPI locator, like: +# +# String ciphertext = +# ESAPI.encryptor().encrypt("Secret message"); // Deprecated in 2.0 +# CipherText cipherText = +# ESAPI.encryptor().encrypt(new PlainText("Secret message")); // Preferred +# +# Below you can specify the classname for the provider that you wish to use in your +# application. The only requirement is that it implement the appropriate ESAPI interface. +# This allows you to switch security implementations in the future without rewriting the +# entire application. +# +# ExperimentalAccessController requires ESAPI-AccessControlPolicy.xml in .esapi directory +ESAPI.AccessControl=org.owasp.esapi.reference.DefaultAccessController +# FileBasedAuthenticator requires users.txt file in .esapi directory +ESAPI.Authenticator=org.owasp.esapi.reference.FileBasedAuthenticator +ESAPI.Encoder=org.owasp.esapi.reference.DefaultEncoder +ESAPI.Encryptor=org.owasp.esapi.reference.crypto.JavaEncryptor + +ESAPI.Executor=org.owasp.esapi.reference.DefaultExecutor +ESAPI.HTTPUtilities=org.owasp.esapi.reference.DefaultHTTPUtilities +ESAPI.IntrusionDetector=org.owasp.esapi.reference.DefaultIntrusionDetector +# Log4JFactory Requires log4j.xml or log4j.properties in classpath - http://www.laliluna.de/log4j-tutorial.html +ESAPI.Logger=org.owasp.esapi.reference.Log4JLogFactory +#ESAPI.Logger=org.owasp.esapi.reference.JavaLogFactory +ESAPI.Randomizer=org.owasp.esapi.reference.DefaultRandomizer +ESAPI.Validator=org.owasp.esapi.reference.DefaultValidator + +#=========================================================================== +# ESAPI Authenticator +# +Authenticator.AllowedLoginAttempts=3 +Authenticator.MaxOldPasswordHashes=13 +Authenticator.UsernameParameterName=username +Authenticator.PasswordParameterName=password +# RememberTokenDuration (in days) +Authenticator.RememberTokenDuration=14 +# Session Timeouts (in minutes) +Authenticator.IdleTimeoutDuration=20 +Authenticator.AbsoluteTimeoutDuration=120 + +#=========================================================================== +# ESAPI Encoder +# +# ESAPI canonicalizes input before validation to prevent bypassing filters with encoded attacks. +# Failure to canonicalize input is a very common mistake when implementing validation schemes. +# Canonicalization is automatic when using the ESAPI Validator, but you can also use the +# following code to canonicalize data. +# +# ESAPI.Encoder().canonicalize( "%22hello world"" ); +# +# Multiple encoding is when a single encoding format is applied multiple times. Allowing +# multiple encoding is strongly discouraged. +Encoder.AllowMultipleEncoding=false + +# Mixed encoding is when multiple different encoding formats are applied, or when +# multiple formats are nested. Allowing multiple encoding is strongly discouraged. +Encoder.AllowMixedEncoding=false + +# The default list of codecs to apply when canonicalizing untrusted data. The list should include the codecs +# for all downstream interpreters or decoders. For example, if the data is likely to end up in a URL, HTML, or +# inside JavaScript, then the list of codecs below is appropriate. The order of the list is not terribly important. +Encoder.DefaultCodecList=HTMLEntityCodec,PercentCodec,JavaScriptCodec + + +#=========================================================================== +# ESAPI Encryption +# +# The ESAPI Encryptor provides basic cryptographic functions with a simplified API. +# To get started, generate a new key using java -classpath esapi.jar org.owasp.esapi.reference.crypto.JavaEncryptor +# There is not currently any support for key rotation, so be careful when changing your key and salt as it +# will invalidate all signed, encrypted, and hashed data. +# +# WARNING: Not all combinations of algorithms and key lengths are supported. +# If you choose to use a key length greater than 128, you MUST download the +# unlimited strength policy files and install in the lib directory of your JRE/JDK. +# See http://java.sun.com/javase/downloads/index.jsp for more information. +# +# Backward compatibility with ESAPI Java 1.4 is supported by the two deprecated API +# methods, Encryptor.encrypt(String) and Encryptor.decrypt(String). However, whenever +# possible, these methods should be avoided as they use ECB cipher mode, which in almost +# all circumstances a poor choice because of it's weakness. CBC cipher mode is the default +# for the new Encryptor encrypt / decrypt methods for ESAPI Java 2.0. In general, you +# should only use this compatibility setting if you have persistent data encrypted with +# version 1.4 and even then, you should ONLY set this compatibility mode UNTIL +# you have decrypted all of your old encrypted data and then re-encrypted it with +# ESAPI 2.0 using CBC mode. If you have some reason to mix the deprecated 1.4 mode +# with the new 2.0 methods, make sure that you use the same cipher algorithm for both +# (256-bit AES was the default for 1.4; 128-bit is the default for 2.0; see below for +# more details.) Otherwise, you will have to use the new 2.0 encrypt / decrypt methods +# where you can specify a SecretKey. (Note that if you are using the 256-bit AES, +# that requires downloading the special jurisdiction policy files mentioned above.) +# +# ***** IMPORTANT: Do NOT forget to replace these with your own values! ***** +# To calculate these values, you can run: +# java -classpath esapi.jar org.owasp.esapi.reference.crypto.JavaEncryptor +# +Encryptor.MasterKey=tzfztf56ftv +Encryptor.MasterSalt=123456ztrewq + +# Provides the default JCE provider that ESAPI will "prefer" for its symmetric +# encryption and hashing. (That is it will look to this provider first, but it +# will defer to other providers if the requested algorithm is not implemented +# by this provider.) If left unset, ESAPI will just use your Java VM's current +# preferred JCE provider, which is generally set in the file +# "$JAVA_HOME/jre/lib/security/java.security". +# +# The main intent of this is to allow ESAPI symmetric encryption to be +# used with a FIPS 140-2 compliant crypto-module. For details, see the section +# "Using ESAPI Symmetric Encryption with FIPS 140-2 Cryptographic Modules" in +# the ESAPI 2.0 Symmetric Encryption User Guide, at: +# http://owasp-esapi-java.googlecode.com/svn/trunk/documentation/esapi4java-core-2.0-symmetric-crypto-user-guide.html +# However, this property also allows you to easily use an alternate JCE provider +# such as "Bouncy Castle" without having to make changes to "java.security". +# See Javadoc for SecurityProviderLoader for further details. If you wish to use +# a provider that is not known to SecurityProviderLoader, you may specify the +# fully-qualified class name of the JCE provider class that implements +# java.security.Provider. If the name contains a '.', this is interpreted as +# a fully-qualified class name that implements java.security.Provider. +# +# NOTE: Setting this property has the side-effect of changing it in your application +# as well, so if you are using JCE in your application directly rather than +# through ESAPI (you wouldn't do that, would you? ;-), it will change the +# preferred JCE provider there as well. +# +# Default: Keeps the JCE provider set to whatever JVM sets it to. +Encryptor.PreferredJCEProvider= + +# AES is the most widely used and strongest encryption algorithm. This +# should agree with your Encryptor.CipherTransformation property. +# By default, ESAPI Java 1.4 uses "PBEWithMD5AndDES" and which is +# very weak. It is essentially a password-based encryption key, hashed +# with MD5 around 1K times and then encrypted with the weak DES algorithm +# (56-bits) using ECB mode and an unspecified padding (it is +# JCE provider specific, but most likely "NoPadding"). However, 2.0 uses +# "AES/CBC/PKCSPadding". If you want to change these, change them here. +# Warning: This property does not control the default reference implementation for +# ESAPI 2.0 using JavaEncryptor. Also, this property will be dropped +# in the future. +# @deprecated +Encryptor.EncryptionAlgorithm=AES +# For ESAPI Java 2.0 - New encrypt / decrypt methods use this. +Encryptor.CipherTransformation=AES/CBC/PKCS5Padding + +# Applies to ESAPI 2.0 and later only! +# Comma-separated list of cipher modes that provide *BOTH* +# confidentiality *AND* message authenticity. (NIST refers to such cipher +# modes as "combined modes" so that's what we shall call them.) If any of these +# cipher modes are used then no MAC is calculated and stored +# in the CipherText upon encryption. Likewise, if one of these +# cipher modes is used with decryption, no attempt will be made +# to validate the MAC contained in the CipherText object regardless +# of whether it contains one or not. Since the expectation is that +# these cipher modes support support message authenticity already, +# injecting a MAC in the CipherText object would be at best redundant. +# +# Note that as of JDK 1.5, the SunJCE provider does not support *any* +# of these cipher modes. Of these listed, only GCM and CCM are currently +# NIST approved. YMMV for other JCE providers. E.g., Bouncy Castle supports +# GCM and CCM with "NoPadding" mode, but not with "PKCS5Padding" or other +# padding modes. +Encryptor.cipher_modes.combined_modes=GCM,CCM,IAPM,EAX,OCB,CWC + +# Applies to ESAPI 2.0 and later only! +# Additional cipher modes allowed for ESAPI 2.0 encryption. These +# cipher modes are in _addition_ to those specified by the property +# 'Encryptor.cipher_modes.combined_modes'. +# Note: We will add support for streaming modes like CFB & OFB once +# we add support for 'specified' to the property 'Encryptor.ChooseIVMethod' +# (probably in ESAPI 2.1). +# DISCUSS: Better name? +Encryptor.cipher_modes.additional_allowed=CBC + +# 128-bit is almost always sufficient and appears to be more resistant to +# related key attacks than is 256-bit AES. Use '_' to use default key size +# for cipher algorithms (where it makes sense because the algorithm supports +# a variable key size). Key length must agree to what's provided as the +# cipher transformation, otherwise this will be ignored after logging a +# warning. +# +# NOTE: This is what applies BOTH ESAPI 1.4 and 2.0. See warning above about mixing! +Encryptor.EncryptionKeyLength=128 + +# Because 2.0 uses CBC mode by default, it requires an initialization vector (IV). +# (All cipher modes except ECB require an IV.) There are two choices: we can either +# use a fixed IV known to both parties or allow ESAPI to choose a random IV. While +# the IV does not need to be hidden from adversaries, it is important that the +# adversary not be allowed to choose it. Also, random IVs are generally much more +# secure than fixed IVs. (In fact, it is essential that feed-back cipher modes +# such as CFB and OFB use a different IV for each encryption with a given key so +# in such cases, random IVs are much preferred. By default, ESAPI 2.0 uses random +# IVs. If you wish to use 'fixed' IVs, set 'Encryptor.ChooseIVMethod=fixed' and +# uncomment the Encryptor.fixedIV. +# +# Valid values: random|fixed|specified 'specified' not yet implemented; planned for 2.1 +Encryptor.ChooseIVMethod=random +# If you choose to use a fixed IV, then you must place a fixed IV here that +# is known to all others who are sharing your secret key. The format should +# be a hex string that is the same length as the cipher block size for the +# cipher algorithm that you are using. The following is an *example* for AES +# from an AES test vector for AES-128/CBC as described in: +# NIST Special Publication 800-38A (2001 Edition) +# "Recommendation for Block Cipher Modes of Operation". +# (Note that the block size for AES is 16 bytes == 128 bits.) +# +Encryptor.fixedIV=0x000102030405060708090a0b0c0d0e0f + +# Whether or not CipherText should use a message authentication code (MAC) with it. +# This prevents an adversary from altering the IV as well as allowing a more +# fool-proof way of determining the decryption failed because of an incorrect +# key being supplied. This refers to the "separate" MAC calculated and stored +# in CipherText, not part of any MAC that is calculated as a result of a +# "combined mode" cipher mode. +# +# If you are using ESAPI with a FIPS 140-2 cryptographic module, you *must* also +# set this property to false. +Encryptor.CipherText.useMAC=true + +# Whether or not the PlainText object may be overwritten and then marked +# eligible for garbage collection. If not set, this is still treated as 'true'. +Encryptor.PlainText.overwrite=true + +# Do not use DES except in a legacy situations. 56-bit is way too small key size. +#Encryptor.EncryptionKeyLength=56 +#Encryptor.EncryptionAlgorithm=DES + +# TripleDES is considered strong enough for most purposes. +# Note: There is also a 112-bit version of DESede. Using the 168-bit version +# requires downloading the special jurisdiction policy from Sun. +#Encryptor.EncryptionKeyLength=168 +#Encryptor.EncryptionAlgorithm=DESede + +Encryptor.HashAlgorithm=SHA-512 +Encryptor.HashIterations=1024 +Encryptor.DigitalSignatureAlgorithm=SHA1withDSA +Encryptor.DigitalSignatureKeyLength=1024 +Encryptor.RandomAlgorithm=SHA1PRNG +Encryptor.CharacterEncoding=UTF-8 + +# This is the Pseudo Random Function (PRF) that ESAPI's Key Derivation Function +# (KDF) normally uses. Note this is *only* the PRF used for ESAPI's KDF and +# *not* what is used for ESAPI's MAC. (Currently, HmacSHA1 is always used for +# the MAC, mostly to keep the overall size at a minimum.) +# +# Currently supported choices for JDK 1.5 and 1.6 are: +# HmacSHA1 (160 bits), HmacSHA256 (256 bits), HmacSHA384 (384 bits), and +# HmacSHA512 (512 bits). +# Note that HmacMD5 is *not* supported for the PRF used by the KDF even though +# the JDKs support it. See the ESAPI 2.0 Symmetric Encryption User Guide +# further details. +Encryptor.KDF.PRF=HmacSHA256 +#=========================================================================== +# ESAPI HttpUtilties +# +# The HttpUtilities provide basic protections to HTTP requests and responses. Primarily these methods +# protect against malicious data from attackers, such as unprintable characters, escaped characters, +# and other simple attacks. The HttpUtilities also provides utility methods for dealing with cookies, +# headers, and CSRF tokens. +# +# Default file upload location (remember to escape backslashes with \\) +HttpUtilities.UploadDir=C:\\ESAPI\\testUpload +HttpUtilities.UploadTempDir=C:\\temp +# Force flags on cookies, if you use HttpUtilities to set cookies +HttpUtilities.ForceHttpOnlySession=false +HttpUtilities.ForceSecureSession=false +HttpUtilities.ForceHttpOnlyCookies=true +HttpUtilities.ForceSecureCookies=true +# Maximum size of HTTP headers +HttpUtilities.MaxHeaderSize=4096 +# File upload configuration +HttpUtilities.ApprovedUploadExtensions=.zip,.pdf,.doc,.docx,.ppt,.pptx,.tar,.gz,.tgz,.rar,.war,.jar,.ear,.xls,.rtf,.properties,.java,.class,.txt,.xml,.jsp,.jsf,.exe,.dll +HttpUtilities.MaxUploadFileBytes=500000000 +# Using UTF-8 throughout your stack is highly recommended. That includes your database driver, +# container, and any other technologies you may be using. Failure to do this may expose you +# to Unicode transcoding injection attacks. Use of UTF-8 does not hinder internationalization. +HttpUtilities.ResponseContentType=text/html; charset=UTF-8 +# This is the name of the cookie used to represent the HTTP session +# Typically this will be the default "JSESSIONID" +HttpUtilities.HttpSessionIdName=JSESSIONID + + + +#=========================================================================== +# ESAPI Executor +# CHECKME - Not sure what this is used for, but surely it should be made OS independent. +Executor.WorkingDirectory=C:\\Windows\\Temp +Executor.ApprovedExecutables=C:\\Windows\\System32\\cmd.exe,C:\\Windows\\System32\\runas.exe + + +#=========================================================================== +# ESAPI Logging +# Set the application name if these logs are combined with other applications +Logger.ApplicationName=ExampleApplication +# If you use an HTML log viewer that does not properly HTML escape log data, you can set LogEncodingRequired to true +Logger.LogEncodingRequired=false +# Determines whether ESAPI should log the application name. This might be clutter in some single-server/single-app environments. +Logger.LogApplicationName=true +# Determines whether ESAPI should log the server IP and port. This might be clutter in some single-server environments. +Logger.LogServerIP=true +# LogFileName, the name of the logging file. Provide a full directory path (e.g., C:\\ESAPI\\ESAPI_logging_file) if you +# want to place it in a specific directory. +Logger.LogFileName=ESAPI_logging_file +# MaxLogFileSize, the max size (in bytes) of a single log file before it cuts over to a new one (default is 10,000,000) +Logger.MaxLogFileSize=10000000 + + +#=========================================================================== +# ESAPI Intrusion Detection +# +# Each event has a base to which .count, .interval, and .action are added +# The IntrusionException will fire if we receive "count" events within "interval" seconds +# The IntrusionDetector is configurable to take the following actions: log, logout, and disable +# (multiple actions separated by commas are allowed e.g. event.test.actions=log,disable +# +# Custom Events +# Names must start with "event." as the base +# Use IntrusionDetector.addEvent( "test" ) in your code to trigger "event.test" here +# You can also disable intrusion detection completely by changing +# the following parameter to true +# +IntrusionDetector.Disable=false +# +IntrusionDetector.event.test.count=2 +IntrusionDetector.event.test.interval=10 +IntrusionDetector.event.test.actions=disable,log + +# Exception Events +# All EnterpriseSecurityExceptions are registered automatically +# Call IntrusionDetector.getInstance().addException(e) for Exceptions that do not extend EnterpriseSecurityException +# Use the fully qualified classname of the exception as the base + +# any intrusion is an attack +IntrusionDetector.org.owasp.esapi.errors.IntrusionException.count=1 +IntrusionDetector.org.owasp.esapi.errors.IntrusionException.interval=1 +IntrusionDetector.org.owasp.esapi.errors.IntrusionException.actions=log,disable,logout + +# for test purposes +# CHECKME: Shouldn't there be something in the property name itself that designates +# that these are for testing??? +IntrusionDetector.org.owasp.esapi.errors.IntegrityException.count=10 +IntrusionDetector.org.owasp.esapi.errors.IntegrityException.interval=5 +IntrusionDetector.org.owasp.esapi.errors.IntegrityException.actions=log,disable,logout + +# rapid validation errors indicate scans or attacks in progress +# org.owasp.esapi.errors.ValidationException.count=10 +# org.owasp.esapi.errors.ValidationException.interval=10 +# org.owasp.esapi.errors.ValidationException.actions=log,logout + +# sessions jumping between hosts indicates session hijacking +IntrusionDetector.org.owasp.esapi.errors.AuthenticationHostException.count=2 +IntrusionDetector.org.owasp.esapi.errors.AuthenticationHostException.interval=10 +IntrusionDetector.org.owasp.esapi.errors.AuthenticationHostException.actions=log,logout + + +#=========================================================================== +# ESAPI Validation +# +# The ESAPI Validator works on regular expressions with defined names. You can define names +# either here, or you may define application specific patterns in a separate file defined below. +# This allows enterprises to specify both organizational standards as well as application specific +# validation rules. +# +Validator.ConfigurationFile=validation.properties + +# Validators used by ESAPI +Validator.AccountName=^[a-zA-Z0-9]{3,20}$ +Validator.SystemCommand=^[a-zA-Z\\-\\/]{1,64}$ +Validator.RoleName=^[a-z]{1,20}$ + +#the word TEST below should be changed to your application +#name - only relative URL's are supported +Validator.Redirect=^\\/test.*$ + +# Global HTTP Validation Rules +# Values with Base64 encoded data (e.g. encrypted state) will need at least [a-zA-Z0-9\/+=] +Validator.HTTPScheme=^(http|https)$ +Validator.HTTPServerName=^[a-zA-Z0-9_.\\-]*$ +Validator.HTTPParameterName=^[a-zA-Z0-9_]{1,32}$ +Validator.HTTPParameterValue=^[a-zA-Z0-9.\\-\\/+=@_ ]*$ +Validator.HTTPCookieName=^[a-zA-Z0-9\\-_]{1,32}$ +Validator.HTTPCookieValue=^[a-zA-Z0-9\\-\\/+=_ ]*$ +Validator.HTTPHeaderName=^[a-zA-Z0-9\\-_]{1,32}$ +Validator.HTTPHeaderValue=^[a-zA-Z0-9()\\-=\\*\\.\\?;,+\\/:&_ ]*$ +Validator.HTTPContextPath=^\\/?[a-zA-Z0-9.\\-\\/_]*$ +Validator.HTTPServletPath=^[a-zA-Z0-9.\\-\\/_]*$ +Validator.HTTPPath=^[a-zA-Z0-9.\\-_]*$ +Validator.HTTPQueryString=^[a-zA-Z0-9()\\-=\\*\\.\\?;,+\\/:&_ %]*$ +Validator.HTTPURI=^[a-zA-Z0-9()\\-=\\*\\.\\?;,+\\/:&_ ]*$ +Validator.HTTPURL=^.*$ +Validator.HTTPJSESSIONID=^[A-Z0-9]{10,30}$ + +# Validation of file related input +Validator.FileName=^[a-zA-Z0-9!@#$%^&{}\\[\\]()_+\\-=,.~'` ]{1,255}$ +Validator.DirectoryName=^[a-zA-Z0-9:/\\\\!@#$%^&{}\\[\\]()_+\\-=,.~'` ]{1,255}$ + +# Validation of dates. Controls whether or not 'lenient' dates are accepted. +# See DataFormat.setLenient(boolean flag) for further details. +Validator.AcceptLenientDates=false + diff --git a/core-java-io/src/main/resources/META-INF/BenchmarkList b/core-java-io/src/main/resources/META-INF/BenchmarkList new file mode 100755 index 0000000000..e69de29bb2 diff --git a/core-java-io/src/main/resources/META-INF/persistence.xml b/core-java-io/src/main/resources/META-INF/persistence.xml new file mode 100644 index 0000000000..3966afdcda --- /dev/null +++ b/core-java-io/src/main/resources/META-INF/persistence.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + diff --git a/core-java-io/src/main/resources/META-INF/services/com.sun.source.util.Plugin b/core-java-io/src/main/resources/META-INF/services/com.sun.source.util.Plugin new file mode 100644 index 0000000000..91fb6eb3b0 --- /dev/null +++ b/core-java-io/src/main/resources/META-INF/services/com.sun.source.util.Plugin @@ -0,0 +1 @@ +com.baeldung.javac.SampleJavacPlugin \ No newline at end of file diff --git a/core-java-io/src/main/resources/countries.properties b/core-java-io/src/main/resources/countries.properties new file mode 100644 index 0000000000..e743b5a40b --- /dev/null +++ b/core-java-io/src/main/resources/countries.properties @@ -0,0 +1,3 @@ +UK +US +Germany diff --git a/core-java-io/src/main/resources/data.csv b/core-java-io/src/main/resources/data.csv new file mode 100644 index 0000000000..ec4ac10443 --- /dev/null +++ b/core-java-io/src/main/resources/data.csv @@ -0,0 +1,3 @@ +1|IND|India +2|MY|Malaysia +3|AU|Australia diff --git a/core-java-io/src/main/resources/datasource.properties b/core-java-io/src/main/resources/datasource.properties new file mode 100644 index 0000000000..61df0d45f7 --- /dev/null +++ b/core-java-io/src/main/resources/datasource.properties @@ -0,0 +1,6 @@ +dataSourceClassName=//TBD +dataSource.user=//TBD +dataSource.password=//TBD +dataSource.databaseName=//TBD +dataSource.portNumber=//TBD +dataSource.serverName=//TBD \ No newline at end of file diff --git a/core-java/src/main/resources/dirCompressed.zip b/core-java-io/src/main/resources/dirCompressed.zip similarity index 100% rename from core-java/src/main/resources/dirCompressed.zip rename to core-java-io/src/main/resources/dirCompressed.zip diff --git a/core-java-io/src/main/resources/js/bind.js b/core-java-io/src/main/resources/js/bind.js new file mode 100644 index 0000000000..652e646d0d --- /dev/null +++ b/core-java-io/src/main/resources/js/bind.js @@ -0,0 +1,15 @@ +var first = { + name: "Whiskey", + age: 5 +}; + +var second = { + volume: 100 +}; + +Object.bindProperties(first, second); + +print(first.volume); + +second.volume = 1000; +print(first.volume); diff --git a/core-java-io/src/main/resources/js/locations.js b/core-java-io/src/main/resources/js/locations.js new file mode 100644 index 0000000000..abfc944639 --- /dev/null +++ b/core-java-io/src/main/resources/js/locations.js @@ -0,0 +1 @@ +print(__FILE__, __LINE__, __DIR__); diff --git a/core-java-io/src/main/resources/js/math_module.js b/core-java-io/src/main/resources/js/math_module.js new file mode 100644 index 0000000000..267a100f36 --- /dev/null +++ b/core-java-io/src/main/resources/js/math_module.js @@ -0,0 +1,19 @@ +var math = { + increment: function (num) { + return ++num; + }, + + failFunc: function () { + try { + throw "BOOM"; + } catch (e if typeof e === 'string') { + print("String thrown: " + e); + } + catch (e) { + print("this shouldn't happen!"); + } + } +}; + + +math; diff --git a/core-java-io/src/main/resources/js/no_such.js b/core-java-io/src/main/resources/js/no_such.js new file mode 100644 index 0000000000..43b50c5cad --- /dev/null +++ b/core-java-io/src/main/resources/js/no_such.js @@ -0,0 +1,11 @@ +var demo = { + __noSuchProperty__: function (propName) { + print("Accessed non-existing property: " + propName); + }, + + __noSuchMethod__: function (methodName) { + print("Invoked non-existing method: " + methodName); + } +}; + +demo; diff --git a/core-java-io/src/main/resources/js/script.js b/core-java-io/src/main/resources/js/script.js new file mode 100644 index 0000000000..6f701ed59d --- /dev/null +++ b/core-java-io/src/main/resources/js/script.js @@ -0,0 +1 @@ +function increment(num) ++num; diff --git a/core-java-io/src/main/resources/js/trim.js b/core-java-io/src/main/resources/js/trim.js new file mode 100644 index 0000000000..81be009978 --- /dev/null +++ b/core-java-io/src/main/resources/js/trim.js @@ -0,0 +1,2 @@ +print(" hello world".trimLeft()); +print("hello world ".trimRight()); diff --git a/core-java-io/src/main/resources/js/typed_arrays.js b/core-java-io/src/main/resources/js/typed_arrays.js new file mode 100644 index 0000000000..6899b29373 --- /dev/null +++ b/core-java-io/src/main/resources/js/typed_arrays.js @@ -0,0 +1,9 @@ +function arrays(arr) { + + var javaIntArray = Java.to(arr, "int[]"); + print(javaIntArray[0]); + print(javaIntArray[1]); + print(javaIntArray[2]); +} + +arrays([100, "1654", true]); diff --git a/core-java-io/src/main/resources/log4j.properties b/core-java-io/src/main/resources/log4j.properties new file mode 100644 index 0000000000..621cf01735 --- /dev/null +++ b/core-java-io/src/main/resources/log4j.properties @@ -0,0 +1,6 @@ +log4j.rootLogger=DEBUG, A1 + +log4j.appender.A1=org.apache.log4j.ConsoleAppender + +log4j.appender.A1.layout=org.apache.log4j.PatternLayout +log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n \ No newline at end of file diff --git a/core-java-io/src/main/resources/log4jstructuraldp.properties b/core-java-io/src/main/resources/log4jstructuraldp.properties new file mode 100644 index 0000000000..5bc2bfe4b9 --- /dev/null +++ b/core-java-io/src/main/resources/log4jstructuraldp.properties @@ -0,0 +1,9 @@ + +# Root logger +log4j.rootLogger=INFO, file, stdout + +# Write to console +log4j.appender.stdout=org.apache.log4j.ConsoleAppender +log4j.appender.stdout.Target=System.out +log4j.appender.stdout.layout=org.apache.log4j.PatternLayout +log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n \ No newline at end of file diff --git a/core-java-io/src/main/resources/logback.xml b/core-java-io/src/main/resources/logback.xml new file mode 100644 index 0000000000..ec0dc2469a --- /dev/null +++ b/core-java-io/src/main/resources/logback.xml @@ -0,0 +1,19 @@ + + + + + web - %date [%thread] %-5level %logger{36} - %message%n + + + + + + + + + + + + + + \ No newline at end of file diff --git a/core-java/src/main/resources/multiCompressed.zip b/core-java-io/src/main/resources/multiCompressed.zip similarity index 100% rename from core-java/src/main/resources/multiCompressed.zip rename to core-java-io/src/main/resources/multiCompressed.zip diff --git a/core-java/src/main/resources/sample.txt b/core-java-io/src/main/resources/targetFile.tmp similarity index 100% rename from core-java/src/main/resources/sample.txt rename to core-java-io/src/main/resources/targetFile.tmp diff --git a/core-java/src/test/java/com/baeldung/copyfiles/FileCopierTest.java b/core-java-io/src/test/java/com/baeldung/copyfiles/FileCopierTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/copyfiles/FileCopierTest.java rename to core-java-io/src/test/java/com/baeldung/copyfiles/FileCopierTest.java diff --git a/core-java/src/test/java/com/baeldung/file/FileOperationsManualTest.java b/core-java-io/src/test/java/com/baeldung/file/FileOperationsManualTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/file/FileOperationsManualTest.java rename to core-java-io/src/test/java/com/baeldung/file/FileOperationsManualTest.java diff --git a/core-java/src/test/java/com/baeldung/file/FilesTest.java b/core-java-io/src/test/java/com/baeldung/file/FilesTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/file/FilesTest.java rename to core-java-io/src/test/java/com/baeldung/file/FilesTest.java diff --git a/core-java/src/test/java/com/baeldung/filesystem/jndi/test/LookupFSJNDIIntegrationTest.java b/core-java-io/src/test/java/com/baeldung/filesystem/jndi/test/LookupFSJNDIIntegrationTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/filesystem/jndi/test/LookupFSJNDIIntegrationTest.java rename to core-java-io/src/test/java/com/baeldung/filesystem/jndi/test/LookupFSJNDIIntegrationTest.java diff --git a/core-java/src/test/java/com/baeldung/java/conversion/IterableStreamConversionUnitTest.java b/core-java-io/src/test/java/com/baeldung/java/conversion/IterableStreamConversionUnitTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/java/conversion/IterableStreamConversionUnitTest.java rename to core-java-io/src/test/java/com/baeldung/java/conversion/IterableStreamConversionUnitTest.java diff --git a/core-java/src/test/java/com/baeldung/java/nio/selector/NioEchoLiveTest.java b/core-java-io/src/test/java/com/baeldung/java/nio/selector/NioEchoLiveTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/java/nio/selector/NioEchoLiveTest.java rename to core-java-io/src/test/java/com/baeldung/java/nio/selector/NioEchoLiveTest.java diff --git a/core-java/src/test/java/com/baeldung/java/nio2/FileIntegrationTest.java b/core-java-io/src/test/java/com/baeldung/java/nio2/FileIntegrationTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/java/nio2/FileIntegrationTest.java rename to core-java-io/src/test/java/com/baeldung/java/nio2/FileIntegrationTest.java diff --git a/core-java/src/test/java/com/baeldung/java/nio2/PathManualTest.java b/core-java-io/src/test/java/com/baeldung/java/nio2/PathManualTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/java/nio2/PathManualTest.java rename to core-java-io/src/test/java/com/baeldung/java/nio2/PathManualTest.java diff --git a/core-java/src/test/java/com/baeldung/java/nio2/README.md b/core-java-io/src/test/java/com/baeldung/java/nio2/README.md similarity index 100% rename from core-java/src/test/java/com/baeldung/java/nio2/README.md rename to core-java-io/src/test/java/com/baeldung/java/nio2/README.md diff --git a/core-java/src/test/java/com/baeldung/java/nio2/async/AsyncEchoClient.java b/core-java-io/src/test/java/com/baeldung/java/nio2/async/AsyncEchoClient.java similarity index 100% rename from core-java/src/test/java/com/baeldung/java/nio2/async/AsyncEchoClient.java rename to core-java-io/src/test/java/com/baeldung/java/nio2/async/AsyncEchoClient.java diff --git a/core-java/src/test/java/com/baeldung/java/nio2/async/AsyncEchoIntegrationTest.java b/core-java-io/src/test/java/com/baeldung/java/nio2/async/AsyncEchoIntegrationTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/java/nio2/async/AsyncEchoIntegrationTest.java rename to core-java-io/src/test/java/com/baeldung/java/nio2/async/AsyncEchoIntegrationTest.java diff --git a/core-java/src/test/java/com/baeldung/java/nio2/async/AsyncEchoServer.java b/core-java-io/src/test/java/com/baeldung/java/nio2/async/AsyncEchoServer.java similarity index 100% rename from core-java/src/test/java/com/baeldung/java/nio2/async/AsyncEchoServer.java rename to core-java-io/src/test/java/com/baeldung/java/nio2/async/AsyncEchoServer.java diff --git a/core-java/src/test/java/com/baeldung/java/nio2/async/AsyncEchoServer2.java b/core-java-io/src/test/java/com/baeldung/java/nio2/async/AsyncEchoServer2.java similarity index 100% rename from core-java/src/test/java/com/baeldung/java/nio2/async/AsyncEchoServer2.java rename to core-java-io/src/test/java/com/baeldung/java/nio2/async/AsyncEchoServer2.java diff --git a/core-java/src/test/java/com/baeldung/java/nio2/async/AsyncFileIntegrationTest.java b/core-java-io/src/test/java/com/baeldung/java/nio2/async/AsyncFileIntegrationTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/java/nio2/async/AsyncFileIntegrationTest.java rename to core-java-io/src/test/java/com/baeldung/java/nio2/async/AsyncFileIntegrationTest.java diff --git a/core-java/src/test/java/com/baeldung/java/nio2/attributes/BasicAttribsIntegrationTest.java b/core-java-io/src/test/java/com/baeldung/java/nio2/attributes/BasicAttribsIntegrationTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/java/nio2/attributes/BasicAttribsIntegrationTest.java rename to core-java-io/src/test/java/com/baeldung/java/nio2/attributes/BasicAttribsIntegrationTest.java diff --git a/core-java/src/test/java/com/baeldung/java8/JavaFileSizeUnitTest.java b/core-java-io/src/test/java/com/baeldung/java8/JavaFileSizeUnitTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/java8/JavaFileSizeUnitTest.java rename to core-java-io/src/test/java/com/baeldung/java8/JavaFileSizeUnitTest.java diff --git a/core-java/src/test/java/com/baeldung/java8/JavaFolderSizeUnitTest.java b/core-java-io/src/test/java/com/baeldung/java8/JavaFolderSizeUnitTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/java8/JavaFolderSizeUnitTest.java rename to core-java-io/src/test/java/com/baeldung/java8/JavaFolderSizeUnitTest.java diff --git a/core-java/src/test/java/com/baeldung/mappedbytebuffer/MappedByteBufferUnitTest.java b/core-java-io/src/test/java/com/baeldung/mappedbytebuffer/MappedByteBufferUnitTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/mappedbytebuffer/MappedByteBufferUnitTest.java rename to core-java-io/src/test/java/com/baeldung/mappedbytebuffer/MappedByteBufferUnitTest.java diff --git a/core-java/src/test/java/com/baeldung/stream/FileCopyTest.java b/core-java-io/src/test/java/com/baeldung/stream/FileCopyTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/stream/FileCopyTest.java rename to core-java-io/src/test/java/com/baeldung/stream/FileCopyTest.java diff --git a/core-java/src/test/java/com/baeldung/stream/StreamIndicesTest.java b/core-java-io/src/test/java/com/baeldung/stream/StreamIndicesTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/stream/StreamIndicesTest.java rename to core-java-io/src/test/java/com/baeldung/stream/StreamIndicesTest.java diff --git a/core-java/src/test/java/com/baeldung/string/StringToCharStreamUnitTest.java b/core-java-io/src/test/java/com/baeldung/string/StringToCharStreamUnitTest.java similarity index 100% rename from core-java/src/test/java/com/baeldung/string/StringToCharStreamUnitTest.java rename to core-java-io/src/test/java/com/baeldung/string/StringToCharStreamUnitTest.java diff --git a/core-java/src/test/java/org/baeldung/core/exceptions/FileNotFoundExceptionUnitTest.java b/core-java-io/src/test/java/org/baeldung/core/exceptions/FileNotFoundExceptionUnitTest.java similarity index 100% rename from core-java/src/test/java/org/baeldung/core/exceptions/FileNotFoundExceptionUnitTest.java rename to core-java-io/src/test/java/org/baeldung/core/exceptions/FileNotFoundExceptionUnitTest.java diff --git a/core-java/src/test/java/org/baeldung/java/io/JavaFilePathUnitTest.java b/core-java-io/src/test/java/org/baeldung/java/io/JavaFilePathUnitTest.java similarity index 100% rename from core-java/src/test/java/org/baeldung/java/io/JavaFilePathUnitTest.java rename to core-java-io/src/test/java/org/baeldung/java/io/JavaFilePathUnitTest.java diff --git a/core-java/src/test/java/org/baeldung/java/io/JavaFileUnitTest.java b/core-java-io/src/test/java/org/baeldung/java/io/JavaFileUnitTest.java similarity index 100% rename from core-java/src/test/java/org/baeldung/java/io/JavaFileUnitTest.java rename to core-java-io/src/test/java/org/baeldung/java/io/JavaFileUnitTest.java diff --git a/core-java/src/test/java/org/baeldung/java/io/JavaInputStreamToXUnitTest.java b/core-java-io/src/test/java/org/baeldung/java/io/JavaInputStreamToXUnitTest.java similarity index 100% rename from core-java/src/test/java/org/baeldung/java/io/JavaInputStreamToXUnitTest.java rename to core-java-io/src/test/java/org/baeldung/java/io/JavaInputStreamToXUnitTest.java diff --git a/core-java/src/test/java/org/baeldung/java/io/JavaReadFromFileUnitTest.java b/core-java-io/src/test/java/org/baeldung/java/io/JavaReadFromFileUnitTest.java similarity index 100% rename from core-java/src/test/java/org/baeldung/java/io/JavaReadFromFileUnitTest.java rename to core-java-io/src/test/java/org/baeldung/java/io/JavaReadFromFileUnitTest.java diff --git a/core-java/src/test/java/org/baeldung/java/io/JavaReaderToXUnitTest.java b/core-java-io/src/test/java/org/baeldung/java/io/JavaReaderToXUnitTest.java similarity index 100% rename from core-java/src/test/java/org/baeldung/java/io/JavaReaderToXUnitTest.java rename to core-java-io/src/test/java/org/baeldung/java/io/JavaReaderToXUnitTest.java diff --git a/core-java/src/test/java/org/baeldung/java/io/JavaScannerUnitTest.java b/core-java-io/src/test/java/org/baeldung/java/io/JavaScannerUnitTest.java similarity index 100% rename from core-java/src/test/java/org/baeldung/java/io/JavaScannerUnitTest.java rename to core-java-io/src/test/java/org/baeldung/java/io/JavaScannerUnitTest.java diff --git a/core-java/src/test/java/org/baeldung/java/io/JavaWriteToFileUnitTest.java b/core-java-io/src/test/java/org/baeldung/java/io/JavaWriteToFileUnitTest.java similarity index 100% rename from core-java/src/test/java/org/baeldung/java/io/JavaWriteToFileUnitTest.java rename to core-java-io/src/test/java/org/baeldung/java/io/JavaWriteToFileUnitTest.java diff --git a/core-java/src/test/java/org/baeldung/java/io/JavaXToByteArrayUnitTest.java b/core-java-io/src/test/java/org/baeldung/java/io/JavaXToByteArrayUnitTest.java similarity index 100% rename from core-java/src/test/java/org/baeldung/java/io/JavaXToByteArrayUnitTest.java rename to core-java-io/src/test/java/org/baeldung/java/io/JavaXToByteArrayUnitTest.java diff --git a/core-java/src/test/java/org/baeldung/java/io/JavaXToInputStreamUnitTest.java b/core-java-io/src/test/java/org/baeldung/java/io/JavaXToInputStreamUnitTest.java similarity index 100% rename from core-java/src/test/java/org/baeldung/java/io/JavaXToInputStreamUnitTest.java rename to core-java-io/src/test/java/org/baeldung/java/io/JavaXToInputStreamUnitTest.java diff --git a/core-java/src/test/java/org/baeldung/java/io/JavaXToReaderUnitTest.java b/core-java-io/src/test/java/org/baeldung/java/io/JavaXToReaderUnitTest.java similarity index 100% rename from core-java/src/test/java/org/baeldung/java/io/JavaXToReaderUnitTest.java rename to core-java-io/src/test/java/org/baeldung/java/io/JavaXToReaderUnitTest.java diff --git a/core-java/src/test/java/org/baeldung/java/io/JavaXToWriterUnitTest.java b/core-java-io/src/test/java/org/baeldung/java/io/JavaXToWriterUnitTest.java similarity index 100% rename from core-java/src/test/java/org/baeldung/java/io/JavaXToWriterUnitTest.java rename to core-java-io/src/test/java/org/baeldung/java/io/JavaXToWriterUnitTest.java diff --git a/core-java-io/src/test/resources/.gitignore b/core-java-io/src/test/resources/.gitignore new file mode 100644 index 0000000000..83c05e60c8 --- /dev/null +++ b/core-java-io/src/test/resources/.gitignore @@ -0,0 +1,13 @@ +*.class + +#folders# +/target +/neoDb* +/data +/src/main/webapp/WEB-INF/classes +*/META-INF/* + +# Packaged files # +*.jar +*.war +*.ear \ No newline at end of file diff --git a/core-java-io/src/test/resources/configuration.properties b/core-java-io/src/test/resources/configuration.properties new file mode 100644 index 0000000000..338be84946 --- /dev/null +++ b/core-java-io/src/test/resources/configuration.properties @@ -0,0 +1,4 @@ +# this is sample property file for PropertiesLoaderTest configuration needs +! this is also a comment +sampleConfEntry = sample String value +colonSeparatedEntry : colon separated entry value diff --git a/core-java-io/src/test/resources/dictionary.in b/core-java-io/src/test/resources/dictionary.in new file mode 100644 index 0000000000..0cc22a20b0 --- /dev/null +++ b/core-java-io/src/test/resources/dictionary.in @@ -0,0 +1,178691 @@ +AA +AAH +AAHED +AAHING +AAHS +AAL +AALII +AALIIS +AALS +AARDVARK +AARDVARKS +AARDWOLF +AARDWOLVES +AARGH +AARRGH +AARRGHH +AAS +AASVOGEL +AASVOGELS +AB +ABA +ABACA +ABACAS +ABACI +ABACK +ABACTERIAL +ABACUS +ABACUSES +ABAFT +ABAKA +ABAKAS +ABALONE +ABALONES +ABAMP +ABAMPERE +ABAMPERES +ABAMPS +ABANDON +ABANDONED +ABANDONER +ABANDONERS +ABANDONING +ABANDONMENT +ABANDONMENTS +ABANDONS +ABAPICAL +ABAS +ABASE +ABASED +ABASEDLY +ABASEMENT +ABASEMENTS +ABASER +ABASERS +ABASES +ABASH +ABASHED +ABASHEDLY +ABASHES +ABASHING +ABASHMENT +ABASHMENTS +ABASIA +ABASIAS +ABASING +ABATABLE +ABATE +ABATED +ABATEMENT +ABATEMENTS +ABATER +ABATERS +ABATES +ABATING +ABATIS +ABATISES +ABATOR +ABATORS +ABATTIS +ABATTISES +ABATTOIR +ABATTOIRS +ABAXIAL +ABAXILE +ABAYA +ABAYAS +ABBA +ABBACIES +ABBACY +ABBAS +ABBATIAL +ABBE +ABBES +ABBESS +ABBESSES +ABBEY +ABBEYS +ABBOT +ABBOTCIES +ABBOTCY +ABBOTS +ABBOTSHIP +ABBOTSHIPS +ABBREVIATE +ABBREVIATED +ABBREVIATES +ABBREVIATING +ABBREVIATION +ABBREVIATIONS +ABBREVIATOR +ABBREVIATORS +ABCOULOMB +ABCOULOMBS +ABDICABLE +ABDICATE +ABDICATED +ABDICATES +ABDICATING +ABDICATION +ABDICATIONS +ABDICATOR +ABDICATORS +ABDOMEN +ABDOMENS +ABDOMINA +ABDOMINAL +ABDOMINALLY +ABDOMINALS +ABDUCE +ABDUCED +ABDUCENS +ABDUCENT +ABDUCENTES +ABDUCES +ABDUCING +ABDUCT +ABDUCTED +ABDUCTEE +ABDUCTEES +ABDUCTING +ABDUCTION +ABDUCTIONS +ABDUCTOR +ABDUCTORES +ABDUCTORS +ABDUCTS +ABEAM +ABECEDARIAN +ABECEDARIANS +ABED +ABEGGING +ABELE +ABELES +ABELIA +ABELIAN +ABELIAS +ABELMOSK +ABELMOSKS +ABERRANCE +ABERRANCES +ABERRANCIES +ABERRANCY +ABERRANT +ABERRANTLY +ABERRANTS +ABERRATED +ABERRATION +ABERRATIONAL +ABERRATIONS +ABET +ABETMENT +ABETMENTS +ABETS +ABETTAL +ABETTALS +ABETTED +ABETTER +ABETTERS +ABETTING +ABETTOR +ABETTORS +ABEYANCE +ABEYANCES +ABEYANCIES +ABEYANCY +ABEYANT +ABFARAD +ABFARADS +ABHENRIES +ABHENRY +ABHENRYS +ABHOR +ABHORRED +ABHORRENCE +ABHORRENCES +ABHORRENT +ABHORRENTLY +ABHORRER +ABHORRERS +ABHORRING +ABHORS +ABIDANCE +ABIDANCES +ABIDE +ABIDED +ABIDER +ABIDERS +ABIDES +ABIDING +ABIDINGLY +ABIGAIL +ABIGAILS +ABILITIES +ABILITY +ABIOGENESES +ABIOGENESIS +ABIOGENIC +ABIOGENICALLY +ABIOGENIST +ABIOGENISTS +ABIOLOGICAL +ABIOSES +ABIOSIS +ABIOTIC +ABIOTICALLY +ABJECT +ABJECTION +ABJECTIONS +ABJECTLY +ABJECTNESS +ABJECTNESSES +ABJURATION +ABJURATIONS +ABJURE +ABJURED +ABJURER +ABJURERS +ABJURES +ABJURING +ABLATE +ABLATED +ABLATES +ABLATING +ABLATION +ABLATIONS +ABLATIVE +ABLATIVELY +ABLATIVES +ABLATOR +ABLATORS +ABLAUT +ABLAUTS +ABLAZE +ABLE +ABLED +ABLEGATE +ABLEGATES +ABLEISM +ABLEISMS +ABLEIST +ABLEISTS +ABLER +ABLES +ABLEST +ABLINGS +ABLINS +ABLOOM +ABLUENT +ABLUENTS +ABLUSH +ABLUTED +ABLUTION +ABLUTIONARY +ABLUTIONS +ABLY +ABMHO +ABMHOS +ABNEGATE +ABNEGATED +ABNEGATES +ABNEGATING +ABNEGATION +ABNEGATIONS +ABNEGATOR +ABNEGATORS +ABNORMAL +ABNORMALITIES +ABNORMALITY +ABNORMALLY +ABNORMALS +ABNORMITIES +ABNORMITY +ABO +ABOARD +ABODE +ABODED +ABODES +ABODING +ABOHM +ABOHMS +ABOIDEAU +ABOIDEAUS +ABOIDEAUX +ABOIL +ABOITEAU +ABOITEAUS +ABOITEAUX +ABOLISH +ABOLISHABLE +ABOLISHED +ABOLISHER +ABOLISHERS +ABOLISHES +ABOLISHING +ABOLISHMENT +ABOLISHMENTS +ABOLITION +ABOLITIONARY +ABOLITIONISM +ABOLITIONISMS +ABOLITIONIST +ABOLITIONISTS +ABOLITIONS +ABOLLA +ABOLLAE +ABOMA +ABOMAS +ABOMASA +ABOMASAL +ABOMASI +ABOMASUM +ABOMASUS +ABOMINABLE +ABOMINABLY +ABOMINATE +ABOMINATED +ABOMINATES +ABOMINATING +ABOMINATION +ABOMINATIONS +ABOMINATOR +ABOMINATORS +ABOON +ABORAL +ABORALLY +ABORIGINAL +ABORIGINALLY +ABORIGINALS +ABORIGINE +ABORIGINES +ABORNING +ABORT +ABORTED +ABORTER +ABORTERS +ABORTIFACIENT +ABORTIFACIENTS +ABORTING +ABORTION +ABORTIONIST +ABORTIONISTS +ABORTIONS +ABORTIVE +ABORTIVELY +ABORTIVENESS +ABORTIVENESSES +ABORTS +ABORTUS +ABORTUSES +ABOS +ABOUGHT +ABOULIA +ABOULIAS +ABOULIC +ABOUND +ABOUNDED +ABOUNDING +ABOUNDS +ABOUT +ABOVE +ABOVEBOARD +ABOVEGROUND +ABOVES +ABRACADABRA +ABRACADABRAS +ABRACHIA +ABRACHIAS +ABRADABLE +ABRADANT +ABRADANTS +ABRADE +ABRADED +ABRADER +ABRADERS +ABRADES +ABRADING +ABRASION +ABRASIONS +ABRASIVE +ABRASIVELY +ABRASIVENESS +ABRASIVENESSES +ABRASIVES +ABREACT +ABREACTED +ABREACTING +ABREACTION +ABREACTIONS +ABREACTS +ABREAST +ABRI +ABRIDGE +ABRIDGED +ABRIDGEMENT +ABRIDGEMENTS +ABRIDGER +ABRIDGERS +ABRIDGES +ABRIDGING +ABRIDGMENT +ABRIDGMENTS +ABRIS +ABROACH +ABROAD +ABROGABLE +ABROGATE +ABROGATED +ABROGATES +ABROGATING +ABROGATION +ABROGATIONS +ABROGATOR +ABROGATORS +ABROSIA +ABROSIAS +ABRUPT +ABRUPTER +ABRUPTEST +ABRUPTION +ABRUPTIONS +ABRUPTLY +ABRUPTNESS +ABRUPTNESSES +ABS +ABSCESS +ABSCESSED +ABSCESSES +ABSCESSING +ABSCISE +ABSCISED +ABSCISES +ABSCISIN +ABSCISING +ABSCISINS +ABSCISSA +ABSCISSAE +ABSCISSAS +ABSCISSION +ABSCISSIONS +ABSCOND +ABSCONDED +ABSCONDER +ABSCONDERS +ABSCONDING +ABSCONDS +ABSEIL +ABSEILED +ABSEILING +ABSEILS +ABSENCE +ABSENCES +ABSENT +ABSENTED +ABSENTEE +ABSENTEEISM +ABSENTEEISMS +ABSENTEES +ABSENTER +ABSENTERS +ABSENTING +ABSENTLY +ABSENTMINDED +ABSENTMINDEDLY +ABSENTS +ABSINTH +ABSINTHE +ABSINTHES +ABSINTHS +ABSOLUTE +ABSOLUTELY +ABSOLUTENESS +ABSOLUTENESSES +ABSOLUTER +ABSOLUTES +ABSOLUTEST +ABSOLUTION +ABSOLUTIONS +ABSOLUTISM +ABSOLUTISMS +ABSOLUTIST +ABSOLUTISTIC +ABSOLUTISTS +ABSOLUTIVE +ABSOLUTIZE +ABSOLUTIZED +ABSOLUTIZES +ABSOLUTIZING +ABSOLVE +ABSOLVED +ABSOLVENT +ABSOLVENTS +ABSOLVER +ABSOLVERS +ABSOLVES +ABSOLVING +ABSONANT +ABSORB +ABSORBABILITIES +ABSORBABILITY +ABSORBABLE +ABSORBANCE +ABSORBANCES +ABSORBANCIES +ABSORBANCY +ABSORBANT +ABSORBANTS +ABSORBED +ABSORBENCIES +ABSORBENCY +ABSORBENT +ABSORBENTS +ABSORBER +ABSORBERS +ABSORBING +ABSORBINGLY +ABSORBS +ABSORPTANCE +ABSORPTANCES +ABSORPTION +ABSORPTIONS +ABSORPTIVE +ABSORPTIVITIES +ABSORPTIVITY +ABSTAIN +ABSTAINED +ABSTAINER +ABSTAINERS +ABSTAINING +ABSTAINS +ABSTEMIOUS +ABSTEMIOUSLY +ABSTEMIOUSNESS +ABSTENTION +ABSTENTIONS +ABSTENTIOUS +ABSTERGE +ABSTERGED +ABSTERGES +ABSTERGING +ABSTINENCE +ABSTINENCES +ABSTINENT +ABSTINENTLY +ABSTRACT +ABSTRACTABLE +ABSTRACTED +ABSTRACTEDLY +ABSTRACTEDNESS +ABSTRACTER +ABSTRACTERS +ABSTRACTEST +ABSTRACTING +ABSTRACTION +ABSTRACTIONAL +ABSTRACTIONISM +ABSTRACTIONISMS +ABSTRACTIONIST +ABSTRACTIONISTS +ABSTRACTIONS +ABSTRACTIVE +ABSTRACTLY +ABSTRACTNESS +ABSTRACTNESSES +ABSTRACTOR +ABSTRACTORS +ABSTRACTS +ABSTRICT +ABSTRICTED +ABSTRICTING +ABSTRICTS +ABSTRUSE +ABSTRUSELY +ABSTRUSENESS +ABSTRUSENESSES +ABSTRUSER +ABSTRUSEST +ABSTRUSITIES +ABSTRUSITY +ABSURD +ABSURDER +ABSURDEST +ABSURDISM +ABSURDISMS +ABSURDIST +ABSURDISTS +ABSURDITIES +ABSURDITY +ABSURDLY +ABSURDNESS +ABSURDNESSES +ABSURDS +ABUBBLE +ABUILDING +ABULIA +ABULIAS +ABULIC +ABUNDANCE +ABUNDANCES +ABUNDANT +ABUNDANTLY +ABUSABLE +ABUSE +ABUSED +ABUSER +ABUSERS +ABUSES +ABUSING +ABUSIVE +ABUSIVELY +ABUSIVENESS +ABUSIVENESSES +ABUT +ABUTILON +ABUTILONS +ABUTMENT +ABUTMENTS +ABUTS +ABUTTAL +ABUTTALS +ABUTTED +ABUTTER +ABUTTERS +ABUTTING +ABUZZ +ABVOLT +ABVOLTS +ABWATT +ABWATTS +ABY +ABYE +ABYES +ABYING +ABYS +ABYSM +ABYSMAL +ABYSMALLY +ABYSMS +ABYSS +ABYSSAL +ABYSSES +ACACIA +ACACIAS +ACADEME +ACADEMES +ACADEMIA +ACADEMIAS +ACADEMIC +ACADEMICAL +ACADEMICALLY +ACADEMICIAN +ACADEMICIANS +ACADEMICISM +ACADEMICISMS +ACADEMICS +ACADEMIES +ACADEMISM +ACADEMISMS +ACADEMY +ACAJOU +ACAJOUS +ACALEPH +ACALEPHAE +ACALEPHE +ACALEPHES +ACALEPHS +ACANTHA +ACANTHAE +ACANTHI +ACANTHINE +ACANTHOCEPHALAN +ACANTHOID +ACANTHOUS +ACANTHUS +ACANTHUSES +ACAPNIA +ACAPNIAS +ACARBOSE +ACARBOSES +ACARI +ACARIASES +ACARIASIS +ACARICIDAL +ACARICIDE +ACARICIDES +ACARID +ACARIDAN +ACARIDANS +ACARIDS +ACARINE +ACARINES +ACAROID +ACAROLOGIES +ACAROLOGY +ACARPOUS +ACARUS +ACATALECTIC +ACATALECTICS +ACAUDAL +ACAUDATE +ACAULESCENT +ACAULINE +ACAULOSE +ACAULOUS +ACCEDE +ACCEDED +ACCEDENCE +ACCEDENCES +ACCEDER +ACCEDERS +ACCEDES +ACCEDING +ACCELERANDO +ACCELERANDOS +ACCELERANT +ACCELERANTS +ACCELERATE +ACCELERATED +ACCELERATES +ACCELERATING +ACCELERATINGLY +ACCELERATION +ACCELERATIONS +ACCELERATIVE +ACCELERATOR +ACCELERATORS +ACCELEROMETER +ACCELEROMETERS +ACCENT +ACCENTED +ACCENTING +ACCENTLESS +ACCENTOR +ACCENTORS +ACCENTS +ACCENTUAL +ACCENTUALLY +ACCENTUATE +ACCENTUATED +ACCENTUATES +ACCENTUATING +ACCENTUATION +ACCENTUATIONS +ACCEPT +ACCEPTABILITIES +ACCEPTABILITY +ACCEPTABLE +ACCEPTABLENESS +ACCEPTABLY +ACCEPTANCE +ACCEPTANCES +ACCEPTANT +ACCEPTATION +ACCEPTATIONS +ACCEPTED +ACCEPTEDLY +ACCEPTEE +ACCEPTEES +ACCEPTER +ACCEPTERS +ACCEPTING +ACCEPTINGLY +ACCEPTINGNESS +ACCEPTINGNESSES +ACCEPTIVE +ACCEPTOR +ACCEPTORS +ACCEPTS +ACCESS +ACCESSARIES +ACCESSARY +ACCESSED +ACCESSES +ACCESSIBILITIES +ACCESSIBILITY +ACCESSIBLE +ACCESSIBLENESS +ACCESSIBLY +ACCESSING +ACCESSION +ACCESSIONAL +ACCESSIONED +ACCESSIONING +ACCESSIONS +ACCESSORIAL +ACCESSORIES +ACCESSORISE +ACCESSORISED +ACCESSORISES +ACCESSORISING +ACCESSORIZE +ACCESSORIZED +ACCESSORIZES +ACCESSORIZING +ACCESSORY +ACCIACCATURA +ACCIACCATURAS +ACCIDENCE +ACCIDENCES +ACCIDENT +ACCIDENTAL +ACCIDENTALLY +ACCIDENTALNESS +ACCIDENTALS +ACCIDENTLY +ACCIDENTS +ACCIDIA +ACCIDIAS +ACCIDIE +ACCIDIES +ACCIPITER +ACCIPITERS +ACCIPITRINE +ACCIPITRINES +ACCLAIM +ACCLAIMED +ACCLAIMER +ACCLAIMERS +ACCLAIMING +ACCLAIMS +ACCLAMATION +ACCLAMATIONS +ACCLIMATE +ACCLIMATED +ACCLIMATES +ACCLIMATING +ACCLIMATION +ACCLIMATIONS +ACCLIMATISE +ACCLIMATISED +ACCLIMATISES +ACCLIMATISING +ACCLIMATIZATION +ACCLIMATIZE +ACCLIMATIZED +ACCLIMATIZER +ACCLIMATIZERS +ACCLIMATIZES +ACCLIMATIZING +ACCLIVITIES +ACCLIVITY +ACCLIVOUS +ACCOLADE +ACCOLADED +ACCOLADES +ACCOLADING +ACCOMMODATE +ACCOMMODATED +ACCOMMODATES +ACCOMMODATING +ACCOMMODATINGLY +ACCOMMODATION +ACCOMMODATIONAL +ACCOMMODATIONS +ACCOMMODATIVE +ACCOMMODATOR +ACCOMMODATORS +ACCOMPANIED +ACCOMPANIES +ACCOMPANIMENT +ACCOMPANIMENTS +ACCOMPANIST +ACCOMPANISTS +ACCOMPANY +ACCOMPANYING +ACCOMPLICE +ACCOMPLICES +ACCOMPLISH +ACCOMPLISHABLE +ACCOMPLISHED +ACCOMPLISHER +ACCOMPLISHERS +ACCOMPLISHES +ACCOMPLISHING +ACCOMPLISHMENT +ACCOMPLISHMENTS +ACCORD +ACCORDANCE +ACCORDANCES +ACCORDANT +ACCORDANTLY +ACCORDED +ACCORDER +ACCORDERS +ACCORDING +ACCORDINGLY +ACCORDION +ACCORDIONIST +ACCORDIONISTS +ACCORDIONS +ACCORDS +ACCOST +ACCOSTED +ACCOSTING +ACCOSTS +ACCOUCHEMENT +ACCOUCHEMENTS +ACCOUCHEUR +ACCOUCHEURS +ACCOUNT +ACCOUNTABILITY +ACCOUNTABLE +ACCOUNTABLENESS +ACCOUNTABLY +ACCOUNTANCIES +ACCOUNTANCY +ACCOUNTANT +ACCOUNTANTS +ACCOUNTANTSHIP +ACCOUNTANTSHIPS +ACCOUNTED +ACCOUNTING +ACCOUNTINGS +ACCOUNTS +ACCOUTER +ACCOUTERED +ACCOUTERING +ACCOUTERMENT +ACCOUTERMENTS +ACCOUTERS +ACCOUTRE +ACCOUTRED +ACCOUTREMENT +ACCOUTREMENTS +ACCOUTRES +ACCOUTRING +ACCREDIT +ACCREDITABLE +ACCREDITATION +ACCREDITATIONS +ACCREDITED +ACCREDITING +ACCREDITS +ACCRETE +ACCRETED +ACCRETES +ACCRETING +ACCRETION +ACCRETIONARY +ACCRETIONS +ACCRETIVE +ACCRUABLE +ACCRUAL +ACCRUALS +ACCRUE +ACCRUED +ACCRUEMENT +ACCRUEMENTS +ACCRUES +ACCRUING +ACCULTURATE +ACCULTURATED +ACCULTURATES +ACCULTURATING +ACCULTURATION +ACCULTURATIONAL +ACCULTURATIONS +ACCULTURATIVE +ACCUMBENT +ACCUMULATE +ACCUMULATED +ACCUMULATES +ACCUMULATING +ACCUMULATION +ACCUMULATIONS +ACCUMULATIVE +ACCUMULATIVELY +ACCUMULATOR +ACCUMULATORS +ACCURACIES +ACCURACY +ACCURATE +ACCURATELY +ACCURATENESS +ACCURATENESSES +ACCURSED +ACCURSEDLY +ACCURSEDNESS +ACCURSEDNESSES +ACCURST +ACCUSABLE +ACCUSABLY +ACCUSAL +ACCUSALS +ACCUSANT +ACCUSANTS +ACCUSATION +ACCUSATIONS +ACCUSATIVE +ACCUSATIVES +ACCUSATORY +ACCUSE +ACCUSED +ACCUSER +ACCUSERS +ACCUSES +ACCUSING +ACCUSINGLY +ACCUSTOM +ACCUSTOMATION +ACCUSTOMATIONS +ACCUSTOMED +ACCUSTOMEDNESS +ACCUSTOMING +ACCUSTOMS +ACE +ACED +ACEDIA +ACEDIAS +ACELDAMA +ACELDAMAS +ACELLULAR +ACENTRIC +ACEPHALIC +ACEPHALOUS +ACEQUIA +ACEQUIAS +ACERATE +ACERATED +ACERB +ACERBATE +ACERBATED +ACERBATES +ACERBATING +ACERBER +ACERBEST +ACERBIC +ACERBICALLY +ACERBITIES +ACERBITY +ACEROLA +ACEROLAS +ACEROSE +ACEROUS +ACERVATE +ACERVULI +ACERVULUS +ACES +ACESCENT +ACESCENTS +ACETA +ACETABULA +ACETABULAR +ACETABULUM +ACETABULUMS +ACETAL +ACETALDEHYDE +ACETALDEHYDES +ACETALS +ACETAMID +ACETAMIDE +ACETAMIDES +ACETAMIDS +ACETAMINOPHEN +ACETAMINOPHENS +ACETANILID +ACETANILIDE +ACETANILIDES +ACETANILIDS +ACETATE +ACETATED +ACETATES +ACETAZOLAMIDE +ACETAZOLAMIDES +ACETIC +ACETIFICATION +ACETIFICATIONS +ACETIFIED +ACETIFIER +ACETIFIERS +ACETIFIES +ACETIFY +ACETIFYING +ACETIN +ACETINS +ACETONE +ACETONES +ACETONIC +ACETONITRILE +ACETONITRILES +ACETOPHENETIDIN +ACETOSE +ACETOUS +ACETOXYL +ACETOXYLS +ACETUM +ACETYL +ACETYLATE +ACETYLATED +ACETYLATES +ACETYLATING +ACETYLATION +ACETYLATIONS +ACETYLATIVE +ACETYLCHOLINE +ACETYLCHOLINES +ACETYLENE +ACETYLENES +ACETYLENIC +ACETYLIC +ACETYLS +ACHALASIA +ACHALASIAS +ACHE +ACHED +ACHENE +ACHENES +ACHENIAL +ACHES +ACHIER +ACHIEST +ACHIEVABLE +ACHIEVE +ACHIEVED +ACHIEVEMENT +ACHIEVEMENTS +ACHIEVER +ACHIEVERS +ACHIEVES +ACHIEVING +ACHILLEA +ACHILLEAS +ACHINESS +ACHINESSES +ACHING +ACHINGLY +ACHIOTE +ACHIOTES +ACHIRAL +ACHLORHYDRIA +ACHLORHYDRIAS +ACHLORHYDRIC +ACHOLIA +ACHOLIAS +ACHONDRITE +ACHONDRITES +ACHONDRITIC +ACHONDROPLASIA +ACHONDROPLASIAS +ACHONDROPLASTIC +ACHOO +ACHROMAT +ACHROMATIC +ACHROMATICALLY +ACHROMATISM +ACHROMATISMS +ACHROMATIZE +ACHROMATIZED +ACHROMATIZES +ACHROMATIZING +ACHROMATS +ACHROMIC +ACHROMOUS +ACHY +ACICULA +ACICULAE +ACICULAR +ACICULAS +ACICULATE +ACICULUM +ACICULUMS +ACID +ACIDEMIA +ACIDEMIAS +ACIDHEAD +ACIDHEADS +ACIDIC +ACIDIFICATION +ACIDIFICATIONS +ACIDIFIED +ACIDIFIER +ACIDIFIERS +ACIDIFIES +ACIDIFY +ACIDIFYING +ACIDIMETER +ACIDIMETERS +ACIDIMETRIC +ACIDIMETRIES +ACIDIMETRY +ACIDITIES +ACIDITY +ACIDLY +ACIDNESS +ACIDNESSES +ACIDOPHIL +ACIDOPHILE +ACIDOPHILES +ACIDOPHILIC +ACIDOPHILS +ACIDOSES +ACIDOSIS +ACIDOTIC +ACIDS +ACIDULATE +ACIDULATED +ACIDULATES +ACIDULATING +ACIDULATION +ACIDULATIONS +ACIDULENT +ACIDULOUS +ACIDURIA +ACIDURIAS +ACIDY +ACIERATE +ACIERATED +ACIERATES +ACIERATING +ACIFORM +ACINAR +ACING +ACINI +ACINIC +ACINIFORM +ACINOSE +ACINOUS +ACINUS +ACKEE +ACKEES +ACKNOWLEDGE +ACKNOWLEDGED +ACKNOWLEDGEDLY +ACKNOWLEDGEMENT +ACKNOWLEDGES +ACKNOWLEDGING +ACKNOWLEDGMENT +ACKNOWLEDGMENTS +ACLINIC +ACMATIC +ACME +ACMES +ACMIC +ACNE +ACNED +ACNES +ACNODE +ACNODES +ACOCK +ACOELOMATE +ACOELOMATES +ACOELOUS +ACOLD +ACOLYTE +ACOLYTES +ACONITE +ACONITES +ACONITIC +ACONITUM +ACONITUMS +ACORN +ACORNED +ACORNS +ACOUSTIC +ACOUSTICAL +ACOUSTICALLY +ACOUSTICIAN +ACOUSTICIANS +ACOUSTICS +ACQUAINT +ACQUAINTANCE +ACQUAINTANCES +ACQUAINTED +ACQUAINTING +ACQUAINTS +ACQUEST +ACQUESTS +ACQUIESCE +ACQUIESCED +ACQUIESCENCE +ACQUIESCENCES +ACQUIESCENT +ACQUIESCENTLY +ACQUIESCES +ACQUIESCING +ACQUIRABLE +ACQUIRE +ACQUIRED +ACQUIREE +ACQUIREES +ACQUIREMENT +ACQUIREMENTS +ACQUIRER +ACQUIRERS +ACQUIRES +ACQUIRING +ACQUISITION +ACQUISITIONAL +ACQUISITIONS +ACQUISITIVE +ACQUISITIVELY +ACQUISITIVENESS +ACQUISITOR +ACQUISITORS +ACQUIT +ACQUITS +ACQUITTAL +ACQUITTALS +ACQUITTANCE +ACQUITTANCES +ACQUITTED +ACQUITTER +ACQUITTERS +ACQUITTING +ACRASIA +ACRASIAS +ACRASIN +ACRASINS +ACRE +ACREAGE +ACREAGES +ACRED +ACRES +ACRID +ACRIDER +ACRIDEST +ACRIDINE +ACRIDINES +ACRIDITIES +ACRIDITY +ACRIDLY +ACRIDNESS +ACRIDNESSES +ACRIFLAVINE +ACRIFLAVINES +ACRIMONIES +ACRIMONIOUS +ACRIMONIOUSLY +ACRIMONIOUSNESS +ACRIMONY +ACRITARCH +ACRITARCHS +ACRITICAL +ACROBAT +ACROBATIC +ACROBATICALLY +ACROBATICS +ACROBATS +ACROCENTRIC +ACROCENTRICS +ACRODONT +ACRODONTS +ACROGEN +ACROGENIC +ACROGENS +ACROLECT +ACROLECTS +ACROLEIN +ACROLEINS +ACROLITH +ACROLITHS +ACROMEGALIC +ACROMEGALICS +ACROMEGALIES +ACROMEGALY +ACROMIA +ACROMIAL +ACROMION +ACRONIC +ACRONICAL +ACRONYCAL +ACRONYM +ACRONYMIC +ACRONYMICALLY +ACRONYMS +ACROPETAL +ACROPETALLY +ACROPHOBE +ACROPHOBES +ACROPHOBIA +ACROPHOBIAS +ACROPOLIS +ACROPOLISES +ACROSOMAL +ACROSOME +ACROSOMES +ACROSPIRE +ACROSPIRES +ACROSS +ACROSTIC +ACROSTICAL +ACROSTICALLY +ACROSTICS +ACROTIC +ACROTISM +ACROTISMS +ACRYLAMIDE +ACRYLAMIDES +ACRYLATE +ACRYLATES +ACRYLIC +ACRYLICS +ACRYLONITRILE +ACRYLONITRILES +ACT +ACTA +ACTABILITIES +ACTABILITY +ACTABLE +ACTED +ACTIN +ACTINAL +ACTINALLY +ACTING +ACTINGS +ACTINIA +ACTINIAE +ACTINIAN +ACTINIANS +ACTINIAS +ACTINIC +ACTINICALLY +ACTINIDE +ACTINIDES +ACTINISM +ACTINISMS +ACTINIUM +ACTINIUMS +ACTINOID +ACTINOIDS +ACTINOLITE +ACTINOLITES +ACTINOMETER +ACTINOMETERS +ACTINOMETRIC +ACTINOMETRIES +ACTINOMETRY +ACTINOMORPHIC +ACTINOMORPHIES +ACTINOMORPHY +ACTINOMYCES +ACTINOMYCETE +ACTINOMYCETES +ACTINOMYCETOUS +ACTINOMYCIN +ACTINOMYCINS +ACTINOMYCOSES +ACTINOMYCOSIS +ACTINOMYCOTIC +ACTINON +ACTINONS +ACTINS +ACTION +ACTIONABLE +ACTIONABLY +ACTIONER +ACTIONERS +ACTIONLESS +ACTIONS +ACTIVATE +ACTIVATED +ACTIVATES +ACTIVATING +ACTIVATION +ACTIVATIONS +ACTIVATOR +ACTIVATORS +ACTIVE +ACTIVELY +ACTIVENESS +ACTIVENESSES +ACTIVES +ACTIVISM +ACTIVISMS +ACTIVIST +ACTIVISTIC +ACTIVISTS +ACTIVITIES +ACTIVITY +ACTIVIZE +ACTIVIZED +ACTIVIZES +ACTIVIZING +ACTOMYOSIN +ACTOMYOSINS +ACTOR +ACTORISH +ACTORLY +ACTORS +ACTRESS +ACTRESSES +ACTRESSY +ACTS +ACTUAL +ACTUALITIES +ACTUALITY +ACTUALIZATION +ACTUALIZATIONS +ACTUALIZE +ACTUALIZED +ACTUALIZES +ACTUALIZING +ACTUALLY +ACTUARIAL +ACTUARIALLY +ACTUARIES +ACTUARY +ACTUATE +ACTUATED +ACTUATES +ACTUATING +ACTUATION +ACTUATIONS +ACTUATOR +ACTUATORS +ACUATE +ACUITIES +ACUITY +ACULEATE +ACULEATED +ACULEI +ACULEUS +ACUMEN +ACUMENS +ACUMINATE +ACUMINATED +ACUMINATES +ACUMINATING +ACUMINOUS +ACUPRESSURE +ACUPRESSURES +ACUPUNCTURE +ACUPUNCTURES +ACUPUNCTURIST +ACUPUNCTURISTS +ACUTANCE +ACUTANCES +ACUTE +ACUTELY +ACUTENESS +ACUTENESSES +ACUTER +ACUTES +ACUTEST +ACYCLIC +ACYCLOVIR +ACYCLOVIRS +ACYL +ACYLATE +ACYLATED +ACYLATES +ACYLATING +ACYLATION +ACYLATIONS +ACYLOIN +ACYLOINS +ACYLS +AD +ADAGE +ADAGES +ADAGIAL +ADAGIO +ADAGIOS +ADAMANCE +ADAMANCES +ADAMANCIES +ADAMANCY +ADAMANT +ADAMANTINE +ADAMANTLY +ADAMANTS +ADAMSITE +ADAMSITES +ADAPT +ADAPTABILITIES +ADAPTABILITY +ADAPTABLE +ADAPTATION +ADAPTATIONAL +ADAPTATIONALLY +ADAPTATIONS +ADAPTED +ADAPTEDNESS +ADAPTEDNESSES +ADAPTER +ADAPTERS +ADAPTING +ADAPTION +ADAPTIONS +ADAPTIVE +ADAPTIVELY +ADAPTIVENESS +ADAPTIVENESSES +ADAPTIVITIES +ADAPTIVITY +ADAPTOR +ADAPTORS +ADAPTS +ADAXIAL +ADD +ADDABLE +ADDAX +ADDAXES +ADDED +ADDEDLY +ADDEND +ADDENDA +ADDENDS +ADDENDUM +ADDENDUMS +ADDER +ADDERS +ADDIBLE +ADDICT +ADDICTED +ADDICTING +ADDICTION +ADDICTIONS +ADDICTIVE +ADDICTS +ADDING +ADDITION +ADDITIONAL +ADDITIONALLY +ADDITIONS +ADDITIVE +ADDITIVELY +ADDITIVES +ADDITIVITIES +ADDITIVITY +ADDITORY +ADDLE +ADDLED +ADDLEPATED +ADDLES +ADDLING +ADDRESS +ADDRESSABILITY +ADDRESSABLE +ADDRESSED +ADDRESSEE +ADDRESSEES +ADDRESSER +ADDRESSERS +ADDRESSES +ADDRESSING +ADDRESSOR +ADDRESSORS +ADDREST +ADDS +ADDUCE +ADDUCED +ADDUCENT +ADDUCER +ADDUCERS +ADDUCES +ADDUCIBLE +ADDUCING +ADDUCT +ADDUCTED +ADDUCTING +ADDUCTION +ADDUCTIONS +ADDUCTIVE +ADDUCTOR +ADDUCTORS +ADDUCTS +ADEEM +ADEEMED +ADEEMING +ADEEMS +ADEMPTION +ADEMPTIONS +ADENINE +ADENINES +ADENITIS +ADENITISES +ADENOCARCINOMA +ADENOCARCINOMAS +ADENOHYPOPHYSES +ADENOHYPOPHYSIS +ADENOID +ADENOIDAL +ADENOIDS +ADENOMA +ADENOMAS +ADENOMATA +ADENOMATOUS +ADENOSES +ADENOSINE +ADENOSINES +ADENOSIS +ADENOVIRAL +ADENOVIRUS +ADENOVIRUSES +ADENYL +ADENYLS +ADEPT +ADEPTER +ADEPTEST +ADEPTLY +ADEPTNESS +ADEPTNESSES +ADEPTS +ADEQUACIES +ADEQUACY +ADEQUATE +ADEQUATELY +ADEQUATENESS +ADEQUATENESSES +ADHERABLE +ADHERE +ADHERED +ADHERENCE +ADHERENCES +ADHEREND +ADHERENDS +ADHERENT +ADHERENTLY +ADHERENTS +ADHERER +ADHERERS +ADHERES +ADHERING +ADHESION +ADHESIONAL +ADHESIONS +ADHESIVE +ADHESIVELY +ADHESIVENESS +ADHESIVENESSES +ADHESIVES +ADHIBIT +ADHIBITED +ADHIBITING +ADHIBITS +ADIABATIC +ADIABATICALLY +ADIEU +ADIEUS +ADIEUX +ADIOS +ADIPIC +ADIPOCERE +ADIPOCERES +ADIPOCYTE +ADIPOCYTES +ADIPOSE +ADIPOSES +ADIPOSIS +ADIPOSITIES +ADIPOSITY +ADIPOUS +ADIT +ADITS +ADJACENCE +ADJACENCES +ADJACENCIES +ADJACENCY +ADJACENT +ADJACENTLY +ADJECTIVAL +ADJECTIVALLY +ADJECTIVE +ADJECTIVELY +ADJECTIVES +ADJOIN +ADJOINED +ADJOINING +ADJOINS +ADJOINT +ADJOINTS +ADJOURN +ADJOURNED +ADJOURNING +ADJOURNMENT +ADJOURNMENTS +ADJOURNS +ADJUDGE +ADJUDGED +ADJUDGES +ADJUDGING +ADJUDICATE +ADJUDICATED +ADJUDICATES +ADJUDICATING +ADJUDICATION +ADJUDICATIONS +ADJUDICATIVE +ADJUDICATOR +ADJUDICATORS +ADJUDICATORY +ADJUNCT +ADJUNCTION +ADJUNCTIONS +ADJUNCTIVE +ADJUNCTLY +ADJUNCTS +ADJURATION +ADJURATIONS +ADJURATORY +ADJURE +ADJURED +ADJURER +ADJURERS +ADJURES +ADJURING +ADJUROR +ADJURORS +ADJUST +ADJUSTABILITIES +ADJUSTABILITY +ADJUSTABLE +ADJUSTED +ADJUSTER +ADJUSTERS +ADJUSTING +ADJUSTIVE +ADJUSTMENT +ADJUSTMENTAL +ADJUSTMENTS +ADJUSTOR +ADJUSTORS +ADJUSTS +ADJUTANCIES +ADJUTANCY +ADJUTANT +ADJUTANTS +ADJUVANT +ADJUVANTS +ADMAN +ADMASS +ADMASSES +ADMEASURE +ADMEASURED +ADMEASUREMENT +ADMEASUREMENTS +ADMEASURES +ADMEASURING +ADMEN +ADMINISTER +ADMINISTERED +ADMINISTERING +ADMINISTERS +ADMINISTRABLE +ADMINISTRANT +ADMINISTRANTS +ADMINISTRATE +ADMINISTRATED +ADMINISTRATES +ADMINISTRATING +ADMINISTRATION +ADMINISTRATIONS +ADMINISTRATIVE +ADMINISTRATOR +ADMINISTRATORS +ADMINISTRATRIX +ADMIRABILITIES +ADMIRABILITY +ADMIRABLE +ADMIRABLENESS +ADMIRABLENESSES +ADMIRABLY +ADMIRAL +ADMIRALS +ADMIRALTIES +ADMIRALTY +ADMIRATION +ADMIRATIONS +ADMIRE +ADMIRED +ADMIRER +ADMIRERS +ADMIRES +ADMIRING +ADMIRINGLY +ADMISSIBILITIES +ADMISSIBILITY +ADMISSIBLE +ADMISSION +ADMISSIONS +ADMISSIVE +ADMIT +ADMITS +ADMITTANCE +ADMITTANCES +ADMITTED +ADMITTEDLY +ADMITTEE +ADMITTEES +ADMITTER +ADMITTERS +ADMITTING +ADMIX +ADMIXED +ADMIXES +ADMIXING +ADMIXT +ADMIXTURE +ADMIXTURES +ADMONISH +ADMONISHED +ADMONISHER +ADMONISHERS +ADMONISHES +ADMONISHING +ADMONISHINGLY +ADMONISHMENT +ADMONISHMENTS +ADMONITION +ADMONITIONS +ADMONITOR +ADMONITORILY +ADMONITORS +ADMONITORY +ADNATE +ADNATION +ADNATIONS +ADNEXA +ADNEXAL +ADNOUN +ADNOUNS +ADO +ADOBE +ADOBELIKE +ADOBES +ADOBO +ADOBOS +ADOLESCENCE +ADOLESCENCES +ADOLESCENT +ADOLESCENTLY +ADOLESCENTS +ADONIS +ADONISES +ADOPT +ADOPTABILITIES +ADOPTABILITY +ADOPTABLE +ADOPTED +ADOPTEE +ADOPTEES +ADOPTER +ADOPTERS +ADOPTIANISM +ADOPTIANISMS +ADOPTING +ADOPTION +ADOPTIONISM +ADOPTIONISMS +ADOPTIONIST +ADOPTIONISTS +ADOPTIONS +ADOPTIVE +ADOPTIVELY +ADOPTS +ADORABILITIES +ADORABILITY +ADORABLE +ADORABLENESS +ADORABLENESSES +ADORABLY +ADORATION +ADORATIONS +ADORE +ADORED +ADORER +ADORERS +ADORES +ADORING +ADORINGLY +ADORN +ADORNED +ADORNER +ADORNERS +ADORNING +ADORNMENT +ADORNMENTS +ADORNS +ADOS +ADOWN +ADOZE +ADRENAL +ADRENALECTOMIES +ADRENALECTOMY +ADRENALIN +ADRENALINE +ADRENALINES +ADRENALINS +ADRENALIZED +ADRENALLY +ADRENALS +ADRENERGIC +ADRENERGICALLY +ADRENOCHROME +ADRENOCHROMES +ADRENOCORTICAL +ADRIFT +ADROIT +ADROITER +ADROITEST +ADROITLY +ADROITNESS +ADROITNESSES +ADS +ADSCITITIOUS +ADSCRIPT +ADSCRIPTS +ADSORB +ADSORBABLE +ADSORBATE +ADSORBATES +ADSORBED +ADSORBENT +ADSORBENTS +ADSORBER +ADSORBERS +ADSORBING +ADSORBS +ADSORPTION +ADSORPTIONS +ADSORPTIVE +ADULARIA +ADULARIAS +ADULATE +ADULATED +ADULATES +ADULATING +ADULATION +ADULATIONS +ADULATOR +ADULATORS +ADULATORY +ADULT +ADULTERANT +ADULTERANTS +ADULTERATE +ADULTERATED +ADULTERATES +ADULTERATING +ADULTERATION +ADULTERATIONS +ADULTERATOR +ADULTERATORS +ADULTERER +ADULTERERS +ADULTERESS +ADULTERESSES +ADULTERIES +ADULTERINE +ADULTEROUS +ADULTEROUSLY +ADULTERY +ADULTHOOD +ADULTHOODS +ADULTLIKE +ADULTLY +ADULTNESS +ADULTNESSES +ADULTRESS +ADULTRESSES +ADULTS +ADUMBRAL +ADUMBRATE +ADUMBRATED +ADUMBRATES +ADUMBRATING +ADUMBRATION +ADUMBRATIONS +ADUMBRATIVE +ADUMBRATIVELY +ADUNC +ADUNCATE +ADUNCOUS +ADUST +ADVANCE +ADVANCED +ADVANCEMENT +ADVANCEMENTS +ADVANCER +ADVANCERS +ADVANCES +ADVANCING +ADVANTAGE +ADVANTAGED +ADVANTAGEOUS +ADVANTAGEOUSLY +ADVANTAGES +ADVANTAGING +ADVECT +ADVECTED +ADVECTING +ADVECTION +ADVECTIONS +ADVECTIVE +ADVECTS +ADVENT +ADVENTITIA +ADVENTITIAL +ADVENTITIAS +ADVENTITIOUS +ADVENTITIOUSLY +ADVENTIVE +ADVENTIVES +ADVENTS +ADVENTURE +ADVENTURED +ADVENTURER +ADVENTURERS +ADVENTURES +ADVENTURESOME +ADVENTURESS +ADVENTURESSES +ADVENTURING +ADVENTURISM +ADVENTURISMS +ADVENTURIST +ADVENTURISTIC +ADVENTURISTS +ADVENTUROUS +ADVENTUROUSLY +ADVENTUROUSNESS +ADVERB +ADVERBIAL +ADVERBIALLY +ADVERBIALS +ADVERBS +ADVERSARIAL +ADVERSARIES +ADVERSARINESS +ADVERSARINESSES +ADVERSARY +ADVERSATIVE +ADVERSATIVELY +ADVERSATIVES +ADVERSE +ADVERSELY +ADVERSENESS +ADVERSENESSES +ADVERSITIES +ADVERSITY +ADVERT +ADVERTED +ADVERTENCE +ADVERTENCES +ADVERTENCIES +ADVERTENCY +ADVERTENT +ADVERTENTLY +ADVERTING +ADVERTISE +ADVERTISED +ADVERTISEMENT +ADVERTISEMENTS +ADVERTISER +ADVERTISERS +ADVERTISES +ADVERTISING +ADVERTISINGS +ADVERTIZE +ADVERTIZED +ADVERTIZEMENT +ADVERTIZEMENTS +ADVERTIZES +ADVERTIZING +ADVERTORIAL +ADVERTORIALS +ADVERTS +ADVICE +ADVICES +ADVISABILITIES +ADVISABILITY +ADVISABLE +ADVISABLENESS +ADVISABLENESSES +ADVISABLY +ADVISE +ADVISED +ADVISEDLY +ADVISEE +ADVISEES +ADVISEMENT +ADVISEMENTS +ADVISER +ADVISERS +ADVISES +ADVISING +ADVISOR +ADVISORIES +ADVISORS +ADVISORY +ADVOCACIES +ADVOCACY +ADVOCATE +ADVOCATED +ADVOCATES +ADVOCATING +ADVOCATION +ADVOCATIONS +ADVOCATIVE +ADVOCATOR +ADVOCATORS +ADVOWSON +ADVOWSONS +ADWOMAN +ADWOMEN +ADYNAMIA +ADYNAMIAS +ADYNAMIC +ADYTA +ADYTUM +ADZ +ADZE +ADZED +ADZES +ADZING +ADZUKI +ADZUKIS +AE +AECIA +AECIAL +AECIDIA +AECIDIAL +AECIDIUM +AECIOSPORE +AECIOSPORES +AECIUM +AEDES +AEDILE +AEDILES +AEDINE +AEGIS +AEGISES +AENEOUS +AENEUS +AEOLIAN +AEON +AEONIAN +AEONIC +AEONS +AEPYORNIS +AEPYORNISES +AEQUORIN +AEQUORINS +AERATE +AERATED +AERATES +AERATING +AERATION +AERATIONS +AERATOR +AERATORS +AERENCHYMA +AERENCHYMAS +AERIAL +AERIALIST +AERIALISTS +AERIALLY +AERIALS +AERIE +AERIED +AERIER +AERIES +AERIEST +AERIFIED +AERIFIES +AERIFORM +AERIFY +AERIFYING +AERILY +AERO +AEROBAT +AEROBATIC +AEROBATICS +AEROBATS +AEROBE +AEROBES +AEROBIA +AEROBIC +AEROBICALLY +AEROBICIZE +AEROBICIZED +AEROBICIZES +AEROBICIZING +AEROBICS +AEROBIOLOGICAL +AEROBIOLOGIES +AEROBIOLOGY +AEROBIOSES +AEROBIOSIS +AEROBIUM +AEROBRAKE +AEROBRAKED +AEROBRAKES +AEROBRAKING +AERODROME +AERODROMES +AERODUCT +AERODUCTS +AERODYNAMIC +AERODYNAMICAL +AERODYNAMICALLY +AERODYNAMICIST +AERODYNAMICISTS +AERODYNAMICS +AERODYNE +AERODYNES +AEROELASTIC +AEROELASTICITY +AEROEMBOLISM +AEROEMBOLISMS +AEROFOIL +AEROFOILS +AEROGEL +AEROGELS +AEROGRAM +AEROGRAMME +AEROGRAMMES +AEROGRAMS +AEROLITE +AEROLITES +AEROLITH +AEROLITHS +AEROLITIC +AEROLOGIC +AEROLOGIES +AEROLOGY +AEROMAGNETIC +AEROMECHANICS +AEROMEDICAL +AEROMEDICINE +AEROMEDICINES +AEROMETER +AEROMETERS +AEROMETRIES +AEROMETRY +AERONAUT +AERONAUTIC +AERONAUTICAL +AERONAUTICALLY +AERONAUTICS +AERONAUTS +AERONOMER +AERONOMERS +AERONOMIC +AERONOMICAL +AERONOMIES +AERONOMIST +AERONOMISTS +AERONOMY +AEROPAUSE +AEROPAUSES +AEROPHOBE +AEROPHOBES +AEROPHORE +AEROPHORES +AEROPHYTE +AEROPHYTES +AEROPLANE +AEROPLANES +AEROPULSE +AEROPULSES +AEROSAT +AEROSATS +AEROSCOPE +AEROSCOPES +AEROSOL +AEROSOLIZATION +AEROSOLIZATIONS +AEROSOLIZE +AEROSOLIZED +AEROSOLIZES +AEROSOLIZING +AEROSOLS +AEROSPACE +AEROSPACES +AEROSTAT +AEROSTATICS +AEROSTATS +AERUGO +AERUGOS +AERY +AESTHESIA +AESTHESIAS +AESTHETE +AESTHETES +AESTHETIC +AESTHETICAL +AESTHETICALLY +AESTHETICIAN +AESTHETICIANS +AESTHETICISM +AESTHETICISMS +AESTHETICIZE +AESTHETICIZED +AESTHETICIZES +AESTHETICIZING +AESTHETICS +AESTIVAL +AESTIVATE +AESTIVATED +AESTIVATES +AESTIVATING +AESTIVATION +AESTIVATIONS +AETHER +AETHEREAL +AETHERIC +AETHERS +AETIOLOGIES +AETIOLOGY +AFAR +AFARS +AFEARD +AFEARED +AFEBRILE +AFF +AFFABILITIES +AFFABILITY +AFFABLE +AFFABLY +AFFAIR +AFFAIRE +AFFAIRES +AFFAIRS +AFFECT +AFFECTABILITIES +AFFECTABILITY +AFFECTABLE +AFFECTATION +AFFECTATIONS +AFFECTED +AFFECTEDLY +AFFECTEDNESS +AFFECTEDNESSES +AFFECTER +AFFECTERS +AFFECTING +AFFECTINGLY +AFFECTION +AFFECTIONAL +AFFECTIONALLY +AFFECTIONATE +AFFECTIONATELY +AFFECTIONED +AFFECTIONLESS +AFFECTIONS +AFFECTIVE +AFFECTIVELY +AFFECTIVITIES +AFFECTIVITY +AFFECTLESS +AFFECTLESSNESS +AFFECTS +AFFENPINSCHER +AFFENPINSCHERS +AFFERENT +AFFERENTLY +AFFERENTS +AFFIANCE +AFFIANCED +AFFIANCES +AFFIANCING +AFFIANT +AFFIANTS +AFFICHE +AFFICHES +AFFICIONADO +AFFICIONADOS +AFFIDAVIT +AFFIDAVITS +AFFILIATE +AFFILIATED +AFFILIATES +AFFILIATING +AFFILIATION +AFFILIATIONS +AFFINAL +AFFINE +AFFINED +AFFINELY +AFFINES +AFFINITIES +AFFINITY +AFFIRM +AFFIRMABLE +AFFIRMANCE +AFFIRMANCES +AFFIRMANT +AFFIRMANTS +AFFIRMATION +AFFIRMATIONS +AFFIRMATIVE +AFFIRMATIVELY +AFFIRMATIVES +AFFIRMED +AFFIRMER +AFFIRMERS +AFFIRMING +AFFIRMS +AFFIX +AFFIXABLE +AFFIXAL +AFFIXATION +AFFIXATIONS +AFFIXED +AFFIXER +AFFIXERS +AFFIXES +AFFIXIAL +AFFIXING +AFFIXMENT +AFFIXMENTS +AFFIXTURE +AFFIXTURES +AFFLATUS +AFFLATUSES +AFFLICT +AFFLICTED +AFFLICTER +AFFLICTERS +AFFLICTING +AFFLICTION +AFFLICTIONS +AFFLICTIVE +AFFLICTIVELY +AFFLICTS +AFFLUENCE +AFFLUENCES +AFFLUENCIES +AFFLUENCY +AFFLUENT +AFFLUENTLY +AFFLUENTS +AFFLUX +AFFLUXES +AFFORD +AFFORDABILITIES +AFFORDABILITY +AFFORDABLE +AFFORDABLY +AFFORDED +AFFORDING +AFFORDS +AFFOREST +AFFORESTATION +AFFORESTATIONS +AFFORESTED +AFFORESTING +AFFORESTS +AFFRAY +AFFRAYED +AFFRAYER +AFFRAYERS +AFFRAYING +AFFRAYS +AFFRICATE +AFFRICATED +AFFRICATES +AFFRICATING +AFFRICATIVE +AFFRICATIVES +AFFRIGHT +AFFRIGHTED +AFFRIGHTING +AFFRIGHTS +AFFRONT +AFFRONTED +AFFRONTING +AFFRONTS +AFFUSION +AFFUSIONS +AFGHAN +AFGHANI +AFGHANIS +AFGHANS +AFICIONADA +AFICIONADAS +AFICIONADO +AFICIONADOS +AFIELD +AFIRE +AFLAME +AFLATOXIN +AFLATOXINS +AFLOAT +AFLUTTER +AFOOT +AFORE +AFOREHAND +AFOREMENTIONED +AFORESAID +AFORETHOUGHT +AFORETIME +AFOUL +AFRAID +AFREET +AFREETS +AFRESH +AFRIT +AFRITS +AFT +AFTER +AFTERBIRTH +AFTERBIRTHS +AFTERBURNER +AFTERBURNERS +AFTERCARE +AFTERCARES +AFTERCLAP +AFTERCLAPS +AFTERDAMP +AFTERDAMPS +AFTERDECK +AFTERDECKS +AFTEREFFECT +AFTEREFFECTS +AFTERGLOW +AFTERGLOWS +AFTERIMAGE +AFTERIMAGES +AFTERLIFE +AFTERLIFES +AFTERLIVES +AFTERMARKET +AFTERMARKETS +AFTERMATH +AFTERMATHS +AFTERMOST +AFTERNOON +AFTERNOONS +AFTERPAIN +AFTERPAINS +AFTERPIECE +AFTERPIECES +AFTERS +AFTERSHAVE +AFTERSHAVES +AFTERSHOCK +AFTERSHOCKS +AFTERTASTE +AFTERTASTES +AFTERTAX +AFTERTHOUGHT +AFTERTHOUGHTS +AFTERTIME +AFTERTIMES +AFTERWARD +AFTERWARDS +AFTERWORD +AFTERWORDS +AFTERWORLD +AFTERWORLDS +AFTMOST +AFTOSA +AFTOSAS +AG +AGA +AGAIN +AGAINST +AGALACTIA +AGALACTIAS +AGALLOCH +AGALLOCHS +AGALWOOD +AGALWOODS +AGAMA +AGAMAS +AGAMETE +AGAMETES +AGAMIC +AGAMID +AGAMIDS +AGAMOSPERMIES +AGAMOSPERMY +AGAMOUS +AGAPAE +AGAPAI +AGAPANTHUS +AGAPANTHUSES +AGAPE +AGAPEIC +AGAPES +AGAR +AGARIC +AGARICS +AGAROSE +AGAROSES +AGARS +AGAS +AGATE +AGATES +AGATEWARE +AGATEWARES +AGATIZE +AGATIZED +AGATIZES +AGATIZING +AGATOID +AGAVE +AGAVES +AGAZE +AGE +AGED +AGEDLY +AGEDNESS +AGEDNESSES +AGEE +AGEING +AGEINGS +AGEISM +AGEISMS +AGEIST +AGEISTS +AGELESS +AGELESSLY +AGELESSNESS +AGELESSNESSES +AGELONG +AGEMATE +AGEMATES +AGENCIES +AGENCY +AGENDA +AGENDALESS +AGENDAS +AGENDUM +AGENDUMS +AGENE +AGENES +AGENESES +AGENESIA +AGENESIAS +AGENESIS +AGENETIC +AGENIZE +AGENIZED +AGENIZES +AGENIZING +AGENT +AGENTED +AGENTIAL +AGENTING +AGENTINGS +AGENTIVAL +AGENTIVE +AGENTIVES +AGENTRIES +AGENTRY +AGENTS +AGER +AGERATUM +AGERATUMS +AGERS +AGES +AGGADA +AGGADAH +AGGADAHS +AGGADAS +AGGADIC +AGGADOT +AGGADOTH +AGGER +AGGERS +AGGIE +AGGIES +AGGIORNAMENTO +AGGIORNAMENTOS +AGGLOMERATE +AGGLOMERATED +AGGLOMERATES +AGGLOMERATING +AGGLOMERATION +AGGLOMERATIONS +AGGLOMERATIVE +AGGLUTINABILITY +AGGLUTINABLE +AGGLUTINATE +AGGLUTINATED +AGGLUTINATES +AGGLUTINATING +AGGLUTINATION +AGGLUTINATIONS +AGGLUTINATIVE +AGGLUTININ +AGGLUTININS +AGGLUTINOGEN +AGGLUTINOGENIC +AGGLUTINOGENS +AGGRADATION +AGGRADATIONS +AGGRADE +AGGRADED +AGGRADES +AGGRADING +AGGRANDISE +AGGRANDISED +AGGRANDISES +AGGRANDISING +AGGRANDIZE +AGGRANDIZED +AGGRANDIZEMENT +AGGRANDIZEMENTS +AGGRANDIZER +AGGRANDIZERS +AGGRANDIZES +AGGRANDIZING +AGGRAVATE +AGGRAVATED +AGGRAVATES +AGGRAVATING +AGGRAVATION +AGGRAVATIONS +AGGREGATE +AGGREGATED +AGGREGATELY +AGGREGATENESS +AGGREGATENESSES +AGGREGATES +AGGREGATING +AGGREGATION +AGGREGATIONAL +AGGREGATIONS +AGGREGATIVE +AGGREGATIVELY +AGGRESS +AGGRESSED +AGGRESSES +AGGRESSING +AGGRESSION +AGGRESSIONS +AGGRESSIVE +AGGRESSIVELY +AGGRESSIVENESS +AGGRESSIVITIES +AGGRESSIVITY +AGGRESSOR +AGGRESSORS +AGGRIEVE +AGGRIEVED +AGGRIEVEDLY +AGGRIEVEMENT +AGGRIEVEMENTS +AGGRIEVES +AGGRIEVING +AGGRO +AGGROS +AGHA +AGHAS +AGHAST +AGILE +AGILELY +AGILENESS +AGILENESSES +AGILITIES +AGILITY +AGIN +AGING +AGINGS +AGINNER +AGINNERS +AGIO +AGIOS +AGIOTAGE +AGIOTAGES +AGISM +AGISMS +AGIST +AGISTED +AGISTING +AGISTS +AGITA +AGITABLE +AGITAS +AGITATE +AGITATED +AGITATEDLY +AGITATES +AGITATING +AGITATION +AGITATIONAL +AGITATIONS +AGITATIVE +AGITATO +AGITATOR +AGITATORS +AGITPROP +AGITPROPS +AGLARE +AGLEAM +AGLEE +AGLET +AGLETS +AGLEY +AGLIMMER +AGLITTER +AGLOW +AGLY +AGLYCON +AGLYCONE +AGLYCONES +AGLYCONS +AGMA +AGMAS +AGMINATE +AGNAIL +AGNAILS +AGNATE +AGNATES +AGNATIC +AGNATICAL +AGNATION +AGNATIONS +AGNIZE +AGNIZED +AGNIZES +AGNIZING +AGNOMEN +AGNOMENS +AGNOMINA +AGNOSIA +AGNOSIAS +AGNOSTIC +AGNOSTICISM +AGNOSTICISMS +AGNOSTICS +AGO +AGOG +AGON +AGONAL +AGONE +AGONES +AGONIC +AGONIES +AGONISE +AGONISED +AGONISES +AGONISING +AGONIST +AGONISTES +AGONISTIC +AGONISTICALLY +AGONISTS +AGONIZE +AGONIZED +AGONIZES +AGONIZING +AGONIZINGLY +AGONS +AGONY +AGORA +AGORAE +AGORAPHOBE +AGORAPHOBES +AGORAPHOBIA +AGORAPHOBIAS +AGORAPHOBIC +AGORAPHOBICS +AGORAS +AGOROT +AGOROTH +AGOUTI +AGOUTIES +AGOUTIS +AGOUTY +AGRAFE +AGRAFES +AGRAFFE +AGRAFFES +AGRANULOCYTE +AGRANULOCYTES +AGRANULOCYTOSES +AGRANULOCYTOSIS +AGRAPHA +AGRAPHIA +AGRAPHIAS +AGRAPHIC +AGRARIAN +AGRARIANISM +AGRARIANISMS +AGRARIANS +AGRAVIC +AGREE +AGREEABILITIES +AGREEABILITY +AGREEABLE +AGREEABLENESS +AGREEABLENESSES +AGREEABLY +AGREED +AGREEING +AGREEMENT +AGREEMENTS +AGREES +AGRESTAL +AGRESTIC +AGRIA +AGRIAS +AGRIBUSINESS +AGRIBUSINESSES +AGRIBUSINESSMAN +AGRIBUSINESSMEN +AGRICHEMICAL +AGRICHEMICALS +AGRICULTURAL +AGRICULTURALIST +AGRICULTURALLY +AGRICULTURE +AGRICULTURES +AGRICULTURIST +AGRICULTURISTS +AGRIMONIES +AGRIMONY +AGROCHEMICAL +AGROCHEMICALS +AGROFORESTER +AGROFORESTERS +AGROFORESTRIES +AGROFORESTRY +AGROLOGIC +AGROLOGIES +AGROLOGY +AGRONOMIC +AGRONOMICALLY +AGRONOMIES +AGRONOMIST +AGRONOMISTS +AGRONOMY +AGROUND +AGRYPNIA +AGRYPNIAS +AGS +AGUACATE +AGUACATES +AGUE +AGUELIKE +AGUES +AGUEWEED +AGUEWEEDS +AGUISH +AGUISHLY +AH +AHA +AHCHOO +AHEAD +AHED +AHEM +AHI +AHIMSA +AHIMSAS +AHING +AHIS +AHISTORIC +AHISTORICAL +AHOLD +AHOLDS +AHORSE +AHOY +AHS +AHULL +AI +AIBLINS +AID +AIDE +AIDED +AIDER +AIDERS +AIDES +AIDFUL +AIDING +AIDLESS +AIDMAN +AIDMEN +AIDS +AIGLET +AIGLETS +AIGRET +AIGRETS +AIGRETTE +AIGRETTES +AIGUILLE +AIGUILLES +AIGUILLETTE +AIGUILLETTES +AIKIDO +AIKIDOS +AIL +AILANTHIC +AILANTHUS +AILANTHUSES +AILED +AILERON +AILERONS +AILING +AILMENT +AILMENTS +AILS +AILUROPHILE +AILUROPHILES +AILUROPHOBE +AILUROPHOBES +AIM +AIMED +AIMER +AIMERS +AIMFUL +AIMFULLY +AIMING +AIMLESS +AIMLESSLY +AIMLESSNESS +AIMLESSNESSES +AIMS +AIN +AINS +AINSELL +AINSELLS +AIOLI +AIOLIS +AIR +AIRBAG +AIRBAGS +AIRBOAT +AIRBOATS +AIRBORNE +AIRBOUND +AIRBRUSH +AIRBRUSHED +AIRBRUSHES +AIRBRUSHING +AIRBURST +AIRBURSTS +AIRBUS +AIRBUSES +AIRBUSSES +AIRCHECK +AIRCHECKS +AIRCOACH +AIRCOACHES +AIRCRAFT +AIRCREW +AIRCREWS +AIRDATE +AIRDATES +AIRDROME +AIRDROMES +AIRDROP +AIRDROPPED +AIRDROPPING +AIRDROPS +AIRED +AIRER +AIRERS +AIREST +AIRFARE +AIRFARES +AIRFIELD +AIRFIELDS +AIRFLOW +AIRFLOWS +AIRFOIL +AIRFOILS +AIRFRAME +AIRFRAMES +AIRFREIGHT +AIRFREIGHTED +AIRFREIGHTING +AIRFREIGHTS +AIRGLOW +AIRGLOWS +AIRHEAD +AIRHEADED +AIRHEADS +AIRHOLE +AIRHOLES +AIRIER +AIRIEST +AIRILY +AIRINESS +AIRINESSES +AIRING +AIRINGS +AIRLESS +AIRLESSNESS +AIRLESSNESSES +AIRLIFT +AIRLIFTED +AIRLIFTING +AIRLIFTS +AIRLIKE +AIRLINE +AIRLINER +AIRLINERS +AIRLINES +AIRMAIL +AIRMAILED +AIRMAILING +AIRMAILS +AIRMAN +AIRMANSHIP +AIRMANSHIPS +AIRMEN +AIRMOBILE +AIRN +AIRNS +AIRPARK +AIRPARKS +AIRPLANE +AIRPLANES +AIRPLAY +AIRPLAYS +AIRPORT +AIRPORTS +AIRPOST +AIRPOSTS +AIRPOWER +AIRPOWERS +AIRPROOF +AIRPROOFED +AIRPROOFING +AIRPROOFS +AIRS +AIRSCAPE +AIRSCAPES +AIRSCREW +AIRSCREWS +AIRSHED +AIRSHEDS +AIRSHIP +AIRSHIPS +AIRSHOT +AIRSHOTS +AIRSHOW +AIRSHOWS +AIRSICK +AIRSICKNESS +AIRSICKNESSES +AIRSPACE +AIRSPACES +AIRSPEED +AIRSPEEDS +AIRSTREAM +AIRSTREAMS +AIRSTRIKE +AIRSTRIKES +AIRSTRIP +AIRSTRIPS +AIRT +AIRTED +AIRTH +AIRTHED +AIRTHING +AIRTHS +AIRTIGHT +AIRTIGHTNESS +AIRTIGHTNESSES +AIRTIME +AIRTIMES +AIRTING +AIRTS +AIRWARD +AIRWAVE +AIRWAVES +AIRWAY +AIRWAYS +AIRWISE +AIRWOMAN +AIRWOMEN +AIRWORTHIER +AIRWORTHIEST +AIRWORTHINESS +AIRWORTHINESSES +AIRWORTHY +AIRY +AIS +AISLE +AISLED +AISLES +AISLEWAY +AISLEWAYS +AIT +AITCH +AITCHBONE +AITCHBONES +AITCHES +AITS +AIVER +AIVERS +AJAR +AJEE +AJIVA +AJIVAS +AJOWAN +AJOWANS +AJUGA +AJUGAS +AKEE +AKEES +AKELA +AKELAS +AKENE +AKENES +AKIMBO +AKIN +AKINESIA +AKINESIAS +AKINETIC +AKVAVIT +AKVAVITS +AL +ALA +ALABASTER +ALABASTERS +ALABASTRINE +ALACHLOR +ALACHLORS +ALACK +ALACKADAY +ALACRITIES +ALACRITOUS +ALACRITY +ALAE +ALAMEDA +ALAMEDAS +ALAMO +ALAMODE +ALAMODES +ALAMOS +ALAN +ALAND +ALANDS +ALANE +ALANG +ALANIN +ALANINE +ALANINES +ALANINS +ALANS +ALANT +ALANTS +ALANYL +ALANYLS +ALAR +ALARM +ALARMABLE +ALARMED +ALARMEDLY +ALARMING +ALARMINGLY +ALARMISM +ALARMISMS +ALARMIST +ALARMISTS +ALARMS +ALARUM +ALARUMED +ALARUMING +ALARUMS +ALARY +ALAS +ALASKA +ALASKAS +ALASTOR +ALASTORS +ALATE +ALATED +ALATES +ALATION +ALATIONS +ALB +ALBA +ALBACORE +ALBACORES +ALBAS +ALBATA +ALBATAS +ALBATROSS +ALBATROSSES +ALBEDO +ALBEDOES +ALBEDOS +ALBEIT +ALBERTITE +ALBERTITES +ALBESCENT +ALBICORE +ALBICORES +ALBINAL +ALBINIC +ALBINISM +ALBINISMS +ALBINISTIC +ALBINO +ALBINOS +ALBINOTIC +ALBITE +ALBITES +ALBITIC +ALBITICAL +ALBIZIA +ALBIZIAS +ALBIZZIA +ALBIZZIAS +ALBS +ALBUM +ALBUMEN +ALBUMENS +ALBUMIN +ALBUMINOUS +ALBUMINS +ALBUMINURIA +ALBUMINURIAS +ALBUMINURIC +ALBUMOSE +ALBUMOSES +ALBUMS +ALBURNOUS +ALBURNUM +ALBURNUMS +ALBUTEROL +ALBUTEROLS +ALCADE +ALCADES +ALCAHEST +ALCAHESTS +ALCAIC +ALCAICS +ALCAIDE +ALCAIDES +ALCALDE +ALCALDES +ALCAYDE +ALCAYDES +ALCAZAR +ALCAZARS +ALCHEMIC +ALCHEMICAL +ALCHEMICALLY +ALCHEMIES +ALCHEMIST +ALCHEMISTIC +ALCHEMISTICAL +ALCHEMISTS +ALCHEMIZE +ALCHEMIZED +ALCHEMIZES +ALCHEMIZING +ALCHEMY +ALCHYMIES +ALCHYMY +ALCID +ALCIDINE +ALCIDS +ALCOHOL +ALCOHOLIC +ALCOHOLICALLY +ALCOHOLICS +ALCOHOLISM +ALCOHOLISMS +ALCOHOLS +ALCOVE +ALCOVED +ALCOVES +ALCYONARIAN +ALCYONARIANS +ALDEHYDE +ALDEHYDES +ALDEHYDIC +ALDER +ALDERFLIES +ALDERFLY +ALDERMAN +ALDERMANIC +ALDERMEN +ALDERS +ALDERWOMAN +ALDERWOMEN +ALDICARB +ALDICARBS +ALDOL +ALDOLASE +ALDOLASES +ALDOLIZATION +ALDOLIZATIONS +ALDOLS +ALDOSE +ALDOSES +ALDOSTERONE +ALDOSTERONES +ALDOSTERONISM +ALDOSTERONISMS +ALDRIN +ALDRINS +ALE +ALEATORIC +ALEATORY +ALEC +ALECITHAL +ALECS +ALEE +ALEF +ALEFS +ALEGAR +ALEGARS +ALEHOUSE +ALEHOUSES +ALEMBIC +ALEMBICS +ALENCON +ALENCONS +ALEPH +ALEPHS +ALERT +ALERTED +ALERTER +ALERTEST +ALERTING +ALERTLY +ALERTNESS +ALERTNESSES +ALERTS +ALES +ALEURON +ALEURONE +ALEURONES +ALEURONIC +ALEURONS +ALEVIN +ALEVINS +ALEWIFE +ALEWIVES +ALEXANDER +ALEXANDERS +ALEXANDRINE +ALEXANDRINES +ALEXANDRITE +ALEXANDRITES +ALEXIA +ALEXIAS +ALEXIN +ALEXINE +ALEXINES +ALEXINS +ALFA +ALFAKI +ALFAKIS +ALFALFA +ALFALFAS +ALFAQUI +ALFAQUIN +ALFAQUINS +ALFAQUIS +ALFAS +ALFILARIA +ALFILARIAS +ALFILERIA +ALFILERIAS +ALFORJA +ALFORJAS +ALFREDO +ALFRESCO +ALGA +ALGAE +ALGAECIDE +ALGAECIDES +ALGAL +ALGAROBA +ALGAROBAS +ALGARROBA +ALGARROBAS +ALGARROBO +ALGARROBOS +ALGAS +ALGEBRA +ALGEBRAIC +ALGEBRAICALLY +ALGEBRAIST +ALGEBRAISTS +ALGEBRAS +ALGERINE +ALGERINES +ALGICIDAL +ALGICIDE +ALGICIDES +ALGID +ALGIDITIES +ALGIDITY +ALGIDNESS +ALGIDNESSES +ALGIN +ALGINATE +ALGINATES +ALGINS +ALGOID +ALGOLAGNIA +ALGOLAGNIAC +ALGOLAGNIACS +ALGOLAGNIAS +ALGOLOGICAL +ALGOLOGIES +ALGOLOGIST +ALGOLOGISTS +ALGOLOGY +ALGOMETER +ALGOMETERS +ALGOMETRIES +ALGOMETRY +ALGOR +ALGORISM +ALGORISMS +ALGORITHM +ALGORITHMIC +ALGORITHMICALLY +ALGORITHMS +ALGORS +ALGUM +ALGUMS +ALIAS +ALIASES +ALIASING +ALIASINGS +ALIBI +ALIBIED +ALIBIES +ALIBIING +ALIBIS +ALIBLE +ALICYCLIC +ALIDAD +ALIDADE +ALIDADES +ALIDADS +ALIEN +ALIENABILITIES +ALIENABILITY +ALIENABLE +ALIENAGE +ALIENAGES +ALIENATE +ALIENATED +ALIENATES +ALIENATING +ALIENATION +ALIENATIONS +ALIENATOR +ALIENATORS +ALIENED +ALIENEE +ALIENEES +ALIENER +ALIENERS +ALIENING +ALIENISM +ALIENISMS +ALIENIST +ALIENISTS +ALIENLY +ALIENNESS +ALIENNESSES +ALIENOR +ALIENORS +ALIENS +ALIF +ALIFORM +ALIFS +ALIGHT +ALIGHTED +ALIGHTING +ALIGHTMENT +ALIGHTMENTS +ALIGHTS +ALIGN +ALIGNED +ALIGNER +ALIGNERS +ALIGNING +ALIGNMENT +ALIGNMENTS +ALIGNS +ALIKE +ALIKENESS +ALIKENESSES +ALIMENT +ALIMENTAL +ALIMENTARY +ALIMENTATION +ALIMENTATIONS +ALIMENTED +ALIMENTING +ALIMENTS +ALIMONIED +ALIMONIES +ALIMONY +ALINE +ALINED +ALINEMENT +ALINEMENTS +ALINER +ALINERS +ALINES +ALINING +ALIPED +ALIPEDS +ALIPHATIC +ALIQUANT +ALIQUOT +ALIQUOTS +ALIST +ALIT +ALITERACIES +ALITERACY +ALITERATE +ALITERATES +ALIUNDE +ALIVE +ALIVENESS +ALIVENESSES +ALIYA +ALIYAH +ALIYAHS +ALIYAS +ALIYOS +ALIYOT +ALIZARIN +ALIZARINE +ALIZARINES +ALIZARINS +ALKAHEST +ALKAHESTIC +ALKAHESTS +ALKALI +ALKALIC +ALKALIES +ALKALIFIED +ALKALIFIES +ALKALIFY +ALKALIFYING +ALKALIMETER +ALKALIMETERS +ALKALIMETRIES +ALKALIMETRY +ALKALIN +ALKALINE +ALKALINITIES +ALKALINITY +ALKALINIZATION +ALKALINIZATIONS +ALKALINIZE +ALKALINIZED +ALKALINIZES +ALKALINIZING +ALKALIS +ALKALISE +ALKALISED +ALKALISES +ALKALISING +ALKALIZE +ALKALIZED +ALKALIZER +ALKALIZERS +ALKALIZES +ALKALIZING +ALKALOID +ALKALOIDAL +ALKALOIDS +ALKALOSES +ALKALOSIS +ALKALOTIC +ALKANE +ALKANES +ALKANET +ALKANETS +ALKENE +ALKENES +ALKIE +ALKIES +ALKINE +ALKINES +ALKOXIDE +ALKOXIDES +ALKOXY +ALKY +ALKYD +ALKYDS +ALKYL +ALKYLATE +ALKYLATED +ALKYLATES +ALKYLATING +ALKYLATION +ALKYLATIONS +ALKYLIC +ALKYLS +ALKYNE +ALKYNES +ALL +ALLANITE +ALLANITES +ALLANTOIC +ALLANTOID +ALLANTOIDES +ALLANTOIDS +ALLANTOIN +ALLANTOINS +ALLANTOIS +ALLARGANDO +ALLAY +ALLAYED +ALLAYER +ALLAYERS +ALLAYING +ALLAYS +ALLEE +ALLEES +ALLEGATION +ALLEGATIONS +ALLEGE +ALLEGED +ALLEGEDLY +ALLEGER +ALLEGERS +ALLEGES +ALLEGIANCE +ALLEGIANCES +ALLEGIANT +ALLEGIANTS +ALLEGING +ALLEGORIC +ALLEGORICAL +ALLEGORICALLY +ALLEGORICALNESS +ALLEGORIES +ALLEGORISE +ALLEGORISED +ALLEGORISES +ALLEGORISING +ALLEGORIST +ALLEGORISTS +ALLEGORIZATION +ALLEGORIZATIONS +ALLEGORIZE +ALLEGORIZED +ALLEGORIZER +ALLEGORIZERS +ALLEGORIZES +ALLEGORIZING +ALLEGORY +ALLEGRETTO +ALLEGRETTOS +ALLEGRO +ALLEGROS +ALLELE +ALLELES +ALLELIC +ALLELISM +ALLELISMS +ALLELOMORPH +ALLELOMORPHIC +ALLELOMORPHISM +ALLELOMORPHISMS +ALLELOMORPHS +ALLELOPATHIC +ALLELOPATHIES +ALLELOPATHY +ALLELUIA +ALLELUIAS +ALLEMANDE +ALLEMANDES +ALLERGEN +ALLERGENIC +ALLERGENICITIES +ALLERGENICITY +ALLERGENS +ALLERGIC +ALLERGIES +ALLERGIN +ALLERGINS +ALLERGIST +ALLERGISTS +ALLERGY +ALLETHRIN +ALLETHRINS +ALLEVIANT +ALLEVIANTS +ALLEVIATE +ALLEVIATED +ALLEVIATES +ALLEVIATING +ALLEVIATION +ALLEVIATIONS +ALLEVIATOR +ALLEVIATORS +ALLEY +ALLEYS +ALLEYWAY +ALLEYWAYS +ALLHEAL +ALLHEALS +ALLIABLE +ALLIACEOUS +ALLIANCE +ALLIANCES +ALLICIN +ALLICINS +ALLIED +ALLIES +ALLIGATOR +ALLIGATORS +ALLITERATE +ALLITERATED +ALLITERATES +ALLITERATING +ALLITERATION +ALLITERATIONS +ALLITERATIVE +ALLITERATIVELY +ALLIUM +ALLIUMS +ALLOANTIBODIES +ALLOANTIBODY +ALLOANTIGEN +ALLOANTIGENS +ALLOBAR +ALLOBARS +ALLOCABLE +ALLOCATABLE +ALLOCATE +ALLOCATED +ALLOCATES +ALLOCATING +ALLOCATION +ALLOCATIONS +ALLOCATOR +ALLOCATORS +ALLOCUTION +ALLOCUTIONS +ALLOD +ALLODIA +ALLODIAL +ALLODIUM +ALLODS +ALLOGAMIES +ALLOGAMOUS +ALLOGAMY +ALLOGENEIC +ALLOGENIC +ALLOGRAFT +ALLOGRAFTED +ALLOGRAFTING +ALLOGRAFTS +ALLOGRAPH +ALLOGRAPHIC +ALLOGRAPHS +ALLOMETRIC +ALLOMETRIES +ALLOMETRY +ALLOMORPH +ALLOMORPHIC +ALLOMORPHISM +ALLOMORPHISMS +ALLOMORPHS +ALLONGE +ALLONGES +ALLONYM +ALLONYMS +ALLOPATH +ALLOPATHIES +ALLOPATHS +ALLOPATHY +ALLOPATRIC +ALLOPATRICALLY +ALLOPATRIES +ALLOPATRY +ALLOPHANE +ALLOPHANES +ALLOPHONE +ALLOPHONES +ALLOPHONIC +ALLOPLASM +ALLOPLASMS +ALLOPOLYPLOID +ALLOPOLYPLOIDS +ALLOPOLYPLOIDY +ALLOPURINOL +ALLOPURINOLS +ALLOSAUR +ALLOSAURS +ALLOSAURUS +ALLOSAURUSES +ALLOSTERIC +ALLOSTERICALLY +ALLOSTERIES +ALLOSTERY +ALLOT +ALLOTETRAPLOID +ALLOTETRAPLOIDS +ALLOTETRAPLOIDY +ALLOTMENT +ALLOTMENTS +ALLOTROPE +ALLOTROPES +ALLOTROPIC +ALLOTROPIES +ALLOTROPY +ALLOTS +ALLOTTED +ALLOTTEE +ALLOTTEES +ALLOTTER +ALLOTTERS +ALLOTTING +ALLOTYPE +ALLOTYPES +ALLOTYPIC +ALLOTYPICALLY +ALLOTYPIES +ALLOTYPY +ALLOVER +ALLOVERS +ALLOW +ALLOWABLE +ALLOWABLES +ALLOWABLY +ALLOWANCE +ALLOWANCED +ALLOWANCES +ALLOWANCING +ALLOWED +ALLOWEDLY +ALLOWING +ALLOWS +ALLOXAN +ALLOXANS +ALLOY +ALLOYED +ALLOYING +ALLOYS +ALLS +ALLSEED +ALLSEEDS +ALLSORTS +ALLSPICE +ALLSPICES +ALLUDE +ALLUDED +ALLUDES +ALLUDING +ALLURE +ALLURED +ALLUREMENT +ALLUREMENTS +ALLURER +ALLURERS +ALLURES +ALLURING +ALLURINGLY +ALLUSION +ALLUSIONS +ALLUSIVE +ALLUSIVELY +ALLUSIVENESS +ALLUSIVENESSES +ALLUVIA +ALLUVIAL +ALLUVIALS +ALLUVION +ALLUVIONS +ALLUVIUM +ALLUVIUMS +ALLY +ALLYING +ALLYL +ALLYLIC +ALLYLS +ALMA +ALMAGEST +ALMAGESTS +ALMAH +ALMAHS +ALMANAC +ALMANACK +ALMANACKS +ALMANACS +ALMANDINE +ALMANDINES +ALMANDITE +ALMANDITES +ALMAS +ALME +ALMEH +ALMEHS +ALMEMAR +ALMEMARS +ALMES +ALMIGHTINESS +ALMIGHTINESSES +ALMIGHTY +ALMNER +ALMNERS +ALMOND +ALMONDS +ALMONDY +ALMONER +ALMONERS +ALMONRIES +ALMONRY +ALMOST +ALMS +ALMSGIVER +ALMSGIVERS +ALMSGIVING +ALMSGIVINGS +ALMSHOUSE +ALMSHOUSES +ALMSMAN +ALMSMEN +ALMUCE +ALMUCES +ALMUD +ALMUDE +ALMUDES +ALMUDS +ALMUG +ALMUGS +ALNICO +ALNICOS +ALODIA +ALODIAL +ALODIUM +ALOE +ALOES +ALOETIC +ALOFT +ALOGICAL +ALOGICALLY +ALOHA +ALOHAS +ALOIN +ALOINS +ALONE +ALONENESS +ALONENESSES +ALONG +ALONGSHORE +ALONGSIDE +ALOOF +ALOOFLY +ALOOFNESS +ALOOFNESSES +ALOPECIA +ALOPECIAS +ALOPECIC +ALOUD +ALOW +ALP +ALPACA +ALPACAS +ALPENGLOW +ALPENGLOWS +ALPENHORN +ALPENHORNS +ALPENSTOCK +ALPENSTOCKS +ALPHA +ALPHABET +ALPHABETED +ALPHABETIC +ALPHABETICAL +ALPHABETICALLY +ALPHABETING +ALPHABETIZATION +ALPHABETIZE +ALPHABETIZED +ALPHABETIZER +ALPHABETIZERS +ALPHABETIZES +ALPHABETIZING +ALPHABETS +ALPHAMERIC +ALPHANUMERIC +ALPHANUMERICAL +ALPHANUMERICS +ALPHAS +ALPHORN +ALPHORNS +ALPHOSIS +ALPHOSISES +ALPHYL +ALPHYLS +ALPINE +ALPINELY +ALPINES +ALPINISM +ALPINISMS +ALPINIST +ALPINISTS +ALPS +ALREADY +ALRIGHT +ALS +ALSIKE +ALSIKES +ALSO +ALT +ALTAR +ALTARPIECE +ALTARPIECES +ALTARS +ALTAZIMUTH +ALTAZIMUTHS +ALTER +ALTERABILITIES +ALTERABILITY +ALTERABLE +ALTERABLY +ALTERANT +ALTERANTS +ALTERATION +ALTERATIONS +ALTERCATE +ALTERCATED +ALTERCATES +ALTERCATING +ALTERCATION +ALTERCATIONS +ALTERED +ALTERER +ALTERERS +ALTERING +ALTERITIES +ALTERITY +ALTERNANT +ALTERNANTS +ALTERNATE +ALTERNATED +ALTERNATELY +ALTERNATES +ALTERNATING +ALTERNATION +ALTERNATIONS +ALTERNATIVE +ALTERNATIVELY +ALTERNATIVENESS +ALTERNATIVES +ALTERNATOR +ALTERNATORS +ALTERS +ALTHAEA +ALTHAEAS +ALTHEA +ALTHEAS +ALTHO +ALTHORN +ALTHORNS +ALTHOUGH +ALTIGRAPH +ALTIGRAPHS +ALTIMETER +ALTIMETERS +ALTIMETRIES +ALTIMETRY +ALTIPLANO +ALTIPLANOS +ALTITUDE +ALTITUDES +ALTITUDINAL +ALTITUDINOUS +ALTO +ALTOCUMULI +ALTOCUMULUS +ALTOGETHER +ALTOGETHERS +ALTOIST +ALTOISTS +ALTOS +ALTOSTRATI +ALTOSTRATUS +ALTRICIAL +ALTRUISM +ALTRUISMS +ALTRUIST +ALTRUISTIC +ALTRUISTICALLY +ALTRUISTS +ALTS +ALUDEL +ALUDELS +ALULA +ALULAE +ALULAR +ALUM +ALUMIN +ALUMINA +ALUMINAS +ALUMINATE +ALUMINATES +ALUMINE +ALUMINES +ALUMINIC +ALUMINIUM +ALUMINIUMS +ALUMINIZE +ALUMINIZED +ALUMINIZES +ALUMINIZING +ALUMINOSILICATE +ALUMINOUS +ALUMINS +ALUMINUM +ALUMINUMS +ALUMNA +ALUMNAE +ALUMNI +ALUMNUS +ALUMROOT +ALUMROOTS +ALUMS +ALUMSTONE +ALUMSTONES +ALUNITE +ALUNITES +ALVEOLAR +ALVEOLARLY +ALVEOLARS +ALVEOLATE +ALVEOLI +ALVEOLUS +ALVINE +ALWAY +ALWAYS +ALYSSUM +ALYSSUMS +AM +AMA +AMADAVAT +AMADAVATS +AMADOU +AMADOUS +AMAH +AMAHS +AMAIN +AMALGAM +AMALGAMATE +AMALGAMATED +AMALGAMATES +AMALGAMATING +AMALGAMATION +AMALGAMATIONS +AMALGAMATOR +AMALGAMATORS +AMALGAMS +AMANDINE +AMANITA +AMANITAS +AMANITIN +AMANITINS +AMANTADINE +AMANTADINES +AMANUENSES +AMANUENSIS +AMARANTH +AMARANTHINE +AMARANTHS +AMARELLE +AMARELLES +AMARETTI +AMARETTO +AMARETTOS +AMARNA +AMARONE +AMARONES +AMARYLLIS +AMARYLLISES +AMAS +AMASS +AMASSABLE +AMASSED +AMASSER +AMASSERS +AMASSES +AMASSING +AMASSMENT +AMASSMENTS +AMATEUR +AMATEURISH +AMATEURISHLY +AMATEURISHNESS +AMATEURISM +AMATEURISMS +AMATEURS +AMATIVE +AMATIVELY +AMATIVENESS +AMATIVENESSES +AMATOL +AMATOLS +AMATORY +AMAUROSES +AMAUROSIS +AMAUROTIC +AMAZE +AMAZED +AMAZEDLY +AMAZEMENT +AMAZEMENTS +AMAZES +AMAZING +AMAZINGLY +AMAZON +AMAZONIAN +AMAZONIANS +AMAZONITE +AMAZONITES +AMAZONS +AMAZONSTONE +AMAZONSTONES +AMBAGE +AMBAGES +AMBAGIOUS +AMBARI +AMBARIES +AMBARIS +AMBARY +AMBASSADOR +AMBASSADORIAL +AMBASSADORS +AMBASSADORSHIP +AMBASSADORSHIPS +AMBASSADRESS +AMBASSADRESSES +AMBEER +AMBEERS +AMBER +AMBERGRIS +AMBERGRISES +AMBERIES +AMBERINA +AMBERINAS +AMBERJACK +AMBERJACKS +AMBEROID +AMBEROIDS +AMBERS +AMBERY +AMBIANCE +AMBIANCES +AMBIDEXTERITIES +AMBIDEXTERITY +AMBIDEXTROUS +AMBIDEXTROUSLY +AMBIENCE +AMBIENCES +AMBIENT +AMBIENTS +AMBIGUITIES +AMBIGUITY +AMBIGUOUS +AMBIGUOUSLY +AMBIGUOUSNESS +AMBIGUOUSNESSES +AMBIPOLAR +AMBISEXUAL +AMBISEXUALITIES +AMBISEXUALITY +AMBISEXUALS +AMBIT +AMBITION +AMBITIONED +AMBITIONING +AMBITIONLESS +AMBITIONS +AMBITIOUS +AMBITIOUSLY +AMBITIOUSNESS +AMBITIOUSNESSES +AMBITS +AMBIVALENCE +AMBIVALENCES +AMBIVALENT +AMBIVALENTLY +AMBIVERSION +AMBIVERSIONS +AMBIVERT +AMBIVERTS +AMBLE +AMBLED +AMBLER +AMBLERS +AMBLES +AMBLING +AMBLYGONITE +AMBLYGONITES +AMBLYOPIA +AMBLYOPIAS +AMBLYOPIC +AMBO +AMBOINA +AMBOINAS +AMBONES +AMBOS +AMBOYNA +AMBOYNAS +AMBRIES +AMBROID +AMBROIDS +AMBROSIA +AMBROSIAL +AMBROSIALLY +AMBROSIAN +AMBROSIAS +AMBROTYPE +AMBROTYPES +AMBRY +AMBSACE +AMBSACES +AMBULACRA +AMBULACRAL +AMBULACRUM +AMBULANCE +AMBULANCES +AMBULANT +AMBULATE +AMBULATED +AMBULATES +AMBULATING +AMBULATION +AMBULATIONS +AMBULATOR +AMBULATORIES +AMBULATORILY +AMBULATORS +AMBULATORY +AMBULETTE +AMBULETTES +AMBUSCADE +AMBUSCADED +AMBUSCADER +AMBUSCADERS +AMBUSCADES +AMBUSCADING +AMBUSH +AMBUSHED +AMBUSHER +AMBUSHERS +AMBUSHES +AMBUSHING +AMBUSHMENT +AMBUSHMENTS +AMEBA +AMEBAE +AMEBAN +AMEBAS +AMEBEAN +AMEBIASES +AMEBIASIS +AMEBIC +AMEBOCYTE +AMEBOCYTES +AMEBOID +AMEER +AMEERATE +AMEERATES +AMEERS +AMELCORN +AMELCORNS +AMELIORATE +AMELIORATED +AMELIORATES +AMELIORATING +AMELIORATION +AMELIORATIONS +AMELIORATIVE +AMELIORATOR +AMELIORATORS +AMELIORATORY +AMELOBLAST +AMELOBLASTS +AMEN +AMENABILITIES +AMENABILITY +AMENABLE +AMENABLY +AMEND +AMENDABLE +AMENDATORY +AMENDED +AMENDER +AMENDERS +AMENDING +AMENDMENT +AMENDMENTS +AMENDS +AMENITIES +AMENITY +AMENORRHEA +AMENORRHEAS +AMENORRHEIC +AMENS +AMENT +AMENTIA +AMENTIAS +AMENTIFEROUS +AMENTS +AMERCE +AMERCED +AMERCEMENT +AMERCEMENTS +AMERCER +AMERCERS +AMERCES +AMERCIABLE +AMERCING +AMERICIUM +AMERICIUMS +AMESACE +AMESACES +AMETHYST +AMETHYSTINE +AMETHYSTS +AMETROPIA +AMETROPIAS +AMETROPIC +AMI +AMIA +AMIABILITIES +AMIABILITY +AMIABLE +AMIABLENESS +AMIABLENESSES +AMIABLY +AMIANTHUS +AMIANTHUSES +AMIANTUS +AMIANTUSES +AMIAS +AMICABILITIES +AMICABILITY +AMICABLE +AMICABLENESS +AMICABLENESSES +AMICABLY +AMICE +AMICES +AMICI +AMICUS +AMID +AMIDASE +AMIDASES +AMIDE +AMIDES +AMIDIC +AMIDIN +AMIDINE +AMIDINES +AMIDINS +AMIDO +AMIDOGEN +AMIDOGENS +AMIDOL +AMIDOLS +AMIDONE +AMIDONES +AMIDS +AMIDSHIP +AMIDSHIPS +AMIDST +AMIE +AMIES +AMIGA +AMIGAS +AMIGO +AMIGOS +AMIN +AMINE +AMINES +AMINIC +AMINITIES +AMINITY +AMINO +AMINOACIDURIA +AMINOACIDURIAS +AMINOPEPTIDASE +AMINOPEPTIDASES +AMINOPHYLLINE +AMINOPHYLLINES +AMINOPTERIN +AMINOPTERINS +AMINOPYRINE +AMINOPYRINES +AMINS +AMIR +AMIRATE +AMIRATES +AMIRS +AMIS +AMISS +AMITIES +AMITOSES +AMITOSIS +AMITOTIC +AMITOTICALLY +AMITRIPTYLINE +AMITRIPTYLINES +AMITROLE +AMITROLES +AMITY +AMMETER +AMMETERS +AMMINE +AMMINES +AMMINO +AMMO +AMMOCETE +AMMOCETES +AMMONAL +AMMONALS +AMMONIA +AMMONIAC +AMMONIACAL +AMMONIACS +AMMONIAS +AMMONIATE +AMMONIATED +AMMONIATES +AMMONIATING +AMMONIATION +AMMONIATIONS +AMMONIC +AMMONIFICATION +AMMONIFICATIONS +AMMONIFIED +AMMONIFIES +AMMONIFY +AMMONIFYING +AMMONITE +AMMONITES +AMMONITIC +AMMONIUM +AMMONIUMS +AMMONO +AMMONOID +AMMONOIDS +AMMOS +AMMUNITION +AMMUNITIONS +AMNESIA +AMNESIAC +AMNESIACS +AMNESIAS +AMNESIC +AMNESICS +AMNESTIC +AMNESTIED +AMNESTIES +AMNESTY +AMNESTYING +AMNIA +AMNIC +AMNIO +AMNIOCENTESES +AMNIOCENTESIS +AMNION +AMNIONIC +AMNIONS +AMNIOS +AMNIOTE +AMNIOTES +AMNIOTIC +AMOBARBITAL +AMOBARBITALS +AMOEBA +AMOEBAE +AMOEBAEAN +AMOEBAN +AMOEBAS +AMOEBEAN +AMOEBIASES +AMOEBIASIS +AMOEBIC +AMOEBOCYTE +AMOEBOCYTES +AMOEBOID +AMOK +AMOKS +AMOLE +AMOLES +AMONG +AMONGST +AMONTILLADO +AMONTILLADOS +AMORAL +AMORALISM +AMORALISMS +AMORALITIES +AMORALITY +AMORALLY +AMORETTI +AMORETTO +AMORETTOS +AMORINI +AMORINO +AMORIST +AMORISTIC +AMORISTS +AMOROSO +AMOROUS +AMOROUSLY +AMOROUSNESS +AMOROUSNESSES +AMORPHISM +AMORPHISMS +AMORPHOUS +AMORPHOUSLY +AMORPHOUSNESS +AMORPHOUSNESSES +AMORT +AMORTISE +AMORTISED +AMORTISES +AMORTISING +AMORTIZABLE +AMORTIZATION +AMORTIZATIONS +AMORTIZE +AMORTIZED +AMORTIZES +AMORTIZING +AMOSITE +AMOSITES +AMOTION +AMOTIONS +AMOUNT +AMOUNTED +AMOUNTING +AMOUNTS +AMOUR +AMOURS +AMOXICILLIN +AMOXICILLINS +AMOXYCILLIN +AMOXYCILLINS +AMP +AMPED +AMPERAGE +AMPERAGES +AMPERE +AMPERES +AMPEROMETRIC +AMPERSAND +AMPERSANDS +AMPHETAMINE +AMPHETAMINES +AMPHIBIA +AMPHIBIAN +AMPHIBIANS +AMPHIBIOUS +AMPHIBIOUSLY +AMPHIBIOUSNESS +AMPHIBOLE +AMPHIBOLES +AMPHIBOLIES +AMPHIBOLITE +AMPHIBOLITES +AMPHIBOLOGIES +AMPHIBOLOGY +AMPHIBOLY +AMPHIBRACH +AMPHIBRACHIC +AMPHIBRACHS +AMPHICTYONIC +AMPHICTYONIES +AMPHICTYONY +AMPHIDIPLOID +AMPHIDIPLOIDIES +AMPHIDIPLOIDS +AMPHIDIPLOIDY +AMPHIGORIES +AMPHIGORY +AMPHIMACER +AMPHIMACERS +AMPHIMIXES +AMPHIMIXIS +AMPHIOXI +AMPHIOXUS +AMPHIOXUSES +AMPHIPATHIC +AMPHIPHILE +AMPHIPHILES +AMPHIPHILIC +AMPHIPLOID +AMPHIPLOIDIES +AMPHIPLOIDS +AMPHIPLOIDY +AMPHIPOD +AMPHIPODS +AMPHIPROSTYLE +AMPHIPROSTYLES +AMPHISBAENA +AMPHISBAENAS +AMPHISBAENIC +AMPHITHEATER +AMPHITHEATERS +AMPHITHEATRIC +AMPHITHEATRICAL +AMPHORA +AMPHORAE +AMPHORAL +AMPHORAS +AMPHOTERIC +AMPICILLIN +AMPICILLINS +AMPING +AMPLE +AMPLENESS +AMPLENESSES +AMPLER +AMPLEST +AMPLEXUS +AMPLEXUSES +AMPLIDYNE +AMPLIDYNES +AMPLIFICATION +AMPLIFICATIONS +AMPLIFIED +AMPLIFIER +AMPLIFIERS +AMPLIFIES +AMPLIFY +AMPLIFYING +AMPLITUDE +AMPLITUDES +AMPLY +AMPOULE +AMPOULES +AMPS +AMPUL +AMPULE +AMPULES +AMPULLA +AMPULLAE +AMPULLAR +AMPULLARY +AMPULS +AMPUTATE +AMPUTATED +AMPUTATES +AMPUTATING +AMPUTATION +AMPUTATIONS +AMPUTATOR +AMPUTATORS +AMPUTEE +AMPUTEES +AMREETA +AMREETAS +AMRITA +AMRITAS +AMSINCKIA +AMSINCKIAS +AMTRAC +AMTRACK +AMTRACKS +AMTRACS +AMU +AMUCK +AMUCKS +AMULET +AMULETS +AMUS +AMUSABLE +AMUSE +AMUSED +AMUSEDLY +AMUSEMENT +AMUSEMENTS +AMUSER +AMUSERS +AMUSES +AMUSIA +AMUSIAS +AMUSING +AMUSINGLY +AMUSINGNESS +AMUSINGNESSES +AMUSIVE +AMYGDALA +AMYGDALAE +AMYGDALE +AMYGDALES +AMYGDALIN +AMYGDALINS +AMYGDALOID +AMYGDALOIDAL +AMYGDALOIDS +AMYGDULE +AMYGDULES +AMYL +AMYLASE +AMYLASES +AMYLENE +AMYLENES +AMYLIC +AMYLOGEN +AMYLOGENS +AMYLOID +AMYLOIDOSES +AMYLOIDOSIS +AMYLOIDS +AMYLOLYTIC +AMYLOPECTIN +AMYLOPECTINS +AMYLOPLAST +AMYLOPLASTS +AMYLOPSIN +AMYLOPSINS +AMYLOSE +AMYLOSES +AMYLS +AMYLUM +AMYLUMS +AMYOTONIA +AMYOTONIAS +AN +ANA +ANABAENA +ANABAENAS +ANABAPTISM +ANABAPTISMS +ANABAS +ANABASES +ANABASIS +ANABATIC +ANABIOSES +ANABIOSIS +ANABIOTIC +ANABLEPS +ANABLEPSES +ANABOLIC +ANABOLISM +ANABOLISMS +ANABRANCH +ANABRANCHES +ANACHRONIC +ANACHRONISM +ANACHRONISMS +ANACHRONISTIC +ANACHRONOUS +ANACHRONOUSLY +ANACLISES +ANACLISIS +ANACLITIC +ANACOLUTHA +ANACOLUTHIC +ANACOLUTHICALLY +ANACOLUTHON +ANACOLUTHONS +ANACONDA +ANACONDAS +ANACREONTIC +ANACREONTICS +ANACRUSES +ANACRUSIS +ANADEM +ANADEMS +ANADIPLOSES +ANADIPLOSIS +ANADROMOUS +ANAEMIA +ANAEMIAS +ANAEMIC +ANAEROBE +ANAEROBES +ANAEROBIA +ANAEROBIC +ANAEROBICALLY +ANAEROBIOSES +ANAEROBIOSIS +ANAEROBIUM +ANAESTHESIA +ANAESTHESIAS +ANAESTHETIC +ANAESTHETICS +ANAGENESES +ANAGENESIS +ANAGLYPH +ANAGLYPHIC +ANAGLYPHS +ANAGNORISES +ANAGNORISIS +ANAGOGE +ANAGOGES +ANAGOGIC +ANAGOGICAL +ANAGOGICALLY +ANAGOGIES +ANAGOGY +ANAGRAM +ANAGRAMMATIC +ANAGRAMMATICAL +ANAGRAMMATIZE +ANAGRAMMATIZED +ANAGRAMMATIZES +ANAGRAMMATIZING +ANAGRAMMED +ANAGRAMMING +ANAGRAMS +ANAL +ANALCIME +ANALCIMES +ANALCIMIC +ANALCITE +ANALCITES +ANALECTA +ANALECTIC +ANALECTS +ANALEMMA +ANALEMMAS +ANALEMMATA +ANALEMMATIC +ANALEPTIC +ANALEPTICS +ANALGESIA +ANALGESIAS +ANALGESIC +ANALGESICS +ANALGETIC +ANALGETICS +ANALGIA +ANALGIAS +ANALITIES +ANALITY +ANALLY +ANALOG +ANALOGIC +ANALOGICAL +ANALOGICALLY +ANALOGIES +ANALOGISM +ANALOGISMS +ANALOGIST +ANALOGISTS +ANALOGIZE +ANALOGIZED +ANALOGIZES +ANALOGIZING +ANALOGOUS +ANALOGOUSLY +ANALOGOUSNESS +ANALOGOUSNESSES +ANALOGS +ANALOGUE +ANALOGUES +ANALOGY +ANALPHABET +ANALPHABETIC +ANALPHABETICS +ANALPHABETISM +ANALPHABETISMS +ANALPHABETS +ANALYSAND +ANALYSANDS +ANALYSE +ANALYSED +ANALYSER +ANALYSERS +ANALYSES +ANALYSING +ANALYSIS +ANALYST +ANALYSTS +ANALYTE +ANALYTES +ANALYTIC +ANALYTICAL +ANALYTICALLY +ANALYTICITIES +ANALYTICITY +ANALYTICS +ANALYZABILITIES +ANALYZABILITY +ANALYZABLE +ANALYZATION +ANALYZATIONS +ANALYZE +ANALYZED +ANALYZER +ANALYZERS +ANALYZES +ANALYZING +ANAMNESES +ANAMNESIS +ANAMNESTIC +ANAMORPHIC +ANANKE +ANANKES +ANAPAEST +ANAPAESTS +ANAPEST +ANAPESTIC +ANAPESTICS +ANAPESTS +ANAPHASE +ANAPHASES +ANAPHASIC +ANAPHOR +ANAPHORA +ANAPHORAL +ANAPHORAS +ANAPHORIC +ANAPHORICALLY +ANAPHORS +ANAPHRODISIAC +ANAPHRODISIACS +ANAPHYLACTIC +ANAPHYLACTOID +ANAPHYLAXES +ANAPHYLAXIS +ANAPLASIA +ANAPLASIAS +ANAPLASMOSES +ANAPLASMOSIS +ANAPLASTIC +ANAPTYXES +ANAPTYXIS +ANARCH +ANARCHIC +ANARCHICAL +ANARCHICALLY +ANARCHIES +ANARCHISM +ANARCHISMS +ANARCHIST +ANARCHISTIC +ANARCHISTS +ANARCHS +ANARCHY +ANARTHRIA +ANARTHRIAS +ANARTHRIC +ANAS +ANASARCA +ANASARCAS +ANASARCOUS +ANASTIGMAT +ANASTIGMATIC +ANASTIGMATS +ANASTOMOSE +ANASTOMOSED +ANASTOMOSES +ANASTOMOSING +ANASTOMOSIS +ANASTOMOTIC +ANASTROPHE +ANASTROPHES +ANATASE +ANATASES +ANATHEMA +ANATHEMAS +ANATHEMATA +ANATHEMATIZE +ANATHEMATIZED +ANATHEMATIZES +ANATHEMATIZING +ANATOMIC +ANATOMICAL +ANATOMICALLY +ANATOMIES +ANATOMISE +ANATOMISED +ANATOMISES +ANATOMISING +ANATOMIST +ANATOMISTS +ANATOMIZE +ANATOMIZED +ANATOMIZES +ANATOMIZING +ANATOMY +ANATOXIN +ANATOXINS +ANATROPOUS +ANATTO +ANATTOS +ANCESTOR +ANCESTORED +ANCESTORING +ANCESTORS +ANCESTRAL +ANCESTRALLY +ANCESTRESS +ANCESTRESSES +ANCESTRIES +ANCESTRY +ANCHO +ANCHOR +ANCHORAGE +ANCHORAGES +ANCHORED +ANCHORESS +ANCHORESSES +ANCHORET +ANCHORETS +ANCHORING +ANCHORITE +ANCHORITES +ANCHORITIC +ANCHORITICALLY +ANCHORLESS +ANCHORMAN +ANCHORMEN +ANCHORPEOPLE +ANCHORPERSON +ANCHORPERSONS +ANCHORS +ANCHORWOMAN +ANCHORWOMEN +ANCHOS +ANCHOVETA +ANCHOVETAS +ANCHOVETTA +ANCHOVETTAS +ANCHOVIES +ANCHOVY +ANCHUSA +ANCHUSAS +ANCHUSIN +ANCHUSINS +ANCHYLOSE +ANCHYLOSED +ANCHYLOSES +ANCHYLOSING +ANCIENT +ANCIENTER +ANCIENTEST +ANCIENTLY +ANCIENTNESS +ANCIENTNESSES +ANCIENTRIES +ANCIENTRY +ANCIENTS +ANCILLA +ANCILLAE +ANCILLARIES +ANCILLARY +ANCILLAS +ANCIPITAL +ANCON +ANCONAL +ANCONE +ANCONEAL +ANCONES +ANCONOID +ANCRESS +ANCRESSES +ANCYLOSTOMIASES +ANCYLOSTOMIASIS +AND +ANDALUSITE +ANDALUSITES +ANDANTE +ANDANTES +ANDANTINI +ANDANTINO +ANDANTINOS +ANDESITE +ANDESITES +ANDESITIC +ANDESYTE +ANDESYTES +ANDIRON +ANDIRONS +ANDOUILLE +ANDOUILLES +ANDOUILLETTE +ANDOUILLETTES +ANDRADITE +ANDRADITES +ANDRO +ANDROCENTRIC +ANDROECIA +ANDROECIUM +ANDROGEN +ANDROGENESES +ANDROGENESIS +ANDROGENETIC +ANDROGENIC +ANDROGENS +ANDROGYNE +ANDROGYNES +ANDROGYNIES +ANDROGYNOUS +ANDROGYNY +ANDROID +ANDROIDS +ANDROLOGIES +ANDROLOGY +ANDROMEDA +ANDROMEDAS +ANDROS +ANDROSTERONE +ANDROSTERONES +ANDS +ANE +ANEAR +ANEARED +ANEARING +ANEARS +ANECDOTA +ANECDOTAGE +ANECDOTAGES +ANECDOTAL +ANECDOTALISM +ANECDOTALISMS +ANECDOTALIST +ANECDOTALISTS +ANECDOTALLY +ANECDOTE +ANECDOTES +ANECDOTIC +ANECDOTICAL +ANECDOTICALLY +ANECDOTIST +ANECDOTISTS +ANECHOIC +ANELASTIC +ANELASTICITIES +ANELASTICITY +ANELE +ANELED +ANELES +ANELING +ANEMIA +ANEMIAS +ANEMIC +ANEMICALLY +ANEMOGRAPH +ANEMOGRAPHS +ANEMOLOGIES +ANEMOLOGY +ANEMOMETER +ANEMOMETERS +ANEMOMETRIES +ANEMOMETRY +ANEMONE +ANEMONES +ANEMOPHILOUS +ANEMOSES +ANEMOSIS +ANENCEPHALIC +ANENCEPHALIES +ANENCEPHALY +ANENST +ANENT +ANERGIA +ANERGIAS +ANERGIC +ANERGIES +ANERGY +ANEROID +ANEROIDS +ANES +ANESTHESIA +ANESTHESIAS +ANESTHESIOLOGY +ANESTHETIC +ANESTHETICALLY +ANESTHETICS +ANESTHETIST +ANESTHETISTS +ANESTHETIZE +ANESTHETIZED +ANESTHETIZES +ANESTHETIZING +ANESTRI +ANESTROUS +ANESTRUS +ANETHOL +ANETHOLE +ANETHOLES +ANETHOLS +ANEUPLOID +ANEUPLOIDIES +ANEUPLOIDS +ANEUPLOIDY +ANEURIN +ANEURINS +ANEURISM +ANEURISMS +ANEURYSM +ANEURYSMAL +ANEURYSMS +ANEW +ANFRACTUOSITIES +ANFRACTUOSITY +ANFRACTUOUS +ANGA +ANGAKOK +ANGAKOKS +ANGARIA +ANGARIAS +ANGARIES +ANGARY +ANGAS +ANGEL +ANGELED +ANGELFISH +ANGELFISHES +ANGELIC +ANGELICA +ANGELICAL +ANGELICALLY +ANGELICAS +ANGELING +ANGELOLOGIES +ANGELOLOGIST +ANGELOLOGISTS +ANGELOLOGY +ANGELS +ANGELUS +ANGELUSES +ANGER +ANGERED +ANGERING +ANGERLESS +ANGERLY +ANGERS +ANGINA +ANGINAL +ANGINAS +ANGINOSE +ANGINOUS +ANGIOGENESES +ANGIOGENESIS +ANGIOGENIC +ANGIOGRAM +ANGIOGRAMS +ANGIOGRAPHIC +ANGIOGRAPHIES +ANGIOGRAPHY +ANGIOLOGIES +ANGIOLOGY +ANGIOMA +ANGIOMAS +ANGIOMATA +ANGIOMATOUS +ANGIOPLASTIES +ANGIOPLASTY +ANGIOSPERM +ANGIOSPERMOUS +ANGIOSPERMS +ANGIOTENSIN +ANGIOTENSINS +ANGLE +ANGLED +ANGLEPOD +ANGLEPODS +ANGLER +ANGLERFISH +ANGLERFISHES +ANGLERS +ANGLES +ANGLESITE +ANGLESITES +ANGLEWORM +ANGLEWORMS +ANGLICE +ANGLICISE +ANGLICISED +ANGLICISES +ANGLICISING +ANGLICISM +ANGLICISMS +ANGLICIZATION +ANGLICIZATIONS +ANGLICIZE +ANGLICIZED +ANGLICIZES +ANGLICIZING +ANGLING +ANGLINGS +ANGLO +ANGLOPHONE +ANGLOS +ANGORA +ANGORAS +ANGOSTURA +ANGOSTURAS +ANGRIER +ANGRIEST +ANGRILY +ANGRINESS +ANGRINESSES +ANGRY +ANGST +ANGSTROM +ANGSTROMS +ANGSTS +ANGUINE +ANGUISH +ANGUISHED +ANGUISHES +ANGUISHING +ANGULAR +ANGULARITIES +ANGULARITY +ANGULARLY +ANGULATE +ANGULATED +ANGULATES +ANGULATING +ANGULATION +ANGULATIONS +ANGULOSE +ANGULOUS +ANHEDONIA +ANHEDONIAS +ANHEDONIC +ANHINGA +ANHINGAS +ANHYDRIDE +ANHYDRIDES +ANHYDRITE +ANHYDRITES +ANHYDROUS +ANI +ANIL +ANILE +ANILIN +ANILINCTUS +ANILINCTUSES +ANILINE +ANILINES +ANILINGUS +ANILINGUSES +ANILINS +ANILITIES +ANILITY +ANILS +ANIMA +ANIMACIES +ANIMACY +ANIMADVERSION +ANIMADVERSIONS +ANIMADVERT +ANIMADVERTED +ANIMADVERTING +ANIMADVERTS +ANIMAL +ANIMALCULA +ANIMALCULE +ANIMALCULES +ANIMALCULUM +ANIMALIAN +ANIMALIC +ANIMALIER +ANIMALIERS +ANIMALISM +ANIMALISMS +ANIMALIST +ANIMALISTIC +ANIMALISTS +ANIMALITIES +ANIMALITY +ANIMALIZATION +ANIMALIZATIONS +ANIMALIZE +ANIMALIZED +ANIMALIZES +ANIMALIZING +ANIMALLIKE +ANIMALLY +ANIMALS +ANIMAS +ANIMATE +ANIMATED +ANIMATEDLY +ANIMATELY +ANIMATENESS +ANIMATENESSES +ANIMATER +ANIMATERS +ANIMATES +ANIMATING +ANIMATION +ANIMATIONS +ANIMATISM +ANIMATISMS +ANIMATIST +ANIMATISTS +ANIMATO +ANIMATOR +ANIMATORS +ANIMATRONIC +ANIMATRONICALLY +ANIME +ANIMES +ANIMI +ANIMIS +ANIMISM +ANIMISMS +ANIMIST +ANIMISTIC +ANIMISTS +ANIMOSITIES +ANIMOSITY +ANIMUS +ANIMUSES +ANION +ANIONIC +ANIONS +ANIS +ANISE +ANISEED +ANISEEDS +ANISEIKONIA +ANISEIKONIAS +ANISEIKONIC +ANISES +ANISETTE +ANISETTES +ANISIC +ANISOGAMIES +ANISOGAMOUS +ANISOGAMY +ANISOLE +ANISOLES +ANISOMETROPIA +ANISOMETROPIAS +ANISOMETROPIC +ANISOTROPIC +ANISOTROPICALLY +ANISOTROPIES +ANISOTROPISM +ANISOTROPISMS +ANISOTROPY +ANKERITE +ANKERITES +ANKH +ANKHS +ANKLE +ANKLEBONE +ANKLEBONES +ANKLED +ANKLES +ANKLET +ANKLETS +ANKLING +ANKUS +ANKUSES +ANKUSH +ANKUSHES +ANKYLOSAUR +ANKYLOSAURS +ANKYLOSAURUS +ANKYLOSAURUSES +ANKYLOSE +ANKYLOSED +ANKYLOSES +ANKYLOSING +ANKYLOSIS +ANKYLOSTOMIASES +ANKYLOSTOMIASIS +ANKYLOTIC +ANLACE +ANLACES +ANLAGE +ANLAGEN +ANLAGES +ANLAS +ANLASES +ANNA +ANNAL +ANNALIST +ANNALISTIC +ANNALISTS +ANNALS +ANNAS +ANNATES +ANNATTO +ANNATTOS +ANNEAL +ANNEALED +ANNEALER +ANNEALERS +ANNEALING +ANNEALS +ANNELID +ANNELIDAN +ANNELIDANS +ANNELIDS +ANNEX +ANNEXATION +ANNEXATIONAL +ANNEXATIONIST +ANNEXATIONISTS +ANNEXATIONS +ANNEXE +ANNEXED +ANNEXES +ANNEXING +ANNIHILATE +ANNIHILATED +ANNIHILATES +ANNIHILATING +ANNIHILATION +ANNIHILATIONS +ANNIHILATOR +ANNIHILATORS +ANNIHILATORY +ANNIVERSARIES +ANNIVERSARY +ANNONA +ANNONAS +ANNOTATE +ANNOTATED +ANNOTATES +ANNOTATING +ANNOTATION +ANNOTATIONS +ANNOTATIVE +ANNOTATOR +ANNOTATORS +ANNOUNCE +ANNOUNCED +ANNOUNCEMENT +ANNOUNCEMENTS +ANNOUNCER +ANNOUNCERS +ANNOUNCES +ANNOUNCING +ANNOY +ANNOYANCE +ANNOYANCES +ANNOYED +ANNOYER +ANNOYERS +ANNOYING +ANNOYINGLY +ANNOYS +ANNUAL +ANNUALIZE +ANNUALIZED +ANNUALIZES +ANNUALIZING +ANNUALLY +ANNUALS +ANNUITANT +ANNUITANTS +ANNUITIES +ANNUITY +ANNUL +ANNULAR +ANNULARLY +ANNULATE +ANNULATED +ANNULATION +ANNULATIONS +ANNULET +ANNULETS +ANNULI +ANNULLED +ANNULLING +ANNULMENT +ANNULMENTS +ANNULOSE +ANNULS +ANNULUS +ANNULUSES +ANNUNCIATE +ANNUNCIATED +ANNUNCIATES +ANNUNCIATING +ANNUNCIATION +ANNUNCIATIONS +ANNUNCIATOR +ANNUNCIATORS +ANNUNCIATORY +ANOA +ANOAS +ANODAL +ANODALLY +ANODE +ANODES +ANODIC +ANODICALLY +ANODIZATION +ANODIZATIONS +ANODIZE +ANODIZED +ANODIZES +ANODIZING +ANODYNE +ANODYNES +ANODYNIC +ANOINT +ANOINTED +ANOINTER +ANOINTERS +ANOINTING +ANOINTMENT +ANOINTMENTS +ANOINTS +ANOLE +ANOLES +ANOLYTE +ANOLYTES +ANOMALIES +ANOMALOUS +ANOMALOUSLY +ANOMALOUSNESS +ANOMALOUSNESSES +ANOMALY +ANOMIC +ANOMIE +ANOMIES +ANOMY +ANON +ANONYM +ANONYMITIES +ANONYMITY +ANONYMOUS +ANONYMOUSLY +ANONYMOUSNESS +ANONYMOUSNESSES +ANONYMS +ANOOPSIA +ANOOPSIAS +ANOPHELES +ANOPHELINE +ANOPHELINES +ANOPIA +ANOPIAS +ANOPSIA +ANOPSIAS +ANORAK +ANORAKS +ANORECTIC +ANORECTICS +ANORETIC +ANORETICS +ANOREXIA +ANOREXIAS +ANOREXIC +ANOREXICS +ANOREXIES +ANOREXIGENIC +ANOREXY +ANORTHIC +ANORTHITE +ANORTHITES +ANORTHITIC +ANORTHOSITE +ANORTHOSITES +ANORTHOSITIC +ANOSMATIC +ANOSMIA +ANOSMIAS +ANOSMIC +ANOTHER +ANOVULANT +ANOVULANTS +ANOVULAR +ANOVULATORY +ANOXEMIA +ANOXEMIAS +ANOXEMIC +ANOXIA +ANOXIAS +ANOXIC +ANSA +ANSAE +ANSATE +ANSATED +ANSERINE +ANSERINES +ANSEROUS +ANSWER +ANSWERABLE +ANSWERED +ANSWERER +ANSWERERS +ANSWERING +ANSWERS +ANT +ANTA +ANTACID +ANTACIDS +ANTAE +ANTAGONISM +ANTAGONISMS +ANTAGONIST +ANTAGONISTIC +ANTAGONISTS +ANTAGONIZE +ANTAGONIZED +ANTAGONIZES +ANTAGONIZING +ANTALGIC +ANTALGICS +ANTALKALI +ANTALKALIES +ANTALKALIS +ANTARCTIC +ANTAS +ANTBEAR +ANTBEARS +ANTE +ANTEATER +ANTEATERS +ANTEBELLUM +ANTECEDE +ANTECEDED +ANTECEDENCE +ANTECEDENCES +ANTECEDENT +ANTECEDENTLY +ANTECEDENTS +ANTECEDES +ANTECEDING +ANTECESSOR +ANTECESSORS +ANTECHAMBER +ANTECHAMBERS +ANTECHAPEL +ANTECHAPELS +ANTECHOIR +ANTECHOIRS +ANTED +ANTEDATE +ANTEDATED +ANTEDATES +ANTEDATING +ANTEDILUVIAN +ANTEDILUVIANS +ANTEED +ANTEFIX +ANTEFIXA +ANTEFIXAE +ANTEFIXAL +ANTEFIXES +ANTEING +ANTELOPE +ANTELOPES +ANTEMORTEM +ANTENATAL +ANTENATALLY +ANTENNA +ANTENNAE +ANTENNAL +ANTENNAS +ANTENNULAR +ANTENNULE +ANTENNULES +ANTENUPTIAL +ANTEPAST +ANTEPASTS +ANTEPENDIA +ANTEPENDIUM +ANTEPENDIUMS +ANTEPENULT +ANTEPENULTIMA +ANTEPENULTIMAS +ANTEPENULTIMATE +ANTEPENULTS +ANTERIOR +ANTERIORLY +ANTEROOM +ANTEROOMS +ANTES +ANTETYPE +ANTETYPES +ANTEVERT +ANTEVERTED +ANTEVERTING +ANTEVERTS +ANTHELIA +ANTHELICES +ANTHELION +ANTHELIONS +ANTHELIX +ANTHELIXES +ANTHELMINTIC +ANTHELMINTICS +ANTHEM +ANTHEMED +ANTHEMIA +ANTHEMIC +ANTHEMING +ANTHEMION +ANTHEMS +ANTHER +ANTHERAL +ANTHERID +ANTHERIDIA +ANTHERIDIAL +ANTHERIDIUM +ANTHERIDS +ANTHERS +ANTHESES +ANTHESIS +ANTHILL +ANTHILLS +ANTHOCYAN +ANTHOCYANIN +ANTHOCYANINS +ANTHOCYANS +ANTHODIA +ANTHODIUM +ANTHOID +ANTHOLOGICAL +ANTHOLOGIES +ANTHOLOGIST +ANTHOLOGISTS +ANTHOLOGIZE +ANTHOLOGIZED +ANTHOLOGIZER +ANTHOLOGIZERS +ANTHOLOGIZES +ANTHOLOGIZING +ANTHOLOGY +ANTHOPHILOUS +ANTHOPHYLLITE +ANTHOPHYLLITES +ANTHOZOAN +ANTHOZOANS +ANTHOZOIC +ANTHRACENE +ANTHRACENES +ANTHRACES +ANTHRACITE +ANTHRACITES +ANTHRACITIC +ANTHRACNOSE +ANTHRACNOSES +ANTHRANILATE +ANTHRANILATES +ANTHRAQUINONE +ANTHRAQUINONES +ANTHRAX +ANTHROPIC +ANTHROPICAL +ANTHROPOCENTRIC +ANTHROPOGENIC +ANTHROPOID +ANTHROPOIDS +ANTHROPOLOGICAL +ANTHROPOLOGIES +ANTHROPOLOGIST +ANTHROPOLOGISTS +ANTHROPOLOGY +ANTHROPOMETRIC +ANTHROPOMETRIES +ANTHROPOMETRY +ANTHROPOMORPH +ANTHROPOMORPHIC +ANTHROPOMORPHS +ANTHROPOPATHISM +ANTHROPOPHAGI +ANTHROPOPHAGIES +ANTHROPOPHAGOUS +ANTHROPOPHAGUS +ANTHROPOPHAGY +ANTHROPOSOPHIES +ANTHROPOSOPHY +ANTHURIUM +ANTHURIUMS +ANTI +ANTIABORTION +ANTIABORTIONIST +ANTIABUSE +ANTIACADEMIC +ANTIACNE +ANTIAGGRESSION +ANTIAGING +ANTIAIR +ANTIAIRCRAFT +ANTIAIRCRAFTS +ANTIALCOHOL +ANTIALCOHOLISM +ANTIALIEN +ANTIALLERGENIC +ANTIANEMIA +ANTIANXIETY +ANTIAPARTHEID +ANTIAPHRODISIAC +ANTIAR +ANTIARIN +ANTIARINS +ANTIARMOR +ANTIARRHYTHMIC +ANTIARS +ANTIARTHRITIC +ANTIARTHRITICS +ANTIARTHRITIS +ANTIASTHMA +ANTIATOM +ANTIATOMS +ANTIAUTHORITY +ANTIAUXIN +ANTIAUXINS +ANTIBACKLASH +ANTIBACTERIAL +ANTIBACTERIALS +ANTIBIAS +ANTIBILLBOARD +ANTIBIOSES +ANTIBIOSIS +ANTIBIOTIC +ANTIBIOTICALLY +ANTIBIOTICS +ANTIBLACK +ANTIBLACKISM +ANTIBLACKISMS +ANTIBODIES +ANTIBODY +ANTIBOSS +ANTIBOURGEOIS +ANTIBOYCOTT +ANTIBUG +ANTIBURGLAR +ANTIBURGLARY +ANTIBUSER +ANTIBUSERS +ANTIBUSINESS +ANTIBUSING +ANTIC +ANTICAKING +ANTICALLY +ANTICANCER +ANTICAPITALISM +ANTICAPITALISMS +ANTICAPITALIST +ANTICAR +ANTICARCINOGEN +ANTICARCINOGENS +ANTICARIES +ANTICELLULITE +ANTICENSORSHIP +ANTICHLOR +ANTICHLORS +ANTICHOICE +ANTICHOICER +ANTICHOICERS +ANTICHOLESTEROL +ANTICHOLINERGIC +ANTICHURCH +ANTICIGARETTE +ANTICIPANT +ANTICIPANTS +ANTICIPATABLE +ANTICIPATE +ANTICIPATED +ANTICIPATES +ANTICIPATING +ANTICIPATION +ANTICIPATIONS +ANTICIPATOR +ANTICIPATORS +ANTICIPATORY +ANTICITY +ANTICIVIC +ANTICK +ANTICKED +ANTICKING +ANTICKS +ANTICLASSICAL +ANTICLERICAL +ANTICLERICALISM +ANTICLERICALS +ANTICLIMACTIC +ANTICLIMACTICAL +ANTICLIMAX +ANTICLIMAXES +ANTICLINAL +ANTICLINE +ANTICLINES +ANTICLING +ANTICLOCKWISE +ANTICLOTTING +ANTICLY +ANTICOAGULANT +ANTICOAGULANTS +ANTICODON +ANTICODONS +ANTICOLD +ANTICOLLISION +ANTICOLONIAL +ANTICOLONIALISM +ANTICOLONIALIST +ANTICOMMERCIAL +ANTICOMMUNISM +ANTICOMMUNISMS +ANTICOMMUNIST +ANTICOMMUNISTS +ANTICOMPETITIVE +ANTICONSUMER +ANTICONVULSANT +ANTICONVULSANTS +ANTICONVULSIVE +ANTICONVULSIVES +ANTICORPORATE +ANTICORROSION +ANTICORROSIVE +ANTICORROSIVES +ANTICORRUPTION +ANTICRACK +ANTICREATIVE +ANTICRIME +ANTICRUELTY +ANTICS +ANTICULT +ANTICULTS +ANTICULTURAL +ANTICYCLONE +ANTICYCLONES +ANTICYCLONIC +ANTIDANDRUFF +ANTIDEFAMATION +ANTIDEMOCRATIC +ANTIDEPRESSANT +ANTIDEPRESSANTS +ANTIDEPRESSION +ANTIDERIVATIVE +ANTIDERIVATIVES +ANTIDESICCANT +ANTIDEVELOPMENT +ANTIDIABETIC +ANTIDIARRHEAL +ANTIDIARRHEALS +ANTIDILUTION +ANTIDOGMATIC +ANTIDORA +ANTIDOTAL +ANTIDOTALLY +ANTIDOTE +ANTIDOTED +ANTIDOTES +ANTIDOTING +ANTIDRAFT +ANTIDROMIC +ANTIDROMICALLY +ANTIDRUG +ANTIDUMPING +ANTIECONOMIC +ANTIEDUCATIONAL +ANTIEGALITARIAN +ANTIELECTRON +ANTIELECTRONS +ANTIELITE +ANTIELITES +ANTIELITISM +ANTIELITISMS +ANTIELITIST +ANTIEMETIC +ANTIEMETICS +ANTIENTROPIC +ANTIEPILEPSY +ANTIEPILEPTIC +ANTIEPILEPTICS +ANTIEROTIC +ANTIESTROGEN +ANTIESTROGENS +ANTIEVOLUTION +ANTIFAMILY +ANTIFASCISM +ANTIFASCISMS +ANTIFASCIST +ANTIFASCISTS +ANTIFASHION +ANTIFASHIONABLE +ANTIFASHIONS +ANTIFAT +ANTIFATIGUE +ANTIFEMALE +ANTIFEMININE +ANTIFEMINISM +ANTIFEMINISMS +ANTIFEMINIST +ANTIFEMINISTS +ANTIFERROMAGNET +ANTIFERTILITY +ANTIFILIBUSTER +ANTIFLU +ANTIFOAM +ANTIFOAMING +ANTIFOG +ANTIFOGGING +ANTIFORECLOSURE +ANTIFOREIGN +ANTIFOREIGNER +ANTIFORMALIST +ANTIFOULING +ANTIFRAUD +ANTIFREEZE +ANTIFREEZES +ANTIFRICTION +ANTIFUNGAL +ANTIFUNGALS +ANTIFUR +ANTIGAMBLING +ANTIGANG +ANTIGAY +ANTIGEN +ANTIGENE +ANTIGENES +ANTIGENIC +ANTIGENICALLY +ANTIGENICITIES +ANTIGENICITY +ANTIGENS +ANTIGLARE +ANTIGLOBULIN +ANTIGLOBULINS +ANTIGOVERNMENT +ANTIGRAFT +ANTIGRAVITIES +ANTIGRAVITY +ANTIGROWTH +ANTIGUERRILLA +ANTIGUN +ANTIHELICES +ANTIHELIX +ANTIHELIXES +ANTIHERO +ANTIHEROES +ANTIHEROIC +ANTIHEROINE +ANTIHEROINES +ANTIHERPES +ANTIHIJACK +ANTIHISTAMINE +ANTIHISTAMINES +ANTIHISTAMINIC +ANTIHISTAMINICS +ANTIHISTORICAL +ANTIHOMOSEXUAL +ANTIHUMAN +ANTIHUMANISM +ANTIHUMANISMS +ANTIHUMANISTIC +ANTIHUNTER +ANTIHUNTING +ANTIHYSTERIC +ANTIHYSTERICS +ANTIJAM +ANTIJAMMING +ANTIKICKBACK +ANTIKING +ANTIKINGS +ANTIKNOCK +ANTIKNOCKS +ANTILABOR +ANTILEAK +ANTILEFT +ANTILEPROSY +ANTILEUKEMIC +ANTILIBERAL +ANTILIBERALISM +ANTILIBERALISMS +ANTILIBERALS +ANTILIBERTARIAN +ANTILIFE +ANTILIFER +ANTILIFERS +ANTILITERATE +ANTILITTER +ANTILITTERING +ANTILOCK +ANTILOG +ANTILOGARITHM +ANTILOGARITHMS +ANTILOGICAL +ANTILOGIES +ANTILOGS +ANTILOGY +ANTILYNCHING +ANTIMACASSAR +ANTIMACASSARS +ANTIMACHO +ANTIMAGNETIC +ANTIMALARIA +ANTIMALARIAL +ANTIMALARIALS +ANTIMALE +ANTIMAN +ANTIMANAGEMENT +ANTIMARIJUANA +ANTIMARKET +ANTIMASK +ANTIMASKS +ANTIMATERIALISM +ANTIMATERIALIST +ANTIMATTER +ANTIMATTERS +ANTIMECHANIST +ANTIMECHANISTS +ANTIMERE +ANTIMERES +ANTIMERGER +ANTIMERIC +ANTIMETABOLIC +ANTIMETABOLITE +ANTIMETABOLITES +ANTIMICROBIAL +ANTIMICROBIALS +ANTIMILITARISM +ANTIMILITARISMS +ANTIMILITARIST +ANTIMILITARISTS +ANTIMILITARY +ANTIMINE +ANTIMISSILE +ANTIMITOTIC +ANTIMITOTICS +ANTIMODERN +ANTIMODERNIST +ANTIMODERNISTS +ANTIMONARCHICAL +ANTIMONARCHIST +ANTIMONARCHISTS +ANTIMONIAL +ANTIMONIALS +ANTIMONIC +ANTIMONIDE +ANTIMONIDES +ANTIMONIES +ANTIMONOPOLIST +ANTIMONOPOLISTS +ANTIMONOPOLY +ANTIMONY +ANTIMONYL +ANTIMONYLS +ANTIMOSQUITO +ANTIMUSIC +ANTIMUSICAL +ANTIMUSICS +ANTIMYCIN +ANTIMYCINS +ANTINARRATIVE +ANTINARRATIVES +ANTINATIONAL +ANTINATIONALIST +ANTINATURAL +ANTINATURE +ANTINAUSEA +ANTINEOPLASTIC +ANTINEPOTISM +ANTINEUTRINO +ANTINEUTRINOS +ANTINEUTRON +ANTINEUTRONS +ANTING +ANTINGS +ANTINODAL +ANTINODE +ANTINODES +ANTINOISE +ANTINOME +ANTINOMES +ANTINOMIAN +ANTINOMIANISM +ANTINOMIANISMS +ANTINOMIANS +ANTINOMIC +ANTINOMIES +ANTINOMY +ANTINOVEL +ANTINOVELIST +ANTINOVELISTS +ANTINOVELS +ANTINUCLEAR +ANTINUCLEON +ANTINUCLEONS +ANTINUKE +ANTINUKER +ANTINUKERS +ANTINUKES +ANTIOBESITY +ANTIOBSCENITY +ANTIOXIDANT +ANTIOXIDANTS +ANTIOZONANT +ANTIOZONANTS +ANTIPAPAL +ANTIPARALLEL +ANTIPARASITIC +ANTIPARTICLE +ANTIPARTICLES +ANTIPARTIES +ANTIPARTY +ANTIPASTI +ANTIPASTO +ANTIPASTOS +ANTIPATHETIC +ANTIPATHIES +ANTIPATHY +ANTIPERSONNEL +ANTIPERSPIRANT +ANTIPERSPIRANTS +ANTIPESTICIDE +ANTIPHLOGISTIC +ANTIPHON +ANTIPHONAL +ANTIPHONALLY +ANTIPHONALS +ANTIPHONARIES +ANTIPHONARY +ANTIPHONIES +ANTIPHONS +ANTIPHONY +ANTIPHRASES +ANTIPHRASIS +ANTIPILL +ANTIPIRACY +ANTIPLAGUE +ANTIPLAQUE +ANTIPLEASURE +ANTIPOACHING +ANTIPODAL +ANTIPODALS +ANTIPODE +ANTIPODEAN +ANTIPODEANS +ANTIPODES +ANTIPOETIC +ANTIPOLAR +ANTIPOLE +ANTIPOLES +ANTIPOLICE +ANTIPOLITICAL +ANTIPOLITICS +ANTIPOLLUTION +ANTIPOLLUTIONS +ANTIPOPE +ANTIPOPES +ANTIPOPULAR +ANTIPORN +ANTIPORNOGRAPHY +ANTIPOT +ANTIPOVERTY +ANTIPREDATOR +ANTIPRESS +ANTIPROGRESSIVE +ANTIPROTON +ANTIPROTONS +ANTIPRURITIC +ANTIPRURITICS +ANTIPSYCHOTIC +ANTIPSYCHOTICS +ANTIPYIC +ANTIPYICS +ANTIPYRETIC +ANTIPYRETICS +ANTIPYRINE +ANTIPYRINES +ANTIQUARIAN +ANTIQUARIANISM +ANTIQUARIANISMS +ANTIQUARIANS +ANTIQUARIES +ANTIQUARK +ANTIQUARKS +ANTIQUARY +ANTIQUATE +ANTIQUATED +ANTIQUATES +ANTIQUATING +ANTIQUATION +ANTIQUATIONS +ANTIQUE +ANTIQUED +ANTIQUELY +ANTIQUER +ANTIQUERS +ANTIQUES +ANTIQUING +ANTIQUITIES +ANTIQUITY +ANTIRABIES +ANTIRACHITIC +ANTIRACISM +ANTIRACISMS +ANTIRACIST +ANTIRACISTS +ANTIRADAR +ANTIRADARS +ANTIRADICAL +ANTIRADICALISM +ANTIRADICALISMS +ANTIRAPE +ANTIRATIONAL +ANTIRATIONALISM +ANTIRATIONALIST +ANTIRATIONALITY +ANTIREALISM +ANTIREALISMS +ANTIREALIST +ANTIREALISTS +ANTIRECESSION +ANTIRED +ANTIREFLECTION +ANTIREFLECTIVE +ANTIREFORM +ANTIREGULATORY +ANTIREJECTION +ANTIRELIGION +ANTIRELIGIOUS +ANTIRHEUMATIC +ANTIRHEUMATICS +ANTIRIOT +ANTIRITUALISM +ANTIRITUALISMS +ANTIROCK +ANTIROLL +ANTIROMANTIC +ANTIROMANTICISM +ANTIROMANTICS +ANTIROYAL +ANTIROYALIST +ANTIROYALISTS +ANTIRRHINUM +ANTIRRHINUMS +ANTIRUST +ANTIRUSTS +ANTIS +ANTISAG +ANTISATELLITE +ANTISCIENCE +ANTISCIENCES +ANTISCIENTIFIC +ANTISCORBUTIC +ANTISCORBUTICS +ANTISECRECY +ANTISEGREGATION +ANTISEIZURE +ANTISENSE +ANTISENTIMENTAL +ANTISEPARATIST +ANTISEPARATISTS +ANTISEPSES +ANTISEPSIS +ANTISEPTIC +ANTISEPTICALLY +ANTISEPTICS +ANTISERA +ANTISERUM +ANTISERUMS +ANTISEX +ANTISEXIST +ANTISEXISTS +ANTISEXUAL +ANTISEXUALITIES +ANTISEXUALITY +ANTISHARK +ANTISHIP +ANTISHOCK +ANTISHOCKS +ANTISHOPLIFTING +ANTISKID +ANTISLAVERY +ANTISLEEP +ANTISLIP +ANTISMOG +ANTISMOKE +ANTISMOKER +ANTISMOKERS +ANTISMOKING +ANTISMUGGLING +ANTISMUT +ANTISNOB +ANTISNOBS +ANTISOCIAL +ANTISOCIALIST +ANTISOCIALISTS +ANTISOCIALLY +ANTISOLAR +ANTISPAM +ANTISPASMODIC +ANTISPASMODICS +ANTISPECULATION +ANTISPECULATIVE +ANTISPENDING +ANTISTAT +ANTISTATE +ANTISTATIC +ANTISTATS +ANTISTICK +ANTISTORIES +ANTISTORY +ANTISTRESS +ANTISTRIKE +ANTISTROPHE +ANTISTROPHES +ANTISTROPHIC +ANTISTUDENT +ANTISTYLE +ANTISTYLES +ANTISUBMARINE +ANTISUBSIDY +ANTISUBVERSION +ANTISUBVERSIVE +ANTISUICIDE +ANTISYMMETRIC +ANTISYPHILITIC +ANTISYPHILITICS +ANTITAKEOVER +ANTITANK +ANTITARNISH +ANTITAX +ANTITECHNOLOGY +ANTITERRORISM +ANTITERRORISMS +ANTITERRORIST +ANTITERRORISTS +ANTITHEFT +ANTITHEORETICAL +ANTITHESES +ANTITHESIS +ANTITHETIC +ANTITHETICAL +ANTITHETICALLY +ANTITHROMBIN +ANTITHROMBINS +ANTITHYROID +ANTITOBACCO +ANTITOXIC +ANTITOXIN +ANTITOXINS +ANTITRADE +ANTITRADES +ANTITRADITIONAL +ANTITRAGI +ANTITRAGUS +ANTITRUST +ANTITRUSTER +ANTITRUSTERS +ANTITUBERCULAR +ANTITUBERCULOUS +ANTITUMOR +ANTITUMORAL +ANTITUMORS +ANTITUSSIVE +ANTITUSSIVES +ANTITYPE +ANTITYPES +ANTITYPHOID +ANTITYPIC +ANTIULCER +ANTIUNION +ANTIUNIVERSITY +ANTIURBAN +ANTIVENIN +ANTIVENINS +ANTIVENOM +ANTIVENOMS +ANTIVIOLENCE +ANTIVIRAL +ANTIVIRUS +ANTIVIRUSES +ANTIVITAMIN +ANTIVITAMINS +ANTIVIVISECTION +ANTIWAR +ANTIWEAR +ANTIWEED +ANTIWELFARE +ANTIWHALING +ANTIWHITE +ANTIWOMAN +ANTIWRINKLE +ANTLER +ANTLERED +ANTLERS +ANTLIKE +ANTLION +ANTLIONS +ANTONOMASIA +ANTONOMASIAS +ANTONYM +ANTONYMIC +ANTONYMIES +ANTONYMOUS +ANTONYMS +ANTONYMY +ANTRA +ANTRAL +ANTRE +ANTRES +ANTRORSE +ANTRUM +ANTRUMS +ANTS +ANTSIER +ANTSIEST +ANTSINESS +ANTSINESSES +ANTSY +ANURAL +ANURAN +ANURANS +ANURESES +ANURESIS +ANURETIC +ANURIA +ANURIAS +ANURIC +ANUROUS +ANUS +ANUSES +ANVIL +ANVILED +ANVILING +ANVILLED +ANVILLING +ANVILS +ANVILTOP +ANVILTOPS +ANXIETIES +ANXIETY +ANXIOLYTIC +ANXIOLYTICS +ANXIOUS +ANXIOUSLY +ANXIOUSNESS +ANXIOUSNESSES +ANY +ANYBODIES +ANYBODY +ANYHOW +ANYMORE +ANYON +ANYONE +ANYONS +ANYPLACE +ANYTHING +ANYTHINGS +ANYTIME +ANYWAY +ANYWAYS +ANYWHERE +ANYWHERES +ANYWISE +AORIST +AORISTIC +AORISTICALLY +AORISTS +AORTA +AORTAE +AORTAL +AORTAS +AORTIC +AORTOGRAPHIC +AORTOGRAPHIES +AORTOGRAPHY +AOUDAD +AOUDADS +APACE +APACHE +APACHES +APAGOGE +APAGOGES +APAGOGIC +APANAGE +APANAGES +APAREJO +APAREJOS +APART +APARTHEID +APARTHEIDS +APARTMENT +APARTMENTAL +APARTMENTS +APARTNESS +APARTNESSES +APATETIC +APATHETIC +APATHETICALLY +APATHIES +APATHY +APATITE +APATITES +APATOSAUR +APATOSAURS +APATOSAURUS +APATOSAURUSES +APE +APEAK +APED +APEEK +APELIKE +APER +APERCU +APERCUS +APERIENT +APERIENTS +APERIES +APERIODIC +APERIODICALLY +APERIODICITIES +APERIODICITY +APERITIF +APERITIFS +APERS +APERTURAL +APERTURE +APERTURED +APERTURES +APERY +APES +APETALIES +APETALOUS +APETALY +APEX +APEXES +APHAERESES +APHAERESIS +APHAERETIC +APHAGIA +APHAGIAS +APHANITE +APHANITES +APHANITIC +APHASIA +APHASIAC +APHASIACS +APHASIAS +APHASIC +APHASICS +APHELIA +APHELIAN +APHELION +APHELIONS +APHERESES +APHERESIS +APHERETIC +APHESES +APHESIS +APHETIC +APHETICALLY +APHID +APHIDES +APHIDIAN +APHIDIANS +APHIDS +APHIS +APHOLATE +APHOLATES +APHONIA +APHONIAS +APHONIC +APHONICS +APHORISE +APHORISED +APHORISES +APHORISING +APHORISM +APHORISMS +APHORIST +APHORISTIC +APHORISTICALLY +APHORISTS +APHORIZE +APHORIZED +APHORIZER +APHORIZERS +APHORIZES +APHORIZING +APHOTIC +APHRODISIAC +APHRODISIACAL +APHRODISIACS +APHRODITE +APHRODITES +APHTHA +APHTHAE +APHTHOUS +APHYLLIES +APHYLLOUS +APHYLLY +APIACEOUS +APIAN +APIARIAN +APIARIANS +APIARIES +APIARIST +APIARISTS +APIARY +APICAL +APICALLY +APICALS +APICES +APICULATE +APICULI +APICULTURAL +APICULTURE +APICULTURES +APICULTURIST +APICULTURISTS +APICULUS +APIECE +APIMANIA +APIMANIAS +APING +APIOLOGIES +APIOLOGY +APISH +APISHLY +APISHNESS +APISHNESSES +APIVOROUS +APLANATIC +APLASIA +APLASIAS +APLASTIC +APLENTY +APLITE +APLITES +APLITIC +APLOMB +APLOMBS +APNEA +APNEAL +APNEAS +APNEIC +APNOEA +APNOEAL +APNOEAS +APNOEIC +APO +APOAPSES +APOAPSIDES +APOAPSIS +APOCALYPSE +APOCALYPSES +APOCALYPTIC +APOCALYPTICAL +APOCALYPTICALLY +APOCALYPTICISM +APOCALYPTICISMS +APOCALYPTISM +APOCALYPTISMS +APOCALYPTIST +APOCALYPTISTS +APOCARP +APOCARPIES +APOCARPS +APOCARPY +APOCHROMATIC +APOCOPATE +APOCOPATED +APOCOPATES +APOCOPATING +APOCOPE +APOCOPES +APOCOPIC +APOCRINE +APOCRYPHA +APOCRYPHAL +APOCRYPHALLY +APOCRYPHALNESS +APOD +APODAL +APODEICTIC +APODICTIC +APODICTICALLY +APODOSES +APODOSIS +APODOUS +APODS +APOENZYME +APOENZYMES +APOGAMIC +APOGAMIES +APOGAMOUS +APOGAMY +APOGEAL +APOGEAN +APOGEE +APOGEES +APOGEIC +APOLIPOPROTEIN +APOLIPOPROTEINS +APOLITICAL +APOLITICALLY +APOLLO +APOLLOS +APOLOG +APOLOGAL +APOLOGETIC +APOLOGETICALLY +APOLOGETICS +APOLOGIA +APOLOGIAE +APOLOGIAS +APOLOGIES +APOLOGISE +APOLOGISED +APOLOGISES +APOLOGISING +APOLOGIST +APOLOGISTS +APOLOGIZE +APOLOGIZED +APOLOGIZER +APOLOGIZERS +APOLOGIZES +APOLOGIZING +APOLOGS +APOLOGUE +APOLOGUES +APOLOGY +APOLUNE +APOLUNES +APOMICT +APOMICTIC +APOMICTICALLY +APOMICTS +APOMIXES +APOMIXIS +APOMORPHINE +APOMORPHINES +APONEUROSES +APONEUROSIS +APONEUROTIC +APOPHASES +APOPHASIS +APOPHONIES +APOPHONY +APOPHTHEGM +APOPHTHEGMS +APOPHYGE +APOPHYGES +APOPHYLLITE +APOPHYLLITES +APOPHYSEAL +APOPHYSES +APOPHYSIS +APOPLECTIC +APOPLECTICALLY +APOPLEXIES +APOPLEXY +APOPTOSES +APOPTOSIS +APOPTOTIC +APORIA +APORIAS +APORT +APOS +APOSEMATIC +APOSEMATICALLY +APOSIOPESES +APOSIOPESIS +APOSIOPETIC +APOSPORIC +APOSPORIES +APOSPOROUS +APOSPORY +APOSTACIES +APOSTACY +APOSTASIES +APOSTASY +APOSTATE +APOSTATES +APOSTATISE +APOSTATISED +APOSTATISES +APOSTATISING +APOSTATIZE +APOSTATIZED +APOSTATIZES +APOSTATIZING +APOSTIL +APOSTILLE +APOSTILLES +APOSTILS +APOSTLE +APOSTLES +APOSTLESHIP +APOSTLESHIPS +APOSTOLATE +APOSTOLATES +APOSTOLIC +APOSTOLICITIES +APOSTOLICITY +APOSTROPHE +APOSTROPHES +APOSTROPHIC +APOSTROPHISE +APOSTROPHISED +APOSTROPHISES +APOSTROPHISING +APOSTROPHIZE +APOSTROPHIZED +APOSTROPHIZES +APOSTROPHIZING +APOTHECARIES +APOTHECARY +APOTHECE +APOTHECES +APOTHECIA +APOTHECIAL +APOTHECIUM +APOTHEGM +APOTHEGMATIC +APOTHEGMS +APOTHEM +APOTHEMS +APOTHEOSES +APOTHEOSIS +APOTHEOSIZE +APOTHEOSIZED +APOTHEOSIZES +APOTHEOSIZING +APOTROPAIC +APOTROPAICALLY +APP +APPAL +APPALL +APPALLED +APPALLING +APPALLINGLY +APPALLS +APPALOOSA +APPALOOSAS +APPALS +APPANAGE +APPANAGES +APPARAT +APPARATCHIK +APPARATCHIKI +APPARATCHIKS +APPARATS +APPARATUS +APPARATUSES +APPAREL +APPARELED +APPARELING +APPARELLED +APPARELLING +APPARELS +APPARENT +APPARENTLY +APPARENTNESS +APPARENTNESSES +APPARITION +APPARITIONAL +APPARITIONS +APPARITOR +APPARITORS +APPEAL +APPEALABILITIES +APPEALABILITY +APPEALABLE +APPEALED +APPEALER +APPEALERS +APPEALING +APPEALINGLY +APPEALS +APPEAR +APPEARANCE +APPEARANCES +APPEARED +APPEARING +APPEARS +APPEASABLE +APPEASE +APPEASED +APPEASEMENT +APPEASEMENTS +APPEASER +APPEASERS +APPEASES +APPEASING +APPEL +APPELLANT +APPELLANTS +APPELLATE +APPELLATION +APPELLATIONS +APPELLATIVE +APPELLATIVELY +APPELLATIVES +APPELLEE +APPELLEES +APPELLOR +APPELLORS +APPELS +APPEND +APPENDAGE +APPENDAGES +APPENDANT +APPENDANTS +APPENDECTOMIES +APPENDECTOMY +APPENDED +APPENDENT +APPENDENTS +APPENDICECTOMY +APPENDICES +APPENDICITIS +APPENDICITISES +APPENDICULAR +APPENDING +APPENDIX +APPENDIXES +APPENDS +APPERCEIVE +APPERCEIVED +APPERCEIVES +APPERCEIVING +APPERCEPTION +APPERCEPTIONS +APPERCEPTIVE +APPERTAIN +APPERTAINED +APPERTAINING +APPERTAINS +APPESTAT +APPESTATS +APPETENCE +APPETENCES +APPETENCIES +APPETENCY +APPETENT +APPETISER +APPETISERS +APPETISING +APPETITE +APPETITES +APPETITIVE +APPETIZER +APPETIZERS +APPETIZING +APPETIZINGLY +APPLAUD +APPLAUDABLE +APPLAUDABLY +APPLAUDED +APPLAUDER +APPLAUDERS +APPLAUDING +APPLAUDS +APPLAUSE +APPLAUSES +APPLE +APPLECART +APPLECARTS +APPLEJACK +APPLEJACKS +APPLES +APPLESAUCE +APPLESAUCES +APPLET +APPLETS +APPLIABLE +APPLIANCE +APPLIANCES +APPLICABILITIES +APPLICABILITY +APPLICABLE +APPLICANT +APPLICANTS +APPLICATION +APPLICATIONS +APPLICATIVE +APPLICATIVELY +APPLICATOR +APPLICATORS +APPLICATORY +APPLIED +APPLIER +APPLIERS +APPLIES +APPLIQUE +APPLIQUED +APPLIQUEING +APPLIQUES +APPLY +APPLYING +APPOGGIATURA +APPOGGIATURAS +APPOINT +APPOINTED +APPOINTEE +APPOINTEES +APPOINTER +APPOINTERS +APPOINTING +APPOINTIVE +APPOINTMENT +APPOINTMENTS +APPOINTOR +APPOINTORS +APPOINTS +APPORTION +APPORTIONABLE +APPORTIONED +APPORTIONING +APPORTIONMENT +APPORTIONMENTS +APPORTIONS +APPOSABLE +APPOSE +APPOSED +APPOSER +APPOSERS +APPOSES +APPOSING +APPOSITE +APPOSITELY +APPOSITENESS +APPOSITENESSES +APPOSITION +APPOSITIONAL +APPOSITIONS +APPOSITIVE +APPOSITIVELY +APPOSITIVES +APPRAISAL +APPRAISALS +APPRAISE +APPRAISED +APPRAISEE +APPRAISEES +APPRAISEMENT +APPRAISEMENTS +APPRAISER +APPRAISERS +APPRAISES +APPRAISING +APPRAISINGLY +APPRAISIVE +APPRECIABLE +APPRECIABLY +APPRECIATE +APPRECIATED +APPRECIATES +APPRECIATING +APPRECIATION +APPRECIATIONS +APPRECIATIVE +APPRECIATIVELY +APPRECIATOR +APPRECIATORS +APPRECIATORY +APPREHEND +APPREHENDED +APPREHENDING +APPREHENDS +APPREHENSIBLE +APPREHENSIBLY +APPREHENSION +APPREHENSIONS +APPREHENSIVE +APPREHENSIVELY +APPRENTICE +APPRENTICED +APPRENTICES +APPRENTICESHIP +APPRENTICESHIPS +APPRENTICING +APPRESSED +APPRESSORIA +APPRESSORIUM +APPRISE +APPRISED +APPRISER +APPRISERS +APPRISES +APPRISING +APPRIZE +APPRIZED +APPRIZER +APPRIZERS +APPRIZES +APPRIZING +APPROACH +APPROACHABILITY +APPROACHABLE +APPROACHED +APPROACHES +APPROACHING +APPROBATE +APPROBATED +APPROBATES +APPROBATING +APPROBATION +APPROBATIONS +APPROBATORY +APPROPRIABLE +APPROPRIATE +APPROPRIATED +APPROPRIATELY +APPROPRIATENESS +APPROPRIATES +APPROPRIATING +APPROPRIATION +APPROPRIATIONS +APPROPRIATIVE +APPROPRIATOR +APPROPRIATORS +APPROVABLE +APPROVABLY +APPROVAL +APPROVALS +APPROVE +APPROVED +APPROVER +APPROVERS +APPROVES +APPROVING +APPROVINGLY +APPROXIMATE +APPROXIMATED +APPROXIMATELY +APPROXIMATES +APPROXIMATING +APPROXIMATION +APPROXIMATIONS +APPROXIMATIVE +APPS +APPULSE +APPULSES +APPURTENANCE +APPURTENANCES +APPURTENANT +APPURTENANTS +APRACTIC +APRAXIA +APRAXIAS +APRAXIC +APRES +APRICOT +APRICOTS +APRIORITIES +APRIORITY +APRON +APRONED +APRONING +APRONLIKE +APRONS +APROPOS +APROTIC +APSE +APSES +APSIDAL +APSIDES +APSIS +APT +APTER +APTERAL +APTERIA +APTERIUM +APTEROUS +APTERYX +APTERYXES +APTEST +APTITUDE +APTITUDES +APTITUDINAL +APTITUDINALLY +APTLY +APTNESS +APTNESSES +APYRASE +APYRASES +APYRETIC +AQUA +AQUACADE +AQUACADES +AQUACULTURAL +AQUACULTURE +AQUACULTURES +AQUACULTURIST +AQUACULTURISTS +AQUAE +AQUAFARM +AQUAFARMED +AQUAFARMING +AQUAFARMS +AQUALUNG +AQUALUNGS +AQUAMARINE +AQUAMARINES +AQUANAUT +AQUANAUTS +AQUAPLANE +AQUAPLANED +AQUAPLANER +AQUAPLANERS +AQUAPLANES +AQUAPLANING +AQUARELLE +AQUARELLES +AQUARELLIST +AQUARELLISTS +AQUARIA +AQUARIAL +AQUARIAN +AQUARIANS +AQUARIST +AQUARISTS +AQUARIUM +AQUARIUMS +AQUAS +AQUATIC +AQUATICALLY +AQUATICS +AQUATINT +AQUATINTED +AQUATINTER +AQUATINTERS +AQUATINTING +AQUATINTIST +AQUATINTISTS +AQUATINTS +AQUATONE +AQUATONES +AQUAVIT +AQUAVITS +AQUEDUCT +AQUEDUCTS +AQUEOUS +AQUEOUSLY +AQUICULTURE +AQUICULTURES +AQUIFER +AQUIFEROUS +AQUIFERS +AQUILEGIA +AQUILEGIAS +AQUILINE +AQUILINITIES +AQUILINITY +AQUIVER +AR +ARABESK +ARABESKS +ARABESQUE +ARABESQUES +ARABIC +ARABICA +ARABICAS +ARABICIZATION +ARABICIZATIONS +ARABICIZE +ARABICIZED +ARABICIZES +ARABICIZING +ARABILITIES +ARABILITY +ARABINOSE +ARABINOSES +ARABINOSIDE +ARABINOSIDES +ARABIZE +ARABIZED +ARABIZES +ARABIZING +ARABLE +ARABLES +ARACEOUS +ARACHNID +ARACHNIDS +ARACHNOID +ARACHNOIDS +ARAGONITE +ARAGONITES +ARAGONITIC +ARAK +ARAKS +ARAME +ARAMES +ARAMID +ARAMIDS +ARANEID +ARANEIDAN +ARANEIDS +ARAPAIMA +ARAPAIMAS +ARAROBA +ARAROBAS +ARAUCARIA +ARAUCARIAN +ARAUCARIAS +ARB +ARBALEST +ARBALESTS +ARBALIST +ARBALISTS +ARBELEST +ARBELESTS +ARBITER +ARBITERS +ARBITRABLE +ARBITRAGE +ARBITRAGED +ARBITRAGER +ARBITRAGERS +ARBITRAGES +ARBITRAGEUR +ARBITRAGEURS +ARBITRAGING +ARBITRAL +ARBITRAMENT +ARBITRAMENTS +ARBITRARILY +ARBITRARINESS +ARBITRARINESSES +ARBITRARY +ARBITRATE +ARBITRATED +ARBITRATES +ARBITRATING +ARBITRATION +ARBITRATIONAL +ARBITRATIONS +ARBITRATIVE +ARBITRATOR +ARBITRATORS +ARBITRESS +ARBITRESSES +ARBOR +ARBOREAL +ARBOREALLY +ARBORED +ARBOREOUS +ARBORES +ARBORESCENCE +ARBORESCENCES +ARBORESCENT +ARBORETA +ARBORETUM +ARBORETUMS +ARBORICULTURAL +ARBORICULTURE +ARBORICULTURES +ARBORIST +ARBORISTS +ARBORIZATION +ARBORIZATIONS +ARBORIZE +ARBORIZED +ARBORIZES +ARBORIZING +ARBOROUS +ARBORS +ARBORVITAE +ARBORVITAES +ARBOUR +ARBOURED +ARBOURS +ARBOVIRAL +ARBOVIRUS +ARBOVIRUSES +ARBS +ARBUSCLE +ARBUSCLES +ARBUTE +ARBUTEAN +ARBUTES +ARBUTUS +ARBUTUSES +ARC +ARCADE +ARCADED +ARCADES +ARCADIA +ARCADIAN +ARCADIANS +ARCADIAS +ARCADING +ARCADINGS +ARCANA +ARCANE +ARCANUM +ARCANUMS +ARCATURE +ARCATURES +ARCCOSINE +ARCCOSINES +ARCED +ARCH +ARCHAEA +ARCHAEAL +ARCHAEAN +ARCHAEANS +ARCHAEBACTERIA +ARCHAEBACTERIUM +ARCHAEOLOGICAL +ARCHAEOLOGIES +ARCHAEOLOGIST +ARCHAEOLOGISTS +ARCHAEOLOGY +ARCHAEON +ARCHAEOPTERYX +ARCHAEOPTERYXES +ARCHAIC +ARCHAICAL +ARCHAICALLY +ARCHAISE +ARCHAISED +ARCHAISES +ARCHAISING +ARCHAISM +ARCHAISMS +ARCHAIST +ARCHAISTIC +ARCHAISTS +ARCHAIZE +ARCHAIZED +ARCHAIZER +ARCHAIZERS +ARCHAIZES +ARCHAIZING +ARCHANGEL +ARCHANGELIC +ARCHANGELS +ARCHBISHOP +ARCHBISHOPRIC +ARCHBISHOPRICS +ARCHBISHOPS +ARCHDEACON +ARCHDEACONRIES +ARCHDEACONRY +ARCHDEACONS +ARCHDIOCESAN +ARCHDIOCESE +ARCHDIOCESES +ARCHDUCAL +ARCHDUCHESS +ARCHDUCHESSES +ARCHDUCHIES +ARCHDUCHY +ARCHDUKE +ARCHDUKEDOM +ARCHDUKEDOMS +ARCHDUKES +ARCHEAN +ARCHED +ARCHEGONIA +ARCHEGONIAL +ARCHEGONIATE +ARCHEGONIATES +ARCHEGONIUM +ARCHENEMIES +ARCHENEMY +ARCHENTERON +ARCHENTERONS +ARCHEOLOGIES +ARCHEOLOGY +ARCHER +ARCHERFISH +ARCHERFISHES +ARCHERIES +ARCHERS +ARCHERY +ARCHES +ARCHESPORIA +ARCHESPORIAL +ARCHESPORIUM +ARCHETYPAL +ARCHETYPALLY +ARCHETYPE +ARCHETYPES +ARCHETYPICAL +ARCHFIEND +ARCHFIENDS +ARCHFOE +ARCHFOES +ARCHICARP +ARCHICARPS +ARCHIDIACONAL +ARCHIEPISCOPAL +ARCHIEPISCOPATE +ARCHIL +ARCHILS +ARCHIMANDRITE +ARCHIMANDRITES +ARCHINE +ARCHINES +ARCHING +ARCHINGS +ARCHIPELAGIC +ARCHIPELAGO +ARCHIPELAGOES +ARCHIPELAGOS +ARCHITECT +ARCHITECTONIC +ARCHITECTONICS +ARCHITECTS +ARCHITECTURAL +ARCHITECTURALLY +ARCHITECTURE +ARCHITECTURES +ARCHITRAVE +ARCHITRAVES +ARCHIVAL +ARCHIVE +ARCHIVED +ARCHIVES +ARCHIVING +ARCHIVIST +ARCHIVISTS +ARCHIVOLT +ARCHIVOLTS +ARCHLY +ARCHNESS +ARCHNESSES +ARCHON +ARCHONS +ARCHOSAUR +ARCHOSAURIAN +ARCHOSAURS +ARCHPRIEST +ARCHPRIESTS +ARCHRIVAL +ARCHRIVALS +ARCHWAY +ARCHWAYS +ARCIFORM +ARCING +ARCKED +ARCKING +ARCO +ARCS +ARCSINE +ARCSINES +ARCTANGENT +ARCTANGENTS +ARCTIC +ARCTICALLY +ARCTICS +ARCUATE +ARCUATED +ARCUATELY +ARCUATION +ARCUATIONS +ARCUS +ARCUSES +ARDEB +ARDEBS +ARDENCIES +ARDENCY +ARDENT +ARDENTLY +ARDOR +ARDORS +ARDOUR +ARDOURS +ARDUOUS +ARDUOUSLY +ARDUOUSNESS +ARDUOUSNESSES +ARE +AREA +AREAE +AREAL +AREALLY +AREAS +AREAWAY +AREAWAYS +ARECA +ARECAS +ARECOLINE +ARECOLINES +AREIC +ARENA +ARENACEOUS +ARENAS +ARENE +ARENES +ARENICOLOUS +ARENITE +ARENITES +ARENOSE +ARENOUS +AREOCENTRIC +AREOLA +AREOLAE +AREOLAR +AREOLAS +AREOLATE +AREOLATED +AREOLE +AREOLES +AREOLOGIES +AREOLOGY +AREPA +AREPAS +ARES +ARETE +ARETES +ARETHUSA +ARETHUSAS +ARF +ARFS +ARGAL +ARGALA +ARGALAS +ARGALI +ARGALIS +ARGALS +ARGENT +ARGENTAL +ARGENTIC +ARGENTIFEROUS +ARGENTINE +ARGENTINES +ARGENTITE +ARGENTITES +ARGENTOUS +ARGENTS +ARGENTUM +ARGENTUMS +ARGIL +ARGILLACEOUS +ARGILLITE +ARGILLITES +ARGILS +ARGINASE +ARGINASES +ARGININE +ARGININES +ARGLE +ARGLED +ARGLES +ARGLING +ARGOL +ARGOLS +ARGON +ARGONAUT +ARGONAUTS +ARGONS +ARGOSIES +ARGOSY +ARGOT +ARGOTIC +ARGOTS +ARGUABLE +ARGUABLY +ARGUE +ARGUED +ARGUER +ARGUERS +ARGUES +ARGUFIED +ARGUFIER +ARGUFIERS +ARGUFIES +ARGUFY +ARGUFYING +ARGUING +ARGUMENT +ARGUMENTA +ARGUMENTATION +ARGUMENTATIONS +ARGUMENTATIVE +ARGUMENTATIVELY +ARGUMENTIVE +ARGUMENTS +ARGUMENTUM +ARGUS +ARGUSES +ARGYLE +ARGYLES +ARGYLL +ARGYLLS +ARHAT +ARHATS +ARHATSHIP +ARHATSHIPS +ARIA +ARIARY +ARIAS +ARIBOFLAVINOSES +ARIBOFLAVINOSIS +ARID +ARIDER +ARIDEST +ARIDITIES +ARIDITY +ARIDLY +ARIDNESS +ARIDNESSES +ARIEL +ARIELS +ARIETTA +ARIETTAS +ARIETTE +ARIETTES +ARIGHT +ARIL +ARILED +ARILLATE +ARILLODE +ARILLODES +ARILLOID +ARILS +ARIOSE +ARIOSI +ARIOSO +ARIOSOS +ARISE +ARISEN +ARISES +ARISING +ARISTA +ARISTAE +ARISTAS +ARISTATE +ARISTO +ARISTOCRACIES +ARISTOCRACY +ARISTOCRAT +ARISTOCRATIC +ARISTOCRATS +ARISTOS +ARITHMETIC +ARITHMETICAL +ARITHMETICALLY +ARITHMETICIAN +ARITHMETICIANS +ARITHMETICS +ARK +ARKOSE +ARKOSES +ARKOSIC +ARKS +ARLES +ARM +ARMADA +ARMADAS +ARMADILLO +ARMADILLOS +ARMAGNAC +ARMAGNACS +ARMAMENT +ARMAMENTARIA +ARMAMENTARIUM +ARMAMENTS +ARMATURE +ARMATURED +ARMATURES +ARMATURING +ARMBAND +ARMBANDS +ARMCHAIR +ARMCHAIRS +ARMED +ARMER +ARMERS +ARMET +ARMETS +ARMFUL +ARMFULS +ARMHOLE +ARMHOLES +ARMIES +ARMIGER +ARMIGERAL +ARMIGERO +ARMIGEROS +ARMIGEROUS +ARMIGERS +ARMILLA +ARMILLAE +ARMILLARY +ARMILLAS +ARMING +ARMINGS +ARMISTICE +ARMISTICES +ARMLESS +ARMLET +ARMLETS +ARMLIKE +ARMLOAD +ARMLOADS +ARMLOCK +ARMLOCKS +ARMOIRE +ARMOIRES +ARMONICA +ARMONICAS +ARMOR +ARMORED +ARMORER +ARMORERS +ARMORIAL +ARMORIALLY +ARMORIALS +ARMORIES +ARMORING +ARMORLESS +ARMORS +ARMORY +ARMOUR +ARMOURED +ARMOURER +ARMOURERS +ARMOURIES +ARMOURING +ARMOURS +ARMOURY +ARMPIT +ARMPITS +ARMREST +ARMRESTS +ARMS +ARMSFUL +ARMURE +ARMURES +ARMY +ARMYWORM +ARMYWORMS +ARNATTO +ARNATTOS +ARNICA +ARNICAS +ARNOTTO +ARNOTTOS +AROID +AROIDS +AROINT +AROINTED +AROINTING +AROINTS +AROMA +AROMAS +AROMATASE +AROMATASES +AROMATHERAPIES +AROMATHERAPIST +AROMATHERAPISTS +AROMATHERAPY +AROMATIC +AROMATICALLY +AROMATICITIES +AROMATICITY +AROMATICS +AROMATIZATION +AROMATIZATIONS +AROMATIZE +AROMATIZED +AROMATIZES +AROMATIZING +AROSE +AROUND +AROUSABLE +AROUSAL +AROUSALS +AROUSE +AROUSED +AROUSER +AROUSERS +AROUSES +AROUSING +AROYNT +AROYNTED +AROYNTING +AROYNTS +ARPEGGIATE +ARPEGGIATED +ARPEGGIATES +ARPEGGIATING +ARPEGGIO +ARPEGGIOS +ARPEN +ARPENS +ARPENT +ARPENTS +ARQUEBUS +ARQUEBUSES +ARRACK +ARRACKS +ARRAIGN +ARRAIGNED +ARRAIGNER +ARRAIGNERS +ARRAIGNING +ARRAIGNMENT +ARRAIGNMENTS +ARRAIGNS +ARRANGE +ARRANGED +ARRANGEMENT +ARRANGEMENTS +ARRANGER +ARRANGERS +ARRANGES +ARRANGING +ARRANT +ARRANTLY +ARRAS +ARRASED +ARRASES +ARRAY +ARRAYAL +ARRAYALS +ARRAYED +ARRAYER +ARRAYERS +ARRAYING +ARRAYS +ARREAR +ARREARAGE +ARREARAGES +ARREARS +ARREST +ARRESTANT +ARRESTANTS +ARRESTED +ARRESTEE +ARRESTEES +ARRESTER +ARRESTERS +ARRESTING +ARRESTINGLY +ARRESTIVE +ARRESTMENT +ARRESTMENTS +ARRESTOR +ARRESTORS +ARRESTS +ARRHIZAL +ARRHYTHMIA +ARRHYTHMIAS +ARRHYTHMIC +ARRIBA +ARRIS +ARRISES +ARRIVAL +ARRIVALS +ARRIVE +ARRIVED +ARRIVER +ARRIVERS +ARRIVES +ARRIVING +ARRIVISTE +ARRIVISTES +ARROBA +ARROBAS +ARROGANCE +ARROGANCES +ARROGANCIES +ARROGANCY +ARROGANT +ARROGANTLY +ARROGATE +ARROGATED +ARROGATES +ARROGATING +ARROGATION +ARROGATIONS +ARROGATOR +ARROGATORS +ARRONDISSEMENT +ARRONDISSEMENTS +ARROW +ARROWED +ARROWHEAD +ARROWHEADS +ARROWING +ARROWLESS +ARROWLIKE +ARROWROOT +ARROWROOTS +ARROWS +ARROWWOOD +ARROWWOODS +ARROWWORM +ARROWWORMS +ARROWY +ARROYO +ARROYOS +ARS +ARSE +ARSENAL +ARSENALS +ARSENATE +ARSENATES +ARSENIC +ARSENICAL +ARSENICALS +ARSENICS +ARSENIDE +ARSENIDES +ARSENIOUS +ARSENITE +ARSENITES +ARSENO +ARSENOPYRITE +ARSENOPYRITES +ARSENOUS +ARSES +ARSHIN +ARSHINS +ARSINE +ARSINES +ARSINO +ARSIS +ARSON +ARSONIST +ARSONISTS +ARSONOUS +ARSONS +ARSPHENAMINE +ARSPHENAMINES +ART +ARTAL +ARTEFACT +ARTEFACTS +ARTEL +ARTELS +ARTEMISIA +ARTEMISIAS +ARTERIAL +ARTERIALLY +ARTERIALS +ARTERIES +ARTERIOGRAM +ARTERIOGRAMS +ARTERIOGRAPHIC +ARTERIOGRAPHIES +ARTERIOGRAPHY +ARTERIOLAR +ARTERIOLE +ARTERIOLES +ARTERIOVENOUS +ARTERITIDES +ARTERITIS +ARTERY +ARTFUL +ARTFULLY +ARTFULNESS +ARTFULNESSES +ARTHRALGIA +ARTHRALGIAS +ARTHRALGIC +ARTHRITIC +ARTHRITICALLY +ARTHRITICS +ARTHRITIDES +ARTHRITIS +ARTHRODESES +ARTHRODESIS +ARTHROPATHIES +ARTHROPATHY +ARTHROPOD +ARTHROPODAN +ARTHROPODS +ARTHROSCOPE +ARTHROSCOPES +ARTHROSCOPIC +ARTHROSCOPIES +ARTHROSCOPY +ARTHROSES +ARTHROSIS +ARTHROSPORE +ARTHROSPORES +ARTICHOKE +ARTICHOKES +ARTICLE +ARTICLED +ARTICLES +ARTICLING +ARTICULABLE +ARTICULACIES +ARTICULACY +ARTICULAR +ARTICULATE +ARTICULATED +ARTICULATELY +ARTICULATENESS +ARTICULATES +ARTICULATING +ARTICULATION +ARTICULATIONS +ARTICULATIVE +ARTICULATOR +ARTICULATORS +ARTICULATORY +ARTIER +ARTIEST +ARTIFACT +ARTIFACTS +ARTIFACTUAL +ARTIFICE +ARTIFICER +ARTIFICERS +ARTIFICES +ARTIFICIAL +ARTIFICIALITIES +ARTIFICIALITY +ARTIFICIALLY +ARTIFICIALNESS +ARTILLERIES +ARTILLERIST +ARTILLERISTS +ARTILLERY +ARTILLERYMAN +ARTILLERYMEN +ARTILY +ARTINESS +ARTINESSES +ARTIODACTYL +ARTIODACTYLS +ARTISAN +ARTISANAL +ARTISANS +ARTISANSHIP +ARTISANSHIPS +ARTIST +ARTISTE +ARTISTES +ARTISTIC +ARTISTICALLY +ARTISTRIES +ARTISTRY +ARTISTS +ARTLESS +ARTLESSLY +ARTLESSNESS +ARTLESSNESSES +ARTS +ARTSIER +ARTSIEST +ARTSINESS +ARTSINESSES +ARTSY +ARTWORK +ARTWORKS +ARTY +ARUGOLA +ARUGOLAS +ARUGULA +ARUGULAS +ARUM +ARUMS +ARUSPEX +ARUSPICES +ARVAL +ARVO +ARVOS +ARYL +ARYLS +ARYTENOID +ARYTENOIDS +ARYTHMIA +ARYTHMIAS +ARYTHMIC +AS +ASAFETIDA +ASAFETIDAS +ASAFOETIDA +ASAFOETIDAS +ASANA +ASANAS +ASARUM +ASARUMS +ASBESTIC +ASBESTINE +ASBESTOS +ASBESTOSES +ASBESTOSIS +ASBESTOUS +ASBESTUS +ASBESTUSES +ASCARED +ASCARIASES +ASCARIASIS +ASCARID +ASCARIDES +ASCARIDS +ASCARIS +ASCEND +ASCENDABLE +ASCENDANCE +ASCENDANCES +ASCENDANCIES +ASCENDANCY +ASCENDANT +ASCENDANTLY +ASCENDANTS +ASCENDED +ASCENDENCE +ASCENDENCES +ASCENDENCIES +ASCENDENCY +ASCENDENT +ASCENDENTS +ASCENDER +ASCENDERS +ASCENDIBLE +ASCENDING +ASCENDS +ASCENSION +ASCENSIONAL +ASCENSIONS +ASCENSIVE +ASCENT +ASCENTS +ASCERTAIN +ASCERTAINABLE +ASCERTAINED +ASCERTAINING +ASCERTAINMENT +ASCERTAINMENTS +ASCERTAINS +ASCESES +ASCESIS +ASCETIC +ASCETICAL +ASCETICALLY +ASCETICISM +ASCETICISMS +ASCETICS +ASCI +ASCIDIA +ASCIDIAN +ASCIDIANS +ASCIDIATE +ASCIDIUM +ASCITES +ASCITIC +ASCLEPIAD +ASCLEPIADS +ASCOCARP +ASCOCARPIC +ASCOCARPS +ASCOGONIA +ASCOGONIUM +ASCOMYCETE +ASCOMYCETES +ASCOMYCETOUS +ASCORBATE +ASCORBATES +ASCORBIC +ASCOSPORE +ASCOSPORES +ASCOSPORIC +ASCOT +ASCOTS +ASCRIBABLE +ASCRIBE +ASCRIBED +ASCRIBES +ASCRIBING +ASCRIPTION +ASCRIPTIONS +ASCRIPTIVE +ASCUS +ASDIC +ASDICS +ASEA +ASEPSES +ASEPSIS +ASEPTIC +ASEPTICALLY +ASEXUAL +ASEXUALITIES +ASEXUALITY +ASEXUALLY +ASH +ASHAMED +ASHAMEDLY +ASHCAKE +ASHCAKES +ASHCAN +ASHCANS +ASHED +ASHEN +ASHES +ASHFALL +ASHFALLS +ASHIER +ASHIEST +ASHINESS +ASHINESSES +ASHING +ASHLAR +ASHLARED +ASHLARING +ASHLARS +ASHLER +ASHLERED +ASHLERING +ASHLERS +ASHLESS +ASHMAN +ASHMEN +ASHORE +ASHPLANT +ASHPLANTS +ASHRAM +ASHRAMS +ASHTRAY +ASHTRAYS +ASHY +ASIDE +ASIDES +ASININE +ASININELY +ASININITIES +ASININITY +ASK +ASKANCE +ASKANT +ASKED +ASKER +ASKERS +ASKESES +ASKESIS +ASKEW +ASKEWNESS +ASKEWNESSES +ASKING +ASKINGS +ASKOI +ASKOS +ASKS +ASLANT +ASLEEP +ASLOPE +ASLOSH +ASOCIAL +ASOCIALS +ASP +ASPARAGINE +ASPARAGINES +ASPARAGUS +ASPARAGUSES +ASPARKLE +ASPARTAME +ASPARTAMES +ASPARTATE +ASPARTATES +ASPECT +ASPECTS +ASPECTUAL +ASPEN +ASPENS +ASPER +ASPERATE +ASPERATED +ASPERATES +ASPERATING +ASPERGES +ASPERGILL +ASPERGILLA +ASPERGILLI +ASPERGILLOSES +ASPERGILLOSIS +ASPERGILLS +ASPERGILLUM +ASPERGILLUMS +ASPERGILLUS +ASPERITIES +ASPERITY +ASPERS +ASPERSE +ASPERSED +ASPERSER +ASPERSERS +ASPERSES +ASPERSING +ASPERSION +ASPERSIONS +ASPERSIVE +ASPERSOR +ASPERSORS +ASPHALT +ASPHALTED +ASPHALTIC +ASPHALTING +ASPHALTITE +ASPHALTITES +ASPHALTS +ASPHALTUM +ASPHALTUMS +ASPHERIC +ASPHERICAL +ASPHODEL +ASPHODELS +ASPHYXIA +ASPHYXIAL +ASPHYXIAS +ASPHYXIATE +ASPHYXIATED +ASPHYXIATES +ASPHYXIATING +ASPHYXIATION +ASPHYXIATIONS +ASPHYXIES +ASPHYXY +ASPIC +ASPICS +ASPIDISTRA +ASPIDISTRAS +ASPIRANT +ASPIRANTS +ASPIRATA +ASPIRATAE +ASPIRATE +ASPIRATED +ASPIRATES +ASPIRATING +ASPIRATION +ASPIRATIONAL +ASPIRATIONS +ASPIRATOR +ASPIRATORS +ASPIRE +ASPIRED +ASPIRER +ASPIRERS +ASPIRES +ASPIRIN +ASPIRING +ASPIRINS +ASPIS +ASPISES +ASPISH +ASPS +ASQUINT +ASRAMA +ASRAMAS +ASS +ASSAGAI +ASSAGAIED +ASSAGAIING +ASSAGAIS +ASSAI +ASSAIL +ASSAILABLE +ASSAILANT +ASSAILANTS +ASSAILED +ASSAILER +ASSAILERS +ASSAILING +ASSAILS +ASSAIS +ASSASSIN +ASSASSINATE +ASSASSINATED +ASSASSINATES +ASSASSINATING +ASSASSINATION +ASSASSINATIONS +ASSASSINATOR +ASSASSINATORS +ASSASSINS +ASSAULT +ASSAULTED +ASSAULTER +ASSAULTERS +ASSAULTING +ASSAULTIVE +ASSAULTIVELY +ASSAULTIVENESS +ASSAULTS +ASSAY +ASSAYABLE +ASSAYED +ASSAYER +ASSAYERS +ASSAYING +ASSAYS +ASSEGAI +ASSEGAIED +ASSEGAIING +ASSEGAIS +ASSEMBLAGE +ASSEMBLAGES +ASSEMBLAGIST +ASSEMBLAGISTS +ASSEMBLE +ASSEMBLED +ASSEMBLER +ASSEMBLERS +ASSEMBLES +ASSEMBLIES +ASSEMBLING +ASSEMBLY +ASSEMBLYMAN +ASSEMBLYMEN +ASSEMBLYWOMAN +ASSEMBLYWOMEN +ASSENT +ASSENTATION +ASSENTATIONS +ASSENTED +ASSENTER +ASSENTERS +ASSENTING +ASSENTIVE +ASSENTOR +ASSENTORS +ASSENTS +ASSERT +ASSERTED +ASSERTEDLY +ASSERTER +ASSERTERS +ASSERTING +ASSERTION +ASSERTIONS +ASSERTIVE +ASSERTIVELY +ASSERTIVENESS +ASSERTIVENESSES +ASSERTOR +ASSERTORS +ASSERTS +ASSES +ASSESS +ASSESSABLE +ASSESSED +ASSESSES +ASSESSING +ASSESSMENT +ASSESSMENTS +ASSESSOR +ASSESSORS +ASSET +ASSETLESS +ASSETS +ASSEVERATE +ASSEVERATED +ASSEVERATES +ASSEVERATING +ASSEVERATION +ASSEVERATIONS +ASSEVERATIVE +ASSHOLE +ASSHOLES +ASSIDUITIES +ASSIDUITY +ASSIDUOUS +ASSIDUOUSLY +ASSIDUOUSNESS +ASSIDUOUSNESSES +ASSIGN +ASSIGNABILITIES +ASSIGNABILITY +ASSIGNABLE +ASSIGNAT +ASSIGNATION +ASSIGNATIONS +ASSIGNATS +ASSIGNED +ASSIGNEE +ASSIGNEES +ASSIGNER +ASSIGNERS +ASSIGNING +ASSIGNMENT +ASSIGNMENTS +ASSIGNOR +ASSIGNORS +ASSIGNS +ASSIMILABILITY +ASSIMILABLE +ASSIMILATE +ASSIMILATED +ASSIMILATES +ASSIMILATING +ASSIMILATION +ASSIMILATIONISM +ASSIMILATIONIST +ASSIMILATIONS +ASSIMILATIVE +ASSIMILATOR +ASSIMILATORS +ASSIMILATORY +ASSIST +ASSISTANCE +ASSISTANCES +ASSISTANT +ASSISTANTS +ASSISTANTSHIP +ASSISTANTSHIPS +ASSISTED +ASSISTER +ASSISTERS +ASSISTING +ASSISTIVE +ASSISTOR +ASSISTORS +ASSISTS +ASSIZE +ASSIZES +ASSLIKE +ASSOCIATE +ASSOCIATED +ASSOCIATES +ASSOCIATESHIP +ASSOCIATESHIPS +ASSOCIATING +ASSOCIATION +ASSOCIATIONAL +ASSOCIATIONISM +ASSOCIATIONISMS +ASSOCIATIONIST +ASSOCIATIONISTS +ASSOCIATIONS +ASSOCIATIVE +ASSOCIATIVELY +ASSOCIATIVITIES +ASSOCIATIVITY +ASSOIL +ASSOILED +ASSOILING +ASSOILMENT +ASSOILMENTS +ASSOILS +ASSONANCE +ASSONANCES +ASSONANT +ASSONANTAL +ASSONANTS +ASSORT +ASSORTATIVE +ASSORTATIVELY +ASSORTED +ASSORTER +ASSORTERS +ASSORTING +ASSORTMENT +ASSORTMENTS +ASSORTS +ASSUAGE +ASSUAGED +ASSUAGEMENT +ASSUAGEMENTS +ASSUAGER +ASSUAGERS +ASSUAGES +ASSUAGING +ASSUASIVE +ASSUMABILITIES +ASSUMABILITY +ASSUMABLE +ASSUMABLY +ASSUME +ASSUMED +ASSUMEDLY +ASSUMER +ASSUMERS +ASSUMES +ASSUMING +ASSUMPSIT +ASSUMPSITS +ASSUMPTION +ASSUMPTIONS +ASSUMPTIVE +ASSURABLE +ASSURANCE +ASSURANCES +ASSURE +ASSURED +ASSUREDLY +ASSUREDNESS +ASSUREDNESSES +ASSUREDS +ASSURER +ASSURERS +ASSURES +ASSURGENT +ASSURING +ASSUROR +ASSURORS +ASSWAGE +ASSWAGED +ASSWAGES +ASSWAGING +ASTARBOARD +ASTASIA +ASTASIAS +ASTATIC +ASTATINE +ASTATINES +ASTER +ASTERIA +ASTERIAS +ASTERIATED +ASTERISK +ASTERISKED +ASTERISKING +ASTERISKLESS +ASTERISKS +ASTERISM +ASTERISMS +ASTERN +ASTERNAL +ASTEROID +ASTEROIDAL +ASTEROIDS +ASTERS +ASTHENIA +ASTHENIAS +ASTHENIC +ASTHENICS +ASTHENIES +ASTHENOSPHERE +ASTHENOSPHERES +ASTHENOSPHERIC +ASTHENY +ASTHMA +ASTHMAS +ASTHMATIC +ASTHMATICALLY +ASTHMATICS +ASTIGMATIC +ASTIGMATICS +ASTIGMATISM +ASTIGMATISMS +ASTIGMIA +ASTIGMIAS +ASTILBE +ASTILBES +ASTIR +ASTOMATAL +ASTOMOUS +ASTONIED +ASTONIES +ASTONISH +ASTONISHED +ASTONISHES +ASTONISHING +ASTONISHINGLY +ASTONISHMENT +ASTONISHMENTS +ASTONY +ASTONYING +ASTOUND +ASTOUNDED +ASTOUNDING +ASTOUNDINGLY +ASTOUNDS +ASTRACHAN +ASTRACHANS +ASTRADDLE +ASTRAGAL +ASTRAGALI +ASTRAGALS +ASTRAGALUS +ASTRAKHAN +ASTRAKHANS +ASTRAL +ASTRALLY +ASTRALS +ASTRAY +ASTRICT +ASTRICTED +ASTRICTING +ASTRICTS +ASTRIDE +ASTRINGE +ASTRINGED +ASTRINGENCIES +ASTRINGENCY +ASTRINGENT +ASTRINGENTLY +ASTRINGENTS +ASTRINGES +ASTRINGING +ASTROBIOLOGIES +ASTROBIOLOGIST +ASTROBIOLOGISTS +ASTROBIOLOGY +ASTROCYTE +ASTROCYTES +ASTROCYTIC +ASTROCYTOMA +ASTROCYTOMAS +ASTROCYTOMATA +ASTRODOME +ASTRODOMES +ASTROLABE +ASTROLABES +ASTROLOGER +ASTROLOGERS +ASTROLOGICAL +ASTROLOGICALLY +ASTROLOGIES +ASTROLOGY +ASTROMETRIC +ASTROMETRIES +ASTROMETRY +ASTRONAUT +ASTRONAUTIC +ASTRONAUTICAL +ASTRONAUTICALLY +ASTRONAUTICS +ASTRONAUTS +ASTRONOMER +ASTRONOMERS +ASTRONOMIC +ASTRONOMICAL +ASTRONOMICALLY +ASTRONOMIES +ASTRONOMY +ASTROPHOTOGRAPH +ASTROPHYSICAL +ASTROPHYSICALLY +ASTROPHYSICIST +ASTROPHYSICISTS +ASTROPHYSICS +ASTUTE +ASTUTELY +ASTUTENESS +ASTUTENESSES +ASTYLAR +ASUNDER +ASWARM +ASWIRL +ASWOON +ASYLA +ASYLLABIC +ASYLUM +ASYLUMS +ASYMMETRIC +ASYMMETRICAL +ASYMMETRICALLY +ASYMMETRIES +ASYMMETRY +ASYMPTOMATIC +ASYMPTOTE +ASYMPTOTES +ASYMPTOTIC +ASYMPTOTICALLY +ASYNAPSES +ASYNAPSIS +ASYNCHRONIES +ASYNCHRONISM +ASYNCHRONISMS +ASYNCHRONOUS +ASYNCHRONOUSLY +ASYNCHRONY +ASYNDETA +ASYNDETIC +ASYNDETICALLY +ASYNDETON +ASYNDETONS +AT +ATABAL +ATABALS +ATABRINE +ATABRINES +ATACTIC +ATAGHAN +ATAGHANS +ATALAYA +ATALAYAS +ATAMAN +ATAMANS +ATAMASCO +ATAMASCOS +ATAP +ATAPS +ATARACTIC +ATARACTICS +ATARAXIA +ATARAXIAS +ATARAXIC +ATARAXICS +ATARAXIES +ATARAXY +ATAVIC +ATAVISM +ATAVISMS +ATAVIST +ATAVISTIC +ATAVISTICALLY +ATAVISTS +ATAXIA +ATAXIAS +ATAXIC +ATAXICS +ATAXIES +ATAXY +ATE +ATECHNIC +ATELECTASES +ATELECTASIS +ATELIC +ATELIER +ATELIERS +ATEMOYA +ATEMOYAS +ATEMPORAL +ATENOLOL +ATENOLOLS +ATES +ATHANASIES +ATHANASY +ATHEISM +ATHEISMS +ATHEIST +ATHEISTIC +ATHEISTICAL +ATHEISTICALLY +ATHEISTS +ATHELING +ATHELINGS +ATHENAEUM +ATHENAEUMS +ATHENEUM +ATHENEUMS +ATHEORETICAL +ATHEROGENESES +ATHEROGENESIS +ATHEROGENIC +ATHEROMA +ATHEROMAS +ATHEROMATA +ATHEROMATOUS +ATHEROSCLEROSES +ATHEROSCLEROSIS +ATHEROSCLEROTIC +ATHETOID +ATHETOSES +ATHETOSIS +ATHETOTIC +ATHIRST +ATHLETE +ATHLETES +ATHLETIC +ATHLETICALLY +ATHLETICISM +ATHLETICISMS +ATHLETICS +ATHODYD +ATHODYDS +ATHROCYTE +ATHROCYTES +ATHWART +ATHWARTSHIP +ATHWARTSHIPS +ATILT +ATINGLE +ATLANTES +ATLAS +ATLASES +ATLATL +ATLATLS +ATMA +ATMAN +ATMANS +ATMAS +ATMOMETER +ATMOMETERS +ATMOSPHERE +ATMOSPHERED +ATMOSPHERES +ATMOSPHERIC +ATMOSPHERICALLY +ATMOSPHERICS +ATOLL +ATOLLS +ATOM +ATOMIC +ATOMICAL +ATOMICALLY +ATOMICITIES +ATOMICITY +ATOMICS +ATOMIES +ATOMISE +ATOMISED +ATOMISER +ATOMISERS +ATOMISES +ATOMISING +ATOMISM +ATOMISMS +ATOMIST +ATOMISTIC +ATOMISTICALLY +ATOMISTS +ATOMIZATION +ATOMIZATIONS +ATOMIZE +ATOMIZED +ATOMIZER +ATOMIZERS +ATOMIZES +ATOMIZING +ATOMS +ATOMY +ATONABLE +ATONAL +ATONALISM +ATONALISMS +ATONALIST +ATONALISTS +ATONALITIES +ATONALITY +ATONALLY +ATONE +ATONEABLE +ATONED +ATONEMENT +ATONEMENTS +ATONER +ATONERS +ATONES +ATONIA +ATONIAS +ATONIC +ATONICITIES +ATONICITY +ATONICS +ATONIES +ATONING +ATONINGLY +ATONY +ATOP +ATOPIC +ATOPIES +ATOPY +ATRABILIOUS +ATRABILIOUSNESS +ATRAZINE +ATRAZINES +ATREMBLE +ATRESIA +ATRESIAS +ATRESIC +ATRETIC +ATRIA +ATRIAL +ATRIP +ATRIUM +ATRIUMS +ATROCIOUS +ATROCIOUSLY +ATROCIOUSNESS +ATROCIOUSNESSES +ATROCITIES +ATROCITY +ATROPHIA +ATROPHIAS +ATROPHIC +ATROPHIED +ATROPHIES +ATROPHY +ATROPHYING +ATROPIN +ATROPINE +ATROPINES +ATROPINS +ATROPISM +ATROPISMS +ATT +ATTABOY +ATTACH +ATTACHABLE +ATTACHE +ATTACHED +ATTACHER +ATTACHERS +ATTACHES +ATTACHING +ATTACHMENT +ATTACHMENTS +ATTACK +ATTACKED +ATTACKER +ATTACKERS +ATTACKING +ATTACKMAN +ATTACKMEN +ATTACKS +ATTAGIRL +ATTAIN +ATTAINABILITIES +ATTAINABILITY +ATTAINABLE +ATTAINDER +ATTAINDERS +ATTAINED +ATTAINER +ATTAINERS +ATTAINING +ATTAINMENT +ATTAINMENTS +ATTAINS +ATTAINT +ATTAINTED +ATTAINTING +ATTAINTS +ATTAR +ATTARS +ATTEMPER +ATTEMPERED +ATTEMPERING +ATTEMPERS +ATTEMPT +ATTEMPTABLE +ATTEMPTED +ATTEMPTER +ATTEMPTERS +ATTEMPTING +ATTEMPTS +ATTEND +ATTENDANCE +ATTENDANCES +ATTENDANT +ATTENDANTS +ATTENDED +ATTENDEE +ATTENDEES +ATTENDER +ATTENDERS +ATTENDING +ATTENDINGS +ATTENDS +ATTENT +ATTENTION +ATTENTIONAL +ATTENTIONS +ATTENTIVE +ATTENTIVELY +ATTENTIVENESS +ATTENTIVENESSES +ATTENUATE +ATTENUATED +ATTENUATES +ATTENUATING +ATTENUATION +ATTENUATIONS +ATTENUATOR +ATTENUATORS +ATTEST +ATTESTANT +ATTESTANTS +ATTESTATION +ATTESTATIONS +ATTESTED +ATTESTER +ATTESTERS +ATTESTING +ATTESTOR +ATTESTORS +ATTESTS +ATTIC +ATTICISM +ATTICISMS +ATTICIST +ATTICISTS +ATTICIZE +ATTICIZED +ATTICIZES +ATTICIZING +ATTICS +ATTIRE +ATTIRED +ATTIRES +ATTIRING +ATTITUDE +ATTITUDES +ATTITUDINAL +ATTITUDINALLY +ATTITUDINISE +ATTITUDINISED +ATTITUDINISES +ATTITUDINISING +ATTITUDINIZE +ATTITUDINIZED +ATTITUDINIZES +ATTITUDINIZING +ATTORN +ATTORNED +ATTORNEY +ATTORNEYS +ATTORNEYSHIP +ATTORNEYSHIPS +ATTORNING +ATTORNMENT +ATTORNMENTS +ATTORNS +ATTRACT +ATTRACTANCE +ATTRACTANCES +ATTRACTANCIES +ATTRACTANCY +ATTRACTANT +ATTRACTANTS +ATTRACTED +ATTRACTER +ATTRACTERS +ATTRACTING +ATTRACTION +ATTRACTIONS +ATTRACTIVE +ATTRACTIVELY +ATTRACTIVENESS +ATTRACTOR +ATTRACTORS +ATTRACTS +ATTRIBUTABLE +ATTRIBUTE +ATTRIBUTED +ATTRIBUTES +ATTRIBUTING +ATTRIBUTION +ATTRIBUTIONAL +ATTRIBUTIONS +ATTRIBUTIVE +ATTRIBUTIVELY +ATTRIBUTIVES +ATTRIT +ATTRITE +ATTRITED +ATTRITES +ATTRITING +ATTRITION +ATTRITIONAL +ATTRITIONS +ATTRITIVE +ATTRITS +ATTRITTED +ATTRITTING +ATTUNE +ATTUNED +ATTUNEMENT +ATTUNEMENTS +ATTUNES +ATTUNING +ATWAIN +ATWEEN +ATWITTER +ATYPIC +ATYPICAL +ATYPICALITIES +ATYPICALITY +ATYPICALLY +AUBADE +AUBADES +AUBERGE +AUBERGES +AUBERGINE +AUBERGINES +AUBRETIA +AUBRETIAS +AUBRIETA +AUBRIETAS +AUBRIETIA +AUBRIETIAS +AUBURN +AUBURNS +AUCTION +AUCTIONED +AUCTIONEER +AUCTIONEERS +AUCTIONING +AUCTIONS +AUCTORIAL +AUCUBA +AUCUBAS +AUDACIOUS +AUDACIOUSLY +AUDACIOUSNESS +AUDACIOUSNESSES +AUDACITIES +AUDACITY +AUDAD +AUDADS +AUDIAL +AUDIBILITIES +AUDIBILITY +AUDIBLE +AUDIBLED +AUDIBLES +AUDIBLING +AUDIBLY +AUDIENCE +AUDIENCES +AUDIENT +AUDIENTS +AUDILE +AUDILES +AUDING +AUDINGS +AUDIO +AUDIOBOOK +AUDIOBOOKS +AUDIOCASSETTE +AUDIOCASSETTES +AUDIOGENIC +AUDIOGRAM +AUDIOGRAMS +AUDIOLOGIC +AUDIOLOGICAL +AUDIOLOGIES +AUDIOLOGIST +AUDIOLOGISTS +AUDIOLOGY +AUDIOMETER +AUDIOMETERS +AUDIOMETRIC +AUDIOMETRIES +AUDIOMETRY +AUDIOPHILE +AUDIOPHILES +AUDIOS +AUDIOTAPE +AUDIOTAPED +AUDIOTAPES +AUDIOTAPING +AUDIOVISUAL +AUDIOVISUALS +AUDIPHONE +AUDIPHONES +AUDIT +AUDITABLE +AUDITED +AUDITEE +AUDITEES +AUDITING +AUDITION +AUDITIONED +AUDITIONING +AUDITIONS +AUDITIVE +AUDITIVES +AUDITOR +AUDITORIA +AUDITORIES +AUDITORILY +AUDITORIUM +AUDITORIUMS +AUDITORS +AUDITORY +AUDITS +AUGEND +AUGENDS +AUGER +AUGERS +AUGHT +AUGHTS +AUGITE +AUGITES +AUGITIC +AUGMENT +AUGMENTATION +AUGMENTATIONS +AUGMENTATIVE +AUGMENTATIVES +AUGMENTED +AUGMENTER +AUGMENTERS +AUGMENTING +AUGMENTOR +AUGMENTORS +AUGMENTS +AUGUR +AUGURAL +AUGURED +AUGURER +AUGURERS +AUGURIES +AUGURING +AUGURS +AUGURY +AUGUST +AUGUSTER +AUGUSTEST +AUGUSTLY +AUGUSTNESS +AUGUSTNESSES +AUK +AUKLET +AUKLETS +AUKS +AULD +AULDER +AULDEST +AULIC +AUNT +AUNTHOOD +AUNTHOODS +AUNTIE +AUNTIES +AUNTLIER +AUNTLIEST +AUNTLIKE +AUNTLY +AUNTS +AUNTY +AURA +AURAE +AURAL +AURALITIES +AURALITY +AURALLY +AURAR +AURAS +AURATE +AURATED +AUREATE +AUREATELY +AUREI +AUREOLA +AUREOLAE +AUREOLAS +AUREOLE +AUREOLED +AUREOLES +AUREOLING +AURES +AUREUS +AURIC +AURICLE +AURICLED +AURICLES +AURICULA +AURICULAE +AURICULAR +AURICULARS +AURICULAS +AURICULATE +AURIFEROUS +AURIFORM +AURIS +AURIST +AURISTS +AUROCHS +AUROCHSES +AURORA +AURORAE +AURORAL +AURORALLY +AURORAS +AUROREAN +AUROUS +AURUM +AURUMS +AUSCULTATE +AUSCULTATED +AUSCULTATES +AUSCULTATING +AUSCULTATION +AUSCULTATIONS +AUSCULTATORY +AUSFORM +AUSFORMED +AUSFORMING +AUSFORMS +AUSLANDER +AUSLANDERS +AUSPEX +AUSPICATE +AUSPICATED +AUSPICATES +AUSPICATING +AUSPICE +AUSPICES +AUSPICIOUS +AUSPICIOUSLY +AUSPICIOUSNESS +AUSTENITE +AUSTENITES +AUSTENITIC +AUSTERE +AUSTERELY +AUSTERENESS +AUSTERENESSES +AUSTERER +AUSTEREST +AUSTERITIES +AUSTERITY +AUSTRAL +AUSTRALES +AUSTRALS +AUSUBO +AUSUBOS +AUTACOID +AUTACOIDS +AUTARCH +AUTARCHIC +AUTARCHICAL +AUTARCHIES +AUTARCHS +AUTARCHY +AUTARKIC +AUTARKICAL +AUTARKIES +AUTARKIST +AUTARKISTS +AUTARKY +AUTECIOUS +AUTECISM +AUTECISMS +AUTECOLOGICAL +AUTECOLOGIES +AUTECOLOGY +AUTEUR +AUTEURISM +AUTEURISMS +AUTEURIST +AUTEURISTS +AUTEURS +AUTHENTIC +AUTHENTICALLY +AUTHENTICATE +AUTHENTICATED +AUTHENTICATES +AUTHENTICATING +AUTHENTICATION +AUTHENTICATIONS +AUTHENTICATOR +AUTHENTICATORS +AUTHENTICITIES +AUTHENTICITY +AUTHOR +AUTHORED +AUTHORESS +AUTHORESSES +AUTHORIAL +AUTHORING +AUTHORISE +AUTHORISED +AUTHORISES +AUTHORISING +AUTHORITARIAN +AUTHORITARIANS +AUTHORITATIVE +AUTHORITATIVELY +AUTHORITIES +AUTHORITY +AUTHORIZATION +AUTHORIZATIONS +AUTHORIZE +AUTHORIZED +AUTHORIZER +AUTHORIZERS +AUTHORIZES +AUTHORIZING +AUTHORS +AUTHORSHIP +AUTHORSHIPS +AUTISM +AUTISMS +AUTIST +AUTISTIC +AUTISTICALLY +AUTISTICS +AUTISTS +AUTO +AUTOANTIBODIES +AUTOANTIBODY +AUTOBAHN +AUTOBAHNEN +AUTOBAHNS +AUTOBIOGRAPHER +AUTOBIOGRAPHERS +AUTOBIOGRAPHIC +AUTOBIOGRAPHIES +AUTOBIOGRAPHY +AUTOBUS +AUTOBUSES +AUTOBUSSES +AUTOCADE +AUTOCADES +AUTOCATALYSES +AUTOCATALYSIS +AUTOCATALYTIC +AUTOCEPHALIES +AUTOCEPHALOUS +AUTOCEPHALY +AUTOCHTHON +AUTOCHTHONES +AUTOCHTHONOUS +AUTOCHTHONOUSLY +AUTOCHTHONS +AUTOCLAVE +AUTOCLAVED +AUTOCLAVES +AUTOCLAVING +AUTOCOID +AUTOCOIDS +AUTOCORRELATION +AUTOCRACIES +AUTOCRACY +AUTOCRAT +AUTOCRATIC +AUTOCRATICAL +AUTOCRATICALLY +AUTOCRATS +AUTOCRINE +AUTOCROSS +AUTOCROSSES +AUTODIDACT +AUTODIDACTIC +AUTODIDACTS +AUTODYNE +AUTODYNES +AUTOECIOUS +AUTOECIOUSLY +AUTOECISM +AUTOECISMS +AUTOED +AUTOEROTIC +AUTOEROTICISM +AUTOEROTICISMS +AUTOEROTISM +AUTOEROTISMS +AUTOFOCUS +AUTOFOCUSES +AUTOGAMIC +AUTOGAMIES +AUTOGAMOUS +AUTOGAMY +AUTOGENIC +AUTOGENIES +AUTOGENOUS +AUTOGENOUSLY +AUTOGENY +AUTOGIRO +AUTOGIROS +AUTOGRAFT +AUTOGRAFTED +AUTOGRAFTING +AUTOGRAFTS +AUTOGRAPH +AUTOGRAPHED +AUTOGRAPHIC +AUTOGRAPHICALLY +AUTOGRAPHIES +AUTOGRAPHING +AUTOGRAPHS +AUTOGRAPHY +AUTOGYRO +AUTOGYROS +AUTOHARP +AUTOHARPS +AUTOHYPNOSES +AUTOHYPNOSIS +AUTOHYPNOTIC +AUTOIMMUNE +AUTOIMMUNITIES +AUTOIMMUNITY +AUTOINFECTION +AUTOINFECTIONS +AUTOING +AUTOLOADING +AUTOLOGOUS +AUTOLYSATE +AUTOLYSATES +AUTOLYSE +AUTOLYSED +AUTOLYSES +AUTOLYSIN +AUTOLYSING +AUTOLYSINS +AUTOLYSIS +AUTOLYTIC +AUTOLYZATE +AUTOLYZATES +AUTOLYZE +AUTOLYZED +AUTOLYZES +AUTOLYZING +AUTOMAKER +AUTOMAKERS +AUTOMAN +AUTOMAT +AUTOMATA +AUTOMATABLE +AUTOMATE +AUTOMATED +AUTOMATES +AUTOMATIC +AUTOMATICALLY +AUTOMATICITIES +AUTOMATICITY +AUTOMATICS +AUTOMATING +AUTOMATION +AUTOMATIONS +AUTOMATISM +AUTOMATISMS +AUTOMATIST +AUTOMATISTS +AUTOMATIZATION +AUTOMATIZATIONS +AUTOMATIZE +AUTOMATIZED +AUTOMATIZES +AUTOMATIZING +AUTOMATON +AUTOMATONS +AUTOMATS +AUTOMEN +AUTOMOBILE +AUTOMOBILED +AUTOMOBILES +AUTOMOBILING +AUTOMOBILIST +AUTOMOBILISTS +AUTOMOBILITIES +AUTOMOBILITY +AUTOMORPHISM +AUTOMORPHISMS +AUTOMOTIVE +AUTONOMIC +AUTONOMICALLY +AUTONOMIES +AUTONOMIST +AUTONOMISTS +AUTONOMOUS +AUTONOMOUSLY +AUTONOMY +AUTONYM +AUTONYMS +AUTOPEN +AUTOPENS +AUTOPHAGIES +AUTOPHAGY +AUTOPHYTE +AUTOPHYTES +AUTOPILOT +AUTOPILOTS +AUTOPOLYPLOID +AUTOPOLYPLOIDS +AUTOPOLYPLOIDY +AUTOPSIC +AUTOPSIED +AUTOPSIES +AUTOPSIST +AUTOPSISTS +AUTOPSY +AUTOPSYING +AUTORADIOGRAM +AUTORADIOGRAMS +AUTORADIOGRAPH +AUTORADIOGRAPHS +AUTORADIOGRAPHY +AUTOROTATE +AUTOROTATED +AUTOROTATES +AUTOROTATING +AUTOROTATION +AUTOROTATIONS +AUTOROUTE +AUTOROUTES +AUTOS +AUTOSEXING +AUTOSOMAL +AUTOSOMALLY +AUTOSOME +AUTOSOMES +AUTOSTRADA +AUTOSTRADAS +AUTOSTRADE +AUTOSUGGEST +AUTOSUGGESTED +AUTOSUGGESTING +AUTOSUGGESTION +AUTOSUGGESTIONS +AUTOSUGGESTS +AUTOTELIC +AUTOTETRAPLOID +AUTOTETRAPLOIDS +AUTOTETRAPLOIDY +AUTOTOMIC +AUTOTOMIES +AUTOTOMIZE +AUTOTOMIZED +AUTOTOMIZES +AUTOTOMIZING +AUTOTOMOUS +AUTOTOMY +AUTOTOXIC +AUTOTOXIN +AUTOTOXINS +AUTOTRANSFORMER +AUTOTRANSFUSION +AUTOTROPH +AUTOTROPHIC +AUTOTROPHICALLY +AUTOTROPHIES +AUTOTROPHS +AUTOTROPHY +AUTOTYPE +AUTOTYPES +AUTOTYPIES +AUTOTYPY +AUTOWORKER +AUTOWORKERS +AUTOXIDATION +AUTOXIDATIONS +AUTUMN +AUTUMNAL +AUTUMNALLY +AUTUMNS +AUTUNITE +AUTUNITES +AUXESES +AUXESIS +AUXETIC +AUXETICS +AUXILIARIES +AUXILIARY +AUXIN +AUXINIC +AUXINS +AUXOTROPH +AUXOTROPHIC +AUXOTROPHIES +AUXOTROPHS +AUXOTROPHY +AVA +AVADAVAT +AVADAVATS +AVAIL +AVAILABILITIES +AVAILABILITY +AVAILABLE +AVAILABLENESS +AVAILABLENESSES +AVAILABLY +AVAILED +AVAILING +AVAILS +AVALANCHE +AVALANCHED +AVALANCHES +AVALANCHING +AVANT +AVARICE +AVARICES +AVARICIOUS +AVARICIOUSLY +AVARICIOUSNESS +AVASCULAR +AVASCULARITIES +AVASCULARITY +AVAST +AVATAR +AVATARS +AVAUNT +AVE +AVELLAN +AVELLANE +AVENGE +AVENGED +AVENGEFUL +AVENGER +AVENGERS +AVENGES +AVENGING +AVENS +AVENSES +AVENTAIL +AVENTAILS +AVENTURIN +AVENTURINE +AVENTURINES +AVENTURINS +AVENUE +AVENUES +AVER +AVERAGE +AVERAGED +AVERAGELY +AVERAGENESS +AVERAGENESSES +AVERAGES +AVERAGING +AVERMENT +AVERMENTS +AVERRABLE +AVERRED +AVERRING +AVERS +AVERSE +AVERSELY +AVERSENESS +AVERSENESSES +AVERSION +AVERSIONS +AVERSIVE +AVERSIVELY +AVERSIVENESS +AVERSIVENESSES +AVERSIVES +AVERT +AVERTABLE +AVERTED +AVERTER +AVERTERS +AVERTIBLE +AVERTING +AVERTS +AVES +AVGAS +AVGASES +AVGASSES +AVGOLEMONO +AVGOLEMONOS +AVIAN +AVIANIZE +AVIANIZED +AVIANIZES +AVIANIZING +AVIANS +AVIARIES +AVIARIST +AVIARISTS +AVIARY +AVIATE +AVIATED +AVIATES +AVIATIC +AVIATING +AVIATION +AVIATIONS +AVIATOR +AVIATORS +AVIATRESS +AVIATRESSES +AVIATRICE +AVIATRICES +AVIATRIX +AVIATRIXES +AVICULAR +AVICULTURE +AVICULTURES +AVICULTURIST +AVICULTURISTS +AVID +AVIDIN +AVIDINS +AVIDITIES +AVIDITY +AVIDLY +AVIDNESS +AVIDNESSES +AVIFAUNA +AVIFAUNAE +AVIFAUNAL +AVIFAUNAS +AVIGATOR +AVIGATORS +AVION +AVIONIC +AVIONICS +AVIONS +AVIRULENT +AVISO +AVISOS +AVITAMINOSES +AVITAMINOSIS +AVITAMINOTIC +AVO +AVOCADO +AVOCADOES +AVOCADOS +AVOCATION +AVOCATIONAL +AVOCATIONALLY +AVOCATIONS +AVOCET +AVOCETS +AVODIRE +AVODIRES +AVOID +AVOIDABLE +AVOIDABLY +AVOIDANCE +AVOIDANCES +AVOIDED +AVOIDER +AVOIDERS +AVOIDING +AVOIDS +AVOIRDUPOIS +AVOS +AVOSET +AVOSETS +AVOUCH +AVOUCHED +AVOUCHER +AVOUCHERS +AVOUCHES +AVOUCHING +AVOUCHMENT +AVOUCHMENTS +AVOW +AVOWABLE +AVOWABLY +AVOWAL +AVOWALS +AVOWED +AVOWEDLY +AVOWER +AVOWERS +AVOWING +AVOWS +AVULSE +AVULSED +AVULSES +AVULSING +AVULSION +AVULSIONS +AVUNCULAR +AVUNCULARITIES +AVUNCULARITY +AVUNCULARLY +AW +AWA +AWAIT +AWAITED +AWAITER +AWAITERS +AWAITING +AWAITS +AWAKE +AWAKED +AWAKEN +AWAKENED +AWAKENER +AWAKENERS +AWAKENING +AWAKENINGS +AWAKENS +AWAKES +AWAKING +AWARD +AWARDABLE +AWARDED +AWARDEE +AWARDEES +AWARDER +AWARDERS +AWARDING +AWARDS +AWARE +AWARENESS +AWARENESSES +AWASH +AWAY +AWAYNESS +AWAYNESSES +AWE +AWEARY +AWEATHER +AWED +AWEE +AWEIGH +AWEING +AWELESS +AWES +AWESOME +AWESOMELY +AWESOMENESS +AWESOMENESSES +AWESTRICKEN +AWESTRUCK +AWFUL +AWFULLER +AWFULLEST +AWFULLY +AWFULNESS +AWFULNESSES +AWHILE +AWHIRL +AWING +AWKWARD +AWKWARDER +AWKWARDEST +AWKWARDLY +AWKWARDNESS +AWKWARDNESSES +AWL +AWLESS +AWLS +AWLWORT +AWLWORTS +AWMOUS +AWN +AWNED +AWNING +AWNINGED +AWNINGS +AWNLESS +AWNS +AWNY +AWOKE +AWOKEN +AWOL +AWOLS +AWRY +AX +AXAL +AXE +AXED +AXEL +AXELS +AXEMAN +AXEMEN +AXENIC +AXENICALLY +AXES +AXIAL +AXIALITIES +AXIALITY +AXIALLY +AXIL +AXILE +AXILLA +AXILLAE +AXILLAR +AXILLARIES +AXILLARS +AXILLARY +AXILLAS +AXILS +AXING +AXIOLOGICAL +AXIOLOGICALLY +AXIOLOGIES +AXIOLOGY +AXIOM +AXIOMATIC +AXIOMATICALLY +AXIOMATISATION +AXIOMATISATIONS +AXIOMATIZATION +AXIOMATIZATIONS +AXIOMATIZE +AXIOMATIZED +AXIOMATIZES +AXIOMATIZING +AXIOMS +AXION +AXIONS +AXIS +AXISED +AXISES +AXISYMMETRIC +AXISYMMETRICAL +AXISYMMETRIES +AXISYMMETRY +AXITE +AXITES +AXLE +AXLED +AXLES +AXLETREE +AXLETREES +AXLIKE +AXMAN +AXMEN +AXOLOTL +AXOLOTLS +AXON +AXONAL +AXONE +AXONEMAL +AXONEME +AXONEMES +AXONES +AXONIC +AXONOMETRIC +AXONS +AXOPLASM +AXOPLASMIC +AXOPLASMS +AXSEED +AXSEEDS +AY +AYAH +AYAHS +AYAHUASCA +AYAHUASCAS +AYATOLLAH +AYATOLLAHS +AYE +AYES +AYIN +AYINS +AYS +AYURVEDA +AYURVEDAS +AYURVEDIC +AYURVEDICS +AZALEA +AZALEAS +AZAN +AZANS +AZATHIOPRINE +AZATHIOPRINES +AZEDARACH +AZEDARACHS +AZEOTROPE +AZEOTROPES +AZEOTROPIES +AZEOTROPY +AZIDE +AZIDES +AZIDO +AZIDOTHYMIDINE +AZIDOTHYMIDINES +AZIMUTH +AZIMUTHAL +AZIMUTHALLY +AZIMUTHS +AZINE +AZINES +AZLON +AZLONS +AZO +AZOIC +AZOLE +AZOLES +AZON +AZONAL +AZONIC +AZONS +AZOOSPERMIA +AZOOSPERMIAS +AZOTE +AZOTED +AZOTEMIA +AZOTEMIAS +AZOTEMIC +AZOTES +AZOTH +AZOTHS +AZOTIC +AZOTISE +AZOTISED +AZOTISES +AZOTISING +AZOTIZE +AZOTIZED +AZOTIZES +AZOTIZING +AZOTOBACTER +AZOTOBACTERS +AZOTURIA +AZOTURIAS +AZUKI +AZUKIS +AZULEJO +AZULEJOS +AZURE +AZURES +AZURITE +AZURITES +AZYGOS +AZYGOSES +AZYGOUS +BA +BAA +BAAED +BAAING +BAAL +BAALIM +BAALISM +BAALISMS +BAALS +BAAS +BAASES +BAASKAAP +BAASKAAPS +BAASKAP +BAASKAPS +BAASSKAP +BAASSKAPS +BABA +BABAS +BABASSU +BABASSUS +BABBITRIES +BABBITRY +BABBITT +BABBITTED +BABBITTING +BABBITTRIES +BABBITTRY +BABBITTS +BABBLE +BABBLED +BABBLEMENT +BABBLEMENTS +BABBLER +BABBLERS +BABBLES +BABBLING +BABBLINGS +BABE +BABEL +BABELS +BABES +BABESIA +BABESIAS +BABESIOSES +BABESIOSIS +BABICHE +BABICHES +BABIED +BABIER +BABIES +BABIEST +BABIRUSA +BABIRUSAS +BABIRUSSA +BABIRUSSAS +BABKA +BABKAS +BABOO +BABOOL +BABOOLS +BABOON +BABOONERIES +BABOONERY +BABOONISH +BABOONS +BABOOS +BABU +BABUL +BABULS +BABUS +BABUSHKA +BABUSHKAS +BABY +BABYDOLL +BABYDOLLS +BABYHOOD +BABYHOODS +BABYING +BABYISH +BABYISHLY +BABYPROOF +BABYPROOFED +BABYPROOFING +BABYPROOFS +BABYSAT +BABYSIT +BABYSITS +BABYSITTING +BACALAO +BACALAOS +BACCA +BACCAE +BACCALAUREATE +BACCALAUREATES +BACCARA +BACCARAS +BACCARAT +BACCARATS +BACCATE +BACCATED +BACCHANAL +BACCHANALIA +BACCHANALIAN +BACCHANALIANS +BACCHANALS +BACCHANT +BACCHANTE +BACCHANTES +BACCHANTS +BACCHIC +BACCHII +BACCHIUS +BACCIFORM +BACH +BACHED +BACHELOR +BACHELORDOM +BACHELORDOMS +BACHELORETTE +BACHELORETTES +BACHELORHOOD +BACHELORHOODS +BACHELORS +BACHES +BACHING +BACILLAR +BACILLARY +BACILLI +BACILLUS +BACITRACIN +BACITRACINS +BACK +BACKACHE +BACKACHES +BACKBEAT +BACKBEATS +BACKBENCH +BACKBENCHER +BACKBENCHERS +BACKBENCHES +BACKBEND +BACKBENDS +BACKBIT +BACKBITE +BACKBITER +BACKBITERS +BACKBITES +BACKBITING +BACKBITINGS +BACKBITTEN +BACKBLOCK +BACKBLOCKS +BACKBOARD +BACKBOARDS +BACKBONE +BACKBONED +BACKBONES +BACKBREAKER +BACKBREAKERS +BACKBREAKING +BACKCAST +BACKCASTS +BACKCHAT +BACKCHATS +BACKCHECK +BACKCHECKED +BACKCHECKING +BACKCHECKS +BACKCLOTH +BACKCLOTHS +BACKCOUNTRIES +BACKCOUNTRY +BACKCOURT +BACKCOURTMAN +BACKCOURTMEN +BACKCOURTS +BACKCROSS +BACKCROSSED +BACKCROSSES +BACKCROSSING +BACKDATE +BACKDATED +BACKDATES +BACKDATING +BACKDOOR +BACKDRAFT +BACKDRAFTS +BACKDROP +BACKDROPPED +BACKDROPPING +BACKDROPS +BACKDROPT +BACKED +BACKER +BACKERS +BACKFIELD +BACKFIELDS +BACKFILL +BACKFILLED +BACKFILLING +BACKFILLS +BACKFIRE +BACKFIRED +BACKFIRES +BACKFIRING +BACKFIT +BACKFITS +BACKFITTED +BACKFITTING +BACKFLIP +BACKFLIPPED +BACKFLIPPING +BACKFLIPS +BACKFLOW +BACKFLOWS +BACKGAMMON +BACKGAMMONS +BACKGROUND +BACKGROUNDED +BACKGROUNDER +BACKGROUNDERS +BACKGROUNDING +BACKGROUNDS +BACKHAND +BACKHANDED +BACKHANDEDLY +BACKHANDER +BACKHANDERS +BACKHANDING +BACKHANDS +BACKHAUL +BACKHAULED +BACKHAULING +BACKHAULS +BACKHOE +BACKHOED +BACKHOEING +BACKHOES +BACKHOUSE +BACKHOUSES +BACKING +BACKINGS +BACKLAND +BACKLANDS +BACKLASH +BACKLASHED +BACKLASHER +BACKLASHERS +BACKLASHES +BACKLASHING +BACKLESS +BACKLIGHT +BACKLIGHTED +BACKLIGHTING +BACKLIGHTS +BACKLIST +BACKLISTED +BACKLISTING +BACKLISTS +BACKLIT +BACKLOAD +BACKLOADED +BACKLOADING +BACKLOADS +BACKLOG +BACKLOGGED +BACKLOGGING +BACKLOGS +BACKMOST +BACKOUT +BACKOUTS +BACKPACK +BACKPACKED +BACKPACKER +BACKPACKERS +BACKPACKING +BACKPACKS +BACKPEDAL +BACKPEDALED +BACKPEDALING +BACKPEDALLED +BACKPEDALLING +BACKPEDALS +BACKREST +BACKRESTS +BACKROOM +BACKROOMS +BACKRUSH +BACKRUSHES +BACKS +BACKSAW +BACKSAWS +BACKSCATTER +BACKSCATTERED +BACKSCATTERING +BACKSCATTERINGS +BACKSCATTERS +BACKSEAT +BACKSEATS +BACKSET +BACKSETS +BACKSHORE +BACKSHORES +BACKSIDE +BACKSIDES +BACKSLAP +BACKSLAPPED +BACKSLAPPER +BACKSLAPPERS +BACKSLAPPING +BACKSLAPS +BACKSLASH +BACKSLASHES +BACKSLID +BACKSLIDDEN +BACKSLIDE +BACKSLIDER +BACKSLIDERS +BACKSLIDES +BACKSLIDING +BACKSPACE +BACKSPACED +BACKSPACES +BACKSPACING +BACKSPIN +BACKSPINS +BACKSPLASH +BACKSPLASHES +BACKSTAB +BACKSTABBED +BACKSTABBER +BACKSTABBERS +BACKSTABBING +BACKSTABBINGS +BACKSTABS +BACKSTAGE +BACKSTAGES +BACKSTAIR +BACKSTAIRS +BACKSTAMP +BACKSTAMPED +BACKSTAMPING +BACKSTAMPS +BACKSTAY +BACKSTAYS +BACKSTITCH +BACKSTITCHED +BACKSTITCHES +BACKSTITCHING +BACKSTOP +BACKSTOPPED +BACKSTOPPING +BACKSTOPS +BACKSTORIES +BACKSTORY +BACKSTREET +BACKSTREETS +BACKSTRETCH +BACKSTRETCHES +BACKSTROKE +BACKSTROKES +BACKSWEPT +BACKSWING +BACKSWINGS +BACKSWORD +BACKSWORDS +BACKTRACK +BACKTRACKED +BACKTRACKING +BACKTRACKS +BACKUP +BACKUPS +BACKWARD +BACKWARDLY +BACKWARDNESS +BACKWARDNESSES +BACKWARDS +BACKWASH +BACKWASHED +BACKWASHES +BACKWASHING +BACKWATER +BACKWATERS +BACKWOOD +BACKWOODS +BACKWOODSMAN +BACKWOODSMEN +BACKWOODSY +BACKWRAP +BACKWRAPS +BACKYARD +BACKYARDS +BACLOFEN +BACLOFENS +BACON +BACONS +BACTEREMIA +BACTEREMIAS +BACTEREMIC +BACTERIA +BACTERIAL +BACTERIALLY +BACTERIALS +BACTERIAS +BACTERICIDAL +BACTERICIDALLY +BACTERICIDE +BACTERICIDES +BACTERIN +BACTERINS +BACTERIOCIN +BACTERIOCINS +BACTERIOLOGIC +BACTERIOLOGICAL +BACTERIOLOGIES +BACTERIOLOGIST +BACTERIOLOGISTS +BACTERIOLOGY +BACTERIOLYSES +BACTERIOLYSIS +BACTERIOLYTIC +BACTERIOPHAGE +BACTERIOPHAGES +BACTERIOPHAGIES +BACTERIOPHAGY +BACTERIOSTASES +BACTERIOSTASIS +BACTERIOSTAT +BACTERIOSTATIC +BACTERIOSTATS +BACTERIUM +BACTERIURIA +BACTERIURIAS +BACTERIZATION +BACTERIZATIONS +BACTERIZE +BACTERIZED +BACTERIZES +BACTERIZING +BACTEROID +BACTEROIDS +BACULA +BACULINE +BACULUM +BACULUMS +BAD +BADASS +BADASSED +BADASSES +BADDER +BADDEST +BADDIE +BADDIES +BADDY +BADE +BADGE +BADGED +BADGELESS +BADGER +BADGERED +BADGERING +BADGERLY +BADGERS +BADGES +BADGING +BADINAGE +BADINAGED +BADINAGES +BADINAGING +BADLAND +BADLANDS +BADLY +BADMAN +BADMEN +BADMINTON +BADMINTONS +BADMOUTH +BADMOUTHED +BADMOUTHING +BADMOUTHS +BADNESS +BADNESSES +BADS +BAFF +BAFFED +BAFFIES +BAFFING +BAFFLE +BAFFLED +BAFFLEGAB +BAFFLEGABS +BAFFLEMENT +BAFFLEMENTS +BAFFLER +BAFFLERS +BAFFLES +BAFFLING +BAFFLINGLY +BAFFS +BAFFY +BAG +BAGASS +BAGASSE +BAGASSES +BAGATELLE +BAGATELLES +BAGEL +BAGELS +BAGFUL +BAGFULS +BAGGAGE +BAGGAGES +BAGGED +BAGGER +BAGGERS +BAGGIE +BAGGIER +BAGGIES +BAGGIEST +BAGGILY +BAGGINESS +BAGGINESSES +BAGGING +BAGGINGS +BAGGY +BAGHOUSE +BAGHOUSES +BAGLIKE +BAGMAN +BAGMEN +BAGNIO +BAGNIOS +BAGPIPE +BAGPIPED +BAGPIPER +BAGPIPERS +BAGPIPES +BAGPIPING +BAGS +BAGSFUL +BAGUET +BAGUETS +BAGUETTE +BAGUETTES +BAGWIG +BAGWIGS +BAGWORM +BAGWORMS +BAH +BAHADUR +BAHADURS +BAHT +BAHTS +BAHUVRIHI +BAHUVRIHIS +BAIDARKA +BAIDARKAS +BAIL +BAILABLE +BAILED +BAILEE +BAILEES +BAILER +BAILERS +BAILEY +BAILEYS +BAILIE +BAILIES +BAILIFF +BAILIFFS +BAILIFFSHIP +BAILIFFSHIPS +BAILING +BAILIWICK +BAILIWICKS +BAILMENT +BAILMENTS +BAILOR +BAILORS +BAILOUT +BAILOUTS +BAILS +BAILSMAN +BAILSMEN +BAIRN +BAIRNISH +BAIRNLIER +BAIRNLIEST +BAIRNLY +BAIRNS +BAIT +BAITED +BAITER +BAITERS +BAITFISH +BAITFISHES +BAITH +BAITING +BAITS +BAIZA +BAIZAS +BAIZE +BAIZES +BAKE +BAKEAPPLE +BAKEAPPLES +BAKED +BAKEHOUSE +BAKEHOUSES +BAKELITE +BAKELITES +BAKEMEAT +BAKEMEATS +BAKER +BAKERIES +BAKERS +BAKERY +BAKES +BAKESHOP +BAKESHOPS +BAKEWARE +BAKEWARES +BAKING +BAKINGS +BAKLAVA +BAKLAVAS +BAKLAWA +BAKLAWAS +BAKSHEESH +BAKSHEESHES +BAKSHISH +BAKSHISHED +BAKSHISHES +BAKSHISHING +BAL +BALACLAVA +BALACLAVAS +BALALAIKA +BALALAIKAS +BALANCE +BALANCED +BALANCER +BALANCERS +BALANCES +BALANCING +BALAS +BALASES +BALATA +BALATAS +BALBOA +BALBOAS +BALBRIGGAN +BALBRIGGANS +BALCONIED +BALCONIES +BALCONY +BALD +BALDACHIN +BALDACHINO +BALDACHINOS +BALDACHINS +BALDAQUIN +BALDAQUINS +BALDED +BALDER +BALDERDASH +BALDERDASHES +BALDEST +BALDFACED +BALDHEAD +BALDHEADS +BALDIES +BALDING +BALDISH +BALDLY +BALDNESS +BALDNESSES +BALDPATE +BALDPATED +BALDPATES +BALDRIC +BALDRICK +BALDRICKS +BALDRICS +BALDS +BALDY +BALE +BALED +BALEEN +BALEENS +BALEFIRE +BALEFIRES +BALEFUL +BALEFULLY +BALEFULNESS +BALEFULNESSES +BALER +BALERS +BALES +BALING +BALISAUR +BALISAURS +BALK +BALKANIZATION +BALKANIZATIONS +BALKANIZE +BALKANIZED +BALKANIZES +BALKANIZING +BALKED +BALKER +BALKERS +BALKIER +BALKIEST +BALKILY +BALKINESS +BALKINESSES +BALKING +BALKLINE +BALKLINES +BALKS +BALKY +BALL +BALLAD +BALLADE +BALLADEER +BALLADEERS +BALLADES +BALLADIC +BALLADIST +BALLADISTS +BALLADRIES +BALLADRY +BALLADS +BALLAST +BALLASTED +BALLASTER +BALLASTERS +BALLASTING +BALLASTS +BALLCARRIER +BALLCARRIERS +BALLED +BALLER +BALLERINA +BALLERINAS +BALLERS +BALLET +BALLETIC +BALLETOMANE +BALLETOMANES +BALLETOMANIA +BALLETOMANIAS +BALLETS +BALLGAME +BALLGAMES +BALLHANDLING +BALLHANDLINGS +BALLHAWK +BALLHAWKS +BALLIES +BALLING +BALLISTA +BALLISTAE +BALLISTIC +BALLISTICALLY +BALLISTICS +BALLON +BALLONET +BALLONETS +BALLONNE +BALLONNES +BALLONS +BALLOON +BALLOONED +BALLOONING +BALLOONINGS +BALLOONIST +BALLOONISTS +BALLOONS +BALLOT +BALLOTED +BALLOTER +BALLOTERS +BALLOTING +BALLOTS +BALLPARK +BALLPARKS +BALLPLAYER +BALLPLAYERS +BALLPOINT +BALLPOINTS +BALLROOM +BALLROOMS +BALLS +BALLSIER +BALLSIEST +BALLSY +BALLUTE +BALLUTES +BALLY +BALLYARD +BALLYARDS +BALLYHOO +BALLYHOOED +BALLYHOOING +BALLYHOOS +BALLYRAG +BALLYRAGGED +BALLYRAGGING +BALLYRAGS +BALM +BALMACAAN +BALMACAANS +BALMIER +BALMIEST +BALMILY +BALMINESS +BALMINESSES +BALMLIKE +BALMORAL +BALMORALS +BALMS +BALMY +BALNEAL +BALNEOLOGIES +BALNEOLOGY +BALONEY +BALONEYS +BALS +BALSA +BALSAM +BALSAMED +BALSAMIC +BALSAMING +BALSAMS +BALSAS +BALUSTER +BALUSTERS +BALUSTRADE +BALUSTRADED +BALUSTRADES +BAM +BAMBINI +BAMBINO +BAMBINOS +BAMBOO +BAMBOOS +BAMBOOZLE +BAMBOOZLED +BAMBOOZLEMENT +BAMBOOZLEMENTS +BAMBOOZLES +BAMBOOZLING +BAMMED +BAMMING +BAMS +BAN +BANAL +BANALITIES +BANALITY +BANALIZE +BANALIZED +BANALIZES +BANALIZING +BANALLY +BANANA +BANANAS +BANAUSIC +BANCO +BANCOS +BAND +BANDA +BANDAGE +BANDAGED +BANDAGER +BANDAGERS +BANDAGES +BANDAGING +BANDAID +BANDANA +BANDANAS +BANDANNA +BANDANNAS +BANDAS +BANDBOX +BANDBOXES +BANDEAU +BANDEAUS +BANDEAUX +BANDED +BANDER +BANDERILLA +BANDERILLAS +BANDERILLERO +BANDERILLEROS +BANDEROL +BANDEROLE +BANDEROLES +BANDEROLS +BANDERS +BANDICOOT +BANDICOOTS +BANDIED +BANDIES +BANDINESS +BANDINESSES +BANDING +BANDIT +BANDITO +BANDITOS +BANDITRIES +BANDITRY +BANDITS +BANDITTI +BANDLEADER +BANDLEADERS +BANDMASTER +BANDMASTERS +BANDMATE +BANDMATES +BANDOG +BANDOGS +BANDOLEER +BANDOLEERS +BANDOLIER +BANDOLIERS +BANDONEON +BANDONEONS +BANDORA +BANDORAS +BANDORE +BANDORES +BANDS +BANDSAW +BANDSAWS +BANDSHELL +BANDSHELLS +BANDSMAN +BANDSMEN +BANDSTAND +BANDSTANDS +BANDWAGON +BANDWAGONS +BANDWIDTH +BANDWIDTHS +BANDY +BANDYING +BANE +BANEBERRIES +BANEBERRY +BANED +BANEFUL +BANEFULLY +BANES +BANG +BANGED +BANGER +BANGERS +BANGING +BANGKOK +BANGKOKS +BANGLE +BANGLES +BANGS +BANGTAIL +BANGTAILS +BANI +BANIAN +BANIANS +BANING +BANISH +BANISHED +BANISHER +BANISHERS +BANISHES +BANISHING +BANISHMENT +BANISHMENTS +BANISTER +BANISTERED +BANISTERS +BANJAX +BANJAXED +BANJAXES +BANJAXING +BANJO +BANJOES +BANJOIST +BANJOISTS +BANJOS +BANK +BANKABILITIES +BANKABILITY +BANKABLE +BANKBOOK +BANKBOOKS +BANKCARD +BANKCARDS +BANKED +BANKER +BANKERLY +BANKERS +BANKING +BANKINGS +BANKIT +BANKITS +BANKNOTE +BANKNOTES +BANKROLL +BANKROLLED +BANKROLLER +BANKROLLERS +BANKROLLING +BANKROLLS +BANKRUPT +BANKRUPTCIES +BANKRUPTCY +BANKRUPTED +BANKRUPTING +BANKRUPTS +BANKS +BANKSIA +BANKSIAS +BANKSIDE +BANKSIDES +BANNABLE +BANNED +BANNER +BANNERED +BANNERET +BANNERETS +BANNERETTE +BANNERETTES +BANNERING +BANNEROL +BANNEROLS +BANNERS +BANNET +BANNETS +BANNING +BANNISTER +BANNISTERS +BANNOCK +BANNOCKS +BANNS +BANQUET +BANQUETED +BANQUETER +BANQUETERS +BANQUETING +BANQUETS +BANQUETTE +BANQUETTES +BANS +BANSHEE +BANSHEES +BANSHIE +BANSHIES +BANTAM +BANTAMS +BANTAMWEIGHT +BANTAMWEIGHTS +BANTENG +BANTENGS +BANTER +BANTERED +BANTERER +BANTERERS +BANTERING +BANTERINGLY +BANTERS +BANTIES +BANTLING +BANTLINGS +BANTY +BANYAN +BANYANS +BANZAI +BANZAIS +BAOBAB +BAOBABS +BAP +BAPS +BAPTISE +BAPTISED +BAPTISES +BAPTISIA +BAPTISIAS +BAPTISING +BAPTISM +BAPTISMAL +BAPTISMALLY +BAPTISMS +BAPTIST +BAPTISTERIES +BAPTISTERY +BAPTISTRIES +BAPTISTRY +BAPTISTS +BAPTIZE +BAPTIZED +BAPTIZER +BAPTIZERS +BAPTIZES +BAPTIZING +BAR +BARATHEA +BARATHEAS +BARB +BARBAL +BARBARIAN +BARBARIANISM +BARBARIANISMS +BARBARIANS +BARBARIC +BARBARICALLY +BARBARISM +BARBARISMS +BARBARITIES +BARBARITY +BARBARIZATION +BARBARIZATIONS +BARBARIZE +BARBARIZED +BARBARIZES +BARBARIZING +BARBAROUS +BARBAROUSLY +BARBAROUSNESS +BARBAROUSNESSES +BARBASCO +BARBASCOES +BARBASCOS +BARBATE +BARBE +BARBECUE +BARBECUED +BARBECUER +BARBECUERS +BARBECUES +BARBECUING +BARBED +BARBEL +BARBELL +BARBELLS +BARBELS +BARBEQUE +BARBEQUED +BARBEQUES +BARBEQUING +BARBER +BARBERED +BARBERING +BARBERRIES +BARBERRY +BARBERS +BARBERSHOP +BARBERSHOPS +BARBES +BARBET +BARBETS +BARBETTE +BARBETTES +BARBICAN +BARBICANS +BARBICEL +BARBICELS +BARBIE +BARBIES +BARBING +BARBITAL +BARBITALS +BARBITONE +BARBITONES +BARBITURATE +BARBITURATES +BARBLESS +BARBS +BARBULE +BARBULES +BARBUT +BARBUTS +BARBWIRE +BARBWIRES +BARCA +BARCAROLE +BARCAROLES +BARCAROLLE +BARCAROLLES +BARCAS +BARCHAN +BARCHANS +BARD +BARDE +BARDED +BARDES +BARDIC +BARDING +BARDOLATER +BARDOLATERS +BARDOLATRIES +BARDOLATRY +BARDS +BARE +BAREBACK +BAREBACKED +BAREBOAT +BAREBOATS +BAREBONED +BARED +BAREFACED +BAREFACEDLY +BAREFACEDNESS +BAREFACEDNESSES +BAREFIT +BAREFOOT +BAREFOOTED +BAREGE +BAREGES +BAREHAND +BAREHANDED +BAREHANDING +BAREHANDS +BAREHEAD +BAREHEADED +BARELY +BARENESS +BARENESSES +BARER +BARES +BARESARK +BARESARKS +BAREST +BARF +BARFED +BARFING +BARFLIES +BARFLY +BARFS +BARGAIN +BARGAINED +BARGAINER +BARGAINERS +BARGAINING +BARGAINS +BARGE +BARGEBOARD +BARGEBOARDS +BARGED +BARGEE +BARGEES +BARGELLO +BARGELLOS +BARGEMAN +BARGEMEN +BARGES +BARGHEST +BARGHESTS +BARGING +BARGUEST +BARGUESTS +BARHOP +BARHOPPED +BARHOPPING +BARHOPS +BARIATRIC +BARIC +BARILLA +BARILLAS +BARING +BARISTA +BARISTAS +BARITE +BARITES +BARITONAL +BARITONE +BARITONES +BARIUM +BARIUMS +BARK +BARKED +BARKEEP +BARKEEPER +BARKEEPERS +BARKEEPS +BARKENTINE +BARKENTINES +BARKER +BARKERS +BARKIER +BARKIEST +BARKING +BARKLESS +BARKS +BARKY +BARLEDUC +BARLEDUCS +BARLESS +BARLEY +BARLEYCORN +BARLEYCORNS +BARLEYS +BARLOW +BARLOWS +BARM +BARMAID +BARMAIDS +BARMAN +BARMEN +BARMIE +BARMIER +BARMIEST +BARMS +BARMY +BARN +BARNACLE +BARNACLED +BARNACLES +BARNED +BARNEY +BARNEYS +BARNIER +BARNIEST +BARNING +BARNLIKE +BARNS +BARNSTORM +BARNSTORMED +BARNSTORMER +BARNSTORMERS +BARNSTORMING +BARNSTORMS +BARNY +BARNYARD +BARNYARDS +BAROCEPTOR +BAROCEPTORS +BAROGRAM +BAROGRAMS +BAROGRAPH +BAROGRAPHIC +BAROGRAPHS +BAROMETER +BAROMETERS +BAROMETRIC +BAROMETRICALLY +BAROMETRIES +BAROMETRY +BARON +BARONAGE +BARONAGES +BARONESS +BARONESSES +BARONET +BARONETAGE +BARONETAGES +BARONETCIES +BARONETCY +BARONETS +BARONG +BARONGS +BARONIAL +BARONIES +BARONNE +BARONNES +BARONS +BARONY +BAROQUE +BAROQUELY +BAROQUES +BARORECEPTOR +BARORECEPTORS +BAROSAUR +BAROSAURS +BAROSCOPE +BAROSCOPES +BAROUCHE +BAROUCHES +BARQUE +BARQUENTINE +BARQUENTINES +BARQUES +BARQUETTE +BARQUETTES +BARRABLE +BARRACK +BARRACKED +BARRACKER +BARRACKERS +BARRACKING +BARRACKS +BARRACOON +BARRACOONS +BARRACOUTA +BARRACOUTAS +BARRACUDA +BARRACUDAS +BARRAGE +BARRAGED +BARRAGES +BARRAGING +BARRAMUNDA +BARRAMUNDAS +BARRAMUNDI +BARRAMUNDIS +BARRANCA +BARRANCAS +BARRANCO +BARRANCOS +BARRATER +BARRATERS +BARRATOR +BARRATORS +BARRATRIES +BARRATRY +BARRE +BARRED +BARREL +BARRELAGE +BARRELAGES +BARRELED +BARRELFUL +BARRELFULS +BARRELHEAD +BARRELHEADS +BARRELHOUSE +BARRELHOUSES +BARRELING +BARRELLED +BARRELLING +BARRELS +BARRELSFUL +BARREN +BARRENER +BARRENEST +BARRENLY +BARRENNESS +BARRENNESSES +BARRENS +BARRES +BARRET +BARRETOR +BARRETORS +BARRETRIES +BARRETRY +BARRETS +BARRETTE +BARRETTES +BARRICADE +BARRICADED +BARRICADES +BARRICADING +BARRICADO +BARRICADOED +BARRICADOES +BARRICADOING +BARRICADOS +BARRIER +BARRIERS +BARRING +BARRIO +BARRIOS +BARRISTER +BARRISTERS +BARROOM +BARROOMS +BARROW +BARROWS +BARS +BARSTOOL +BARSTOOLS +BARTEND +BARTENDED +BARTENDER +BARTENDERS +BARTENDING +BARTENDS +BARTER +BARTERED +BARTERER +BARTERERS +BARTERING +BARTERS +BARTISAN +BARTISANS +BARTIZAN +BARTIZANS +BARWARE +BARWARES +BARYE +BARYES +BARYON +BARYONIC +BARYONS +BARYTA +BARYTAS +BARYTE +BARYTES +BARYTIC +BARYTON +BARYTONE +BARYTONES +BARYTONS +BAS +BASAL +BASALLY +BASALT +BASALTES +BASALTIC +BASALTINE +BASALTS +BASCULE +BASCULES +BASE +BASEBALL +BASEBALLS +BASEBOARD +BASEBOARDS +BASEBORN +BASED +BASELESS +BASELINE +BASELINER +BASELINERS +BASELINES +BASELY +BASEMAN +BASEMEN +BASEMENT +BASEMENTLESS +BASEMENTS +BASENESS +BASENESSES +BASENJI +BASENJIS +BASEPLATE +BASEPLATES +BASER +BASERUNNING +BASERUNNINGS +BASES +BASEST +BASH +BASHAW +BASHAWS +BASHED +BASHER +BASHERS +BASHES +BASHFUL +BASHFULLY +BASHFULNESS +BASHFULNESSES +BASHING +BASHINGS +BASHLYK +BASHLYKS +BASIC +BASICALLY +BASICITIES +BASICITY +BASICS +BASIDIA +BASIDIAL +BASIDIOMYCETE +BASIDIOMYCETES +BASIDIOMYCETOUS +BASIDIOSPORE +BASIDIOSPORES +BASIDIUM +BASIFICATION +BASIFICATIONS +BASIFIED +BASIFIER +BASIFIERS +BASIFIES +BASIFIXED +BASIFY +BASIFYING +BASIL +BASILAR +BASILARY +BASILECT +BASILECTS +BASILIC +BASILICA +BASILICAE +BASILICAL +BASILICAN +BASILICAS +BASILISK +BASILISKS +BASILS +BASIN +BASINAL +BASINED +BASINET +BASINETS +BASINFUL +BASINFULS +BASING +BASINLIKE +BASINS +BASION +BASIONS +BASIPETAL +BASIPETALLY +BASIS +BASK +BASKED +BASKET +BASKETBALL +BASKETBALLS +BASKETFUL +BASKETFULS +BASKETLIKE +BASKETRIES +BASKETRY +BASKETS +BASKETSFUL +BASKETWORK +BASKETWORKS +BASKING +BASKS +BASMATI +BASMATIS +BASOPHIL +BASOPHILE +BASOPHILES +BASOPHILIA +BASOPHILIAS +BASOPHILIC +BASOPHILS +BASQUE +BASQUES +BASS +BASSES +BASSET +BASSETED +BASSETING +BASSETS +BASSETT +BASSETTED +BASSETTING +BASSETTS +BASSI +BASSINET +BASSINETS +BASSIST +BASSISTS +BASSLY +BASSNESS +BASSNESSES +BASSO +BASSOON +BASSOONIST +BASSOONISTS +BASSOONS +BASSOS +BASSWOOD +BASSWOODS +BASSY +BAST +BASTARD +BASTARDIES +BASTARDISE +BASTARDISED +BASTARDISES +BASTARDISING +BASTARDIZATION +BASTARDIZATIONS +BASTARDIZE +BASTARDIZED +BASTARDIZES +BASTARDIZING +BASTARDLY +BASTARDS +BASTARDY +BASTE +BASTED +BASTER +BASTERS +BASTES +BASTILE +BASTILES +BASTILLE +BASTILLES +BASTINADE +BASTINADED +BASTINADES +BASTINADING +BASTINADO +BASTINADOED +BASTINADOES +BASTINADOING +BASTING +BASTINGS +BASTION +BASTIONED +BASTIONS +BASTS +BAT +BATBOY +BATBOYS +BATCH +BATCHED +BATCHER +BATCHERS +BATCHES +BATCHING +BATE +BATEAU +BATEAUX +BATED +BATES +BATFISH +BATFISHES +BATFOWL +BATFOWLED +BATFOWLER +BATFOWLERS +BATFOWLING +BATFOWLS +BATGIRL +BATGIRLS +BATH +BATHE +BATHED +BATHER +BATHERS +BATHES +BATHETIC +BATHETICALLY +BATHHOUSE +BATHHOUSES +BATHING +BATHLESS +BATHMAT +BATHMATS +BATHOLITH +BATHOLITHIC +BATHOLITHS +BATHOS +BATHOSES +BATHROBE +BATHROBES +BATHROOM +BATHROOMS +BATHS +BATHTUB +BATHTUBS +BATHWATER +BATHWATERS +BATHYAL +BATHYMETRIC +BATHYMETRICAL +BATHYMETRICALLY +BATHYMETRIES +BATHYMETRY +BATHYPELAGIC +BATHYSCAPH +BATHYSCAPHE +BATHYSCAPHES +BATHYSCAPHS +BATHYSPHERE +BATHYSPHERES +BATIK +BATIKED +BATIKING +BATIKS +BATING +BATISTE +BATISTES +BATLIKE +BATMAN +BATMEN +BATON +BATONS +BATRACHIAN +BATRACHIANS +BATS +BATSMAN +BATSMEN +BATT +BATTAILOUS +BATTALIA +BATTALIAS +BATTALION +BATTALIONS +BATTEAU +BATTEAUX +BATTED +BATTEMENT +BATTEMENTS +BATTEN +BATTENED +BATTENER +BATTENERS +BATTENING +BATTENS +BATTER +BATTERED +BATTERER +BATTERERS +BATTERIE +BATTERIES +BATTERING +BATTERS +BATTERY +BATTIER +BATTIEST +BATTIK +BATTIKS +BATTINESS +BATTINESSES +BATTING +BATTINGS +BATTLE +BATTLED +BATTLEFIELD +BATTLEFIELDS +BATTLEFRONT +BATTLEFRONTS +BATTLEGROUND +BATTLEGROUNDS +BATTLEMENT +BATTLEMENTED +BATTLEMENTS +BATTLER +BATTLERS +BATTLES +BATTLESHIP +BATTLESHIPS +BATTLEWAGON +BATTLEWAGONS +BATTLING +BATTS +BATTU +BATTUE +BATTUES +BATTY +BATWING +BAUBEE +BAUBEES +BAUBLE +BAUBLES +BAUD +BAUDEKIN +BAUDEKINS +BAUDRONS +BAUDRONSES +BAUDS +BAUHINIA +BAUHINIAS +BAULK +BAULKED +BAULKIER +BAULKIEST +BAULKING +BAULKS +BAULKY +BAUSOND +BAUXITE +BAUXITES +BAUXITIC +BAWBEE +BAWBEES +BAWCOCK +BAWCOCKS +BAWD +BAWDIER +BAWDIES +BAWDIEST +BAWDILY +BAWDINESS +BAWDINESSES +BAWDRIC +BAWDRICS +BAWDRIES +BAWDRY +BAWDS +BAWDY +BAWL +BAWLED +BAWLER +BAWLERS +BAWLING +BAWLS +BAWSUNT +BAWTIE +BAWTIES +BAWTY +BAY +BAYADEER +BAYADEERS +BAYADERE +BAYADERES +BAYAMO +BAYAMOS +BAYARD +BAYARDS +BAYBERRIES +BAYBERRY +BAYED +BAYING +BAYMAN +BAYMEN +BAYONET +BAYONETED +BAYONETING +BAYONETS +BAYONETTED +BAYONETTING +BAYOU +BAYOUS +BAYS +BAYWOOD +BAYWOODS +BAZAAR +BAZAARS +BAZAR +BAZARS +BAZILLION +BAZILLIONS +BAZOO +BAZOOKA +BAZOOKAS +BAZOOMS +BAZOOS +BDELLIUM +BDELLIUMS +BE +BEACH +BEACHBALL +BEACHBALLS +BEACHBOY +BEACHBOYS +BEACHCOMB +BEACHCOMBED +BEACHCOMBER +BEACHCOMBERS +BEACHCOMBING +BEACHCOMBS +BEACHED +BEACHES +BEACHFRONT +BEACHFRONTS +BEACHGOER +BEACHGOERS +BEACHHEAD +BEACHHEADS +BEACHIER +BEACHIEST +BEACHING +BEACHSIDE +BEACHWEAR +BEACHY +BEACON +BEACONED +BEACONING +BEACONS +BEAD +BEADED +BEADER +BEADERS +BEADHOUSE +BEADHOUSES +BEADIER +BEADIEST +BEADILY +BEADINESS +BEADINESSES +BEADING +BEADINGS +BEADLE +BEADLEDOM +BEADLEDOMS +BEADLES +BEADLIKE +BEADMAN +BEADMEN +BEADROLL +BEADROLLS +BEADS +BEADSMAN +BEADSMEN +BEADWORK +BEADWORKS +BEADY +BEAGLE +BEAGLES +BEAK +BEAKED +BEAKER +BEAKERS +BEAKIER +BEAKIEST +BEAKLESS +BEAKLIKE +BEAKS +BEAKY +BEAM +BEAMED +BEAMIER +BEAMIEST +BEAMILY +BEAMING +BEAMINGLY +BEAMISH +BEAMISHLY +BEAMLESS +BEAMLIKE +BEAMS +BEAMY +BEAN +BEANBAG +BEANBAGS +BEANBALL +BEANBALLS +BEANED +BEANERIES +BEANERY +BEANIE +BEANIES +BEANING +BEANLIKE +BEANO +BEANOS +BEANPOLE +BEANPOLES +BEANS +BEANSTALK +BEANSTALKS +BEAR +BEARABILITIES +BEARABILITY +BEARABLE +BEARABLY +BEARBAITING +BEARBAITINGS +BEARBERRIES +BEARBERRY +BEARCAT +BEARCATS +BEARD +BEARDED +BEARDEDNESS +BEARDEDNESSES +BEARDING +BEARDLESS +BEARDS +BEARDTONGUE +BEARDTONGUES +BEARER +BEARERS +BEARGRASS +BEARGRASSES +BEARHUG +BEARHUGS +BEARING +BEARINGS +BEARISH +BEARISHLY +BEARISHNESS +BEARISHNESSES +BEARLIKE +BEARS +BEARSKIN +BEARSKINS +BEARWOOD +BEARWOODS +BEAST +BEASTIE +BEASTIES +BEASTINGS +BEASTLIER +BEASTLIEST +BEASTLINESS +BEASTLINESSES +BEASTLY +BEASTS +BEAT +BEATABLE +BEATEN +BEATER +BEATERS +BEATIFIC +BEATIFICALLY +BEATIFICATION +BEATIFICATIONS +BEATIFIED +BEATIFIES +BEATIFY +BEATIFYING +BEATING +BEATINGS +BEATITUDE +BEATITUDES +BEATLESS +BEATNIK +BEATNIKS +BEATS +BEAU +BEAUCOUP +BEAUCOUPS +BEAUISH +BEAUS +BEAUT +BEAUTEOUS +BEAUTEOUSLY +BEAUTEOUSNESS +BEAUTEOUSNESSES +BEAUTICIAN +BEAUTICIANS +BEAUTIES +BEAUTIFICATION +BEAUTIFICATIONS +BEAUTIFIED +BEAUTIFIER +BEAUTIFIERS +BEAUTIFIES +BEAUTIFUL +BEAUTIFULLER +BEAUTIFULLEST +BEAUTIFULLY +BEAUTIFULNESS +BEAUTIFULNESSES +BEAUTIFY +BEAUTIFYING +BEAUTS +BEAUTY +BEAUX +BEAVER +BEAVERBOARD +BEAVERBOARDS +BEAVERED +BEAVERING +BEAVERS +BEBEERINE +BEBEERINES +BEBEERU +BEBEERUS +BEBLOOD +BEBLOODED +BEBLOODING +BEBLOODS +BEBOP +BEBOPPER +BEBOPPERS +BEBOPS +BECALM +BECALMED +BECALMING +BECALMS +BECAME +BECAP +BECAPPED +BECAPPING +BECAPS +BECARPET +BECARPETED +BECARPETING +BECARPETS +BECAUSE +BECCAFICO +BECCAFICOS +BECHALK +BECHALKED +BECHALKING +BECHALKS +BECHAMEL +BECHAMELS +BECHANCE +BECHANCED +BECHANCES +BECHANCING +BECHARM +BECHARMED +BECHARMING +BECHARMS +BECK +BECKED +BECKET +BECKETS +BECKING +BECKON +BECKONED +BECKONER +BECKONERS +BECKONING +BECKONS +BECKS +BECLAMOR +BECLAMORED +BECLAMORING +BECLAMORS +BECLASP +BECLASPED +BECLASPING +BECLASPS +BECLOAK +BECLOAKED +BECLOAKING +BECLOAKS +BECLOG +BECLOGGED +BECLOGGING +BECLOGS +BECLOTHE +BECLOTHED +BECLOTHES +BECLOTHING +BECLOUD +BECLOUDED +BECLOUDING +BECLOUDS +BECLOWN +BECLOWNED +BECLOWNING +BECLOWNS +BECOME +BECOMES +BECOMING +BECOMINGLY +BECOMINGS +BECOWARD +BECOWARDED +BECOWARDING +BECOWARDS +BECQUEREL +BECQUERELS +BECRAWL +BECRAWLED +BECRAWLING +BECRAWLS +BECRIME +BECRIMED +BECRIMES +BECRIMING +BECROWD +BECROWDED +BECROWDING +BECROWDS +BECRUST +BECRUSTED +BECRUSTING +BECRUSTS +BECUDGEL +BECUDGELED +BECUDGELING +BECUDGELLED +BECUDGELLING +BECUDGELS +BECURSE +BECURSED +BECURSES +BECURSING +BECURST +BED +BEDABBLE +BEDABBLED +BEDABBLES +BEDABBLING +BEDAMN +BEDAMNED +BEDAMNING +BEDAMNS +BEDARKEN +BEDARKENED +BEDARKENING +BEDARKENS +BEDAUB +BEDAUBED +BEDAUBING +BEDAUBS +BEDAZZLE +BEDAZZLED +BEDAZZLEMENT +BEDAZZLEMENTS +BEDAZZLES +BEDAZZLING +BEDBOARD +BEDBOARDS +BEDBUG +BEDBUGS +BEDCHAIR +BEDCHAIRS +BEDCHAMBER +BEDCHAMBERS +BEDCLOTHES +BEDCOVER +BEDCOVERING +BEDCOVERINGS +BEDCOVERS +BEDDABLE +BEDDED +BEDDER +BEDDERS +BEDDING +BEDDINGS +BEDEAFEN +BEDEAFENED +BEDEAFENING +BEDEAFENS +BEDECK +BEDECKED +BEDECKING +BEDECKS +BEDEHOUSE +BEDEHOUSES +BEDEL +BEDELL +BEDELLS +BEDELS +BEDEMAN +BEDEMEN +BEDESMAN +BEDESMEN +BEDEVIL +BEDEVILED +BEDEVILING +BEDEVILLED +BEDEVILLING +BEDEVILMENT +BEDEVILMENTS +BEDEVILS +BEDEW +BEDEWED +BEDEWING +BEDEWS +BEDFAST +BEDFELLOW +BEDFELLOWS +BEDFRAME +BEDFRAMES +BEDGOWN +BEDGOWNS +BEDIAPER +BEDIAPERED +BEDIAPERING +BEDIAPERS +BEDIGHT +BEDIGHTED +BEDIGHTING +BEDIGHTS +BEDIM +BEDIMMED +BEDIMMING +BEDIMPLE +BEDIMPLED +BEDIMPLES +BEDIMPLING +BEDIMS +BEDIRTIED +BEDIRTIES +BEDIRTY +BEDIRTYING +BEDIZEN +BEDIZENED +BEDIZENING +BEDIZENMENT +BEDIZENMENTS +BEDIZENS +BEDLAM +BEDLAMITE +BEDLAMITES +BEDLAMP +BEDLAMPS +BEDLAMS +BEDLESS +BEDLIKE +BEDMAKER +BEDMAKERS +BEDMATE +BEDMATES +BEDOTTED +BEDOUIN +BEDOUINS +BEDPAN +BEDPANS +BEDPLATE +BEDPLATES +BEDPOST +BEDPOSTS +BEDQUILT +BEDQUILTS +BEDRAGGLE +BEDRAGGLED +BEDRAGGLES +BEDRAGGLING +BEDRAIL +BEDRAILS +BEDRAPE +BEDRAPED +BEDRAPES +BEDRAPING +BEDRENCH +BEDRENCHED +BEDRENCHES +BEDRENCHING +BEDRID +BEDRIDDEN +BEDRIVEL +BEDRIVELED +BEDRIVELING +BEDRIVELLED +BEDRIVELLING +BEDRIVELS +BEDROCK +BEDROCKS +BEDROLL +BEDROLLS +BEDROOM +BEDROOMED +BEDROOMS +BEDRUG +BEDRUGGED +BEDRUGGING +BEDRUGS +BEDS +BEDSHEET +BEDSHEETS +BEDSIDE +BEDSIDES +BEDSIT +BEDSITS +BEDSONIA +BEDSONIAS +BEDSORE +BEDSORES +BEDSPREAD +BEDSPREADS +BEDSPRING +BEDSPRINGS +BEDSTAND +BEDSTANDS +BEDSTEAD +BEDSTEADS +BEDSTRAW +BEDSTRAWS +BEDTICK +BEDTICKS +BEDTIME +BEDTIMES +BEDU +BEDUIN +BEDUINS +BEDUMB +BEDUMBED +BEDUMBING +BEDUMBS +BEDUNCE +BEDUNCED +BEDUNCES +BEDUNCING +BEDWARD +BEDWARDS +BEDWARF +BEDWARFED +BEDWARFING +BEDWARFS +BEDWARMER +BEDWARMERS +BEDWETTER +BEDWETTERS +BEE +BEEBEE +BEEBEES +BEEBREAD +BEEBREADS +BEECH +BEECHDROPS +BEECHEN +BEECHES +BEECHIER +BEECHIEST +BEECHMAST +BEECHMASTS +BEECHNUT +BEECHNUTS +BEECHWOOD +BEECHWOODS +BEECHY +BEEDI +BEEDIES +BEEF +BEEFALO +BEEFALOES +BEEFALOS +BEEFCAKE +BEEFCAKES +BEEFEATER +BEEFEATERS +BEEFED +BEEFIER +BEEFIEST +BEEFILY +BEEFINESS +BEEFINESSES +BEEFING +BEEFLESS +BEEFS +BEEFSTEAK +BEEFSTEAKS +BEEFWOOD +BEEFWOODS +BEEFY +BEEHIVE +BEEHIVES +BEEKEEPER +BEEKEEPERS +BEEKEEPING +BEEKEEPINGS +BEELIKE +BEELINE +BEELINED +BEELINES +BEELINING +BEEN +BEEP +BEEPED +BEEPER +BEEPERS +BEEPING +BEEPS +BEER +BEERIER +BEERIEST +BEERINESS +BEERINESSES +BEERS +BEERY +BEES +BEESTINGS +BEESWAX +BEESWAXES +BEESWING +BEESWINGS +BEET +BEETLE +BEETLED +BEETLER +BEETLERS +BEETLES +BEETLING +BEETROOT +BEETROOTS +BEETS +BEEVES +BEEYARD +BEEYARDS +BEEZER +BEEZERS +BEFALL +BEFALLEN +BEFALLING +BEFALLS +BEFELL +BEFINGER +BEFINGERED +BEFINGERING +BEFINGERS +BEFIT +BEFITS +BEFITTED +BEFITTING +BEFITTINGLY +BEFLAG +BEFLAGGED +BEFLAGGING +BEFLAGS +BEFLEA +BEFLEAED +BEFLEAING +BEFLEAS +BEFLECK +BEFLECKED +BEFLECKING +BEFLECKS +BEFLOWER +BEFLOWERED +BEFLOWERING +BEFLOWERS +BEFOG +BEFOGGED +BEFOGGING +BEFOGS +BEFOOL +BEFOOLED +BEFOOLING +BEFOOLS +BEFORE +BEFOREHAND +BEFORETIME +BEFOUL +BEFOULED +BEFOULER +BEFOULERS +BEFOULING +BEFOULS +BEFRET +BEFRETS +BEFRETTED +BEFRETTING +BEFRIEND +BEFRIENDED +BEFRIENDING +BEFRIENDS +BEFRINGE +BEFRINGED +BEFRINGES +BEFRINGING +BEFUDDLE +BEFUDDLED +BEFUDDLEMENT +BEFUDDLEMENTS +BEFUDDLES +BEFUDDLING +BEG +BEGALL +BEGALLED +BEGALLING +BEGALLS +BEGAN +BEGAT +BEGAZE +BEGAZED +BEGAZES +BEGAZING +BEGET +BEGETS +BEGETTER +BEGETTERS +BEGETTING +BEGGAR +BEGGARDOM +BEGGARDOMS +BEGGARED +BEGGARIES +BEGGARING +BEGGARLINESS +BEGGARLINESSES +BEGGARLY +BEGGARS +BEGGARWEED +BEGGARWEEDS +BEGGARY +BEGGED +BEGGING +BEGIN +BEGINNER +BEGINNERS +BEGINNING +BEGINNINGS +BEGINS +BEGIRD +BEGIRDED +BEGIRDING +BEGIRDLE +BEGIRDLED +BEGIRDLES +BEGIRDLING +BEGIRDS +BEGIRT +BEGLAD +BEGLADDED +BEGLADDING +BEGLADS +BEGLAMOR +BEGLAMORED +BEGLAMORING +BEGLAMORS +BEGLAMOUR +BEGLAMOURED +BEGLAMOURING +BEGLAMOURS +BEGLOOM +BEGLOOMED +BEGLOOMING +BEGLOOMS +BEGOGGLED +BEGONE +BEGONIA +BEGONIAS +BEGORAH +BEGORRA +BEGORRAH +BEGOT +BEGOTTEN +BEGRIM +BEGRIME +BEGRIMED +BEGRIMES +BEGRIMING +BEGRIMMED +BEGRIMMING +BEGRIMS +BEGROAN +BEGROANED +BEGROANING +BEGROANS +BEGRUDGE +BEGRUDGED +BEGRUDGER +BEGRUDGERS +BEGRUDGES +BEGRUDGING +BEGRUDGINGLY +BEGS +BEGUILE +BEGUILED +BEGUILEMENT +BEGUILEMENTS +BEGUILER +BEGUILERS +BEGUILES +BEGUILING +BEGUILINGLY +BEGUINE +BEGUINES +BEGULF +BEGULFED +BEGULFING +BEGULFS +BEGUM +BEGUMS +BEGUN +BEHALF +BEHALVES +BEHAVE +BEHAVED +BEHAVER +BEHAVERS +BEHAVES +BEHAVING +BEHAVIOR +BEHAVIORAL +BEHAVIORALLY +BEHAVIORISM +BEHAVIORISMS +BEHAVIORIST +BEHAVIORISTIC +BEHAVIORISTS +BEHAVIORS +BEHAVIOUR +BEHAVIOURS +BEHEAD +BEHEADAL +BEHEADALS +BEHEADED +BEHEADER +BEHEADERS +BEHEADING +BEHEADS +BEHELD +BEHEMOTH +BEHEMOTHS +BEHEST +BEHESTS +BEHIND +BEHINDHAND +BEHINDS +BEHOLD +BEHOLDEN +BEHOLDER +BEHOLDERS +BEHOLDING +BEHOLDS +BEHOOF +BEHOOVE +BEHOOVED +BEHOOVES +BEHOOVING +BEHOVE +BEHOVED +BEHOVES +BEHOVING +BEHOWL +BEHOWLED +BEHOWLING +BEHOWLS +BEIGE +BEIGES +BEIGNE +BEIGNES +BEIGNET +BEIGNETS +BEIGY +BEING +BEINGS +BEJABBERS +BEJABERS +BEJEEBERS +BEJEEZUS +BEJESUS +BEJEWEL +BEJEWELED +BEJEWELING +BEJEWELLED +BEJEWELLING +BEJEWELS +BEJUMBLE +BEJUMBLED +BEJUMBLES +BEJUMBLING +BEKISS +BEKISSED +BEKISSES +BEKISSING +BEKNIGHT +BEKNIGHTED +BEKNIGHTING +BEKNIGHTS +BEKNOT +BEKNOTS +BEKNOTTED +BEKNOTTING +BEL +BELABOR +BELABORED +BELABORING +BELABORS +BELABOUR +BELABOURED +BELABOURING +BELABOURS +BELACED +BELADIED +BELADIES +BELADY +BELADYING +BELATED +BELATEDLY +BELATEDNESS +BELATEDNESSES +BELAUD +BELAUDED +BELAUDING +BELAUDS +BELAY +BELAYED +BELAYER +BELAYERS +BELAYING +BELAYS +BELCH +BELCHED +BELCHER +BELCHERS +BELCHES +BELCHING +BELDAM +BELDAME +BELDAMES +BELDAMS +BELEAGUER +BELEAGUERED +BELEAGUERING +BELEAGUERMENT +BELEAGUERMENTS +BELEAGUERS +BELEAP +BELEAPED +BELEAPING +BELEAPS +BELEAPT +BELEMNITE +BELEMNITES +BELFRIED +BELFRIES +BELFRY +BELGA +BELGAS +BELIE +BELIED +BELIEF +BELIEFS +BELIER +BELIERS +BELIES +BELIEVABILITIES +BELIEVABILITY +BELIEVABLE +BELIEVABLY +BELIEVE +BELIEVED +BELIEVER +BELIEVERS +BELIEVES +BELIEVING +BELIKE +BELIQUOR +BELIQUORED +BELIQUORING +BELIQUORS +BELITTLE +BELITTLED +BELITTLEMENT +BELITTLEMENTS +BELITTLER +BELITTLERS +BELITTLES +BELITTLING +BELIVE +BELL +BELLADONNA +BELLADONNAS +BELLBIRD +BELLBIRDS +BELLBOY +BELLBOYS +BELLE +BELLED +BELLEEK +BELLEEKS +BELLES +BELLETRIST +BELLETRISTIC +BELLETRISTS +BELLFLOWER +BELLFLOWERS +BELLHOP +BELLHOPS +BELLICOSE +BELLICOSITIES +BELLICOSITY +BELLIED +BELLIES +BELLIGERENCE +BELLIGERENCES +BELLIGERENCIES +BELLIGERENCY +BELLIGERENT +BELLIGERENTLY +BELLIGERENTS +BELLING +BELLINGS +BELLMAN +BELLMEN +BELLOW +BELLOWED +BELLOWER +BELLOWERS +BELLOWING +BELLOWS +BELLPULL +BELLPULLS +BELLS +BELLWETHER +BELLWETHERS +BELLWORT +BELLWORTS +BELLY +BELLYACHE +BELLYACHED +BELLYACHER +BELLYACHERS +BELLYACHES +BELLYACHING +BELLYBAND +BELLYBANDS +BELLYFUL +BELLYFULS +BELLYING +BELLYLIKE +BELON +BELONG +BELONGED +BELONGING +BELONGINGNESS +BELONGINGNESSES +BELONGINGS +BELONGS +BELONS +BELOVED +BELOVEDS +BELOW +BELOWDECKS +BELOWGROUND +BELOWS +BELS +BELT +BELTED +BELTER +BELTERS +BELTING +BELTINGS +BELTLESS +BELTLINE +BELTLINES +BELTS +BELTWAY +BELTWAYS +BELUGA +BELUGAS +BELVEDERE +BELVEDERES +BELYING +BEMA +BEMADAM +BEMADAMED +BEMADAMING +BEMADAMS +BEMADDEN +BEMADDENED +BEMADDENING +BEMADDENS +BEMAS +BEMATA +BEMEAN +BEMEANED +BEMEANING +BEMEANS +BEMEDALED +BEMEDALLED +BEMINGLE +BEMINGLED +BEMINGLES +BEMINGLING +BEMIRE +BEMIRED +BEMIRES +BEMIRING +BEMIST +BEMISTED +BEMISTING +BEMISTS +BEMIX +BEMIXED +BEMIXES +BEMIXING +BEMIXT +BEMOAN +BEMOANED +BEMOANING +BEMOANS +BEMOCK +BEMOCKED +BEMOCKING +BEMOCKS +BEMUDDLE +BEMUDDLED +BEMUDDLES +BEMUDDLING +BEMURMUR +BEMURMURED +BEMURMURING +BEMURMURS +BEMUSE +BEMUSED +BEMUSEDLY +BEMUSEMENT +BEMUSEMENTS +BEMUSES +BEMUSING +BEMUZZLE +BEMUZZLED +BEMUZZLES +BEMUZZLING +BEN +BENADRYL +BENADRYLS +BENAME +BENAMED +BENAMES +BENAMING +BENCH +BENCHED +BENCHER +BENCHERS +BENCHES +BENCHING +BENCHLAND +BENCHLANDS +BENCHLESS +BENCHMARK +BENCHMARKED +BENCHMARKING +BENCHMARKINGS +BENCHMARKS +BENCHTOP +BENCHWARMER +BENCHWARMERS +BEND +BENDABLE +BENDAY +BENDAYED +BENDAYING +BENDAYS +BENDED +BENDEE +BENDEES +BENDER +BENDERS +BENDIER +BENDIEST +BENDING +BENDS +BENDWAYS +BENDWISE +BENDY +BENDYS +BENE +BENEATH +BENEDICK +BENEDICKS +BENEDICT +BENEDICTION +BENEDICTIONS +BENEDICTORY +BENEDICTS +BENEFACTION +BENEFACTIONS +BENEFACTOR +BENEFACTORS +BENEFACTRESS +BENEFACTRESSES +BENEFIC +BENEFICE +BENEFICED +BENEFICENCE +BENEFICENCES +BENEFICENT +BENEFICENTLY +BENEFICES +BENEFICIAL +BENEFICIALLY +BENEFICIALNESS +BENEFICIARIES +BENEFICIARY +BENEFICIATE +BENEFICIATED +BENEFICIATES +BENEFICIATING +BENEFICIATION +BENEFICIATIONS +BENEFICING +BENEFIT +BENEFITED +BENEFITER +BENEFITERS +BENEFITING +BENEFITS +BENEFITTED +BENEFITTING +BENEMPT +BENEMPTED +BENES +BENEVOLENCE +BENEVOLENCES +BENEVOLENT +BENEVOLENTLY +BENEVOLENTNESS +BENGALINE +BENGALINES +BENIGHTED +BENIGHTEDLY +BENIGHTEDNESS +BENIGHTEDNESSES +BENIGN +BENIGNANCIES +BENIGNANCY +BENIGNANT +BENIGNANTLY +BENIGNITIES +BENIGNITY +BENIGNLY +BENISON +BENISONS +BENJAMIN +BENJAMINS +BENNE +BENNES +BENNET +BENNETS +BENNI +BENNIES +BENNIS +BENNY +BENOMYL +BENOMYLS +BENS +BENT +BENTGRASS +BENTGRASSES +BENTHAL +BENTHIC +BENTHON +BENTHONIC +BENTHONS +BENTHOS +BENTHOSES +BENTO +BENTONITE +BENTONITES +BENTONITIC +BENTOS +BENTS +BENTWOOD +BENTWOODS +BENUMB +BENUMBED +BENUMBING +BENUMBS +BENZAL +BENZALDEHYDE +BENZALDEHYDES +BENZANTHRACENE +BENZANTHRACENES +BENZENE +BENZENES +BENZENOID +BENZENOIDS +BENZIDIN +BENZIDINE +BENZIDINES +BENZIDINS +BENZIMIDAZOLE +BENZIMIDAZOLES +BENZIN +BENZINE +BENZINES +BENZINS +BENZOAPYRENE +BENZOAPYRENES +BENZOATE +BENZOATES +BENZOCAINE +BENZOCAINES +BENZODIAZEPINE +BENZODIAZEPINES +BENZOFURAN +BENZOFURANS +BENZOIC +BENZOIN +BENZOINS +BENZOL +BENZOLE +BENZOLES +BENZOLS +BENZOPHENONE +BENZOPHENONES +BENZOYL +BENZOYLS +BENZYL +BENZYLIC +BENZYLS +BEPAINT +BEPAINTED +BEPAINTING +BEPAINTS +BEPIMPLE +BEPIMPLED +BEPIMPLES +BEPIMPLING +BEQUEATH +BEQUEATHAL +BEQUEATHALS +BEQUEATHED +BEQUEATHING +BEQUEATHS +BEQUEST +BEQUESTS +BERAKE +BERAKED +BERAKES +BERAKING +BERASCAL +BERASCALED +BERASCALING +BERASCALS +BERATE +BERATED +BERATES +BERATING +BERBERIN +BERBERINE +BERBERINES +BERBERINS +BERBERIS +BERBERISES +BERCEUSE +BERCEUSES +BERDACHE +BERDACHES +BEREAVE +BEREAVED +BEREAVEMENT +BEREAVEMENTS +BEREAVER +BEREAVERS +BEREAVES +BEREAVING +BEREFT +BERET +BERETS +BERETTA +BERETTAS +BERG +BERGAMOT +BERGAMOTS +BERGERE +BERGERES +BERGS +BERHYME +BERHYMED +BERHYMES +BERHYMING +BERIBBONED +BERIBERI +BERIBERIS +BERIMBAU +BERIMBAUS +BERIME +BERIMED +BERIMES +BERIMING +BERINGED +BERK +BERKELIUM +BERKELIUMS +BERKS +BERLIN +BERLINE +BERLINES +BERLINS +BERM +BERME +BERMED +BERMES +BERMING +BERMS +BERMUDAS +BERNICLE +BERNICLES +BEROBED +BEROUGED +BERRETTA +BERRETTAS +BERRIED +BERRIES +BERRY +BERRYING +BERRYLESS +BERRYLIKE +BERSEEM +BERSEEMS +BERSERK +BERSERKER +BERSERKERS +BERSERKLY +BERSERKS +BERTH +BERTHA +BERTHAS +BERTHED +BERTHING +BERTHS +BERYL +BERYLINE +BERYLLIUM +BERYLLIUMS +BERYLS +BES +BESCORCH +BESCORCHED +BESCORCHES +BESCORCHING +BESCOUR +BESCOURED +BESCOURING +BESCOURS +BESCREEN +BESCREENED +BESCREENING +BESCREENS +BESEECH +BESEECHED +BESEECHER +BESEECHERS +BESEECHES +BESEECHING +BESEECHINGLY +BESEEM +BESEEMED +BESEEMING +BESEEMS +BESES +BESET +BESETMENT +BESETMENTS +BESETS +BESETTER +BESETTERS +BESETTING +BESHADOW +BESHADOWED +BESHADOWING +BESHADOWS +BESHAME +BESHAMED +BESHAMES +BESHAMING +BESHIVER +BESHIVERED +BESHIVERING +BESHIVERS +BESHOUT +BESHOUTED +BESHOUTING +BESHOUTS +BESHREW +BESHREWED +BESHREWING +BESHREWS +BESHROUD +BESHROUDED +BESHROUDING +BESHROUDS +BESIDE +BESIDES +BESIEGE +BESIEGED +BESIEGER +BESIEGERS +BESIEGES +BESIEGING +BESLAVED +BESLIME +BESLIMED +BESLIMES +BESLIMING +BESMEAR +BESMEARED +BESMEARER +BESMEARERS +BESMEARING +BESMEARS +BESMILE +BESMILED +BESMILES +BESMILING +BESMIRCH +BESMIRCHED +BESMIRCHES +BESMIRCHING +BESMOKE +BESMOKED +BESMOKES +BESMOKING +BESMOOTH +BESMOOTHED +BESMOOTHING +BESMOOTHS +BESMUDGE +BESMUDGED +BESMUDGES +BESMUDGING +BESMUT +BESMUTS +BESMUTTED +BESMUTTING +BESNOW +BESNOWED +BESNOWING +BESNOWS +BESOM +BESOMS +BESOOTHE +BESOOTHED +BESOOTHES +BESOOTHING +BESOT +BESOTS +BESOTTED +BESOTTING +BESOUGHT +BESPAKE +BESPANGLE +BESPANGLED +BESPANGLES +BESPANGLING +BESPATTER +BESPATTERED +BESPATTERING +BESPATTERS +BESPEAK +BESPEAKING +BESPEAKS +BESPECTACLED +BESPOKE +BESPOKEN +BESPOUSE +BESPOUSED +BESPOUSES +BESPOUSING +BESPREAD +BESPREADING +BESPREADS +BESPRENT +BESPRINKLE +BESPRINKLED +BESPRINKLES +BESPRINKLING +BEST +BESTEAD +BESTEADED +BESTEADING +BESTEADS +BESTED +BESTIAL +BESTIALITIES +BESTIALITY +BESTIALIZE +BESTIALIZED +BESTIALIZES +BESTIALIZING +BESTIALLY +BESTIARIES +BESTIARY +BESTING +BESTIR +BESTIRRED +BESTIRRING +BESTIRS +BESTOW +BESTOWAL +BESTOWALS +BESTOWED +BESTOWER +BESTOWERS +BESTOWING +BESTOWS +BESTREW +BESTREWED +BESTREWING +BESTREWN +BESTREWS +BESTRID +BESTRIDDEN +BESTRIDE +BESTRIDES +BESTRIDING +BESTRODE +BESTROW +BESTROWED +BESTROWING +BESTROWN +BESTROWS +BESTS +BESTSELLERDOM +BESTSELLERDOMS +BESTUD +BESTUDDED +BESTUDDING +BESTUDS +BESWARM +BESWARMED +BESWARMING +BESWARMS +BET +BETA +BETAINE +BETAINES +BETAKE +BETAKEN +BETAKES +BETAKING +BETAS +BETATRON +BETATRONS +BETATTER +BETATTERED +BETATTERING +BETATTERS +BETAXED +BETEL +BETELNUT +BETELNUTS +BETELS +BETH +BETHANK +BETHANKED +BETHANKING +BETHANKS +BETHEL +BETHELS +BETHESDA +BETHESDAS +BETHINK +BETHINKING +BETHINKS +BETHORN +BETHORNED +BETHORNING +BETHORNS +BETHOUGHT +BETHS +BETHUMP +BETHUMPED +BETHUMPING +BETHUMPS +BETIDE +BETIDED +BETIDES +BETIDING +BETIME +BETIMES +BETISE +BETISES +BETOKEN +BETOKENED +BETOKENING +BETOKENS +BETON +BETONIES +BETONS +BETONY +BETOOK +BETRAY +BETRAYAL +BETRAYALS +BETRAYED +BETRAYER +BETRAYERS +BETRAYING +BETRAYS +BETROTH +BETROTHAL +BETROTHALS +BETROTHED +BETROTHEDS +BETROTHING +BETROTHS +BETS +BETTA +BETTAS +BETTED +BETTER +BETTERED +BETTERING +BETTERMENT +BETTERMENTS +BETTERS +BETTING +BETTOR +BETTORS +BETWEEN +BETWEENBRAIN +BETWEENBRAINS +BETWEENNESS +BETWEENNESSES +BETWEENTIMES +BETWEENWHILES +BETWIXT +BEUNCLED +BEVATRON +BEVATRONS +BEVEL +BEVELED +BEVELER +BEVELERS +BEVELING +BEVELLED +BEVELLER +BEVELLERS +BEVELLING +BEVELS +BEVERAGE +BEVERAGES +BEVIES +BEVOMIT +BEVOMITED +BEVOMITING +BEVOMITS +BEVOR +BEVORS +BEVY +BEWAIL +BEWAILED +BEWAILER +BEWAILERS +BEWAILING +BEWAILS +BEWARE +BEWARED +BEWARES +BEWARING +BEWEARIED +BEWEARIES +BEWEARY +BEWEARYING +BEWEEP +BEWEEPING +BEWEEPS +BEWEPT +BEWHISKERED +BEWIG +BEWIGGED +BEWIGGING +BEWIGS +BEWILDER +BEWILDERED +BEWILDEREDLY +BEWILDEREDNESS +BEWILDERING +BEWILDERINGLY +BEWILDERMENT +BEWILDERMENTS +BEWILDERS +BEWINGED +BEWITCH +BEWITCHED +BEWITCHER +BEWITCHERIES +BEWITCHERS +BEWITCHERY +BEWITCHES +BEWITCHING +BEWITCHINGLY +BEWITCHMENT +BEWITCHMENTS +BEWORM +BEWORMED +BEWORMING +BEWORMS +BEWORRIED +BEWORRIES +BEWORRY +BEWORRYING +BEWRAP +BEWRAPPED +BEWRAPPING +BEWRAPS +BEWRAPT +BEWRAY +BEWRAYED +BEWRAYER +BEWRAYERS +BEWRAYING +BEWRAYS +BEY +BEYLIC +BEYLICS +BEYLIK +BEYLIKS +BEYOND +BEYONDS +BEYS +BEZANT +BEZANTS +BEZAZZ +BEZAZZES +BEZEL +BEZELS +BEZIL +BEZILS +BEZIQUE +BEZIQUES +BEZOAR +BEZOARS +BEZZANT +BEZZANTS +BHAKTA +BHAKTAS +BHAKTI +BHAKTIS +BHANG +BHANGRA +BHANGRAS +BHANGS +BHARAL +BHARALS +BHEESTIE +BHEESTIES +BHEESTY +BHISTIE +BHISTIES +BHOOT +BHOOTS +BHUT +BHUTS +BI +BIACETYL +BIACETYLS +BIALI +BIALIES +BIALIS +BIALY +BIALYS +BIANNUAL +BIANNUALLY +BIAS +BIASED +BIASEDLY +BIASES +BIASING +BIASNESS +BIASNESSES +BIASSED +BIASSEDLY +BIASSES +BIASSING +BIATHLETE +BIATHLETES +BIATHLON +BIATHLONS +BIAXAL +BIAXIAL +BIAXIALLY +BIB +BIBASIC +BIBB +BIBBED +BIBBER +BIBBERIES +BIBBERS +BIBBERY +BIBBING +BIBBS +BIBCOCK +BIBCOCKS +BIBELOT +BIBELOTS +BIBLE +BIBLES +BIBLESS +BIBLICAL +BIBLICALLY +BIBLICISM +BIBLICISMS +BIBLICIST +BIBLICISTS +BIBLIKE +BIBLIOGRAPHER +BIBLIOGRAPHERS +BIBLIOGRAPHIC +BIBLIOGRAPHICAL +BIBLIOGRAPHIES +BIBLIOGRAPHY +BIBLIOLATER +BIBLIOLATERS +BIBLIOLATRIES +BIBLIOLATROUS +BIBLIOLATRY +BIBLIOLOGIES +BIBLIOLOGY +BIBLIOMANIA +BIBLIOMANIAC +BIBLIOMANIACAL +BIBLIOMANIACS +BIBLIOMANIAS +BIBLIOPEGIC +BIBLIOPEGIES +BIBLIOPEGIST +BIBLIOPEGISTS +BIBLIOPEGY +BIBLIOPHILE +BIBLIOPHILES +BIBLIOPHILIC +BIBLIOPHILIES +BIBLIOPHILISM +BIBLIOPHILISMS +BIBLIOPHILY +BIBLIOPOLE +BIBLIOPOLES +BIBLIOPOLIST +BIBLIOPOLISTS +BIBLIOTHECA +BIBLIOTHECAE +BIBLIOTHECAL +BIBLIOTHECAS +BIBLIOTHERAPIES +BIBLIOTHERAPY +BIBLIOTIC +BIBLIOTICS +BIBLIOTIST +BIBLIOTISTS +BIBLIST +BIBLISTS +BIBS +BIBULOUS +BIBULOUSLY +BIBULOUSNESS +BIBULOUSNESSES +BICAMERAL +BICAMERALISM +BICAMERALISMS +BICARB +BICARBONATE +BICARBONATES +BICARBS +BICAUDAL +BICE +BICENTENARIES +BICENTENARY +BICENTENNIAL +BICENTENNIALS +BICENTRIC +BICEP +BICEPS +BICEPSES +BICES +BICHROMATE +BICHROMATED +BICHROMATES +BICHROME +BICIPITAL +BICKER +BICKERED +BICKERER +BICKERERS +BICKERING +BICKERS +BICOASTAL +BICOLOR +BICOLORED +BICOLORS +BICOLOUR +BICOLOURS +BICOMPONENT +BICONCAVE +BICONCAVITIES +BICONCAVITY +BICONDITIONAL +BICONDITIONALS +BICONVEX +BICONVEXITIES +BICONVEXITY +BICORN +BICORNE +BICORNES +BICORNS +BICRON +BICRONS +BICULTURAL +BICULTURALISM +BICULTURALISMS +BICUSPID +BICUSPIDS +BICYCLE +BICYCLED +BICYCLER +BICYCLERS +BICYCLES +BICYCLIC +BICYCLING +BICYCLIST +BICYCLISTS +BID +BIDARKA +BIDARKAS +BIDARKEE +BIDARKEES +BIDDABILITIES +BIDDABILITY +BIDDABLE +BIDDABLY +BIDDEN +BIDDER +BIDDERS +BIDDIES +BIDDING +BIDDINGS +BIDDY +BIDE +BIDED +BIDENTAL +BIDENTATE +BIDER +BIDERS +BIDES +BIDET +BIDETS +BIDI +BIDIALECTAL +BIDIALECTALISM +BIDIALECTALISMS +BIDING +BIDIRECTIONAL +BIDIRECTIONALLY +BIDIS +BIDONVILLE +BIDONVILLES +BIDS +BIELD +BIELDED +BIELDING +BIELDS +BIENNALE +BIENNALES +BIENNIA +BIENNIAL +BIENNIALLY +BIENNIALS +BIENNIUM +BIENNIUMS +BIER +BIERS +BIESTINGS +BIFACE +BIFACES +BIFACIAL +BIFACIALLY +BIFARIOUS +BIFF +BIFFED +BIFFIES +BIFFIN +BIFFING +BIFFINS +BIFFS +BIFFY +BIFID +BIFIDITIES +BIFIDITY +BIFIDLY +BIFILAR +BIFILARLY +BIFLAGELLATE +BIFLEX +BIFOCAL +BIFOCALED +BIFOCALS +BIFOLD +BIFOLIATE +BIFORATE +BIFORKED +BIFORM +BIFORMED +BIFUNCTIONAL +BIFURCATE +BIFURCATED +BIFURCATES +BIFURCATING +BIFURCATION +BIFURCATIONS +BIG +BIGAMIES +BIGAMIST +BIGAMISTS +BIGAMOUS +BIGAMOUSLY +BIGAMY +BIGARADE +BIGARADES +BIGAROON +BIGAROONS +BIGARREAU +BIGARREAUS +BIGEMINAL +BIGEMINIES +BIGEMINY +BIGENERIC +BIGEYE +BIGEYES +BIGFEET +BIGFOOT +BIGFOOTED +BIGFOOTING +BIGFOOTS +BIGGER +BIGGEST +BIGGETY +BIGGIE +BIGGIES +BIGGIN +BIGGING +BIGGINGS +BIGGINS +BIGGISH +BIGGITY +BIGGY +BIGHEAD +BIGHEADED +BIGHEADS +BIGHEARTED +BIGHEARTEDLY +BIGHEARTEDNESS +BIGHORN +BIGHORNS +BIGHT +BIGHTED +BIGHTING +BIGHTS +BIGLY +BIGMOUTH +BIGMOUTHED +BIGMOUTHS +BIGNESS +BIGNESSES +BIGNONIA +BIGNONIAS +BIGOS +BIGOSES +BIGOT +BIGOTED +BIGOTEDLY +BIGOTRIES +BIGOTRY +BIGOTS +BIGS +BIGSTICK +BIGTIME +BIGWIG +BIGWIGS +BIHOURLY +BIJECTION +BIJECTIONS +BIJECTIVE +BIJOU +BIJOUS +BIJOUTERIE +BIJOUTERIES +BIJOUX +BIJUGATE +BIJUGOUS +BIKE +BIKED +BIKER +BIKERS +BIKES +BIKEWAY +BIKEWAYS +BIKIE +BIKIES +BIKING +BIKINI +BIKINIED +BIKINIS +BILABIAL +BILABIALS +BILABIATE +BILANDER +BILANDERS +BILATERAL +BILATERALISM +BILATERALISMS +BILATERALLY +BILAYER +BILAYERS +BILBERRIES +BILBERRY +BILBIES +BILBO +BILBOA +BILBOAS +BILBOES +BILBOS +BILBY +BILDUNGSROMAN +BILDUNGSROMANS +BILE +BILECTION +BILECTIONS +BILES +BILEVEL +BILEVELS +BILGE +BILGED +BILGES +BILGEWATER +BILGEWATERS +BILGIER +BILGIEST +BILGING +BILGY +BILHARZIA +BILHARZIAL +BILHARZIAS +BILHARZIASES +BILHARZIASIS +BILIARY +BILINEAR +BILINGUAL +BILINGUALISM +BILINGUALISMS +BILINGUALLY +BILINGUALS +BILIOUS +BILIOUSLY +BILIOUSNESS +BILIOUSNESSES +BILIRUBIN +BILIRUBINS +BILIVERDIN +BILIVERDINS +BILK +BILKED +BILKER +BILKERS +BILKING +BILKS +BILL +BILLABLE +BILLABONG +BILLABONGS +BILLBOARD +BILLBOARDED +BILLBOARDING +BILLBOARDS +BILLBUG +BILLBUGS +BILLED +BILLER +BILLERS +BILLET +BILLETED +BILLETER +BILLETERS +BILLETING +BILLETS +BILLFISH +BILLFISHES +BILLFOLD +BILLFOLDS +BILLHEAD +BILLHEADS +BILLHOOK +BILLHOOKS +BILLIARD +BILLIARDS +BILLIE +BILLIES +BILLING +BILLINGS +BILLINGSGATE +BILLINGSGATES +BILLION +BILLIONAIRE +BILLIONAIRES +BILLIONS +BILLIONTH +BILLIONTHS +BILLON +BILLONS +BILLOW +BILLOWED +BILLOWIER +BILLOWIEST +BILLOWING +BILLOWS +BILLOWY +BILLS +BILLY +BILLYCAN +BILLYCANS +BILLYCOCK +BILLYCOCKS +BILOBATE +BILOBATED +BILOBED +BILOBULAR +BILOCATION +BILOCATIONS +BILOCULAR +BILSTED +BILSTEDS +BILTONG +BILTONGS +BIMA +BIMAH +BIMAHS +BIMANOUS +BIMANUAL +BIMANUALLY +BIMAS +BIMBETTE +BIMBETTES +BIMBO +BIMBOES +BIMBOS +BIMENSAL +BIMESTER +BIMESTERS +BIMETAL +BIMETALLIC +BIMETALLICS +BIMETALLISM +BIMETALLISMS +BIMETALLIST +BIMETALLISTIC +BIMETALLISTS +BIMETALS +BIMETHYL +BIMETHYLS +BIMILLENARIES +BIMILLENARY +BIMILLENNIAL +BIMILLENNIALS +BIMODAL +BIMODALITIES +BIMODALITY +BIMOLECULAR +BIMOLECULARLY +BIMONTHLIES +BIMONTHLY +BIMORPH +BIMORPHEMIC +BIMORPHS +BIN +BINAL +BINARIES +BINARISM +BINARISMS +BINARY +BINATE +BINATELY +BINATIONAL +BINAURAL +BINAURALLY +BIND +BINDABLE +BINDER +BINDERIES +BINDERS +BINDERY +BINDI +BINDING +BINDINGLY +BINDINGNESS +BINDINGNESSES +BINDINGS +BINDIS +BINDLE +BINDLES +BINDS +BINDWEED +BINDWEEDS +BINE +BINER +BINERS +BINES +BINGE +BINGED +BINGEING +BINGER +BINGERS +BINGES +BINGING +BINGO +BINGOES +BINGOS +BINIT +BINITS +BINNACLE +BINNACLES +BINNED +BINNING +BINOCLE +BINOCLES +BINOCS +BINOCULAR +BINOCULARITIES +BINOCULARITY +BINOCULARLY +BINOCULARS +BINOMIAL +BINOMIALLY +BINOMIALS +BINS +BINT +BINTS +BINTURONG +BINTURONGS +BINUCLEAR +BINUCLEATE +BINUCLEATED +BIO +BIOACOUSTICS +BIOACTIVE +BIOACTIVITIES +BIOACTIVITY +BIOASSAY +BIOASSAYED +BIOASSAYING +BIOASSAYS +BIOAVAILABILITY +BIOAVAILABLE +BIOCENOSE +BIOCENOSES +BIOCENOSIS +BIOCHEMIC +BIOCHEMICAL +BIOCHEMICALLY +BIOCHEMICALS +BIOCHEMIST +BIOCHEMISTRIES +BIOCHEMISTRY +BIOCHEMISTS +BIOCHIP +BIOCHIPS +BIOCIDAL +BIOCIDE +BIOCIDES +BIOCLEAN +BIOCLIMATIC +BIOCOENOSES +BIOCOENOSIS +BIOCOMPATIBLE +BIOCONTROL +BIOCONTROLS +BIOCONVERSION +BIOCONVERSIONS +BIOCYCLE +BIOCYCLES +BIODEGRADABLE +BIODEGRADATION +BIODEGRADATIONS +BIODEGRADE +BIODEGRADED +BIODEGRADES +BIODEGRADING +BIODIVERSITIES +BIODIVERSITY +BIODYNAMIC +BIOELECTRIC +BIOELECTRICAL +BIOELECTRICITY +BIOENERGETIC +BIOENERGETICS +BIOENGINEER +BIOENGINEERED +BIOENGINEERING +BIOENGINEERINGS +BIOENGINEERS +BIOETHIC +BIOETHICAL +BIOETHICIST +BIOETHICISTS +BIOETHICS +BIOFEEDBACK +BIOFEEDBACKS +BIOFILM +BIOFILMS +BIOFOULER +BIOFOULERS +BIOFOULING +BIOFOULINGS +BIOFUEL +BIOFUELED +BIOFUELS +BIOG +BIOGAS +BIOGASES +BIOGASSES +BIOGEN +BIOGENESES +BIOGENESIS +BIOGENETIC +BIOGENETICALLY +BIOGENIC +BIOGENIES +BIOGENOUS +BIOGENS +BIOGENY +BIOGEOCHEMICAL +BIOGEOCHEMICALS +BIOGEOCHEMISTRY +BIOGEOGRAPHER +BIOGEOGRAPHERS +BIOGEOGRAPHIC +BIOGEOGRAPHICAL +BIOGEOGRAPHIES +BIOGEOGRAPHY +BIOGRAPHEE +BIOGRAPHEES +BIOGRAPHER +BIOGRAPHERS +BIOGRAPHIC +BIOGRAPHICAL +BIOGRAPHICALLY +BIOGRAPHIES +BIOGRAPHY +BIOGS +BIOHAZARD +BIOHAZARDS +BIOHERM +BIOHERMS +BIOLOGIC +BIOLOGICAL +BIOLOGICALLY +BIOLOGICALS +BIOLOGICS +BIOLOGIES +BIOLOGISM +BIOLOGISMS +BIOLOGIST +BIOLOGISTIC +BIOLOGISTS +BIOLOGY +BIOLUMINESCENCE +BIOLUMINESCENT +BIOLYSES +BIOLYSIS +BIOLYTIC +BIOMARKER +BIOMARKERS +BIOMASS +BIOMASSES +BIOMATERIAL +BIOMATERIALS +BIOMATHEMATICAL +BIOMATHEMATICS +BIOME +BIOMECHANICAL +BIOMECHANICALLY +BIOMECHANICS +BIOMEDICAL +BIOMEDICINE +BIOMEDICINES +BIOMES +BIOMETEOROLOGY +BIOMETER +BIOMETERS +BIOMETRIC +BIOMETRICAL +BIOMETRICIAN +BIOMETRICIANS +BIOMETRICS +BIOMETRIES +BIOMETRY +BIOMIMETIC +BIOMIMETICS +BIOMOLECULAR +BIOMOLECULE +BIOMOLECULES +BIOMORPH +BIOMORPHIC +BIOMORPHS +BIONIC +BIONICS +BIONOMIC +BIONOMICS +BIONOMIES +BIONOMIST +BIONOMISTS +BIONOMY +BIONT +BIONTIC +BIONTS +BIOPHILIA +BIOPHILIAS +BIOPHYSICAL +BIOPHYSICIST +BIOPHYSICISTS +BIOPHYSICS +BIOPIC +BIOPICS +BIOPIRACIES +BIOPIRACY +BIOPIRATE +BIOPIRATES +BIOPLASM +BIOPLASMS +BIOPOLYMER +BIOPOLYMERS +BIOPSIC +BIOPSIED +BIOPSIES +BIOPSY +BIOPSYING +BIOPTIC +BIOREACTOR +BIOREACTORS +BIOREGION +BIOREGIONAL +BIOREGIONALISM +BIOREGIONALISMS +BIOREGIONALIST +BIOREGIONALISTS +BIOREGIONS +BIOREMEDIATION +BIOREMEDIATIONS +BIORHYTHM +BIORHYTHMIC +BIORHYTHMS +BIOS +BIOSAFETIES +BIOSAFETY +BIOSCIENCE +BIOSCIENCES +BIOSCIENTIFIC +BIOSCIENTIST +BIOSCIENTISTS +BIOSCOPE +BIOSCOPES +BIOSCOPIES +BIOSCOPY +BIOSENSOR +BIOSENSORS +BIOSOCIAL +BIOSOCIALLY +BIOSOLID +BIOSOLIDS +BIOSPHERE +BIOSPHERES +BIOSPHERIC +BIOSTATISTICAL +BIOSTATISTICIAN +BIOSTATISTICS +BIOSTRATIGRAPHY +BIOSTROME +BIOSTROMES +BIOSYNTHESES +BIOSYNTHESIS +BIOSYNTHETIC +BIOSYSTEMATIC +BIOSYSTEMATICS +BIOSYSTEMATIST +BIOSYSTEMATISTS +BIOTA +BIOTAS +BIOTECH +BIOTECHNICAL +BIOTECHNOLOGIES +BIOTECHNOLOGIST +BIOTECHNOLOGY +BIOTECHS +BIOTELEMETRIC +BIOTELEMETRIES +BIOTELEMETRY +BIOTERROR +BIOTERRORS +BIOTIC +BIOTICAL +BIOTICS +BIOTIN +BIOTINS +BIOTITE +BIOTITES +BIOTITIC +BIOTOPE +BIOTOPES +BIOTOXIN +BIOTOXINS +BIOTRON +BIOTRONS +BIOTURBED +BIOTYPE +BIOTYPES +BIOTYPIC +BIOVULAR +BIOWEAPON +BIOWEAPONS +BIPACK +BIPACKS +BIPARENTAL +BIPARENTALLY +BIPAROUS +BIPARTED +BIPARTISAN +BIPARTISANISM +BIPARTISANISMS +BIPARTISANSHIP +BIPARTISANSHIPS +BIPARTITE +BIPARTITELY +BIPARTITION +BIPARTITIONS +BIPARTY +BIPED +BIPEDAL +BIPEDALISM +BIPEDALISMS +BIPEDALITIES +BIPEDALITY +BIPEDALLY +BIPEDS +BIPHASIC +BIPHENYL +BIPHENYLS +BIPINNATE +BIPINNATELY +BIPLANE +BIPLANES +BIPOD +BIPODS +BIPOLAR +BIPOLARITIES +BIPOLARITY +BIPOLARIZATION +BIPOLARIZATIONS +BIPOLARIZE +BIPOLARIZED +BIPOLARIZES +BIPOLARIZING +BIPROPELLANT +BIPROPELLANTS +BIPYRAMID +BIPYRAMIDAL +BIPYRAMIDS +BIQUADRATIC +BIQUADRATICS +BIRACIAL +BIRACIALISM +BIRACIALISMS +BIRADIAL +BIRADICAL +BIRADICALS +BIRAMOSE +BIRAMOUS +BIRCH +BIRCHED +BIRCHEN +BIRCHES +BIRCHING +BIRD +BIRDBATH +BIRDBATHS +BIRDBRAIN +BIRDBRAINED +BIRDBRAINS +BIRDCAGE +BIRDCAGES +BIRDCALL +BIRDCALLS +BIRDDOG +BIRDDOGGED +BIRDDOGGING +BIRDDOGS +BIRDED +BIRDER +BIRDERS +BIRDFARM +BIRDFARMS +BIRDFEED +BIRDFEEDS +BIRDHOUSE +BIRDHOUSES +BIRDIE +BIRDIED +BIRDIEING +BIRDIES +BIRDING +BIRDINGS +BIRDLIFE +BIRDLIKE +BIRDLIME +BIRDLIMED +BIRDLIMES +BIRDLIMING +BIRDMAN +BIRDMEN +BIRDS +BIRDSEED +BIRDSEEDS +BIRDSEYE +BIRDSEYES +BIRDSHOT +BIRDSONG +BIRDSONGS +BIRDWATCH +BIRDWATCHED +BIRDWATCHES +BIRDWATCHING +BIREFRINGENCE +BIREFRINGENCES +BIREFRINGENT +BIREME +BIREMES +BIRETTA +BIRETTAS +BIRIANI +BIRIANIS +BIRK +BIRKIE +BIRKIES +BIRKS +BIRL +BIRLE +BIRLED +BIRLER +BIRLERS +BIRLES +BIRLING +BIRLINGS +BIRLS +BIRO +BIROS +BIRR +BIRRED +BIRRETTA +BIRRETTAS +BIRRING +BIRROTCH +BIRRS +BIRSE +BIRSES +BIRTH +BIRTHDAY +BIRTHDAYS +BIRTHED +BIRTHING +BIRTHINGS +BIRTHMARK +BIRTHMARKS +BIRTHNAME +BIRTHNAMES +BIRTHPLACE +BIRTHPLACES +BIRTHRATE +BIRTHRATES +BIRTHRIGHT +BIRTHRIGHTS +BIRTHROOT +BIRTHROOTS +BIRTHS +BIRTHSTONE +BIRTHSTONES +BIRTHWORT +BIRTHWORTS +BIRYANI +BIRYANIS +BIS +BISCOTTI +BISCOTTO +BISCUIT +BISCUITS +BISCUITY +BISE +BISECT +BISECTED +BISECTING +BISECTION +BISECTIONAL +BISECTIONALLY +BISECTIONS +BISECTOR +BISECTORS +BISECTRICES +BISECTRIX +BISECTS +BISERIATE +BISERRATE +BISES +BISEXUAL +BISEXUALITIES +BISEXUALITY +BISEXUALLY +BISEXUALS +BISHOP +BISHOPED +BISHOPING +BISHOPRIC +BISHOPRICS +BISHOPS +BISK +BISKS +BISMUTH +BISMUTHAL +BISMUTHIC +BISMUTHS +BISNAGA +BISNAGAS +BISON +BISONS +BISONTINE +BISQUE +BISQUES +BISTATE +BISTER +BISTERED +BISTERS +BISTORT +BISTORTS +BISTOURIES +BISTOURY +BISTRE +BISTRED +BISTRES +BISTRO +BISTROIC +BISTROS +BISULCATE +BISULFATE +BISULFATES +BISULFIDE +BISULFIDES +BISULFITE +BISULFITES +BIT +BITABLE +BITARTRATE +BITARTRATES +BITCH +BITCHED +BITCHEN +BITCHERIES +BITCHERY +BITCHES +BITCHIER +BITCHIEST +BITCHILY +BITCHINESS +BITCHINESSES +BITCHING +BITCHY +BITE +BITEABLE +BITEPLATE +BITEPLATES +BITER +BITERS +BITES +BITEWING +BITEWINGS +BITING +BITINGLY +BITMAP +BITMAPPED +BITMAPS +BITS +BITSIER +BITSIEST +BITSTOCK +BITSTOCKS +BITSTREAM +BITSTREAMS +BITSY +BITT +BITTED +BITTEN +BITTER +BITTERBRUSH +BITTERBRUSHES +BITTERED +BITTERER +BITTEREST +BITTERING +BITTERISH +BITTERLY +BITTERN +BITTERNESS +BITTERNESSES +BITTERNS +BITTERNUT +BITTERNUTS +BITTERROOT +BITTERROOTS +BITTERS +BITTERSWEET +BITTERSWEETLY +BITTERSWEETNESS +BITTERSWEETS +BITTERWEED +BITTERWEEDS +BITTIER +BITTIEST +BITTINESS +BITTINESSES +BITTING +BITTINGS +BITTOCK +BITTOCKS +BITTS +BITTY +BITUMEN +BITUMENS +BITUMINIZATION +BITUMINIZATIONS +BITUMINIZE +BITUMINIZED +BITUMINIZES +BITUMINIZING +BITUMINOUS +BIUNIQUE +BIUNIQUENESS +BIUNIQUENESSES +BIVALENCE +BIVALENCES +BIVALENCIES +BIVALENCY +BIVALENT +BIVALENTS +BIVALVE +BIVALVED +BIVALVES +BIVARIATE +BIVINYL +BIVINYLS +BIVOUAC +BIVOUACKED +BIVOUACKING +BIVOUACKS +BIVOUACS +BIWEEKLIES +BIWEEKLY +BIYEARLY +BIZ +BIZARRE +BIZARRELY +BIZARRENESS +BIZARRENESSES +BIZARRERIE +BIZARRERIES +BIZARRES +BIZARRO +BIZARROS +BIZE +BIZES +BIZNAGA +BIZNAGAS +BIZONAL +BIZONE +BIZONES +BIZZES +BLAB +BLABBED +BLABBER +BLABBERED +BLABBERING +BLABBERMOUTH +BLABBERMOUTHS +BLABBERS +BLABBING +BLABBY +BLABS +BLACK +BLACKAMOOR +BLACKAMOORS +BLACKBALL +BLACKBALLED +BLACKBALLING +BLACKBALLS +BLACKBERRIES +BLACKBERRY +BLACKBIRD +BLACKBIRDED +BLACKBIRDER +BLACKBIRDERS +BLACKBIRDING +BLACKBIRDS +BLACKBOARD +BLACKBOARDS +BLACKBODIES +BLACKBODY +BLACKBOY +BLACKBOYS +BLACKBUCK +BLACKBUCKS +BLACKCAP +BLACKCAPS +BLACKCOCK +BLACKCOCKS +BLACKDAMP +BLACKDAMPS +BLACKED +BLACKEN +BLACKENED +BLACKENER +BLACKENERS +BLACKENING +BLACKENINGS +BLACKENS +BLACKER +BLACKEST +BLACKFACE +BLACKFACES +BLACKFIN +BLACKFINS +BLACKFISH +BLACKFISHES +BLACKFLIES +BLACKFLY +BLACKGUARD +BLACKGUARDED +BLACKGUARDING +BLACKGUARDISM +BLACKGUARDISMS +BLACKGUARDLY +BLACKGUARDS +BLACKGUM +BLACKGUMS +BLACKHANDER +BLACKHANDERS +BLACKHEAD +BLACKHEADS +BLACKHEART +BLACKHEARTS +BLACKING +BLACKINGS +BLACKISH +BLACKJACK +BLACKJACKED +BLACKJACKING +BLACKJACKS +BLACKLAND +BLACKLANDS +BLACKLEAD +BLACKLEADS +BLACKLEG +BLACKLEGS +BLACKLIST +BLACKLISTED +BLACKLISTER +BLACKLISTERS +BLACKLISTING +BLACKLISTS +BLACKLY +BLACKMAIL +BLACKMAILED +BLACKMAILER +BLACKMAILERS +BLACKMAILING +BLACKMAILS +BLACKNESS +BLACKNESSES +BLACKOUT +BLACKOUTS +BLACKPOLL +BLACKPOLLS +BLACKS +BLACKSMITH +BLACKSMITHING +BLACKSMITHINGS +BLACKSMITHS +BLACKSNAKE +BLACKSNAKES +BLACKTAIL +BLACKTAILS +BLACKTHORN +BLACKTHORNS +BLACKTOP +BLACKTOPPED +BLACKTOPPING +BLACKTOPS +BLACKWATER +BLACKWATERS +BLACKWOOD +BLACKWOODS +BLADDER +BLADDERLIKE +BLADDERNUT +BLADDERNUTS +BLADDERS +BLADDERWORT +BLADDERWORTS +BLADDERY +BLADE +BLADED +BLADELESS +BLADELIKE +BLADER +BLADERS +BLADES +BLADING +BLADINGS +BLAE +BLAEBERRIES +BLAEBERRY +BLAFF +BLAFFS +BLAGGING +BLAGGINGS +BLAH +BLAHS +BLAIN +BLAINS +BLAM +BLAMABLE +BLAMABLY +BLAME +BLAMEABLE +BLAMED +BLAMEFUL +BLAMEFULLY +BLAMELESS +BLAMELESSLY +BLAMELESSNESS +BLAMELESSNESSES +BLAMER +BLAMERS +BLAMES +BLAMEWORTHINESS +BLAMEWORTHY +BLAMING +BLAMS +BLANCH +BLANCHED +BLANCHER +BLANCHERS +BLANCHES +BLANCHING +BLANCMANGE +BLANCMANGES +BLAND +BLANDER +BLANDEST +BLANDISH +BLANDISHED +BLANDISHER +BLANDISHERS +BLANDISHES +BLANDISHING +BLANDISHMENT +BLANDISHMENTS +BLANDLY +BLANDNESS +BLANDNESSES +BLANK +BLANKED +BLANKER +BLANKEST +BLANKET +BLANKETED +BLANKETFLOWER +BLANKETFLOWERS +BLANKETING +BLANKETLIKE +BLANKETS +BLANKING +BLANKLY +BLANKNESS +BLANKNESSES +BLANKS +BLANQUETTE +BLANQUETTES +BLARE +BLARED +BLARES +BLARING +BLARNEY +BLARNEYED +BLARNEYING +BLARNEYS +BLASE +BLASPHEME +BLASPHEMED +BLASPHEMER +BLASPHEMERS +BLASPHEMES +BLASPHEMIES +BLASPHEMING +BLASPHEMOUS +BLASPHEMOUSLY +BLASPHEMOUSNESS +BLASPHEMY +BLAST +BLASTED +BLASTEMA +BLASTEMAL +BLASTEMAS +BLASTEMATA +BLASTEMATIC +BLASTEMIC +BLASTER +BLASTERS +BLASTIE +BLASTIER +BLASTIES +BLASTIEST +BLASTING +BLASTINGS +BLASTMENT +BLASTMENTS +BLASTOCOEL +BLASTOCOELE +BLASTOCOELES +BLASTOCOELIC +BLASTOCOELS +BLASTOCYST +BLASTOCYSTS +BLASTODERM +BLASTODERMS +BLASTODISC +BLASTODISCS +BLASTOFF +BLASTOFFS +BLASTOMA +BLASTOMAS +BLASTOMATA +BLASTOMERE +BLASTOMERES +BLASTOMYCOSES +BLASTOMYCOSIS +BLASTOPORE +BLASTOPORES +BLASTOPORIC +BLASTOSPORE +BLASTOSPORES +BLASTS +BLASTULA +BLASTULAE +BLASTULAR +BLASTULAS +BLASTULATION +BLASTULATIONS +BLASTY +BLAT +BLATANCIES +BLATANCY +BLATANT +BLATANTLY +BLATE +BLATHER +BLATHERED +BLATHERER +BLATHERERS +BLATHERING +BLATHERS +BLATHERSKITE +BLATHERSKITES +BLATS +BLATTED +BLATTER +BLATTERED +BLATTERING +BLATTERS +BLATTING +BLAUBOK +BLAUBOKS +BLAW +BLAWED +BLAWING +BLAWN +BLAWS +BLAXPLOITATION +BLAXPLOITATIONS +BLAZE +BLAZED +BLAZER +BLAZERED +BLAZERS +BLAZES +BLAZING +BLAZINGLY +BLAZON +BLAZONED +BLAZONER +BLAZONERS +BLAZONING +BLAZONINGS +BLAZONRIES +BLAZONRY +BLAZONS +BLEACH +BLEACHABLE +BLEACHED +BLEACHER +BLEACHERITE +BLEACHERITES +BLEACHERS +BLEACHES +BLEACHING +BLEAK +BLEAKER +BLEAKEST +BLEAKISH +BLEAKLY +BLEAKNESS +BLEAKNESSES +BLEAKS +BLEAR +BLEARED +BLEAREYED +BLEARIER +BLEARIEST +BLEARILY +BLEARINESS +BLEARINESSES +BLEARING +BLEARS +BLEARY +BLEAT +BLEATED +BLEATER +BLEATERS +BLEATING +BLEATS +BLEB +BLEBBING +BLEBBINGS +BLEBBY +BLEBS +BLED +BLEED +BLEEDER +BLEEDERS +BLEEDING +BLEEDINGS +BLEEDS +BLEEP +BLEEPED +BLEEPER +BLEEPERS +BLEEPING +BLEEPS +BLELLUM +BLELLUMS +BLEMISH +BLEMISHED +BLEMISHER +BLEMISHERS +BLEMISHES +BLEMISHING +BLENCH +BLENCHED +BLENCHER +BLENCHERS +BLENCHES +BLENCHING +BLEND +BLENDE +BLENDED +BLENDER +BLENDERS +BLENDES +BLENDING +BLENDS +BLENNIES +BLENNIOID +BLENNY +BLENT +BLEPHAROPLAST +BLEPHAROPLASTS +BLEPHAROPLASTY +BLEPHAROSPASM +BLEPHAROSPASMS +BLESBOK +BLESBOKS +BLESBUCK +BLESBUCKS +BLESS +BLESSED +BLESSEDER +BLESSEDEST +BLESSEDLY +BLESSEDNESS +BLESSEDNESSES +BLESSER +BLESSERS +BLESSES +BLESSING +BLESSINGS +BLEST +BLET +BLETHER +BLETHERED +BLETHERING +BLETHERS +BLETS +BLEW +BLIGHT +BLIGHTED +BLIGHTER +BLIGHTERS +BLIGHTIES +BLIGHTING +BLIGHTS +BLIGHTY +BLIMEY +BLIMP +BLIMPISH +BLIMPISHLY +BLIMPISHNESS +BLIMPISHNESSES +BLIMPS +BLIMY +BLIN +BLIND +BLINDAGE +BLINDAGES +BLINDED +BLINDER +BLINDERS +BLINDEST +BLINDFISH +BLINDFISHES +BLINDFOLD +BLINDFOLDED +BLINDFOLDING +BLINDFOLDS +BLINDGUT +BLINDGUTS +BLINDING +BLINDINGLY +BLINDLY +BLINDNESS +BLINDNESSES +BLINDS +BLINDSIDE +BLINDSIDED +BLINDSIDES +BLINDSIDING +BLINDWORM +BLINDWORMS +BLINI +BLINIS +BLINK +BLINKARD +BLINKARDS +BLINKED +BLINKER +BLINKERED +BLINKERING +BLINKERS +BLINKING +BLINKS +BLINTZ +BLINTZE +BLINTZES +BLIP +BLIPPED +BLIPPING +BLIPS +BLISS +BLISSED +BLISSES +BLISSFUL +BLISSFULLY +BLISSFULNESS +BLISSFULNESSES +BLISSING +BLISSLESS +BLISTER +BLISTERED +BLISTERING +BLISTERINGLY +BLISTERS +BLISTERY +BLITE +BLITES +BLITHE +BLITHEFUL +BLITHELY +BLITHER +BLITHERED +BLITHERING +BLITHERS +BLITHESOME +BLITHESOMELY +BLITHEST +BLITZ +BLITZED +BLITZER +BLITZERS +BLITZES +BLITZING +BLITZKRIEG +BLITZKRIEGS +BLIZZARD +BLIZZARDLY +BLIZZARDS +BLIZZARDY +BLOAT +BLOATED +BLOATER +BLOATERS +BLOATING +BLOATS +BLOATWARE +BLOATWARES +BLOB +BLOBBED +BLOBBING +BLOBS +BLOC +BLOCK +BLOCKABLE +BLOCKADE +BLOCKADED +BLOCKADER +BLOCKADERS +BLOCKADES +BLOCKADING +BLOCKAGE +BLOCKAGES +BLOCKBUST +BLOCKBUSTED +BLOCKBUSTER +BLOCKBUSTERS +BLOCKBUSTING +BLOCKBUSTINGS +BLOCKBUSTS +BLOCKED +BLOCKER +BLOCKERS +BLOCKHEAD +BLOCKHEADS +BLOCKHOUSE +BLOCKHOUSES +BLOCKIER +BLOCKIEST +BLOCKING +BLOCKISH +BLOCKS +BLOCKY +BLOCS +BLOG +BLOGGER +BLOGGERS +BLOGGING +BLOGGINGS +BLOGS +BLOKE +BLOKES +BLOND +BLONDE +BLONDER +BLONDES +BLONDEST +BLONDINE +BLONDINED +BLONDINES +BLONDINING +BLONDISH +BLONDNESS +BLONDNESSES +BLONDS +BLOOD +BLOODBATH +BLOODBATHS +BLOODCURDLING +BLOODED +BLOODFIN +BLOODFINS +BLOODGUILT +BLOODGUILTINESS +BLOODGUILTS +BLOODGUILTY +BLOODHOUND +BLOODHOUNDS +BLOODIED +BLOODIER +BLOODIES +BLOODIEST +BLOODILY +BLOODINESS +BLOODINESSES +BLOODING +BLOODINGS +BLOODLESS +BLOODLESSLY +BLOODLESSNESS +BLOODLESSNESSES +BLOODLETTING +BLOODLETTINGS +BLOODLIKE +BLOODLINE +BLOODLINES +BLOODLUST +BLOODLUSTS +BLOODMOBILE +BLOODMOBILES +BLOODRED +BLOODROOT +BLOODROOTS +BLOODS +BLOODSHED +BLOODSHEDS +BLOODSHOT +BLOODSTAIN +BLOODSTAINED +BLOODSTAINS +BLOODSTOCK +BLOODSTOCKS +BLOODSTONE +BLOODSTONES +BLOODSTREAM +BLOODSTREAMS +BLOODSUCKER +BLOODSUCKERS +BLOODSUCKING +BLOODTHIRSTILY +BLOODTHIRSTY +BLOODWORM +BLOODWORMS +BLOODWORT +BLOODWORTS +BLOODY +BLOODYING +BLOOEY +BLOOIE +BLOOM +BLOOMED +BLOOMER +BLOOMERIES +BLOOMERS +BLOOMERY +BLOOMIER +BLOOMIEST +BLOOMING +BLOOMLESS +BLOOMS +BLOOMY +BLOOP +BLOOPED +BLOOPER +BLOOPERS +BLOOPING +BLOOPS +BLOSSOM +BLOSSOMED +BLOSSOMING +BLOSSOMS +BLOSSOMY +BLOT +BLOTCH +BLOTCHED +BLOTCHES +BLOTCHIER +BLOTCHIEST +BLOTCHILY +BLOTCHING +BLOTCHY +BLOTLESS +BLOTS +BLOTTED +BLOTTER +BLOTTERS +BLOTTIER +BLOTTIEST +BLOTTING +BLOTTO +BLOTTY +BLOUSE +BLOUSED +BLOUSES +BLOUSIER +BLOUSIEST +BLOUSILY +BLOUSING +BLOUSON +BLOUSONS +BLOUSY +BLOVIATE +BLOVIATED +BLOVIATES +BLOVIATING +BLOVIATION +BLOVIATIONS +BLOW +BLOWBACK +BLOWBACKS +BLOWBALL +BLOWBALLS +BLOWBY +BLOWBYS +BLOWDOWN +BLOWDOWNS +BLOWED +BLOWER +BLOWERS +BLOWFISH +BLOWFISHES +BLOWFLIES +BLOWFLY +BLOWGUN +BLOWGUNS +BLOWHARD +BLOWHARDS +BLOWHOLE +BLOWHOLES +BLOWIER +BLOWIEST +BLOWINESS +BLOWINESSES +BLOWING +BLOWJOB +BLOWJOBS +BLOWN +BLOWOFF +BLOWOFFS +BLOWOUT +BLOWOUTS +BLOWPIPE +BLOWPIPES +BLOWS +BLOWSED +BLOWSIER +BLOWSIEST +BLOWSILY +BLOWSY +BLOWTORCH +BLOWTORCHED +BLOWTORCHES +BLOWTORCHING +BLOWTUBE +BLOWTUBES +BLOWUP +BLOWUPS +BLOWY +BLOWZED +BLOWZIER +BLOWZIEST +BLOWZILY +BLOWZY +BLUB +BLUBBED +BLUBBER +BLUBBERED +BLUBBERER +BLUBBERERS +BLUBBERING +BLUBBERS +BLUBBERY +BLUBBING +BLUBS +BLUCHER +BLUCHERS +BLUDGE +BLUDGED +BLUDGEON +BLUDGEONED +BLUDGEONING +BLUDGEONS +BLUDGER +BLUDGERS +BLUDGES +BLUDGING +BLUE +BLUEBALL +BLUEBALLS +BLUEBEARD +BLUEBEARDS +BLUEBEAT +BLUEBEATS +BLUEBELL +BLUEBELLS +BLUEBERRIES +BLUEBERRY +BLUEBILL +BLUEBILLS +BLUEBIRD +BLUEBIRDS +BLUEBLOOD +BLUEBLOODS +BLUEBONNET +BLUEBONNETS +BLUEBOOK +BLUEBOOKS +BLUEBOTTLE +BLUEBOTTLES +BLUECAP +BLUECAPS +BLUECOAT +BLUECOATS +BLUECURLS +BLUED +BLUEFIN +BLUEFINS +BLUEFISH +BLUEFISHES +BLUEGILL +BLUEGILLS +BLUEGRASS +BLUEGRASSES +BLUEGUM +BLUEGUMS +BLUEHEAD +BLUEHEADS +BLUEING +BLUEINGS +BLUEISH +BLUEJACK +BLUEJACKET +BLUEJACKETS +BLUEJACKS +BLUEJAY +BLUEJAYS +BLUEJEANS +BLUELINE +BLUELINER +BLUELINERS +BLUELINES +BLUELY +BLUENESS +BLUENESSES +BLUENOSE +BLUENOSED +BLUENOSES +BLUEPOINT +BLUEPOINTS +BLUEPRINT +BLUEPRINTED +BLUEPRINTING +BLUEPRINTS +BLUER +BLUES +BLUESHIFT +BLUESHIFTED +BLUESHIFTS +BLUESIER +BLUESIEST +BLUESMAN +BLUESMEN +BLUEST +BLUESTEM +BLUESTEMS +BLUESTOCKING +BLUESTOCKINGS +BLUESTONE +BLUESTONES +BLUESY +BLUET +BLUETICK +BLUETICKS +BLUETONGUE +BLUETONGUES +BLUETS +BLUEWEED +BLUEWEEDS +BLUEWOOD +BLUEWOODS +BLUEY +BLUEYS +BLUFF +BLUFFABLE +BLUFFED +BLUFFER +BLUFFERS +BLUFFEST +BLUFFING +BLUFFLY +BLUFFNESS +BLUFFNESSES +BLUFFS +BLUING +BLUINGS +BLUISH +BLUISHNESS +BLUISHNESSES +BLUME +BLUMED +BLUMES +BLUMING +BLUNDER +BLUNDERBUSS +BLUNDERBUSSES +BLUNDERED +BLUNDERER +BLUNDERERS +BLUNDERING +BLUNDERINGLY +BLUNDERS +BLUNGE +BLUNGED +BLUNGER +BLUNGERS +BLUNGES +BLUNGING +BLUNT +BLUNTED +BLUNTER +BLUNTEST +BLUNTING +BLUNTLY +BLUNTNESS +BLUNTNESSES +BLUNTS +BLUR +BLURB +BLURBED +BLURBING +BLURBIST +BLURBISTS +BLURBS +BLURRED +BLURREDLY +BLURRIER +BLURRIEST +BLURRILY +BLURRINESS +BLURRINESSES +BLURRING +BLURRINGLY +BLURRY +BLURS +BLURT +BLURTED +BLURTER +BLURTERS +BLURTING +BLURTS +BLUSH +BLUSHED +BLUSHER +BLUSHERS +BLUSHES +BLUSHFUL +BLUSHING +BLUSHINGLY +BLUSTER +BLUSTERED +BLUSTERER +BLUSTERERS +BLUSTERING +BLUSTERINGLY +BLUSTEROUS +BLUSTERS +BLUSTERY +BLYPE +BLYPES +BO +BOA +BOAR +BOARD +BOARDABLE +BOARDED +BOARDER +BOARDERS +BOARDING +BOARDINGHOUSE +BOARDINGHOUSES +BOARDINGS +BOARDLIKE +BOARDMAN +BOARDMEN +BOARDROOM +BOARDROOMS +BOARDS +BOARDSAILING +BOARDSAILINGS +BOARDSAILOR +BOARDSAILORS +BOARDWALK +BOARDWALKS +BOARFISH +BOARFISHES +BOARHOUND +BOARHOUNDS +BOARISH +BOARS +BOART +BOARTS +BOAS +BOAST +BOASTED +BOASTER +BOASTERS +BOASTFUL +BOASTFULLY +BOASTFULNESS +BOASTFULNESSES +BOASTING +BOASTS +BOAT +BOATABLE +BOATBILL +BOATBILLS +BOATBUILDER +BOATBUILDERS +BOATBUILDING +BOATBUILDINGS +BOATED +BOATEL +BOATELS +BOATER +BOATERS +BOATFUL +BOATFULS +BOATHOOK +BOATHOOKS +BOATHOUSE +BOATHOUSES +BOATING +BOATINGS +BOATLIFT +BOATLIFTED +BOATLIFTING +BOATLIFTS +BOATLIKE +BOATLOAD +BOATLOADS +BOATMAN +BOATMEN +BOATNECK +BOATNECKS +BOATS +BOATSMAN +BOATSMEN +BOATSWAIN +BOATSWAINS +BOATYARD +BOATYARDS +BOB +BOBBED +BOBBER +BOBBERIES +BOBBERS +BOBBERY +BOBBIES +BOBBIN +BOBBINET +BOBBINETS +BOBBING +BOBBINS +BOBBLE +BOBBLED +BOBBLES +BOBBLING +BOBBY +BOBBYSOX +BOBCAT +BOBCATS +BOBECHE +BOBECHES +BOBOLINK +BOBOLINKS +BOBS +BOBSLED +BOBSLEDDED +BOBSLEDDER +BOBSLEDDERS +BOBSLEDDING +BOBSLEDDINGS +BOBSLEDS +BOBSLEIGH +BOBSLEIGHS +BOBSTAY +BOBSTAYS +BOBTAIL +BOBTAILED +BOBTAILING +BOBTAILS +BOBWHITE +BOBWHITES +BOCACCIO +BOCACCIOS +BOCCE +BOCCES +BOCCI +BOCCIA +BOCCIAS +BOCCIE +BOCCIES +BOCCIS +BOCHE +BOCHES +BOCK +BOCKS +BOD +BODACIOUS +BODACIOUSLY +BODDHISATTVA +BODDHISATTVAS +BODE +BODED +BODEGA +BODEGAS +BODEMENT +BODEMENTS +BODES +BODHISATTVA +BODHISATTVAS +BODHRAN +BODHRANS +BODICE +BODICES +BODIED +BODIES +BODILESS +BODILY +BODING +BODINGLY +BODINGS +BODKIN +BODKINS +BODS +BODY +BODYBOARD +BODYBOARDED +BODYBOARDING +BODYBOARDS +BODYBUILDER +BODYBUILDERS +BODYBUILDING +BODYBUILDINGS +BODYCHECK +BODYCHECKED +BODYCHECKING +BODYCHECKS +BODYGUARD +BODYGUARDED +BODYGUARDING +BODYGUARDS +BODYING +BODYSUIT +BODYSUITS +BODYSURF +BODYSURFED +BODYSURFER +BODYSURFERS +BODYSURFING +BODYSURFS +BODYWORK +BODYWORKS +BOEHMITE +BOEHMITES +BOFF +BOFFED +BOFFIN +BOFFING +BOFFINS +BOFFO +BOFFOLA +BOFFOLAS +BOFFOS +BOFFS +BOG +BOGAN +BOGANS +BOGART +BOGARTED +BOGARTING +BOGARTS +BOGBEAN +BOGBEANS +BOGEY +BOGEYED +BOGEYING +BOGEYMAN +BOGEYMEN +BOGEYS +BOGGED +BOGGIER +BOGGIEST +BOGGINESS +BOGGINESSES +BOGGING +BOGGISH +BOGGLE +BOGGLED +BOGGLER +BOGGLERS +BOGGLES +BOGGLING +BOGGY +BOGIE +BOGIES +BOGLE +BOGLES +BOGS +BOGUS +BOGUSLY +BOGUSNESS +BOGUSNESSES +BOGWOOD +BOGWOODS +BOGY +BOGYISM +BOGYISMS +BOGYMAN +BOGYMEN +BOHEA +BOHEAS +BOHEMIA +BOHEMIAN +BOHEMIANISM +BOHEMIANISMS +BOHEMIANS +BOHEMIAS +BOHO +BOHOS +BOHRIUM +BOHRIUMS +BOHUNK +BOHUNKS +BOIL +BOILABLE +BOILED +BOILER +BOILERMAKER +BOILERMAKERS +BOILERPLATE +BOILERPLATES +BOILERS +BOILERSUIT +BOILERSUITS +BOILING +BOILINGLY +BOILOFF +BOILOFFS +BOILOVER +BOILOVERS +BOILS +BOING +BOINGS +BOINK +BOINKED +BOINKING +BOINKS +BOISERIE +BOISERIES +BOISTEROUS +BOISTEROUSLY +BOISTEROUSNESS +BOITE +BOITES +BOLA +BOLAR +BOLAS +BOLASES +BOLD +BOLDER +BOLDEST +BOLDFACE +BOLDFACED +BOLDFACES +BOLDFACING +BOLDLY +BOLDNESS +BOLDNESSES +BOLDS +BOLE +BOLECTION +BOLECTIONS +BOLERO +BOLEROS +BOLES +BOLETE +BOLETES +BOLETI +BOLETUS +BOLETUSES +BOLIDE +BOLIDES +BOLIVAR +BOLIVARES +BOLIVARS +BOLIVIA +BOLIVIANO +BOLIVIANOS +BOLIVIAS +BOLL +BOLLARD +BOLLARDS +BOLLED +BOLLING +BOLLIX +BOLLIXED +BOLLIXES +BOLLIXING +BOLLOCKS +BOLLOX +BOLLOXED +BOLLOXES +BOLLOXING +BOLLS +BOLLWORM +BOLLWORMS +BOLO +BOLOGNA +BOLOGNAS +BOLOGRAPH +BOLOGRAPHS +BOLOMETER +BOLOMETERS +BOLOMETRIC +BOLOMETRICALLY +BOLONEY +BOLONEYS +BOLOS +BOLSHEVIK +BOLSHEVIKI +BOLSHEVIKS +BOLSHEVISM +BOLSHEVISMS +BOLSHEVIZE +BOLSHEVIZED +BOLSHEVIZES +BOLSHEVIZING +BOLSHIE +BOLSHIES +BOLSHY +BOLSON +BOLSONS +BOLSTER +BOLSTERED +BOLSTERER +BOLSTERERS +BOLSTERING +BOLSTERS +BOLT +BOLTED +BOLTER +BOLTERS +BOLTHEAD +BOLTHEADS +BOLTHOLE +BOLTHOLES +BOLTING +BOLTLESS +BOLTLIKE +BOLTONIA +BOLTONIAS +BOLTROPE +BOLTROPES +BOLTS +BOLUS +BOLUSES +BOMB +BOMBABLE +BOMBARD +BOMBARDED +BOMBARDER +BOMBARDERS +BOMBARDIER +BOMBARDIERS +BOMBARDING +BOMBARDMENT +BOMBARDMENTS +BOMBARDON +BOMBARDONS +BOMBARDS +BOMBAST +BOMBASTER +BOMBASTERS +BOMBASTIC +BOMBASTICALLY +BOMBASTS +BOMBAX +BOMBAZINE +BOMBAZINES +BOMBE +BOMBED +BOMBER +BOMBERS +BOMBES +BOMBESIN +BOMBESINS +BOMBINATE +BOMBINATED +BOMBINATES +BOMBINATING +BOMBINATION +BOMBINATIONS +BOMBING +BOMBINGS +BOMBLET +BOMBLETS +BOMBLOAD +BOMBLOADS +BOMBPROOF +BOMBPROOFED +BOMBPROOFING +BOMBPROOFS +BOMBS +BOMBSHELL +BOMBSHELLS +BOMBSIGHT +BOMBSIGHTS +BOMBYCID +BOMBYCIDS +BOMBYCOID +BOMBYX +BOMBYXES +BONACI +BONACIS +BONANZA +BONANZAS +BONBON +BONBONS +BOND +BONDABLE +BONDAGE +BONDAGES +BONDED +BONDER +BONDERS +BONDHOLDER +BONDHOLDERS +BONDING +BONDINGS +BONDLESS +BONDMAID +BONDMAIDS +BONDMAN +BONDMEN +BONDS +BONDSMAN +BONDSMEN +BONDSTONE +BONDSTONES +BONDUC +BONDUCS +BONDWOMAN +BONDWOMEN +BONE +BONEBLACK +BONEBLACKS +BONED +BONEFISH +BONEFISHES +BONEFISHING +BONEFISHINGS +BONEHEAD +BONEHEADED +BONEHEADEDNESS +BONEHEADS +BONELESS +BONEMEAL +BONEMEALS +BONER +BONERS +BONES +BONESET +BONESETS +BONESETTER +BONESETTERS +BONEY +BONEYARD +BONEYARDS +BONEYER +BONEYEST +BONFIRE +BONFIRES +BONG +BONGED +BONGING +BONGO +BONGOES +BONGOIST +BONGOISTS +BONGOS +BONGS +BONHOMIE +BONHOMIES +BONHOMOUS +BONIATO +BONIATOS +BONIER +BONIEST +BONIFACE +BONIFACES +BONINESS +BONINESSES +BONING +BONITA +BONITAS +BONITO +BONITOES +BONITOS +BONK +BONKED +BONKERS +BONKING +BONKS +BONNE +BONNES +BONNET +BONNETED +BONNETING +BONNETS +BONNIE +BONNIER +BONNIEST +BONNILY +BONNINESS +BONNINESSES +BONNOCK +BONNOCKS +BONNY +BONNYCLABBER +BONNYCLABBERS +BONOBO +BONOBOS +BONSAI +BONSPELL +BONSPELLS +BONSPIEL +BONSPIELS +BONTEBOK +BONTEBOKS +BONUS +BONUSES +BONY +BONZE +BONZER +BONZES +BOO +BOOB +BOOBED +BOOBIE +BOOBIES +BOOBING +BOOBIRD +BOOBIRDS +BOOBISH +BOOBOISIE +BOOBOISIES +BOOBOO +BOOBOOS +BOOBS +BOOBY +BOOCOO +BOOCOOS +BOODIES +BOODLE +BOODLED +BOODLER +BOODLERS +BOODLES +BOODLING +BOODY +BOOED +BOOGER +BOOGERMAN +BOOGERMEN +BOOGERS +BOOGEY +BOOGEYED +BOOGEYING +BOOGEYMAN +BOOGEYMEN +BOOGEYS +BOOGIE +BOOGIED +BOOGIEING +BOOGIEMAN +BOOGIEMEN +BOOGIES +BOOGY +BOOGYING +BOOGYMAN +BOOGYMEN +BOOHOO +BOOHOOED +BOOHOOING +BOOHOOS +BOOING +BOOJUM +BOOJUMS +BOOK +BOOKABLE +BOOKBINDER +BOOKBINDERIES +BOOKBINDERS +BOOKBINDERY +BOOKBINDING +BOOKBINDINGS +BOOKCASE +BOOKCASES +BOOKED +BOOKEND +BOOKENDS +BOOKER +BOOKERS +BOOKFUL +BOOKFULS +BOOKIE +BOOKIES +BOOKING +BOOKINGS +BOOKISH +BOOKISHLY +BOOKISHNESS +BOOKISHNESSES +BOOKKEEPER +BOOKKEEPERS +BOOKKEEPING +BOOKKEEPINGS +BOOKLET +BOOKLETS +BOOKLICE +BOOKLORE +BOOKLORES +BOOKLOUSE +BOOKMAKER +BOOKMAKERS +BOOKMAKING +BOOKMAKINGS +BOOKMAN +BOOKMARK +BOOKMARKED +BOOKMARKER +BOOKMARKERS +BOOKMARKING +BOOKMARKS +BOOKMEN +BOOKMOBILE +BOOKMOBILES +BOOKOO +BOOKOOS +BOOKPLATE +BOOKPLATES +BOOKRACK +BOOKRACKS +BOOKREST +BOOKRESTS +BOOKS +BOOKSELLER +BOOKSELLERS +BOOKSELLING +BOOKSELLINGS +BOOKSHELF +BOOKSHELVES +BOOKSHOP +BOOKSHOPS +BOOKSTALL +BOOKSTALLS +BOOKSTAND +BOOKSTANDS +BOOKSTORE +BOOKSTORES +BOOKWORM +BOOKWORMS +BOOM +BOOMBOX +BOOMBOXES +BOOMED +BOOMER +BOOMERANG +BOOMERANGED +BOOMERANGING +BOOMERANGS +BOOMERS +BOOMIER +BOOMIEST +BOOMING +BOOMINGLY +BOOMKIN +BOOMKINS +BOOMLET +BOOMLETS +BOOMS +BOOMTOWN +BOOMTOWNS +BOOMY +BOON +BOONDOCK +BOONDOCKS +BOONDOGGLE +BOONDOGGLED +BOONDOGGLER +BOONDOGGLERS +BOONDOGGLES +BOONDOGGLING +BOONIES +BOONLESS +BOONS +BOOR +BOORISH +BOORISHLY +BOORISHNESS +BOORISHNESSES +BOORS +BOOS +BOOST +BOOSTED +BOOSTER +BOOSTERISM +BOOSTERISMS +BOOSTERS +BOOSTING +BOOSTS +BOOT +BOOTABLE +BOOTBLACK +BOOTBLACKS +BOOTED +BOOTEE +BOOTEES +BOOTERIES +BOOTERY +BOOTH +BOOTHS +BOOTIE +BOOTIES +BOOTING +BOOTJACK +BOOTJACKS +BOOTLACE +BOOTLACES +BOOTLEG +BOOTLEGGED +BOOTLEGGER +BOOTLEGGERS +BOOTLEGGING +BOOTLEGS +BOOTLESS +BOOTLESSLY +BOOTLESSNESS +BOOTLESSNESSES +BOOTLICK +BOOTLICKED +BOOTLICKER +BOOTLICKERS +BOOTLICKING +BOOTLICKS +BOOTS +BOOTSTRAP +BOOTSTRAPPED +BOOTSTRAPPING +BOOTSTRAPS +BOOTY +BOOZE +BOOZED +BOOZER +BOOZERS +BOOZES +BOOZIER +BOOZIEST +BOOZILY +BOOZINESS +BOOZINESSES +BOOZING +BOOZY +BOP +BOPEEP +BOPEEPS +BOPPED +BOPPER +BOPPERS +BOPPING +BOPS +BORA +BORACES +BORACIC +BORACITE +BORACITES +BORAGE +BORAGES +BORAL +BORALS +BORANE +BORANES +BORAS +BORATE +BORATED +BORATES +BORATING +BORAX +BORAXES +BORBORYGMI +BORBORYGMUS +BORDEAUX +BORDEL +BORDELLO +BORDELLOS +BORDELS +BORDER +BORDEREAU +BORDEREAUX +BORDERED +BORDERER +BORDERERS +BORDERING +BORDERLAND +BORDERLANDS +BORDERLINE +BORDERLINES +BORDERS +BORDURE +BORDURES +BORE +BOREAL +BOREAS +BOREASES +BORECOLE +BORECOLES +BORED +BOREDOM +BOREDOMS +BOREEN +BOREENS +BOREHOLE +BOREHOLES +BORER +BORERS +BORES +BORESCOPE +BORESCOPES +BORESOME +BORIC +BORIDE +BORIDES +BORING +BORINGLY +BORINGNESS +BORINGNESSES +BORINGS +BORK +BORKED +BORKING +BORKS +BORN +BORNE +BORNEOL +BORNEOLS +BORNITE +BORNITES +BORNITIC +BOROHYDRIDE +BOROHYDRIDES +BORON +BORONIC +BORONS +BOROSILICATE +BOROSILICATES +BOROUGH +BOROUGHS +BORRELIA +BORRELIAS +BORROW +BORROWED +BORROWER +BORROWERS +BORROWING +BORROWINGS +BORROWS +BORSCH +BORSCHES +BORSCHT +BORSCHTS +BORSHT +BORSHTS +BORSTAL +BORSTALS +BORT +BORTS +BORTY +BORTZ +BORTZES +BORZOI +BORZOIS +BOS +BOSCAGE +BOSCAGES +BOSCHBOK +BOSCHBOKS +BOSCHVARK +BOSCHVARKS +BOSH +BOSHBOK +BOSHBOKS +BOSHES +BOSHVARK +BOSHVARKS +BOSK +BOSKAGE +BOSKAGES +BOSKER +BOSKET +BOSKETS +BOSKIER +BOSKIEST +BOSKINESS +BOSKINESSES +BOSKS +BOSKY +BOSOM +BOSOMED +BOSOMING +BOSOMS +BOSOMY +BOSON +BOSONIC +BOSONS +BOSQUE +BOSQUES +BOSQUET +BOSQUETS +BOSS +BOSSDOM +BOSSDOMS +BOSSED +BOSSES +BOSSIER +BOSSIES +BOSSIEST +BOSSILY +BOSSINESS +BOSSINESSES +BOSSING +BOSSISM +BOSSISMS +BOSSY +BOSTON +BOSTONS +BOSUN +BOSUNS +BOT +BOTA +BOTANIC +BOTANICA +BOTANICAL +BOTANICALLY +BOTANICALS +BOTANICAS +BOTANIES +BOTANISE +BOTANISED +BOTANISES +BOTANISING +BOTANIST +BOTANISTS +BOTANIZE +BOTANIZED +BOTANIZER +BOTANIZERS +BOTANIZES +BOTANIZING +BOTANY +BOTAS +BOTCH +BOTCHED +BOTCHEDLY +BOTCHER +BOTCHERIES +BOTCHERS +BOTCHERY +BOTCHES +BOTCHIER +BOTCHIEST +BOTCHILY +BOTCHING +BOTCHY +BOTEL +BOTELS +BOTFLIES +BOTFLY +BOTH +BOTHER +BOTHERATION +BOTHERATIONS +BOTHERED +BOTHERING +BOTHERS +BOTHERSOME +BOTHIES +BOTHRIA +BOTHRIUM +BOTHRIUMS +BOTHY +BOTONEE +BOTONNEE +BOTRYOID +BOTRYOIDAL +BOTRYOSE +BOTRYTIS +BOTRYTISES +BOTS +BOTT +BOTTLE +BOTTLEBRUSH +BOTTLEBRUSHES +BOTTLED +BOTTLEFUL +BOTTLEFULS +BOTTLENECK +BOTTLENECKED +BOTTLENECKING +BOTTLENECKS +BOTTLER +BOTTLERS +BOTTLES +BOTTLING +BOTTLINGS +BOTTOM +BOTTOMED +BOTTOMER +BOTTOMERS +BOTTOMING +BOTTOMLAND +BOTTOMLANDS +BOTTOMLESS +BOTTOMLESSLY +BOTTOMLESSNESS +BOTTOMMOST +BOTTOMRIES +BOTTOMRY +BOTTOMS +BOTTS +BOTULIN +BOTULINAL +BOTULINS +BOTULINUM +BOTULINUMS +BOTULINUS +BOTULINUSES +BOTULISM +BOTULISMS +BOUBOU +BOUBOUS +BOUCHEE +BOUCHEES +BOUCLE +BOUCLES +BOUDIN +BOUDINS +BOUDOIR +BOUDOIRS +BOUFFANT +BOUFFANTS +BOUFFE +BOUFFES +BOUGAINVILLAEA +BOUGAINVILLAEAS +BOUGAINVILLEA +BOUGAINVILLEAS +BOUGH +BOUGHED +BOUGHLESS +BOUGHPOT +BOUGHPOTS +BOUGHS +BOUGHT +BOUGHTEN +BOUGIE +BOUGIES +BOUILLABAISSE +BOUILLABAISSES +BOUILLON +BOUILLONS +BOULDER +BOULDERED +BOULDERER +BOULDERERS +BOULDERING +BOULDERS +BOULDERY +BOULE +BOULES +BOULEVARD +BOULEVARDIER +BOULEVARDIERS +BOULEVARDS +BOULEVERSEMENT +BOULEVERSEMENTS +BOULLE +BOULLES +BOUNCE +BOUNCED +BOUNCER +BOUNCERS +BOUNCES +BOUNCIER +BOUNCIEST +BOUNCILY +BOUNCING +BOUNCINGLY +BOUNCY +BOUND +BOUNDABLE +BOUNDARIES +BOUNDARY +BOUNDED +BOUNDEDNESS +BOUNDEDNESSES +BOUNDEN +BOUNDER +BOUNDERISH +BOUNDERS +BOUNDING +BOUNDLESS +BOUNDLESSLY +BOUNDLESSNESS +BOUNDLESSNESSES +BOUNDNESS +BOUNDNESSES +BOUNDS +BOUNTEOUS +BOUNTEOUSLY +BOUNTEOUSNESS +BOUNTEOUSNESSES +BOUNTIED +BOUNTIES +BOUNTIFUL +BOUNTIFULLY +BOUNTIFULNESS +BOUNTIFULNESSES +BOUNTY +BOUQUET +BOUQUETS +BOURBON +BOURBONISM +BOURBONISMS +BOURBONS +BOURDON +BOURDONS +BOURG +BOURGEOIS +BOURGEOISE +BOURGEOISES +BOURGEOISIE +BOURGEOISIES +BOURGEOISIFIED +BOURGEOISIFIES +BOURGEOISIFY +BOURGEOISIFYING +BOURGEON +BOURGEONED +BOURGEONING +BOURGEONS +BOURGS +BOURGUIGNON +BOURGUIGNONNE +BOURN +BOURNE +BOURNES +BOURNS +BOURREE +BOURREES +BOURRIDE +BOURRIDES +BOURSE +BOURSES +BOURSIN +BOURSINS +BOURTREE +BOURTREES +BOUSE +BOUSED +BOUSES +BOUSING +BOUSOUKI +BOUSOUKIA +BOUSOUKIS +BOUSTROPHEDON +BOUSTROPHEDONIC +BOUSTROPHEDONS +BOUSY +BOUT +BOUTIQUE +BOUTIQUES +BOUTIQUEY +BOUTON +BOUTONNIERE +BOUTONNIERES +BOUTONS +BOUTS +BOUVARDIA +BOUVARDIAS +BOUVIER +BOUVIERS +BOUZOUKI +BOUZOUKIA +BOUZOUKIS +BOVID +BOVIDS +BOVINE +BOVINELY +BOVINES +BOVINITIES +BOVINITY +BOW +BOWDLERISE +BOWDLERISED +BOWDLERISES +BOWDLERISING +BOWDLERIZATION +BOWDLERIZATIONS +BOWDLERIZE +BOWDLERIZED +BOWDLERIZER +BOWDLERIZERS +BOWDLERIZES +BOWDLERIZING +BOWED +BOWEL +BOWELED +BOWELING +BOWELLED +BOWELLESS +BOWELLING +BOWELS +BOWER +BOWERBIRD +BOWERBIRDS +BOWERED +BOWERIES +BOWERING +BOWERS +BOWERY +BOWFIN +BOWFINS +BOWFRONT +BOWHEAD +BOWHEADS +BOWHUNTER +BOWHUNTERS +BOWING +BOWINGLY +BOWINGS +BOWKNOT +BOWKNOTS +BOWL +BOWLDER +BOWLDERS +BOWLED +BOWLEG +BOWLEGGED +BOWLEGS +BOWLER +BOWLERS +BOWLESS +BOWLFUL +BOWLFULS +BOWLIKE +BOWLINE +BOWLINES +BOWLING +BOWLINGS +BOWLLIKE +BOWLS +BOWMAN +BOWMEN +BOWPOT +BOWPOTS +BOWS +BOWSE +BOWSED +BOWSES +BOWSHOT +BOWSHOTS +BOWSING +BOWSPRIT +BOWSPRITS +BOWSTRING +BOWSTRINGED +BOWSTRINGING +BOWSTRINGS +BOWSTRUNG +BOWWOW +BOWWOWED +BOWWOWING +BOWWOWS +BOWYER +BOWYERS +BOX +BOXBALL +BOXBALLS +BOXBERRIES +BOXBERRY +BOXBOARD +BOXBOARDS +BOXCAR +BOXCARS +BOXED +BOXER +BOXERS +BOXES +BOXFISH +BOXFISHES +BOXFUL +BOXFULS +BOXHAUL +BOXHAULED +BOXHAULING +BOXHAULS +BOXIER +BOXIEST +BOXILY +BOXINESS +BOXINESSES +BOXING +BOXINGS +BOXLIKE +BOXTHORN +BOXTHORNS +BOXWOOD +BOXWOODS +BOXY +BOY +BOYAR +BOYARD +BOYARDS +BOYARISM +BOYARISMS +BOYARS +BOYCHICK +BOYCHICKS +BOYCHIK +BOYCHIKS +BOYCOTT +BOYCOTTED +BOYCOTTER +BOYCOTTERS +BOYCOTTING +BOYCOTTS +BOYFRIEND +BOYFRIENDS +BOYHOOD +BOYHOODS +BOYISH +BOYISHLY +BOYISHNESS +BOYISHNESSES +BOYLA +BOYLAS +BOYO +BOYOS +BOYS +BOYSENBERRIES +BOYSENBERRY +BOZO +BOZOS +BRA +BRABBLE +BRABBLED +BRABBLER +BRABBLERS +BRABBLES +BRABBLING +BRACE +BRACED +BRACELET +BRACELETS +BRACER +BRACERO +BRACEROS +BRACERS +BRACES +BRACH +BRACHES +BRACHET +BRACHETS +BRACHIA +BRACHIAL +BRACHIALS +BRACHIATE +BRACHIATED +BRACHIATES +BRACHIATING +BRACHIATION +BRACHIATIONS +BRACHIATOR +BRACHIATORS +BRACHIOPOD +BRACHIOPODS +BRACHIUM +BRACHS +BRACHYCEPHALIC +BRACHYCEPHALIES +BRACHYCEPHALY +BRACHYPTEROUS +BRACING +BRACINGLY +BRACINGS +BRACIOLA +BRACIOLAS +BRACIOLE +BRACIOLES +BRACKEN +BRACKENS +BRACKET +BRACKETED +BRACKETING +BRACKETS +BRACKISH +BRACKISHNESS +BRACKISHNESSES +BRACONID +BRACONIDS +BRACT +BRACTEAL +BRACTEATE +BRACTED +BRACTEOLE +BRACTEOLES +BRACTLESS +BRACTLET +BRACTLETS +BRACTS +BRAD +BRADAWL +BRADAWLS +BRADDED +BRADDING +BRADOON +BRADOONS +BRADS +BRADYCARDIA +BRADYCARDIAS +BRADYKININ +BRADYKININS +BRAE +BRAES +BRAG +BRAGGADOCIO +BRAGGADOCIOS +BRAGGART +BRAGGARTS +BRAGGED +BRAGGER +BRAGGERS +BRAGGEST +BRAGGIER +BRAGGIEST +BRAGGING +BRAGGY +BRAGS +BRAHMA +BRAHMAS +BRAID +BRAIDED +BRAIDER +BRAIDERS +BRAIDING +BRAIDINGS +BRAIDS +BRAIL +BRAILED +BRAILING +BRAILLE +BRAILLED +BRAILLER +BRAILLERS +BRAILLES +BRAILLEWRITER +BRAILLEWRITERS +BRAILLING +BRAILLIST +BRAILLISTS +BRAILS +BRAIN +BRAINCASE +BRAINCASES +BRAINCHILD +BRAINCHILDREN +BRAINED +BRAINIAC +BRAINIACS +BRAINIER +BRAINIEST +BRAINILY +BRAININESS +BRAININESSES +BRAINING +BRAINISH +BRAINLESS +BRAINLESSLY +BRAINLESSNESS +BRAINLESSNESSES +BRAINPAN +BRAINPANS +BRAINPOWER +BRAINPOWERS +BRAINS +BRAINSICK +BRAINSICKLY +BRAINSTEM +BRAINSTEMS +BRAINSTORM +BRAINSTORMED +BRAINSTORMER +BRAINSTORMERS +BRAINSTORMING +BRAINSTORMINGS +BRAINSTORMS +BRAINTEASER +BRAINTEASERS +BRAINWASH +BRAINWASHED +BRAINWASHER +BRAINWASHERS +BRAINWASHES +BRAINWASHING +BRAINWASHINGS +BRAINY +BRAISE +BRAISED +BRAISES +BRAISING +BRAIZE +BRAIZES +BRAKE +BRAKEAGE +BRAKEAGES +BRAKED +BRAKELESS +BRAKEMAN +BRAKEMEN +BRAKES +BRAKIER +BRAKIEST +BRAKING +BRAKY +BRALESS +BRAMBLE +BRAMBLED +BRAMBLES +BRAMBLIER +BRAMBLIEST +BRAMBLING +BRAMBLINGS +BRAMBLY +BRAN +BRANCH +BRANCHED +BRANCHES +BRANCHIA +BRANCHIAE +BRANCHIAL +BRANCHIER +BRANCHIEST +BRANCHING +BRANCHIOPOD +BRANCHIOPODS +BRANCHLESS +BRANCHLET +BRANCHLETS +BRANCHLINE +BRANCHLINES +BRANCHY +BRAND +BRANDED +BRANDER +BRANDERS +BRANDIED +BRANDIES +BRANDING +BRANDINGS +BRANDISH +BRANDISHED +BRANDISHES +BRANDISHING +BRANDLESS +BRANDLING +BRANDLINGS +BRANDS +BRANDY +BRANDYING +BRANK +BRANKS +BRANNED +BRANNER +BRANNERS +BRANNIER +BRANNIEST +BRANNIGAN +BRANNIGANS +BRANNING +BRANNY +BRANS +BRANT +BRANTAIL +BRANTAILS +BRANTS +BRAS +BRASH +BRASHER +BRASHES +BRASHEST +BRASHIER +BRASHIEST +BRASHLY +BRASHNESS +BRASHNESSES +BRASHY +BRASIER +BRASIERS +BRASIL +BRASILEIN +BRASILEINS +BRASILIN +BRASILINS +BRASILS +BRASS +BRASSAGE +BRASSAGES +BRASSARD +BRASSARDS +BRASSART +BRASSARTS +BRASSBOUND +BRASSED +BRASSERIE +BRASSERIES +BRASSES +BRASSICA +BRASSICAS +BRASSIE +BRASSIER +BRASSIERE +BRASSIERES +BRASSIES +BRASSIEST +BRASSILY +BRASSINESS +BRASSINESSES +BRASSING +BRASSISH +BRASSWARE +BRASSWARES +BRASSY +BRAT +BRATS +BRATTICE +BRATTICED +BRATTICES +BRATTICING +BRATTIER +BRATTIEST +BRATTINESS +BRATTINESSES +BRATTISH +BRATTLE +BRATTLED +BRATTLES +BRATTLING +BRATTY +BRATWURST +BRATWURSTS +BRAUNITE +BRAUNITES +BRAUNSCHWEIGER +BRAUNSCHWEIGERS +BRAVA +BRAVADO +BRAVADOES +BRAVADOS +BRAVAS +BRAVE +BRAVED +BRAVELY +BRAVENESS +BRAVENESSES +BRAVER +BRAVERIES +BRAVERS +BRAVERY +BRAVES +BRAVEST +BRAVI +BRAVING +BRAVO +BRAVOED +BRAVOES +BRAVOING +BRAVOS +BRAVURA +BRAVURAS +BRAVURE +BRAW +BRAWER +BRAWEST +BRAWL +BRAWLED +BRAWLER +BRAWLERS +BRAWLIE +BRAWLIER +BRAWLIEST +BRAWLING +BRAWLS +BRAWLY +BRAWN +BRAWNIER +BRAWNIEST +BRAWNILY +BRAWNINESS +BRAWNINESSES +BRAWNS +BRAWNY +BRAWS +BRAXIES +BRAXY +BRAY +BRAYED +BRAYER +BRAYERS +BRAYING +BRAYS +BRAZA +BRAZAS +BRAZE +BRAZED +BRAZEN +BRAZENED +BRAZENING +BRAZENLY +BRAZENNESS +BRAZENNESSES +BRAZENS +BRAZER +BRAZERS +BRAZES +BRAZIER +BRAZIERS +BRAZIL +BRAZILEIN +BRAZILEINS +BRAZILIN +BRAZILINS +BRAZILS +BRAZILWOOD +BRAZILWOODS +BRAZING +BREACH +BREACHED +BREACHER +BREACHERS +BREACHES +BREACHING +BREAD +BREADBASKET +BREADBASKETS +BREADBOARD +BREADBOARDED +BREADBOARDING +BREADBOARDS +BREADBOX +BREADBOXES +BREADED +BREADFRUIT +BREADFRUITS +BREADING +BREADLESS +BREADLINE +BREADLINES +BREADNUT +BREADNUTS +BREADROOT +BREADROOTS +BREADS +BREADSTUFF +BREADSTUFFS +BREADTH +BREADTHS +BREADTHWISE +BREADWINNER +BREADWINNERS +BREADWINNING +BREADWINNINGS +BREADY +BREAK +BREAKABLE +BREAKABLES +BREAKAGE +BREAKAGES +BREAKAWAY +BREAKAWAYS +BREAKDOWN +BREAKDOWNS +BREAKER +BREAKERS +BREAKEVEN +BREAKEVENS +BREAKFAST +BREAKFASTED +BREAKFASTER +BREAKFASTERS +BREAKFASTING +BREAKFASTS +BREAKFRONT +BREAKFRONTS +BREAKING +BREAKINGS +BREAKNECK +BREAKOUT +BREAKOUTS +BREAKS +BREAKTHROUGH +BREAKTHROUGHS +BREAKUP +BREAKUPS +BREAKWALL +BREAKWALLS +BREAKWATER +BREAKWATERS +BREAM +BREAMED +BREAMING +BREAMS +BREAST +BREASTBONE +BREASTBONES +BREASTED +BREASTFED +BREASTFEED +BREASTFEEDING +BREASTFEEDS +BREASTING +BREASTPIN +BREASTPINS +BREASTPLATE +BREASTPLATES +BREASTS +BREASTSTROKE +BREASTSTROKER +BREASTSTROKERS +BREASTSTROKES +BREASTWORK +BREASTWORKS +BREATH +BREATHABILITIES +BREATHABILITY +BREATHABLE +BREATHE +BREATHED +BREATHER +BREATHERS +BREATHES +BREATHIER +BREATHIEST +BREATHILY +BREATHINESS +BREATHINESSES +BREATHING +BREATHINGS +BREATHLESS +BREATHLESSLY +BREATHLESSNESS +BREATHS +BREATHTAKING +BREATHTAKINGLY +BREATHY +BRECCIA +BRECCIAL +BRECCIAS +BRECCIATE +BRECCIATED +BRECCIATES +BRECCIATING +BRECCIATION +BRECCIATIONS +BRECHAM +BRECHAMS +BRECHAN +BRECHANS +BRED +BREDE +BREDES +BREE +BREECH +BREECHBLOCK +BREECHBLOCKS +BREECHCLOTH +BREECHCLOTHS +BREECHCLOUT +BREECHCLOUTS +BREECHED +BREECHES +BREECHING +BREECHINGS +BREECHLOADER +BREECHLOADERS +BREED +BREEDER +BREEDERS +BREEDING +BREEDINGS +BREEDS +BREEKS +BREES +BREEZE +BREEZED +BREEZELESS +BREEZES +BREEZEWAY +BREEZEWAYS +BREEZIER +BREEZIEST +BREEZILY +BREEZINESS +BREEZINESSES +BREEZING +BREEZY +BREGMA +BREGMATA +BREGMATE +BREGMATIC +BREMSSTRAHLUNG +BREMSSTRAHLUNGS +BREN +BRENS +BRENT +BRENTS +BRETHREN +BREVE +BREVES +BREVET +BREVETCIES +BREVETCY +BREVETED +BREVETING +BREVETS +BREVETTED +BREVETTING +BREVIARIES +BREVIARY +BREVIER +BREVIERS +BREVITIES +BREVITY +BREW +BREWAGE +BREWAGES +BREWED +BREWER +BREWERIES +BREWERS +BREWERY +BREWING +BREWINGS +BREWIS +BREWISES +BREWPUB +BREWPUBS +BREWS +BREWSKI +BREWSKIES +BREWSKIS +BRIAR +BRIARD +BRIARDS +BRIARROOT +BRIARROOTS +BRIARS +BRIARWOOD +BRIARWOODS +BRIARY +BRIBABLE +BRIBE +BRIBED +BRIBEE +BRIBEES +BRIBER +BRIBERIES +BRIBERS +BRIBERY +BRIBES +BRIBING +BRICK +BRICKBAT +BRICKBATS +BRICKED +BRICKFIELD +BRICKFIELDS +BRICKIER +BRICKIEST +BRICKING +BRICKKILN +BRICKKILNS +BRICKLAYER +BRICKLAYERS +BRICKLAYING +BRICKLAYINGS +BRICKLE +BRICKLES +BRICKLIKE +BRICKS +BRICKWORK +BRICKWORKS +BRICKY +BRICKYARD +BRICKYARDS +BRICOLAGE +BRICOLAGES +BRICOLE +BRICOLES +BRIDAL +BRIDALLY +BRIDALS +BRIDE +BRIDEGROOM +BRIDEGROOMS +BRIDES +BRIDESMAID +BRIDESMAIDS +BRIDEWELL +BRIDEWELLS +BRIDGE +BRIDGEABLE +BRIDGED +BRIDGEHEAD +BRIDGEHEADS +BRIDGELESS +BRIDGES +BRIDGEWORK +BRIDGEWORKS +BRIDGING +BRIDGINGS +BRIDLE +BRIDLED +BRIDLER +BRIDLERS +BRIDLES +BRIDLING +BRIDOON +BRIDOONS +BRIE +BRIEF +BRIEFCASE +BRIEFCASES +BRIEFED +BRIEFER +BRIEFERS +BRIEFEST +BRIEFING +BRIEFINGS +BRIEFLESS +BRIEFLY +BRIEFNESS +BRIEFNESSES +BRIEFS +BRIER +BRIERROOT +BRIERROOTS +BRIERS +BRIERWOOD +BRIERWOODS +BRIERY +BRIES +BRIG +BRIGADE +BRIGADED +BRIGADES +BRIGADIER +BRIGADIERS +BRIGADING +BRIGAND +BRIGANDAGE +BRIGANDAGES +BRIGANDINE +BRIGANDINES +BRIGANDS +BRIGANTINE +BRIGANTINES +BRIGHT +BRIGHTEN +BRIGHTENED +BRIGHTENER +BRIGHTENERS +BRIGHTENING +BRIGHTENS +BRIGHTER +BRIGHTEST +BRIGHTISH +BRIGHTLY +BRIGHTNESS +BRIGHTNESSES +BRIGHTS +BRIGHTWORK +BRIGHTWORKS +BRIGS +BRILL +BRILLIANCE +BRILLIANCES +BRILLIANCIES +BRILLIANCY +BRILLIANT +BRILLIANTINE +BRILLIANTINES +BRILLIANTLY +BRILLIANTS +BRILLO +BRILLOS +BRILLS +BRIM +BRIMFUL +BRIMFULL +BRIMFULLY +BRIMLESS +BRIMMED +BRIMMER +BRIMMERS +BRIMMING +BRIMS +BRIMSTONE +BRIMSTONES +BRIMSTONY +BRIN +BRINDED +BRINDLE +BRINDLED +BRINDLES +BRINE +BRINED +BRINELESS +BRINER +BRINERS +BRINES +BRING +BRINGDOWN +BRINGDOWNS +BRINGER +BRINGERS +BRINGING +BRINGS +BRINIER +BRINIES +BRINIEST +BRININESS +BRININESSES +BRINING +BRINISH +BRINK +BRINKMANSHIP +BRINKMANSHIPS +BRINKS +BRINKSMANSHIP +BRINKSMANSHIPS +BRINS +BRINY +BRIO +BRIOCHE +BRIOCHES +BRIOLETTE +BRIOLETTES +BRIONIES +BRIONY +BRIOS +BRIQUET +BRIQUETS +BRIQUETTE +BRIQUETTED +BRIQUETTES +BRIQUETTING +BRIS +BRISANCE +BRISANCES +BRISANT +BRISES +BRISK +BRISKED +BRISKER +BRISKEST +BRISKET +BRISKETS +BRISKING +BRISKLY +BRISKNESS +BRISKNESSES +BRISKS +BRISLING +BRISLINGS +BRISS +BRISSES +BRISTLE +BRISTLED +BRISTLELIKE +BRISTLES +BRISTLETAIL +BRISTLETAILS +BRISTLIER +BRISTLIEST +BRISTLING +BRISTLY +BRISTOL +BRISTOLS +BRIT +BRITANNIA +BRITANNIAS +BRITCHES +BRITH +BRITHS +BRITS +BRITSKA +BRITSKAS +BRITT +BRITTANIA +BRITTANIAS +BRITTLE +BRITTLED +BRITTLELY +BRITTLENESS +BRITTLENESSES +BRITTLER +BRITTLES +BRITTLEST +BRITTLING +BRITTLY +BRITTS +BRITZKA +BRITZKAS +BRITZSKA +BRITZSKAS +BRO +BROACH +BROACHED +BROACHER +BROACHERS +BROACHES +BROACHING +BROAD +BROADAX +BROADAXE +BROADAXES +BROADBAND +BROADBANDS +BROADBEAN +BROADBEANS +BROADBILL +BROADBILLS +BROADCAST +BROADCASTED +BROADCASTER +BROADCASTERS +BROADCASTING +BROADCASTS +BROADCLOTH +BROADCLOTHS +BROADEN +BROADENED +BROADENER +BROADENERS +BROADENING +BROADENS +BROADER +BROADEST +BROADISH +BROADLEAF +BROADLEAVES +BROADLOOM +BROADLOOMS +BROADLY +BROADNESS +BROADNESSES +BROADS +BROADSCALE +BROADSHEET +BROADSHEETS +BROADSIDE +BROADSIDED +BROADSIDES +BROADSIDING +BROADSWORD +BROADSWORDS +BROADTAIL +BROADTAILS +BROCADE +BROCADED +BROCADES +BROCADING +BROCATEL +BROCATELLE +BROCATELLES +BROCATELS +BROCCOLI +BROCCOLIS +BROCHE +BROCHETTE +BROCHETTES +BROCHURE +BROCHURES +BROCK +BROCKAGE +BROCKAGES +BROCKET +BROCKETS +BROCKS +BROCOLI +BROCOLIS +BROGAN +BROGANS +BROGUE +BROGUERIES +BROGUERY +BROGUES +BROGUISH +BROIDER +BROIDERED +BROIDERER +BROIDERERS +BROIDERIES +BROIDERING +BROIDERS +BROIDERY +BROIL +BROILED +BROILER +BROILERS +BROILING +BROILS +BROKAGE +BROKAGES +BROKE +BROKEN +BROKENHEARTED +BROKENLY +BROKENNESS +BROKENNESSES +BROKER +BROKERAGE +BROKERAGES +BROKERED +BROKERING +BROKERINGS +BROKERS +BROKING +BROKINGS +BROLLIES +BROLLY +BROMAL +BROMALS +BROMATE +BROMATED +BROMATES +BROMATING +BROME +BROMEGRASS +BROMEGRASSES +BROMELAIN +BROMELAINS +BROMELIAD +BROMELIADS +BROMELIN +BROMELINS +BROMES +BROMIC +BROMID +BROMIDE +BROMIDES +BROMIDIC +BROMIDS +BROMIN +BROMINATE +BROMINATED +BROMINATES +BROMINATING +BROMINATION +BROMINATIONS +BROMINE +BROMINES +BROMINISM +BROMINISMS +BROMINS +BROMISM +BROMISMS +BROMIZE +BROMIZED +BROMIZES +BROMIZING +BROMO +BROMOCRIPTINE +BROMOCRIPTINES +BROMOS +BROMOURACIL +BROMOURACILS +BRONC +BRONCHI +BRONCHIA +BRONCHIAL +BRONCHIALLY +BRONCHIECTASES +BRONCHIECTASIS +BRONCHIOLAR +BRONCHIOLE +BRONCHIOLES +BRONCHITIC +BRONCHITIS +BRONCHITISES +BRONCHIUM +BRONCHO +BRONCHODILATOR +BRONCHODILATORS +BRONCHOGENIC +BRONCHOS +BRONCHOSCOPE +BRONCHOSCOPES +BRONCHOSCOPIC +BRONCHOSCOPIES +BRONCHOSCOPIST +BRONCHOSCOPISTS +BRONCHOSCOPY +BRONCHOSPASM +BRONCHOSPASMS +BRONCHOSPASTIC +BRONCHUS +BRONCO +BRONCOBUSTER +BRONCOBUSTERS +BRONCOS +BRONCS +BRONTOSAUR +BRONTOSAURS +BRONTOSAURUS +BRONTOSAURUSES +BRONZE +BRONZED +BRONZER +BRONZERS +BRONZES +BRONZIER +BRONZIEST +BRONZING +BRONZINGS +BRONZY +BROO +BROOCH +BROOCHES +BROOD +BROODED +BROODER +BROODERS +BROODIER +BROODIEST +BROODILY +BROODINESS +BROODINESSES +BROODING +BROODINGLY +BROODLESS +BROODMARE +BROODMARES +BROODS +BROODY +BROOK +BROOKED +BROOKIE +BROOKIES +BROOKING +BROOKITE +BROOKITES +BROOKLET +BROOKLETS +BROOKLIKE +BROOKLIME +BROOKLIMES +BROOKS +BROOM +BROOMBALL +BROOMBALLER +BROOMBALLERS +BROOMBALLS +BROOMCORN +BROOMCORNS +BROOMED +BROOMIER +BROOMIEST +BROOMING +BROOMRAPE +BROOMRAPES +BROOMS +BROOMSTICK +BROOMSTICKS +BROOMY +BROOS +BROS +BROSE +BROSES +BROSY +BROTH +BROTHEL +BROTHELS +BROTHER +BROTHERED +BROTHERHOOD +BROTHERHOODS +BROTHERING +BROTHERLINESS +BROTHERLINESSES +BROTHERLY +BROTHERS +BROTHS +BROTHY +BROUGHAM +BROUGHAMS +BROUGHT +BROUHAHA +BROUHAHAS +BROW +BROWALLIA +BROWALLIAS +BROWBAND +BROWBANDS +BROWBEAT +BROWBEATEN +BROWBEATING +BROWBEATS +BROWED +BROWLESS +BROWN +BROWNED +BROWNER +BROWNEST +BROWNFIELD +BROWNFIELDS +BROWNIE +BROWNIER +BROWNIES +BROWNIEST +BROWNING +BROWNISH +BROWNNESS +BROWNNESSES +BROWNNOSE +BROWNNOSED +BROWNNOSER +BROWNNOSERS +BROWNNOSES +BROWNNOSING +BROWNOUT +BROWNOUTS +BROWNS +BROWNSHIRT +BROWNSHIRTS +BROWNSTONE +BROWNSTONES +BROWNY +BROWRIDGE +BROWRIDGES +BROWS +BROWSABLE +BROWSABLES +BROWSE +BROWSED +BROWSER +BROWSERS +BROWSES +BROWSING +BRR +BRRR +BRUCELLA +BRUCELLAE +BRUCELLAS +BRUCELLOSES +BRUCELLOSIS +BRUCIN +BRUCINE +BRUCINES +BRUCINS +BRUGH +BRUGHS +BRUIN +BRUINS +BRUISE +BRUISED +BRUISER +BRUISERS +BRUISES +BRUISING +BRUIT +BRUITED +BRUITER +BRUITERS +BRUITING +BRUITS +BRULOT +BRULOTS +BRULYIE +BRULYIES +BRULZIE +BRULZIES +BRUMAL +BRUMBIES +BRUMBY +BRUME +BRUMES +BRUMMAGEM +BRUMMAGEMS +BRUMOUS +BRUNCH +BRUNCHED +BRUNCHER +BRUNCHERS +BRUNCHES +BRUNCHING +BRUNET +BRUNETS +BRUNETTE +BRUNETTES +BRUNG +BRUNIZEM +BRUNIZEMS +BRUNT +BRUNTS +BRUSH +BRUSHABILITIES +BRUSHABILITY +BRUSHBACK +BRUSHBACKS +BRUSHED +BRUSHER +BRUSHERS +BRUSHES +BRUSHFIRE +BRUSHFIRES +BRUSHIER +BRUSHIEST +BRUSHING +BRUSHLAND +BRUSHLANDS +BRUSHLESS +BRUSHOFF +BRUSHOFFS +BRUSHUP +BRUSHUPS +BRUSHWOOD +BRUSHWOODS +BRUSHWORK +BRUSHWORKS +BRUSHY +BRUSK +BRUSKER +BRUSKEST +BRUSQUE +BRUSQUELY +BRUSQUENESS +BRUSQUENESSES +BRUSQUER +BRUSQUERIE +BRUSQUERIES +BRUSQUEST +BRUT +BRUTAL +BRUTALISE +BRUTALISED +BRUTALISES +BRUTALISING +BRUTALITIES +BRUTALITY +BRUTALIZATION +BRUTALIZATIONS +BRUTALIZE +BRUTALIZED +BRUTALIZES +BRUTALIZING +BRUTALLY +BRUTE +BRUTED +BRUTELY +BRUTES +BRUTIFIED +BRUTIFIES +BRUTIFY +BRUTIFYING +BRUTING +BRUTISH +BRUTISHLY +BRUTISHNESS +BRUTISHNESSES +BRUTISM +BRUTISMS +BRUTS +BRUX +BRUXED +BRUXES +BRUXING +BRUXISM +BRUXISMS +BRYOLOGICAL +BRYOLOGIES +BRYOLOGIST +BRYOLOGISTS +BRYOLOGY +BRYONIES +BRYONY +BRYOPHYLLUM +BRYOPHYLLUMS +BRYOPHYTE +BRYOPHYTES +BRYOPHYTIC +BRYOZOAN +BRYOZOANS +BUB +BUBAL +BUBALE +BUBALES +BUBALINE +BUBALIS +BUBALISES +BUBALS +BUBBA +BUBBAS +BUBBIES +BUBBLE +BUBBLED +BUBBLEGUM +BUBBLEGUMS +BUBBLEHEAD +BUBBLEHEADED +BUBBLEHEADS +BUBBLER +BUBBLERS +BUBBLES +BUBBLIER +BUBBLIES +BUBBLIEST +BUBBLING +BUBBLY +BUBBY +BUBINGA +BUBINGAS +BUBKES +BUBO +BUBOED +BUBOES +BUBONIC +BUBS +BUBU +BUBUS +BUCCAL +BUCCALLY +BUCCANEER +BUCCANEERED +BUCCANEERING +BUCCANEERISH +BUCCANEERS +BUCCINATOR +BUCCINATORS +BUCK +BUCKAROO +BUCKAROOS +BUCKAYRO +BUCKAYROS +BUCKBEAN +BUCKBEANS +BUCKBOARD +BUCKBOARDS +BUCKBRUSH +BUCKBRUSHES +BUCKED +BUCKEEN +BUCKEENS +BUCKER +BUCKEROO +BUCKEROOS +BUCKERS +BUCKET +BUCKETED +BUCKETFUL +BUCKETFULS +BUCKETING +BUCKETS +BUCKETSFUL +BUCKEYE +BUCKEYES +BUCKHOUND +BUCKHOUNDS +BUCKING +BUCKISH +BUCKLE +BUCKLED +BUCKLER +BUCKLERED +BUCKLERING +BUCKLERS +BUCKLES +BUCKLING +BUCKO +BUCKOES +BUCKOS +BUCKRA +BUCKRAM +BUCKRAMED +BUCKRAMING +BUCKRAMS +BUCKRAS +BUCKS +BUCKSAW +BUCKSAWS +BUCKSHEE +BUCKSHEES +BUCKSHOT +BUCKSKIN +BUCKSKINNED +BUCKSKINS +BUCKTAIL +BUCKTAILS +BUCKTEETH +BUCKTHORN +BUCKTHORNS +BUCKTOOTH +BUCKTOOTHED +BUCKWHEAT +BUCKWHEATS +BUCKYBALL +BUCKYBALLS +BUCKYTUBE +BUCKYTUBES +BUCOLIC +BUCOLICALLY +BUCOLICS +BUD +BUDDED +BUDDER +BUDDERS +BUDDHA +BUDDHAS +BUDDIED +BUDDIES +BUDDING +BUDDINGS +BUDDLE +BUDDLEIA +BUDDLEIAS +BUDDLES +BUDDY +BUDDYING +BUDGE +BUDGED +BUDGER +BUDGERIGAR +BUDGERIGARS +BUDGERS +BUDGES +BUDGET +BUDGETARY +BUDGETED +BUDGETEER +BUDGETEERS +BUDGETER +BUDGETERS +BUDGETING +BUDGETS +BUDGIE +BUDGIES +BUDGING +BUDLESS +BUDLIKE +BUDS +BUDWORM +BUDWORMS +BUFF +BUFFABLE +BUFFALO +BUFFALOBERRIES +BUFFALOBERRY +BUFFALOED +BUFFALOES +BUFFALOFISH +BUFFALOFISHES +BUFFALOING +BUFFALOS +BUFFED +BUFFER +BUFFERED +BUFFERING +BUFFERS +BUFFEST +BUFFET +BUFFETED +BUFFETER +BUFFETERS +BUFFETING +BUFFETS +BUFFI +BUFFIER +BUFFIEST +BUFFING +BUFFLEHEAD +BUFFLEHEADS +BUFFO +BUFFOON +BUFFOONERIES +BUFFOONERY +BUFFOONISH +BUFFOONS +BUFFOS +BUFFS +BUFFY +BUG +BUGABOO +BUGABOOS +BUGBANE +BUGBANES +BUGBEAR +BUGBEARS +BUGEYE +BUGEYES +BUGGED +BUGGER +BUGGERED +BUGGERIES +BUGGERING +BUGGERS +BUGGERY +BUGGIER +BUGGIES +BUGGIEST +BUGGINESS +BUGGINESSES +BUGGING +BUGGY +BUGHOUSE +BUGHOUSES +BUGLE +BUGLED +BUGLER +BUGLERS +BUGLES +BUGLEWEED +BUGLEWEEDS +BUGLING +BUGLOSS +BUGLOSSES +BUGOUT +BUGOUTS +BUGS +BUGSEED +BUGSEEDS +BUGSHA +BUGSHAS +BUHL +BUHLS +BUHLWORK +BUHLWORKS +BUHR +BUHRS +BUHRSTONE +BUHRSTONES +BUILD +BUILDABLE +BUILDDOWN +BUILDDOWNS +BUILDED +BUILDER +BUILDERS +BUILDING +BUILDINGS +BUILDS +BUILDUP +BUILDUPS +BUILT +BUIRDLY +BULB +BULBAR +BULBED +BULBEL +BULBELS +BULBIL +BULBILS +BULBLET +BULBLETS +BULBOUS +BULBOUSLY +BULBS +BULBUL +BULBULS +BULGE +BULGED +BULGER +BULGERS +BULGES +BULGHUR +BULGHURS +BULGIER +BULGIEST +BULGINESS +BULGINESSES +BULGING +BULGINGLY +BULGUR +BULGURS +BULGY +BULIMIA +BULIMIAC +BULIMIAS +BULIMIC +BULIMICS +BULK +BULKAGE +BULKAGES +BULKED +BULKHEAD +BULKHEADS +BULKIER +BULKIEST +BULKILY +BULKINESS +BULKINESSES +BULKING +BULKS +BULKY +BULL +BULLA +BULLACE +BULLACES +BULLAE +BULLATE +BULLBAITING +BULLBAITINGS +BULLBAT +BULLBATS +BULLBRIER +BULLBRIERS +BULLDOG +BULLDOGGED +BULLDOGGER +BULLDOGGERS +BULLDOGGING +BULLDOGGINGS +BULLDOGS +BULLDOZE +BULLDOZED +BULLDOZER +BULLDOZERS +BULLDOZES +BULLDOZING +BULLDYKE +BULLDYKES +BULLED +BULLET +BULLETED +BULLETIN +BULLETINED +BULLETING +BULLETINING +BULLETINS +BULLETPROOF +BULLETS +BULLFIGHT +BULLFIGHTER +BULLFIGHTERS +BULLFIGHTING +BULLFIGHTINGS +BULLFIGHTS +BULLFINCH +BULLFINCHES +BULLFROG +BULLFROGS +BULLHEAD +BULLHEADED +BULLHEADEDLY +BULLHEADEDNESS +BULLHEADS +BULLHORN +BULLHORNS +BULLIED +BULLIER +BULLIES +BULLIEST +BULLING +BULLION +BULLIONS +BULLISH +BULLISHLY +BULLISHNESS +BULLISHNESSES +BULLMASTIFF +BULLMASTIFFS +BULLNECK +BULLNECKED +BULLNECKS +BULLNOSE +BULLNOSES +BULLOCK +BULLOCKS +BULLOCKY +BULLOUS +BULLPEN +BULLPENS +BULLPOUT +BULLPOUTS +BULLRING +BULLRINGS +BULLRUSH +BULLRUSHES +BULLS +BULLSHAT +BULLSHIT +BULLSHITS +BULLSHITTED +BULLSHITTING +BULLSHOT +BULLSHOTS +BULLSNAKE +BULLSNAKES +BULLTERRIER +BULLTERRIERS +BULLWEED +BULLWEEDS +BULLWHIP +BULLWHIPPED +BULLWHIPPING +BULLWHIPS +BULLY +BULLYBOY +BULLYBOYS +BULLYING +BULLYRAG +BULLYRAGGED +BULLYRAGGING +BULLYRAGS +BULRUSH +BULRUSHES +BULWARK +BULWARKED +BULWARKING +BULWARKS +BUM +BUMBERSHOOT +BUMBERSHOOTS +BUMBLE +BUMBLEBEE +BUMBLEBEES +BUMBLED +BUMBLER +BUMBLERS +BUMBLES +BUMBLING +BUMBLINGLY +BUMBLINGS +BUMBOAT +BUMBOATS +BUMELIA +BUMELIAS +BUMF +BUMFS +BUMFUZZLE +BUMFUZZLED +BUMFUZZLES +BUMFUZZLING +BUMKIN +BUMKINS +BUMMALO +BUMMALOS +BUMMED +BUMMER +BUMMERS +BUMMEST +BUMMING +BUMP +BUMPED +BUMPER +BUMPERED +BUMPERING +BUMPERS +BUMPH +BUMPHS +BUMPIER +BUMPIEST +BUMPILY +BUMPINESS +BUMPINESSES +BUMPING +BUMPKIN +BUMPKINISH +BUMPKINLY +BUMPKINS +BUMPS +BUMPTIOUS +BUMPTIOUSLY +BUMPTIOUSNESS +BUMPTIOUSNESSES +BUMPY +BUMS +BUN +BUNA +BUNAS +BUNCH +BUNCHBERRIES +BUNCHBERRY +BUNCHED +BUNCHES +BUNCHGRASS +BUNCHGRASSES +BUNCHIER +BUNCHIEST +BUNCHILY +BUNCHING +BUNCHY +BUNCO +BUNCOED +BUNCOING +BUNCOMBE +BUNCOMBES +BUNCOS +BUND +BUNDIST +BUNDISTS +BUNDLE +BUNDLED +BUNDLER +BUNDLERS +BUNDLES +BUNDLING +BUNDLINGS +BUNDS +BUNDT +BUNDTS +BUNG +BUNGALOW +BUNGALOWS +BUNGED +BUNGEE +BUNGEES +BUNGHOLE +BUNGHOLES +BUNGING +BUNGLE +BUNGLED +BUNGLER +BUNGLERS +BUNGLES +BUNGLESOME +BUNGLING +BUNGLINGLY +BUNGLINGS +BUNGS +BUNION +BUNIONS +BUNK +BUNKED +BUNKER +BUNKERED +BUNKERING +BUNKERS +BUNKHOUSE +BUNKHOUSES +BUNKING +BUNKMATE +BUNKMATES +BUNKO +BUNKOED +BUNKOING +BUNKOS +BUNKS +BUNKUM +BUNKUMS +BUNN +BUNNIES +BUNNS +BUNNY +BUNRAKU +BUNRAKUS +BUNS +BUNT +BUNTED +BUNTER +BUNTERS +BUNTING +BUNTINGS +BUNTLINE +BUNTLINES +BUNTS +BUNYA +BUNYAS +BUOY +BUOYAGE +BUOYAGES +BUOYANCE +BUOYANCES +BUOYANCIES +BUOYANCY +BUOYANT +BUOYANTLY +BUOYED +BUOYING +BUOYS +BUPKES +BUPKUS +BUPPIE +BUPPIES +BUPPY +BUPRESTID +BUPRESTIDS +BUQSHA +BUQSHAS +BUR +BURA +BURAN +BURANS +BURAS +BURB +BURBLE +BURBLED +BURBLER +BURBLERS +BURBLES +BURBLIER +BURBLIEST +BURBLING +BURBLY +BURBOT +BURBOTS +BURBS +BURD +BURDEN +BURDENED +BURDENER +BURDENERS +BURDENING +BURDENS +BURDENSOME +BURDIE +BURDIES +BURDOCK +BURDOCKS +BURDS +BUREAU +BUREAUCRACIES +BUREAUCRACY +BUREAUCRAT +BUREAUCRATESE +BUREAUCRATESES +BUREAUCRATIC +BUREAUCRATISE +BUREAUCRATISED +BUREAUCRATISES +BUREAUCRATISING +BUREAUCRATISM +BUREAUCRATISMS +BUREAUCRATIZE +BUREAUCRATIZED +BUREAUCRATIZES +BUREAUCRATIZING +BUREAUCRATS +BUREAUS +BUREAUX +BURET +BURETS +BURETTE +BURETTES +BURG +BURGAGE +BURGAGES +BURGEE +BURGEES +BURGEON +BURGEONED +BURGEONING +BURGEONS +BURGER +BURGERS +BURGESS +BURGESSES +BURGH +BURGHAL +BURGHER +BURGHERS +BURGHS +BURGLAR +BURGLARIES +BURGLARIOUS +BURGLARIOUSLY +BURGLARIZE +BURGLARIZED +BURGLARIZES +BURGLARIZING +BURGLARPROOF +BURGLARS +BURGLARY +BURGLE +BURGLED +BURGLES +BURGLING +BURGOMASTER +BURGOMASTERS +BURGONET +BURGONETS +BURGOO +BURGOOS +BURGOUT +BURGOUTS +BURGRAVE +BURGRAVES +BURGS +BURGUNDIES +BURGUNDY +BURIAL +BURIALS +BURIED +BURIER +BURIERS +BURIES +BURIN +BURINS +BURKA +BURKAS +BURKE +BURKED +BURKER +BURKERS +BURKES +BURKING +BURKITE +BURKITES +BURL +BURLADERO +BURLADEROS +BURLAP +BURLAPS +BURLED +BURLER +BURLERS +BURLESK +BURLESKS +BURLESQUE +BURLESQUED +BURLESQUELY +BURLESQUER +BURLESQUERS +BURLESQUES +BURLESQUING +BURLEY +BURLEYS +BURLIER +BURLIEST +BURLILY +BURLINESS +BURLINESSES +BURLING +BURLS +BURLY +BURN +BURNABLE +BURNABLES +BURNED +BURNER +BURNERS +BURNET +BURNETS +BURNIE +BURNIES +BURNING +BURNINGLY +BURNINGS +BURNISH +BURNISHED +BURNISHER +BURNISHERS +BURNISHES +BURNISHING +BURNISHINGS +BURNOOSE +BURNOOSED +BURNOOSES +BURNOUS +BURNOUSES +BURNOUT +BURNOUTS +BURNS +BURNSIDES +BURNT +BURP +BURPED +BURPING +BURPS +BURQA +BURQAS +BURR +BURRED +BURRER +BURRERS +BURRIER +BURRIEST +BURRING +BURRITO +BURRITOS +BURRO +BURROS +BURROW +BURROWED +BURROWER +BURROWERS +BURROWING +BURROWS +BURRS +BURRSTONE +BURRSTONES +BURRY +BURS +BURSA +BURSAE +BURSAL +BURSAR +BURSARIAL +BURSARIES +BURSARS +BURSARY +BURSAS +BURSATE +BURSE +BURSEED +BURSEEDS +BURSERA +BURSES +BURSIFORM +BURSITIS +BURSITISES +BURST +BURSTED +BURSTER +BURSTERS +BURSTING +BURSTONE +BURSTONES +BURSTS +BURTHEN +BURTHENED +BURTHENING +BURTHENS +BURTON +BURTONS +BURWEED +BURWEEDS +BURY +BURYING +BUS +BUSBAR +BUSBARS +BUSBIES +BUSBOY +BUSBOYS +BUSBY +BUSED +BUSES +BUSGIRL +BUSGIRLS +BUSH +BUSHBUCK +BUSHBUCKS +BUSHED +BUSHEL +BUSHELED +BUSHELER +BUSHELERS +BUSHELING +BUSHELLED +BUSHELLER +BUSHELLERS +BUSHELLING +BUSHELMAN +BUSHELMEN +BUSHELS +BUSHER +BUSHERS +BUSHES +BUSHFIRE +BUSHFIRES +BUSHGOAT +BUSHGOATS +BUSHIDO +BUSHIDOS +BUSHIER +BUSHIEST +BUSHILY +BUSHINESS +BUSHINESSES +BUSHING +BUSHINGS +BUSHLAND +BUSHLANDS +BUSHLESS +BUSHLIKE +BUSHMAN +BUSHMASTER +BUSHMASTERS +BUSHMEN +BUSHPIG +BUSHPIGS +BUSHRANGER +BUSHRANGERS +BUSHRANGING +BUSHRANGINGS +BUSHTIT +BUSHTITS +BUSHVELD +BUSHVELDS +BUSHWA +BUSHWAH +BUSHWAHS +BUSHWAS +BUSHWHACK +BUSHWHACKED +BUSHWHACKER +BUSHWHACKERS +BUSHWHACKING +BUSHWHACKS +BUSHY +BUSIED +BUSIER +BUSIES +BUSIEST +BUSILY +BUSINESS +BUSINESSES +BUSINESSLIKE +BUSINESSMAN +BUSINESSMEN +BUSINESSPEOPLE +BUSINESSPERSON +BUSINESSPERSONS +BUSINESSWOMAN +BUSINESSWOMEN +BUSING +BUSINGS +BUSK +BUSKED +BUSKER +BUSKERS +BUSKIN +BUSKINED +BUSKING +BUSKINS +BUSKS +BUSLOAD +BUSLOADS +BUSMAN +BUSMEN +BUSS +BUSSED +BUSSES +BUSSING +BUSSINGS +BUST +BUSTARD +BUSTARDS +BUSTED +BUSTER +BUSTERS +BUSTIC +BUSTICATE +BUSTICATED +BUSTICATES +BUSTICATING +BUSTICS +BUSTIER +BUSTIERS +BUSTIEST +BUSTINESS +BUSTINESSES +BUSTING +BUSTLE +BUSTLED +BUSTLER +BUSTLERS +BUSTLES +BUSTLINE +BUSTLINES +BUSTLING +BUSTLINGLY +BUSTS +BUSTY +BUSULFAN +BUSULFANS +BUSY +BUSYBODIES +BUSYBODY +BUSYING +BUSYNESS +BUSYNESSES +BUSYWORK +BUSYWORKS +BUT +BUTADIENE +BUTADIENES +BUTANE +BUTANES +BUTANOL +BUTANOLS +BUTANONE +BUTANONES +BUTCH +BUTCHER +BUTCHERED +BUTCHERER +BUTCHERERS +BUTCHERIES +BUTCHERING +BUTCHERLY +BUTCHERS +BUTCHERY +BUTCHES +BUTCHNESS +BUTCHNESSES +BUTE +BUTENE +BUTENES +BUTEO +BUTEONINE +BUTEONINES +BUTEOS +BUTES +BUTLE +BUTLED +BUTLER +BUTLERIES +BUTLERS +BUTLERY +BUTLES +BUTLING +BUTS +BUTT +BUTTALS +BUTTE +BUTTED +BUTTER +BUTTERBALL +BUTTERBALLS +BUTTERBUR +BUTTERBURS +BUTTERCUP +BUTTERCUPS +BUTTERED +BUTTERFAT +BUTTERFATS +BUTTERFINGERED +BUTTERFINGERS +BUTTERFISH +BUTTERFISHES +BUTTERFLIED +BUTTERFLIES +BUTTERFLY +BUTTERFLYER +BUTTERFLYERS +BUTTERFLYING +BUTTERIER +BUTTERIES +BUTTERIEST +BUTTERING +BUTTERLESS +BUTTERMILK +BUTTERMILKS +BUTTERNUT +BUTTERNUTS +BUTTERS +BUTTERSCOTCH +BUTTERSCOTCHES +BUTTERWEED +BUTTERWEEDS +BUTTERWORT +BUTTERWORTS +BUTTERY +BUTTES +BUTTHEAD +BUTTHEADS +BUTTIES +BUTTING +BUTTINSKI +BUTTINSKIES +BUTTINSKIS +BUTTINSKY +BUTTOCK +BUTTOCKS +BUTTON +BUTTONBALL +BUTTONBALLS +BUTTONBUSH +BUTTONBUSHES +BUTTONED +BUTTONER +BUTTONERS +BUTTONHOLE +BUTTONHOLED +BUTTONHOLER +BUTTONHOLERS +BUTTONHOLES +BUTTONHOLING +BUTTONHOOK +BUTTONHOOKED +BUTTONHOOKING +BUTTONHOOKS +BUTTONING +BUTTONLESS +BUTTONS +BUTTONWOOD +BUTTONWOODS +BUTTONY +BUTTRESS +BUTTRESSED +BUTTRESSES +BUTTRESSING +BUTTS +BUTTSTOCK +BUTTSTOCKS +BUTTY +BUTUT +BUTUTS +BUTYL +BUTYLATE +BUTYLATED +BUTYLATES +BUTYLATING +BUTYLATION +BUTYLATIONS +BUTYLENE +BUTYLENES +BUTYLS +BUTYRAL +BUTYRALDEHYDE +BUTYRALDEHYDES +BUTYRALS +BUTYRATE +BUTYRATES +BUTYRIC +BUTYRIN +BUTYRINS +BUTYROPHENONE +BUTYROPHENONES +BUTYROUS +BUTYRYL +BUTYRYLS +BUXOM +BUXOMER +BUXOMEST +BUXOMLY +BUXOMNESS +BUXOMNESSES +BUY +BUYABLE +BUYBACK +BUYBACKS +BUYER +BUYERS +BUYING +BUYOFF +BUYOFFS +BUYOUT +BUYOUTS +BUYS +BUZUKI +BUZUKIA +BUZUKIS +BUZZ +BUZZARD +BUZZARDS +BUZZCUT +BUZZCUTS +BUZZED +BUZZER +BUZZERS +BUZZES +BUZZING +BUZZINGLY +BUZZWIG +BUZZWIGS +BUZZWORD +BUZZWORDS +BWANA +BWANAS +BY +BYCATCH +BYCATCHES +BYE +BYELAW +BYELAWS +BYES +BYGONE +BYGONES +BYLAW +BYLAWS +BYLINE +BYLINED +BYLINER +BYLINERS +BYLINES +BYLINING +BYNAME +BYNAMES +BYPASS +BYPASSED +BYPASSES +BYPASSING +BYPAST +BYPATH +BYPATHS +BYPLAY +BYPLAYS +BYPRODUCT +BYPRODUCTS +BYRE +BYRES +BYRL +BYRLED +BYRLING +BYRLS +BYRNIE +BYRNIES +BYROAD +BYROADS +BYS +BYSSAL +BYSSI +BYSSINOSES +BYSSINOSIS +BYSSUS +BYSSUSES +BYSTANDER +BYSTANDERS +BYSTREET +BYSTREETS +BYTALK +BYTALKS +BYTE +BYTES +BYWAY +BYWAYS +BYWORD +BYWORDS +BYWORK +BYWORKS +BYZANT +BYZANTINE +BYZANTS +CAB +CABAL +CABALA +CABALAS +CABALETTA +CABALETTAS +CABALETTE +CABALISM +CABALISMS +CABALIST +CABALISTIC +CABALISTS +CABALLED +CABALLERO +CABALLEROS +CABALLING +CABALS +CABANA +CABANAS +CABARET +CABARETS +CABBAGE +CABBAGED +CABBAGES +CABBAGEWORM +CABBAGEWORMS +CABBAGEY +CABBAGING +CABBAGY +CABBALA +CABBALAH +CABBALAHS +CABBALAS +CABBALISM +CABBALISMS +CABBALIST +CABBALISTS +CABBED +CABBIE +CABBIES +CABBING +CABBY +CABDRIVER +CABDRIVERS +CABER +CABERNET +CABERNETS +CABERS +CABESTRO +CABESTROS +CABEZON +CABEZONE +CABEZONES +CABEZONS +CABILDO +CABILDOS +CABIN +CABINED +CABINET +CABINETMAKER +CABINETMAKERS +CABINETMAKING +CABINETMAKINGS +CABINETRIES +CABINETRY +CABINETS +CABINETWORK +CABINETWORKS +CABINING +CABINMATE +CABINMATES +CABINS +CABLE +CABLECAST +CABLECASTED +CABLECASTING +CABLECASTS +CABLED +CABLEGRAM +CABLEGRAMS +CABLER +CABLERS +CABLES +CABLET +CABLETS +CABLEWAY +CABLEWAYS +CABLING +CABMAN +CABMEN +CABOB +CABOBS +CABOCHED +CABOCHON +CABOCHONS +CABOMBA +CABOMBAS +CABOODLE +CABOODLES +CABOOSE +CABOOSES +CABOSHED +CABOTAGE +CABOTAGES +CABRESTA +CABRESTAS +CABRESTO +CABRESTOS +CABRETTA +CABRETTAS +CABRILLA +CABRILLAS +CABRIOLE +CABRIOLES +CABRIOLET +CABRIOLETS +CABS +CABSTAND +CABSTANDS +CACA +CACAO +CACAOS +CACAS +CACCIATORE +CACHALOT +CACHALOTS +CACHE +CACHECTIC +CACHED +CACHEPOT +CACHEPOTS +CACHES +CACHET +CACHETED +CACHETING +CACHETS +CACHEXIA +CACHEXIAS +CACHEXIC +CACHEXIES +CACHEXY +CACHING +CACHINNATE +CACHINNATED +CACHINNATES +CACHINNATING +CACHINNATION +CACHINNATIONS +CACHOU +CACHOUS +CACHUCHA +CACHUCHAS +CACIQUE +CACIQUES +CACIQUISM +CACIQUISMS +CACKLE +CACKLED +CACKLER +CACKLERS +CACKLES +CACKLING +CACODEMON +CACODEMONIC +CACODEMONS +CACODYL +CACODYLIC +CACODYLS +CACOETHES +CACOGRAPHICAL +CACOGRAPHIES +CACOGRAPHY +CACOMISTLE +CACOMISTLES +CACOMIXL +CACOMIXLE +CACOMIXLES +CACOMIXLS +CACONYM +CACONYMIES +CACONYMS +CACONYMY +CACOPHONIES +CACOPHONOUS +CACOPHONOUSLY +CACOPHONY +CACTI +CACTOID +CACTUS +CACTUSES +CACUMINAL +CACUMINALS +CAD +CADASTER +CADASTERS +CADASTRAL +CADASTRALLY +CADASTRE +CADASTRES +CADAVER +CADAVERIC +CADAVERINE +CADAVERINES +CADAVEROUS +CADAVEROUSLY +CADAVERS +CADDICE +CADDICES +CADDIE +CADDIED +CADDIES +CADDIS +CADDISED +CADDISES +CADDISFLIES +CADDISFLY +CADDISH +CADDISHLY +CADDISHNESS +CADDISHNESSES +CADDISWORM +CADDISWORMS +CADDY +CADDYING +CADE +CADELLE +CADELLES +CADENCE +CADENCED +CADENCES +CADENCIES +CADENCING +CADENCY +CADENT +CADENTIAL +CADENZA +CADENZAS +CADES +CADET +CADETS +CADETSHIP +CADETSHIPS +CADGE +CADGED +CADGER +CADGERS +CADGES +CADGING +CADGY +CADI +CADIS +CADMIC +CADMIUM +CADMIUMS +CADRE +CADRES +CADS +CADUCEAN +CADUCEI +CADUCEUS +CADUCITIES +CADUCITY +CADUCOUS +CAECA +CAECAL +CAECALLY +CAECILIAN +CAECILIANS +CAECUM +CAEOMA +CAEOMAS +CAESAR +CAESAREAN +CAESAREANS +CAESARIAN +CAESARIANS +CAESARISM +CAESARISMS +CAESARS +CAESIUM +CAESIUMS +CAESPITOSE +CAESTUS +CAESTUSES +CAESURA +CAESURAE +CAESURAL +CAESURAS +CAESURIC +CAFE +CAFES +CAFETERIA +CAFETERIAS +CAFETORIA +CAFETORIUM +CAFETORIUMS +CAFF +CAFFEIN +CAFFEINATED +CAFFEINE +CAFFEINES +CAFFEINIC +CAFFEINS +CAFFS +CAFTAN +CAFTANED +CAFTANS +CAGE +CAGED +CAGEFUL +CAGEFULS +CAGELIKE +CAGELING +CAGELINGS +CAGER +CAGERS +CAGES +CAGEY +CAGEYNESS +CAGEYNESSES +CAGIER +CAGIEST +CAGILY +CAGINESS +CAGINESSES +CAGING +CAGY +CAHIER +CAHIERS +CAHOOT +CAHOOTS +CAHOW +CAHOWS +CAID +CAIDS +CAIMAN +CAIMANS +CAIN +CAINS +CAIQUE +CAIQUES +CAIRD +CAIRDS +CAIRN +CAIRNED +CAIRNGORM +CAIRNGORMS +CAIRNS +CAIRNY +CAISSON +CAISSONS +CAITIFF +CAITIFFS +CAJAPUT +CAJAPUTS +CAJEPUT +CAJEPUTS +CAJOLE +CAJOLED +CAJOLEMENT +CAJOLEMENTS +CAJOLER +CAJOLERIES +CAJOLERS +CAJOLERY +CAJOLES +CAJOLING +CAJON +CAJONES +CAJUPUT +CAJUPUTS +CAKE +CAKED +CAKES +CAKEWALK +CAKEWALKED +CAKEWALKER +CAKEWALKERS +CAKEWALKING +CAKEWALKS +CAKEY +CAKIER +CAKIEST +CAKINESS +CAKINESSES +CAKING +CAKY +CALABASH +CALABASHES +CALABAZA +CALABAZAS +CALABOOSE +CALABOOSES +CALADIUM +CALADIUMS +CALAMANCO +CALAMANCOES +CALAMANCOS +CALAMANDER +CALAMANDERS +CALAMAR +CALAMARI +CALAMARIES +CALAMARIS +CALAMARS +CALAMARY +CALAMATA +CALAMATAS +CALAMI +CALAMINE +CALAMINED +CALAMINES +CALAMINING +CALAMINT +CALAMINTS +CALAMITE +CALAMITES +CALAMITIES +CALAMITOUS +CALAMITOUSLY +CALAMITY +CALAMONDIN +CALAMONDINS +CALAMUS +CALANDO +CALASH +CALASHES +CALATHI +CALATHOS +CALATHUS +CALCANEA +CALCANEAL +CALCANEI +CALCANEUM +CALCANEUS +CALCAR +CALCARATE +CALCAREOUS +CALCAREOUSLY +CALCARIA +CALCARS +CALCEATE +CALCEDONIES +CALCEDONY +CALCES +CALCIC +CALCICOLE +CALCICOLES +CALCICOLOUS +CALCIFEROL +CALCIFEROLS +CALCIFEROUS +CALCIFIC +CALCIFICATION +CALCIFICATIONS +CALCIFIED +CALCIFIES +CALCIFUGE +CALCIFUGES +CALCIFUGOUS +CALCIFY +CALCIFYING +CALCIMINE +CALCIMINED +CALCIMINES +CALCIMINING +CALCINATION +CALCINATIONS +CALCINE +CALCINED +CALCINES +CALCINING +CALCINOSES +CALCINOSIS +CALCITE +CALCITES +CALCITIC +CALCITONIN +CALCITONINS +CALCIUM +CALCIUMS +CALCSPAR +CALCSPARS +CALCTUFA +CALCTUFAS +CALCTUFF +CALCTUFFS +CALCULABLE +CALCULATE +CALCULATED +CALCULATEDLY +CALCULATEDNESS +CALCULATES +CALCULATING +CALCULATINGLY +CALCULATION +CALCULATIONAL +CALCULATIONS +CALCULATOR +CALCULATORS +CALCULI +CALCULOUS +CALCULUS +CALCULUSES +CALDARIA +CALDARIUM +CALDERA +CALDERAS +CALDRON +CALDRONS +CALECHE +CALECHES +CALEFACTORIES +CALEFACTORY +CALENDAL +CALENDAR +CALENDARED +CALENDARING +CALENDARS +CALENDER +CALENDERED +CALENDERER +CALENDERERS +CALENDERING +CALENDERS +CALENDRIC +CALENDRICAL +CALENDS +CALENDULA +CALENDULAS +CALENTURE +CALENTURES +CALESA +CALESAS +CALESCENT +CALF +CALFLIKE +CALFS +CALFSKIN +CALFSKINS +CALIBER +CALIBERS +CALIBRATE +CALIBRATED +CALIBRATES +CALIBRATING +CALIBRATION +CALIBRATIONS +CALIBRATOR +CALIBRATORS +CALIBRE +CALIBRED +CALIBRES +CALICES +CALICHE +CALICHES +CALICLE +CALICLES +CALICO +CALICOES +CALICOS +CALIF +CALIFATE +CALIFATES +CALIFORNIUM +CALIFORNIUMS +CALIFS +CALIGINOUS +CALIPASH +CALIPASHES +CALIPEE +CALIPEES +CALIPER +CALIPERED +CALIPERING +CALIPERS +CALIPH +CALIPHAL +CALIPHATE +CALIPHATES +CALIPHS +CALISAYA +CALISAYAS +CALISTHENIC +CALISTHENICS +CALIX +CALK +CALKED +CALKER +CALKERS +CALKIN +CALKING +CALKINGS +CALKINS +CALKS +CALL +CALLA +CALLABLE +CALLALOO +CALLALOOS +CALLAN +CALLANS +CALLANT +CALLANTS +CALLAS +CALLBACK +CALLBACKS +CALLBOARD +CALLBOARDS +CALLBOY +CALLBOYS +CALLED +CALLEE +CALLEES +CALLER +CALLERS +CALLET +CALLETS +CALLIGRAPHER +CALLIGRAPHERS +CALLIGRAPHIC +CALLIGRAPHIES +CALLIGRAPHIST +CALLIGRAPHISTS +CALLIGRAPHY +CALLING +CALLINGS +CALLIOPE +CALLIOPES +CALLIPEE +CALLIPEES +CALLIPER +CALLIPERED +CALLIPERING +CALLIPERS +CALLIPYGIAN +CALLIPYGOUS +CALLITHUMP +CALLITHUMPIAN +CALLITHUMPS +CALLOSE +CALLOSES +CALLOSITIES +CALLOSITY +CALLOUS +CALLOUSED +CALLOUSES +CALLOUSING +CALLOUSLY +CALLOUSNESS +CALLOUSNESSES +CALLOW +CALLOWER +CALLOWEST +CALLOWNESS +CALLOWNESSES +CALLS +CALLUS +CALLUSED +CALLUSES +CALLUSING +CALM +CALMATIVE +CALMATIVES +CALMED +CALMER +CALMEST +CALMING +CALMINGLY +CALMLY +CALMNESS +CALMNESSES +CALMODULIN +CALMODULINS +CALMS +CALO +CALOMEL +CALOMELS +CALORIC +CALORICALLY +CALORICS +CALORIE +CALORIES +CALORIFIC +CALORIMETER +CALORIMETERS +CALORIMETRIC +CALORIMETRIES +CALORIMETRY +CALORIZE +CALORIZED +CALORIZES +CALORIZING +CALORY +CALOS +CALOTTE +CALOTTES +CALOTYPE +CALOTYPES +CALOYER +CALOYERS +CALPAC +CALPACK +CALPACKS +CALPACS +CALPAIN +CALPAINS +CALQUE +CALQUED +CALQUES +CALQUING +CALTHROP +CALTHROPS +CALTRAP +CALTRAPS +CALTROP +CALTROPS +CALUMET +CALUMETS +CALUMNIATE +CALUMNIATED +CALUMNIATES +CALUMNIATING +CALUMNIATION +CALUMNIATIONS +CALUMNIATOR +CALUMNIATORS +CALUMNIES +CALUMNIOUS +CALUMNIOUSLY +CALUMNY +CALUTRON +CALUTRONS +CALVADOS +CALVADOSES +CALVARIA +CALVARIAL +CALVARIAN +CALVARIAS +CALVARIES +CALVARIUM +CALVARIUMS +CALVARY +CALVE +CALVED +CALVES +CALVING +CALVITIES +CALX +CALXES +CALYCATE +CALYCEAL +CALYCES +CALYCINAL +CALYCINE +CALYCLE +CALYCLES +CALYCULAR +CALYCULI +CALYCULUS +CALYPSO +CALYPSOES +CALYPSONIAN +CALYPSONIANS +CALYPSOS +CALYPTER +CALYPTERS +CALYPTRA +CALYPTRAS +CALYX +CALYXES +CALZONE +CALZONES +CAM +CAMAIL +CAMAILED +CAMAILS +CAMARADERIE +CAMARADERIES +CAMARILLA +CAMARILLAS +CAMAS +CAMASES +CAMASS +CAMASSES +CAMBER +CAMBERED +CAMBERING +CAMBERS +CAMBIA +CAMBIAL +CAMBISM +CAMBISMS +CAMBIST +CAMBISTS +CAMBIUM +CAMBIUMS +CAMBOGIA +CAMBOGIAS +CAMBRIC +CAMBRICS +CAMCORDER +CAMCORDERS +CAME +CAMEL +CAMELBACK +CAMELBACKS +CAMELEER +CAMELEERS +CAMELHAIR +CAMELHAIRS +CAMELIA +CAMELIAS +CAMELID +CAMELIDS +CAMELLIA +CAMELLIAS +CAMELLIKE +CAMELOPARD +CAMELOPARDS +CAMELS +CAMEO +CAMEOED +CAMEOING +CAMEOS +CAMERA +CAMERAE +CAMERAL +CAMERAMAN +CAMERAMEN +CAMERAPERSON +CAMERAPERSONS +CAMERAS +CAMERAWOMAN +CAMERAWOMEN +CAMERLENGO +CAMERLENGOS +CAMES +CAMION +CAMIONS +CAMISA +CAMISADE +CAMISADES +CAMISADO +CAMISADOES +CAMISADOS +CAMISAS +CAMISE +CAMISES +CAMISIA +CAMISIAS +CAMISOLE +CAMISOLES +CAMLET +CAMLETS +CAMMIE +CAMMIES +CAMO +CAMOMILE +CAMOMILES +CAMORRA +CAMORRAS +CAMORRIST +CAMORRISTA +CAMORRISTI +CAMORRISTS +CAMOS +CAMOUFLAGE +CAMOUFLAGEABLE +CAMOUFLAGED +CAMOUFLAGES +CAMOUFLAGIC +CAMOUFLAGING +CAMP +CAMPAGNA +CAMPAGNE +CAMPAIGN +CAMPAIGNED +CAMPAIGNER +CAMPAIGNERS +CAMPAIGNING +CAMPAIGNS +CAMPANILE +CAMPANILES +CAMPANILI +CAMPANOLOGIES +CAMPANOLOGIST +CAMPANOLOGISTS +CAMPANOLOGY +CAMPANULA +CAMPANULAS +CAMPANULATE +CAMPCRAFT +CAMPCRAFTS +CAMPED +CAMPER +CAMPERS +CAMPESINO +CAMPESINOS +CAMPESTRAL +CAMPFIRE +CAMPFIRES +CAMPGROUND +CAMPGROUNDS +CAMPHENE +CAMPHENES +CAMPHINE +CAMPHINES +CAMPHIRE +CAMPHIRES +CAMPHOL +CAMPHOLS +CAMPHOR +CAMPHORACEOUS +CAMPHORATE +CAMPHORATED +CAMPHORATES +CAMPHORATING +CAMPHORIC +CAMPHORS +CAMPI +CAMPIER +CAMPIEST +CAMPILY +CAMPINESS +CAMPINESSES +CAMPING +CAMPINGS +CAMPION +CAMPIONS +CAMPO +CAMPONG +CAMPONGS +CAMPOREE +CAMPOREES +CAMPOS +CAMPOUT +CAMPOUTS +CAMPS +CAMPSHIRT +CAMPSHIRTS +CAMPSITE +CAMPSITES +CAMPSTOOL +CAMPSTOOLS +CAMPUS +CAMPUSED +CAMPUSES +CAMPUSING +CAMPY +CAMPYLOBACTER +CAMPYLOBACTERS +CAMPYLOTROPOUS +CAMS +CAMSHAFT +CAMSHAFTS +CAN +CANAILLE +CANAILLES +CANAKIN +CANAKINS +CANAL +CANALBOAT +CANALBOATS +CANALED +CANALICULAR +CANALICULI +CANALICULUS +CANALING +CANALISE +CANALISED +CANALISES +CANALISING +CANALIZATION +CANALIZATIONS +CANALIZE +CANALIZED +CANALIZES +CANALIZING +CANALLED +CANALLER +CANALLERS +CANALLING +CANALS +CANAPE +CANAPES +CANARD +CANARDS +CANARIES +CANARY +CANASTA +CANASTAS +CANCAN +CANCANS +CANCEL +CANCELABLE +CANCELATION +CANCELATIONS +CANCELED +CANCELER +CANCELERS +CANCELING +CANCELLABLE +CANCELLATION +CANCELLATIONS +CANCELLED +CANCELLER +CANCELLERS +CANCELLING +CANCELLOUS +CANCELS +CANCER +CANCERED +CANCEROUS +CANCEROUSLY +CANCERS +CANCHA +CANCHAS +CANCROID +CANCROIDS +CANDELA +CANDELABRA +CANDELABRAS +CANDELABRUM +CANDELABRUMS +CANDELAS +CANDENT +CANDESCENCE +CANDESCENCES +CANDESCENT +CANDID +CANDIDA +CANDIDACIES +CANDIDACY +CANDIDAL +CANDIDAS +CANDIDATE +CANDIDATES +CANDIDATURE +CANDIDATURES +CANDIDER +CANDIDEST +CANDIDIASES +CANDIDIASIS +CANDIDLY +CANDIDNESS +CANDIDNESSES +CANDIDS +CANDIED +CANDIES +CANDLE +CANDLEBERRIES +CANDLEBERRY +CANDLED +CANDLEFISH +CANDLEFISHES +CANDLEHOLDER +CANDLEHOLDERS +CANDLELIGHT +CANDLELIGHTED +CANDLELIGHTER +CANDLELIGHTERS +CANDLELIGHTS +CANDLELIT +CANDLENUT +CANDLENUTS +CANDLEPIN +CANDLEPINS +CANDLEPOWER +CANDLEPOWERS +CANDLER +CANDLERS +CANDLES +CANDLESNUFFER +CANDLESNUFFERS +CANDLESTICK +CANDLESTICKS +CANDLEWICK +CANDLEWICKS +CANDLEWOOD +CANDLEWOODS +CANDLING +CANDOR +CANDORS +CANDOUR +CANDOURS +CANDY +CANDYFLOSS +CANDYFLOSSES +CANDYGRAM +CANDYGRAMS +CANDYING +CANDYTUFT +CANDYTUFTS +CANE +CANEBRAKE +CANEBRAKES +CANED +CANELLA +CANELLAS +CANEPHOR +CANEPHORS +CANER +CANERS +CANES +CANESCENT +CANEWARE +CANEWARES +CANFIELD +CANFIELDS +CANFUL +CANFULS +CANGUE +CANGUES +CANICULAR +CANID +CANIDS +CANIKIN +CANIKINS +CANINE +CANINES +CANING +CANINITIES +CANINITY +CANISTEL +CANISTELS +CANISTER +CANISTERS +CANITIES +CANKER +CANKERED +CANKERING +CANKEROUS +CANKERS +CANKERWORM +CANKERWORMS +CANNA +CANNABIC +CANNABIN +CANNABINOID +CANNABINOIDS +CANNABINOL +CANNABINOLS +CANNABINS +CANNABIS +CANNABISES +CANNAS +CANNED +CANNEL +CANNELLONI +CANNELON +CANNELONS +CANNELS +CANNER +CANNERIES +CANNERS +CANNERY +CANNIBAL +CANNIBALISE +CANNIBALISED +CANNIBALISES +CANNIBALISING +CANNIBALISM +CANNIBALISMS +CANNIBALISTIC +CANNIBALIZATION +CANNIBALIZE +CANNIBALIZED +CANNIBALIZES +CANNIBALIZING +CANNIBALS +CANNIE +CANNIER +CANNIEST +CANNIKIN +CANNIKINS +CANNILY +CANNINESS +CANNINESSES +CANNING +CANNINGS +CANNISTER +CANNISTERS +CANNOLI +CANNOLIS +CANNON +CANNONADE +CANNONADED +CANNONADES +CANNONADING +CANNONBALL +CANNONBALLED +CANNONBALLING +CANNONBALLS +CANNONED +CANNONEER +CANNONEERS +CANNONING +CANNONRIES +CANNONRY +CANNONS +CANNOT +CANNULA +CANNULAE +CANNULAR +CANNULAS +CANNULATE +CANNULATED +CANNULATES +CANNULATING +CANNY +CANOE +CANOEABLE +CANOED +CANOEING +CANOEIST +CANOEISTS +CANOER +CANOERS +CANOES +CANOLA +CANOLAS +CANON +CANONESS +CANONESSES +CANONIC +CANONICAL +CANONICALLY +CANONICALS +CANONICITIES +CANONICITY +CANONISE +CANONISED +CANONISES +CANONISING +CANONIST +CANONISTS +CANONIZATION +CANONIZATIONS +CANONIZE +CANONIZED +CANONIZER +CANONIZERS +CANONIZES +CANONIZING +CANONRIES +CANONRY +CANONS +CANOODLE +CANOODLED +CANOODLES +CANOODLING +CANOPIC +CANOPIED +CANOPIES +CANOPY +CANOPYING +CANOROUS +CANOROUSLY +CANOROUSNESS +CANOROUSNESSES +CANS +CANSFUL +CANSO +CANSOS +CANST +CANT +CANTABILE +CANTABILES +CANTAL +CANTALA +CANTALAS +CANTALOUP +CANTALOUPE +CANTALOUPES +CANTALOUPS +CANTALS +CANTANKEROUS +CANTANKEROUSLY +CANTATA +CANTATAS +CANTATRICE +CANTATRICES +CANTATRICI +CANTDOG +CANTDOGS +CANTED +CANTEEN +CANTEENS +CANTER +CANTERED +CANTERING +CANTERS +CANTHAL +CANTHARIDES +CANTHARIDIN +CANTHARIDINS +CANTHARIS +CANTHAXANTHIN +CANTHAXANTHINS +CANTHI +CANTHITIS +CANTHITISES +CANTHUS +CANTIC +CANTICLE +CANTICLES +CANTILENA +CANTILENAS +CANTILEVER +CANTILEVERED +CANTILEVERING +CANTILEVERS +CANTILLATE +CANTILLATED +CANTILLATES +CANTILLATING +CANTILLATION +CANTILLATIONS +CANTINA +CANTINAS +CANTING +CANTLE +CANTLES +CANTO +CANTON +CANTONAL +CANTONED +CANTONING +CANTONMENT +CANTONMENTS +CANTONS +CANTOR +CANTORIAL +CANTORS +CANTOS +CANTRAIP +CANTRAIPS +CANTRAP +CANTRAPS +CANTRIP +CANTRIPS +CANTS +CANTUS +CANTY +CANULA +CANULAE +CANULAR +CANULAS +CANULATE +CANULATED +CANULATES +CANULATING +CANVAS +CANVASBACK +CANVASBACKS +CANVASED +CANVASER +CANVASERS +CANVASES +CANVASING +CANVASLIKE +CANVASS +CANVASSED +CANVASSER +CANVASSERS +CANVASSES +CANVASSING +CANYON +CANYONEER +CANYONEERS +CANYONING +CANYONINGS +CANYONS +CANZONA +CANZONAS +CANZONE +CANZONES +CANZONET +CANZONETS +CANZONI +CAOUTCHOUC +CAOUTCHOUCS +CAP +CAPABILITIES +CAPABILITY +CAPABLE +CAPABLENESS +CAPABLENESSES +CAPABLER +CAPABLEST +CAPABLY +CAPACIOUS +CAPACIOUSLY +CAPACIOUSNESS +CAPACIOUSNESSES +CAPACITANCE +CAPACITANCES +CAPACITATE +CAPACITATED +CAPACITATES +CAPACITATING +CAPACITATION +CAPACITATIONS +CAPACITIES +CAPACITIVE +CAPACITIVELY +CAPACITOR +CAPACITORS +CAPACITY +CAPARISON +CAPARISONED +CAPARISONING +CAPARISONS +CAPE +CAPED +CAPELAN +CAPELANS +CAPELET +CAPELETS +CAPELIN +CAPELINS +CAPELLINI +CAPER +CAPERCAILLIE +CAPERCAILLIES +CAPERCAILZIE +CAPERCAILZIES +CAPERED +CAPERER +CAPERERS +CAPERING +CAPERS +CAPES +CAPESKIN +CAPESKINS +CAPEWORK +CAPEWORKS +CAPFUL +CAPFULS +CAPH +CAPHS +CAPIAS +CAPIASES +CAPILLARIES +CAPILLARITIES +CAPILLARITY +CAPILLARY +CAPITA +CAPITAL +CAPITALISE +CAPITALISED +CAPITALISES +CAPITALISING +CAPITALISM +CAPITALISMS +CAPITALIST +CAPITALISTIC +CAPITALISTS +CAPITALIZATION +CAPITALIZATIONS +CAPITALIZE +CAPITALIZED +CAPITALIZES +CAPITALIZING +CAPITALLY +CAPITALS +CAPITATE +CAPITATED +CAPITATION +CAPITATIONS +CAPITELLA +CAPITELLUM +CAPITOL +CAPITOLS +CAPITULA +CAPITULAR +CAPITULARIES +CAPITULARY +CAPITULATE +CAPITULATED +CAPITULATES +CAPITULATING +CAPITULATION +CAPITULATIONS +CAPITULUM +CAPIZ +CAPIZES +CAPLESS +CAPLET +CAPLETS +CAPLIN +CAPLINS +CAPMAKER +CAPMAKERS +CAPO +CAPOEIRA +CAPOEIRAS +CAPON +CAPONATA +CAPONATAS +CAPONIER +CAPONIERS +CAPONIZE +CAPONIZED +CAPONIZES +CAPONIZING +CAPONS +CAPORAL +CAPORALS +CAPOS +CAPOTE +CAPOTES +CAPOUCH +CAPOUCHES +CAPPED +CAPPELLETTI +CAPPER +CAPPERS +CAPPING +CAPPINGS +CAPPUCCINO +CAPPUCCINOS +CAPRIC +CAPRICCI +CAPRICCIO +CAPRICCIOS +CAPRICE +CAPRICES +CAPRICIOUS +CAPRICIOUSLY +CAPRICIOUSNESS +CAPRIFICATION +CAPRIFICATIONS +CAPRIFIG +CAPRIFIGS +CAPRINE +CAPRIOLE +CAPRIOLED +CAPRIOLES +CAPRIOLING +CAPRIS +CAPROCK +CAPROCKS +CAPROLACTAM +CAPROLACTAMS +CAPS +CAPSAICIN +CAPSAICINS +CAPSICIN +CAPSICINS +CAPSICUM +CAPSICUMS +CAPSID +CAPSIDAL +CAPSIDS +CAPSIZE +CAPSIZED +CAPSIZES +CAPSIZING +CAPSOMER +CAPSOMERE +CAPSOMERES +CAPSOMERS +CAPSTAN +CAPSTANS +CAPSTONE +CAPSTONES +CAPSULAR +CAPSULATE +CAPSULATED +CAPSULE +CAPSULED +CAPSULES +CAPSULING +CAPSULIZE +CAPSULIZED +CAPSULIZES +CAPSULIZING +CAPTAIN +CAPTAINCIES +CAPTAINCY +CAPTAINED +CAPTAINING +CAPTAINS +CAPTAINSHIP +CAPTAINSHIPS +CAPTAN +CAPTANS +CAPTION +CAPTIONED +CAPTIONING +CAPTIONLESS +CAPTIONS +CAPTIOUS +CAPTIOUSLY +CAPTIOUSNESS +CAPTIOUSNESSES +CAPTIVATE +CAPTIVATED +CAPTIVATES +CAPTIVATING +CAPTIVATION +CAPTIVATIONS +CAPTIVATOR +CAPTIVATORS +CAPTIVE +CAPTIVES +CAPTIVITIES +CAPTIVITY +CAPTOPRIL +CAPTOPRILS +CAPTOR +CAPTORS +CAPTURE +CAPTURED +CAPTURER +CAPTURERS +CAPTURES +CAPTURING +CAPUCHE +CAPUCHED +CAPUCHES +CAPUCHIN +CAPUCHINS +CAPUT +CAPYBARA +CAPYBARAS +CAR +CARABAO +CARABAOS +CARABID +CARABIDS +CARABIN +CARABINE +CARABINEER +CARABINEERS +CARABINER +CARABINERO +CARABINEROS +CARABINERS +CARABINES +CARABINIER +CARABINIERE +CARABINIERI +CARABINIERS +CARABINS +CARACAL +CARACALS +CARACARA +CARACARAS +CARACK +CARACKS +CARACOL +CARACOLE +CARACOLED +CARACOLER +CARACOLERS +CARACOLES +CARACOLING +CARACOLLED +CARACOLLING +CARACOLS +CARACUL +CARACULS +CARAFE +CARAFES +CARAGANA +CARAGANAS +CARAGEEN +CARAGEENS +CARAMBA +CARAMBOLA +CARAMBOLAS +CARAMEL +CARAMELISE +CARAMELISED +CARAMELISES +CARAMELISING +CARAMELIZE +CARAMELIZED +CARAMELIZES +CARAMELIZING +CARAMELS +CARANGID +CARANGIDS +CARANGOID +CARAPACE +CARAPACED +CARAPACES +CARAPAX +CARAPAXES +CARASSOW +CARASSOWS +CARAT +CARATE +CARATES +CARATS +CARAVAN +CARAVANED +CARAVANER +CARAVANERS +CARAVANING +CARAVANNED +CARAVANNER +CARAVANNERS +CARAVANNING +CARAVANS +CARAVANSARIES +CARAVANSARY +CARAVANSERAI +CARAVANSERAIS +CARAVEL +CARAVELLE +CARAVELLES +CARAVELS +CARAWAY +CARAWAYS +CARB +CARBACHOL +CARBACHOLS +CARBAMATE +CARBAMATES +CARBAMIC +CARBAMIDE +CARBAMIDES +CARBAMINO +CARBAMOYL +CARBAMOYLS +CARBAMYL +CARBAMYLS +CARBANION +CARBANIONS +CARBARN +CARBARNS +CARBARYL +CARBARYLS +CARBAZOLE +CARBAZOLES +CARBIDE +CARBIDES +CARBINE +CARBINEER +CARBINEERS +CARBINES +CARBINOL +CARBINOLS +CARBO +CARBOCYCLIC +CARBOHYDRASE +CARBOHYDRASES +CARBOHYDRATE +CARBOHYDRATES +CARBOLIC +CARBOLICS +CARBOLIZE +CARBOLIZED +CARBOLIZES +CARBOLIZING +CARBON +CARBONACEOUS +CARBONADE +CARBONADES +CARBONADO +CARBONADOED +CARBONADOES +CARBONADOING +CARBONADOS +CARBONARA +CARBONARAS +CARBONATE +CARBONATED +CARBONATES +CARBONATING +CARBONATION +CARBONATIONS +CARBONIC +CARBONIFEROUS +CARBONIUM +CARBONIUMS +CARBONIZATION +CARBONIZATIONS +CARBONIZE +CARBONIZED +CARBONIZES +CARBONIZING +CARBONLESS +CARBONNADE +CARBONNADES +CARBONOUS +CARBONS +CARBONYL +CARBONYLATION +CARBONYLATIONS +CARBONYLIC +CARBONYLS +CARBORA +CARBORAS +CARBOS +CARBOXYL +CARBOXYLASE +CARBOXYLASES +CARBOXYLATE +CARBOXYLATED +CARBOXYLATES +CARBOXYLATING +CARBOXYLATION +CARBOXYLATIONS +CARBOXYLIC +CARBOXYLS +CARBOY +CARBOYED +CARBOYS +CARBS +CARBUNCLE +CARBUNCLED +CARBUNCLES +CARBUNCULAR +CARBURET +CARBURETED +CARBURETING +CARBURETION +CARBURETIONS +CARBURETOR +CARBURETORS +CARBURETS +CARBURETTED +CARBURETTER +CARBURETTERS +CARBURETTING +CARBURETTOR +CARBURETTORS +CARBURISE +CARBURISED +CARBURISES +CARBURISING +CARBURIZATION +CARBURIZATIONS +CARBURIZE +CARBURIZED +CARBURIZES +CARBURIZING +CARCAJOU +CARCAJOUS +CARCANET +CARCANETS +CARCASE +CARCASES +CARCASS +CARCASSES +CARCEL +CARCELS +CARCERAL +CARCINOGEN +CARCINOGENESES +CARCINOGENESIS +CARCINOGENIC +CARCINOGENICITY +CARCINOGENS +CARCINOID +CARCINOIDS +CARCINOMA +CARCINOMAS +CARCINOMATA +CARCINOMATOSES +CARCINOMATOSIS +CARCINOMATOUS +CARCINOSARCOMA +CARCINOSARCOMAS +CARD +CARDAMOM +CARDAMOMS +CARDAMON +CARDAMONS +CARDAMUM +CARDAMUMS +CARDBOARD +CARDBOARDS +CARDCASE +CARDCASES +CARDED +CARDER +CARDERS +CARDHOLDER +CARDHOLDERS +CARDIA +CARDIAC +CARDIACS +CARDIAE +CARDIAS +CARDIGAN +CARDIGANS +CARDINAL +CARDINALATE +CARDINALATES +CARDINALITIES +CARDINALITY +CARDINALLY +CARDINALS +CARDINALSHIP +CARDINALSHIPS +CARDING +CARDINGS +CARDIO +CARDIOGENIC +CARDIOGRAM +CARDIOGRAMS +CARDIOGRAPH +CARDIOGRAPHIC +CARDIOGRAPHIES +CARDIOGRAPHS +CARDIOGRAPHY +CARDIOID +CARDIOIDS +CARDIOLOGICAL +CARDIOLOGIES +CARDIOLOGIST +CARDIOLOGISTS +CARDIOLOGY +CARDIOMYOPATHY +CARDIOPATHIES +CARDIOPATHY +CARDIOPULMONARY +CARDIOTHORACIC +CARDIOTONIC +CARDIOTONICS +CARDIOVASCULAR +CARDITIC +CARDITIS +CARDITISES +CARDON +CARDONS +CARDOON +CARDOONS +CARDPLAYER +CARDPLAYERS +CARDS +CARDSHARP +CARDSHARPER +CARDSHARPERS +CARDSHARPS +CARE +CARED +CAREEN +CAREENED +CAREENER +CAREENERS +CAREENING +CAREENS +CAREER +CAREERED +CAREERER +CAREERERS +CAREERING +CAREERISM +CAREERISMS +CAREERIST +CAREERISTS +CAREERS +CAREFREE +CAREFUL +CAREFULLER +CAREFULLEST +CAREFULLY +CAREFULNESS +CAREFULNESSES +CAREGIVER +CAREGIVERS +CAREGIVING +CAREGIVINGS +CARELESS +CARELESSLY +CARELESSNESS +CARELESSNESSES +CARER +CARERS +CARES +CARESS +CARESSED +CARESSER +CARESSERS +CARESSES +CARESSING +CARESSINGLY +CARESSIVE +CARESSIVELY +CARET +CARETAKE +CARETAKEN +CARETAKER +CARETAKERS +CARETAKES +CARETAKING +CARETAKINGS +CARETOOK +CARETS +CAREWORN +CAREX +CARFARE +CARFARES +CARFUL +CARFULS +CARGO +CARGOES +CARGOS +CARHOP +CARHOPPED +CARHOPPING +CARHOPS +CARIBE +CARIBES +CARIBOU +CARIBOUS +CARICATURAL +CARICATURE +CARICATURED +CARICATURES +CARICATURING +CARICATURIST +CARICATURISTS +CARICES +CARIED +CARIES +CARILLON +CARILLONNED +CARILLONNEUR +CARILLONNEURS +CARILLONNING +CARILLONS +CARINA +CARINAE +CARINAL +CARINAS +CARINATE +CARINATED +CARING +CARIOCA +CARIOCAS +CARIOGENIC +CARIOLE +CARIOLES +CARIOSITIES +CARIOSITY +CARIOUS +CARITAS +CARITASES +CARJACK +CARJACKED +CARJACKER +CARJACKERS +CARJACKING +CARJACKINGS +CARJACKS +CARK +CARKED +CARKING +CARKS +CARL +CARLE +CARLES +CARLESS +CARLIN +CARLINE +CARLINES +CARLING +CARLINGS +CARLINS +CARLISH +CARLOAD +CARLOADS +CARLS +CARMAGNOLE +CARMAGNOLES +CARMAKER +CARMAKERS +CARMAN +CARMEN +CARMINATIVE +CARMINATIVES +CARMINE +CARMINES +CARN +CARNAGE +CARNAGES +CARNAL +CARNALITIES +CARNALITY +CARNALLITE +CARNALLITES +CARNALLY +CARNASSIAL +CARNASSIALS +CARNATION +CARNATIONS +CARNAUBA +CARNAUBAS +CARNELIAN +CARNELIANS +CARNET +CARNETS +CARNEY +CARNEYS +CARNIE +CARNIES +CARNIFIED +CARNIFIES +CARNIFY +CARNIFYING +CARNITINE +CARNITINES +CARNIVAL +CARNIVALS +CARNIVORA +CARNIVORE +CARNIVORES +CARNIVORIES +CARNIVOROUS +CARNIVOROUSLY +CARNIVOROUSNESS +CARNIVORY +CARNOSAUR +CARNOSAURS +CARNOTITE +CARNOTITES +CARNS +CARNY +CAROACH +CAROACHES +CAROB +CAROBS +CAROCH +CAROCHE +CAROCHES +CAROL +CAROLED +CAROLER +CAROLERS +CAROLI +CAROLING +CAROLLED +CAROLLER +CAROLLERS +CAROLLING +CAROLS +CAROLUS +CAROLUSES +CAROM +CAROMED +CAROMING +CAROMS +CAROTENE +CAROTENES +CAROTENOID +CAROTENOIDS +CAROTID +CAROTIDAL +CAROTIDS +CAROTIN +CAROTINOID +CAROTINOIDS +CAROTINS +CAROUSAL +CAROUSALS +CAROUSE +CAROUSED +CAROUSEL +CAROUSELS +CAROUSER +CAROUSERS +CAROUSES +CAROUSING +CARP +CARPACCIO +CARPACCIOS +CARPAL +CARPALE +CARPALIA +CARPALS +CARPED +CARPEL +CARPELLARY +CARPELLATE +CARPELS +CARPENTER +CARPENTERED +CARPENTERING +CARPENTERS +CARPENTRIES +CARPENTRY +CARPER +CARPERS +CARPET +CARPETBAG +CARPETBAGGED +CARPETBAGGER +CARPETBAGGERIES +CARPETBAGGERS +CARPETBAGGERY +CARPETBAGGING +CARPETBAGS +CARPETED +CARPETING +CARPETINGS +CARPETS +CARPETWEED +CARPETWEEDS +CARPI +CARPING +CARPINGLY +CARPINGS +CARPOGONIA +CARPOGONIAL +CARPOGONIUM +CARPOLOGIES +CARPOLOGY +CARPOOL +CARPOOLED +CARPOOLER +CARPOOLERS +CARPOOLING +CARPOOLS +CARPOPHORE +CARPOPHORES +CARPORT +CARPORTS +CARPOSPORE +CARPOSPORES +CARPS +CARPUS +CARR +CARRACK +CARRACKS +CARRAGEEN +CARRAGEENAN +CARRAGEENANS +CARRAGEENIN +CARRAGEENINS +CARRAGEENS +CARRAGHEEN +CARRAGHEENS +CARREFOUR +CARREFOURS +CARREL +CARRELL +CARRELLS +CARRELS +CARRIAGE +CARRIAGES +CARRIAGEWAY +CARRIAGEWAYS +CARRIED +CARRIER +CARRIERS +CARRIES +CARRIOLE +CARRIOLES +CARRION +CARRIONS +CARRITCH +CARRITCHES +CARROCH +CARROCHES +CARROM +CARROMED +CARROMING +CARROMS +CARRONADE +CARRONADES +CARROT +CARROTIER +CARROTIEST +CARROTIN +CARROTINS +CARROTS +CARROTTOP +CARROTTOPPED +CARROTTOPS +CARROTY +CARROUSEL +CARROUSELS +CARRS +CARRY +CARRYALL +CARRYALLS +CARRYBACK +CARRYBACKS +CARRYFORWARD +CARRYFORWARDS +CARRYING +CARRYON +CARRYONS +CARRYOUT +CARRYOUTS +CARRYOVER +CARRYOVERS +CARS +CARSE +CARSES +CARSICK +CART +CARTABLE +CARTAGE +CARTAGES +CARTE +CARTED +CARTEL +CARTELISE +CARTELISED +CARTELISES +CARTELISING +CARTELIZATION +CARTELIZATIONS +CARTELIZE +CARTELIZED +CARTELIZES +CARTELIZING +CARTELS +CARTER +CARTERS +CARTES +CARTHORSE +CARTHORSES +CARTILAGE +CARTILAGES +CARTILAGINOUS +CARTING +CARTLOAD +CARTLOADS +CARTOGRAM +CARTOGRAMS +CARTOGRAPHER +CARTOGRAPHERS +CARTOGRAPHIC +CARTOGRAPHICAL +CARTOGRAPHIES +CARTOGRAPHY +CARTON +CARTONED +CARTONING +CARTONS +CARTOON +CARTOONED +CARTOONING +CARTOONINGS +CARTOONISH +CARTOONISHLY +CARTOONIST +CARTOONISTS +CARTOONLIKE +CARTOONS +CARTOONY +CARTOP +CARTOPPER +CARTOPPERS +CARTOUCH +CARTOUCHE +CARTOUCHES +CARTRIDGE +CARTRIDGES +CARTS +CARTULARIES +CARTULARY +CARTWHEEL +CARTWHEELED +CARTWHEELER +CARTWHEELERS +CARTWHEELING +CARTWHEELS +CARUNCLE +CARUNCLES +CARVACROL +CARVACROLS +CARVE +CARVED +CARVEL +CARVELS +CARVEN +CARVER +CARVERS +CARVES +CARVING +CARVINGS +CARWASH +CARWASHES +CARYATIC +CARYATID +CARYATIDES +CARYATIDS +CARYOPSES +CARYOPSIDES +CARYOPSIS +CARYOTIN +CARYOTINS +CASA +CASABA +CASABAS +CASAS +CASAVA +CASAVAS +CASBAH +CASBAHS +CASCABEL +CASCABELS +CASCABLE +CASCABLES +CASCADE +CASCADED +CASCADES +CASCADING +CASCARA +CASCARAS +CASCARILLA +CASCARILLAS +CASE +CASEASE +CASEASES +CASEATE +CASEATED +CASEATES +CASEATING +CASEATION +CASEATIONS +CASEBEARER +CASEBEARERS +CASEBOOK +CASEBOOKS +CASED +CASEFIED +CASEFIES +CASEFY +CASEFYING +CASEIC +CASEIN +CASEINATE +CASEINATES +CASEINS +CASELOAD +CASELOADS +CASEMATE +CASEMATED +CASEMATES +CASEMENT +CASEMENTS +CASEOSE +CASEOSES +CASEOUS +CASERN +CASERNE +CASERNES +CASERNS +CASES +CASETTE +CASETTES +CASEWORK +CASEWORKER +CASEWORKERS +CASEWORKS +CASEWORM +CASEWORMS +CASH +CASHABLE +CASHAW +CASHAWS +CASHBOOK +CASHBOOKS +CASHBOX +CASHBOXES +CASHED +CASHES +CASHEW +CASHEWS +CASHIER +CASHIERED +CASHIERING +CASHIERS +CASHING +CASHLESS +CASHMERE +CASHMERES +CASHOO +CASHOOS +CASHPOINT +CASHPOINTS +CASIMERE +CASIMERES +CASIMIRE +CASIMIRES +CASING +CASINGS +CASINI +CASINO +CASINOS +CASITA +CASITAS +CASK +CASKED +CASKET +CASKETED +CASKETING +CASKETS +CASKING +CASKS +CASKY +CASQUE +CASQUED +CASQUES +CASSABA +CASSABAS +CASSATA +CASSATAS +CASSATION +CASSATIONS +CASSAVA +CASSAVAS +CASSENA +CASSENAS +CASSENE +CASSENES +CASSEROLE +CASSEROLES +CASSETTE +CASSETTES +CASSIA +CASSIAS +CASSIMERE +CASSIMERES +CASSINA +CASSINAS +CASSINE +CASSINES +CASSINGLE +CASSINGLES +CASSINO +CASSINOS +CASSIS +CASSISES +CASSITERITE +CASSITERITES +CASSOCK +CASSOCKS +CASSOULET +CASSOULETS +CASSOWARIES +CASSOWARY +CAST +CASTABILITIES +CASTABILITY +CASTABLE +CASTANET +CASTANETS +CASTAWAY +CASTAWAYS +CASTE +CASTEISM +CASTEISMS +CASTELLAN +CASTELLANS +CASTELLATED +CASTER +CASTERS +CASTES +CASTIGATE +CASTIGATED +CASTIGATES +CASTIGATING +CASTIGATION +CASTIGATIONS +CASTIGATOR +CASTIGATORS +CASTING +CASTINGS +CASTLE +CASTLED +CASTLES +CASTLING +CASTOFF +CASTOFFS +CASTOR +CASTOREUM +CASTOREUMS +CASTORS +CASTRATE +CASTRATED +CASTRATER +CASTRATERS +CASTRATES +CASTRATI +CASTRATING +CASTRATION +CASTRATIONS +CASTRATO +CASTRATOR +CASTRATORS +CASTRATORY +CASTRATOS +CASTS +CASUAL +CASUALLY +CASUALNESS +CASUALNESSES +CASUALS +CASUALTIES +CASUALTY +CASUARINA +CASUARINAS +CASUIST +CASUISTIC +CASUISTICAL +CASUISTRIES +CASUISTRY +CASUISTS +CASUS +CAT +CATABOLIC +CATABOLICALLY +CATABOLISM +CATABOLISMS +CATABOLITE +CATABOLITES +CATABOLIZE +CATABOLIZED +CATABOLIZES +CATABOLIZING +CATACHRESES +CATACHRESIS +CATACHRESTIC +CATACHRESTICAL +CATACLYSM +CATACLYSMAL +CATACLYSMIC +CATACLYSMICALLY +CATACLYSMS +CATACOMB +CATACOMBS +CATADIOPTRIC +CATADROMOUS +CATAFALQUE +CATAFALQUES +CATALASE +CATALASES +CATALATIC +CATALECTIC +CATALECTICS +CATALEPSIES +CATALEPSY +CATALEPTIC +CATALEPTICALLY +CATALEPTICS +CATALEXES +CATALEXIS +CATALO +CATALOES +CATALOG +CATALOGED +CATALOGER +CATALOGERS +CATALOGIC +CATALOGING +CATALOGS +CATALOGUE +CATALOGUED +CATALOGUER +CATALOGUERS +CATALOGUES +CATALOGUING +CATALOS +CATALPA +CATALPAS +CATALYSES +CATALYSIS +CATALYST +CATALYSTS +CATALYTIC +CATALYTICALLY +CATALYZE +CATALYZED +CATALYZER +CATALYZERS +CATALYZES +CATALYZING +CATAMARAN +CATAMARANS +CATAMENIA +CATAMENIAL +CATAMITE +CATAMITES +CATAMOUNT +CATAMOUNTS +CATAPHORA +CATAPHORAS +CATAPHORESES +CATAPHORESIS +CATAPHORETIC +CATAPHORIC +CATAPHYLL +CATAPHYLLS +CATAPLASM +CATAPLASMS +CATAPLEXIES +CATAPLEXY +CATAPULT +CATAPULTED +CATAPULTING +CATAPULTS +CATARACT +CATARACTOUS +CATARACTS +CATARRH +CATARRHAL +CATARRHALLY +CATARRHINE +CATARRHINES +CATARRHS +CATASTROPHE +CATASTROPHES +CATASTROPHIC +CATASTROPHISM +CATASTROPHISMS +CATASTROPHIST +CATASTROPHISTS +CATATONIA +CATATONIAS +CATATONIC +CATATONICALLY +CATATONICS +CATAWBA +CATAWBAS +CATBIRD +CATBIRDS +CATBOAT +CATBOATS +CATBRIER +CATBRIERS +CATCALL +CATCALLED +CATCALLER +CATCALLERS +CATCALLING +CATCALLS +CATCH +CATCHABLE +CATCHALL +CATCHALLS +CATCHER +CATCHERS +CATCHES +CATCHFLIES +CATCHFLY +CATCHIER +CATCHIEST +CATCHING +CATCHMENT +CATCHMENTS +CATCHPENNY +CATCHPHRASE +CATCHPHRASES +CATCHPOLE +CATCHPOLES +CATCHPOLL +CATCHPOLLS +CATCHUP +CATCHUPS +CATCHWORD +CATCHWORDS +CATCHY +CATCLAW +CATCLAWS +CATE +CATECHESES +CATECHESIS +CATECHETICAL +CATECHIN +CATECHINS +CATECHISE +CATECHISED +CATECHISES +CATECHISING +CATECHISM +CATECHISMAL +CATECHISMS +CATECHIST +CATECHISTIC +CATECHISTS +CATECHIZATION +CATECHIZATIONS +CATECHIZE +CATECHIZED +CATECHIZER +CATECHIZERS +CATECHIZES +CATECHIZING +CATECHOL +CATECHOLAMINE +CATECHOLAMINES +CATECHOLS +CATECHU +CATECHUMEN +CATECHUMENS +CATECHUS +CATEGORIC +CATEGORICAL +CATEGORICALLY +CATEGORIES +CATEGORISE +CATEGORISED +CATEGORISES +CATEGORISING +CATEGORIZATION +CATEGORIZATIONS +CATEGORIZE +CATEGORIZED +CATEGORIZES +CATEGORIZING +CATEGORY +CATENA +CATENAE +CATENARIES +CATENARY +CATENAS +CATENATE +CATENATED +CATENATES +CATENATING +CATENATION +CATENATIONS +CATENOID +CATENOIDS +CATER +CATERAN +CATERANS +CATERCORNER +CATERCORNERED +CATERED +CATERER +CATERERS +CATERESS +CATERESSES +CATERING +CATERPILLAR +CATERPILLARS +CATERS +CATERWAUL +CATERWAULED +CATERWAULING +CATERWAULS +CATES +CATFACE +CATFACES +CATFACING +CATFACINGS +CATFALL +CATFALLS +CATFIGHT +CATFIGHTS +CATFISH +CATFISHES +CATGUT +CATGUTS +CATHARSES +CATHARSIS +CATHARTIC +CATHARTICS +CATHEAD +CATHEADS +CATHECT +CATHECTED +CATHECTIC +CATHECTING +CATHECTS +CATHEDRA +CATHEDRAE +CATHEDRAL +CATHEDRALS +CATHEDRAS +CATHEPSIN +CATHEPSINS +CATHEPTIC +CATHETER +CATHETERIZATION +CATHETERIZE +CATHETERIZED +CATHETERIZES +CATHETERIZING +CATHETERS +CATHEXES +CATHEXIS +CATHODAL +CATHODALLY +CATHODE +CATHODES +CATHODIC +CATHODICALLY +CATHOLIC +CATHOLICALLY +CATHOLICATE +CATHOLICATES +CATHOLICITIES +CATHOLICITY +CATHOLICIZE +CATHOLICIZED +CATHOLICIZES +CATHOLICIZING +CATHOLICOI +CATHOLICON +CATHOLICONS +CATHOLICOS +CATHOLICOSES +CATHOLICS +CATHOUSE +CATHOUSES +CATION +CATIONIC +CATIONICALLY +CATIONS +CATJANG +CATJANGS +CATKIN +CATKINATE +CATKINS +CATLIKE +CATLIN +CATLING +CATLINGS +CATLINS +CATMINT +CATMINTS +CATNAP +CATNAPER +CATNAPERS +CATNAPPED +CATNAPPER +CATNAPPERS +CATNAPPING +CATNAPS +CATNIP +CATNIPS +CATOPTRIC +CATRIGGED +CATS +CATSPAW +CATSPAWS +CATSUIT +CATSUITS +CATSUP +CATSUPS +CATTAIL +CATTAILS +CATTALO +CATTALOES +CATTALOS +CATTED +CATTERIES +CATTERY +CATTIE +CATTIER +CATTIES +CATTIEST +CATTILY +CATTINESS +CATTINESSES +CATTING +CATTISH +CATTISHLY +CATTLE +CATTLEMAN +CATTLEMEN +CATTLEYA +CATTLEYAS +CATTY +CATWALK +CATWALKS +CAUCUS +CAUCUSED +CAUCUSES +CAUCUSING +CAUCUSSED +CAUCUSSES +CAUCUSSING +CAUDAD +CAUDAL +CAUDALLY +CAUDATE +CAUDATED +CAUDATES +CAUDATION +CAUDATIONS +CAUDEX +CAUDEXES +CAUDICES +CAUDILLISMO +CAUDILLISMOS +CAUDILLO +CAUDILLOS +CAUDLE +CAUDLES +CAUGHT +CAUL +CAULD +CAULDRON +CAULDRONS +CAULDS +CAULES +CAULICLE +CAULICLES +CAULIFLOWER +CAULIFLOWERET +CAULIFLOWERETS +CAULIFLOWERS +CAULINE +CAULIS +CAULK +CAULKED +CAULKER +CAULKERS +CAULKING +CAULKINGS +CAULKS +CAULS +CAUSABLE +CAUSAL +CAUSALGIA +CAUSALGIAS +CAUSALGIC +CAUSALITIES +CAUSALITY +CAUSALLY +CAUSALS +CAUSATION +CAUSATIONS +CAUSATIVE +CAUSATIVELY +CAUSATIVES +CAUSE +CAUSED +CAUSELESS +CAUSER +CAUSERIE +CAUSERIES +CAUSERS +CAUSES +CAUSEWAY +CAUSEWAYED +CAUSEWAYING +CAUSEWAYS +CAUSEY +CAUSEYS +CAUSING +CAUSTIC +CAUSTICALLY +CAUSTICITIES +CAUSTICITY +CAUSTICS +CAUTERANT +CAUTERANTS +CAUTERIES +CAUTERIZATION +CAUTERIZATIONS +CAUTERIZE +CAUTERIZED +CAUTERIZES +CAUTERIZING +CAUTERY +CAUTION +CAUTIONARY +CAUTIONED +CAUTIONER +CAUTIONERS +CAUTIONING +CAUTIONS +CAUTIOUS +CAUTIOUSLY +CAUTIOUSNESS +CAUTIOUSNESSES +CAVALCADE +CAVALCADES +CAVALERO +CAVALEROS +CAVALETTI +CAVALIER +CAVALIERED +CAVALIERING +CAVALIERISM +CAVALIERISMS +CAVALIERLY +CAVALIERS +CAVALLA +CAVALLAS +CAVALLETTI +CAVALLIES +CAVALLY +CAVALRIES +CAVALRY +CAVALRYMAN +CAVALRYMEN +CAVATINA +CAVATINAS +CAVATINE +CAVE +CAVEAT +CAVEATED +CAVEATING +CAVEATOR +CAVEATORS +CAVEATS +CAVED +CAVEFISH +CAVEFISHES +CAVELIKE +CAVEMAN +CAVEMEN +CAVENDISH +CAVENDISHES +CAVER +CAVERN +CAVERNED +CAVERNICOLOUS +CAVERNING +CAVERNOUS +CAVERNOUSLY +CAVERNS +CAVERS +CAVES +CAVETTI +CAVETTO +CAVETTOS +CAVIAR +CAVIARE +CAVIARES +CAVIARS +CAVICORN +CAVIE +CAVIES +CAVIL +CAVILED +CAVILER +CAVILERS +CAVILING +CAVILLED +CAVILLER +CAVILLERS +CAVILLING +CAVILS +CAVING +CAVINGS +CAVITARY +CAVITATE +CAVITATED +CAVITATES +CAVITATING +CAVITATION +CAVITATIONS +CAVITIED +CAVITIES +CAVITY +CAVORT +CAVORTED +CAVORTER +CAVORTERS +CAVORTING +CAVORTS +CAVY +CAW +CAWED +CAWING +CAWS +CAY +CAYENNE +CAYENNED +CAYENNES +CAYMAN +CAYMANS +CAYS +CAYUSE +CAYUSES +CAZIQUE +CAZIQUES +CEANOTHUS +CEANOTHUSES +CEASE +CEASED +CEASEFIRE +CEASEFIRES +CEASELESS +CEASELESSLY +CEASELESSNESS +CEASELESSNESSES +CEASES +CEASING +CEBID +CEBIDS +CEBOID +CEBOIDS +CECA +CECAL +CECALLY +CECITIES +CECITY +CECROPIA +CECROPIAS +CECUM +CEDAR +CEDARBIRD +CEDARBIRDS +CEDARN +CEDARS +CEDARWOOD +CEDARWOODS +CEDARY +CEDE +CEDED +CEDER +CEDERS +CEDES +CEDI +CEDILLA +CEDILLAS +CEDING +CEDIS +CEDULA +CEDULAS +CEE +CEES +CEIBA +CEIBAS +CEIL +CEILED +CEILER +CEILERS +CEILI +CEILIDH +CEILIDHS +CEILING +CEILINGED +CEILINGS +CEILIS +CEILOMETER +CEILOMETERS +CEILS +CEINTURE +CEINTURES +CEL +CELADON +CELADONS +CELANDINE +CELANDINES +CELEB +CELEBRANT +CELEBRANTS +CELEBRATE +CELEBRATED +CELEBRATEDNESS +CELEBRATES +CELEBRATING +CELEBRATION +CELEBRATIONS +CELEBRATOR +CELEBRATORS +CELEBRATORY +CELEBRITIES +CELEBRITY +CELEBS +CELERIAC +CELERIACS +CELERIES +CELERITIES +CELERITY +CELERY +CELESTA +CELESTAS +CELESTE +CELESTES +CELESTIAL +CELESTIALLY +CELESTIALS +CELESTINE +CELESTINES +CELESTITE +CELESTITES +CELIAC +CELIACS +CELIBACIES +CELIBACY +CELIBATE +CELIBATES +CELIBATIC +CELL +CELLA +CELLAE +CELLAR +CELLARAGE +CELLARAGES +CELLARED +CELLARER +CELLARERS +CELLARET +CELLARETS +CELLARETTE +CELLARETTES +CELLARING +CELLARS +CELLARWAY +CELLARWAYS +CELLBLOCK +CELLBLOCKS +CELLED +CELLI +CELLING +CELLIST +CELLISTS +CELLMATE +CELLMATES +CELLO +CELLOBIOSE +CELLOBIOSES +CELLOIDIN +CELLOIDINS +CELLOPHANE +CELLOPHANES +CELLOS +CELLPHONE +CELLPHONES +CELLS +CELLULAR +CELLULARITIES +CELLULARITY +CELLULARS +CELLULASE +CELLULASES +CELLULE +CELLULES +CELLULITE +CELLULITES +CELLULITIS +CELLULITISES +CELLULOID +CELLULOIDS +CELLULOLYTIC +CELLULOSE +CELLULOSES +CELLULOSIC +CELLULOSICS +CELLULOUS +CELOM +CELOMATA +CELOMS +CELOSIA +CELOSIAS +CELOTEX +CELOTEXES +CELS +CELT +CELTS +CEMBALI +CEMBALIST +CEMBALISTS +CEMBALO +CEMBALOS +CEMENT +CEMENTA +CEMENTATION +CEMENTATIONS +CEMENTED +CEMENTER +CEMENTERS +CEMENTING +CEMENTITE +CEMENTITES +CEMENTITIOUS +CEMENTS +CEMENTUM +CEMENTUMS +CEMETERIES +CEMETERY +CENACLE +CENACLES +CENOBITE +CENOBITES +CENOBITIC +CENOSPECIES +CENOTAPH +CENOTAPHS +CENOTE +CENOTES +CENOZOIC +CENSE +CENSED +CENSER +CENSERS +CENSES +CENSING +CENSOR +CENSORED +CENSORIAL +CENSORING +CENSORIOUS +CENSORIOUSLY +CENSORIOUSNESS +CENSORS +CENSORSHIP +CENSORSHIPS +CENSUAL +CENSURABLE +CENSURE +CENSURED +CENSURER +CENSURERS +CENSURES +CENSURING +CENSUS +CENSUSED +CENSUSES +CENSUSING +CENT +CENTAI +CENTAL +CENTALS +CENTARE +CENTARES +CENTAS +CENTAUR +CENTAUREA +CENTAUREAS +CENTAURIC +CENTAURIES +CENTAURS +CENTAURY +CENTAVO +CENTAVOS +CENTENARIAN +CENTENARIANS +CENTENARIES +CENTENARY +CENTENNIAL +CENTENNIALLY +CENTENNIALS +CENTER +CENTERBOARD +CENTERBOARDS +CENTERED +CENTEREDNESS +CENTEREDNESSES +CENTERFOLD +CENTERFOLDS +CENTERING +CENTERINGS +CENTERLESS +CENTERLINE +CENTERLINES +CENTERPIECE +CENTERPIECES +CENTERS +CENTESES +CENTESIMAL +CENTESIMI +CENTESIMO +CENTESIMOS +CENTESIS +CENTIARE +CENTIARES +CENTIGRADE +CENTIGRAM +CENTIGRAMS +CENTILE +CENTILES +CENTILITER +CENTILITERS +CENTILLION +CENTILLIONS +CENTIME +CENTIMES +CENTIMETER +CENTIMETERS +CENTIMO +CENTIMORGAN +CENTIMORGANS +CENTIMOS +CENTIPEDE +CENTIPEDES +CENTNER +CENTNERS +CENTO +CENTONES +CENTOS +CENTRA +CENTRAL +CENTRALER +CENTRALEST +CENTRALISE +CENTRALISED +CENTRALISES +CENTRALISING +CENTRALISM +CENTRALISMS +CENTRALIST +CENTRALISTIC +CENTRALISTS +CENTRALITIES +CENTRALITY +CENTRALIZATION +CENTRALIZATIONS +CENTRALIZE +CENTRALIZED +CENTRALIZER +CENTRALIZERS +CENTRALIZES +CENTRALIZING +CENTRALLY +CENTRALS +CENTRE +CENTRED +CENTRES +CENTRIC +CENTRICAL +CENTRICALLY +CENTRICITIES +CENTRICITY +CENTRIFUGAL +CENTRIFUGALLY +CENTRIFUGALS +CENTRIFUGATION +CENTRIFUGATIONS +CENTRIFUGE +CENTRIFUGED +CENTRIFUGES +CENTRIFUGING +CENTRING +CENTRINGS +CENTRIOLE +CENTRIOLES +CENTRIPETAL +CENTRIPETALLY +CENTRISM +CENTRISMS +CENTRIST +CENTRISTS +CENTROID +CENTROIDS +CENTROMERE +CENTROMERES +CENTROMERIC +CENTROSOME +CENTROSOMES +CENTROSYMMETRIC +CENTRUM +CENTRUMS +CENTS +CENTU +CENTUM +CENTUMS +CENTUPLE +CENTUPLED +CENTUPLES +CENTUPLING +CENTURIAL +CENTURIES +CENTURION +CENTURIONS +CENTURY +CEORL +CEORLISH +CEORLS +CEP +CEPE +CEPES +CEPHALAD +CEPHALEXIN +CEPHALEXINS +CEPHALIC +CEPHALICALLY +CEPHALIN +CEPHALINS +CEPHALIZATION +CEPHALIZATIONS +CEPHALOMETRIC +CEPHALOMETRIES +CEPHALOMETRY +CEPHALOPOD +CEPHALOPODS +CEPHALORIDINE +CEPHALORIDINES +CEPHALOSPORIN +CEPHALOSPORINS +CEPHALOTHIN +CEPHALOTHINS +CEPHALOTHORACES +CEPHALOTHORAX +CEPHALOTHORAXES +CEPHALOUS +CEPHEID +CEPHEIDS +CEPS +CERACEOUS +CERAMAL +CERAMALS +CERAMIC +CERAMICIST +CERAMICISTS +CERAMICS +CERAMIDE +CERAMIDES +CERAMIST +CERAMISTS +CERASTES +CERATE +CERATED +CERATES +CERATIN +CERATINS +CERATODUS +CERATODUSES +CERATOID +CERATOPSIAN +CERATOPSIANS +CERCAL +CERCARIA +CERCARIAE +CERCARIAL +CERCARIAN +CERCARIANS +CERCARIAS +CERCI +CERCIS +CERCISES +CERCUS +CERE +CEREAL +CEREALS +CEREBELLA +CEREBELLAR +CEREBELLUM +CEREBELLUMS +CEREBRA +CEREBRAL +CEREBRALLY +CEREBRALS +CEREBRATE +CEREBRATED +CEREBRATES +CEREBRATING +CEREBRATION +CEREBRATIONS +CEREBRIC +CEREBROSIDE +CEREBROSIDES +CEREBROSPINAL +CEREBROVASCULAR +CEREBRUM +CEREBRUMS +CERECLOTH +CERECLOTHS +CERED +CEREMENT +CEREMENTS +CEREMONIAL +CEREMONIALISM +CEREMONIALISMS +CEREMONIALIST +CEREMONIALISTS +CEREMONIALLY +CEREMONIALS +CEREMONIES +CEREMONIOUS +CEREMONIOUSLY +CEREMONIOUSNESS +CEREMONY +CERES +CEREUS +CEREUSES +CERIA +CERIAS +CERIC +CERING +CERIPH +CERIPHS +CERISE +CERISES +CERITE +CERITES +CERIUM +CERIUMS +CERMET +CERMETS +CERNUOUS +CERO +CEROS +CEROTIC +CEROTYPE +CEROTYPES +CEROUS +CERTAIN +CERTAINER +CERTAINEST +CERTAINLY +CERTAINTIES +CERTAINTY +CERTES +CERTIFIABLE +CERTIFIABLY +CERTIFICATE +CERTIFICATED +CERTIFICATES +CERTIFICATING +CERTIFICATION +CERTIFICATIONS +CERTIFICATORY +CERTIFIED +CERTIFIER +CERTIFIERS +CERTIFIES +CERTIFY +CERTIFYING +CERTIORARI +CERTIORARIS +CERTITUDE +CERTITUDES +CERULEAN +CERULEANS +CERULOPLASMIN +CERULOPLASMINS +CERUMEN +CERUMENS +CERUMINOUS +CERUSE +CERUSES +CERUSITE +CERUSITES +CERUSSITE +CERUSSITES +CERVELAS +CERVELASES +CERVELAT +CERVELATS +CERVEZA +CERVEZAS +CERVICAL +CERVICES +CERVICITIS +CERVICITISES +CERVID +CERVINE +CERVIX +CERVIXES +CESAREAN +CESAREANS +CESARIAN +CESARIANS +CESIUM +CESIUMS +CESPITOSE +CESS +CESSATION +CESSATIONS +CESSED +CESSES +CESSING +CESSION +CESSIONS +CESSPIT +CESSPITS +CESSPOOL +CESSPOOLS +CESTA +CESTAS +CESTI +CESTODE +CESTODES +CESTOI +CESTOID +CESTOIDS +CESTOS +CESTUS +CESTUSES +CESURA +CESURAE +CESURAS +CETACEAN +CETACEANS +CETACEOUS +CETANE +CETANES +CETE +CETES +CETOLOGIES +CETOLOGIST +CETOLOGISTS +CETOLOGY +CEVICHE +CEVICHES +CHABAZITE +CHABAZITES +CHABLIS +CHABOUK +CHABOUKS +CHABUK +CHABUKS +CHACHKA +CHACHKAS +CHACMA +CHACMAS +CHACONNE +CHACONNES +CHAD +CHADAR +CHADARIM +CHADARS +CHADLESS +CHADOR +CHADORS +CHADRI +CHADS +CHAEBOL +CHAEBOLS +CHAETA +CHAETAE +CHAETAL +CHAETOGNATH +CHAETOGNATHS +CHAETOPOD +CHAETOPODS +CHAFE +CHAFED +CHAFER +CHAFERS +CHAFES +CHAFF +CHAFFED +CHAFFER +CHAFFERED +CHAFFERER +CHAFFERERS +CHAFFERING +CHAFFERS +CHAFFIER +CHAFFIEST +CHAFFINCH +CHAFFINCHES +CHAFFING +CHAFFS +CHAFFY +CHAFING +CHAGRIN +CHAGRINED +CHAGRINING +CHAGRINNED +CHAGRINNING +CHAGRINS +CHAI +CHAIN +CHAINE +CHAINED +CHAINES +CHAINFALL +CHAINFALLS +CHAINING +CHAINMAN +CHAINMEN +CHAINS +CHAINSAW +CHAINSAWED +CHAINSAWING +CHAINSAWS +CHAINWHEEL +CHAINWHEELS +CHAIR +CHAIRED +CHAIRING +CHAIRLIFT +CHAIRLIFTS +CHAIRMAN +CHAIRMANED +CHAIRMANING +CHAIRMANNED +CHAIRMANNING +CHAIRMANS +CHAIRMANSHIP +CHAIRMANSHIPS +CHAIRMEN +CHAIRPERSON +CHAIRPERSONS +CHAIRS +CHAIRWOMAN +CHAIRWOMEN +CHAIS +CHAISE +CHAISES +CHAKRA +CHAKRAS +CHALAH +CHALAHS +CHALAZA +CHALAZAE +CHALAZAL +CHALAZAS +CHALAZIA +CHALAZION +CHALAZIONS +CHALCEDONIC +CHALCEDONIES +CHALCEDONY +CHALCID +CHALCIDS +CHALCOCITE +CHALCOCITES +CHALCOGEN +CHALCOGENIDE +CHALCOGENIDES +CHALCOGENS +CHALCOPYRITE +CHALCOPYRITES +CHALDRON +CHALDRONS +CHALEH +CHALEHS +CHALET +CHALETS +CHALICE +CHALICED +CHALICES +CHALK +CHALKBOARD +CHALKBOARDS +CHALKED +CHALKIER +CHALKIEST +CHALKING +CHALKS +CHALKY +CHALLA +CHALLAH +CHALLAHS +CHALLAS +CHALLENGE +CHALLENGED +CHALLENGER +CHALLENGERS +CHALLENGES +CHALLENGING +CHALLENGINGLY +CHALLIE +CHALLIES +CHALLIS +CHALLISES +CHALLOT +CHALLOTH +CHALLY +CHALONE +CHALONES +CHALOT +CHALOTH +CHALUMEAU +CHALUMEAUS +CHALUPA +CHALUPAS +CHALUTZ +CHALUTZIM +CHALYBEATE +CHALYBEATES +CHAM +CHAMADE +CHAMADES +CHAMAEPHYTE +CHAMAEPHYTES +CHAMBER +CHAMBERED +CHAMBERING +CHAMBERLAIN +CHAMBERLAINS +CHAMBERMAID +CHAMBERMAIDS +CHAMBERS +CHAMBRAY +CHAMBRAYS +CHAMELEON +CHAMELEONIC +CHAMELEONLIKE +CHAMELEONS +CHAMFER +CHAMFERED +CHAMFERER +CHAMFERERS +CHAMFERING +CHAMFERS +CHAMFRAIN +CHAMFRAINS +CHAMFRON +CHAMFRONS +CHAMISA +CHAMISAS +CHAMISE +CHAMISES +CHAMISO +CHAMISOS +CHAMMIED +CHAMMIES +CHAMMY +CHAMMYING +CHAMOIS +CHAMOISED +CHAMOISES +CHAMOISING +CHAMOIX +CHAMOMILE +CHAMOMILES +CHAMP +CHAMPAC +CHAMPACA +CHAMPACAS +CHAMPACS +CHAMPAGNE +CHAMPAGNES +CHAMPAIGN +CHAMPAIGNS +CHAMPAK +CHAMPAKS +CHAMPED +CHAMPER +CHAMPERS +CHAMPERTIES +CHAMPERTOUS +CHAMPERTY +CHAMPIGNON +CHAMPIGNONS +CHAMPING +CHAMPION +CHAMPIONED +CHAMPIONING +CHAMPIONS +CHAMPIONSHIP +CHAMPIONSHIPS +CHAMPLEVE +CHAMPLEVES +CHAMPS +CHAMPY +CHAMS +CHANCE +CHANCED +CHANCEFUL +CHANCEL +CHANCELLERIES +CHANCELLERY +CHANCELLOR +CHANCELLORIES +CHANCELLORS +CHANCELLORSHIP +CHANCELLORSHIPS +CHANCELLORY +CHANCELS +CHANCER +CHANCERIES +CHANCERS +CHANCERY +CHANCES +CHANCIER +CHANCIEST +CHANCILY +CHANCINESS +CHANCINESSES +CHANCING +CHANCRE +CHANCRES +CHANCROID +CHANCROIDAL +CHANCROIDS +CHANCROUS +CHANCY +CHANDELIER +CHANDELIERED +CHANDELIERS +CHANDELLE +CHANDELLED +CHANDELLES +CHANDELLING +CHANDLER +CHANDLERIES +CHANDLERS +CHANDLERY +CHANFRON +CHANFRONS +CHANG +CHANGE +CHANGEABILITIES +CHANGEABILITY +CHANGEABLE +CHANGEABLENESS +CHANGEABLY +CHANGED +CHANGEFUL +CHANGEFULLY +CHANGEFULNESS +CHANGEFULNESSES +CHANGELESS +CHANGELESSLY +CHANGELESSNESS +CHANGELING +CHANGELINGS +CHANGEOVER +CHANGEOVERS +CHANGER +CHANGERS +CHANGES +CHANGEUP +CHANGEUPS +CHANGING +CHANGS +CHANNEL +CHANNELED +CHANNELER +CHANNELERS +CHANNELING +CHANNELIZATION +CHANNELIZATIONS +CHANNELIZE +CHANNELIZED +CHANNELIZES +CHANNELIZING +CHANNELLED +CHANNELLING +CHANNELS +CHANOYU +CHANOYUS +CHANSON +CHANSONNIER +CHANSONNIERS +CHANSONS +CHANT +CHANTABLE +CHANTAGE +CHANTAGES +CHANTED +CHANTER +CHANTERELLE +CHANTERELLES +CHANTERS +CHANTEUSE +CHANTEUSES +CHANTEY +CHANTEYS +CHANTICLEER +CHANTICLEERS +CHANTIES +CHANTING +CHANTOR +CHANTORS +CHANTRIES +CHANTRY +CHANTS +CHANTY +CHAO +CHAOS +CHAOSES +CHAOTIC +CHAOTICALLY +CHAP +CHAPARAJOS +CHAPAREJOS +CHAPARRAL +CHAPARRALS +CHAPATI +CHAPATIS +CHAPATTI +CHAPATTIS +CHAPBOOK +CHAPBOOKS +CHAPE +CHAPEAU +CHAPEAUS +CHAPEAUX +CHAPEL +CHAPELS +CHAPERON +CHAPERONAGE +CHAPERONAGES +CHAPERONE +CHAPERONED +CHAPERONES +CHAPERONING +CHAPERONS +CHAPES +CHAPFALLEN +CHAPITER +CHAPITERS +CHAPLAIN +CHAPLAINCIES +CHAPLAINCY +CHAPLAINS +CHAPLET +CHAPLETED +CHAPLETS +CHAPMAN +CHAPMEN +CHAPPATI +CHAPPATIS +CHAPPED +CHAPPIE +CHAPPIES +CHAPPING +CHAPS +CHAPT +CHAPTER +CHAPTERAL +CHAPTERED +CHAPTERING +CHAPTERS +CHAQUETA +CHAQUETAS +CHAR +CHARABANC +CHARABANCS +CHARACID +CHARACIDS +CHARACIN +CHARACINS +CHARACTER +CHARACTERED +CHARACTERFUL +CHARACTERIES +CHARACTERING +CHARACTERISTIC +CHARACTERISTICS +CHARACTERIZE +CHARACTERIZED +CHARACTERIZES +CHARACTERIZING +CHARACTERLESS +CHARACTERS +CHARACTERY +CHARADE +CHARADES +CHARAS +CHARASES +CHARBROIL +CHARBROILED +CHARBROILER +CHARBROILERS +CHARBROILING +CHARBROILS +CHARCOAL +CHARCOALED +CHARCOALING +CHARCOALS +CHARCOALY +CHARCUTERIE +CHARCUTERIES +CHARD +CHARDONNAY +CHARDONNAYS +CHARDS +CHARE +CHARED +CHARES +CHARGE +CHARGEABLE +CHARGED +CHARGEHAND +CHARGEHANDS +CHARGER +CHARGERS +CHARGES +CHARGING +CHARGRILL +CHARGRILLED +CHARGRILLING +CHARGRILLS +CHARIER +CHARIEST +CHARILY +CHARINESS +CHARINESSES +CHARING +CHARIOT +CHARIOTED +CHARIOTEER +CHARIOTEERS +CHARIOTING +CHARIOTS +CHARISM +CHARISMA +CHARISMAS +CHARISMATA +CHARISMATIC +CHARISMATICS +CHARISMS +CHARITABLE +CHARITABLENESS +CHARITABLY +CHARITIES +CHARITY +CHARIVARI +CHARIVARIED +CHARIVARIING +CHARIVARIS +CHARK +CHARKA +CHARKAS +CHARKED +CHARKHA +CHARKHAS +CHARKING +CHARKS +CHARLADIES +CHARLADY +CHARLATAN +CHARLATANISM +CHARLATANISMS +CHARLATANRIES +CHARLATANRY +CHARLATANS +CHARLEY +CHARLEYS +CHARLIE +CHARLIES +CHARLOCK +CHARLOCKS +CHARLOTTE +CHARLOTTES +CHARM +CHARMED +CHARMER +CHARMERS +CHARMEUSE +CHARMEUSES +CHARMING +CHARMINGER +CHARMINGEST +CHARMINGLY +CHARMLESS +CHARMS +CHARNEL +CHARNELS +CHARPAI +CHARPAIS +CHARPOY +CHARPOYS +CHARQUI +CHARQUID +CHARQUIS +CHARR +CHARRED +CHARRIER +CHARRIEST +CHARRING +CHARRO +CHARROS +CHARRS +CHARRY +CHARS +CHART +CHARTABLE +CHARTED +CHARTER +CHARTERED +CHARTERER +CHARTERERS +CHARTERING +CHARTERS +CHARTING +CHARTIST +CHARTISTS +CHARTLESS +CHARTREUSE +CHARTREUSES +CHARTS +CHARTULARIES +CHARTULARY +CHARWOMAN +CHARWOMEN +CHARY +CHASE +CHASEABLE +CHASED +CHASER +CHASERS +CHASES +CHASING +CHASINGS +CHASM +CHASMAL +CHASMED +CHASMIC +CHASMS +CHASMY +CHASSE +CHASSED +CHASSEING +CHASSEPOT +CHASSEPOTS +CHASSES +CHASSEUR +CHASSEURS +CHASSIS +CHASTE +CHASTELY +CHASTEN +CHASTENED +CHASTENER +CHASTENERS +CHASTENESS +CHASTENESSES +CHASTENING +CHASTENS +CHASTER +CHASTEST +CHASTISE +CHASTISED +CHASTISEMENT +CHASTISEMENTS +CHASTISER +CHASTISERS +CHASTISES +CHASTISING +CHASTITIES +CHASTITY +CHASUBLE +CHASUBLES +CHAT +CHATCHKA +CHATCHKAS +CHATCHKE +CHATCHKES +CHATEAU +CHATEAUBRIAND +CHATEAUBRIANDS +CHATEAUS +CHATEAUX +CHATELAIN +CHATELAINE +CHATELAINES +CHATELAINS +CHATOYANCE +CHATOYANCES +CHATOYANCIES +CHATOYANCY +CHATOYANT +CHATOYANTS +CHATROOM +CHATROOMS +CHATS +CHATTED +CHATTEL +CHATTELS +CHATTER +CHATTERBOX +CHATTERBOXES +CHATTERED +CHATTERER +CHATTERERS +CHATTERING +CHATTERS +CHATTERY +CHATTIER +CHATTIEST +CHATTILY +CHATTINESS +CHATTINESSES +CHATTING +CHATTY +CHAUFER +CHAUFERS +CHAUFFER +CHAUFFERS +CHAUFFEUR +CHAUFFEURED +CHAUFFEURING +CHAUFFEURS +CHAULMOOGRA +CHAULMOOGRAS +CHAUNT +CHAUNTED +CHAUNTER +CHAUNTERS +CHAUNTING +CHAUNTS +CHAUSSES +CHAUSSURE +CHAUSSURES +CHAUTAUQUA +CHAUTAUQUAS +CHAUVINISM +CHAUVINISMS +CHAUVINIST +CHAUVINISTIC +CHAUVINISTS +CHAW +CHAWBACON +CHAWBACONS +CHAWED +CHAWER +CHAWERS +CHAWING +CHAWS +CHAY +CHAYOTE +CHAYOTES +CHAYS +CHAZAN +CHAZANIM +CHAZANS +CHAZZAN +CHAZZANIM +CHAZZANS +CHAZZEN +CHAZZENIM +CHAZZENS +CHEAP +CHEAPEN +CHEAPENED +CHEAPENER +CHEAPENERS +CHEAPENING +CHEAPENS +CHEAPER +CHEAPEST +CHEAPIE +CHEAPIES +CHEAPISH +CHEAPISHLY +CHEAPJACK +CHEAPJACKS +CHEAPLY +CHEAPNESS +CHEAPNESSES +CHEAPO +CHEAPOS +CHEAPS +CHEAPSKATE +CHEAPSKATES +CHEAT +CHEATABLE +CHEATED +CHEATER +CHEATERS +CHEATING +CHEATS +CHEBEC +CHEBECS +CHECHAKO +CHECHAKOS +CHECK +CHECKABLE +CHECKBOOK +CHECKBOOKS +CHECKED +CHECKER +CHECKERBERRIES +CHECKERBERRY +CHECKERBOARD +CHECKERBOARDS +CHECKERED +CHECKERING +CHECKERS +CHECKING +CHECKLESS +CHECKLIST +CHECKLISTED +CHECKLISTING +CHECKLISTS +CHECKMARK +CHECKMARKED +CHECKMARKING +CHECKMARKS +CHECKMATE +CHECKMATED +CHECKMATES +CHECKMATING +CHECKOFF +CHECKOFFS +CHECKOUT +CHECKOUTS +CHECKPOINT +CHECKPOINTS +CHECKREIN +CHECKREINS +CHECKROOM +CHECKROOMS +CHECKROW +CHECKROWED +CHECKROWING +CHECKROWS +CHECKS +CHECKSUM +CHECKSUMS +CHECKUP +CHECKUPS +CHEDDAR +CHEDDARS +CHEDDARY +CHEDDITE +CHEDDITES +CHEDER +CHEDERS +CHEDITE +CHEDITES +CHEECHAKO +CHEECHAKOS +CHEEK +CHEEKBONE +CHEEKBONES +CHEEKED +CHEEKFUL +CHEEKFULS +CHEEKIER +CHEEKIEST +CHEEKILY +CHEEKINESS +CHEEKINESSES +CHEEKING +CHEEKLESS +CHEEKS +CHEEKY +CHEEP +CHEEPED +CHEEPER +CHEEPERS +CHEEPING +CHEEPS +CHEER +CHEERED +CHEERER +CHEERERS +CHEERFUL +CHEERFULLER +CHEERFULLEST +CHEERFULLY +CHEERFULNESS +CHEERFULNESSES +CHEERIER +CHEERIEST +CHEERILY +CHEERINESS +CHEERINESSES +CHEERING +CHEERIO +CHEERIOS +CHEERLEAD +CHEERLEADER +CHEERLEADERS +CHEERLEADING +CHEERLEADS +CHEERLED +CHEERLESS +CHEERLESSLY +CHEERLESSNESS +CHEERLESSNESSES +CHEERLY +CHEERO +CHEEROS +CHEERS +CHEERY +CHEESE +CHEESEBURGER +CHEESEBURGERS +CHEESECAKE +CHEESECAKES +CHEESECLOTH +CHEESECLOTHS +CHEESED +CHEESEPARING +CHEESEPARINGS +CHEESES +CHEESIER +CHEESIEST +CHEESILY +CHEESINESS +CHEESINESSES +CHEESING +CHEESY +CHEETAH +CHEETAHS +CHEF +CHEFDOM +CHEFDOMS +CHEFED +CHEFFED +CHEFFING +CHEFING +CHEFS +CHEGOE +CHEGOES +CHELA +CHELAE +CHELAS +CHELASHIP +CHELASHIPS +CHELATABLE +CHELATE +CHELATED +CHELATES +CHELATING +CHELATION +CHELATIONS +CHELATOR +CHELATORS +CHELICERA +CHELICERAE +CHELICERAL +CHELIFORM +CHELIPED +CHELIPEDS +CHELOID +CHELOIDS +CHELONIAN +CHELONIANS +CHEMIC +CHEMICAL +CHEMICALLY +CHEMICALS +CHEMICS +CHEMIOSMOTIC +CHEMISE +CHEMISES +CHEMISETTE +CHEMISETTES +CHEMISM +CHEMISMS +CHEMISORB +CHEMISORBED +CHEMISORBING +CHEMISORBS +CHEMISORPTION +CHEMISORPTIONS +CHEMIST +CHEMISTRIES +CHEMISTRY +CHEMISTS +CHEMO +CHEMOAUTOTROPHY +CHEMOKINE +CHEMOKINES +CHEMORECEPTION +CHEMORECEPTIONS +CHEMORECEPTIVE +CHEMORECEPTOR +CHEMORECEPTORS +CHEMOS +CHEMOSORB +CHEMOSORBED +CHEMOSORBING +CHEMOSORBS +CHEMOSTAT +CHEMOSTATS +CHEMOSURGERIES +CHEMOSURGERY +CHEMOSURGICAL +CHEMOSYNTHESES +CHEMOSYNTHESIS +CHEMOSYNTHETIC +CHEMOTACTIC +CHEMOTACTICALLY +CHEMOTAXES +CHEMOTAXIS +CHEMOTAXONOMIC +CHEMOTAXONOMIES +CHEMOTAXONOMIST +CHEMOTAXONOMY +CHEMOTHERAPIES +CHEMOTHERAPIST +CHEMOTHERAPISTS +CHEMOTHERAPY +CHEMOTROPISM +CHEMOTROPISMS +CHEMURGIC +CHEMURGIES +CHEMURGY +CHENILLE +CHENILLES +CHENOPOD +CHENOPODS +CHEONGSAM +CHEONGSAMS +CHEQUE +CHEQUER +CHEQUERED +CHEQUERING +CHEQUERS +CHEQUES +CHERIMOYA +CHERIMOYAS +CHERISH +CHERISHABLE +CHERISHED +CHERISHER +CHERISHERS +CHERISHES +CHERISHING +CHERNOZEM +CHERNOZEMIC +CHERNOZEMS +CHEROOT +CHEROOTS +CHERRIES +CHERRY +CHERRYLIKE +CHERRYSTONE +CHERRYSTONES +CHERT +CHERTIER +CHERTIEST +CHERTS +CHERTY +CHERUB +CHERUBIC +CHERUBICALLY +CHERUBIM +CHERUBIMS +CHERUBLIKE +CHERUBS +CHERVIL +CHERVILS +CHESHIRE +CHESHIRES +CHESS +CHESSBOARD +CHESSBOARDS +CHESSES +CHESSMAN +CHESSMEN +CHEST +CHESTED +CHESTERFIELD +CHESTERFIELDS +CHESTFUL +CHESTFULS +CHESTIER +CHESTIEST +CHESTILY +CHESTNUT +CHESTNUTS +CHESTS +CHESTY +CHETAH +CHETAHS +CHETH +CHETHS +CHETRUM +CHETRUMS +CHEVALET +CHEVALETS +CHEVALIER +CHEVALIERS +CHEVELURE +CHEVELURES +CHEVERON +CHEVERONS +CHEVIED +CHEVIES +CHEVIOT +CHEVIOTS +CHEVRE +CHEVRES +CHEVRET +CHEVRETS +CHEVRON +CHEVRONS +CHEVY +CHEVYING +CHEW +CHEWABLE +CHEWED +CHEWER +CHEWERS +CHEWIER +CHEWIEST +CHEWINESS +CHEWINESSES +CHEWING +CHEWINK +CHEWINKS +CHEWS +CHEWY +CHEZ +CHI +CHIA +CHIANTI +CHIANTIS +CHIAO +CHIAROSCURIST +CHIAROSCURISTS +CHIAROSCURO +CHIAROSCUROS +CHIAS +CHIASM +CHIASMA +CHIASMAL +CHIASMAS +CHIASMATA +CHIASMATIC +CHIASMI +CHIASMIC +CHIASMS +CHIASMUS +CHIASTIC +CHIAUS +CHIAUSES +CHIBOUK +CHIBOUKS +CHIBOUQUE +CHIBOUQUES +CHIC +CHICA +CHICALOTE +CHICALOTES +CHICANE +CHICANED +CHICANER +CHICANERIES +CHICANERS +CHICANERY +CHICANES +CHICANING +CHICANO +CHICANOS +CHICAS +CHICCORIES +CHICCORY +CHICER +CHICEST +CHICHI +CHICHIER +CHICHIEST +CHICHIS +CHICK +CHICKADEE +CHICKADEES +CHICKAREE +CHICKAREES +CHICKEE +CHICKEES +CHICKEN +CHICKENED +CHICKENHEARTED +CHICKENING +CHICKENS +CHICKENSHIT +CHICKENSHITS +CHICKORIES +CHICKORY +CHICKPEA +CHICKPEAS +CHICKS +CHICKWEED +CHICKWEEDS +CHICLE +CHICLES +CHICLY +CHICNESS +CHICNESSES +CHICO +CHICORIES +CHICORY +CHICOS +CHICS +CHID +CHIDDEN +CHIDE +CHIDED +CHIDER +CHIDERS +CHIDES +CHIDING +CHIDINGLY +CHIEF +CHIEFDOM +CHIEFDOMS +CHIEFER +CHIEFEST +CHIEFLY +CHIEFS +CHIEFSHIP +CHIEFSHIPS +CHIEFTAIN +CHIEFTAINCIES +CHIEFTAINCY +CHIEFTAINS +CHIEFTAINSHIP +CHIEFTAINSHIPS +CHIEL +CHIELD +CHIELDS +CHIELS +CHIFFCHAFF +CHIFFCHAFFS +CHIFFON +CHIFFONADE +CHIFFONADES +CHIFFONIER +CHIFFONIERS +CHIFFONS +CHIFFOROBE +CHIFFOROBES +CHIGETAI +CHIGETAIS +CHIGGER +CHIGGERS +CHIGNON +CHIGNONED +CHIGNONS +CHIGOE +CHIGOES +CHILBLAIN +CHILBLAINS +CHILD +CHILDBEARING +CHILDBEARINGS +CHILDBED +CHILDBEDS +CHILDBIRTH +CHILDBIRTHS +CHILDCARE +CHILDCARES +CHILDE +CHILDES +CHILDHOOD +CHILDHOODS +CHILDING +CHILDISH +CHILDISHLY +CHILDISHNESS +CHILDISHNESSES +CHILDLESS +CHILDLESSNESS +CHILDLESSNESSES +CHILDLIER +CHILDLIEST +CHILDLIKE +CHILDLIKENESS +CHILDLIKENESSES +CHILDLY +CHILDPROOF +CHILDREN +CHILE +CHILES +CHILI +CHILIAD +CHILIADAL +CHILIADIC +CHILIADS +CHILIARCH +CHILIARCHS +CHILIASM +CHILIASMS +CHILIAST +CHILIASTIC +CHILIASTS +CHILIDOG +CHILIDOGS +CHILIES +CHILIS +CHILL +CHILLED +CHILLER +CHILLERS +CHILLEST +CHILLI +CHILLIER +CHILLIES +CHILLIEST +CHILLILY +CHILLINESS +CHILLINESSES +CHILLING +CHILLINGLY +CHILLIS +CHILLNESS +CHILLNESSES +CHILLS +CHILLUM +CHILLUMS +CHILLY +CHILOPOD +CHILOPODS +CHILTEPIN +CHILTEPINS +CHIMAERA +CHIMAERAS +CHIMAERIC +CHIMAERISM +CHIMAERISMS +CHIMAR +CHIMARS +CHIMB +CHIMBLEY +CHIMBLEYS +CHIMBLIES +CHIMBLY +CHIMBS +CHIME +CHIMED +CHIMER +CHIMERA +CHIMERAS +CHIMERE +CHIMERES +CHIMERIC +CHIMERICAL +CHIMERICALLY +CHIMERISM +CHIMERISMS +CHIMERS +CHIMES +CHIMICHANGA +CHIMICHANGAS +CHIMING +CHIMLA +CHIMLAS +CHIMLEY +CHIMLEYS +CHIMNEY +CHIMNEYLIKE +CHIMNEYPIECE +CHIMNEYPIECES +CHIMNEYS +CHIMP +CHIMPANZEE +CHIMPANZEES +CHIMPS +CHIN +CHINA +CHINABERRIES +CHINABERRY +CHINAS +CHINAWARE +CHINAWARES +CHINBONE +CHINBONES +CHINCAPIN +CHINCAPINS +CHINCH +CHINCHERINCHEE +CHINCHERINCHEES +CHINCHES +CHINCHIER +CHINCHIEST +CHINCHILLA +CHINCHILLAS +CHINCHY +CHINE +CHINED +CHINES +CHINING +CHINK +CHINKAPIN +CHINKAPINS +CHINKED +CHINKIER +CHINKIEST +CHINKING +CHINKS +CHINKY +CHINLESS +CHINNED +CHINNING +CHINO +CHINOISERIE +CHINOISERIES +CHINONE +CHINONES +CHINOOK +CHINOOKS +CHINOS +CHINQUAPIN +CHINQUAPINS +CHINS +CHINSTRAP +CHINSTRAPS +CHINTS +CHINTSES +CHINTZ +CHINTZES +CHINTZIER +CHINTZIEST +CHINTZY +CHINWAG +CHINWAGGED +CHINWAGGING +CHINWAGS +CHIONODOXA +CHIONODOXAS +CHIP +CHIPBOARD +CHIPBOARDS +CHIPMUCK +CHIPMUCKS +CHIPMUNK +CHIPMUNKS +CHIPOTLE +CHIPOTLES +CHIPPABLE +CHIPPED +CHIPPER +CHIPPERED +CHIPPERING +CHIPPERS +CHIPPIE +CHIPPIER +CHIPPIES +CHIPPIEST +CHIPPING +CHIPPY +CHIPS +CHIRAL +CHIRALITIES +CHIRALITY +CHIRIMOYA +CHIRIMOYAS +CHIRK +CHIRKED +CHIRKER +CHIRKEST +CHIRKING +CHIRKS +CHIRM +CHIRMED +CHIRMING +CHIRMS +CHIRO +CHIROGRAPHER +CHIROGRAPHERS +CHIROGRAPHIC +CHIROGRAPHICAL +CHIROGRAPHIES +CHIROGRAPHY +CHIROMANCER +CHIROMANCERS +CHIROMANCIES +CHIROMANCY +CHIRONOMID +CHIRONOMIDS +CHIROPODIES +CHIROPODIST +CHIROPODISTS +CHIROPODY +CHIROPRACTIC +CHIROPRACTICS +CHIROPRACTOR +CHIROPRACTORS +CHIROPTER +CHIROPTERAN +CHIROPTERANS +CHIROPTERS +CHIROS +CHIRP +CHIRPED +CHIRPER +CHIRPERS +CHIRPIER +CHIRPIEST +CHIRPILY +CHIRPING +CHIRPS +CHIRPY +CHIRR +CHIRRE +CHIRRED +CHIRREN +CHIRRES +CHIRRING +CHIRRS +CHIRRUP +CHIRRUPED +CHIRRUPING +CHIRRUPS +CHIRRUPY +CHIRU +CHIRURGEON +CHIRURGEONS +CHIRUS +CHIS +CHISEL +CHISELED +CHISELER +CHISELERS +CHISELING +CHISELLED +CHISELLER +CHISELLERS +CHISELLING +CHISELS +CHIT +CHITAL +CHITCHAT +CHITCHATS +CHITCHATTED +CHITCHATTING +CHITIN +CHITINOID +CHITINOUS +CHITINS +CHITLIN +CHITLING +CHITLINGS +CHITLINS +CHITON +CHITONS +CHITOSAN +CHITOSANS +CHITS +CHITTER +CHITTERED +CHITTERING +CHITTERLINGS +CHITTERS +CHITTIES +CHITTY +CHIVALRIC +CHIVALRIES +CHIVALROUS +CHIVALROUSLY +CHIVALROUSNESS +CHIVALRY +CHIVAREE +CHIVAREED +CHIVAREEING +CHIVAREES +CHIVARI +CHIVARIED +CHIVARIES +CHIVARIING +CHIVE +CHIVES +CHIVIED +CHIVIES +CHIVVIED +CHIVVIES +CHIVVY +CHIVVYING +CHIVY +CHIVYING +CHLAMYDES +CHLAMYDIA +CHLAMYDIAE +CHLAMYDIAL +CHLAMYDOSPORE +CHLAMYDOSPORES +CHLAMYS +CHLAMYSES +CHLOASMA +CHLOASMAS +CHLOASMATA +CHLORACNE +CHLORACNES +CHLORAL +CHLORALOSE +CHLORALOSED +CHLORALOSES +CHLORALS +CHLORAMINE +CHLORAMINES +CHLORAMPHENICOL +CHLORATE +CHLORATES +CHLORDAN +CHLORDANE +CHLORDANES +CHLORDANS +CHLORELLA +CHLORELLAS +CHLORENCHYMA +CHLORENCHYMAS +CHLORIC +CHLORID +CHLORIDE +CHLORIDES +CHLORIDIC +CHLORIDS +CHLORIN +CHLORINATE +CHLORINATED +CHLORINATES +CHLORINATING +CHLORINATION +CHLORINATIONS +CHLORINATOR +CHLORINATORS +CHLORINE +CHLORINES +CHLORINITIES +CHLORINITY +CHLORINS +CHLORITE +CHLORITES +CHLORITIC +CHLOROBENZENE +CHLOROBENZENES +CHLOROFORM +CHLOROFORMED +CHLOROFORMING +CHLOROFORMS +CHLOROHYDRIN +CHLOROHYDRINS +CHLOROPHYLL +CHLOROPHYLLOUS +CHLOROPHYLLS +CHLOROPICRIN +CHLOROPICRINS +CHLOROPLAST +CHLOROPLASTIC +CHLOROPLASTS +CHLOROPRENE +CHLOROPRENES +CHLOROQUINE +CHLOROQUINES +CHLOROSES +CHLOROSIS +CHLOROTHIAZIDE +CHLOROTHIAZIDES +CHLOROTIC +CHLOROUS +CHLORPROMAZINE +CHLORPROMAZINES +CHLORPROPAMIDE +CHLORPROPAMIDES +CHOANA +CHOANAE +CHOANOCYTE +CHOANOCYTES +CHOCK +CHOCKABLOCK +CHOCKED +CHOCKFUL +CHOCKFULL +CHOCKING +CHOCKS +CHOCOHOLIC +CHOCOHOLICS +CHOCOLATE +CHOCOLATES +CHOCOLATEY +CHOCOLATIER +CHOCOLATIERS +CHOCOLATY +CHOICE +CHOICELY +CHOICENESS +CHOICENESSES +CHOICER +CHOICES +CHOICEST +CHOIR +CHOIRBOY +CHOIRBOYS +CHOIRED +CHOIRGIRL +CHOIRGIRLS +CHOIRING +CHOIRMASTER +CHOIRMASTERS +CHOIRS +CHOKE +CHOKEABLE +CHOKEBERRIES +CHOKEBERRY +CHOKEBORE +CHOKEBORES +CHOKECHERRIES +CHOKECHERRY +CHOKED +CHOKEDAMP +CHOKEDAMPS +CHOKEHOLD +CHOKEHOLDS +CHOKER +CHOKERS +CHOKES +CHOKEY +CHOKIER +CHOKIEST +CHOKING +CHOKINGLY +CHOKY +CHOLA +CHOLANGIOGRAM +CHOLANGIOGRAMS +CHOLANGIOGRAPHY +CHOLAS +CHOLATE +CHOLATES +CHOLECALCIFEROL +CHOLECYST +CHOLECYSTECTOMY +CHOLECYSTITIS +CHOLECYSTITISES +CHOLECYSTOKININ +CHOLECYSTS +CHOLELITHIASES +CHOLELITHIASIS +CHOLENT +CHOLENTS +CHOLER +CHOLERA +CHOLERAIC +CHOLERAS +CHOLERIC +CHOLERICALLY +CHOLEROID +CHOLERS +CHOLESTASES +CHOLESTASIS +CHOLESTATIC +CHOLESTERIC +CHOLESTEROL +CHOLESTEROLS +CHOLESTYRAMINE +CHOLESTYRAMINES +CHOLINE +CHOLINERGIC +CHOLINERGICALLY +CHOLINES +CHOLINESTERASE +CHOLINESTERASES +CHOLLA +CHOLLAS +CHOLO +CHOLOS +CHOMP +CHOMPED +CHOMPER +CHOMPERS +CHOMPING +CHOMPS +CHON +CHONDRIOSOME +CHONDRIOSOMES +CHONDRITE +CHONDRITES +CHONDRITIC +CHONDROCRANIA +CHONDROCRANIUM +CHONDROCRANIUMS +CHONDROITIN +CHONDROITINS +CHONDROMA +CHONDROMAS +CHONDROMATA +CHONDRULE +CHONDRULES +CHOOK +CHOOKS +CHOOSE +CHOOSER +CHOOSERS +CHOOSES +CHOOSEY +CHOOSIER +CHOOSIEST +CHOOSING +CHOOSY +CHOP +CHOPFALLEN +CHOPHOUSE +CHOPHOUSES +CHOPIN +CHOPINE +CHOPINES +CHOPINS +CHOPLOGIC +CHOPLOGICS +CHOPPED +CHOPPER +CHOPPERED +CHOPPERING +CHOPPERS +CHOPPIER +CHOPPIEST +CHOPPILY +CHOPPINESS +CHOPPINESSES +CHOPPING +CHOPPY +CHOPS +CHOPSOCKIES +CHOPSOCKY +CHOPSTICK +CHOPSTICKS +CHORAGI +CHORAGIC +CHORAGUS +CHORAGUSES +CHORAL +CHORALE +CHORALES +CHORALLY +CHORALS +CHORD +CHORDAL +CHORDAMESODERM +CHORDAMESODERMS +CHORDATE +CHORDATES +CHORDED +CHORDING +CHORDS +CHORE +CHOREA +CHOREAL +CHOREAS +CHOREATIC +CHORED +CHOREGI +CHOREGUS +CHOREGUSES +CHOREIC +CHOREIFORM +CHOREMAN +CHOREMEN +CHOREOGRAPH +CHOREOGRAPHED +CHOREOGRAPHER +CHOREOGRAPHERS +CHOREOGRAPHIC +CHOREOGRAPHIES +CHOREOGRAPHING +CHOREOGRAPHS +CHOREOGRAPHY +CHOREOID +CHORES +CHORIAL +CHORIAMB +CHORIAMBS +CHORIC +CHORINE +CHORINES +CHORING +CHORIOALLANTOIC +CHORIOALLANTOIS +CHORIOCARCINOMA +CHORIOID +CHORIOIDS +CHORION +CHORIONIC +CHORIONS +CHORISTER +CHORISTERS +CHORIZO +CHORIZOS +CHOROGRAPHER +CHOROGRAPHERS +CHOROGRAPHIC +CHOROGRAPHIES +CHOROGRAPHY +CHOROID +CHOROIDAL +CHOROIDS +CHORTEN +CHORTENS +CHORTLE +CHORTLED +CHORTLER +CHORTLERS +CHORTLES +CHORTLING +CHORUS +CHORUSED +CHORUSES +CHORUSING +CHORUSSED +CHORUSSES +CHORUSSING +CHOSE +CHOSEN +CHOSES +CHOTT +CHOTTS +CHOUGH +CHOUGHS +CHOUSE +CHOUSED +CHOUSER +CHOUSERS +CHOUSES +CHOUSH +CHOUSHES +CHOUSING +CHOW +CHOWCHOW +CHOWCHOWS +CHOWDER +CHOWDERED +CHOWDERHEAD +CHOWDERHEADED +CHOWDERHEADS +CHOWDERING +CHOWDERS +CHOWED +CHOWHOUND +CHOWHOUNDS +CHOWING +CHOWS +CHOWSE +CHOWSED +CHOWSES +CHOWSING +CHOWTIME +CHOWTIMES +CHRESARD +CHRESARDS +CHRESTOMATHIES +CHRESTOMATHY +CHRISM +CHRISMA +CHRISMAL +CHRISMATION +CHRISMATIONS +CHRISMON +CHRISMONS +CHRISMS +CHRISOM +CHRISOMS +CHRISTEN +CHRISTENED +CHRISTENING +CHRISTENINGS +CHRISTENS +CHRISTIANIA +CHRISTIANIAS +CHRISTIE +CHRISTIES +CHRISTY +CHROMA +CHROMAFFIN +CHROMAS +CHROMATE +CHROMATES +CHROMATIC +CHROMATICALLY +CHROMATICISM +CHROMATICISMS +CHROMATICITIES +CHROMATICITY +CHROMATICS +CHROMATID +CHROMATIDS +CHROMATIN +CHROMATINIC +CHROMATINS +CHROMATOGRAM +CHROMATOGRAMS +CHROMATOGRAPH +CHROMATOGRAPHED +CHROMATOGRAPHER +CHROMATOGRAPHIC +CHROMATOGRAPHS +CHROMATOGRAPHY +CHROMATOLYSES +CHROMATOLYSIS +CHROMATOLYTIC +CHROMATOPHORE +CHROMATOPHORES +CHROME +CHROMED +CHROMES +CHROMIC +CHROMIDE +CHROMIDES +CHROMIER +CHROMIEST +CHROMINANCE +CHROMINANCES +CHROMING +CHROMINGS +CHROMITE +CHROMITES +CHROMIUM +CHROMIUMS +CHROMIZE +CHROMIZED +CHROMIZES +CHROMIZING +CHROMO +CHROMOCENTER +CHROMOCENTERS +CHROMODYNAMICS +CHROMOGEN +CHROMOGENIC +CHROMOGENS +CHROMOMERE +CHROMOMERES +CHROMOMERIC +CHROMONEMA +CHROMONEMATA +CHROMONEMATIC +CHROMOPHIL +CHROMOPHOBE +CHROMOPHORE +CHROMOPHORES +CHROMOPHORIC +CHROMOPLAST +CHROMOPLASTS +CHROMOPROTEIN +CHROMOPROTEINS +CHROMOS +CHROMOSOMAL +CHROMOSOMALLY +CHROMOSOME +CHROMOSOMES +CHROMOSPHERE +CHROMOSPHERES +CHROMOSPHERIC +CHROMOUS +CHROMY +CHROMYL +CHROMYLS +CHRONAXIE +CHRONAXIES +CHRONAXY +CHRONIC +CHRONICALLY +CHRONICITIES +CHRONICITY +CHRONICLE +CHRONICLED +CHRONICLER +CHRONICLERS +CHRONICLES +CHRONICLING +CHRONICS +CHRONOBIOLOGIC +CHRONOBIOLOGIES +CHRONOBIOLOGIST +CHRONOBIOLOGY +CHRONOGRAM +CHRONOGRAMS +CHRONOGRAPH +CHRONOGRAPHIC +CHRONOGRAPHIES +CHRONOGRAPHS +CHRONOGRAPHY +CHRONOLOGER +CHRONOLOGERS +CHRONOLOGIC +CHRONOLOGICAL +CHRONOLOGICALLY +CHRONOLOGIES +CHRONOLOGIST +CHRONOLOGISTS +CHRONOLOGY +CHRONOMETER +CHRONOMETERS +CHRONOMETRIC +CHRONOMETRICAL +CHRONOMETRIES +CHRONOMETRY +CHRONON +CHRONONS +CHRONOTHERAPIES +CHRONOTHERAPY +CHRYSALID +CHRYSALIDES +CHRYSALIDS +CHRYSALIS +CHRYSALISES +CHRYSANTHEMUM +CHRYSANTHEMUMS +CHRYSAROBIN +CHRYSAROBINS +CHRYSOBERYL +CHRYSOBERYLS +CHRYSOLITE +CHRYSOLITES +CHRYSOMELID +CHRYSOMELIDS +CHRYSOPHYTE +CHRYSOPHYTES +CHRYSOPRASE +CHRYSOPRASES +CHRYSOTILE +CHRYSOTILES +CHTHONIAN +CHTHONIC +CHUB +CHUBASCO +CHUBASCOS +CHUBBIER +CHUBBIEST +CHUBBILY +CHUBBINESS +CHUBBINESSES +CHUBBY +CHUBS +CHUCK +CHUCKAWALLA +CHUCKAWALLAS +CHUCKED +CHUCKHOLE +CHUCKHOLES +CHUCKIES +CHUCKING +CHUCKLE +CHUCKLED +CHUCKLEHEAD +CHUCKLEHEADED +CHUCKLEHEADS +CHUCKLER +CHUCKLERS +CHUCKLES +CHUCKLESOME +CHUCKLING +CHUCKLINGLY +CHUCKS +CHUCKWALLA +CHUCKWALLAS +CHUCKY +CHUDDAH +CHUDDAHS +CHUDDAR +CHUDDARS +CHUDDER +CHUDDERS +CHUFA +CHUFAS +CHUFF +CHUFFED +CHUFFER +CHUFFEST +CHUFFIER +CHUFFIEST +CHUFFING +CHUFFS +CHUFFY +CHUG +CHUGALUG +CHUGALUGGED +CHUGALUGGING +CHUGALUGS +CHUGGED +CHUGGER +CHUGGERS +CHUGGING +CHUGS +CHUKAR +CHUKARS +CHUKKA +CHUKKAR +CHUKKARS +CHUKKAS +CHUKKER +CHUKKERS +CHUM +CHUMMED +CHUMMIER +CHUMMIEST +CHUMMILY +CHUMMINESS +CHUMMINESSES +CHUMMING +CHUMMY +CHUMP +CHUMPED +CHUMPING +CHUMPS +CHUMS +CHUMSHIP +CHUMSHIPS +CHUNK +CHUNKED +CHUNKIER +CHUNKIEST +CHUNKILY +CHUNKING +CHUNKS +CHUNKY +CHUNNEL +CHUNNELS +CHUNTER +CHUNTERED +CHUNTERING +CHUNTERS +CHUPPA +CHUPPAH +CHUPPAHS +CHUPPAS +CHURCH +CHURCHED +CHURCHES +CHURCHGOER +CHURCHGOERS +CHURCHGOING +CHURCHGOINGS +CHURCHIANITIES +CHURCHIANITY +CHURCHIER +CHURCHIEST +CHURCHING +CHURCHINGS +CHURCHLESS +CHURCHLIER +CHURCHLIEST +CHURCHLINESS +CHURCHLINESSES +CHURCHLY +CHURCHMAN +CHURCHMANSHIP +CHURCHMANSHIPS +CHURCHMEN +CHURCHWARDEN +CHURCHWARDENS +CHURCHWOMAN +CHURCHWOMEN +CHURCHY +CHURCHYARD +CHURCHYARDS +CHURL +CHURLISH +CHURLISHLY +CHURLISHNESS +CHURLISHNESSES +CHURLS +CHURN +CHURNED +CHURNER +CHURNERS +CHURNING +CHURNINGS +CHURNS +CHURR +CHURRED +CHURRIGUERESQUE +CHURRING +CHURRO +CHURROS +CHURRS +CHUTE +CHUTED +CHUTES +CHUTING +CHUTIST +CHUTISTS +CHUTNEE +CHUTNEES +CHUTNEY +CHUTNEYS +CHUTZPA +CHUTZPAH +CHUTZPAHS +CHUTZPAS +CHYLE +CHYLES +CHYLOMICRON +CHYLOMICRONS +CHYLOUS +CHYME +CHYMES +CHYMIC +CHYMICS +CHYMIST +CHYMISTS +CHYMOSIN +CHYMOSINS +CHYMOTRYPSIN +CHYMOTRYPSINS +CHYMOTRYPTIC +CHYMOUS +CHYTRID +CHYTRIDS +CIAO +CIBOL +CIBOLS +CIBORIA +CIBORIUM +CIBOULE +CIBOULES +CICADA +CICADAE +CICADAS +CICALA +CICALAS +CICALE +CICATRICE +CICATRICES +CICATRICIAL +CICATRIX +CICATRIXES +CICATRIZATION +CICATRIZATIONS +CICATRIZE +CICATRIZED +CICATRIZES +CICATRIZING +CICELIES +CICELY +CICERO +CICERONE +CICERONES +CICERONI +CICEROS +CICHLID +CICHLIDAE +CICHLIDS +CICISBEI +CICISBEISM +CICISBEISMS +CICISBEO +CICISBEOS +CICOREE +CICOREES +CIDER +CIDERS +CIG +CIGAR +CIGARET +CIGARETS +CIGARETTE +CIGARETTES +CIGARILLO +CIGARILLOS +CIGARLIKE +CIGARS +CIGS +CIGUATERA +CIGUATERAS +CILANTRO +CILANTROS +CILIA +CILIARY +CILIATE +CILIATED +CILIATELY +CILIATES +CILIATION +CILIATIONS +CILICE +CILICES +CILIOLATE +CILIUM +CIMBALOM +CIMBALOMS +CIMETIDINE +CIMETIDINES +CIMEX +CIMICES +CINCH +CINCHED +CINCHES +CINCHING +CINCHONA +CINCHONAS +CINCHONIC +CINCHONINE +CINCHONINES +CINCHONISM +CINCHONISMS +CINCTURE +CINCTURED +CINCTURES +CINCTURING +CINDER +CINDERED +CINDERING +CINDEROUS +CINDERS +CINDERY +CINE +CINEAST +CINEASTE +CINEASTES +CINEASTS +CINEMA +CINEMAGOER +CINEMAGOERS +CINEMAS +CINEMATHEQUE +CINEMATHEQUES +CINEMATIC +CINEMATICALLY +CINEMATIZE +CINEMATIZED +CINEMATIZES +CINEMATIZING +CINEMATOGRAPH +CINEMATOGRAPHER +CINEMATOGRAPHIC +CINEMATOGRAPHS +CINEMATOGRAPHY +CINEOL +CINEOLE +CINEOLES +CINEOLS +CINEPHILE +CINEPHILES +CINERARIA +CINERARIAS +CINERARIUM +CINERARY +CINEREOUS +CINERIN +CINERINS +CINES +CINGULA +CINGULAR +CINGULATE +CINGULUM +CINNABAR +CINNABARINE +CINNABARS +CINNAMIC +CINNAMON +CINNAMONS +CINNAMONY +CINNAMYL +CINNAMYLS +CINQUAIN +CINQUAINS +CINQUE +CINQUECENTIST +CINQUECENTISTS +CINQUECENTO +CINQUECENTOS +CINQUEFOIL +CINQUEFOILS +CINQUES +CION +CIONS +CIOPPINO +CIOPPINOS +CIPHER +CIPHERED +CIPHERER +CIPHERERS +CIPHERING +CIPHERS +CIPHERTEXT +CIPHERTEXTS +CIPHONIES +CIPHONY +CIPOLIN +CIPOLINS +CIPOLLINO +CIPOLLINOS +CIRCA +CIRCADIAN +CIRCINATE +CIRCINATELY +CIRCLE +CIRCLED +CIRCLER +CIRCLERS +CIRCLES +CIRCLET +CIRCLETS +CIRCLING +CIRCUIT +CIRCUITAL +CIRCUITED +CIRCUITIES +CIRCUITING +CIRCUITOUS +CIRCUITOUSLY +CIRCUITOUSNESS +CIRCUITRIES +CIRCUITRY +CIRCUITS +CIRCUITY +CIRCULAR +CIRCULARISE +CIRCULARISED +CIRCULARISES +CIRCULARISING +CIRCULARITIES +CIRCULARITY +CIRCULARIZATION +CIRCULARIZE +CIRCULARIZED +CIRCULARIZES +CIRCULARIZING +CIRCULARLY +CIRCULARNESS +CIRCULARNESSES +CIRCULARS +CIRCULATABLE +CIRCULATE +CIRCULATED +CIRCULATES +CIRCULATING +CIRCULATION +CIRCULATIONS +CIRCULATIVE +CIRCULATOR +CIRCULATORS +CIRCULATORY +CIRCUMAMBIENT +CIRCUMAMBIENTLY +CIRCUMAMBULATE +CIRCUMAMBULATED +CIRCUMAMBULATES +CIRCUMCENTER +CIRCUMCENTERS +CIRCUMCIRCLE +CIRCUMCIRCLES +CIRCUMCISE +CIRCUMCISED +CIRCUMCISER +CIRCUMCISERS +CIRCUMCISES +CIRCUMCISING +CIRCUMCISION +CIRCUMCISIONS +CIRCUMFERENCE +CIRCUMFERENCES +CIRCUMFERENTIAL +CIRCUMFLEX +CIRCUMFLEXES +CIRCUMFLUENT +CIRCUMFLUOUS +CIRCUMFUSE +CIRCUMFUSED +CIRCUMFUSES +CIRCUMFUSING +CIRCUMFUSION +CIRCUMFUSIONS +CIRCUMJACENT +CIRCUMLOCUTION +CIRCUMLOCUTIONS +CIRCUMLOCUTORY +CIRCUMLUNAR +CIRCUMNAVIGATE +CIRCUMNAVIGATED +CIRCUMNAVIGATES +CIRCUMNAVIGATOR +CIRCUMPOLAR +CIRCUMSCISSILE +CIRCUMSCRIBE +CIRCUMSCRIBED +CIRCUMSCRIBES +CIRCUMSCRIBING +CIRCUMSCRIPTION +CIRCUMSPECT +CIRCUMSPECTION +CIRCUMSPECTIONS +CIRCUMSPECTLY +CIRCUMSTANCE +CIRCUMSTANCED +CIRCUMSTANCES +CIRCUMSTANTIAL +CIRCUMSTANTIATE +CIRCUMSTELLAR +CIRCUMVALLATE +CIRCUMVALLATED +CIRCUMVALLATES +CIRCUMVALLATING +CIRCUMVALLATION +CIRCUMVENT +CIRCUMVENTED +CIRCUMVENTING +CIRCUMVENTION +CIRCUMVENTIONS +CIRCUMVENTS +CIRCUMVOLUTION +CIRCUMVOLUTIONS +CIRCUS +CIRCUSES +CIRCUSY +CIRE +CIRES +CIRQUE +CIRQUES +CIRRATE +CIRRHOSED +CIRRHOSES +CIRRHOSIS +CIRRHOTIC +CIRRHOTICS +CIRRI +CIRRIFORM +CIRRIPED +CIRRIPEDE +CIRRIPEDES +CIRRIPEDS +CIRROCUMULI +CIRROCUMULUS +CIRROSE +CIRROSTRATI +CIRROSTRATUS +CIRROUS +CIRRUS +CIRSOID +CIS +CISALPINE +CISCO +CISCOES +CISCOS +CISLUNAR +CISPLATIN +CISPLATINS +CISSIES +CISSOID +CISSOIDS +CISSY +CIST +CISTED +CISTERN +CISTERNA +CISTERNAE +CISTERNAL +CISTERNS +CISTRON +CISTRONIC +CISTRONS +CISTS +CISTUS +CISTUSES +CITABLE +CITADEL +CITADELS +CITATION +CITATIONAL +CITATIONS +CITATOR +CITATORS +CITATORY +CITE +CITEABLE +CITED +CITER +CITERS +CITES +CITHARA +CITHARAS +CITHER +CITHERN +CITHERNS +CITHERS +CITHREN +CITHRENS +CITIED +CITIES +CITIFICATION +CITIFICATIONS +CITIFIED +CITIFIES +CITIFY +CITIFYING +CITING +CITIZEN +CITIZENESS +CITIZENESSES +CITIZENLY +CITIZENRIES +CITIZENRY +CITIZENS +CITIZENSHIP +CITIZENSHIPS +CITOLA +CITOLAS +CITOLE +CITOLES +CITRAL +CITRALS +CITRATE +CITRATED +CITRATES +CITREOUS +CITRIC +CITRICULTURE +CITRICULTURES +CITRICULTURIST +CITRICULTURISTS +CITRIN +CITRINE +CITRINES +CITRININ +CITRININS +CITRINS +CITRON +CITRONELLA +CITRONELLAL +CITRONELLALS +CITRONELLAS +CITRONELLOL +CITRONELLOLS +CITRONS +CITROUS +CITRULLINE +CITRULLINES +CITRUS +CITRUSES +CITRUSY +CITTERN +CITTERNS +CITY +CITYFIED +CITYSCAPE +CITYSCAPES +CITYWARD +CITYWIDE +CIVET +CIVETLIKE +CIVETS +CIVIC +CIVICALLY +CIVICISM +CIVICISMS +CIVICS +CIVIE +CIVIES +CIVIL +CIVILIAN +CIVILIANIZATION +CIVILIANIZE +CIVILIANIZED +CIVILIANIZES +CIVILIANIZING +CIVILIANS +CIVILISATION +CIVILISATIONS +CIVILISE +CIVILISED +CIVILISES +CIVILISING +CIVILITIES +CIVILITY +CIVILIZATION +CIVILIZATIONAL +CIVILIZATIONS +CIVILIZE +CIVILIZED +CIVILIZER +CIVILIZERS +CIVILIZES +CIVILIZING +CIVILLY +CIVILNESS +CIVILNESSES +CIVISM +CIVISMS +CIVVIES +CIVVY +CLABBER +CLABBERED +CLABBERING +CLABBERS +CLACH +CLACHAN +CLACHANS +CLACHS +CLACK +CLACKED +CLACKER +CLACKERS +CLACKING +CLACKS +CLAD +CLADDAGH +CLADDAGHS +CLADDED +CLADDING +CLADDINGS +CLADE +CLADES +CLADISM +CLADISMS +CLADIST +CLADISTIC +CLADISTICALLY +CLADISTICS +CLADISTS +CLADOCERAN +CLADOCERANS +CLADODE +CLADODES +CLADODIAL +CLADOGENESES +CLADOGENESIS +CLADOGENETIC +CLADOGRAM +CLADOGRAMS +CLADOPHYLL +CLADOPHYLLS +CLADS +CLAFOUTI +CLAFOUTIS +CLAG +CLAGGED +CLAGGING +CLAGS +CLAIM +CLAIMABLE +CLAIMANT +CLAIMANTS +CLAIMED +CLAIMER +CLAIMERS +CLAIMING +CLAIMS +CLAIRAUDIENCE +CLAIRAUDIENCES +CLAIRAUDIENT +CLAIRAUDIENTLY +CLAIRVOYANCE +CLAIRVOYANCES +CLAIRVOYANT +CLAIRVOYANTLY +CLAIRVOYANTS +CLAM +CLAMANT +CLAMANTLY +CLAMBAKE +CLAMBAKES +CLAMBER +CLAMBERED +CLAMBERER +CLAMBERERS +CLAMBERING +CLAMBERS +CLAMLIKE +CLAMMED +CLAMMER +CLAMMERS +CLAMMIER +CLAMMIEST +CLAMMILY +CLAMMINESS +CLAMMINESSES +CLAMMING +CLAMMY +CLAMOR +CLAMORED +CLAMORER +CLAMORERS +CLAMORING +CLAMOROUS +CLAMOROUSLY +CLAMOROUSNESS +CLAMOROUSNESSES +CLAMORS +CLAMOUR +CLAMOURED +CLAMOURING +CLAMOURS +CLAMP +CLAMPDOWN +CLAMPDOWNS +CLAMPED +CLAMPER +CLAMPERS +CLAMPING +CLAMPS +CLAMS +CLAMSHELL +CLAMSHELLS +CLAMWORM +CLAMWORMS +CLAN +CLANDESTINE +CLANDESTINELY +CLANDESTINENESS +CLANDESTINITIES +CLANDESTINITY +CLANG +CLANGED +CLANGER +CLANGERS +CLANGING +CLANGOR +CLANGORED +CLANGORING +CLANGOROUS +CLANGOROUSLY +CLANGORS +CLANGOUR +CLANGOURED +CLANGOURING +CLANGOURS +CLANGS +CLANK +CLANKED +CLANKIER +CLANKIEST +CLANKING +CLANKINGLY +CLANKS +CLANKY +CLANNISH +CLANNISHLY +CLANNISHNESS +CLANNISHNESSES +CLANS +CLANSMAN +CLANSMEN +CLAP +CLAPBOARD +CLAPBOARDED +CLAPBOARDING +CLAPBOARDS +CLAPPED +CLAPPER +CLAPPERCLAW +CLAPPERCLAWED +CLAPPERCLAWING +CLAPPERCLAWS +CLAPPERS +CLAPPING +CLAPS +CLAPT +CLAPTRAP +CLAPTRAPS +CLAQUE +CLAQUER +CLAQUERS +CLAQUES +CLAQUEUR +CLAQUEURS +CLARENCE +CLARENCES +CLARET +CLARETS +CLARIES +CLARIFICATION +CLARIFICATIONS +CLARIFIED +CLARIFIER +CLARIFIERS +CLARIFIES +CLARIFY +CLARIFYING +CLARINET +CLARINETIST +CLARINETISTS +CLARINETS +CLARINETTIST +CLARINETTISTS +CLARION +CLARIONED +CLARIONET +CLARIONETS +CLARIONING +CLARIONS +CLARITIES +CLARITY +CLARKIA +CLARKIAS +CLARO +CLAROES +CLAROS +CLARY +CLASH +CLASHED +CLASHER +CLASHERS +CLASHES +CLASHING +CLASP +CLASPED +CLASPER +CLASPERS +CLASPING +CLASPS +CLASPT +CLASS +CLASSABLE +CLASSED +CLASSER +CLASSERS +CLASSES +CLASSIC +CLASSICAL +CLASSICALITIES +CLASSICALITY +CLASSICALLY +CLASSICALS +CLASSICISM +CLASSICISMS +CLASSICIST +CLASSICISTIC +CLASSICISTS +CLASSICIZE +CLASSICIZED +CLASSICIZES +CLASSICIZING +CLASSICO +CLASSICS +CLASSIER +CLASSIEST +CLASSIFIABLE +CLASSIFICATION +CLASSIFICATIONS +CLASSIFICATORY +CLASSIFIED +CLASSIFIER +CLASSIFIERS +CLASSIFIES +CLASSIFY +CLASSIFYING +CLASSILY +CLASSINESS +CLASSINESSES +CLASSING +CLASSIS +CLASSISM +CLASSISMS +CLASSIST +CLASSISTS +CLASSLESS +CLASSLESSNESS +CLASSLESSNESSES +CLASSMATE +CLASSMATES +CLASSON +CLASSONS +CLASSROOM +CLASSROOMS +CLASSWORK +CLASSWORKS +CLASSY +CLAST +CLASTIC +CLASTICS +CLASTS +CLATHRATE +CLATHRATES +CLATTER +CLATTERED +CLATTERER +CLATTERERS +CLATTERING +CLATTERINGLY +CLATTERS +CLATTERY +CLAUCHT +CLAUDICATION +CLAUDICATIONS +CLAUGHT +CLAUGHTED +CLAUGHTING +CLAUGHTS +CLAUSAL +CLAUSE +CLAUSES +CLAUSTRA +CLAUSTRAL +CLAUSTROPHOBE +CLAUSTROPHOBES +CLAUSTROPHOBIA +CLAUSTROPHOBIAS +CLAUSTROPHOBIC +CLAUSTRUM +CLAVATE +CLAVATELY +CLAVATION +CLAVATIONS +CLAVE +CLAVER +CLAVERED +CLAVERING +CLAVERS +CLAVES +CLAVI +CLAVICHORD +CLAVICHORDIST +CLAVICHORDISTS +CLAVICHORDS +CLAVICLE +CLAVICLES +CLAVICORN +CLAVICULAR +CLAVIER +CLAVIERIST +CLAVIERISTIC +CLAVIERISTS +CLAVIERS +CLAVIFORM +CLAVUS +CLAW +CLAWBACK +CLAWBACKS +CLAWED +CLAWER +CLAWERS +CLAWHAMMER +CLAWING +CLAWLESS +CLAWLIKE +CLAWS +CLAXON +CLAXONS +CLAY +CLAYBANK +CLAYBANKS +CLAYED +CLAYEY +CLAYIER +CLAYIEST +CLAYING +CLAYISH +CLAYLIKE +CLAYMORE +CLAYMORES +CLAYPAN +CLAYPANS +CLAYS +CLAYSTONE +CLAYSTONES +CLAYTONIA +CLAYTONIAS +CLAYWARE +CLAYWARES +CLEAN +CLEANABILITIES +CLEANABILITY +CLEANABLE +CLEANED +CLEANER +CLEANERS +CLEANEST +CLEANHANDED +CLEANING +CLEANLIER +CLEANLIEST +CLEANLINESS +CLEANLINESSES +CLEANLY +CLEANNESS +CLEANNESSES +CLEANS +CLEANSE +CLEANSED +CLEANSER +CLEANSERS +CLEANSES +CLEANSING +CLEANUP +CLEANUPS +CLEAR +CLEARABLE +CLEARANCE +CLEARANCES +CLEARCUT +CLEARCUTS +CLEARCUTTING +CLEARED +CLEARER +CLEARERS +CLEAREST +CLEAREYED +CLEARHEADED +CLEARHEADEDLY +CLEARHEADEDNESS +CLEARING +CLEARINGHOUSE +CLEARINGHOUSES +CLEARINGS +CLEARLY +CLEARNESS +CLEARNESSES +CLEARS +CLEARSTORIES +CLEARSTORY +CLEARWEED +CLEARWEEDS +CLEARWING +CLEARWINGS +CLEAT +CLEATED +CLEATING +CLEATS +CLEAVABLE +CLEAVAGE +CLEAVAGES +CLEAVE +CLEAVED +CLEAVER +CLEAVERS +CLEAVES +CLEAVING +CLEEK +CLEEKED +CLEEKING +CLEEKS +CLEF +CLEFS +CLEFT +CLEFTED +CLEFTING +CLEFTS +CLEIDOIC +CLEISTOGAMIC +CLEISTOGAMIES +CLEISTOGAMOUS +CLEISTOGAMOUSLY +CLEISTOGAMY +CLEMATIS +CLEMATISES +CLEMENCIES +CLEMENCY +CLEMENT +CLEMENTLY +CLENCH +CLENCHED +CLENCHER +CLENCHERS +CLENCHES +CLENCHING +CLEOME +CLEOMES +CLEPE +CLEPED +CLEPES +CLEPING +CLEPSYDRA +CLEPSYDRAE +CLEPSYDRAS +CLEPT +CLERESTORIES +CLERESTORY +CLERGIES +CLERGY +CLERGYMAN +CLERGYMEN +CLERGYWOMAN +CLERGYWOMEN +CLERIC +CLERICAL +CLERICALISM +CLERICALISMS +CLERICALIST +CLERICALISTS +CLERICALLY +CLERICALS +CLERICS +CLERID +CLERIDS +CLERIHEW +CLERIHEWS +CLERISIES +CLERISY +CLERK +CLERKDOM +CLERKDOMS +CLERKED +CLERKING +CLERKISH +CLERKLIER +CLERKLIEST +CLERKLY +CLERKS +CLERKSHIP +CLERKSHIPS +CLEVEITE +CLEVEITES +CLEVER +CLEVERER +CLEVEREST +CLEVERISH +CLEVERLY +CLEVERNESS +CLEVERNESSES +CLEVIS +CLEVISES +CLEW +CLEWED +CLEWING +CLEWS +CLICHE +CLICHED +CLICHES +CLICK +CLICKABLE +CLICKED +CLICKER +CLICKERS +CLICKING +CLICKLESS +CLICKS +CLICKWRAP +CLIENT +CLIENTAGE +CLIENTAGES +CLIENTAL +CLIENTELE +CLIENTELES +CLIENTLESS +CLIENTS +CLIFF +CLIFFIER +CLIFFIEST +CLIFFLIKE +CLIFFS +CLIFFY +CLIFT +CLIFTS +CLIMACTERIC +CLIMACTERICS +CLIMACTIC +CLIMACTICALLY +CLIMATAL +CLIMATE +CLIMATES +CLIMATIC +CLIMATICALLY +CLIMATIZE +CLIMATIZED +CLIMATIZES +CLIMATIZING +CLIMATOLOGICAL +CLIMATOLOGIES +CLIMATOLOGIST +CLIMATOLOGISTS +CLIMATOLOGY +CLIMAX +CLIMAXED +CLIMAXES +CLIMAXING +CLIMAXLESS +CLIMB +CLIMBABLE +CLIMBDOWN +CLIMBDOWNS +CLIMBED +CLIMBER +CLIMBERS +CLIMBING +CLIMBS +CLIME +CLIMES +CLINAL +CLINALLY +CLINCH +CLINCHED +CLINCHER +CLINCHERS +CLINCHES +CLINCHING +CLINCHINGLY +CLINE +CLINES +CLING +CLINGED +CLINGER +CLINGERS +CLINGFISH +CLINGFISHES +CLINGIER +CLINGIEST +CLINGING +CLINGS +CLINGSTONE +CLINGSTONES +CLINGY +CLINIC +CLINICAL +CLINICALLY +CLINICIAN +CLINICIANS +CLINICS +CLINK +CLINKED +CLINKER +CLINKERED +CLINKERING +CLINKERS +CLINKING +CLINKS +CLINOMETER +CLINOMETERS +CLINQUANT +CLINQUANTS +CLINTONIA +CLINTONIAS +CLIOMETRIC +CLIOMETRICIAN +CLIOMETRICIANS +CLIOMETRICS +CLIP +CLIPBOARD +CLIPBOARDS +CLIPPABLE +CLIPPED +CLIPPER +CLIPPERS +CLIPPING +CLIPPINGS +CLIPS +CLIPSHEET +CLIPSHEETS +CLIPT +CLIQUE +CLIQUED +CLIQUES +CLIQUEY +CLIQUIER +CLIQUIEST +CLIQUING +CLIQUISH +CLIQUISHLY +CLIQUISHNESS +CLIQUISHNESSES +CLIQUY +CLITELLA +CLITELLUM +CLITIC +CLITICIZE +CLITICIZED +CLITICIZES +CLITICIZING +CLITICS +CLITORAL +CLITORECTOMIES +CLITORECTOMY +CLITORIC +CLITORIDECTOMY +CLITORIDES +CLITORIS +CLITORISES +CLIVERS +CLIVIA +CLIVIAS +CLOACA +CLOACAE +CLOACAL +CLOACAS +CLOAK +CLOAKED +CLOAKING +CLOAKROOM +CLOAKROOMS +CLOAKS +CLOBBER +CLOBBERED +CLOBBERING +CLOBBERS +CLOCHARD +CLOCHARDS +CLOCHE +CLOCHES +CLOCK +CLOCKED +CLOCKER +CLOCKERS +CLOCKING +CLOCKLIKE +CLOCKS +CLOCKWISE +CLOCKWORK +CLOCKWORKS +CLOD +CLODDIER +CLODDIEST +CLODDISH +CLODDISHNESS +CLODDISHNESSES +CLODDY +CLODHOPPER +CLODHOPPERS +CLODHOPPING +CLODPATE +CLODPATES +CLODPOLE +CLODPOLES +CLODPOLL +CLODPOLLS +CLODS +CLOFIBRATE +CLOFIBRATES +CLOG +CLOGGED +CLOGGER +CLOGGERS +CLOGGIER +CLOGGIEST +CLOGGILY +CLOGGING +CLOGGY +CLOGS +CLOISONNE +CLOISONNES +CLOISTER +CLOISTERED +CLOISTERING +CLOISTERS +CLOISTRAL +CLOISTRESS +CLOISTRESSES +CLOMB +CLOMIPHENE +CLOMIPHENES +CLOMP +CLOMPED +CLOMPING +CLOMPS +CLON +CLONAL +CLONALLY +CLONE +CLONED +CLONER +CLONERS +CLONES +CLONIC +CLONICITIES +CLONICITY +CLONIDINE +CLONIDINES +CLONING +CLONINGS +CLONISM +CLONISMS +CLONK +CLONKED +CLONKING +CLONKS +CLONS +CLONUS +CLONUSES +CLOOT +CLOOTS +CLOP +CLOPPED +CLOPPING +CLOPS +CLOQUE +CLOQUES +CLOSABLE +CLOSE +CLOSEABLE +CLOSED +CLOSEDOWN +CLOSEDOWNS +CLOSEFISTED +CLOSELY +CLOSEMOUTHED +CLOSENESS +CLOSENESSES +CLOSEOUT +CLOSEOUTS +CLOSER +CLOSERS +CLOSES +CLOSEST +CLOSESTOOL +CLOSESTOOLS +CLOSET +CLOSETED +CLOSETFUL +CLOSETFULS +CLOSETING +CLOSETS +CLOSEUP +CLOSEUPS +CLOSING +CLOSINGS +CLOSTRIDIA +CLOSTRIDIAL +CLOSTRIDIUM +CLOSURE +CLOSURED +CLOSURES +CLOSURING +CLOT +CLOTH +CLOTHBOUND +CLOTHE +CLOTHED +CLOTHES +CLOTHESHORSE +CLOTHESHORSES +CLOTHESLINE +CLOTHESLINED +CLOTHESLINES +CLOTHESLINING +CLOTHESPIN +CLOTHESPINS +CLOTHESPRESS +CLOTHESPRESSES +CLOTHIER +CLOTHIERS +CLOTHING +CLOTHINGS +CLOTHLIKE +CLOTHS +CLOTS +CLOTTED +CLOTTING +CLOTTY +CLOTURE +CLOTURED +CLOTURES +CLOTURING +CLOUD +CLOUDBERRIES +CLOUDBERRY +CLOUDBURST +CLOUDBURSTS +CLOUDED +CLOUDIER +CLOUDIEST +CLOUDILY +CLOUDINESS +CLOUDINESSES +CLOUDING +CLOUDLAND +CLOUDLANDS +CLOUDLESS +CLOUDLESSLY +CLOUDLESSNESS +CLOUDLESSNESSES +CLOUDLET +CLOUDLETS +CLOUDLIKE +CLOUDS +CLOUDSCAPE +CLOUDSCAPES +CLOUDY +CLOUGH +CLOUGHS +CLOUR +CLOURED +CLOURING +CLOURS +CLOUT +CLOUTED +CLOUTER +CLOUTERS +CLOUTING +CLOUTS +CLOVE +CLOVEN +CLOVER +CLOVERED +CLOVERLEAF +CLOVERLEAFS +CLOVERLEAVES +CLOVERS +CLOVERY +CLOVES +CLOWDER +CLOWDERS +CLOWN +CLOWNED +CLOWNERIES +CLOWNERY +CLOWNING +CLOWNISH +CLOWNISHLY +CLOWNISHNESS +CLOWNISHNESSES +CLOWNS +CLOXACILLIN +CLOXACILLINS +CLOY +CLOYED +CLOYING +CLOYINGLY +CLOYS +CLOZAPINE +CLOZAPINES +CLOZE +CLOZES +CLUB +CLUBABLE +CLUBBABLE +CLUBBED +CLUBBER +CLUBBERS +CLUBBIER +CLUBBIEST +CLUBBINESS +CLUBBINESSES +CLUBBING +CLUBBISH +CLUBBY +CLUBFACE +CLUBFACES +CLUBFEET +CLUBFOOT +CLUBFOOTED +CLUBHAND +CLUBHANDS +CLUBHAUL +CLUBHAULED +CLUBHAULING +CLUBHAULS +CLUBHEAD +CLUBHEADS +CLUBHOUSE +CLUBHOUSES +CLUBMAN +CLUBMEN +CLUBROOM +CLUBROOMS +CLUBROOT +CLUBROOTS +CLUBS +CLUBWOMAN +CLUBWOMEN +CLUCK +CLUCKED +CLUCKING +CLUCKS +CLUE +CLUED +CLUEING +CLUELESS +CLUES +CLUING +CLUMBER +CLUMBERS +CLUMP +CLUMPED +CLUMPIER +CLUMPIEST +CLUMPING +CLUMPISH +CLUMPLIKE +CLUMPS +CLUMPY +CLUMSIER +CLUMSIEST +CLUMSILY +CLUMSINESS +CLUMSINESSES +CLUMSY +CLUNG +CLUNK +CLUNKED +CLUNKER +CLUNKERS +CLUNKIER +CLUNKIEST +CLUNKING +CLUNKS +CLUNKY +CLUPEID +CLUPEIDS +CLUPEOID +CLUPEOIDS +CLUSTER +CLUSTERED +CLUSTERING +CLUSTERS +CLUSTERY +CLUTCH +CLUTCHED +CLUTCHES +CLUTCHING +CLUTCHY +CLUTTER +CLUTTERED +CLUTTERING +CLUTTERS +CLUTTERY +CLYPEAL +CLYPEATE +CLYPEI +CLYPEUS +CLYSTER +CLYSTERS +CNIDA +CNIDAE +CNIDARIAN +CNIDARIANS +COACERVATE +COACERVATES +COACERVATION +COACERVATIONS +COACH +COACHABLE +COACHED +COACHER +COACHERS +COACHES +COACHING +COACHMAN +COACHMEN +COACHWORK +COACHWORKS +COACT +COACTED +COACTING +COACTION +COACTIONS +COACTIVE +COACTOR +COACTORS +COACTS +COADAPTATION +COADAPTATIONS +COADAPTED +COADJUTOR +COADJUTORS +COADJUTRICES +COADJUTRIX +COADMIRE +COADMIRED +COADMIRES +COADMIRING +COADMIT +COADMITS +COADMITTED +COADMITTING +COADUNATE +COAEVAL +COAEVALS +COAGENCIES +COAGENCY +COAGENT +COAGENTS +COAGULA +COAGULABILITIES +COAGULABILITY +COAGULABLE +COAGULANT +COAGULANTS +COAGULASE +COAGULASES +COAGULATE +COAGULATED +COAGULATES +COAGULATING +COAGULATION +COAGULATIONS +COAGULUM +COAGULUMS +COAL +COALA +COALAS +COALBIN +COALBINS +COALBOX +COALBOXES +COALED +COALER +COALERS +COALESCE +COALESCED +COALESCENCE +COALESCENCES +COALESCENT +COALESCES +COALESCING +COALFIELD +COALFIELDS +COALFISH +COALFISHES +COALHOLE +COALHOLES +COALIER +COALIEST +COALIFICATION +COALIFICATIONS +COALIFIED +COALIFIES +COALIFY +COALIFYING +COALING +COALITION +COALITIONIST +COALITIONISTS +COALITIONS +COALLESS +COALPIT +COALPITS +COALS +COALSACK +COALSACKS +COALSHED +COALSHEDS +COALY +COALYARD +COALYARDS +COAMING +COAMINGS +COANCHOR +COANCHORED +COANCHORING +COANCHORS +COANNEX +COANNEXED +COANNEXES +COANNEXING +COAPPEAR +COAPPEARED +COAPPEARING +COAPPEARS +COAPT +COAPTATION +COAPTATIONS +COAPTED +COAPTING +COAPTS +COARCTATE +COARCTATION +COARCTATIONS +COARSE +COARSELY +COARSEN +COARSENED +COARSENESS +COARSENESSES +COARSENING +COARSENS +COARSER +COARSEST +COASSIST +COASSISTED +COASSISTING +COASSISTS +COASSUME +COASSUMED +COASSUMES +COASSUMING +COAST +COASTAL +COASTALLY +COASTED +COASTER +COASTERS +COASTGUARD +COASTGUARDMAN +COASTGUARDMEN +COASTGUARDS +COASTGUARDSMAN +COASTGUARDSMEN +COASTING +COASTINGS +COASTLAND +COASTLANDS +COASTLINE +COASTLINES +COASTS +COASTWARD +COASTWARDS +COASTWISE +COAT +COATDRESS +COATDRESSES +COATED +COATEE +COATEES +COATER +COATERS +COATI +COATIMUNDI +COATIMUNDIS +COATING +COATINGS +COATIS +COATLESS +COATRACK +COATRACKS +COATROOM +COATROOMS +COATS +COATTAIL +COATTAILS +COATTEND +COATTENDED +COATTENDING +COATTENDS +COATTEST +COATTESTED +COATTESTING +COATTESTS +COAUTHOR +COAUTHORED +COAUTHORING +COAUTHORS +COAUTHORSHIP +COAUTHORSHIPS +COAX +COAXAL +COAXED +COAXER +COAXERS +COAXES +COAXIAL +COAXIALLY +COAXING +COAXINGLY +COB +COBALAMIN +COBALAMINS +COBALT +COBALTIC +COBALTINE +COBALTINES +COBALTITE +COBALTITES +COBALTOUS +COBALTS +COBB +COBBER +COBBERS +COBBIER +COBBIEST +COBBLE +COBBLED +COBBLER +COBBLERS +COBBLES +COBBLESTONE +COBBLESTONED +COBBLESTONES +COBBLING +COBBS +COBBY +COBELLIGERENT +COBELLIGERENTS +COBIA +COBIAS +COBLE +COBLES +COBNUT +COBNUTS +COBRA +COBRAS +COBS +COBWEB +COBWEBBED +COBWEBBIER +COBWEBBIEST +COBWEBBING +COBWEBBY +COBWEBS +COCA +COCAIN +COCAINE +COCAINES +COCAINISM +COCAINISMS +COCAINIZATION +COCAINIZATIONS +COCAINIZE +COCAINIZED +COCAINIZES +COCAINIZING +COCAINS +COCAPTAIN +COCAPTAINED +COCAPTAINING +COCAPTAINS +COCARBOXYLASE +COCARBOXYLASES +COCARCINOGEN +COCARCINOGENIC +COCARCINOGENS +COCAS +COCATALYST +COCATALYSTS +COCCAL +COCCI +COCCIC +COCCID +COCCIDIA +COCCIDIOSES +COCCIDIOSIS +COCCIDIUM +COCCIDS +COCCOID +COCCOIDAL +COCCOIDS +COCCOLITH +COCCOLITHS +COCCOUS +COCCUS +COCCYGEAL +COCCYGES +COCCYX +COCCYXES +COCHAIR +COCHAIRED +COCHAIRING +COCHAIRMAN +COCHAIRMEN +COCHAIRPERSON +COCHAIRPERSONS +COCHAIRS +COCHAIRWOMAN +COCHAIRWOMEN +COCHAMPION +COCHAMPIONS +COCHIN +COCHINEAL +COCHINEALS +COCHINS +COCHLEA +COCHLEAE +COCHLEAR +COCHLEAS +COCHLEATE +COCINERA +COCINERAS +COCK +COCKADE +COCKADED +COCKADES +COCKALORUM +COCKALORUMS +COCKAMAMIE +COCKAMAMY +COCKAPOO +COCKAPOOS +COCKATEEL +COCKATEELS +COCKATIEL +COCKATIELS +COCKATOO +COCKATOOS +COCKATRICE +COCKATRICES +COCKBILL +COCKBILLED +COCKBILLING +COCKBILLS +COCKBOAT +COCKBOATS +COCKCHAFER +COCKCHAFERS +COCKCROW +COCKCROWS +COCKED +COCKER +COCKERED +COCKEREL +COCKERELS +COCKERING +COCKERS +COCKEYE +COCKEYED +COCKEYEDLY +COCKEYEDNESS +COCKEYEDNESSES +COCKEYES +COCKFIGHT +COCKFIGHTING +COCKFIGHTINGS +COCKFIGHTS +COCKHORSE +COCKHORSES +COCKIER +COCKIEST +COCKILY +COCKINESS +COCKINESSES +COCKING +COCKISH +COCKLE +COCKLEBUR +COCKLEBURS +COCKLED +COCKLES +COCKLESHELL +COCKLESHELLS +COCKLIKE +COCKLING +COCKLOFT +COCKLOFTS +COCKNEY +COCKNEYFIED +COCKNEYFIES +COCKNEYFY +COCKNEYFYING +COCKNEYISH +COCKNEYISM +COCKNEYISMS +COCKNEYS +COCKPIT +COCKPITS +COCKROACH +COCKROACHES +COCKS +COCKSCOMB +COCKSCOMBS +COCKSFOOT +COCKSFOOTS +COCKSHIES +COCKSHUT +COCKSHUTS +COCKSHY +COCKSPUR +COCKSPURS +COCKSUCKER +COCKSUCKERS +COCKSURE +COCKSURELY +COCKSURENESS +COCKSURENESSES +COCKSWAIN +COCKSWAINS +COCKTAIL +COCKTAILED +COCKTAILING +COCKTAILS +COCKUP +COCKUPS +COCKY +COCO +COCOA +COCOANUT +COCOANUTS +COCOAS +COCOBOLA +COCOBOLAS +COCOBOLO +COCOBOLOS +COCOMAT +COCOMATS +COCOMPOSER +COCOMPOSERS +COCONSPIRATOR +COCONSPIRATORS +COCONUT +COCONUTS +COCOON +COCOONED +COCOONING +COCOONINGS +COCOONS +COCOPLUM +COCOPLUMS +COCOS +COCOTTE +COCOTTES +COCOUNSEL +COCOUNSELED +COCOUNSELING +COCOUNSELLED +COCOUNSELLING +COCOUNSELS +COCOYAM +COCOYAMS +COCOZELLE +COCOZELLES +COCREATE +COCREATED +COCREATES +COCREATING +COCREATOR +COCREATORS +COCULTIVATE +COCULTIVATED +COCULTIVATES +COCULTIVATING +COCULTIVATION +COCULTIVATIONS +COCULTURE +COCULTURED +COCULTURES +COCULTURING +COCURATOR +COCURATORS +COCURRICULAR +COD +CODA +CODABLE +CODAS +CODDED +CODDER +CODDERS +CODDING +CODDLE +CODDLED +CODDLER +CODDLERS +CODDLES +CODDLING +CODE +CODEBOOK +CODEBOOKS +CODEBTOR +CODEBTORS +CODEC +CODECS +CODED +CODEFENDANT +CODEFENDANTS +CODEIA +CODEIAS +CODEIN +CODEINA +CODEINAS +CODEINE +CODEINES +CODEINS +CODELESS +CODEN +CODENS +CODEPENDENCE +CODEPENDENCES +CODEPENDENCIES +CODEPENDENCY +CODEPENDENT +CODEPENDENTS +CODER +CODERIVE +CODERIVED +CODERIVES +CODERIVING +CODERS +CODES +CODESIGN +CODESIGNED +CODESIGNING +CODESIGNS +CODETERMINATION +CODEVELOP +CODEVELOPED +CODEVELOPER +CODEVELOPERS +CODEVELOPING +CODEVELOPS +CODEX +CODFISH +CODFISHES +CODGER +CODGERS +CODICES +CODICIL +CODICILLARY +CODICILS +CODICOLOGICAL +CODICOLOGIES +CODICOLOGY +CODIFIABILITIES +CODIFIABILITY +CODIFICATION +CODIFICATIONS +CODIFIED +CODIFIER +CODIFIERS +CODIFIES +CODIFY +CODIFYING +CODING +CODIRECT +CODIRECTED +CODIRECTING +CODIRECTION +CODIRECTIONS +CODIRECTOR +CODIRECTORS +CODIRECTS +CODISCOVER +CODISCOVERED +CODISCOVERER +CODISCOVERERS +CODISCOVERING +CODISCOVERS +CODLIN +CODLING +CODLINGS +CODLINS +CODOMINANT +CODOMINANTS +CODON +CODONS +CODPIECE +CODPIECES +CODRIVE +CODRIVEN +CODRIVER +CODRIVERS +CODRIVES +CODRIVING +CODROVE +CODS +CODSWALLOP +CODSWALLOPS +COED +COEDIT +COEDITED +COEDITING +COEDITOR +COEDITORS +COEDITS +COEDS +COEDUCATION +COEDUCATIONAL +COEDUCATIONALLY +COEDUCATIONS +COEFFECT +COEFFECTS +COEFFICIENT +COEFFICIENTS +COELACANTH +COELACANTHS +COELENTERA +COELENTERATE +COELENTERATES +COELENTERON +COELIAC +COELOM +COELOMATA +COELOMATE +COELOMATES +COELOME +COELOMES +COELOMIC +COELOMS +COELOSTAT +COELOSTATS +COEMBODIED +COEMBODIES +COEMBODY +COEMBODYING +COEMPLOY +COEMPLOYED +COEMPLOYING +COEMPLOYS +COEMPT +COEMPTED +COEMPTING +COEMPTS +COENACT +COENACTED +COENACTING +COENACTS +COENAMOR +COENAMORED +COENAMORING +COENAMORS +COENDURE +COENDURED +COENDURES +COENDURING +COENOBITE +COENOBITES +COENOCYTE +COENOCYTES +COENOCYTIC +COENOSARC +COENOSARCS +COENURE +COENURES +COENURI +COENURUS +COENZYMATIC +COENZYMATICALLY +COENZYME +COENZYMES +COEQUAL +COEQUALITIES +COEQUALITY +COEQUALLY +COEQUALS +COEQUATE +COEQUATED +COEQUATES +COEQUATING +COERCE +COERCED +COERCER +COERCERS +COERCES +COERCIBLE +COERCIBLY +COERCING +COERCION +COERCIONS +COERCIVE +COERCIVELY +COERCIVENESS +COERCIVENESSES +COERCIVITIES +COERCIVITY +COERECT +COERECTED +COERECTING +COERECTS +COESITE +COESITES +COETANEOUS +COETERNAL +COEVAL +COEVALITIES +COEVALITY +COEVALLY +COEVALS +COEVOLUTION +COEVOLUTIONARY +COEVOLUTIONS +COEVOLVE +COEVOLVED +COEVOLVES +COEVOLVING +COEXECUTOR +COEXECUTORS +COEXERT +COEXERTED +COEXERTING +COEXERTS +COEXIST +COEXISTED +COEXISTENCE +COEXISTENCES +COEXISTENT +COEXISTING +COEXISTS +COEXTEND +COEXTENDED +COEXTENDING +COEXTENDS +COEXTENSIVE +COEXTENSIVELY +COFACTOR +COFACTORS +COFAVORITE +COFAVORITES +COFEATURE +COFEATURED +COFEATURES +COFEATURING +COFF +COFFEE +COFFEEHOUSE +COFFEEHOUSES +COFFEEMAKER +COFFEEMAKERS +COFFEEPOT +COFFEEPOTS +COFFEES +COFFER +COFFERDAM +COFFERDAMS +COFFERED +COFFERING +COFFERS +COFFIN +COFFINED +COFFING +COFFINING +COFFINS +COFFLE +COFFLED +COFFLES +COFFLING +COFFRET +COFFRETS +COFFS +COFINANCE +COFINANCED +COFINANCES +COFINANCING +COFOUND +COFOUNDED +COFOUNDER +COFOUNDERS +COFOUNDING +COFOUNDS +COFT +COFUNCTION +COFUNCTIONS +COG +COGENCIES +COGENCY +COGENERATION +COGENERATIONS +COGENERATOR +COGENERATORS +COGENT +COGENTLY +COGGED +COGGING +COGITABLE +COGITATE +COGITATED +COGITATES +COGITATING +COGITATION +COGITATIONS +COGITATIVE +COGITATOR +COGITATORS +COGITO +COGITOS +COGNAC +COGNACS +COGNATE +COGNATELY +COGNATES +COGNATION +COGNATIONS +COGNISE +COGNISED +COGNISES +COGNISING +COGNITION +COGNITIONAL +COGNITIONS +COGNITIVE +COGNITIVELY +COGNIZABLE +COGNIZABLY +COGNIZANCE +COGNIZANCES +COGNIZANT +COGNIZE +COGNIZED +COGNIZER +COGNIZERS +COGNIZES +COGNIZING +COGNOMEN +COGNOMENS +COGNOMINA +COGNOMINAL +COGNOSCENTE +COGNOSCENTI +COGNOSCIBLE +COGNOVIT +COGNOVITS +COGON +COGONS +COGS +COGWAY +COGWAYS +COGWHEEL +COGWHEELS +COHABIT +COHABITANT +COHABITANTS +COHABITATION +COHABITATIONS +COHABITED +COHABITER +COHABITERS +COHABITING +COHABITS +COHEAD +COHEADED +COHEADING +COHEADS +COHEIR +COHEIRESS +COHEIRESSES +COHEIRS +COHERE +COHERED +COHERENCE +COHERENCES +COHERENCIES +COHERENCY +COHERENT +COHERENTLY +COHERER +COHERERS +COHERES +COHERING +COHESION +COHESIONLESS +COHESIONS +COHESIVE +COHESIVELY +COHESIVENESS +COHESIVENESSES +COHO +COHOBATE +COHOBATED +COHOBATES +COHOBATING +COHOG +COHOGS +COHOLDER +COHOLDERS +COHOMOLOGICAL +COHOMOLOGIES +COHOMOLOGY +COHORT +COHORTS +COHOS +COHOSH +COHOSHES +COHOST +COHOSTED +COHOSTESS +COHOSTESSED +COHOSTESSES +COHOSTESSING +COHOSTING +COHOSTS +COHOUSING +COHOUSINGS +COHUNE +COHUNES +COIF +COIFED +COIFFE +COIFFED +COIFFES +COIFFEUR +COIFFEURS +COIFFEUSE +COIFFEUSES +COIFFING +COIFFURE +COIFFURED +COIFFURES +COIFFURING +COIFING +COIFS +COIGN +COIGNE +COIGNED +COIGNES +COIGNING +COIGNS +COIL +COILABILITIES +COILABILITY +COILED +COILER +COILERS +COILING +COILS +COIN +COINABLE +COINAGE +COINAGES +COINCIDE +COINCIDED +COINCIDENCE +COINCIDENCES +COINCIDENT +COINCIDENTAL +COINCIDENTALLY +COINCIDENTLY +COINCIDES +COINCIDING +COINED +COINER +COINERS +COINFECT +COINFECTED +COINFECTING +COINFECTS +COINFER +COINFERRED +COINFERRING +COINFERS +COINHERE +COINHERED +COINHERES +COINHERING +COINING +COINMATE +COINMATES +COINS +COINSURANCE +COINSURANCES +COINSURE +COINSURED +COINSURER +COINSURERS +COINSURES +COINSURING +COINTER +COINTERRED +COINTERRING +COINTERS +COINTREAU +COINTREAUS +COINVENT +COINVENTED +COINVENTING +COINVENTOR +COINVENTORS +COINVENTS +COINVESTIGATOR +COINVESTIGATORS +COINVESTOR +COINVESTORS +COIR +COIRS +COISTREL +COISTRELS +COISTRIL +COISTRILS +COITAL +COITALLY +COITION +COITIONAL +COITIONS +COITUS +COITUSES +COJOIN +COJOINED +COJOINING +COJOINS +COJONES +COKE +COKED +COKEHEAD +COKEHEADS +COKELIKE +COKES +COKING +COKY +COL +COLA +COLANDER +COLANDERS +COLAS +COLATITUDE +COLATITUDES +COLBY +COLBYS +COLCANNON +COLCANNONS +COLCHICINE +COLCHICINES +COLCHICUM +COLCHICUMS +COLCOTHAR +COLCOTHARS +COLD +COLDBLOOD +COLDCOCK +COLDCOCKED +COLDCOCKING +COLDCOCKS +COLDER +COLDEST +COLDHEARTED +COLDHEARTEDLY +COLDHEARTEDNESS +COLDISH +COLDLY +COLDNESS +COLDNESSES +COLDS +COLE +COLEAD +COLEADER +COLEADERS +COLEADING +COLEADS +COLECTOMIES +COLECTOMY +COLED +COLEMANITE +COLEMANITES +COLEOPTERA +COLEOPTERAN +COLEOPTERANS +COLEOPTERIST +COLEOPTERISTS +COLEOPTEROUS +COLEOPTILE +COLEOPTILES +COLEORHIZA +COLEORHIZAE +COLES +COLESEED +COLESEEDS +COLESLAW +COLESLAWS +COLESSEE +COLESSEES +COLESSOR +COLESSORS +COLEUS +COLEUSES +COLEWORT +COLEWORTS +COLIC +COLICIN +COLICINE +COLICINES +COLICINS +COLICKIER +COLICKIEST +COLICKY +COLICROOT +COLICROOTS +COLICS +COLICWEED +COLICWEEDS +COLIES +COLIFORM +COLIFORMS +COLIN +COLINEAR +COLINEARITIES +COLINEARITY +COLINS +COLIPHAGE +COLIPHAGES +COLISEUM +COLISEUMS +COLISTIN +COLISTINS +COLITIC +COLITIS +COLITISES +COLLABORATE +COLLABORATED +COLLABORATES +COLLABORATING +COLLABORATION +COLLABORATIONS +COLLABORATIVE +COLLABORATIVELY +COLLABORATIVES +COLLABORATOR +COLLABORATORS +COLLAGE +COLLAGED +COLLAGEN +COLLAGENASE +COLLAGENASES +COLLAGENOUS +COLLAGENS +COLLAGES +COLLAGING +COLLAGIST +COLLAGISTS +COLLAPSE +COLLAPSED +COLLAPSES +COLLAPSIBILITY +COLLAPSIBLE +COLLAPSING +COLLAR +COLLARBONE +COLLARBONES +COLLARD +COLLARDS +COLLARED +COLLARET +COLLARETS +COLLARING +COLLARLESS +COLLARS +COLLATE +COLLATED +COLLATERAL +COLLATERALITIES +COLLATERALITY +COLLATERALIZE +COLLATERALIZED +COLLATERALIZES +COLLATERALIZING +COLLATERALLY +COLLATERALS +COLLATES +COLLATING +COLLATION +COLLATIONS +COLLATOR +COLLATORS +COLLEAGUE +COLLEAGUES +COLLEAGUESHIP +COLLEAGUESHIPS +COLLECT +COLLECTABLE +COLLECTABLES +COLLECTANEA +COLLECTED +COLLECTEDLY +COLLECTEDNESS +COLLECTEDNESSES +COLLECTIBLE +COLLECTIBLES +COLLECTING +COLLECTION +COLLECTIONS +COLLECTIVE +COLLECTIVELY +COLLECTIVES +COLLECTIVISE +COLLECTIVISED +COLLECTIVISES +COLLECTIVISING +COLLECTIVISM +COLLECTIVISMS +COLLECTIVIST +COLLECTIVISTIC +COLLECTIVISTS +COLLECTIVITIES +COLLECTIVITY +COLLECTIVIZE +COLLECTIVIZED +COLLECTIVIZES +COLLECTIVIZING +COLLECTOR +COLLECTORS +COLLECTORSHIP +COLLECTORSHIPS +COLLECTS +COLLEEN +COLLEENS +COLLEGE +COLLEGER +COLLEGERS +COLLEGES +COLLEGIA +COLLEGIAL +COLLEGIALITIES +COLLEGIALITY +COLLEGIALLY +COLLEGIAN +COLLEGIANS +COLLEGIATE +COLLEGIATELY +COLLEGIUM +COLLEGIUMS +COLLEMBOLAN +COLLEMBOLANS +COLLEMBOLOUS +COLLENCHYMA +COLLENCHYMAS +COLLENCHYMATOUS +COLLET +COLLETED +COLLETING +COLLETS +COLLIDE +COLLIDED +COLLIDER +COLLIDERS +COLLIDES +COLLIDING +COLLIE +COLLIED +COLLIER +COLLIERIES +COLLIERS +COLLIERY +COLLIES +COLLIESHANGIE +COLLIESHANGIES +COLLIGATE +COLLIGATED +COLLIGATES +COLLIGATING +COLLIGATION +COLLIGATIONS +COLLIGATIVE +COLLIMATE +COLLIMATED +COLLIMATES +COLLIMATING +COLLIMATION +COLLIMATIONS +COLLIMATOR +COLLIMATORS +COLLINEAR +COLLINEARITIES +COLLINEARITY +COLLINS +COLLINSES +COLLINSIA +COLLINSIAS +COLLISION +COLLISIONAL +COLLISIONALLY +COLLISIONS +COLLOCATE +COLLOCATED +COLLOCATES +COLLOCATING +COLLOCATION +COLLOCATIONAL +COLLOCATIONS +COLLODION +COLLODIONS +COLLOGUE +COLLOGUED +COLLOGUES +COLLOGUING +COLLOID +COLLOIDAL +COLLOIDALLY +COLLOIDS +COLLOP +COLLOPS +COLLOQUIA +COLLOQUIAL +COLLOQUIALISM +COLLOQUIALISMS +COLLOQUIALITIES +COLLOQUIALITY +COLLOQUIALLY +COLLOQUIALS +COLLOQUIES +COLLOQUIST +COLLOQUISTS +COLLOQUIUM +COLLOQUIUMS +COLLOQUY +COLLOTYPE +COLLOTYPES +COLLOTYPIES +COLLOTYPY +COLLUDE +COLLUDED +COLLUDER +COLLUDERS +COLLUDES +COLLUDING +COLLUSION +COLLUSIONS +COLLUSIVE +COLLUSIVELY +COLLUVIA +COLLUVIAL +COLLUVIUM +COLLUVIUMS +COLLY +COLLYING +COLLYRIA +COLLYRIUM +COLLYRIUMS +COLLYWOBBLES +COLOBI +COLOBOMA +COLOBOMATA +COLOBUS +COLOBUSES +COLOCATE +COLOCATED +COLOCATES +COLOCATING +COLOCYNTH +COLOCYNTHS +COLOG +COLOGARITHM +COLOGARITHMS +COLOGNE +COLOGNED +COLOGNES +COLOGS +COLOMBARD +COLOMBARDS +COLON +COLONE +COLONEL +COLONELCIES +COLONELCY +COLONELS +COLONES +COLONI +COLONIAL +COLONIALISM +COLONIALISMS +COLONIALIST +COLONIALISTIC +COLONIALISTS +COLONIALIZE +COLONIALIZED +COLONIALIZES +COLONIALIZING +COLONIALLY +COLONIALNESS +COLONIALNESSES +COLONIALS +COLONIC +COLONICS +COLONIES +COLONISATION +COLONISATIONS +COLONISE +COLONISED +COLONISES +COLONISING +COLONIST +COLONISTS +COLONITIS +COLONITISES +COLONIZATION +COLONIZATIONIST +COLONIZATIONS +COLONIZE +COLONIZED +COLONIZER +COLONIZERS +COLONIZES +COLONIZING +COLONNADE +COLONNADED +COLONNADES +COLONS +COLONUS +COLONY +COLOPHON +COLOPHONIES +COLOPHONS +COLOPHONY +COLOR +COLORABLE +COLORABLY +COLORADO +COLORANT +COLORANTS +COLORATION +COLORATIONS +COLORATURA +COLORATURAS +COLORBRED +COLORBREED +COLORBREEDING +COLORBREEDS +COLORCAST +COLORCASTED +COLORCASTING +COLORCASTS +COLORECTAL +COLORED +COLOREDS +COLORER +COLORERS +COLORFAST +COLORFASTNESS +COLORFASTNESSES +COLORFUL +COLORFULLY +COLORFULNESS +COLORFULNESSES +COLORIFIC +COLORIMETER +COLORIMETERS +COLORIMETRIC +COLORIMETRIES +COLORIMETRY +COLORING +COLORINGS +COLORISM +COLORISMS +COLORIST +COLORISTIC +COLORISTICALLY +COLORISTS +COLORIZATION +COLORIZATIONS +COLORIZE +COLORIZED +COLORIZER +COLORIZERS +COLORIZES +COLORIZING +COLORLESS +COLORLESSLY +COLORLESSNESS +COLORLESSNESSES +COLORMAN +COLORMEN +COLORPOINT +COLORPOINTS +COLORS +COLORWAY +COLORWAYS +COLOSSAL +COLOSSALLY +COLOSSEUM +COLOSSEUMS +COLOSSI +COLOSSUS +COLOSSUSES +COLOSTOMIES +COLOSTOMY +COLOSTRAL +COLOSTRUM +COLOSTRUMS +COLOTOMIES +COLOTOMY +COLOUR +COLOURED +COLOURER +COLOURERS +COLOURING +COLOURS +COLPITIS +COLPITISES +COLPORTAGE +COLPORTAGES +COLPORTEUR +COLPORTEURS +COLS +COLT +COLTER +COLTERS +COLTISH +COLTISHLY +COLTISHNESS +COLTISHNESSES +COLTS +COLTSFOOT +COLTSFOOTS +COLUBRID +COLUBRIDS +COLUBRINE +COLUGO +COLUGOS +COLUMBARIA +COLUMBARIES +COLUMBARIUM +COLUMBARY +COLUMBIC +COLUMBINE +COLUMBINES +COLUMBITE +COLUMBITES +COLUMBIUM +COLUMBIUMS +COLUMEL +COLUMELLA +COLUMELLAE +COLUMELLAR +COLUMELS +COLUMN +COLUMNAL +COLUMNAR +COLUMNEA +COLUMNEAS +COLUMNED +COLUMNIATION +COLUMNIATIONS +COLUMNIST +COLUMNISTIC +COLUMNISTS +COLUMNS +COLURE +COLURES +COLY +COLZA +COLZAS +COMA +COMADE +COMAE +COMAKE +COMAKER +COMAKERS +COMAKES +COMAKING +COMAL +COMANAGE +COMANAGED +COMANAGEMENT +COMANAGEMENTS +COMANAGER +COMANAGERS +COMANAGES +COMANAGING +COMAS +COMATE +COMATES +COMATIC +COMATIK +COMATIKS +COMATOSE +COMATULA +COMATULAE +COMATULID +COMATULIDS +COMB +COMBAT +COMBATANT +COMBATANTS +COMBATED +COMBATER +COMBATERS +COMBATING +COMBATIVE +COMBATIVELY +COMBATIVENESS +COMBATIVENESSES +COMBATS +COMBATTED +COMBATTING +COMBE +COMBED +COMBER +COMBERS +COMBES +COMBINABLE +COMBINATION +COMBINATIONAL +COMBINATIONS +COMBINATIVE +COMBINATORIAL +COMBINATORIALLY +COMBINATORICS +COMBINATORY +COMBINE +COMBINED +COMBINEDS +COMBINER +COMBINERS +COMBINES +COMBING +COMBINGS +COMBINING +COMBLIKE +COMBO +COMBOS +COMBS +COMBUST +COMBUSTED +COMBUSTIBILITY +COMBUSTIBLE +COMBUSTIBLES +COMBUSTIBLY +COMBUSTING +COMBUSTION +COMBUSTIONS +COMBUSTIVE +COMBUSTOR +COMBUSTORS +COMBUSTS +COME +COMEBACK +COMEBACKS +COMEDIAN +COMEDIANS +COMEDIC +COMEDICALLY +COMEDIENNE +COMEDIENNES +COMEDIES +COMEDO +COMEDONES +COMEDOS +COMEDOWN +COMEDOWNS +COMEDY +COMELIER +COMELIEST +COMELILY +COMELINESS +COMELINESSES +COMELY +COMEMBER +COMEMBERS +COMER +COMERS +COMES +COMESTIBLE +COMESTIBLES +COMET +COMETARY +COMETH +COMETHER +COMETHERS +COMETIC +COMETS +COMEUPPANCE +COMEUPPANCES +COMFIER +COMFIEST +COMFINESS +COMFINESSES +COMFIT +COMFITS +COMFORT +COMFORTABLE +COMFORTABLENESS +COMFORTABLY +COMFORTED +COMFORTER +COMFORTERS +COMFORTING +COMFORTINGLY +COMFORTLESS +COMFORTS +COMFREY +COMFREYS +COMFY +COMIC +COMICAL +COMICALITIES +COMICALITY +COMICALLY +COMICS +COMING +COMINGLE +COMINGLED +COMINGLES +COMINGLING +COMINGS +COMITIA +COMITIAL +COMITIES +COMITY +COMIX +COMMA +COMMAND +COMMANDABLE +COMMANDANT +COMMANDANTS +COMMANDED +COMMANDEER +COMMANDEERED +COMMANDEERING +COMMANDEERS +COMMANDER +COMMANDERIES +COMMANDERS +COMMANDERSHIP +COMMANDERSHIPS +COMMANDERY +COMMANDING +COMMANDINGLY +COMMANDMENT +COMMANDMENTS +COMMANDO +COMMANDOES +COMMANDOS +COMMANDS +COMMAS +COMMATA +COMMEMORATE +COMMEMORATED +COMMEMORATES +COMMEMORATING +COMMEMORATION +COMMEMORATIONS +COMMEMORATIVE +COMMEMORATIVELY +COMMEMORATIVES +COMMEMORATOR +COMMEMORATORS +COMMENCE +COMMENCED +COMMENCEMENT +COMMENCEMENTS +COMMENCER +COMMENCERS +COMMENCES +COMMENCING +COMMEND +COMMENDABLE +COMMENDABLY +COMMENDAM +COMMENDAMS +COMMENDATION +COMMENDATIONS +COMMENDATORY +COMMENDED +COMMENDER +COMMENDERS +COMMENDING +COMMENDS +COMMENSAL +COMMENSALISM +COMMENSALISMS +COMMENSALLY +COMMENSALS +COMMENSURABLE +COMMENSURABLY +COMMENSURATE +COMMENSURATELY +COMMENSURATION +COMMENSURATIONS +COMMENT +COMMENTARIES +COMMENTARY +COMMENTATE +COMMENTATED +COMMENTATES +COMMENTATING +COMMENTATOR +COMMENTATORS +COMMENTED +COMMENTER +COMMENTERS +COMMENTING +COMMENTS +COMMERCE +COMMERCED +COMMERCES +COMMERCIAL +COMMERCIALISE +COMMERCIALISED +COMMERCIALISES +COMMERCIALISING +COMMERCIALISM +COMMERCIALISMS +COMMERCIALIST +COMMERCIALISTIC +COMMERCIALISTS +COMMERCIALITIES +COMMERCIALITY +COMMERCIALIZE +COMMERCIALIZED +COMMERCIALIZES +COMMERCIALIZING +COMMERCIALLY +COMMERCIALS +COMMERCING +COMMIE +COMMIES +COMMINATION +COMMINATIONS +COMMINATORY +COMMINGLE +COMMINGLED +COMMINGLES +COMMINGLING +COMMINUTE +COMMINUTED +COMMINUTES +COMMINUTING +COMMINUTION +COMMINUTIONS +COMMISERATE +COMMISERATED +COMMISERATES +COMMISERATING +COMMISERATINGLY +COMMISERATION +COMMISERATIONS +COMMISERATIVE +COMMISSAR +COMMISSARIAL +COMMISSARIAT +COMMISSARIATS +COMMISSARIES +COMMISSARS +COMMISSARY +COMMISSION +COMMISSIONAIRE +COMMISSIONAIRES +COMMISSIONED +COMMISSIONER +COMMISSIONERS +COMMISSIONING +COMMISSIONS +COMMISSURAL +COMMISSURE +COMMISSURES +COMMIT +COMMITMENT +COMMITMENTS +COMMITS +COMMITTABLE +COMMITTAL +COMMITTALS +COMMITTED +COMMITTEE +COMMITTEEMAN +COMMITTEEMEN +COMMITTEES +COMMITTEEWOMAN +COMMITTEEWOMEN +COMMITTING +COMMIX +COMMIXED +COMMIXES +COMMIXING +COMMIXT +COMMIXTURE +COMMIXTURES +COMMODE +COMMODES +COMMODIFICATION +COMMODIFIED +COMMODIFIES +COMMODIFY +COMMODIFYING +COMMODIOUS +COMMODIOUSLY +COMMODIOUSNESS +COMMODITIES +COMMODITY +COMMODORE +COMMODORES +COMMON +COMMONAGE +COMMONAGES +COMMONALITIES +COMMONALITY +COMMONALTIES +COMMONALTY +COMMONER +COMMONERS +COMMONEST +COMMONLY +COMMONNESS +COMMONNESSES +COMMONPLACE +COMMONPLACENESS +COMMONPLACES +COMMONS +COMMONSENSE +COMMONSENSIBLE +COMMONSENSICAL +COMMONWEAL +COMMONWEALS +COMMONWEALTH +COMMONWEALTHS +COMMOTION +COMMOTIONS +COMMOVE +COMMOVED +COMMOVES +COMMOVING +COMMUNAL +COMMUNALISM +COMMUNALISMS +COMMUNALIST +COMMUNALISTS +COMMUNALITIES +COMMUNALITY +COMMUNALIZE +COMMUNALIZED +COMMUNALIZES +COMMUNALIZING +COMMUNALLY +COMMUNARD +COMMUNARDS +COMMUNE +COMMUNED +COMMUNER +COMMUNERS +COMMUNES +COMMUNICABILITY +COMMUNICABLE +COMMUNICABLY +COMMUNICANT +COMMUNICANTS +COMMUNICATE +COMMUNICATED +COMMUNICATEE +COMMUNICATEES +COMMUNICATES +COMMUNICATING +COMMUNICATION +COMMUNICATIONAL +COMMUNICATIONS +COMMUNICATIVE +COMMUNICATIVELY +COMMUNICATOR +COMMUNICATORS +COMMUNICATORY +COMMUNING +COMMUNION +COMMUNIONS +COMMUNIQUE +COMMUNIQUES +COMMUNISE +COMMUNISED +COMMUNISES +COMMUNISING +COMMUNISM +COMMUNISMS +COMMUNIST +COMMUNISTIC +COMMUNISTICALLY +COMMUNISTS +COMMUNITARIAN +COMMUNITARIANS +COMMUNITIES +COMMUNITY +COMMUNIZATION +COMMUNIZATIONS +COMMUNIZE +COMMUNIZED +COMMUNIZES +COMMUNIZING +COMMUTABLE +COMMUTATE +COMMUTATED +COMMUTATES +COMMUTATING +COMMUTATION +COMMUTATIONS +COMMUTATIVE +COMMUTATIVITIES +COMMUTATIVITY +COMMUTATOR +COMMUTATORS +COMMUTE +COMMUTED +COMMUTER +COMMUTERS +COMMUTES +COMMUTING +COMMY +COMONOMER +COMONOMERS +COMORBID +COMOSE +COMOUS +COMP +COMPACT +COMPACTED +COMPACTER +COMPACTERS +COMPACTEST +COMPACTIBLE +COMPACTING +COMPACTION +COMPACTIONS +COMPACTLY +COMPACTNESS +COMPACTNESSES +COMPACTOR +COMPACTORS +COMPACTS +COMPADRE +COMPADRES +COMPANIED +COMPANIES +COMPANION +COMPANIONABLE +COMPANIONABLY +COMPANIONATE +COMPANIONED +COMPANIONING +COMPANIONS +COMPANIONSHIP +COMPANIONSHIPS +COMPANIONWAY +COMPANIONWAYS +COMPANY +COMPANYING +COMPARABILITIES +COMPARABILITY +COMPARABLE +COMPARABLENESS +COMPARABLY +COMPARATIST +COMPARATISTS +COMPARATIVE +COMPARATIVELY +COMPARATIVENESS +COMPARATIVES +COMPARATIVIST +COMPARATIVISTS +COMPARATOR +COMPARATORS +COMPARE +COMPARED +COMPARER +COMPARERS +COMPARES +COMPARING +COMPARISON +COMPARISONS +COMPART +COMPARTED +COMPARTING +COMPARTMENT +COMPARTMENTAL +COMPARTMENTED +COMPARTMENTING +COMPARTMENTS +COMPARTS +COMPAS +COMPASS +COMPASSABLE +COMPASSED +COMPASSES +COMPASSING +COMPASSION +COMPASSIONATE +COMPASSIONATED +COMPASSIONATELY +COMPASSIONATES +COMPASSIONATING +COMPASSIONLESS +COMPASSIONS +COMPATIBILITIES +COMPATIBILITY +COMPATIBLE +COMPATIBLENESS +COMPATIBLES +COMPATIBLY +COMPATRIOT +COMPATRIOTIC +COMPATRIOTS +COMPED +COMPEER +COMPEERED +COMPEERING +COMPEERS +COMPEL +COMPELLABLE +COMPELLATION +COMPELLATIONS +COMPELLED +COMPELLER +COMPELLERS +COMPELLING +COMPELLINGLY +COMPELS +COMPEND +COMPENDIA +COMPENDIOUS +COMPENDIOUSLY +COMPENDIOUSNESS +COMPENDIUM +COMPENDIUMS +COMPENDS +COMPENSABILITY +COMPENSABLE +COMPENSATE +COMPENSATED +COMPENSATES +COMPENSATING +COMPENSATION +COMPENSATIONAL +COMPENSATIONS +COMPENSATIVE +COMPENSATOR +COMPENSATORS +COMPENSATORY +COMPERE +COMPERED +COMPERES +COMPERING +COMPETE +COMPETED +COMPETENCE +COMPETENCES +COMPETENCIES +COMPETENCY +COMPETENT +COMPETENTLY +COMPETES +COMPETING +COMPETITION +COMPETITIONS +COMPETITIVE +COMPETITIVELY +COMPETITIVENESS +COMPETITOR +COMPETITORS +COMPILATION +COMPILATIONS +COMPILE +COMPILED +COMPILER +COMPILERS +COMPILES +COMPILING +COMPING +COMPLACENCE +COMPLACENCES +COMPLACENCIES +COMPLACENCY +COMPLACENT +COMPLACENTLY +COMPLAIN +COMPLAINANT +COMPLAINANTS +COMPLAINED +COMPLAINER +COMPLAINERS +COMPLAINING +COMPLAININGLY +COMPLAINS +COMPLAINT +COMPLAINTS +COMPLAISANCE +COMPLAISANCES +COMPLAISANT +COMPLAISANTLY +COMPLEAT +COMPLECT +COMPLECTED +COMPLECTING +COMPLECTS +COMPLEMENT +COMPLEMENTAL +COMPLEMENTARIES +COMPLEMENTARILY +COMPLEMENTARITY +COMPLEMENTARY +COMPLEMENTATION +COMPLEMENTED +COMPLEMENTING +COMPLEMENTIZER +COMPLEMENTIZERS +COMPLEMENTS +COMPLETE +COMPLETED +COMPLETELY +COMPLETENESS +COMPLETENESSES +COMPLETER +COMPLETERS +COMPLETES +COMPLETEST +COMPLETING +COMPLETION +COMPLETIONS +COMPLETIVE +COMPLEX +COMPLEXATION +COMPLEXATIONS +COMPLEXED +COMPLEXER +COMPLEXES +COMPLEXEST +COMPLEXIFIED +COMPLEXIFIES +COMPLEXIFY +COMPLEXIFYING +COMPLEXING +COMPLEXION +COMPLEXIONAL +COMPLEXIONED +COMPLEXIONS +COMPLEXITIES +COMPLEXITY +COMPLEXLY +COMPLEXNESS +COMPLEXNESSES +COMPLIANCE +COMPLIANCES +COMPLIANCIES +COMPLIANCY +COMPLIANT +COMPLIANTLY +COMPLICACIES +COMPLICACY +COMPLICATE +COMPLICATED +COMPLICATEDLY +COMPLICATEDNESS +COMPLICATES +COMPLICATING +COMPLICATION +COMPLICATIONS +COMPLICE +COMPLICES +COMPLICIT +COMPLICITIES +COMPLICITOUS +COMPLICITY +COMPLIED +COMPLIER +COMPLIERS +COMPLIES +COMPLIMENT +COMPLIMENTARILY +COMPLIMENTARY +COMPLIMENTED +COMPLIMENTING +COMPLIMENTS +COMPLIN +COMPLINE +COMPLINES +COMPLINS +COMPLOT +COMPLOTS +COMPLOTTED +COMPLOTTING +COMPLY +COMPLYING +COMPO +COMPONE +COMPONENT +COMPONENTIAL +COMPONENTS +COMPONY +COMPORT +COMPORTED +COMPORTING +COMPORTMENT +COMPORTMENTS +COMPORTS +COMPOS +COMPOSE +COMPOSED +COMPOSEDLY +COMPOSEDNESS +COMPOSEDNESSES +COMPOSER +COMPOSERS +COMPOSES +COMPOSING +COMPOSITE +COMPOSITED +COMPOSITELY +COMPOSITES +COMPOSITING +COMPOSITION +COMPOSITIONAL +COMPOSITIONALLY +COMPOSITIONS +COMPOSITOR +COMPOSITORS +COMPOST +COMPOSTED +COMPOSTER +COMPOSTERS +COMPOSTING +COMPOSTS +COMPOSURE +COMPOSURES +COMPOTE +COMPOTES +COMPOUND +COMPOUNDABLE +COMPOUNDED +COMPOUNDER +COMPOUNDERS +COMPOUNDING +COMPOUNDS +COMPRADOR +COMPRADORE +COMPRADORES +COMPRADORS +COMPREHEND +COMPREHENDED +COMPREHENDIBLE +COMPREHENDING +COMPREHENDS +COMPREHENSIBLE +COMPREHENSIBLY +COMPREHENSION +COMPREHENSIONS +COMPREHENSIVE +COMPREHENSIVELY +COMPRESS +COMPRESSED +COMPRESSEDLY +COMPRESSES +COMPRESSIBILITY +COMPRESSIBLE +COMPRESSING +COMPRESSION +COMPRESSIONAL +COMPRESSIONS +COMPRESSIVE +COMPRESSIVELY +COMPRESSOR +COMPRESSORS +COMPRISAL +COMPRISALS +COMPRISE +COMPRISED +COMPRISES +COMPRISING +COMPRIZE +COMPRIZED +COMPRIZES +COMPRIZING +COMPROMISE +COMPROMISED +COMPROMISER +COMPROMISERS +COMPROMISES +COMPROMISING +COMPS +COMPT +COMPTED +COMPTING +COMPTROLLER +COMPTROLLERS +COMPTROLLERSHIP +COMPTS +COMPULSION +COMPULSIONS +COMPULSIVE +COMPULSIVELY +COMPULSIVENESS +COMPULSIVITIES +COMPULSIVITY +COMPULSORILY +COMPULSORY +COMPUNCTION +COMPUNCTIONS +COMPUNCTIOUS +COMPURGATION +COMPURGATIONS +COMPURGATOR +COMPURGATORS +COMPUTABILITIES +COMPUTABILITY +COMPUTABLE +COMPUTATION +COMPUTATIONAL +COMPUTATIONALLY +COMPUTATIONS +COMPUTE +COMPUTED +COMPUTER +COMPUTERDOM +COMPUTERDOMS +COMPUTERESE +COMPUTERESES +COMPUTERISE +COMPUTERISED +COMPUTERISES +COMPUTERISING +COMPUTERIST +COMPUTERISTS +COMPUTERIZABLE +COMPUTERIZATION +COMPUTERIZE +COMPUTERIZED +COMPUTERIZES +COMPUTERIZING +COMPUTERLESS +COMPUTERLIKE +COMPUTERNIK +COMPUTERNIKS +COMPUTERPHOBE +COMPUTERPHOBES +COMPUTERPHOBIA +COMPUTERPHOBIAS +COMPUTERPHOBIC +COMPUTERS +COMPUTES +COMPUTING +COMPUTIST +COMPUTISTS +COMRADE +COMRADELINESS +COMRADELINESSES +COMRADELY +COMRADERIES +COMRADERY +COMRADES +COMRADESHIP +COMRADESHIPS +COMSYMP +COMSYMPS +COMTE +COMTES +CON +CONATION +CONATIONS +CONATIVE +CONATUS +CONCANAVALIN +CONCANAVALINS +CONCATENATE +CONCATENATED +CONCATENATES +CONCATENATING +CONCATENATION +CONCATENATIONS +CONCAVE +CONCAVED +CONCAVELY +CONCAVES +CONCAVING +CONCAVITIES +CONCAVITY +CONCEAL +CONCEALABLE +CONCEALED +CONCEALER +CONCEALERS +CONCEALING +CONCEALINGLY +CONCEALMENT +CONCEALMENTS +CONCEALS +CONCEDE +CONCEDED +CONCEDEDLY +CONCEDER +CONCEDERS +CONCEDES +CONCEDING +CONCEIT +CONCEITED +CONCEITEDLY +CONCEITEDNESS +CONCEITEDNESSES +CONCEITING +CONCEITS +CONCEIVABILITY +CONCEIVABLE +CONCEIVABLENESS +CONCEIVABLY +CONCEIVE +CONCEIVED +CONCEIVER +CONCEIVERS +CONCEIVES +CONCEIVING +CONCELEBRANT +CONCELEBRANTS +CONCELEBRATE +CONCELEBRATED +CONCELEBRATES +CONCELEBRATING +CONCELEBRATION +CONCELEBRATIONS +CONCENT +CONCENTER +CONCENTERED +CONCENTERING +CONCENTERS +CONCENTRATE +CONCENTRATED +CONCENTRATEDLY +CONCENTRATES +CONCENTRATING +CONCENTRATION +CONCENTRATIONS +CONCENTRATIVE +CONCENTRATOR +CONCENTRATORS +CONCENTRIC +CONCENTRICALLY +CONCENTRICITIES +CONCENTRICITY +CONCENTS +CONCEPT +CONCEPTACLE +CONCEPTACLES +CONCEPTI +CONCEPTION +CONCEPTIONAL +CONCEPTIONS +CONCEPTIVE +CONCEPTS +CONCEPTUAL +CONCEPTUALISE +CONCEPTUALISED +CONCEPTUALISES +CONCEPTUALISING +CONCEPTUALISM +CONCEPTUALISMS +CONCEPTUALIST +CONCEPTUALISTIC +CONCEPTUALISTS +CONCEPTUALITIES +CONCEPTUALITY +CONCEPTUALIZE +CONCEPTUALIZED +CONCEPTUALIZER +CONCEPTUALIZERS +CONCEPTUALIZES +CONCEPTUALIZING +CONCEPTUALLY +CONCEPTUS +CONCEPTUSES +CONCERN +CONCERNED +CONCERNING +CONCERNMENT +CONCERNMENTS +CONCERNS +CONCERT +CONCERTED +CONCERTEDLY +CONCERTEDNESS +CONCERTEDNESSES +CONCERTGOER +CONCERTGOERS +CONCERTGOING +CONCERTGOINGS +CONCERTI +CONCERTINA +CONCERTINAS +CONCERTING +CONCERTINO +CONCERTINOS +CONCERTIZE +CONCERTIZED +CONCERTIZES +CONCERTIZING +CONCERTMASTER +CONCERTMASTERS +CONCERTMEISTER +CONCERTMEISTERS +CONCERTO +CONCERTOS +CONCERTS +CONCESSION +CONCESSIONAIRE +CONCESSIONAIRES +CONCESSIONAL +CONCESSIONARY +CONCESSIONER +CONCESSIONERS +CONCESSIONS +CONCESSIVE +CONCESSIVELY +CONCH +CONCHA +CONCHAE +CONCHAL +CONCHAS +CONCHES +CONCHIE +CONCHIES +CONCHO +CONCHOID +CONCHOIDAL +CONCHOIDALLY +CONCHOIDS +CONCHOLOGIES +CONCHOLOGIST +CONCHOLOGISTS +CONCHOLOGY +CONCHOS +CONCHS +CONCHY +CONCIERGE +CONCIERGES +CONCILIAR +CONCILIARLY +CONCILIATE +CONCILIATED +CONCILIATES +CONCILIATING +CONCILIATION +CONCILIATIONS +CONCILIATIVE +CONCILIATOR +CONCILIATORS +CONCILIATORY +CONCINNITIES +CONCINNITY +CONCISE +CONCISELY +CONCISENESS +CONCISENESSES +CONCISER +CONCISEST +CONCISION +CONCISIONS +CONCLAVE +CONCLAVES +CONCLUDE +CONCLUDED +CONCLUDER +CONCLUDERS +CONCLUDES +CONCLUDING +CONCLUSION +CONCLUSIONARY +CONCLUSIONS +CONCLUSIVE +CONCLUSIVELY +CONCLUSIVENESS +CONCLUSORY +CONCOCT +CONCOCTED +CONCOCTER +CONCOCTERS +CONCOCTING +CONCOCTION +CONCOCTIONS +CONCOCTIVE +CONCOCTOR +CONCOCTORS +CONCOCTS +CONCOMITANCE +CONCOMITANCES +CONCOMITANT +CONCOMITANTLY +CONCOMITANTS +CONCORD +CONCORDAL +CONCORDANCE +CONCORDANCES +CONCORDANT +CONCORDANTLY +CONCORDAT +CONCORDATS +CONCORDS +CONCOURS +CONCOURSE +CONCOURSES +CONCRESCENCE +CONCRESCENCES +CONCRESCENT +CONCRETE +CONCRETED +CONCRETELY +CONCRETENESS +CONCRETENESSES +CONCRETES +CONCRETING +CONCRETION +CONCRETIONARY +CONCRETIONS +CONCRETISM +CONCRETISMS +CONCRETIST +CONCRETISTS +CONCRETIZATION +CONCRETIZATIONS +CONCRETIZE +CONCRETIZED +CONCRETIZES +CONCRETIZING +CONCUBINAGE +CONCUBINAGES +CONCUBINE +CONCUBINES +CONCUPISCENCE +CONCUPISCENCES +CONCUPISCENT +CONCUPISCIBLE +CONCUR +CONCURRED +CONCURRENCE +CONCURRENCES +CONCURRENCIES +CONCURRENCY +CONCURRENT +CONCURRENTLY +CONCURRENTS +CONCURRING +CONCURS +CONCUSS +CONCUSSED +CONCUSSES +CONCUSSING +CONCUSSION +CONCUSSIONS +CONCUSSIVE +CONDEMN +CONDEMNABLE +CONDEMNATION +CONDEMNATIONS +CONDEMNATORY +CONDEMNED +CONDEMNER +CONDEMNERS +CONDEMNING +CONDEMNOR +CONDEMNORS +CONDEMNS +CONDENSABLE +CONDENSATE +CONDENSATES +CONDENSATION +CONDENSATIONAL +CONDENSATIONS +CONDENSE +CONDENSED +CONDENSER +CONDENSERS +CONDENSES +CONDENSIBLE +CONDENSING +CONDESCEND +CONDESCENDED +CONDESCENDENCE +CONDESCENDENCES +CONDESCENDING +CONDESCENDINGLY +CONDESCENDS +CONDESCENSION +CONDESCENSIONS +CONDIGN +CONDIGNLY +CONDIMENT +CONDIMENTAL +CONDIMENTS +CONDITION +CONDITIONABLE +CONDITIONAL +CONDITIONALITY +CONDITIONALLY +CONDITIONALS +CONDITIONED +CONDITIONER +CONDITIONERS +CONDITIONING +CONDITIONS +CONDO +CONDOES +CONDOLATORY +CONDOLE +CONDOLED +CONDOLENCE +CONDOLENCES +CONDOLENT +CONDOLER +CONDOLERS +CONDOLES +CONDOLING +CONDOM +CONDOMINIUM +CONDOMINIUMS +CONDOMS +CONDONABLE +CONDONATION +CONDONATIONS +CONDONE +CONDONED +CONDONER +CONDONERS +CONDONES +CONDONING +CONDOR +CONDORES +CONDORS +CONDOS +CONDOTTIERE +CONDOTTIERI +CONDUCE +CONDUCED +CONDUCER +CONDUCERS +CONDUCES +CONDUCING +CONDUCIVE +CONDUCIVENESS +CONDUCIVENESSES +CONDUCT +CONDUCTANCE +CONDUCTANCES +CONDUCTED +CONDUCTIBILITY +CONDUCTIBLE +CONDUCTIMETRIC +CONDUCTING +CONDUCTION +CONDUCTIONS +CONDUCTIVE +CONDUCTIVITIES +CONDUCTIVITY +CONDUCTOMETRIC +CONDUCTOR +CONDUCTORIAL +CONDUCTORS +CONDUCTRESS +CONDUCTRESSES +CONDUCTS +CONDUIT +CONDUITS +CONDUPLICATE +CONDYLAR +CONDYLE +CONDYLES +CONDYLOID +CONDYLOMA +CONDYLOMAS +CONDYLOMATA +CONDYLOMATOUS +CONE +CONED +CONEFLOWER +CONEFLOWERS +CONELRAD +CONELRADS +CONENOSE +CONENOSES +CONEPATE +CONEPATES +CONEPATL +CONEPATLS +CONES +CONEY +CONEYS +CONFAB +CONFABBED +CONFABBING +CONFABS +CONFABULATE +CONFABULATED +CONFABULATES +CONFABULATING +CONFABULATION +CONFABULATIONS +CONFABULATOR +CONFABULATORS +CONFABULATORY +CONFECT +CONFECTED +CONFECTING +CONFECTION +CONFECTIONARIES +CONFECTIONARY +CONFECTIONER +CONFECTIONERIES +CONFECTIONERS +CONFECTIONERY +CONFECTIONS +CONFECTS +CONFEDERACIES +CONFEDERACY +CONFEDERAL +CONFEDERATE +CONFEDERATED +CONFEDERATES +CONFEDERATING +CONFEDERATION +CONFEDERATIONS +CONFEDERATIVE +CONFER +CONFEREE +CONFEREES +CONFERENCE +CONFERENCES +CONFERENCING +CONFERENCINGS +CONFERENTIAL +CONFERMENT +CONFERMENTS +CONFERRABLE +CONFERRAL +CONFERRALS +CONFERRED +CONFERREE +CONFERREES +CONFERRENCE +CONFERRENCES +CONFERRER +CONFERRERS +CONFERRING +CONFERS +CONFERVA +CONFERVAE +CONFERVAL +CONFERVAS +CONFESS +CONFESSABLE +CONFESSED +CONFESSEDLY +CONFESSES +CONFESSING +CONFESSION +CONFESSIONAL +CONFESSIONALISM +CONFESSIONALIST +CONFESSIONALLY +CONFESSIONALS +CONFESSIONS +CONFESSOR +CONFESSORS +CONFETTI +CONFETTO +CONFIDANT +CONFIDANTE +CONFIDANTES +CONFIDANTS +CONFIDE +CONFIDED +CONFIDENCE +CONFIDENCES +CONFIDENT +CONFIDENTIAL +CONFIDENTIALITY +CONFIDENTIALLY +CONFIDENTLY +CONFIDER +CONFIDERS +CONFIDES +CONFIDING +CONFIDINGLY +CONFIDINGNESS +CONFIDINGNESSES +CONFIGURATION +CONFIGURATIONAL +CONFIGURATIONS +CONFIGURATIVE +CONFIGURE +CONFIGURED +CONFIGURES +CONFIGURING +CONFINE +CONFINED +CONFINEMENT +CONFINEMENTS +CONFINER +CONFINERS +CONFINES +CONFINING +CONFIRM +CONFIRMABILITY +CONFIRMABLE +CONFIRMAND +CONFIRMANDS +CONFIRMATION +CONFIRMATIONAL +CONFIRMATIONS +CONFIRMATORY +CONFIRMED +CONFIRMEDLY +CONFIRMEDNESS +CONFIRMEDNESSES +CONFIRMER +CONFIRMERS +CONFIRMING +CONFIRMS +CONFISCABLE +CONFISCATABLE +CONFISCATE +CONFISCATED +CONFISCATES +CONFISCATING +CONFISCATION +CONFISCATIONS +CONFISCATOR +CONFISCATORS +CONFISCATORY +CONFIT +CONFITEOR +CONFITEORS +CONFITS +CONFITURE +CONFITURES +CONFLAGRANT +CONFLAGRATION +CONFLAGRATIONS +CONFLATE +CONFLATED +CONFLATES +CONFLATING +CONFLATION +CONFLATIONS +CONFLICT +CONFLICTED +CONFLICTFUL +CONFLICTING +CONFLICTINGLY +CONFLICTION +CONFLICTIONS +CONFLICTIVE +CONFLICTS +CONFLICTUAL +CONFLUENCE +CONFLUENCES +CONFLUENT +CONFLUENTS +CONFLUX +CONFLUXES +CONFOCAL +CONFOCALLY +CONFORM +CONFORMABLE +CONFORMABLY +CONFORMAL +CONFORMANCE +CONFORMANCES +CONFORMATION +CONFORMATIONAL +CONFORMATIONS +CONFORMED +CONFORMER +CONFORMERS +CONFORMING +CONFORMISM +CONFORMISMS +CONFORMIST +CONFORMISTS +CONFORMITIES +CONFORMITY +CONFORMS +CONFOUND +CONFOUNDED +CONFOUNDEDLY +CONFOUNDER +CONFOUNDERS +CONFOUNDING +CONFOUNDINGLY +CONFOUNDS +CONFRATERNITIES +CONFRATERNITY +CONFRERE +CONFRERES +CONFRONT +CONFRONTAL +CONFRONTALS +CONFRONTATION +CONFRONTATIONAL +CONFRONTATIONS +CONFRONTED +CONFRONTER +CONFRONTERS +CONFRONTING +CONFRONTS +CONFUSE +CONFUSED +CONFUSEDLY +CONFUSEDNESS +CONFUSEDNESSES +CONFUSES +CONFUSING +CONFUSINGLY +CONFUSION +CONFUSIONAL +CONFUSIONS +CONFUTATION +CONFUTATIONS +CONFUTATIVE +CONFUTE +CONFUTED +CONFUTER +CONFUTERS +CONFUTES +CONFUTING +CONGA +CONGAED +CONGAING +CONGAS +CONGE +CONGEAL +CONGEALED +CONGEALER +CONGEALERS +CONGEALING +CONGEALMENT +CONGEALMENTS +CONGEALS +CONGEE +CONGEED +CONGEEING +CONGEES +CONGELATION +CONGELATIONS +CONGENER +CONGENERIC +CONGENEROUS +CONGENERS +CONGENIAL +CONGENIALITIES +CONGENIALITY +CONGENIALLY +CONGENITAL +CONGENITALLY +CONGER +CONGERIES +CONGERS +CONGES +CONGEST +CONGESTED +CONGESTING +CONGESTION +CONGESTIONS +CONGESTIVE +CONGESTS +CONGII +CONGIUS +CONGLOBATE +CONGLOBATED +CONGLOBATES +CONGLOBATING +CONGLOBATION +CONGLOBATIONS +CONGLOBE +CONGLOBED +CONGLOBES +CONGLOBING +CONGLOMERATE +CONGLOMERATED +CONGLOMERATES +CONGLOMERATEUR +CONGLOMERATEURS +CONGLOMERATIC +CONGLOMERATING +CONGLOMERATION +CONGLOMERATIONS +CONGLOMERATIVE +CONGLOMERATOR +CONGLOMERATORS +CONGLUTINATE +CONGLUTINATED +CONGLUTINATES +CONGLUTINATING +CONGLUTINATION +CONGLUTINATIONS +CONGO +CONGOES +CONGOS +CONGOU +CONGOUS +CONGRATS +CONGRATULATE +CONGRATULATED +CONGRATULATES +CONGRATULATING +CONGRATULATION +CONGRATULATIONS +CONGRATULATOR +CONGRATULATORS +CONGRATULATORY +CONGREGANT +CONGREGANTS +CONGREGATE +CONGREGATED +CONGREGATES +CONGREGATING +CONGREGATION +CONGREGATIONAL +CONGREGATIONS +CONGREGATOR +CONGREGATORS +CONGRESS +CONGRESSED +CONGRESSES +CONGRESSING +CONGRESSIONAL +CONGRESSIONALLY +CONGRESSMAN +CONGRESSMEN +CONGRESSPEOPLE +CONGRESSPERSON +CONGRESSPERSONS +CONGRESSWOMAN +CONGRESSWOMEN +CONGRUENCE +CONGRUENCES +CONGRUENCIES +CONGRUENCY +CONGRUENT +CONGRUENTLY +CONGRUITIES +CONGRUITY +CONGRUOUS +CONGRUOUSLY +CONGRUOUSNESS +CONGRUOUSNESSES +CONI +CONIC +CONICAL +CONICALLY +CONICITIES +CONICITY +CONICS +CONIDIA +CONIDIAL +CONIDIAN +CONIDIOPHORE +CONIDIOPHORES +CONIDIUM +CONIES +CONIFER +CONIFEROUS +CONIFERS +CONIINE +CONIINES +CONIN +CONINE +CONINES +CONING +CONINS +CONIOSES +CONIOSIS +CONIUM +CONIUMS +CONJECTURAL +CONJECTURALLY +CONJECTURE +CONJECTURED +CONJECTURER +CONJECTURERS +CONJECTURES +CONJECTURING +CONJOIN +CONJOINED +CONJOINER +CONJOINERS +CONJOINING +CONJOINS +CONJOINT +CONJOINTLY +CONJUGAL +CONJUGALITIES +CONJUGALITY +CONJUGALLY +CONJUGANT +CONJUGANTS +CONJUGATE +CONJUGATED +CONJUGATELY +CONJUGATENESS +CONJUGATENESSES +CONJUGATES +CONJUGATING +CONJUGATION +CONJUGATIONAL +CONJUGATIONALLY +CONJUGATIONS +CONJUNCT +CONJUNCTION +CONJUNCTIONAL +CONJUNCTIONALLY +CONJUNCTIONS +CONJUNCTIVA +CONJUNCTIVAE +CONJUNCTIVAL +CONJUNCTIVAS +CONJUNCTIVE +CONJUNCTIVELY +CONJUNCTIVES +CONJUNCTIVITIS +CONJUNCTS +CONJUNCTURE +CONJUNCTURES +CONJUNTO +CONJUNTOS +CONJURATION +CONJURATIONS +CONJURE +CONJURED +CONJURER +CONJURERS +CONJURES +CONJURING +CONJUROR +CONJURORS +CONK +CONKED +CONKER +CONKERS +CONKING +CONKS +CONKY +CONN +CONNATE +CONNATELY +CONNATION +CONNATIONS +CONNATURAL +CONNATURALITIES +CONNATURALITY +CONNATURALLY +CONNECT +CONNECTABLE +CONNECTED +CONNECTEDLY +CONNECTEDNESS +CONNECTEDNESSES +CONNECTER +CONNECTERS +CONNECTIBLE +CONNECTING +CONNECTION +CONNECTIONAL +CONNECTIONS +CONNECTIVE +CONNECTIVELY +CONNECTIVES +CONNECTIVITIES +CONNECTIVITY +CONNECTOR +CONNECTORS +CONNECTS +CONNED +CONNER +CONNERS +CONNEXION +CONNEXIONS +CONNING +CONNIPTION +CONNIPTIONS +CONNIVANCE +CONNIVANCES +CONNIVE +CONNIVED +CONNIVENT +CONNIVER +CONNIVERIES +CONNIVERS +CONNIVERY +CONNIVES +CONNIVING +CONNOISSEUR +CONNOISSEURS +CONNOISSEURSHIP +CONNOTATION +CONNOTATIONAL +CONNOTATIONS +CONNOTATIVE +CONNOTATIVELY +CONNOTE +CONNOTED +CONNOTES +CONNOTING +CONNS +CONNUBIAL +CONNUBIALISM +CONNUBIALISMS +CONNUBIALITIES +CONNUBIALITY +CONNUBIALLY +CONODONT +CONODONTS +CONOID +CONOIDAL +CONOIDS +CONOMINEE +CONOMINEES +CONQUER +CONQUERED +CONQUERER +CONQUERERS +CONQUERING +CONQUEROR +CONQUERORS +CONQUERS +CONQUEST +CONQUESTS +CONQUIAN +CONQUIANS +CONQUISTADOR +CONQUISTADORES +CONQUISTADORS +CONS +CONSANGUINE +CONSANGUINEOUS +CONSANGUINITIES +CONSANGUINITY +CONSCIENCE +CONSCIENCELESS +CONSCIENCES +CONSCIENTIOUS +CONSCIENTIOUSLY +CONSCIONABLE +CONSCIOUS +CONSCIOUSES +CONSCIOUSLY +CONSCIOUSNESS +CONSCIOUSNESSES +CONSCRIBE +CONSCRIBED +CONSCRIBES +CONSCRIBING +CONSCRIPT +CONSCRIPTED +CONSCRIPTING +CONSCRIPTION +CONSCRIPTIONS +CONSCRIPTS +CONSECRATE +CONSECRATED +CONSECRATES +CONSECRATING +CONSECRATION +CONSECRATIONS +CONSECRATIVE +CONSECRATOR +CONSECRATORS +CONSECRATORY +CONSECUTION +CONSECUTIONS +CONSECUTIVE +CONSECUTIVELY +CONSECUTIVENESS +CONSENSUAL +CONSENSUALLY +CONSENSUS +CONSENSUSES +CONSENT +CONSENTANEOUS +CONSENTANEOUSLY +CONSENTED +CONSENTER +CONSENTERS +CONSENTING +CONSENTINGLY +CONSENTS +CONSEQUENCE +CONSEQUENCES +CONSEQUENT +CONSEQUENTIAL +CONSEQUENTIALLY +CONSEQUENTLY +CONSEQUENTS +CONSERVANCIES +CONSERVANCY +CONSERVATION +CONSERVATIONAL +CONSERVATIONIST +CONSERVATIONS +CONSERVATISM +CONSERVATISMS +CONSERVATIVE +CONSERVATIVELY +CONSERVATIVES +CONSERVATIZE +CONSERVATIZED +CONSERVATIZES +CONSERVATIZING +CONSERVATOIRE +CONSERVATOIRES +CONSERVATOR +CONSERVATORIAL +CONSERVATORIES +CONSERVATORS +CONSERVATORSHIP +CONSERVATORY +CONSERVE +CONSERVED +CONSERVER +CONSERVERS +CONSERVES +CONSERVING +CONSIDER +CONSIDERABLE +CONSIDERABLES +CONSIDERABLY +CONSIDERATE +CONSIDERATELY +CONSIDERATENESS +CONSIDERATION +CONSIDERATIONS +CONSIDERED +CONSIDERING +CONSIDERS +CONSIGLIERE +CONSIGLIERI +CONSIGN +CONSIGNABLE +CONSIGNATION +CONSIGNATIONS +CONSIGNED +CONSIGNEE +CONSIGNEES +CONSIGNER +CONSIGNERS +CONSIGNING +CONSIGNMENT +CONSIGNMENTS +CONSIGNOR +CONSIGNORS +CONSIGNS +CONSIST +CONSISTED +CONSISTENCE +CONSISTENCES +CONSISTENCIES +CONSISTENCY +CONSISTENT +CONSISTENTLY +CONSISTING +CONSISTORIAL +CONSISTORIES +CONSISTORY +CONSISTS +CONSOCIATE +CONSOCIATED +CONSOCIATES +CONSOCIATING +CONSOCIATION +CONSOCIATIONAL +CONSOCIATIONS +CONSOL +CONSOLATION +CONSOLATIONS +CONSOLATORY +CONSOLE +CONSOLED +CONSOLER +CONSOLERS +CONSOLES +CONSOLIDATE +CONSOLIDATED +CONSOLIDATES +CONSOLIDATING +CONSOLIDATION +CONSOLIDATIONS +CONSOLIDATOR +CONSOLIDATORS +CONSOLING +CONSOLINGLY +CONSOLS +CONSOMME +CONSOMMES +CONSONANCE +CONSONANCES +CONSONANCIES +CONSONANCY +CONSONANT +CONSONANTAL +CONSONANTLY +CONSONANTS +CONSORT +CONSORTED +CONSORTIA +CONSORTING +CONSORTIUM +CONSORTIUMS +CONSORTS +CONSPECIFIC +CONSPECIFICS +CONSPECTUS +CONSPECTUSES +CONSPICUITIES +CONSPICUITY +CONSPICUOUS +CONSPICUOUSLY +CONSPICUOUSNESS +CONSPIRACIES +CONSPIRACY +CONSPIRATION +CONSPIRATIONAL +CONSPIRATIONS +CONSPIRATOR +CONSPIRATORIAL +CONSPIRATORS +CONSPIRE +CONSPIRED +CONSPIRER +CONSPIRERS +CONSPIRES +CONSPIRING +CONSTABLE +CONSTABLES +CONSTABULARIES +CONSTABULARY +CONSTANCIES +CONSTANCY +CONSTANT +CONSTANTAN +CONSTANTANS +CONSTANTLY +CONSTANTS +CONSTATIVE +CONSTATIVES +CONSTELLATE +CONSTELLATED +CONSTELLATES +CONSTELLATING +CONSTELLATION +CONSTELLATIONS +CONSTELLATORY +CONSTERNATE +CONSTERNATED +CONSTERNATES +CONSTERNATING +CONSTERNATION +CONSTERNATIONS +CONSTIPATE +CONSTIPATED +CONSTIPATES +CONSTIPATING +CONSTIPATION +CONSTIPATIONS +CONSTITUENCIES +CONSTITUENCY +CONSTITUENT +CONSTITUENTLY +CONSTITUENTS +CONSTITUTE +CONSTITUTED +CONSTITUTES +CONSTITUTING +CONSTITUTION +CONSTITUTIONAL +CONSTITUTIONALS +CONSTITUTIONS +CONSTITUTIVE +CONSTITUTIVELY +CONSTRAIN +CONSTRAINED +CONSTRAINEDLY +CONSTRAINING +CONSTRAINS +CONSTRAINT +CONSTRAINTS +CONSTRICT +CONSTRICTED +CONSTRICTING +CONSTRICTION +CONSTRICTIONS +CONSTRICTIVE +CONSTRICTOR +CONSTRICTORS +CONSTRICTS +CONSTRINGE +CONSTRINGED +CONSTRINGENT +CONSTRINGES +CONSTRINGING +CONSTRUABLE +CONSTRUAL +CONSTRUALS +CONSTRUCT +CONSTRUCTED +CONSTRUCTIBLE +CONSTRUCTING +CONSTRUCTION +CONSTRUCTIONAL +CONSTRUCTIONIST +CONSTRUCTIONS +CONSTRUCTIVE +CONSTRUCTIVELY +CONSTRUCTIVISM +CONSTRUCTIVISMS +CONSTRUCTIVIST +CONSTRUCTIVISTS +CONSTRUCTOR +CONSTRUCTORS +CONSTRUCTS +CONSTRUE +CONSTRUED +CONSTRUER +CONSTRUERS +CONSTRUES +CONSTRUING +CONSUBSTANTIAL +CONSUETUDE +CONSUETUDES +CONSUETUDINARY +CONSUL +CONSULAR +CONSULATE +CONSULATES +CONSULS +CONSULSHIP +CONSULSHIPS +CONSULT +CONSULTANCIES +CONSULTANCY +CONSULTANT +CONSULTANTS +CONSULTANTSHIP +CONSULTANTSHIPS +CONSULTATION +CONSULTATIONS +CONSULTATIVE +CONSULTED +CONSULTER +CONSULTERS +CONSULTING +CONSULTIVE +CONSULTOR +CONSULTORS +CONSULTS +CONSUMABLE +CONSUMABLES +CONSUME +CONSUMED +CONSUMEDLY +CONSUMER +CONSUMERISM +CONSUMERISMS +CONSUMERIST +CONSUMERISTIC +CONSUMERISTS +CONSUMERS +CONSUMERSHIP +CONSUMERSHIPS +CONSUMES +CONSUMING +CONSUMMATE +CONSUMMATED +CONSUMMATELY +CONSUMMATES +CONSUMMATING +CONSUMMATION +CONSUMMATIONS +CONSUMMATIVE +CONSUMMATOR +CONSUMMATORS +CONSUMMATORY +CONSUMPTION +CONSUMPTIONS +CONSUMPTIVE +CONSUMPTIVELY +CONSUMPTIVES +CONTACT +CONTACTED +CONTACTEE +CONTACTEES +CONTACTING +CONTACTOR +CONTACTORS +CONTACTS +CONTAGIA +CONTAGION +CONTAGIONS +CONTAGIOUS +CONTAGIOUSLY +CONTAGIOUSNESS +CONTAGIUM +CONTAIN +CONTAINABLE +CONTAINED +CONTAINER +CONTAINERBOARD +CONTAINERBOARDS +CONTAINERISE +CONTAINERISED +CONTAINERISES +CONTAINERISING +CONTAINERIZE +CONTAINERIZED +CONTAINERIZES +CONTAINERIZING +CONTAINERLESS +CONTAINERPORT +CONTAINERPORTS +CONTAINERS +CONTAINERSHIP +CONTAINERSHIPS +CONTAINING +CONTAINMENT +CONTAINMENTS +CONTAINS +CONTAMINANT +CONTAMINANTS +CONTAMINATE +CONTAMINATED +CONTAMINATES +CONTAMINATING +CONTAMINATION +CONTAMINATIONS +CONTAMINATIVE +CONTAMINATOR +CONTAMINATORS +CONTE +CONTEMN +CONTEMNED +CONTEMNER +CONTEMNERS +CONTEMNING +CONTEMNOR +CONTEMNORS +CONTEMNS +CONTEMPLATE +CONTEMPLATED +CONTEMPLATES +CONTEMPLATING +CONTEMPLATION +CONTEMPLATIONS +CONTEMPLATIVE +CONTEMPLATIVELY +CONTEMPLATIVES +CONTEMPLATOR +CONTEMPLATORS +CONTEMPO +CONTEMPORANEITY +CONTEMPORANEOUS +CONTEMPORARIES +CONTEMPORARILY +CONTEMPORARY +CONTEMPORIZE +CONTEMPORIZED +CONTEMPORIZES +CONTEMPORIZING +CONTEMPT +CONTEMPTIBILITY +CONTEMPTIBLE +CONTEMPTIBLY +CONTEMPTS +CONTEMPTUOUS +CONTEMPTUOUSLY +CONTEND +CONTENDED +CONTENDER +CONTENDERS +CONTENDING +CONTENDS +CONTENT +CONTENTED +CONTENTEDLY +CONTENTEDNESS +CONTENTEDNESSES +CONTENTING +CONTENTION +CONTENTIONS +CONTENTIOUS +CONTENTIOUSLY +CONTENTIOUSNESS +CONTENTMENT +CONTENTMENTS +CONTENTS +CONTERMINOUS +CONTERMINOUSLY +CONTES +CONTESSA +CONTESSAS +CONTEST +CONTESTABLE +CONTESTANT +CONTESTANTS +CONTESTATION +CONTESTATIONS +CONTESTED +CONTESTER +CONTESTERS +CONTESTING +CONTESTS +CONTEXT +CONTEXTLESS +CONTEXTS +CONTEXTUAL +CONTEXTUALIZE +CONTEXTUALIZED +CONTEXTUALIZES +CONTEXTUALIZING +CONTEXTUALLY +CONTEXTURE +CONTEXTURES +CONTIGUITIES +CONTIGUITY +CONTIGUOUS +CONTIGUOUSLY +CONTIGUOUSNESS +CONTINENCE +CONTINENCES +CONTINENT +CONTINENTAL +CONTINENTALLY +CONTINENTALS +CONTINENTLY +CONTINENTS +CONTINGENCE +CONTINGENCES +CONTINGENCIES +CONTINGENCY +CONTINGENT +CONTINGENTLY +CONTINGENTS +CONTINUA +CONTINUAL +CONTINUALLY +CONTINUANCE +CONTINUANCES +CONTINUANT +CONTINUANTS +CONTINUATE +CONTINUATION +CONTINUATIONS +CONTINUATIVE +CONTINUATOR +CONTINUATORS +CONTINUE +CONTINUED +CONTINUER +CONTINUERS +CONTINUES +CONTINUING +CONTINUINGLY +CONTINUITIES +CONTINUITY +CONTINUO +CONTINUOS +CONTINUOUS +CONTINUOUSLY +CONTINUOUSNESS +CONTINUUM +CONTINUUMS +CONTO +CONTORT +CONTORTED +CONTORTING +CONTORTION +CONTORTIONIST +CONTORTIONISTIC +CONTORTIONISTS +CONTORTIONS +CONTORTIVE +CONTORTS +CONTOS +CONTOUR +CONTOURED +CONTOURING +CONTOURS +CONTRA +CONTRABAND +CONTRABANDIST +CONTRABANDISTS +CONTRABANDS +CONTRABASS +CONTRABASSES +CONTRABASSIST +CONTRABASSISTS +CONTRABASSOON +CONTRABASSOONS +CONTRACEPTION +CONTRACEPTIONS +CONTRACEPTIVE +CONTRACEPTIVES +CONTRACT +CONTRACTED +CONTRACTIBILITY +CONTRACTIBLE +CONTRACTILE +CONTRACTILITIES +CONTRACTILITY +CONTRACTING +CONTRACTION +CONTRACTIONAL +CONTRACTIONARY +CONTRACTIONS +CONTRACTIVE +CONTRACTOR +CONTRACTORS +CONTRACTS +CONTRACTUAL +CONTRACTUALLY +CONTRACTURE +CONTRACTURES +CONTRADICT +CONTRADICTABLE +CONTRADICTED +CONTRADICTING +CONTRADICTION +CONTRADICTIONS +CONTRADICTIOUS +CONTRADICTOR +CONTRADICTORIES +CONTRADICTORILY +CONTRADICTORS +CONTRADICTORY +CONTRADICTS +CONTRAIL +CONTRAILS +CONTRAINDICATE +CONTRAINDICATED +CONTRAINDICATES +CONTRALATERAL +CONTRALTI +CONTRALTO +CONTRALTOS +CONTRAOCTAVE +CONTRAOCTAVES +CONTRAPOSITION +CONTRAPOSITIONS +CONTRAPOSITIVE +CONTRAPOSITIVES +CONTRAPTION +CONTRAPTIONS +CONTRAPUNTAL +CONTRAPUNTALLY +CONTRAPUNTIST +CONTRAPUNTISTS +CONTRARIAN +CONTRARIANS +CONTRARIES +CONTRARIETIES +CONTRARIETY +CONTRARILY +CONTRARINESS +CONTRARINESSES +CONTRARIOUS +CONTRARIWISE +CONTRARY +CONTRAS +CONTRAST +CONTRASTABLE +CONTRASTED +CONTRASTING +CONTRASTIVE +CONTRASTIVELY +CONTRASTS +CONTRASTY +CONTRAVENE +CONTRAVENED +CONTRAVENER +CONTRAVENERS +CONTRAVENES +CONTRAVENING +CONTRAVENTION +CONTRAVENTIONS +CONTREDANSE +CONTREDANSES +CONTRETEMPS +CONTRIBUTE +CONTRIBUTED +CONTRIBUTES +CONTRIBUTING +CONTRIBUTION +CONTRIBUTIONS +CONTRIBUTIVE +CONTRIBUTIVELY +CONTRIBUTOR +CONTRIBUTORS +CONTRIBUTORY +CONTRITE +CONTRITELY +CONTRITENESS +CONTRITENESSES +CONTRITION +CONTRITIONS +CONTRIVANCE +CONTRIVANCES +CONTRIVE +CONTRIVED +CONTRIVER +CONTRIVERS +CONTRIVES +CONTRIVING +CONTROL +CONTROLLABILITY +CONTROLLABLE +CONTROLLED +CONTROLLER +CONTROLLERS +CONTROLLERSHIP +CONTROLLERSHIPS +CONTROLLING +CONTROLMENT +CONTROLMENTS +CONTROLS +CONTROVERSIAL +CONTROVERSIALLY +CONTROVERSIES +CONTROVERSY +CONTROVERT +CONTROVERTED +CONTROVERTER +CONTROVERTERS +CONTROVERTIBLE +CONTROVERTING +CONTROVERTS +CONTUMACIES +CONTUMACIOUS +CONTUMACIOUSLY +CONTUMACY +CONTUMELIES +CONTUMELIOUS +CONTUMELIOUSLY +CONTUMELY +CONTUSE +CONTUSED +CONTUSES +CONTUSING +CONTUSION +CONTUSIONS +CONTUSIVE +CONUNDRUM +CONUNDRUMS +CONURBATION +CONURBATIONS +CONUS +CONVALESCE +CONVALESCED +CONVALESCENCE +CONVALESCENCES +CONVALESCENT +CONVALESCENTS +CONVALESCES +CONVALESCING +CONVECT +CONVECTED +CONVECTING +CONVECTION +CONVECTIONAL +CONVECTIONS +CONVECTIVE +CONVECTOR +CONVECTORS +CONVECTS +CONVENE +CONVENED +CONVENER +CONVENERS +CONVENES +CONVENIENCE +CONVENIENCES +CONVENIENCIES +CONVENIENCY +CONVENIENT +CONVENIENTLY +CONVENING +CONVENOR +CONVENORS +CONVENT +CONVENTED +CONVENTICLE +CONVENTICLER +CONVENTICLERS +CONVENTICLES +CONVENTING +CONVENTION +CONVENTIONAL +CONVENTIONALISM +CONVENTIONALIST +CONVENTIONALITY +CONVENTIONALIZE +CONVENTIONALLY +CONVENTIONEER +CONVENTIONEERS +CONVENTIONS +CONVENTS +CONVENTUAL +CONVENTUALLY +CONVENTUALS +CONVERGE +CONVERGED +CONVERGENCE +CONVERGENCES +CONVERGENCIES +CONVERGENCY +CONVERGENT +CONVERGES +CONVERGING +CONVERSABLE +CONVERSANCE +CONVERSANCES +CONVERSANCIES +CONVERSANCY +CONVERSANT +CONVERSATION +CONVERSATIONAL +CONVERSATIONS +CONVERSAZIONE +CONVERSAZIONES +CONVERSAZIONI +CONVERSE +CONVERSED +CONVERSELY +CONVERSER +CONVERSERS +CONVERSES +CONVERSING +CONVERSION +CONVERSIONAL +CONVERSIONS +CONVERSO +CONVERSOS +CONVERT +CONVERTAPLANE +CONVERTAPLANES +CONVERTED +CONVERTER +CONVERTERS +CONVERTIBILITY +CONVERTIBLE +CONVERTIBLENESS +CONVERTIBLES +CONVERTIBLY +CONVERTING +CONVERTIPLANE +CONVERTIPLANES +CONVERTOR +CONVERTORS +CONVERTS +CONVEX +CONVEXES +CONVEXITIES +CONVEXITY +CONVEXLY +CONVEY +CONVEYANCE +CONVEYANCER +CONVEYANCERS +CONVEYANCES +CONVEYANCING +CONVEYANCINGS +CONVEYED +CONVEYER +CONVEYERS +CONVEYING +CONVEYOR +CONVEYORISE +CONVEYORISED +CONVEYORISES +CONVEYORISING +CONVEYORIZATION +CONVEYORIZE +CONVEYORIZED +CONVEYORIZES +CONVEYORIZING +CONVEYORS +CONVEYS +CONVICT +CONVICTED +CONVICTING +CONVICTION +CONVICTIONS +CONVICTS +CONVINCE +CONVINCED +CONVINCER +CONVINCERS +CONVINCES +CONVINCING +CONVINCINGLY +CONVINCINGNESS +CONVIVIAL +CONVIVIALITIES +CONVIVIALITY +CONVIVIALLY +CONVOCATION +CONVOCATIONAL +CONVOCATIONS +CONVOKE +CONVOKED +CONVOKER +CONVOKERS +CONVOKES +CONVOKING +CONVOLUTE +CONVOLUTED +CONVOLUTES +CONVOLUTING +CONVOLUTION +CONVOLUTIONS +CONVOLVE +CONVOLVED +CONVOLVES +CONVOLVING +CONVOLVULI +CONVOLVULUS +CONVOLVULUSES +CONVOY +CONVOYED +CONVOYING +CONVOYS +CONVULSANT +CONVULSANTS +CONVULSE +CONVULSED +CONVULSES +CONVULSING +CONVULSION +CONVULSIONARY +CONVULSIONS +CONVULSIVE +CONVULSIVELY +CONVULSIVENESS +CONY +COO +COOCH +COOCHES +COOCOO +COOED +COOEE +COOEED +COOEEING +COOEES +COOER +COOERS +COOEY +COOEYED +COOEYING +COOEYS +COOF +COOFS +COOING +COOINGLY +COOK +COOKABLE +COOKBOOK +COOKBOOKS +COOKED +COOKER +COOKERIES +COOKERS +COOKERY +COOKEY +COOKEYS +COOKHOUSE +COOKHOUSES +COOKIE +COOKIES +COOKING +COOKINGS +COOKLESS +COOKOFF +COOKOFFS +COOKOUT +COOKOUTS +COOKS +COOKSHACK +COOKSHACKS +COOKSHOP +COOKSHOPS +COOKSTOVE +COOKSTOVES +COOKTOP +COOKTOPS +COOKWARE +COOKWARES +COOKY +COOL +COOLANT +COOLANTS +COOLDOWN +COOLDOWNS +COOLED +COOLER +COOLERS +COOLEST +COOLHEADED +COOLIE +COOLIES +COOLING +COOLISH +COOLLY +COOLNESS +COOLNESSES +COOLS +COOLTH +COOLTHS +COOLY +COOMB +COOMBE +COOMBES +COOMBS +COON +COONCAN +COONCANS +COONHOUND +COONHOUNDS +COONS +COONSKIN +COONSKINS +COONTIE +COONTIES +COOP +COOPED +COOPER +COOPERAGE +COOPERAGES +COOPERATE +COOPERATED +COOPERATES +COOPERATING +COOPERATION +COOPERATIONIST +COOPERATIONISTS +COOPERATIONS +COOPERATIVE +COOPERATIVELY +COOPERATIVENESS +COOPERATIVES +COOPERATOR +COOPERATORS +COOPERED +COOPERIES +COOPERING +COOPERS +COOPERY +COOPING +COOPS +COOPT +COOPTED +COOPTING +COOPTION +COOPTIONS +COOPTS +COORDINATE +COORDINATED +COORDINATELY +COORDINATENESS +COORDINATES +COORDINATING +COORDINATION +COORDINATIONS +COORDINATIVE +COORDINATOR +COORDINATORS +COOS +COOT +COOTER +COOTERS +COOTIE +COOTIES +COOTS +COP +COPACETIC +COPAIBA +COPAIBAS +COPAL +COPALM +COPALMS +COPALS +COPARCENARIES +COPARCENARY +COPARCENER +COPARCENERS +COPARENT +COPARENTED +COPARENTING +COPARENTS +COPARTNER +COPARTNERED +COPARTNERING +COPARTNERS +COPARTNERSHIP +COPARTNERSHIPS +COPASETIC +COPASTOR +COPASTORS +COPATRON +COPATRONS +COPAY +COPAYMENT +COPAYMENTS +COPAYS +COPE +COPECK +COPECKS +COPED +COPEMATE +COPEMATES +COPEN +COPENS +COPEPOD +COPEPODS +COPER +COPERS +COPES +COPESETIC +COPESTONE +COPESTONES +COPIED +COPIER +COPIERS +COPIES +COPIHUE +COPIHUES +COPILOT +COPILOTS +COPING +COPINGS +COPINGSTONE +COPINGSTONES +COPIOUS +COPIOUSLY +COPIOUSNESS +COPIOUSNESSES +COPLANAR +COPLANARITIES +COPLANARITY +COPLOT +COPLOTS +COPLOTTED +COPLOTTING +COPOLYMER +COPOLYMERIC +COPOLYMERIZE +COPOLYMERIZED +COPOLYMERIZES +COPOLYMERIZING +COPOLYMERS +COPOUT +COPOUTS +COPPED +COPPER +COPPERAH +COPPERAHS +COPPERAS +COPPERASES +COPPERED +COPPERHEAD +COPPERHEADS +COPPERING +COPPERPLATE +COPPERPLATES +COPPERS +COPPERSMITH +COPPERSMITHS +COPPERY +COPPICE +COPPICED +COPPICES +COPPICING +COPPING +COPPRA +COPPRAS +COPRA +COPRAH +COPRAHS +COPRAS +COPREMIA +COPREMIAS +COPREMIC +COPRESENT +COPRESENTED +COPRESENTING +COPRESENTS +COPRESIDENT +COPRESIDENTS +COPRINCE +COPRINCES +COPRINCIPAL +COPRINCIPALS +COPRISONER +COPRISONERS +COPROCESSING +COPROCESSOR +COPROCESSORS +COPRODUCE +COPRODUCED +COPRODUCER +COPRODUCERS +COPRODUCES +COPRODUCING +COPRODUCT +COPRODUCTION +COPRODUCTIONS +COPRODUCTS +COPROLITE +COPROLITES +COPROLITIC +COPROLOGIES +COPROLOGY +COPROMOTER +COPROMOTERS +COPROPHAGIES +COPROPHAGOUS +COPROPHAGY +COPROPHILIA +COPROPHILIAC +COPROPHILIACS +COPROPHILIAS +COPROPHILOUS +COPROPRIETOR +COPROPRIETORS +COPROSPERITIES +COPROSPERITY +COPS +COPSE +COPSES +COPTER +COPTERS +COPUBLISH +COPUBLISHED +COPUBLISHER +COPUBLISHERS +COPUBLISHES +COPUBLISHING +COPULA +COPULAE +COPULAR +COPULAS +COPULATE +COPULATED +COPULATES +COPULATING +COPULATION +COPULATIONS +COPULATIVE +COPULATIVES +COPULATORY +COPURIFIED +COPURIFIES +COPURIFY +COPURIFYING +COPY +COPYABLE +COPYBOOK +COPYBOOKS +COPYBOY +COPYBOYS +COPYCAT +COPYCATS +COPYCATTED +COPYCATTING +COPYDESK +COPYDESKS +COPYEDIT +COPYEDITED +COPYEDITING +COPYEDITS +COPYGIRL +COPYGIRLS +COPYHOLD +COPYHOLDER +COPYHOLDERS +COPYHOLDS +COPYING +COPYIST +COPYISTS +COPYLEFT +COPYLEFTS +COPYREAD +COPYREADER +COPYREADERS +COPYREADING +COPYREADS +COPYRIGHT +COPYRIGHTABLE +COPYRIGHTED +COPYRIGHTING +COPYRIGHTS +COPYWRITER +COPYWRITERS +COQUET +COQUETRIES +COQUETRY +COQUETS +COQUETTE +COQUETTED +COQUETTES +COQUETTING +COQUETTISH +COQUETTISHLY +COQUETTISHNESS +COQUILLE +COQUILLES +COQUINA +COQUINAS +COQUITO +COQUITOS +COR +CORACLE +CORACLES +CORACOID +CORACOIDS +CORAL +CORALBELLS +CORALBERRIES +CORALBERRY +CORALLINE +CORALLINES +CORALLOID +CORALROOT +CORALROOTS +CORALS +CORANTO +CORANTOES +CORANTOS +CORBAN +CORBANS +CORBEIL +CORBEILLE +CORBEILLES +CORBEILS +CORBEL +CORBELED +CORBELING +CORBELINGS +CORBELLED +CORBELLING +CORBELS +CORBICULA +CORBICULAE +CORBIE +CORBIES +CORBINA +CORBINAS +CORBY +CORD +CORDAGE +CORDAGES +CORDATE +CORDATELY +CORDED +CORDELLE +CORDELLED +CORDELLES +CORDELLING +CORDER +CORDERS +CORDGRASS +CORDGRASSES +CORDIAL +CORDIALITIES +CORDIALITY +CORDIALLY +CORDIALNESS +CORDIALNESSES +CORDIALS +CORDIERITE +CORDIERITES +CORDIFORM +CORDILLERA +CORDILLERAN +CORDILLERAS +CORDING +CORDINGS +CORDITE +CORDITES +CORDLESS +CORDLESSES +CORDLIKE +CORDOBA +CORDOBAS +CORDON +CORDONED +CORDONING +CORDONNET +CORDONNETS +CORDONS +CORDOVAN +CORDOVANS +CORDS +CORDUROY +CORDUROYED +CORDUROYING +CORDUROYS +CORDWAIN +CORDWAINER +CORDWAINERIES +CORDWAINERS +CORDWAINERY +CORDWAINS +CORDWOOD +CORDWOODS +CORE +CORECIPIENT +CORECIPIENTS +CORED +COREDEEM +COREDEEMED +COREDEEMING +COREDEEMS +COREIGN +COREIGNS +CORELATE +CORELATED +CORELATES +CORELATING +CORELESS +CORELIGIONIST +CORELIGIONISTS +COREMIA +COREMIUM +COREOPSIS +COREPRESSOR +COREPRESSORS +COREQUISITE +COREQUISITES +CORER +CORERS +CORES +CORESEARCHER +CORESEARCHERS +CORESIDENT +CORESIDENTIAL +CORESIDENTS +CORESPONDENT +CORESPONDENTS +CORF +CORGI +CORGIS +CORIA +CORIACEOUS +CORIANDER +CORIANDERS +CORING +CORIUM +CORK +CORKAGE +CORKAGES +CORKBOARD +CORKBOARDS +CORKED +CORKER +CORKERS +CORKIER +CORKIEST +CORKINESS +CORKINESSES +CORKING +CORKLIKE +CORKS +CORKSCREW +CORKSCREWED +CORKSCREWING +CORKSCREWS +CORKWOOD +CORKWOODS +CORKY +CORM +CORMEL +CORMELS +CORMLIKE +CORMOID +CORMORANT +CORMORANTS +CORMOUS +CORMS +CORN +CORNBALL +CORNBALLS +CORNBRAID +CORNBRAIDED +CORNBRAIDING +CORNBRAIDS +CORNBREAD +CORNBREADS +CORNCAKE +CORNCAKES +CORNCOB +CORNCOBS +CORNCRAKE +CORNCRAKES +CORNCRIB +CORNCRIBS +CORNEA +CORNEAL +CORNEAS +CORNED +CORNEITIS +CORNEITISES +CORNEL +CORNELIAN +CORNELIANS +CORNELS +CORNEOUS +CORNER +CORNERBACK +CORNERBACKS +CORNERED +CORNERING +CORNERMAN +CORNERMEN +CORNERS +CORNERSTONE +CORNERSTONES +CORNERWAYS +CORNERWISE +CORNET +CORNETCIES +CORNETCY +CORNETIST +CORNETISTS +CORNETS +CORNETTIST +CORNETTISTS +CORNFED +CORNFIELD +CORNFIELDS +CORNFLAKES +CORNFLOWER +CORNFLOWERS +CORNHUSK +CORNHUSKING +CORNHUSKINGS +CORNHUSKS +CORNICE +CORNICED +CORNICES +CORNICHE +CORNICHES +CORNICHON +CORNICHONS +CORNICING +CORNICLE +CORNICLES +CORNIER +CORNIEST +CORNIFICATION +CORNIFICATIONS +CORNIFIED +CORNIFIES +CORNIFY +CORNIFYING +CORNILY +CORNINESS +CORNINESSES +CORNING +CORNMEAL +CORNMEALS +CORNPONE +CORNPONES +CORNROW +CORNROWED +CORNROWING +CORNROWS +CORNS +CORNSTALK +CORNSTALKS +CORNSTARCH +CORNSTARCHES +CORNU +CORNUA +CORNUAL +CORNUCOPIA +CORNUCOPIAN +CORNUCOPIAS +CORNUS +CORNUSES +CORNUTE +CORNUTED +CORNUTO +CORNUTOS +CORNY +CORODIES +CORODY +COROLLA +COROLLARIES +COROLLARY +COROLLAS +COROLLATE +COROMANDEL +COROMANDELS +CORONA +CORONACH +CORONACHS +CORONAE +CORONAGRAPH +CORONAGRAPHS +CORONAL +CORONALLY +CORONALS +CORONARIES +CORONARY +CORONAS +CORONATE +CORONATED +CORONATES +CORONATING +CORONATION +CORONATIONS +CORONEL +CORONELS +CORONER +CORONERS +CORONET +CORONETED +CORONETS +CORONOGRAPH +CORONOGRAPHS +CORONOID +COROTATE +COROTATED +COROTATES +COROTATING +COROTATION +COROTATIONS +CORPORA +CORPORAL +CORPORALITIES +CORPORALITY +CORPORALLY +CORPORALS +CORPORATE +CORPORATELY +CORPORATES +CORPORATION +CORPORATIONS +CORPORATISM +CORPORATISMS +CORPORATIST +CORPORATIVE +CORPORATIVISM +CORPORATIVISMS +CORPORATOR +CORPORATORS +CORPOREAL +CORPOREALITIES +CORPOREALITY +CORPOREALLY +CORPOREALNESS +CORPOREALNESSES +CORPOREITIES +CORPOREITY +CORPOSANT +CORPOSANTS +CORPS +CORPSE +CORPSES +CORPSMAN +CORPSMEN +CORPULENCE +CORPULENCES +CORPULENCIES +CORPULENCY +CORPULENT +CORPULENTLY +CORPUS +CORPUSCLE +CORPUSCLES +CORPUSCULAR +CORPUSES +CORRADE +CORRADED +CORRADES +CORRADING +CORRAL +CORRALLED +CORRALLING +CORRALS +CORRASION +CORRASIONS +CORRASIVE +CORRECT +CORRECTABLE +CORRECTED +CORRECTER +CORRECTEST +CORRECTING +CORRECTION +CORRECTIONAL +CORRECTIONS +CORRECTITUDE +CORRECTITUDES +CORRECTIVE +CORRECTIVELY +CORRECTIVES +CORRECTLY +CORRECTNESS +CORRECTNESSES +CORRECTOR +CORRECTORS +CORRECTS +CORRELATABLE +CORRELATE +CORRELATED +CORRELATES +CORRELATING +CORRELATION +CORRELATIONAL +CORRELATIONS +CORRELATIVE +CORRELATIVELY +CORRELATIVES +CORRELATOR +CORRELATORS +CORRESPOND +CORRESPONDED +CORRESPONDENCE +CORRESPONDENCES +CORRESPONDENCY +CORRESPONDENT +CORRESPONDENTS +CORRESPONDING +CORRESPONDINGLY +CORRESPONDS +CORRESPONSIVE +CORRIDA +CORRIDAS +CORRIDOR +CORRIDORS +CORRIE +CORRIES +CORRIGENDA +CORRIGENDUM +CORRIGIBILITIES +CORRIGIBILITY +CORRIGIBLE +CORRIVAL +CORRIVALS +CORROBORANT +CORROBORATE +CORROBORATED +CORROBORATES +CORROBORATING +CORROBORATION +CORROBORATIONS +CORROBORATIVE +CORROBORATOR +CORROBORATORS +CORROBORATORY +CORROBOREE +CORROBOREES +CORRODE +CORRODED +CORRODES +CORRODIBLE +CORRODIES +CORRODING +CORRODY +CORROSION +CORROSIONS +CORROSIVE +CORROSIVELY +CORROSIVENESS +CORROSIVENESSES +CORROSIVES +CORRUGATE +CORRUGATED +CORRUGATES +CORRUGATING +CORRUGATION +CORRUGATIONS +CORRUPT +CORRUPTED +CORRUPTER +CORRUPTERS +CORRUPTEST +CORRUPTIBILITY +CORRUPTIBLE +CORRUPTIBLY +CORRUPTING +CORRUPTION +CORRUPTIONIST +CORRUPTIONISTS +CORRUPTIONS +CORRUPTIVE +CORRUPTIVELY +CORRUPTLY +CORRUPTNESS +CORRUPTNESSES +CORRUPTOR +CORRUPTORS +CORRUPTS +CORS +CORSAC +CORSACS +CORSAGE +CORSAGES +CORSAIR +CORSAIRS +CORSE +CORSELET +CORSELETS +CORSELETTE +CORSELETTES +CORSES +CORSET +CORSETED +CORSETIERE +CORSETIERES +CORSETING +CORSETRIES +CORSETRY +CORSETS +CORSLET +CORSLETS +CORTEGE +CORTEGES +CORTEX +CORTEXES +CORTICAL +CORTICALLY +CORTICATE +CORTICES +CORTICOID +CORTICOIDS +CORTICOSE +CORTICOSTEROID +CORTICOSTEROIDS +CORTICOSTERONE +CORTICOSTERONES +CORTICOTROPHIN +CORTICOTROPHINS +CORTICOTROPIN +CORTICOTROPINS +CORTIN +CORTINA +CORTINAS +CORTINS +CORTISOL +CORTISOLS +CORTISONE +CORTISONES +CORULER +CORULERS +CORUNDUM +CORUNDUMS +CORUSCANT +CORUSCATE +CORUSCATED +CORUSCATES +CORUSCATING +CORUSCATION +CORUSCATIONS +CORVEE +CORVEES +CORVES +CORVET +CORVETS +CORVETTE +CORVETTES +CORVID +CORVIDS +CORVINA +CORVINAS +CORVINE +CORY +CORYBANT +CORYBANTES +CORYBANTIC +CORYBANTS +CORYDALIS +CORYDALISES +CORYMB +CORYMBED +CORYMBOSE +CORYMBOSELY +CORYMBOUS +CORYMBS +CORYNEBACTERIA +CORYNEBACTERIAL +CORYNEBACTERIUM +CORYNEFORM +CORYPHAEI +CORYPHAEUS +CORYPHEE +CORYPHEES +CORYZA +CORYZAL +CORYZAS +COS +COSCRIPT +COSCRIPTED +COSCRIPTING +COSCRIPTS +COSEC +COSECANT +COSECANTS +COSECS +COSEISMAL +COSEISMALS +COSEISMIC +COSEISMICS +COSES +COSET +COSETS +COSEY +COSEYS +COSH +COSHED +COSHER +COSHERED +COSHERING +COSHERS +COSHES +COSHING +COSIE +COSIED +COSIER +COSIES +COSIEST +COSIGN +COSIGNATORIES +COSIGNATORY +COSIGNED +COSIGNER +COSIGNERS +COSIGNING +COSIGNS +COSILY +COSINE +COSINES +COSINESS +COSINESSES +COSMETIC +COSMETICALLY +COSMETICIAN +COSMETICIANS +COSMETICIZE +COSMETICIZED +COSMETICIZES +COSMETICIZING +COSMETICS +COSMETOLOGIES +COSMETOLOGIST +COSMETOLOGISTS +COSMETOLOGY +COSMIC +COSMICAL +COSMICALLY +COSMID +COSMIDS +COSMISM +COSMISMS +COSMIST +COSMISTS +COSMOCHEMICAL +COSMOCHEMIST +COSMOCHEMISTRY +COSMOCHEMISTS +COSMOGENIC +COSMOGONIC +COSMOGONICAL +COSMOGONIES +COSMOGONIST +COSMOGONISTS +COSMOGONY +COSMOGRAPHER +COSMOGRAPHERS +COSMOGRAPHIC +COSMOGRAPHICAL +COSMOGRAPHIES +COSMOGRAPHY +COSMOLINE +COSMOLINED +COSMOLINES +COSMOLINING +COSMOLOGICAL +COSMOLOGICALLY +COSMOLOGIES +COSMOLOGIST +COSMOLOGISTS +COSMOLOGY +COSMONAUT +COSMONAUTS +COSMOPOLIS +COSMOPOLISES +COSMOPOLITAN +COSMOPOLITANISM +COSMOPOLITANS +COSMOPOLITE +COSMOPOLITES +COSMOPOLITISM +COSMOPOLITISMS +COSMOS +COSMOSES +COSMOTRON +COSMOTRONS +COSPONSOR +COSPONSORED +COSPONSORING +COSPONSORS +COSPONSORSHIP +COSPONSORSHIPS +COSS +COSSACK +COSSACKS +COSSET +COSSETED +COSSETING +COSSETS +COST +COSTA +COSTAE +COSTAL +COSTALLY +COSTAR +COSTARD +COSTARDS +COSTARRED +COSTARRING +COSTARS +COSTATE +COSTED +COSTER +COSTERMONGER +COSTERMONGERS +COSTERS +COSTING +COSTIVE +COSTIVELY +COSTIVENESS +COSTIVENESSES +COSTLESS +COSTLESSLY +COSTLIER +COSTLIEST +COSTLINESS +COSTLINESSES +COSTLY +COSTMARIES +COSTMARY +COSTREL +COSTRELS +COSTS +COSTUME +COSTUMED +COSTUMER +COSTUMERIES +COSTUMERS +COSTUMERY +COSTUMES +COSTUMEY +COSTUMIER +COSTUMIERS +COSTUMING +COSURFACTANT +COSURFACTANTS +COSY +COSYING +COT +COTAN +COTANGENT +COTANGENTS +COTANS +COTE +COTEAU +COTEAUX +COTED +COTENANCIES +COTENANCY +COTENANT +COTENANTS +COTERIE +COTERIES +COTERMINOUS +COTERMINOUSLY +COTES +COTHURN +COTHURNAL +COTHURNI +COTHURNS +COTHURNUS +COTIDAL +COTILLION +COTILLIONS +COTILLON +COTILLONS +COTING +COTINGA +COTINGAS +COTININE +COTININES +COTONEASTER +COTONEASTERS +COTQUEAN +COTQUEANS +COTRANSDUCE +COTRANSDUCED +COTRANSDUCES +COTRANSDUCING +COTRANSDUCTION +COTRANSDUCTIONS +COTRANSFER +COTRANSFERS +COTRANSPORT +COTRANSPORTED +COTRANSPORTING +COTRANSPORTS +COTRUSTEE +COTRUSTEES +COTS +COTTA +COTTAE +COTTAGE +COTTAGER +COTTAGERS +COTTAGES +COTTAGEY +COTTAR +COTTARS +COTTAS +COTTER +COTTERED +COTTERLESS +COTTERS +COTTIER +COTTIERS +COTTON +COTTONED +COTTONING +COTTONMOUTH +COTTONMOUTHS +COTTONS +COTTONSEED +COTTONSEEDS +COTTONTAIL +COTTONTAILS +COTTONWEED +COTTONWEEDS +COTTONWOOD +COTTONWOODS +COTTONY +COTURNIX +COTURNIXES +COTYLEDON +COTYLEDONARY +COTYLEDONS +COTYLOID +COTYLOSAUR +COTYLOSAURS +COTYPE +COTYPES +COUCH +COUCHANT +COUCHED +COUCHER +COUCHERS +COUCHES +COUCHETTE +COUCHETTES +COUCHING +COUCHINGS +COUDE +COUGAR +COUGARS +COUGH +COUGHED +COUGHER +COUGHERS +COUGHING +COUGHS +COULD +COULDEST +COULDST +COULEE +COULEES +COULIBIAC +COULIBIACS +COULIS +COULISSE +COULISSES +COULOIR +COULOIRS +COULOMB +COULOMBIC +COULOMBS +COULOMETER +COULOMETERS +COULOMETRIC +COULOMETRICALLY +COULOMETRIES +COULOMETRY +COULTER +COULTERS +COUMARIC +COUMARIN +COUMARINS +COUMARONE +COUMARONES +COUMAROU +COUMAROUS +COUNCIL +COUNCILLOR +COUNCILLORS +COUNCILLORSHIP +COUNCILLORSHIPS +COUNCILMAN +COUNCILMANIC +COUNCILMEN +COUNCILOR +COUNCILORS +COUNCILS +COUNCILWOMAN +COUNCILWOMEN +COUNSEL +COUNSELED +COUNSELEE +COUNSELEES +COUNSELING +COUNSELINGS +COUNSELLED +COUNSELLING +COUNSELLINGS +COUNSELLOR +COUNSELLORS +COUNSELOR +COUNSELORS +COUNSELORSHIP +COUNSELORSHIPS +COUNSELS +COUNT +COUNTABILITIES +COUNTABILITY +COUNTABLE +COUNTABLY +COUNTDOWN +COUNTDOWNS +COUNTED +COUNTENANCE +COUNTENANCED +COUNTENANCER +COUNTENANCERS +COUNTENANCES +COUNTENANCING +COUNTER +COUNTERACT +COUNTERACTED +COUNTERACTING +COUNTERACTION +COUNTERACTIONS +COUNTERACTIVE +COUNTERACTS +COUNTERAGENT +COUNTERAGENTS +COUNTERARGUE +COUNTERARGUED +COUNTERARGUES +COUNTERARGUING +COUNTERARGUMENT +COUNTERASSAULT +COUNTERASSAULTS +COUNTERATTACK +COUNTERATTACKED +COUNTERATTACKER +COUNTERATTACKS +COUNTERBALANCE +COUNTERBALANCED +COUNTERBALANCES +COUNTERBID +COUNTERBIDS +COUNTERBLAST +COUNTERBLASTS +COUNTERBLOCKADE +COUNTERBLOW +COUNTERBLOWS +COUNTERCAMPAIGN +COUNTERCHANGE +COUNTERCHANGED +COUNTERCHANGES +COUNTERCHANGING +COUNTERCHARGE +COUNTERCHARGED +COUNTERCHARGES +COUNTERCHARGING +COUNTERCHECK +COUNTERCHECKED +COUNTERCHECKING +COUNTERCHECKS +COUNTERCLAIM +COUNTERCLAIMED +COUNTERCLAIMING +COUNTERCLAIMS +COUNTERCOUP +COUNTERCOUPS +COUNTERCRIES +COUNTERCRY +COUNTERCULTURAL +COUNTERCULTURE +COUNTERCULTURES +COUNTERCURRENT +COUNTERCURRENTS +COUNTERCYCLICAL +COUNTERDEMAND +COUNTERDEMANDS +COUNTERED +COUNTEREFFORT +COUNTEREFFORTS +COUNTEREVIDENCE +COUNTEREXAMPLE +COUNTEREXAMPLES +COUNTERFACTUAL +COUNTERFEIT +COUNTERFEITED +COUNTERFEITER +COUNTERFEITERS +COUNTERFEITING +COUNTERFEITS +COUNTERFIRE +COUNTERFIRES +COUNTERFLOW +COUNTERFLOWS +COUNTERFOIL +COUNTERFOILS +COUNTERFORCE +COUNTERFORCES +COUNTERGUERILLA +COUNTERIMAGE +COUNTERIMAGES +COUNTERING +COUNTERINSTANCE +COUNTERION +COUNTERIONS +COUNTERIRRITANT +COUNTERMAN +COUNTERMAND +COUNTERMANDED +COUNTERMANDING +COUNTERMANDS +COUNTERMARCH +COUNTERMARCHED +COUNTERMARCHES +COUNTERMARCHING +COUNTERMEASURE +COUNTERMEASURES +COUNTERMELODIES +COUNTERMELODY +COUNTERMEMO +COUNTERMEMOS +COUNTERMEN +COUNTERMINE +COUNTERMINES +COUNTERMOVE +COUNTERMOVED +COUNTERMOVEMENT +COUNTERMOVES +COUNTERMOVING +COUNTERMYTH +COUNTERMYTHS +COUNTEROFFER +COUNTEROFFERS +COUNTERORDER +COUNTERORDERED +COUNTERORDERING +COUNTERORDERS +COUNTERPANE +COUNTERPANES +COUNTERPART +COUNTERPARTS +COUNTERPETITION +COUNTERPICKET +COUNTERPICKETED +COUNTERPICKETS +COUNTERPLAN +COUNTERPLANS +COUNTERPLAY +COUNTERPLAYER +COUNTERPLAYERS +COUNTERPLAYS +COUNTERPLEA +COUNTERPLEAS +COUNTERPLOT +COUNTERPLOTS +COUNTERPLOTTED +COUNTERPLOTTING +COUNTERPLOY +COUNTERPLOYS +COUNTERPOINT +COUNTERPOINTED +COUNTERPOINTING +COUNTERPOINTS +COUNTERPOISE +COUNTERPOISED +COUNTERPOISES +COUNTERPOISING +COUNTERPOSE +COUNTERPOSED +COUNTERPOSES +COUNTERPOSING +COUNTERPOWER +COUNTERPOWERS +COUNTERPRESSURE +COUNTERPROJECT +COUNTERPROJECTS +COUNTERPROPOSAL +COUNTERPROTEST +COUNTERPROTESTS +COUNTERPUNCH +COUNTERPUNCHED +COUNTERPUNCHER +COUNTERPUNCHERS +COUNTERPUNCHES +COUNTERPUNCHING +COUNTERQUESTION +COUNTERRAID +COUNTERRAIDS +COUNTERRALLIED +COUNTERRALLIES +COUNTERRALLY +COUNTERRALLYING +COUNTERREACTION +COUNTERREFORM +COUNTERREFORMER +COUNTERREFORMS +COUNTERRESPONSE +COUNTERS +COUNTERSHADING +COUNTERSHADINGS +COUNTERSHOT +COUNTERSHOTS +COUNTERSIGN +COUNTERSIGNED +COUNTERSIGNING +COUNTERSIGNS +COUNTERSINK +COUNTERSINKING +COUNTERSINKS +COUNTERSNIPER +COUNTERSNIPERS +COUNTERSPELL +COUNTERSPELLS +COUNTERSPIES +COUNTERSPY +COUNTERSTAIN +COUNTERSTAINED +COUNTERSTAINING +COUNTERSTAINS +COUNTERSTATE +COUNTERSTATED +COUNTERSTATES +COUNTERSTATING +COUNTERSTEP +COUNTERSTEPS +COUNTERSTRATEGY +COUNTERSTREAM +COUNTERSTREAMS +COUNTERSTRICKEN +COUNTERSTRIKE +COUNTERSTRIKES +COUNTERSTRIKING +COUNTERSTROKE +COUNTERSTROKES +COUNTERSTRUCK +COUNTERSTYLE +COUNTERSTYLES +COUNTERSUE +COUNTERSUED +COUNTERSUES +COUNTERSUING +COUNTERSUIT +COUNTERSUITS +COUNTERSUNK +COUNTERTACTIC +COUNTERTACTICS +COUNTERTENDENCY +COUNTERTENOR +COUNTERTENORS +COUNTERTERROR +COUNTERTERRORS +COUNTERTHREAT +COUNTERTHREATS +COUNTERTHRUST +COUNTERTHRUSTS +COUNTERTOP +COUNTERTOPS +COUNTERTRADE +COUNTERTRADES +COUNTERTREND +COUNTERTRENDS +COUNTERVAIL +COUNTERVAILED +COUNTERVAILING +COUNTERVAILS +COUNTERVIEW +COUNTERVIEWS +COUNTERVIOLENCE +COUNTERWEIGHT +COUNTERWEIGHTED +COUNTERWEIGHTS +COUNTERWORLD +COUNTERWORLDS +COUNTESS +COUNTESSES +COUNTIAN +COUNTIANS +COUNTIES +COUNTING +COUNTINGHOUSE +COUNTINGHOUSES +COUNTLESS +COUNTLESSLY +COUNTRIES +COUNTRIFIED +COUNTRY +COUNTRYFIED +COUNTRYISH +COUNTRYMAN +COUNTRYMEN +COUNTRYSEAT +COUNTRYSEATS +COUNTRYSIDE +COUNTRYSIDES +COUNTRYWIDE +COUNTRYWOMAN +COUNTRYWOMEN +COUNTS +COUNTY +COUP +COUPE +COUPED +COUPES +COUPING +COUPLE +COUPLED +COUPLEDOM +COUPLEDOMS +COUPLEMENT +COUPLEMENTS +COUPLER +COUPLERS +COUPLES +COUPLET +COUPLETS +COUPLING +COUPLINGS +COUPON +COUPONING +COUPONINGS +COUPONS +COUPS +COURAGE +COURAGEOUS +COURAGEOUSLY +COURAGEOUSNESS +COURAGES +COURANT +COURANTE +COURANTES +COURANTO +COURANTOES +COURANTOS +COURANTS +COURGETTE +COURGETTES +COURIER +COURIERS +COURLAN +COURLANS +COURSE +COURSED +COURSER +COURSERS +COURSES +COURSEWARE +COURSEWARES +COURSING +COURSINGS +COURT +COURTED +COURTEOUS +COURTEOUSLY +COURTEOUSNESS +COURTEOUSNESSES +COURTER +COURTERS +COURTESAN +COURTESANS +COURTESIED +COURTESIES +COURTESY +COURTESYING +COURTEZAN +COURTEZANS +COURTHOUSE +COURTHOUSES +COURTIER +COURTIERS +COURTING +COURTLIER +COURTLIEST +COURTLINESS +COURTLINESSES +COURTLY +COURTROOM +COURTROOMS +COURTS +COURTSHIP +COURTSHIPS +COURTSIDE +COURTSIDES +COURTYARD +COURTYARDS +COUSCOUS +COUSCOUSES +COUSIN +COUSINAGE +COUSINAGES +COUSINHOOD +COUSINHOODS +COUSINLY +COUSINRIES +COUSINRY +COUSINS +COUSINSHIP +COUSINSHIPS +COUTEAU +COUTEAUX +COUTER +COUTERS +COUTH +COUTHER +COUTHEST +COUTHIE +COUTHIER +COUTHIEST +COUTHS +COUTURE +COUTURES +COUTURIER +COUTURIERE +COUTURIERES +COUTURIERS +COUVADE +COUVADES +COVALENCE +COVALENCES +COVALENCIES +COVALENCY +COVALENT +COVALENTLY +COVARIANCE +COVARIANCES +COVARIANT +COVARIATE +COVARIATES +COVARIATION +COVARIATIONS +COVARIED +COVARIES +COVARY +COVARYING +COVE +COVED +COVELLINE +COVELLINES +COVELLITE +COVELLITES +COVEN +COVENANT +COVENANTAL +COVENANTED +COVENANTEE +COVENANTEES +COVENANTER +COVENANTERS +COVENANTING +COVENANTOR +COVENANTORS +COVENANTS +COVENS +COVER +COVERABLE +COVERAGE +COVERAGES +COVERALL +COVERALLED +COVERALLS +COVERED +COVERER +COVERERS +COVERING +COVERINGS +COVERLESS +COVERLET +COVERLETS +COVERLID +COVERLIDS +COVERS +COVERSINE +COVERSINES +COVERSLIP +COVERSLIPS +COVERT +COVERTLY +COVERTNESS +COVERTNESSES +COVERTS +COVERTURE +COVERTURES +COVERUP +COVERUPS +COVES +COVET +COVETABLE +COVETED +COVETER +COVETERS +COVETING +COVETINGLY +COVETOUS +COVETOUSLY +COVETOUSNESS +COVETOUSNESSES +COVETS +COVEY +COVEYS +COVIN +COVING +COVINGS +COVINS +COW +COWAGE +COWAGES +COWARD +COWARDICE +COWARDICES +COWARDLINESS +COWARDLINESSES +COWARDLY +COWARDS +COWBANE +COWBANES +COWBELL +COWBELLS +COWBERRIES +COWBERRY +COWBIND +COWBINDS +COWBIRD +COWBIRDS +COWBOY +COWBOYED +COWBOYING +COWBOYS +COWCATCHER +COWCATCHERS +COWED +COWEDLY +COWER +COWERED +COWERING +COWERS +COWFISH +COWFISHES +COWFLAP +COWFLAPS +COWFLOP +COWFLOPS +COWGIRL +COWGIRLS +COWHAGE +COWHAGES +COWHAND +COWHANDS +COWHERB +COWHERBS +COWHERD +COWHERDS +COWHIDE +COWHIDED +COWHIDES +COWHIDING +COWIER +COWIEST +COWING +COWINNER +COWINNERS +COWL +COWLED +COWLICK +COWLICKS +COWLING +COWLINGS +COWLS +COWLSTAFF +COWLSTAFFS +COWLSTAVES +COWMAN +COWMEN +COWORKER +COWORKERS +COWPAT +COWPATS +COWPEA +COWPEAS +COWPIE +COWPIES +COWPLOP +COWPLOPS +COWPOKE +COWPOKES +COWPOX +COWPOXES +COWPUNCHER +COWPUNCHERS +COWRIE +COWRIES +COWRITE +COWRITER +COWRITERS +COWRITES +COWRITING +COWRITTEN +COWROTE +COWRY +COWS +COWSHED +COWSHEDS +COWSKIN +COWSKINS +COWSLIP +COWSLIPS +COWY +COX +COXA +COXAE +COXAL +COXALGIA +COXALGIAS +COXALGIC +COXALGIES +COXALGY +COXCOMB +COXCOMBIC +COXCOMBICAL +COXCOMBRIES +COXCOMBRY +COXCOMBS +COXED +COXES +COXING +COXITIDES +COXITIS +COXLESS +COXSWAIN +COXSWAINED +COXSWAINING +COXSWAINS +COY +COYDOG +COYDOGS +COYED +COYER +COYEST +COYING +COYISH +COYLY +COYNESS +COYNESSES +COYOTE +COYOTES +COYOTILLO +COYOTILLOS +COYPOU +COYPOUS +COYPU +COYPUS +COYS +COZ +COZEN +COZENAGE +COZENAGES +COZENED +COZENER +COZENERS +COZENING +COZENS +COZES +COZEY +COZEYS +COZIE +COZIED +COZIER +COZIES +COZIEST +COZILY +COZINESS +COZINESSES +COZY +COZYING +COZZES +CRAAL +CRAALED +CRAALING +CRAALS +CRAB +CRABAPPLE +CRABAPPLES +CRABBED +CRABBEDLY +CRABBEDNESS +CRABBEDNESSES +CRABBER +CRABBERS +CRABBIER +CRABBIEST +CRABBILY +CRABBING +CRABBY +CRABEATER +CRABEATERS +CRABGRASS +CRABGRASSES +CRABLIKE +CRABMEAT +CRABMEATS +CRABS +CRABSTICK +CRABSTICKS +CRABWISE +CRACK +CRACKAJACK +CRACKAJACKS +CRACKBACK +CRACKBACKS +CRACKBRAIN +CRACKBRAINED +CRACKBRAINS +CRACKDOWN +CRACKDOWNS +CRACKED +CRACKER +CRACKERJACK +CRACKERJACKS +CRACKERS +CRACKHEAD +CRACKHEADS +CRACKING +CRACKINGS +CRACKLE +CRACKLED +CRACKLES +CRACKLEWARE +CRACKLEWARES +CRACKLIER +CRACKLIEST +CRACKLING +CRACKLINGS +CRACKLY +CRACKNEL +CRACKNELS +CRACKPOT +CRACKPOTS +CRACKS +CRACKSMAN +CRACKSMEN +CRACKUP +CRACKUPS +CRACKY +CRADLE +CRADLED +CRADLER +CRADLERS +CRADLES +CRADLESONG +CRADLESONGS +CRADLING +CRAFT +CRAFTED +CRAFTER +CRAFTERS +CRAFTIER +CRAFTIEST +CRAFTILY +CRAFTINESS +CRAFTINESSES +CRAFTING +CRAFTS +CRAFTSMAN +CRAFTSMANLIKE +CRAFTSMANLY +CRAFTSMANSHIP +CRAFTSMANSHIPS +CRAFTSMEN +CRAFTSPEOPLE +CRAFTSPERSON +CRAFTSPERSONS +CRAFTSWOMAN +CRAFTSWOMEN +CRAFTWORK +CRAFTWORKS +CRAFTY +CRAG +CRAGGED +CRAGGIER +CRAGGIEST +CRAGGILY +CRAGGINESS +CRAGGINESSES +CRAGGY +CRAGS +CRAGSMAN +CRAGSMEN +CRAKE +CRAKES +CRAM +CRAMBE +CRAMBES +CRAMBO +CRAMBOES +CRAMBOS +CRAMMED +CRAMMER +CRAMMERS +CRAMMING +CRAMOISIE +CRAMOISIES +CRAMOISY +CRAMP +CRAMPED +CRAMPFISH +CRAMPFISHES +CRAMPIER +CRAMPIEST +CRAMPING +CRAMPIT +CRAMPITS +CRAMPON +CRAMPONS +CRAMPOON +CRAMPOONS +CRAMPS +CRAMPY +CRAMS +CRANBERRIES +CRANBERRY +CRANCH +CRANCHED +CRANCHES +CRANCHING +CRANE +CRANED +CRANES +CRANESBILL +CRANESBILLS +CRANIA +CRANIAL +CRANIALLY +CRANIATE +CRANIATES +CRANING +CRANIOCEREBRAL +CRANIOFACIAL +CRANIOLOGIES +CRANIOLOGY +CRANIOMETRIES +CRANIOMETRY +CRANIOSACRAL +CRANIOTOMIES +CRANIOTOMY +CRANIUM +CRANIUMS +CRANK +CRANKCASE +CRANKCASES +CRANKED +CRANKER +CRANKEST +CRANKIER +CRANKIEST +CRANKILY +CRANKINESS +CRANKINESSES +CRANKING +CRANKISH +CRANKLE +CRANKLED +CRANKLES +CRANKLING +CRANKLY +CRANKOUS +CRANKPIN +CRANKPINS +CRANKS +CRANKSHAFT +CRANKSHAFTS +CRANKY +CRANNIED +CRANNIES +CRANNOG +CRANNOGE +CRANNOGES +CRANNOGS +CRANNY +CRANREUCH +CRANREUCHS +CRAP +CRAPE +CRAPED +CRAPELIKE +CRAPES +CRAPING +CRAPOLA +CRAPOLAS +CRAPPED +CRAPPER +CRAPPERS +CRAPPIE +CRAPPIER +CRAPPIES +CRAPPIEST +CRAPPING +CRAPPY +CRAPS +CRAPSHOOT +CRAPSHOOTER +CRAPSHOOTERS +CRAPSHOOTS +CRAPULENT +CRAPULOUS +CRASES +CRASH +CRASHED +CRASHER +CRASHERS +CRASHES +CRASHING +CRASHINGLY +CRASHWORTHINESS +CRASHWORTHY +CRASIS +CRASS +CRASSER +CRASSEST +CRASSITUDE +CRASSITUDES +CRASSLY +CRASSNESS +CRASSNESSES +CRATCH +CRATCHES +CRATE +CRATED +CRATER +CRATERED +CRATERING +CRATERINGS +CRATERLET +CRATERLETS +CRATERLIKE +CRATERS +CRATES +CRATING +CRATON +CRATONIC +CRATONS +CRAUNCH +CRAUNCHED +CRAUNCHES +CRAUNCHING +CRAVAT +CRAVATS +CRAVE +CRAVED +CRAVEN +CRAVENED +CRAVENING +CRAVENLY +CRAVENNESS +CRAVENNESSES +CRAVENS +CRAVER +CRAVERS +CRAVES +CRAVING +CRAVINGS +CRAW +CRAWDAD +CRAWDADDIES +CRAWDADDY +CRAWDADS +CRAWFISH +CRAWFISHED +CRAWFISHES +CRAWFISHING +CRAWL +CRAWLED +CRAWLER +CRAWLERS +CRAWLIER +CRAWLIEST +CRAWLING +CRAWLS +CRAWLWAY +CRAWLWAYS +CRAWLY +CRAWS +CRAYFISH +CRAYFISHES +CRAYON +CRAYONED +CRAYONER +CRAYONERS +CRAYONING +CRAYONIST +CRAYONISTS +CRAYONS +CRAZE +CRAZED +CRAZES +CRAZIER +CRAZIES +CRAZIEST +CRAZILY +CRAZINESS +CRAZINESSES +CRAZING +CRAZY +CRAZYWEED +CRAZYWEEDS +CREAK +CREAKED +CREAKIER +CREAKIEST +CREAKILY +CREAKINESS +CREAKINESSES +CREAKING +CREAKS +CREAKY +CREAM +CREAMCUPS +CREAMED +CREAMER +CREAMERIES +CREAMERS +CREAMERY +CREAMIER +CREAMIEST +CREAMILY +CREAMINESS +CREAMINESSES +CREAMING +CREAMPUFF +CREAMPUFFS +CREAMS +CREAMWARE +CREAMWARES +CREAMY +CREASE +CREASED +CREASELESS +CREASER +CREASERS +CREASES +CREASIER +CREASIEST +CREASING +CREASY +CREATABLE +CREATE +CREATED +CREATES +CREATIN +CREATINE +CREATINES +CREATING +CREATININE +CREATININES +CREATINS +CREATION +CREATIONISM +CREATIONISMS +CREATIONIST +CREATIONISTS +CREATIONS +CREATIVE +CREATIVELY +CREATIVENESS +CREATIVENESSES +CREATIVES +CREATIVITIES +CREATIVITY +CREATOR +CREATORS +CREATURAL +CREATURE +CREATUREHOOD +CREATUREHOODS +CREATURELINESS +CREATURELY +CREATURES +CRECHE +CRECHES +CRED +CREDAL +CREDENCE +CREDENCES +CREDENDA +CREDENDUM +CREDENT +CREDENTIAL +CREDENTIALED +CREDENTIALING +CREDENTIALISM +CREDENTIALISMS +CREDENTIALLED +CREDENTIALLING +CREDENTIALS +CREDENZA +CREDENZAS +CREDIBILITIES +CREDIBILITY +CREDIBLE +CREDIBLY +CREDIT +CREDITABILITIES +CREDITABILITY +CREDITABLE +CREDITABLENESS +CREDITABLY +CREDITED +CREDITING +CREDITOR +CREDITORS +CREDITS +CREDITWORTHY +CREDO +CREDOS +CREDS +CREDULITIES +CREDULITY +CREDULOUS +CREDULOUSLY +CREDULOUSNESS +CREDULOUSNESSES +CREED +CREEDAL +CREEDS +CREEK +CREEKS +CREEL +CREELED +CREELING +CREELS +CREEP +CREEPAGE +CREEPAGES +CREEPED +CREEPER +CREEPERS +CREEPIE +CREEPIER +CREEPIES +CREEPIEST +CREEPILY +CREEPINESS +CREEPINESSES +CREEPING +CREEPS +CREEPY +CREESE +CREESES +CREESH +CREESHED +CREESHES +CREESHING +CREMAINS +CREMATE +CREMATED +CREMATES +CREMATING +CREMATION +CREMATIONS +CREMATOR +CREMATORIA +CREMATORIES +CREMATORIUM +CREMATORIUMS +CREMATORS +CREMATORY +CREME +CREMES +CREMINI +CREMINIS +CRENATE +CRENATED +CRENATELY +CRENATION +CRENATIONS +CRENATURE +CRENATURES +CRENEL +CRENELATE +CRENELATED +CRENELATES +CRENELATING +CRENELATION +CRENELATIONS +CRENELED +CRENELING +CRENELLATED +CRENELLATION +CRENELLATIONS +CRENELLE +CRENELLED +CRENELLES +CRENELLING +CRENELS +CRENSHAW +CRENSHAWS +CRENULATE +CRENULATED +CRENULATION +CRENULATIONS +CREODONT +CREODONTS +CREOLE +CREOLES +CREOLISE +CREOLISED +CREOLISES +CREOLISING +CREOLIZATION +CREOLIZATIONS +CREOLIZE +CREOLIZED +CREOLIZES +CREOLIZING +CREOSOL +CREOSOLS +CREOSOTE +CREOSOTED +CREOSOTES +CREOSOTIC +CREOSOTING +CREPE +CREPED +CREPES +CREPEY +CREPIER +CREPIEST +CREPING +CREPITANT +CREPITATE +CREPITATED +CREPITATES +CREPITATING +CREPITATION +CREPITATIONS +CREPON +CREPONS +CREPT +CREPUSCLE +CREPUSCLES +CREPUSCULAR +CREPUSCULE +CREPUSCULES +CREPY +CRESCENDI +CRESCENDO +CRESCENDOED +CRESCENDOES +CRESCENDOING +CRESCENDOS +CRESCENT +CRESCENTIC +CRESCENTS +CRESCIVE +CRESCIVELY +CRESOL +CRESOLS +CRESS +CRESSES +CRESSET +CRESSETS +CRESSY +CREST +CRESTAL +CRESTED +CRESTFALLEN +CRESTFALLENLY +CRESTFALLENNESS +CRESTING +CRESTINGS +CRESTLESS +CRESTS +CRESYL +CRESYLIC +CRESYLS +CRETIC +CRETICS +CRETIN +CRETINISM +CRETINISMS +CRETINOID +CRETINOUS +CRETINS +CRETONNE +CRETONNES +CREVALLE +CREVALLES +CREVASSE +CREVASSED +CREVASSES +CREVASSING +CREVICE +CREVICED +CREVICES +CREW +CREWCUT +CREWCUTS +CREWED +CREWEL +CREWELS +CREWELWORK +CREWELWORKS +CREWING +CREWLESS +CREWMAN +CREWMATE +CREWMATES +CREWMEN +CREWNECK +CREWNECKS +CREWS +CRIB +CRIBBAGE +CRIBBAGES +CRIBBED +CRIBBER +CRIBBERS +CRIBBING +CRIBBINGS +CRIBBLED +CRIBRIFORM +CRIBROUS +CRIBS +CRIBWORK +CRIBWORKS +CRICETID +CRICETIDS +CRICK +CRICKED +CRICKET +CRICKETED +CRICKETER +CRICKETERS +CRICKETING +CRICKETS +CRICKEY +CRICKING +CRICKS +CRICOID +CRICOIDS +CRIED +CRIER +CRIERS +CRIES +CRIKEY +CRIME +CRIMELESS +CRIMES +CRIMINAL +CRIMINALISTICS +CRIMINALITIES +CRIMINALITY +CRIMINALIZATION +CRIMINALIZE +CRIMINALIZED +CRIMINALIZES +CRIMINALIZING +CRIMINALLY +CRIMINALS +CRIMINATE +CRIMINATED +CRIMINATES +CRIMINATING +CRIMINATION +CRIMINATIONS +CRIMINE +CRIMINI +CRIMINIS +CRIMINOLOGICAL +CRIMINOLOGIES +CRIMINOLOGIST +CRIMINOLOGISTS +CRIMINOLOGY +CRIMINOUS +CRIMINY +CRIMMER +CRIMMERS +CRIMP +CRIMPED +CRIMPER +CRIMPERS +CRIMPIER +CRIMPIEST +CRIMPING +CRIMPLE +CRIMPLED +CRIMPLES +CRIMPLING +CRIMPS +CRIMPY +CRIMSON +CRIMSONED +CRIMSONING +CRIMSONS +CRINGE +CRINGED +CRINGER +CRINGERS +CRINGES +CRINGING +CRINGLE +CRINGLES +CRINITE +CRINITES +CRINKLE +CRINKLED +CRINKLES +CRINKLIER +CRINKLIEST +CRINKLING +CRINKLY +CRINOID +CRINOIDAL +CRINOIDS +CRINOLINE +CRINOLINED +CRINOLINES +CRINUM +CRINUMS +CRIOLLO +CRIOLLOS +CRIPE +CRIPES +CRIPPLE +CRIPPLED +CRIPPLER +CRIPPLERS +CRIPPLES +CRIPPLING +CRIPPLINGLY +CRIS +CRISES +CRISIC +CRISIS +CRISP +CRISPATE +CRISPATED +CRISPBREAD +CRISPBREADS +CRISPED +CRISPEN +CRISPENED +CRISPENING +CRISPENS +CRISPER +CRISPERS +CRISPEST +CRISPHEAD +CRISPHEADS +CRISPIER +CRISPIEST +CRISPILY +CRISPINESS +CRISPINESSES +CRISPING +CRISPLY +CRISPNESS +CRISPNESSES +CRISPS +CRISPY +CRISSA +CRISSAL +CRISSCROSS +CRISSCROSSED +CRISSCROSSES +CRISSCROSSING +CRISSUM +CRISTA +CRISTAE +CRISTATE +CRISTATED +CRIT +CRITERIA +CRITERIAL +CRITERION +CRITERIONS +CRITERIUM +CRITERIUMS +CRITIC +CRITICAL +CRITICALITIES +CRITICALITY +CRITICALLY +CRITICALNESS +CRITICALNESSES +CRITICASTER +CRITICASTERS +CRITICISE +CRITICISED +CRITICISES +CRITICISING +CRITICISM +CRITICISMS +CRITICIZABLE +CRITICIZE +CRITICIZED +CRITICIZER +CRITICIZERS +CRITICIZES +CRITICIZING +CRITICS +CRITIQUE +CRITIQUED +CRITIQUES +CRITIQUING +CRITS +CRITTER +CRITTERS +CRITTUR +CRITTURS +CROAK +CROAKED +CROAKER +CROAKERS +CROAKIER +CROAKIEST +CROAKILY +CROAKING +CROAKS +CROAKY +CROC +CROCEIN +CROCEINE +CROCEINES +CROCEINS +CROCHET +CROCHETED +CROCHETER +CROCHETERS +CROCHETING +CROCHETS +CROCI +CROCIDOLITE +CROCIDOLITES +CROCINE +CROCK +CROCKED +CROCKERIES +CROCKERY +CROCKET +CROCKETED +CROCKETS +CROCKING +CROCKPOT +CROCKPOTS +CROCKS +CROCODILE +CROCODILES +CROCODILIAN +CROCODILIANS +CROCOITE +CROCOITES +CROCS +CROCUS +CROCUSES +CROFT +CROFTER +CROFTERS +CROFTS +CROISSANT +CROISSANTS +CROJIK +CROJIKS +CROMLECH +CROMLECHS +CRONE +CRONES +CRONIES +CRONISH +CRONY +CRONYISM +CRONYISMS +CROOK +CROOKBACK +CROOKBACKED +CROOKBACKS +CROOKED +CROOKEDER +CROOKEDEST +CROOKEDLY +CROOKEDNESS +CROOKEDNESSES +CROOKER +CROOKERIES +CROOKERY +CROOKEST +CROOKING +CROOKNECK +CROOKNECKS +CROOKS +CROON +CROONED +CROONER +CROONERS +CROONING +CROONS +CROP +CROPLAND +CROPLANDS +CROPLESS +CROPPED +CROPPER +CROPPERS +CROPPIE +CROPPIES +CROPPING +CROPS +CROQUET +CROQUETED +CROQUETING +CROQUETS +CROQUETTE +CROQUETTES +CROQUIGNOLE +CROQUIGNOLES +CROQUIS +CRORE +CRORES +CROSIER +CROSIERS +CROSS +CROSSABILITIES +CROSSABILITY +CROSSABLE +CROSSARM +CROSSARMS +CROSSBANDED +CROSSBANDING +CROSSBANDINGS +CROSSBAR +CROSSBARRED +CROSSBARRING +CROSSBARS +CROSSBEAM +CROSSBEAMS +CROSSBEARER +CROSSBEARERS +CROSSBILL +CROSSBILLS +CROSSBONES +CROSSBOW +CROSSBOWMAN +CROSSBOWMEN +CROSSBOWS +CROSSBRED +CROSSBREDS +CROSSBREED +CROSSBREEDING +CROSSBREEDS +CROSSBUCK +CROSSBUCKS +CROSSCOURT +CROSSCURRENT +CROSSCURRENTS +CROSSCUT +CROSSCUTS +CROSSCUTTING +CROSSCUTTINGS +CROSSE +CROSSED +CROSSER +CROSSERS +CROSSES +CROSSEST +CROSSFIRE +CROSSFIRES +CROSSHAIR +CROSSHAIRS +CROSSHATCH +CROSSHATCHED +CROSSHATCHES +CROSSHATCHING +CROSSHEAD +CROSSHEADS +CROSSING +CROSSINGS +CROSSJACK +CROSSJACKS +CROSSLET +CROSSLETS +CROSSLINGUISTIC +CROSSLY +CROSSNESS +CROSSNESSES +CROSSOPTERYGIAN +CROSSOVER +CROSSOVERS +CROSSPATCH +CROSSPATCHES +CROSSPIECE +CROSSPIECES +CROSSROAD +CROSSROADS +CROSSRUFF +CROSSRUFFED +CROSSRUFFING +CROSSRUFFS +CROSSTALK +CROSSTALKS +CROSSTIE +CROSSTIED +CROSSTIES +CROSSTOWN +CROSSTREE +CROSSTREES +CROSSWALK +CROSSWALKS +CROSSWAY +CROSSWAYS +CROSSWIND +CROSSWINDS +CROSSWISE +CROSSWORD +CROSSWORDS +CROSTINI +CROSTINO +CROTCH +CROTCHED +CROTCHES +CROTCHET +CROTCHETINESS +CROTCHETINESSES +CROTCHETS +CROTCHETY +CROTON +CROTONBUG +CROTONBUGS +CROTONS +CROUCH +CROUCHED +CROUCHES +CROUCHING +CROUP +CROUPE +CROUPES +CROUPIER +CROUPIERS +CROUPIEST +CROUPILY +CROUPOUS +CROUPS +CROUPY +CROUSE +CROUSELY +CROUSTADE +CROUSTADES +CROUTE +CROUTES +CROUTON +CROUTONS +CROW +CROWBAR +CROWBARRED +CROWBARRING +CROWBARS +CROWBERRIES +CROWBERRY +CROWD +CROWDED +CROWDEDLY +CROWDEDNESS +CROWDEDNESSES +CROWDER +CROWDERS +CROWDIE +CROWDIES +CROWDING +CROWDS +CROWDY +CROWED +CROWER +CROWERS +CROWFEET +CROWFOOT +CROWFOOTS +CROWING +CROWKEEPER +CROWKEEPERS +CROWN +CROWNED +CROWNER +CROWNERS +CROWNET +CROWNETS +CROWNING +CROWNLESS +CROWNS +CROWS +CROWSFEET +CROWSFOOT +CROWSTEP +CROWSTEPPED +CROWSTEPS +CROZE +CROZER +CROZERS +CROZES +CROZIER +CROZIERS +CRU +CRUCES +CRUCIAL +CRUCIALLY +CRUCIAN +CRUCIANS +CRUCIATE +CRUCIBLE +CRUCIBLES +CRUCIFER +CRUCIFEROUS +CRUCIFERS +CRUCIFIED +CRUCIFIER +CRUCIFIERS +CRUCIFIES +CRUCIFIX +CRUCIFIXES +CRUCIFIXION +CRUCIFIXIONS +CRUCIFORM +CRUCIFORMS +CRUCIFY +CRUCIFYING +CRUCK +CRUCKS +CRUD +CRUDDED +CRUDDIER +CRUDDIEST +CRUDDING +CRUDDY +CRUDE +CRUDELY +CRUDENESS +CRUDENESSES +CRUDER +CRUDES +CRUDEST +CRUDITES +CRUDITIES +CRUDITY +CRUDS +CRUEL +CRUELER +CRUELEST +CRUELLER +CRUELLEST +CRUELLY +CRUELNESS +CRUELNESSES +CRUELTIES +CRUELTY +CRUET +CRUETS +CRUISE +CRUISED +CRUISER +CRUISERS +CRUISES +CRUISING +CRUISINGS +CRULLER +CRULLERS +CRUMB +CRUMBED +CRUMBER +CRUMBERS +CRUMBIER +CRUMBIEST +CRUMBING +CRUMBLE +CRUMBLED +CRUMBLES +CRUMBLIER +CRUMBLIEST +CRUMBLINESS +CRUMBLINESSES +CRUMBLING +CRUMBLINGS +CRUMBLY +CRUMBS +CRUMBUM +CRUMBUMS +CRUMBY +CRUMHORN +CRUMHORNS +CRUMMIE +CRUMMIER +CRUMMIES +CRUMMIEST +CRUMMINESS +CRUMMINESSES +CRUMMY +CRUMP +CRUMPED +CRUMPET +CRUMPETS +CRUMPING +CRUMPLE +CRUMPLED +CRUMPLES +CRUMPLIER +CRUMPLIEST +CRUMPLING +CRUMPLY +CRUMPS +CRUNCH +CRUNCHABLE +CRUNCHED +CRUNCHER +CRUNCHERS +CRUNCHES +CRUNCHIER +CRUNCHIEST +CRUNCHILY +CRUNCHINESS +CRUNCHINESSES +CRUNCHING +CRUNCHY +CRUNODAL +CRUNODE +CRUNODES +CRUOR +CRUORS +CRUPPER +CRUPPERS +CRURA +CRURAL +CRUS +CRUSADE +CRUSADED +CRUSADER +CRUSADERS +CRUSADES +CRUSADING +CRUSADO +CRUSADOES +CRUSADOS +CRUSE +CRUSES +CRUSET +CRUSETS +CRUSH +CRUSHABLE +CRUSHED +CRUSHER +CRUSHERS +CRUSHES +CRUSHING +CRUSHINGLY +CRUSHPROOF +CRUSILY +CRUST +CRUSTACEA +CRUSTACEAN +CRUSTACEANS +CRUSTACEOUS +CRUSTAL +CRUSTED +CRUSTIER +CRUSTIEST +CRUSTILY +CRUSTINESS +CRUSTINESSES +CRUSTING +CRUSTLESS +CRUSTOSE +CRUSTS +CRUSTY +CRUTCH +CRUTCHED +CRUTCHES +CRUTCHING +CRUX +CRUXES +CRUZADO +CRUZADOES +CRUZADOS +CRUZEIRO +CRUZEIROS +CRWTH +CRWTHS +CRY +CRYBABIES +CRYBABY +CRYING +CRYINGLY +CRYOBANK +CRYOBANKS +CRYOBIOLOGICAL +CRYOBIOLOGIES +CRYOBIOLOGIST +CRYOBIOLOGISTS +CRYOBIOLOGY +CRYOGEN +CRYOGENIC +CRYOGENICALLY +CRYOGENICS +CRYOGENIES +CRYOGENS +CRYOGENY +CRYOLITE +CRYOLITES +CRYOMETER +CRYOMETERS +CRYONIC +CRYONICS +CRYOPHILIC +CRYOPHYTE +CRYOPHYTES +CRYOPRESERVE +CRYOPRESERVED +CRYOPRESERVES +CRYOPRESERVING +CRYOPROBE +CRYOPROBES +CRYOPROTECTANT +CRYOPROTECTANTS +CRYOPROTECTIVE +CRYOSCOPE +CRYOSCOPES +CRYOSCOPIC +CRYOSCOPIES +CRYOSCOPY +CRYOSTAT +CRYOSTATIC +CRYOSTATS +CRYOSURGEON +CRYOSURGEONS +CRYOSURGERIES +CRYOSURGERY +CRYOSURGICAL +CRYOTHERAPIES +CRYOTHERAPY +CRYOTRON +CRYOTRONS +CRYPT +CRYPTAL +CRYPTANALYSES +CRYPTANALYSIS +CRYPTANALYST +CRYPTANALYSTS +CRYPTANALYTIC +CRYPTANALYTICAL +CRYPTARITHM +CRYPTARITHMS +CRYPTIC +CRYPTICAL +CRYPTICALLY +CRYPTO +CRYPTOCOCCAL +CRYPTOCOCCI +CRYPTOCOCCOSES +CRYPTOCOCCOSIS +CRYPTOCOCCUS +CRYPTOGAM +CRYPTOGAMIC +CRYPTOGAMOUS +CRYPTOGAMS +CRYPTOGENIC +CRYPTOGRAM +CRYPTOGRAMS +CRYPTOGRAPH +CRYPTOGRAPHER +CRYPTOGRAPHERS +CRYPTOGRAPHIC +CRYPTOGRAPHIES +CRYPTOGRAPHS +CRYPTOGRAPHY +CRYPTOLOGIC +CRYPTOLOGICAL +CRYPTOLOGIES +CRYPTOLOGIST +CRYPTOLOGISTS +CRYPTOLOGY +CRYPTOMERIA +CRYPTOMERIAS +CRYPTONYM +CRYPTONYMS +CRYPTORCHID +CRYPTORCHIDISM +CRYPTORCHIDISMS +CRYPTORCHIDS +CRYPTORCHISM +CRYPTORCHISMS +CRYPTOS +CRYPTOSPORIDIA +CRYPTOSPORIDIUM +CRYPTOZOOLOGIES +CRYPTOZOOLOGIST +CRYPTOZOOLOGY +CRYPTS +CRYSTAL +CRYSTALIZE +CRYSTALIZED +CRYSTALIZES +CRYSTALIZING +CRYSTALLINE +CRYSTALLINITIES +CRYSTALLINITY +CRYSTALLISE +CRYSTALLISED +CRYSTALLISES +CRYSTALLISING +CRYSTALLITE +CRYSTALLITES +CRYSTALLIZABLE +CRYSTALLIZATION +CRYSTALLIZE +CRYSTALLIZED +CRYSTALLIZER +CRYSTALLIZERS +CRYSTALLIZES +CRYSTALLIZING +CRYSTALLOGRAPHY +CRYSTALLOID +CRYSTALLOIDAL +CRYSTALLOIDS +CRYSTALS +CTENIDIA +CTENIDIUM +CTENOID +CTENOPHORAN +CTENOPHORANS +CTENOPHORE +CTENOPHORES +CUADRILLA +CUADRILLAS +CUATRO +CUATROS +CUB +CUBAGE +CUBAGES +CUBANELLE +CUBANELLES +CUBATURE +CUBATURES +CUBBIES +CUBBISH +CUBBY +CUBBYHOLE +CUBBYHOLES +CUBE +CUBEB +CUBEBS +CUBED +CUBER +CUBERS +CUBES +CUBIC +CUBICAL +CUBICALLY +CUBICITIES +CUBICITY +CUBICLE +CUBICLES +CUBICLY +CUBICS +CUBICULA +CUBICULUM +CUBIFORM +CUBING +CUBISM +CUBISMS +CUBIST +CUBISTIC +CUBISTS +CUBIT +CUBITAL +CUBITI +CUBITS +CUBITUS +CUBOID +CUBOIDAL +CUBOIDS +CUBS +CUCKOLD +CUCKOLDED +CUCKOLDING +CUCKOLDRIES +CUCKOLDRY +CUCKOLDS +CUCKOO +CUCKOOED +CUCKOOFLOWER +CUCKOOFLOWERS +CUCKOOING +CUCKOOPINT +CUCKOOPINTS +CUCKOOS +CUCULLATE +CUCUMBER +CUCUMBERS +CUCURBIT +CUCURBITS +CUD +CUDBEAR +CUDBEARS +CUDDIE +CUDDIES +CUDDLE +CUDDLED +CUDDLER +CUDDLERS +CUDDLES +CUDDLESOME +CUDDLIER +CUDDLIEST +CUDDLING +CUDDLY +CUDDY +CUDGEL +CUDGELED +CUDGELER +CUDGELERS +CUDGELING +CUDGELLED +CUDGELLING +CUDGELS +CUDS +CUDWEED +CUDWEEDS +CUE +CUED +CUEING +CUES +CUESTA +CUESTAS +CUFF +CUFFED +CUFFING +CUFFLESS +CUFFLINK +CUFFLINKS +CUFFS +CUIF +CUIFS +CUING +CUIRASS +CUIRASSED +CUIRASSES +CUIRASSIER +CUIRASSIERS +CUIRASSING +CUISH +CUISHES +CUISINART +CUISINARTS +CUISINE +CUISINES +CUISSE +CUISSES +CUITTLE +CUITTLED +CUITTLES +CUITTLING +CUKE +CUKES +CULCH +CULCHES +CULET +CULETS +CULEX +CULEXES +CULICES +CULICID +CULICIDS +CULICINE +CULICINES +CULINARIAN +CULINARIANS +CULINARILY +CULINARY +CULL +CULLAY +CULLAYS +CULLED +CULLENDER +CULLENDERS +CULLER +CULLERS +CULLET +CULLETS +CULLIED +CULLIES +CULLING +CULLION +CULLIONS +CULLIS +CULLISES +CULLS +CULLY +CULLYING +CULM +CULMED +CULMINANT +CULMINATE +CULMINATED +CULMINATES +CULMINATING +CULMINATION +CULMINATIONS +CULMING +CULMS +CULOTTE +CULOTTES +CULPA +CULPABILITIES +CULPABILITY +CULPABLE +CULPABLENESS +CULPABLENESSES +CULPABLY +CULPAE +CULPRIT +CULPRITS +CULT +CULTCH +CULTCHES +CULTI +CULTIC +CULTIGEN +CULTIGENS +CULTISH +CULTISHLY +CULTISHNESS +CULTISHNESSES +CULTISM +CULTISMS +CULTIST +CULTISTS +CULTIVABILITIES +CULTIVABILITY +CULTIVABLE +CULTIVAR +CULTIVARS +CULTIVATABLE +CULTIVATE +CULTIVATED +CULTIVATES +CULTIVATING +CULTIVATION +CULTIVATIONS +CULTIVATOR +CULTIVATORS +CULTLIKE +CULTRATE +CULTRATED +CULTS +CULTURAL +CULTURALLY +CULTURATI +CULTURE +CULTURED +CULTURES +CULTURING +CULTURIST +CULTURISTS +CULTUS +CULTUSES +CULVER +CULVERIN +CULVERINS +CULVERS +CULVERT +CULVERTS +CUM +CUMARIN +CUMARINS +CUMBER +CUMBERBUND +CUMBERBUNDS +CUMBERED +CUMBERER +CUMBERERS +CUMBERING +CUMBERS +CUMBERSOME +CUMBERSOMELY +CUMBERSOMENESS +CUMBIA +CUMBIAS +CUMBRANCE +CUMBRANCES +CUMBROUS +CUMBROUSLY +CUMBROUSNESS +CUMBROUSNESSES +CUMIN +CUMINS +CUMMER +CUMMERBUND +CUMMERBUNDS +CUMMERS +CUMMIN +CUMMINS +CUMQUAT +CUMQUATS +CUMSHAW +CUMSHAWS +CUMULATE +CUMULATED +CUMULATES +CUMULATING +CUMULATION +CUMULATIONS +CUMULATIVE +CUMULATIVELY +CUMULATIVENESS +CUMULI +CUMULIFORM +CUMULONIMBI +CUMULONIMBUS +CUMULONIMBUSES +CUMULOUS +CUMULUS +CUNCTATION +CUNCTATIONS +CUNCTATIVE +CUNCTATOR +CUNCTATORS +CUNDUM +CUNDUMS +CUNEAL +CUNEATE +CUNEATED +CUNEATELY +CUNEATIC +CUNEIFORM +CUNEIFORMS +CUNIFORM +CUNIFORMS +CUNNER +CUNNERS +CUNNILINCTUS +CUNNILINCTUSES +CUNNILINGUS +CUNNILINGUSES +CUNNING +CUNNINGER +CUNNINGEST +CUNNINGLY +CUNNINGNESS +CUNNINGNESSES +CUNNINGS +CUNT +CUNTS +CUP +CUPBEARER +CUPBEARERS +CUPBOARD +CUPBOARDS +CUPCAKE +CUPCAKES +CUPEL +CUPELED +CUPELER +CUPELERS +CUPELING +CUPELLATION +CUPELLATIONS +CUPELLED +CUPELLER +CUPELLERS +CUPELLING +CUPELS +CUPFERRON +CUPFERRONS +CUPFUL +CUPFULS +CUPID +CUPIDITIES +CUPIDITY +CUPIDS +CUPLIKE +CUPOLA +CUPOLAED +CUPOLAING +CUPOLAS +CUPPA +CUPPAS +CUPPED +CUPPER +CUPPERS +CUPPIER +CUPPIEST +CUPPING +CUPPINGS +CUPPY +CUPREOUS +CUPRIC +CUPRIFEROUS +CUPRITE +CUPRITES +CUPRONICKEL +CUPRONICKELS +CUPROUS +CUPRUM +CUPRUMS +CUPS +CUPSFUL +CUPULA +CUPULAE +CUPULAR +CUPULATE +CUPULE +CUPULES +CUR +CURABILITIES +CURABILITY +CURABLE +CURABLENESS +CURABLENESSES +CURABLY +CURACAO +CURACAOS +CURACIES +CURACOA +CURACOAS +CURACY +CURAGH +CURAGHS +CURANDERA +CURANDERAS +CURANDERO +CURANDEROS +CURARA +CURARAS +CURARE +CURARES +CURARI +CURARINE +CURARINES +CURARIS +CURARIZATION +CURARIZATIONS +CURARIZE +CURARIZED +CURARIZES +CURARIZING +CURASSOW +CURASSOWS +CURATE +CURATED +CURATES +CURATING +CURATIVE +CURATIVELY +CURATIVES +CURATOR +CURATORIAL +CURATORS +CURATORSHIP +CURATORSHIPS +CURB +CURBABLE +CURBED +CURBER +CURBERS +CURBING +CURBINGS +CURBS +CURBSIDE +CURBSIDES +CURBSTONE +CURBSTONES +CURCH +CURCHES +CURCULIO +CURCULIOS +CURCUMA +CURCUMAS +CURD +CURDED +CURDIER +CURDIEST +CURDING +CURDLE +CURDLED +CURDLER +CURDLERS +CURDLES +CURDLING +CURDS +CURDY +CURE +CURED +CURELESS +CURER +CURERS +CURES +CURET +CURETS +CURETTAGE +CURETTAGES +CURETTE +CURETTED +CURETTEMENT +CURETTEMENTS +CURETTES +CURETTING +CURF +CURFEW +CURFEWS +CURFS +CURIA +CURIAE +CURIAL +CURIE +CURIES +CURING +CURIO +CURIOS +CURIOSA +CURIOSITIES +CURIOSITY +CURIOUS +CURIOUSER +CURIOUSEST +CURIOUSLY +CURIOUSNESS +CURIOUSNESSES +CURITE +CURITES +CURIUM +CURIUMS +CURL +CURLED +CURLER +CURLERS +CURLEW +CURLEWS +CURLICUE +CURLICUED +CURLICUES +CURLICUING +CURLIER +CURLIEST +CURLILY +CURLINESS +CURLINESSES +CURLING +CURLINGS +CURLPAPER +CURLPAPERS +CURLS +CURLY +CURLYCUE +CURLYCUES +CURMUDGEON +CURMUDGEONLY +CURMUDGEONS +CURN +CURNS +CURR +CURRACH +CURRACHS +CURRAGH +CURRAGHS +CURRAJONG +CURRAJONGS +CURRAN +CURRANS +CURRANT +CURRANTS +CURRED +CURREJONG +CURREJONGS +CURRENCIES +CURRENCY +CURRENT +CURRENTLY +CURRENTNESS +CURRENTNESSES +CURRENTS +CURRICLE +CURRICLES +CURRICULA +CURRICULAR +CURRICULUM +CURRICULUMS +CURRIE +CURRIED +CURRIER +CURRIERIES +CURRIERS +CURRIERY +CURRIES +CURRIJONG +CURRIJONGS +CURRING +CURRISH +CURRISHLY +CURRS +CURRY +CURRYCOMB +CURRYCOMBED +CURRYCOMBING +CURRYCOMBS +CURRYING +CURS +CURSE +CURSED +CURSEDER +CURSEDEST +CURSEDLY +CURSEDNESS +CURSEDNESSES +CURSER +CURSERS +CURSES +CURSING +CURSIVE +CURSIVELY +CURSIVENESS +CURSIVENESSES +CURSIVES +CURSOR +CURSORIAL +CURSORILY +CURSORINESS +CURSORINESSES +CURSORS +CURSORY +CURST +CURT +CURTAIL +CURTAILED +CURTAILER +CURTAILERS +CURTAILING +CURTAILMENT +CURTAILMENTS +CURTAILS +CURTAIN +CURTAINED +CURTAINING +CURTAINLESS +CURTAINS +CURTAL +CURTALAX +CURTALAXES +CURTALS +CURTATE +CURTER +CURTESIES +CURTEST +CURTESY +CURTILAGE +CURTILAGES +CURTLY +CURTNESS +CURTNESSES +CURTSEY +CURTSEYED +CURTSEYING +CURTSEYS +CURTSIED +CURTSIES +CURTSY +CURTSYING +CURULE +CURVACEOUS +CURVACIOUS +CURVATURE +CURVATURES +CURVE +CURVEBALL +CURVEBALLED +CURVEBALLING +CURVEBALLS +CURVED +CURVEDLY +CURVES +CURVET +CURVETED +CURVETING +CURVETS +CURVETTED +CURVETTING +CURVEY +CURVIER +CURVIEST +CURVILINEAR +CURVILINEARITY +CURVING +CURVY +CUSCUS +CUSCUSES +CUSEC +CUSECS +CUSHAT +CUSHATS +CUSHAW +CUSHAWS +CUSHIER +CUSHIEST +CUSHILY +CUSHINESS +CUSHINESSES +CUSHION +CUSHIONED +CUSHIONING +CUSHIONLESS +CUSHIONS +CUSHIONY +CUSHY +CUSK +CUSKS +CUSP +CUSPAL +CUSPATE +CUSPATED +CUSPED +CUSPID +CUSPIDAL +CUSPIDATE +CUSPIDATION +CUSPIDATIONS +CUSPIDES +CUSPIDOR +CUSPIDORS +CUSPIDS +CUSPIS +CUSPS +CUSS +CUSSED +CUSSEDLY +CUSSEDNESS +CUSSEDNESSES +CUSSER +CUSSERS +CUSSES +CUSSING +CUSSO +CUSSOS +CUSSWORD +CUSSWORDS +CUSTARD +CUSTARDS +CUSTARDY +CUSTODES +CUSTODIAL +CUSTODIAN +CUSTODIANS +CUSTODIANSHIP +CUSTODIANSHIPS +CUSTODIES +CUSTODY +CUSTOM +CUSTOMARIES +CUSTOMARILY +CUSTOMARINESS +CUSTOMARINESSES +CUSTOMARY +CUSTOMER +CUSTOMERS +CUSTOMHOUSE +CUSTOMHOUSES +CUSTOMISE +CUSTOMISED +CUSTOMISES +CUSTOMISING +CUSTOMIZE +CUSTOMIZED +CUSTOMIZER +CUSTOMIZERS +CUSTOMIZES +CUSTOMIZING +CUSTOMS +CUSTOMSHOUSE +CUSTOMSHOUSES +CUSTOS +CUSTUMAL +CUSTUMALS +CUT +CUTABILITIES +CUTABILITY +CUTANEOUS +CUTANEOUSLY +CUTAWAY +CUTAWAYS +CUTBACK +CUTBACKS +CUTBANK +CUTBANKS +CUTCH +CUTCHERIES +CUTCHERY +CUTCHES +CUTDOWN +CUTDOWNS +CUTE +CUTELY +CUTENESS +CUTENESSES +CUTER +CUTES +CUTESIE +CUTESIER +CUTESIEST +CUTEST +CUTESY +CUTEY +CUTEYS +CUTGRASS +CUTGRASSES +CUTICLE +CUTICLES +CUTICULA +CUTICULAE +CUTICULAR +CUTIE +CUTIES +CUTIN +CUTINISE +CUTINISED +CUTINISES +CUTINISING +CUTINIZE +CUTINIZED +CUTINIZES +CUTINIZING +CUTINS +CUTIS +CUTISES +CUTLAS +CUTLASES +CUTLASS +CUTLASSES +CUTLER +CUTLERIES +CUTLERS +CUTLERY +CUTLET +CUTLETS +CUTLINE +CUTLINES +CUTOFF +CUTOFFS +CUTOUT +CUTOUTS +CUTOVER +CUTOVERS +CUTPURSE +CUTPURSES +CUTS +CUTTABLE +CUTTAGE +CUTTAGES +CUTTER +CUTTERS +CUTTHROAT +CUTTHROATS +CUTTIES +CUTTING +CUTTINGLY +CUTTINGS +CUTTLE +CUTTLEBONE +CUTTLEBONES +CUTTLED +CUTTLEFISH +CUTTLEFISHES +CUTTLES +CUTTLING +CUTTY +CUTUP +CUTUPS +CUTWATER +CUTWATERS +CUTWORK +CUTWORKS +CUTWORM +CUTWORMS +CUVEE +CUVEES +CUVETTE +CUVETTES +CWM +CWMS +CYAN +CYANAMID +CYANAMIDE +CYANAMIDES +CYANAMIDS +CYANATE +CYANATES +CYANIC +CYANID +CYANIDE +CYANIDED +CYANIDES +CYANIDING +CYANIDS +CYANIN +CYANINE +CYANINES +CYANINS +CYANITE +CYANITES +CYANITIC +CYANO +CYANOACRYLATE +CYANOACRYLATES +CYANOBACTERIA +CYANOBACTERIUM +CYANOCOBALAMIN +CYANOCOBALAMINE +CYANOCOBALAMINS +CYANOETHYLATE +CYANOETHYLATED +CYANOETHYLATES +CYANOETHYLATING +CYANOETHYLATION +CYANOGEN +CYANOGENESES +CYANOGENESIS +CYANOGENETIC +CYANOGENIC +CYANOGENS +CYANOHYDRIN +CYANOHYDRINS +CYANOSED +CYANOSES +CYANOSIS +CYANOTIC +CYANOTYPE +CYANOTYPES +CYANS +CYANURATE +CYANURATES +CYBER +CYBERCAFE +CYBERCAFES +CYBERCAST +CYBERCASTS +CYBERNATE +CYBERNATED +CYBERNATES +CYBERNATING +CYBERNATION +CYBERNATIONS +CYBERNAUT +CYBERNAUTS +CYBERNETIC +CYBERNETICAL +CYBERNETICALLY +CYBERNETICIAN +CYBERNETICIANS +CYBERNETICIST +CYBERNETICISTS +CYBERNETICS +CYBERPORN +CYBERPORNS +CYBERPUNK +CYBERPUNKS +CYBERSEX +CYBERSEXES +CYBERSPACE +CYBERSPACES +CYBORG +CYBORGS +CYBRARIAN +CYBRARIANS +CYCAD +CYCADEOID +CYCADEOIDS +CYCADOPHYTE +CYCADOPHYTES +CYCADS +CYCAS +CYCASES +CYCASIN +CYCASINS +CYCLAMATE +CYCLAMATES +CYCLAMEN +CYCLAMENS +CYCLASE +CYCLASES +CYCLAZOCINE +CYCLAZOCINES +CYCLE +CYCLECAR +CYCLECARS +CYCLED +CYCLER +CYCLERIES +CYCLERS +CYCLERY +CYCLES +CYCLEWAY +CYCLEWAYS +CYCLIC +CYCLICAL +CYCLICALITIES +CYCLICALITY +CYCLICALLY +CYCLICALS +CYCLICITIES +CYCLICITY +CYCLICLY +CYCLIN +CYCLING +CYCLINGS +CYCLINS +CYCLIST +CYCLISTS +CYCLITOL +CYCLITOLS +CYCLIZATION +CYCLIZATIONS +CYCLIZE +CYCLIZED +CYCLIZES +CYCLIZINE +CYCLIZINES +CYCLIZING +CYCLO +CYCLOADDITION +CYCLOADDITIONS +CYCLOALIPHATIC +CYCLODEXTRIN +CYCLODEXTRINS +CYCLODIENE +CYCLODIENES +CYCLOGENESES +CYCLOGENESIS +CYCLOHEXANE +CYCLOHEXANES +CYCLOHEXANONE +CYCLOHEXANONES +CYCLOHEXIMIDE +CYCLOHEXIMIDES +CYCLOHEXYLAMINE +CYCLOID +CYCLOIDAL +CYCLOIDS +CYCLOMETER +CYCLOMETERS +CYCLONAL +CYCLONE +CYCLONES +CYCLONIC +CYCLONICALLY +CYCLONITE +CYCLONITES +CYCLOOLEFIN +CYCLOOLEFINIC +CYCLOOLEFINS +CYCLOPAEDIA +CYCLOPAEDIAS +CYCLOPARAFFIN +CYCLOPARAFFINS +CYCLOPEAN +CYCLOPEDIA +CYCLOPEDIAS +CYCLOPEDIC +CYCLOPES +CYCLOPROPANE +CYCLOPROPANES +CYCLOPS +CYCLORAMA +CYCLORAMAS +CYCLORAMIC +CYCLOS +CYCLOSERINE +CYCLOSERINES +CYCLOSES +CYCLOSIS +CYCLOSPORINE +CYCLOSPORINES +CYCLOSTOME +CYCLOSTOMES +CYCLOSTYLE +CYCLOSTYLED +CYCLOSTYLES +CYCLOSTYLING +CYCLOTHYMIA +CYCLOTHYMIAS +CYCLOTHYMIC +CYCLOTOMIC +CYCLOTRON +CYCLOTRONS +CYDER +CYDERS +CYESES +CYESIS +CYGNET +CYGNETS +CYLICES +CYLINDER +CYLINDERED +CYLINDERING +CYLINDERS +CYLINDRIC +CYLINDRICAL +CYLINDRICALLY +CYLIX +CYMA +CYMAE +CYMAR +CYMARS +CYMAS +CYMATIA +CYMATIUM +CYMBAL +CYMBALEER +CYMBALEERS +CYMBALER +CYMBALERS +CYMBALIST +CYMBALISTS +CYMBALOM +CYMBALOMS +CYMBALS +CYMBIDIA +CYMBIDIUM +CYMBIDIUMS +CYMBLING +CYMBLINGS +CYME +CYMENE +CYMENES +CYMES +CYMLIN +CYMLING +CYMLINGS +CYMLINS +CYMOGENE +CYMOGENES +CYMOGRAPH +CYMOGRAPHS +CYMOID +CYMOL +CYMOLS +CYMOPHANE +CYMOPHANES +CYMOSE +CYMOSELY +CYMOUS +CYNIC +CYNICAL +CYNICALLY +CYNICISM +CYNICISMS +CYNICS +CYNOSURAL +CYNOSURE +CYNOSURES +CYPHER +CYPHERED +CYPHERING +CYPHERS +CYPRES +CYPRESES +CYPRESS +CYPRESSES +CYPRIAN +CYPRIANS +CYPRINID +CYPRINIDS +CYPRINOID +CYPRINOIDS +CYPRIPEDIUM +CYPRIPEDIUMS +CYPROHEPTADINE +CYPROHEPTADINES +CYPROTERONE +CYPROTERONES +CYPRUS +CYPRUSES +CYPSELA +CYPSELAE +CYST +CYSTEAMINE +CYSTEAMINES +CYSTEIN +CYSTEINE +CYSTEINES +CYSTEINIC +CYSTEINS +CYSTIC +CYSTICERCI +CYSTICERCOID +CYSTICERCOIDS +CYSTICERCOSES +CYSTICERCOSIS +CYSTICERCUS +CYSTINE +CYSTINES +CYSTINURIA +CYSTINURIAS +CYSTITIDES +CYSTITIS +CYSTOCARP +CYSTOCARPS +CYSTOCELE +CYSTOCELES +CYSTOID +CYSTOIDS +CYSTOLITH +CYSTOLITHS +CYSTOSCOPE +CYSTOSCOPES +CYSTOSCOPIC +CYSTOSCOPIES +CYSTOSCOPY +CYSTOTOMIES +CYSTOTOMY +CYSTS +CYTASTER +CYTASTERS +CYTIDINE +CYTIDINES +CYTOCHALASIN +CYTOCHALASINS +CYTOCHEMICAL +CYTOCHEMISTRIES +CYTOCHEMISTRY +CYTOCHROME +CYTOCHROMES +CYTOGENETIC +CYTOGENETICAL +CYTOGENETICALLY +CYTOGENETICIST +CYTOGENETICISTS +CYTOGENETICS +CYTOGENIES +CYTOGENY +CYTOKINE +CYTOKINES +CYTOKINESES +CYTOKINESIS +CYTOKINETIC +CYTOKININ +CYTOKININS +CYTOLOGIC +CYTOLOGICAL +CYTOLOGICALLY +CYTOLOGIES +CYTOLOGIST +CYTOLOGISTS +CYTOLOGY +CYTOLYSES +CYTOLYSIN +CYTOLYSINS +CYTOLYSIS +CYTOLYTIC +CYTOMEGALIC +CYTOMEGALOVIRUS +CYTOMEMBRANE +CYTOMEMBRANES +CYTON +CYTONS +CYTOPATHIC +CYTOPATHOGENIC +CYTOPHILIC +CYTOPHOTOMETRIC +CYTOPHOTOMETRY +CYTOPLASM +CYTOPLASMIC +CYTOPLASMICALLY +CYTOPLASMS +CYTOPLAST +CYTOPLASTS +CYTOSINE +CYTOSINES +CYTOSKELETAL +CYTOSKELETON +CYTOSKELETONS +CYTOSOL +CYTOSOLIC +CYTOSOLS +CYTOSTATIC +CYTOSTATICALLY +CYTOSTATICS +CYTOTAXONOMIC +CYTOTAXONOMIES +CYTOTAXONOMY +CYTOTECHNOLOGY +CYTOTOXIC +CYTOTOXICITIES +CYTOTOXICITY +CYTOTOXIN +CYTOTOXINS +CZAR +CZARDAS +CZARDASES +CZARDOM +CZARDOMS +CZAREVITCH +CZAREVITCHES +CZAREVNA +CZAREVNAS +CZARINA +CZARINAS +CZARISM +CZARISMS +CZARIST +CZARISTS +CZARITZA +CZARITZAS +CZARS +DAB +DABBED +DABBER +DABBERS +DABBING +DABBLE +DABBLED +DABBLER +DABBLERS +DABBLES +DABBLING +DABBLINGS +DABCHICK +DABCHICKS +DABS +DABSTER +DABSTERS +DACE +DACES +DACHA +DACHAS +DACHSHUND +DACHSHUNDS +DACITE +DACITES +DACKER +DACKERED +DACKERING +DACKERS +DACOIT +DACOITIES +DACOITS +DACOITY +DACQUOISE +DACQUOISES +DACRON +DACRONS +DACTYL +DACTYLI +DACTYLIC +DACTYLICS +DACTYLOLOGIES +DACTYLOLOGY +DACTYLS +DACTYLUS +DAD +DADA +DADAISM +DADAISMS +DADAIST +DADAISTIC +DADAISTS +DADAS +DADDIES +DADDLE +DADDLED +DADDLES +DADDLING +DADDY +DADGUM +DADO +DADOED +DADOES +DADOING +DADOS +DADS +DAEDAL +DAEDALEAN +DAEDALIAN +DAEMON +DAEMONES +DAEMONIC +DAEMONS +DAFF +DAFFED +DAFFIER +DAFFIEST +DAFFILY +DAFFINESS +DAFFINESSES +DAFFING +DAFFODIL +DAFFODILS +DAFFS +DAFFY +DAFT +DAFTER +DAFTEST +DAFTLY +DAFTNESS +DAFTNESSES +DAG +DAGGA +DAGGAS +DAGGER +DAGGERED +DAGGERING +DAGGERLIKE +DAGGERS +DAGGLE +DAGGLED +DAGGLES +DAGGLING +DAGLOCK +DAGLOCKS +DAGO +DAGOBA +DAGOBAS +DAGOES +DAGOS +DAGS +DAGUERREOTYPE +DAGUERREOTYPED +DAGUERREOTYPES +DAGUERREOTYPIES +DAGUERREOTYPING +DAGUERREOTYPIST +DAGUERREOTYPY +DAGWOOD +DAGWOODS +DAH +DAHABEAH +DAHABEAHS +DAHABIAH +DAHABIAHS +DAHABIEH +DAHABIEHS +DAHABIYA +DAHABIYAS +DAHL +DAHLIA +DAHLIAS +DAHLS +DAHOON +DAHOONS +DAHS +DAIDZEIN +DAIDZEINS +DAIKER +DAIKERED +DAIKERING +DAIKERS +DAIKON +DAIKONS +DAILIES +DAILINESS +DAILINESSES +DAILY +DAILYNESS +DAILYNESSES +DAIMEN +DAIMIO +DAIMIOS +DAIMON +DAIMONES +DAIMONIC +DAIMONS +DAIMYO +DAIMYOS +DAINTIER +DAINTIES +DAINTIEST +DAINTILY +DAINTINESS +DAINTINESSES +DAINTY +DAIQUIRI +DAIQUIRIS +DAIRIES +DAIRY +DAIRYING +DAIRYINGS +DAIRYMAID +DAIRYMAIDS +DAIRYMAN +DAIRYMEN +DAIS +DAISES +DAISHIKI +DAISHIKIS +DAISIED +DAISIES +DAISY +DAK +DAKERHEN +DAKERHENS +DAKOIT +DAKOITIES +DAKOITS +DAKOITY +DAKS +DAL +DALAPON +DALAPONS +DALASI +DALASIS +DALE +DALEDH +DALEDHS +DALES +DALESMAN +DALESMEN +DALETH +DALETHS +DALLES +DALLIANCE +DALLIANCES +DALLIED +DALLIER +DALLIERS +DALLIES +DALLY +DALLYING +DALMATIAN +DALMATIANS +DALMATIC +DALMATICS +DALS +DALTON +DALTONIAN +DALTONIC +DALTONISM +DALTONISMS +DALTONS +DAM +DAMAGE +DAMAGEABILITIES +DAMAGEABILITY +DAMAGED +DAMAGER +DAMAGERS +DAMAGES +DAMAGING +DAMAGINGLY +DAMAN +DAMANS +DAMAR +DAMARS +DAMASCENE +DAMASCENED +DAMASCENES +DAMASCENING +DAMASK +DAMASKED +DAMASKEEN +DAMASKEENED +DAMASKEENING +DAMASKEENS +DAMASKING +DAMASKS +DAME +DAMES +DAMEWORT +DAMEWORTS +DAMIANA +DAMIANAS +DAMMAR +DAMMARS +DAMMED +DAMMER +DAMMERS +DAMMING +DAMMIT +DAMN +DAMNABLE +DAMNABLENESS +DAMNABLENESSES +DAMNABLY +DAMNATION +DAMNATIONS +DAMNATORY +DAMNDEST +DAMNDESTS +DAMNED +DAMNEDER +DAMNEDEST +DAMNEDESTS +DAMNER +DAMNERS +DAMNIFIED +DAMNIFIES +DAMNIFY +DAMNIFYING +DAMNING +DAMNINGLY +DAMNS +DAMOSEL +DAMOSELS +DAMOZEL +DAMOZELS +DAMP +DAMPED +DAMPEN +DAMPENED +DAMPENER +DAMPENERS +DAMPENING +DAMPENS +DAMPER +DAMPERS +DAMPEST +DAMPING +DAMPINGS +DAMPISH +DAMPLY +DAMPNESS +DAMPNESSES +DAMPS +DAMS +DAMSEL +DAMSELFISH +DAMSELFISHES +DAMSELFLIES +DAMSELFLY +DAMSELS +DAMSON +DAMSONS +DAN +DANAZOL +DANAZOLS +DANCE +DANCEABLE +DANCED +DANCER +DANCERS +DANCES +DANCING +DANDELION +DANDELIONS +DANDER +DANDERED +DANDERING +DANDERS +DANDIACAL +DANDIER +DANDIES +DANDIEST +DANDIFICATION +DANDIFICATIONS +DANDIFIED +DANDIFIES +DANDIFY +DANDIFYING +DANDILY +DANDLE +DANDLED +DANDLER +DANDLERS +DANDLES +DANDLING +DANDRIFF +DANDRIFFS +DANDRUFF +DANDRUFFS +DANDRUFFY +DANDY +DANDYISH +DANDYISHLY +DANDYISM +DANDYISMS +DANEGELD +DANEGELDS +DANEGELT +DANEGELTS +DANEWEED +DANEWEEDS +DANEWORT +DANEWORTS +DANG +DANGED +DANGER +DANGERED +DANGERING +DANGEROUS +DANGEROUSLY +DANGEROUSNESS +DANGEROUSNESSES +DANGERS +DANGING +DANGLE +DANGLED +DANGLER +DANGLERS +DANGLES +DANGLIER +DANGLIEST +DANGLING +DANGLY +DANGS +DANIO +DANIOS +DANISH +DANISHES +DANK +DANKER +DANKEST +DANKLY +DANKNESS +DANKNESSES +DANS +DANSEUR +DANSEURS +DANSEUSE +DANSEUSES +DAP +DAPHNE +DAPHNES +DAPHNIA +DAPHNIAS +DAPPED +DAPPER +DAPPERER +DAPPEREST +DAPPERLY +DAPPERNESS +DAPPERNESSES +DAPPING +DAPPLE +DAPPLED +DAPPLES +DAPPLING +DAPS +DAPSONE +DAPSONES +DARB +DARBAR +DARBARS +DARBIES +DARBS +DARE +DARED +DAREDEVIL +DAREDEVILRIES +DAREDEVILRY +DAREDEVILS +DAREDEVILTRIES +DAREDEVILTRY +DAREFUL +DARER +DARERS +DARES +DARESAY +DARIC +DARICS +DARING +DARINGLY +DARINGNESS +DARINGNESSES +DARINGS +DARIOLE +DARIOLES +DARK +DARKED +DARKEN +DARKENED +DARKENER +DARKENERS +DARKENING +DARKENS +DARKER +DARKEST +DARKEY +DARKEYS +DARKIE +DARKIES +DARKING +DARKISH +DARKLE +DARKLED +DARKLES +DARKLIER +DARKLIEST +DARKLING +DARKLINGS +DARKLY +DARKNESS +DARKNESSES +DARKROOM +DARKROOMS +DARKS +DARKSOME +DARKY +DARLING +DARLINGLY +DARLINGNESS +DARLINGNESSES +DARLINGS +DARN +DARNATION +DARNATIONS +DARNDEST +DARNDESTS +DARNED +DARNEDER +DARNEDEST +DARNEDESTS +DARNEL +DARNELS +DARNER +DARNERS +DARNING +DARNINGS +DARNS +DARSHAN +DARSHANS +DART +DARTBOARD +DARTBOARDS +DARTED +DARTER +DARTERS +DARTING +DARTINGLY +DARTLE +DARTLED +DARTLES +DARTLING +DARTS +DASH +DASHBOARD +DASHBOARDS +DASHED +DASHEEN +DASHEENS +DASHER +DASHERS +DASHES +DASHI +DASHIER +DASHIEST +DASHIKI +DASHIKIS +DASHING +DASHINGLY +DASHIS +DASHPOT +DASHPOTS +DASHY +DASSIE +DASSIES +DASTARD +DASTARDLINESS +DASTARDLINESSES +DASTARDLY +DASTARDS +DASYMETER +DASYMETERS +DASYURE +DASYURES +DATA +DATABANK +DATABANKS +DATABASE +DATABASED +DATABASES +DATABASING +DATABLE +DATARIES +DATARY +DATCHA +DATCHAS +DATE +DATEABLE +DATEBOOK +DATEBOOKS +DATED +DATEDLY +DATEDNESS +DATEDNESSES +DATELESS +DATELINE +DATELINED +DATELINES +DATELINING +DATER +DATERS +DATES +DATING +DATIVAL +DATIVE +DATIVELY +DATIVES +DATO +DATOS +DATTO +DATTOS +DATUM +DATUMS +DATURA +DATURAS +DATURIC +DAUB +DAUBE +DAUBED +DAUBER +DAUBERIES +DAUBERS +DAUBERY +DAUBES +DAUBIER +DAUBIEST +DAUBING +DAUBINGLY +DAUBRIES +DAUBRY +DAUBS +DAUBY +DAUGHTER +DAUGHTERLESS +DAUGHTERS +DAUNDER +DAUNDERED +DAUNDERING +DAUNDERS +DAUNOMYCIN +DAUNOMYCINS +DAUNORUBICIN +DAUNORUBICINS +DAUNT +DAUNTED +DAUNTER +DAUNTERS +DAUNTING +DAUNTINGLY +DAUNTLESS +DAUNTLESSLY +DAUNTLESSNESS +DAUNTLESSNESSES +DAUNTS +DAUPHIN +DAUPHINE +DAUPHINES +DAUPHINS +DAUT +DAUTED +DAUTIE +DAUTIES +DAUTING +DAUTS +DAVEN +DAVENED +DAVENING +DAVENPORT +DAVENPORTS +DAVENS +DAVIES +DAVIT +DAVITS +DAVY +DAW +DAWDLE +DAWDLED +DAWDLER +DAWDLERS +DAWDLES +DAWDLING +DAWED +DAWEN +DAWING +DAWK +DAWKS +DAWN +DAWNED +DAWNING +DAWNLIKE +DAWNS +DAWS +DAWSONITE +DAWSONITES +DAWT +DAWTED +DAWTIE +DAWTIES +DAWTING +DAWTS +DAY +DAYBED +DAYBEDS +DAYBOOK +DAYBOOKS +DAYBREAK +DAYBREAKS +DAYCARE +DAYCARES +DAYDREAM +DAYDREAMED +DAYDREAMER +DAYDREAMERS +DAYDREAMING +DAYDREAMLIKE +DAYDREAMS +DAYDREAMT +DAYDREAMY +DAYFLIES +DAYFLOWER +DAYFLOWERS +DAYFLY +DAYGLOW +DAYGLOWS +DAYLIGHT +DAYLIGHTED +DAYLIGHTING +DAYLIGHTINGS +DAYLIGHTS +DAYLILIES +DAYLILY +DAYLIT +DAYLONG +DAYMARE +DAYMARES +DAYROOM +DAYROOMS +DAYS +DAYSIDE +DAYSIDES +DAYSMAN +DAYSMEN +DAYSPRING +DAYSPRINGS +DAYSTAR +DAYSTARS +DAYTIME +DAYTIMES +DAYWORK +DAYWORKER +DAYWORKERS +DAYWORKS +DAZE +DAZED +DAZEDLY +DAZEDNESS +DAZEDNESSES +DAZES +DAZING +DAZZLE +DAZZLED +DAZZLER +DAZZLERS +DAZZLES +DAZZLING +DAZZLINGLY +DE +DEACIDIFICATION +DEACIDIFIED +DEACIDIFIES +DEACIDIFY +DEACIDIFYING +DEACON +DEACONED +DEACONESS +DEACONESSES +DEACONING +DEACONRIES +DEACONRY +DEACONS +DEACTIVATE +DEACTIVATED +DEACTIVATES +DEACTIVATING +DEACTIVATION +DEACTIVATIONS +DEACTIVATOR +DEACTIVATORS +DEAD +DEADBEAT +DEADBEATS +DEADBOLT +DEADBOLTS +DEADEN +DEADENED +DEADENER +DEADENERS +DEADENING +DEADENINGLY +DEADENINGS +DEADENS +DEADER +DEADEST +DEADEYE +DEADEYES +DEADFALL +DEADFALLS +DEADHEAD +DEADHEADED +DEADHEADING +DEADHEADS +DEADLIER +DEADLIEST +DEADLIFT +DEADLIFTED +DEADLIFTING +DEADLIFTS +DEADLIGHT +DEADLIGHTS +DEADLINE +DEADLINED +DEADLINES +DEADLINESS +DEADLINESSES +DEADLINING +DEADLOCK +DEADLOCKED +DEADLOCKING +DEADLOCKS +DEADLY +DEADMAN +DEADMEN +DEADNESS +DEADNESSES +DEADPAN +DEADPANNED +DEADPANNER +DEADPANNERS +DEADPANNING +DEADPANS +DEADS +DEADWEIGHT +DEADWEIGHTS +DEADWOOD +DEADWOODS +DEAERATE +DEAERATED +DEAERATES +DEAERATING +DEAERATION +DEAERATIONS +DEAERATOR +DEAERATORS +DEAF +DEAFEN +DEAFENED +DEAFENING +DEAFENINGLY +DEAFENINGS +DEAFENS +DEAFER +DEAFEST +DEAFISH +DEAFLY +DEAFNESS +DEAFNESSES +DEAIR +DEAIRED +DEAIRING +DEAIRS +DEAL +DEALATE +DEALATED +DEALATES +DEALATION +DEALATIONS +DEALER +DEALERS +DEALERSHIP +DEALERSHIPS +DEALFISH +DEALFISHES +DEALING +DEALINGS +DEALS +DEALT +DEAMINASE +DEAMINASES +DEAMINATE +DEAMINATED +DEAMINATES +DEAMINATING +DEAMINATION +DEAMINATIONS +DEAMINIZE +DEAMINIZED +DEAMINIZES +DEAMINIZING +DEAN +DEANED +DEANERIES +DEANERY +DEANING +DEANS +DEANSHIP +DEANSHIPS +DEAR +DEARER +DEAREST +DEARIE +DEARIES +DEARLY +DEARNESS +DEARNESSES +DEARS +DEARTH +DEARTHS +DEARY +DEASH +DEASHED +DEASHES +DEASHING +DEASIL +DEATH +DEATHBED +DEATHBEDS +DEATHBLOW +DEATHBLOWS +DEATHCUP +DEATHCUPS +DEATHFUL +DEATHLESS +DEATHLESSLY +DEATHLESSNESS +DEATHLESSNESSES +DEATHLIKE +DEATHLY +DEATHS +DEATHSMAN +DEATHSMEN +DEATHTRAP +DEATHTRAPS +DEATHWATCH +DEATHWATCHES +DEATHY +DEAVE +DEAVED +DEAVES +DEAVING +DEB +DEBACLE +DEBACLES +DEBAG +DEBAGGED +DEBAGGING +DEBAGS +DEBAR +DEBARK +DEBARKATION +DEBARKATIONS +DEBARKED +DEBARKER +DEBARKERS +DEBARKING +DEBARKS +DEBARMENT +DEBARMENTS +DEBARRED +DEBARRING +DEBARS +DEBASE +DEBASED +DEBASEMENT +DEBASEMENTS +DEBASER +DEBASERS +DEBASES +DEBASING +DEBATABLE +DEBATABLY +DEBATE +DEBATED +DEBATEMENT +DEBATEMENTS +DEBATER +DEBATERS +DEBATES +DEBATING +DEBAUCH +DEBAUCHED +DEBAUCHEE +DEBAUCHEES +DEBAUCHER +DEBAUCHERIES +DEBAUCHERS +DEBAUCHERY +DEBAUCHES +DEBAUCHING +DEBEAK +DEBEAKED +DEBEAKING +DEBEAKS +DEBEARD +DEBEARDED +DEBEARDING +DEBEARDS +DEBENTURE +DEBENTURES +DEBILITATE +DEBILITATED +DEBILITATES +DEBILITATING +DEBILITATION +DEBILITATIONS +DEBILITIES +DEBILITY +DEBIT +DEBITED +DEBITING +DEBITS +DEBONAIR +DEBONAIRE +DEBONAIRLY +DEBONAIRNESS +DEBONAIRNESSES +DEBONE +DEBONED +DEBONER +DEBONERS +DEBONES +DEBONING +DEBOUCH +DEBOUCHE +DEBOUCHED +DEBOUCHES +DEBOUCHING +DEBOUCHMENT +DEBOUCHMENTS +DEBRIDE +DEBRIDED +DEBRIDEMENT +DEBRIDEMENTS +DEBRIDES +DEBRIDING +DEBRIEF +DEBRIEFED +DEBRIEFER +DEBRIEFERS +DEBRIEFING +DEBRIEFS +DEBRIS +DEBRUISE +DEBRUISED +DEBRUISES +DEBRUISING +DEBS +DEBT +DEBTLESS +DEBTOR +DEBTORS +DEBTS +DEBUG +DEBUGGED +DEBUGGER +DEBUGGERS +DEBUGGING +DEBUGS +DEBUNK +DEBUNKED +DEBUNKER +DEBUNKERS +DEBUNKING +DEBUNKS +DEBUT +DEBUTANT +DEBUTANTE +DEBUTANTES +DEBUTANTS +DEBUTED +DEBUTING +DEBUTS +DEBYE +DEBYES +DECADAL +DECADE +DECADENCE +DECADENCES +DECADENCIES +DECADENCY +DECADENT +DECADENTLY +DECADENTS +DECADES +DECAF +DECAFFEINATED +DECAFS +DECAGON +DECAGONAL +DECAGONS +DECAGRAM +DECAGRAMS +DECAHEDRA +DECAHEDRON +DECAHEDRONS +DECAL +DECALCIFICATION +DECALCIFIED +DECALCIFIES +DECALCIFY +DECALCIFYING +DECALCOMANIA +DECALCOMANIAS +DECALITER +DECALITERS +DECALOG +DECALOGS +DECALOGUE +DECALOGUES +DECALS +DECAMETER +DECAMETERS +DECAMETHONIUM +DECAMETHONIUMS +DECAMETRIC +DECAMP +DECAMPED +DECAMPING +DECAMPMENT +DECAMPMENTS +DECAMPS +DECANAL +DECANE +DECANES +DECANT +DECANTATION +DECANTATIONS +DECANTED +DECANTER +DECANTERS +DECANTING +DECANTS +DECAPITATE +DECAPITATED +DECAPITATES +DECAPITATING +DECAPITATION +DECAPITATIONS +DECAPITATOR +DECAPITATORS +DECAPOD +DECAPODAL +DECAPODAN +DECAPODANS +DECAPODOUS +DECAPODS +DECARBONATE +DECARBONATED +DECARBONATES +DECARBONATING +DECARBONATION +DECARBONATIONS +DECARBONIZE +DECARBONIZED +DECARBONIZER +DECARBONIZERS +DECARBONIZES +DECARBONIZING +DECARBOXYLASE +DECARBOXYLASES +DECARBOXYLATE +DECARBOXYLATED +DECARBOXYLATES +DECARBOXYLATING +DECARBOXYLATION +DECARBURIZATION +DECARBURIZE +DECARBURIZED +DECARBURIZES +DECARBURIZING +DECARE +DECARES +DECASUALIZATION +DECASYLLABIC +DECASYLLABICS +DECASYLLABLE +DECASYLLABLES +DECATHLETE +DECATHLETES +DECATHLON +DECATHLONS +DECAY +DECAYABLE +DECAYED +DECAYER +DECAYERS +DECAYING +DECAYLESS +DECAYS +DECEASE +DECEASED +DECEASES +DECEASING +DECEDENT +DECEDENTS +DECEIT +DECEITFUL +DECEITFULLY +DECEITFULNESS +DECEITFULNESSES +DECEITS +DECEIVABLE +DECEIVE +DECEIVED +DECEIVER +DECEIVERS +DECEIVES +DECEIVING +DECEIVINGLY +DECELERATE +DECELERATED +DECELERATES +DECELERATING +DECELERATION +DECELERATIONS +DECELERATOR +DECELERATORS +DECELERON +DECELERONS +DECEMVIR +DECEMVIRAL +DECEMVIRATE +DECEMVIRATES +DECEMVIRI +DECEMVIRS +DECENARIES +DECENARY +DECENCIES +DECENCY +DECENNARIES +DECENNARY +DECENNIA +DECENNIAL +DECENNIALLY +DECENNIALS +DECENNIUM +DECENNIUMS +DECENT +DECENTER +DECENTERED +DECENTERING +DECENTERS +DECENTEST +DECENTLY +DECENTRALIZE +DECENTRALIZED +DECENTRALIZES +DECENTRALIZING +DECENTRE +DECENTRED +DECENTRES +DECENTRING +DECEPTION +DECEPTIONAL +DECEPTIONS +DECEPTIVE +DECEPTIVELY +DECEPTIVENESS +DECEPTIVENESSES +DECEREBRATE +DECEREBRATED +DECEREBRATES +DECEREBRATING +DECEREBRATION +DECEREBRATIONS +DECERN +DECERNED +DECERNING +DECERNS +DECERTIFICATION +DECERTIFIED +DECERTIFIES +DECERTIFY +DECERTIFYING +DECHLORINATE +DECHLORINATED +DECHLORINATES +DECHLORINATING +DECHLORINATION +DECHLORINATIONS +DECIARE +DECIARES +DECIBEL +DECIBELS +DECIDABILITIES +DECIDABILITY +DECIDABLE +DECIDE +DECIDED +DECIDEDLY +DECIDEDNESS +DECIDEDNESSES +DECIDER +DECIDERS +DECIDES +DECIDING +DECIDUA +DECIDUAE +DECIDUAL +DECIDUAS +DECIDUATE +DECIDUOUS +DECIDUOUSNESS +DECIDUOUSNESSES +DECIGRAM +DECIGRAMS +DECILE +DECILES +DECILITER +DECILITERS +DECILITRE +DECILITRES +DECILLION +DECILLIONS +DECIMAL +DECIMALIZATION +DECIMALIZATIONS +DECIMALIZE +DECIMALIZED +DECIMALIZES +DECIMALIZING +DECIMALLY +DECIMALS +DECIMATE +DECIMATED +DECIMATES +DECIMATING +DECIMATION +DECIMATIONS +DECIMATOR +DECIMATORS +DECIMETER +DECIMETERS +DECIMETRE +DECIMETRES +DECIPHER +DECIPHERABLE +DECIPHERED +DECIPHERER +DECIPHERERS +DECIPHERING +DECIPHERMENT +DECIPHERMENTS +DECIPHERS +DECISION +DECISIONAL +DECISIONED +DECISIONING +DECISIONS +DECISIVE +DECISIVELY +DECISIVENESS +DECISIVENESSES +DECK +DECKED +DECKEL +DECKELS +DECKER +DECKERS +DECKHAND +DECKHANDS +DECKHOUSE +DECKHOUSES +DECKING +DECKINGS +DECKLE +DECKLES +DECKS +DECLAIM +DECLAIMED +DECLAIMER +DECLAIMERS +DECLAIMING +DECLAIMS +DECLAMATION +DECLAMATIONS +DECLAMATORY +DECLARABLE +DECLARANT +DECLARANTS +DECLARATION +DECLARATIONS +DECLARATIVE +DECLARATIVELY +DECLARATORY +DECLARE +DECLARED +DECLARER +DECLARERS +DECLARES +DECLARING +DECLASS +DECLASSE +DECLASSED +DECLASSES +DECLASSIFIED +DECLASSIFIES +DECLASSIFY +DECLASSIFYING +DECLASSING +DECLAW +DECLAWED +DECLAWING +DECLAWS +DECLENSION +DECLENSIONAL +DECLENSIONS +DECLINABLE +DECLINATION +DECLINATIONAL +DECLINATIONS +DECLINE +DECLINED +DECLINER +DECLINERS +DECLINES +DECLINING +DECLINIST +DECLINISTS +DECLIVITIES +DECLIVITOUS +DECLIVITY +DECO +DECOCT +DECOCTED +DECOCTING +DECOCTION +DECOCTIONS +DECOCTIVE +DECOCTS +DECODE +DECODED +DECODER +DECODERS +DECODES +DECODING +DECOLLATE +DECOLLATED +DECOLLATES +DECOLLATING +DECOLLATION +DECOLLATIONS +DECOLLETAGE +DECOLLETAGES +DECOLLETE +DECOLLETES +DECOLONIZATION +DECOLONIZATIONS +DECOLONIZE +DECOLONIZED +DECOLONIZES +DECOLONIZING +DECOLOR +DECOLORED +DECOLORING +DECOLORIZATION +DECOLORIZATIONS +DECOLORIZE +DECOLORIZED +DECOLORIZER +DECOLORIZERS +DECOLORIZES +DECOLORIZING +DECOLORS +DECOLOUR +DECOLOURED +DECOLOURING +DECOLOURS +DECOMMISSION +DECOMMISSIONED +DECOMMISSIONING +DECOMMISSIONS +DECOMPENSATE +DECOMPENSATED +DECOMPENSATES +DECOMPENSATING +DECOMPENSATION +DECOMPENSATIONS +DECOMPOSABILITY +DECOMPOSABLE +DECOMPOSE +DECOMPOSED +DECOMPOSER +DECOMPOSERS +DECOMPOSES +DECOMPOSING +DECOMPOSITION +DECOMPOSITIONS +DECOMPOUND +DECOMPRESS +DECOMPRESSED +DECOMPRESSES +DECOMPRESSING +DECOMPRESSION +DECOMPRESSIONS +DECONCENTRATE +DECONCENTRATED +DECONCENTRATES +DECONCENTRATING +DECONCENTRATION +DECONDITION +DECONDITIONED +DECONDITIONING +DECONDITIONS +DECONGEST +DECONGESTANT +DECONGESTANTS +DECONGESTED +DECONGESTING +DECONGESTION +DECONGESTIONS +DECONGESTIVE +DECONGESTS +DECONSECRATE +DECONSECRATED +DECONSECRATES +DECONSECRATING +DECONSECRATION +DECONSECRATIONS +DECONSTRUCT +DECONSTRUCTED +DECONSTRUCTING +DECONSTRUCTION +DECONSTRUCTIONS +DECONSTRUCTIVE +DECONSTRUCTOR +DECONSTRUCTORS +DECONSTRUCTS +DECONTAMINATE +DECONTAMINATED +DECONTAMINATES +DECONTAMINATING +DECONTAMINATION +DECONTAMINATOR +DECONTAMINATORS +DECONTROL +DECONTROLLED +DECONTROLLING +DECONTROLS +DECOR +DECORATE +DECORATED +DECORATES +DECORATING +DECORATION +DECORATIONS +DECORATIVE +DECORATIVELY +DECORATIVENESS +DECORATOR +DECORATORS +DECOROUS +DECOROUSLY +DECOROUSNESS +DECOROUSNESSES +DECORS +DECORTICATE +DECORTICATED +DECORTICATES +DECORTICATING +DECORTICATION +DECORTICATIONS +DECORTICATOR +DECORTICATORS +DECORUM +DECORUMS +DECOS +DECOUPAGE +DECOUPAGED +DECOUPAGES +DECOUPAGING +DECOUPLE +DECOUPLED +DECOUPLER +DECOUPLERS +DECOUPLES +DECOUPLING +DECOY +DECOYED +DECOYER +DECOYERS +DECOYING +DECOYS +DECREASE +DECREASED +DECREASES +DECREASING +DECREASINGLY +DECREE +DECREED +DECREEING +DECREER +DECREERS +DECREES +DECREMENT +DECREMENTAL +DECREMENTS +DECREPIT +DECREPITATE +DECREPITATED +DECREPITATES +DECREPITATING +DECREPITATION +DECREPITATIONS +DECREPITLY +DECREPITUDE +DECREPITUDES +DECRESCENDO +DECRESCENDOS +DECRESCENT +DECRETAL +DECRETALS +DECRETIVE +DECRETORY +DECRIAL +DECRIALS +DECRIED +DECRIER +DECRIERS +DECRIES +DECRIMINALIZE +DECRIMINALIZED +DECRIMINALIZES +DECRIMINALIZING +DECROWN +DECROWNED +DECROWNING +DECROWNS +DECRY +DECRYING +DECRYPT +DECRYPTED +DECRYPTING +DECRYPTION +DECRYPTIONS +DECRYPTS +DECUMAN +DECUMBENT +DECUPLE +DECUPLED +DECUPLES +DECUPLING +DECURIES +DECURION +DECURIONS +DECURRENT +DECURVE +DECURVED +DECURVES +DECURVING +DECURY +DECUSSATE +DECUSSATED +DECUSSATES +DECUSSATING +DECUSSATION +DECUSSATIONS +DEDAL +DEDANS +DEDICATE +DEDICATED +DEDICATEDLY +DEDICATEE +DEDICATEES +DEDICATES +DEDICATING +DEDICATION +DEDICATIONS +DEDICATOR +DEDICATORS +DEDICATORY +DEDIFFERENTIATE +DEDUCE +DEDUCED +DEDUCES +DEDUCIBLE +DEDUCIBLY +DEDUCING +DEDUCT +DEDUCTED +DEDUCTIBILITIES +DEDUCTIBILITY +DEDUCTIBLE +DEDUCTIBLES +DEDUCTING +DEDUCTION +DEDUCTIONS +DEDUCTIVE +DEDUCTIVELY +DEDUCTS +DEE +DEED +DEEDED +DEEDIER +DEEDIEST +DEEDING +DEEDLESS +DEEDS +DEEDY +DEEJAY +DEEJAYED +DEEJAYING +DEEJAYS +DEEM +DEEMED +DEEMING +DEEMS +DEEMSTER +DEEMSTERS +DEEP +DEEPEN +DEEPENED +DEEPENER +DEEPENERS +DEEPENING +DEEPENS +DEEPER +DEEPEST +DEEPFREEZE +DEEPFREEZES +DEEPFREEZING +DEEPFROZE +DEEPFROZEN +DEEPLY +DEEPNESS +DEEPNESSES +DEEPS +DEEPWATER +DEER +DEERBERRIES +DEERBERRY +DEERFLIES +DEERFLY +DEERHOUND +DEERHOUNDS +DEERLIKE +DEERS +DEERSKIN +DEERSKINS +DEERSTALKER +DEERSTALKERS +DEERWEED +DEERWEEDS +DEERYARD +DEERYARDS +DEES +DEET +DEETS +DEEWAN +DEEWANS +DEF +DEFACE +DEFACED +DEFACEMENT +DEFACEMENTS +DEFACER +DEFACERS +DEFACES +DEFACING +DEFALCATE +DEFALCATED +DEFALCATES +DEFALCATING +DEFALCATION +DEFALCATIONS +DEFALCATOR +DEFALCATORS +DEFAMATION +DEFAMATIONS +DEFAMATORY +DEFAME +DEFAMED +DEFAMER +DEFAMERS +DEFAMES +DEFAMING +DEFANG +DEFANGED +DEFANGING +DEFANGS +DEFAT +DEFATS +DEFATTED +DEFATTING +DEFAULT +DEFAULTED +DEFAULTER +DEFAULTERS +DEFAULTING +DEFAULTS +DEFEASANCE +DEFEASANCES +DEFEASIBILITIES +DEFEASIBILITY +DEFEASIBLE +DEFEAT +DEFEATED +DEFEATER +DEFEATERS +DEFEATING +DEFEATISM +DEFEATISMS +DEFEATIST +DEFEATISTS +DEFEATS +DEFEATURE +DEFEATURES +DEFECATE +DEFECATED +DEFECATES +DEFECATING +DEFECATION +DEFECATIONS +DEFECATOR +DEFECATORS +DEFECT +DEFECTED +DEFECTING +DEFECTION +DEFECTIONS +DEFECTIVE +DEFECTIVELY +DEFECTIVENESS +DEFECTIVENESSES +DEFECTIVES +DEFECTOR +DEFECTORS +DEFECTS +DEFEMINIZATION +DEFEMINIZATIONS +DEFEMINIZE +DEFEMINIZED +DEFEMINIZES +DEFEMINIZING +DEFENCE +DEFENCED +DEFENCEMAN +DEFENCEMEN +DEFENCES +DEFENCING +DEFEND +DEFENDABLE +DEFENDANT +DEFENDANTS +DEFENDED +DEFENDER +DEFENDERS +DEFENDING +DEFENDS +DEFENESTRATE +DEFENESTRATED +DEFENESTRATES +DEFENESTRATING +DEFENESTRATION +DEFENESTRATIONS +DEFENSE +DEFENSED +DEFENSELESS +DEFENSELESSLY +DEFENSELESSNESS +DEFENSEMAN +DEFENSEMEN +DEFENSES +DEFENSIBILITIES +DEFENSIBILITY +DEFENSIBLE +DEFENSIBLY +DEFENSING +DEFENSIVE +DEFENSIVELY +DEFENSIVENESS +DEFENSIVENESSES +DEFENSIVES +DEFER +DEFERENCE +DEFERENCES +DEFERENT +DEFERENTIAL +DEFERENTIALLY +DEFERENTS +DEFERMENT +DEFERMENTS +DEFERRABLE +DEFERRABLES +DEFERRAL +DEFERRALS +DEFERRED +DEFERRER +DEFERRERS +DEFERRING +DEFERS +DEFERVESCENCE +DEFERVESCENCES +DEFFER +DEFFEST +DEFI +DEFIANCE +DEFIANCES +DEFIANT +DEFIANTLY +DEFIBRILLATE +DEFIBRILLATED +DEFIBRILLATES +DEFIBRILLATING +DEFIBRILLATION +DEFIBRILLATIONS +DEFIBRILLATOR +DEFIBRILLATORS +DEFIBRINATE +DEFIBRINATED +DEFIBRINATES +DEFIBRINATING +DEFIBRINATION +DEFIBRINATIONS +DEFICIENCIES +DEFICIENCY +DEFICIENT +DEFICIENTLY +DEFICIENTS +DEFICIT +DEFICITS +DEFIED +DEFIER +DEFIERS +DEFIES +DEFILADE +DEFILADED +DEFILADES +DEFILADING +DEFILE +DEFILED +DEFILEMENT +DEFILEMENTS +DEFILER +DEFILERS +DEFILES +DEFILING +DEFINABLE +DEFINABLY +DEFINE +DEFINED +DEFINEMENT +DEFINEMENTS +DEFINER +DEFINERS +DEFINES +DEFINIENDA +DEFINIENDUM +DEFINIENS +DEFINIENTIA +DEFINING +DEFINITE +DEFINITELY +DEFINITENESS +DEFINITENESSES +DEFINITION +DEFINITIONAL +DEFINITIONS +DEFINITIVE +DEFINITIVELY +DEFINITIVENESS +DEFINITIVES +DEFINITIZE +DEFINITIZED +DEFINITIZES +DEFINITIZING +DEFINITUDE +DEFINITUDES +DEFIS +DEFLAGRATE +DEFLAGRATED +DEFLAGRATES +DEFLAGRATING +DEFLAGRATION +DEFLAGRATIONS +DEFLATE +DEFLATED +DEFLATER +DEFLATERS +DEFLATES +DEFLATING +DEFLATION +DEFLATIONARY +DEFLATIONS +DEFLATOR +DEFLATORS +DEFLEA +DEFLEAED +DEFLEAING +DEFLEAS +DEFLECT +DEFLECTABLE +DEFLECTED +DEFLECTING +DEFLECTION +DEFLECTIONS +DEFLECTIVE +DEFLECTOR +DEFLECTORS +DEFLECTS +DEFLEXED +DEFLEXION +DEFLEXIONS +DEFLORATION +DEFLORATIONS +DEFLOWER +DEFLOWERED +DEFLOWERER +DEFLOWERERS +DEFLOWERING +DEFLOWERS +DEFOAM +DEFOAMED +DEFOAMER +DEFOAMERS +DEFOAMING +DEFOAMS +DEFOCUS +DEFOCUSED +DEFOCUSES +DEFOCUSING +DEFOCUSSED +DEFOCUSSES +DEFOCUSSING +DEFOG +DEFOGGED +DEFOGGER +DEFOGGERS +DEFOGGING +DEFOGS +DEFOLIANT +DEFOLIANTS +DEFOLIATE +DEFOLIATED +DEFOLIATES +DEFOLIATING +DEFOLIATION +DEFOLIATIONS +DEFOLIATOR +DEFOLIATORS +DEFORCE +DEFORCED +DEFORCEMENT +DEFORCEMENTS +DEFORCER +DEFORCERS +DEFORCES +DEFORCING +DEFOREST +DEFORESTATION +DEFORESTATIONS +DEFORESTED +DEFORESTING +DEFORESTS +DEFORM +DEFORMABLE +DEFORMALIZE +DEFORMALIZED +DEFORMALIZES +DEFORMALIZING +DEFORMATION +DEFORMATIONAL +DEFORMATIONS +DEFORMATIVE +DEFORMED +DEFORMER +DEFORMERS +DEFORMING +DEFORMITIES +DEFORMITY +DEFORMS +DEFRAG +DEFRAGGED +DEFRAGGER +DEFRAGGERS +DEFRAGGING +DEFRAGS +DEFRAUD +DEFRAUDED +DEFRAUDER +DEFRAUDERS +DEFRAUDING +DEFRAUDS +DEFRAY +DEFRAYABLE +DEFRAYAL +DEFRAYALS +DEFRAYED +DEFRAYER +DEFRAYERS +DEFRAYING +DEFRAYS +DEFROCK +DEFROCKED +DEFROCKING +DEFROCKS +DEFROST +DEFROSTED +DEFROSTER +DEFROSTERS +DEFROSTING +DEFROSTS +DEFT +DEFTER +DEFTEST +DEFTLY +DEFTNESS +DEFTNESSES +DEFUEL +DEFUELED +DEFUELING +DEFUELLED +DEFUELLING +DEFUELS +DEFUNCT +DEFUND +DEFUNDED +DEFUNDING +DEFUNDS +DEFUSE +DEFUSED +DEFUSER +DEFUSERS +DEFUSES +DEFUSING +DEFUZE +DEFUZED +DEFUZES +DEFUZING +DEFY +DEFYING +DEGAGE +DEGAME +DEGAMES +DEGAMI +DEGAMIS +DEGAS +DEGASES +DEGASSED +DEGASSER +DEGASSERS +DEGASSES +DEGASSING +DEGAUSS +DEGAUSSED +DEGAUSSER +DEGAUSSERS +DEGAUSSES +DEGAUSSING +DEGENDER +DEGENDERED +DEGENDERING +DEGENDERS +DEGENERACIES +DEGENERACY +DEGENERATE +DEGENERATED +DEGENERATELY +DEGENERATENESS +DEGENERATES +DEGENERATING +DEGENERATION +DEGENERATIONS +DEGENERATIVE +DEGERM +DEGERMED +DEGERMING +DEGERMS +DEGLACIATED +DEGLACIATION +DEGLACIATIONS +DEGLAMORIZATION +DEGLAMORIZE +DEGLAMORIZED +DEGLAMORIZES +DEGLAMORIZING +DEGLAZE +DEGLAZED +DEGLAZES +DEGLAZING +DEGLUTITION +DEGLUTITIONS +DEGRADABLE +DEGRADATION +DEGRADATIONS +DEGRADATIVE +DEGRADE +DEGRADED +DEGRADEDLY +DEGRADER +DEGRADERS +DEGRADES +DEGRADING +DEGRADINGLY +DEGRANULATION +DEGRANULATIONS +DEGREASE +DEGREASED +DEGREASER +DEGREASERS +DEGREASES +DEGREASING +DEGREE +DEGREED +DEGREES +DEGRESSIVE +DEGRESSIVELY +DEGRINGOLADE +DEGRINGOLADES +DEGUM +DEGUMMED +DEGUMMING +DEGUMS +DEGUST +DEGUSTATION +DEGUSTATIONS +DEGUSTED +DEGUSTING +DEGUSTS +DEHISCE +DEHISCED +DEHISCENCE +DEHISCENCES +DEHISCENT +DEHISCES +DEHISCING +DEHORN +DEHORNED +DEHORNER +DEHORNERS +DEHORNING +DEHORNS +DEHORT +DEHORTED +DEHORTING +DEHORTS +DEHUMANIZATION +DEHUMANIZATIONS +DEHUMANIZE +DEHUMANIZED +DEHUMANIZES +DEHUMANIZING +DEHUMIDIFIED +DEHUMIDIFIER +DEHUMIDIFIERS +DEHUMIDIFIES +DEHUMIDIFY +DEHUMIDIFYING +DEHYDRATE +DEHYDRATED +DEHYDRATES +DEHYDRATING +DEHYDRATION +DEHYDRATIONS +DEHYDRATOR +DEHYDRATORS +DEHYDROGENASE +DEHYDROGENASES +DEHYDROGENATE +DEHYDROGENATED +DEHYDROGENATES +DEHYDROGENATING +DEHYDROGENATION +DEICE +DEICED +DEICER +DEICERS +DEICES +DEICIDAL +DEICIDE +DEICIDES +DEICING +DEICTIC +DEICTICS +DEIFIC +DEIFICAL +DEIFICATION +DEIFICATIONS +DEIFIED +DEIFIER +DEIFIERS +DEIFIES +DEIFORM +DEIFY +DEIFYING +DEIGN +DEIGNED +DEIGNING +DEIGNS +DEIL +DEILS +DEINDUSTRIALIZE +DEINONYCHUS +DEINONYCHUSES +DEIONIZATION +DEIONIZATIONS +DEIONIZE +DEIONIZED +DEIONIZER +DEIONIZERS +DEIONIZES +DEIONIZING +DEISM +DEISMS +DEIST +DEISTIC +DEISTICAL +DEISTICALLY +DEISTS +DEITIES +DEITY +DEIXIS +DEIXISES +DEJECT +DEJECTA +DEJECTED +DEJECTEDLY +DEJECTEDNESS +DEJECTEDNESSES +DEJECTING +DEJECTION +DEJECTIONS +DEJECTS +DEJEUNER +DEJEUNERS +DEKAGRAM +DEKAGRAMS +DEKALITER +DEKALITERS +DEKALITRE +DEKALITRES +DEKAMETER +DEKAMETERS +DEKAMETRE +DEKAMETRES +DEKAMETRIC +DEKARE +DEKARES +DEKE +DEKED +DEKEING +DEKES +DEKING +DEKKO +DEKKOS +DEL +DELAINE +DELAINES +DELAMINATE +DELAMINATED +DELAMINATES +DELAMINATING +DELAMINATION +DELAMINATIONS +DELATE +DELATED +DELATES +DELATING +DELATION +DELATIONS +DELATOR +DELATORS +DELAY +DELAYABLE +DELAYED +DELAYER +DELAYERS +DELAYING +DELAYS +DELE +DELEAD +DELEADED +DELEADING +DELEADS +DELEAVE +DELEAVED +DELEAVES +DELEAVING +DELECTABILITIES +DELECTABILITY +DELECTABLE +DELECTABLES +DELECTABLY +DELECTATE +DELECTATED +DELECTATES +DELECTATING +DELECTATION +DELECTATIONS +DELED +DELEGABLE +DELEGACIES +DELEGACY +DELEGATE +DELEGATED +DELEGATEE +DELEGATEES +DELEGATES +DELEGATING +DELEGATION +DELEGATIONS +DELEGATOR +DELEGATORS +DELEGITIMATION +DELEGITIMATIONS +DELEING +DELES +DELETABLE +DELETE +DELETED +DELETERIOUS +DELETERIOUSLY +DELETERIOUSNESS +DELETES +DELETING +DELETION +DELETIONS +DELF +DELFS +DELFT +DELFTS +DELFTWARE +DELFTWARES +DELI +DELIBERATE +DELIBERATED +DELIBERATELY +DELIBERATENESS +DELIBERATES +DELIBERATING +DELIBERATION +DELIBERATIONS +DELIBERATIVE +DELIBERATIVELY +DELICACIES +DELICACY +DELICATE +DELICATELY +DELICATES +DELICATESSEN +DELICATESSENS +DELICIOUS +DELICIOUSLY +DELICIOUSNESS +DELICIOUSNESSES +DELICT +DELICTS +DELIGHT +DELIGHTED +DELIGHTEDLY +DELIGHTEDNESS +DELIGHTEDNESSES +DELIGHTER +DELIGHTERS +DELIGHTFUL +DELIGHTFULLY +DELIGHTFULNESS +DELIGHTING +DELIGHTS +DELIGHTSOME +DELIME +DELIMED +DELIMES +DELIMING +DELIMIT +DELIMITATION +DELIMITATIONS +DELIMITED +DELIMITER +DELIMITERS +DELIMITING +DELIMITS +DELINEATE +DELINEATED +DELINEATES +DELINEATING +DELINEATION +DELINEATIONS +DELINEATIVE +DELINEATOR +DELINEATORS +DELINQUENCIES +DELINQUENCY +DELINQUENT +DELINQUENTLY +DELINQUENTS +DELIQUESCE +DELIQUESCED +DELIQUESCENCE +DELIQUESCENCES +DELIQUESCENT +DELIQUESCES +DELIQUESCING +DELIRIA +DELIRIOUS +DELIRIOUSLY +DELIRIOUSNESS +DELIRIOUSNESSES +DELIRIUM +DELIRIUMS +DELIS +DELISH +DELIST +DELISTED +DELISTING +DELISTS +DELIVER +DELIVERABILITY +DELIVERABLE +DELIVERANCE +DELIVERANCES +DELIVERED +DELIVERER +DELIVERERS +DELIVERIES +DELIVERING +DELIVERS +DELIVERY +DELIVERYMAN +DELIVERYMEN +DELL +DELLIES +DELLS +DELLY +DELOCALIZATION +DELOCALIZATIONS +DELOCALIZE +DELOCALIZED +DELOCALIZES +DELOCALIZING +DELOUSE +DELOUSED +DELOUSER +DELOUSERS +DELOUSES +DELOUSING +DELPHIC +DELPHICALLY +DELPHINIA +DELPHINIUM +DELPHINIUMS +DELS +DELT +DELTA +DELTAIC +DELTAS +DELTIC +DELTOID +DELTOIDEI +DELTOIDEUS +DELTOIDS +DELTS +DELUDE +DELUDED +DELUDER +DELUDERS +DELUDES +DELUDING +DELUGE +DELUGED +DELUGES +DELUGING +DELUSION +DELUSIONAL +DELUSIONARY +DELUSIONS +DELUSIVE +DELUSIVELY +DELUSIVENESS +DELUSIVENESSES +DELUSORY +DELUSTER +DELUSTERED +DELUSTERING +DELUSTERS +DELUXE +DELVE +DELVED +DELVER +DELVERS +DELVES +DELVING +DEMAGNETIZATION +DEMAGNETIZE +DEMAGNETIZED +DEMAGNETIZER +DEMAGNETIZERS +DEMAGNETIZES +DEMAGNETIZING +DEMAGOG +DEMAGOGED +DEMAGOGIC +DEMAGOGICALLY +DEMAGOGIES +DEMAGOGING +DEMAGOGS +DEMAGOGUE +DEMAGOGUED +DEMAGOGUERIES +DEMAGOGUERY +DEMAGOGUES +DEMAGOGUING +DEMAGOGY +DEMAND +DEMANDABLE +DEMANDANT +DEMANDANTS +DEMANDED +DEMANDER +DEMANDERS +DEMANDING +DEMANDINGLY +DEMANDINGNESS +DEMANDINGNESSES +DEMANDS +DEMANTOID +DEMANTOIDS +DEMARCATE +DEMARCATED +DEMARCATES +DEMARCATING +DEMARCATION +DEMARCATIONS +DEMARCHE +DEMARCHES +DEMARK +DEMARKED +DEMARKING +DEMARKS +DEMAST +DEMASTED +DEMASTING +DEMASTS +DEMATERIALIZE +DEMATERIALIZED +DEMATERIALIZES +DEMATERIALIZING +DEME +DEMEAN +DEMEANED +DEMEANING +DEMEANOR +DEMEANORS +DEMEANOUR +DEMEANOURS +DEMEANS +DEMENT +DEMENTED +DEMENTEDLY +DEMENTEDNESS +DEMENTEDNESSES +DEMENTIA +DEMENTIAL +DEMENTIAS +DEMENTING +DEMENTS +DEMERARA +DEMERARAN +DEMERARAS +DEMERGE +DEMERGED +DEMERGER +DEMERGERED +DEMERGERING +DEMERGERS +DEMERGES +DEMERGING +DEMERIT +DEMERITED +DEMERITING +DEMERITS +DEMERSAL +DEMES +DEMESNE +DEMESNES +DEMETON +DEMETONS +DEMIC +DEMIES +DEMIGOD +DEMIGODDESS +DEMIGODDESSES +DEMIGODS +DEMIJOHN +DEMIJOHNS +DEMILITARIZE +DEMILITARIZED +DEMILITARIZES +DEMILITARIZING +DEMILUNE +DEMILUNES +DEMIMONDAINE +DEMIMONDAINES +DEMIMONDE +DEMIMONDES +DEMINERALIZE +DEMINERALIZED +DEMINERALIZER +DEMINERALIZERS +DEMINERALIZES +DEMINERALIZING +DEMIREP +DEMIREPS +DEMISABLE +DEMISE +DEMISED +DEMISEMIQUAVER +DEMISEMIQUAVERS +DEMISES +DEMISING +DEMISSION +DEMISSIONS +DEMISTER +DEMISTERS +DEMIT +DEMITASSE +DEMITASSES +DEMITS +DEMITTED +DEMITTING +DEMIURGE +DEMIURGES +DEMIURGIC +DEMIURGICAL +DEMIVOLT +DEMIVOLTE +DEMIVOLTES +DEMIVOLTS +DEMIWORLD +DEMIWORLDS +DEMO +DEMOB +DEMOBBED +DEMOBBING +DEMOBILIZATION +DEMOBILIZATIONS +DEMOBILIZE +DEMOBILIZED +DEMOBILIZES +DEMOBILIZING +DEMOBS +DEMOCRACIES +DEMOCRACY +DEMOCRAT +DEMOCRATIC +DEMOCRATICALLY +DEMOCRATIZATION +DEMOCRATIZE +DEMOCRATIZED +DEMOCRATIZER +DEMOCRATIZERS +DEMOCRATIZES +DEMOCRATIZING +DEMOCRATS +DEMODE +DEMODED +DEMODULATE +DEMODULATED +DEMODULATES +DEMODULATING +DEMODULATION +DEMODULATIONS +DEMODULATOR +DEMODULATORS +DEMOED +DEMOGRAPHER +DEMOGRAPHERS +DEMOGRAPHIC +DEMOGRAPHICAL +DEMOGRAPHICALLY +DEMOGRAPHICS +DEMOGRAPHIES +DEMOGRAPHY +DEMOING +DEMOISELLE +DEMOISELLES +DEMOLISH +DEMOLISHED +DEMOLISHER +DEMOLISHERS +DEMOLISHES +DEMOLISHING +DEMOLISHMENT +DEMOLISHMENTS +DEMOLITION +DEMOLITIONIST +DEMOLITIONISTS +DEMOLITIONS +DEMON +DEMONESS +DEMONESSES +DEMONETIZATION +DEMONETIZATIONS +DEMONETIZE +DEMONETIZED +DEMONETIZES +DEMONETIZING +DEMONIAC +DEMONIACAL +DEMONIACALLY +DEMONIACS +DEMONIAN +DEMONIC +DEMONICAL +DEMONICALLY +DEMONISE +DEMONISED +DEMONISES +DEMONISING +DEMONISM +DEMONISMS +DEMONIST +DEMONISTS +DEMONIZATION +DEMONIZATIONS +DEMONIZE +DEMONIZED +DEMONIZES +DEMONIZING +DEMONOLOGICAL +DEMONOLOGIES +DEMONOLOGIST +DEMONOLOGISTS +DEMONOLOGY +DEMONS +DEMONSTRABILITY +DEMONSTRABLE +DEMONSTRABLY +DEMONSTRATE +DEMONSTRATED +DEMONSTRATES +DEMONSTRATING +DEMONSTRATION +DEMONSTRATIONAL +DEMONSTRATIONS +DEMONSTRATIVE +DEMONSTRATIVELY +DEMONSTRATIVES +DEMONSTRATOR +DEMONSTRATORS +DEMORALIZATION +DEMORALIZATIONS +DEMORALIZE +DEMORALIZED +DEMORALIZER +DEMORALIZERS +DEMORALIZES +DEMORALIZING +DEMORALIZINGLY +DEMOS +DEMOSES +DEMOTE +DEMOTED +DEMOTES +DEMOTIC +DEMOTICS +DEMOTING +DEMOTION +DEMOTIONS +DEMOTIST +DEMOTISTS +DEMOUNT +DEMOUNTABLE +DEMOUNTED +DEMOUNTING +DEMOUNTS +DEMPSTER +DEMPSTERS +DEMULCENT +DEMULCENTS +DEMULSIFIED +DEMULSIFIES +DEMULSIFY +DEMULSIFYING +DEMULTIPLEXER +DEMULTIPLEXERS +DEMUR +DEMURE +DEMURELY +DEMURENESS +DEMURENESSES +DEMURER +DEMUREST +DEMURRAGE +DEMURRAGES +DEMURRAL +DEMURRALS +DEMURRED +DEMURRER +DEMURRERS +DEMURRING +DEMURS +DEMY +DEMYELINATING +DEMYELINATION +DEMYELINATIONS +DEMYSTIFICATION +DEMYSTIFIED +DEMYSTIFIES +DEMYSTIFY +DEMYSTIFYING +DEMYTHOLOGIZE +DEMYTHOLOGIZED +DEMYTHOLOGIZER +DEMYTHOLOGIZERS +DEMYTHOLOGIZES +DEMYTHOLOGIZING +DEN +DENAR +DENARI +DENARII +DENARIUS +DENARS +DENARY +DENATIONALIZE +DENATIONALIZED +DENATIONALIZES +DENATIONALIZING +DENATURALIZE +DENATURALIZED +DENATURALIZES +DENATURALIZING +DENATURANT +DENATURANTS +DENATURATION +DENATURATIONS +DENATURE +DENATURED +DENATURES +DENATURING +DENAZIFICATION +DENAZIFICATIONS +DENAZIFIED +DENAZIFIES +DENAZIFY +DENAZIFYING +DENDRIFORM +DENDRIMER +DENDRIMERS +DENDRITE +DENDRITES +DENDRITIC +DENDROGRAM +DENDROGRAMS +DENDROID +DENDROLOGIC +DENDROLOGICAL +DENDROLOGIES +DENDROLOGIST +DENDROLOGISTS +DENDROLOGY +DENDRON +DENDRONS +DENE +DENEGATION +DENEGATIONS +DENERVATE +DENERVATED +DENERVATES +DENERVATING +DENERVATION +DENERVATIONS +DENES +DENGUE +DENGUES +DENI +DENIABILITIES +DENIABILITY +DENIABLE +DENIABLY +DENIAL +DENIALS +DENIED +DENIER +DENIERS +DENIES +DENIGRATE +DENIGRATED +DENIGRATES +DENIGRATING +DENIGRATION +DENIGRATIONS +DENIGRATIVE +DENIGRATOR +DENIGRATORS +DENIGRATORY +DENIM +DENIMED +DENIMS +DENITRATE +DENITRATED +DENITRATES +DENITRATING +DENITRIFICATION +DENITRIFIED +DENITRIFIER +DENITRIFIERS +DENITRIFIES +DENITRIFY +DENITRIFYING +DENIZEN +DENIZENED +DENIZENING +DENIZENS +DENNED +DENNING +DENOMINAL +DENOMINATE +DENOMINATED +DENOMINATES +DENOMINATING +DENOMINATION +DENOMINATIONAL +DENOMINATIONS +DENOMINATIVE +DENOMINATIVES +DENOMINATOR +DENOMINATORS +DENOTABLE +DENOTATION +DENOTATIONS +DENOTATIVE +DENOTE +DENOTED +DENOTEMENT +DENOTEMENTS +DENOTES +DENOTING +DENOTIVE +DENOUEMENT +DENOUEMENTS +DENOUNCE +DENOUNCED +DENOUNCEMENT +DENOUNCEMENTS +DENOUNCER +DENOUNCERS +DENOUNCES +DENOUNCING +DENS +DENSE +DENSELY +DENSENESS +DENSENESSES +DENSER +DENSEST +DENSIFICATION +DENSIFICATIONS +DENSIFIED +DENSIFIES +DENSIFY +DENSIFYING +DENSITIES +DENSITOMETER +DENSITOMETERS +DENSITOMETRIC +DENSITOMETRIES +DENSITOMETRY +DENSITY +DENT +DENTAL +DENTALIA +DENTALITIES +DENTALITY +DENTALIUM +DENTALIUMS +DENTALLY +DENTALS +DENTATE +DENTATED +DENTATELY +DENTATION +DENTATIONS +DENTED +DENTICLE +DENTICLES +DENTICULATE +DENTICULATED +DENTICULATION +DENTICULATIONS +DENTIFORM +DENTIFRICE +DENTIFRICES +DENTIL +DENTILED +DENTILS +DENTIN +DENTINAL +DENTINE +DENTINES +DENTING +DENTINS +DENTIST +DENTISTRIES +DENTISTRY +DENTISTS +DENTITION +DENTITIONS +DENTOID +DENTS +DENTULOUS +DENTURAL +DENTURE +DENTURES +DENTURIST +DENTURISTS +DENUCLEARIZE +DENUCLEARIZED +DENUCLEARIZES +DENUCLEARIZING +DENUDATE +DENUDATED +DENUDATES +DENUDATING +DENUDATION +DENUDATIONS +DENUDE +DENUDED +DENUDEMENT +DENUDEMENTS +DENUDER +DENUDERS +DENUDES +DENUDING +DENUMERABILITY +DENUMERABLE +DENUMERABLY +DENUNCIATION +DENUNCIATIONS +DENUNCIATIVE +DENUNCIATORY +DENY +DENYING +DENYINGLY +DEODAND +DEODANDS +DEODAR +DEODARA +DEODARAS +DEODARS +DEODORANT +DEODORANTS +DEODORIZATION +DEODORIZATIONS +DEODORIZE +DEODORIZED +DEODORIZER +DEODORIZERS +DEODORIZES +DEODORIZING +DEONTIC +DEONTOLOGICAL +DEONTOLOGIES +DEONTOLOGIST +DEONTOLOGISTS +DEONTOLOGY +DEORBIT +DEORBITED +DEORBITING +DEORBITS +DEOXIDATION +DEOXIDATIONS +DEOXIDIZE +DEOXIDIZED +DEOXIDIZER +DEOXIDIZERS +DEOXIDIZES +DEOXIDIZING +DEOXY +DEOXYGENATE +DEOXYGENATED +DEOXYGENATES +DEOXYGENATING +DEOXYGENATION +DEOXYGENATIONS +DEOXYRIBOSE +DEOXYRIBOSES +DEPAINT +DEPAINTED +DEPAINTING +DEPAINTS +DEPART +DEPARTED +DEPARTEE +DEPARTEES +DEPARTING +DEPARTMENT +DEPARTMENTAL +DEPARTMENTALIZE +DEPARTMENTALLY +DEPARTMENTS +DEPARTS +DEPARTURE +DEPARTURES +DEPAUPERATE +DEPEND +DEPENDABILITIES +DEPENDABILITY +DEPENDABLE +DEPENDABLENESS +DEPENDABLY +DEPENDANCE +DEPENDANCES +DEPENDANT +DEPENDANTS +DEPENDED +DEPENDENCE +DEPENDENCES +DEPENDENCIES +DEPENDENCY +DEPENDENT +DEPENDENTLY +DEPENDENTS +DEPENDING +DEPENDS +DEPEOPLE +DEPEOPLED +DEPEOPLES +DEPEOPLING +DEPERM +DEPERMED +DEPERMING +DEPERMS +DEPERSONALIZE +DEPERSONALIZED +DEPERSONALIZES +DEPERSONALIZING +DEPHOSPHORYLATE +DEPICT +DEPICTED +DEPICTER +DEPICTERS +DEPICTING +DEPICTION +DEPICTIONS +DEPICTOR +DEPICTORS +DEPICTS +DEPIGMENTATION +DEPIGMENTATIONS +DEPILATE +DEPILATED +DEPILATES +DEPILATING +DEPILATION +DEPILATIONS +DEPILATOR +DEPILATORIES +DEPILATORS +DEPILATORY +DEPLANE +DEPLANED +DEPLANES +DEPLANING +DEPLETABLE +DEPLETE +DEPLETED +DEPLETER +DEPLETERS +DEPLETES +DEPLETING +DEPLETION +DEPLETIONS +DEPLETIVE +DEPLORABLE +DEPLORABLENESS +DEPLORABLY +DEPLORE +DEPLORED +DEPLORER +DEPLORERS +DEPLORES +DEPLORING +DEPLORINGLY +DEPLOY +DEPLOYABLE +DEPLOYED +DEPLOYER +DEPLOYERS +DEPLOYING +DEPLOYMENT +DEPLOYMENTS +DEPLOYS +DEPLUME +DEPLUMED +DEPLUMES +DEPLUMING +DEPOLARIZATION +DEPOLARIZATIONS +DEPOLARIZE +DEPOLARIZED +DEPOLARIZER +DEPOLARIZERS +DEPOLARIZES +DEPOLARIZING +DEPOLISH +DEPOLISHED +DEPOLISHES +DEPOLISHING +DEPOLITICIZE +DEPOLITICIZED +DEPOLITICIZES +DEPOLITICIZING +DEPOLYMERIZE +DEPOLYMERIZED +DEPOLYMERIZES +DEPOLYMERIZING +DEPONE +DEPONED +DEPONENT +DEPONENTS +DEPONES +DEPONING +DEPOPULATE +DEPOPULATED +DEPOPULATES +DEPOPULATING +DEPOPULATION +DEPOPULATIONS +DEPORT +DEPORTABLE +DEPORTATION +DEPORTATIONS +DEPORTED +DEPORTEE +DEPORTEES +DEPORTER +DEPORTERS +DEPORTING +DEPORTMENT +DEPORTMENTS +DEPORTS +DEPOSABLE +DEPOSAL +DEPOSALS +DEPOSE +DEPOSED +DEPOSER +DEPOSERS +DEPOSES +DEPOSING +DEPOSIT +DEPOSITARIES +DEPOSITARY +DEPOSITED +DEPOSITING +DEPOSITION +DEPOSITIONAL +DEPOSITIONS +DEPOSITOR +DEPOSITORIES +DEPOSITORS +DEPOSITORY +DEPOSITS +DEPOT +DEPOTS +DEPRAVATION +DEPRAVATIONS +DEPRAVE +DEPRAVED +DEPRAVEDLY +DEPRAVEDNESS +DEPRAVEDNESSES +DEPRAVEMENT +DEPRAVEMENTS +DEPRAVER +DEPRAVERS +DEPRAVES +DEPRAVING +DEPRAVITIES +DEPRAVITY +DEPRECATE +DEPRECATED +DEPRECATES +DEPRECATING +DEPRECATINGLY +DEPRECATION +DEPRECATIONS +DEPRECATORILY +DEPRECATORY +DEPRECIABLE +DEPRECIATE +DEPRECIATED +DEPRECIATES +DEPRECIATING +DEPRECIATINGLY +DEPRECIATION +DEPRECIATIONS +DEPRECIATIVE +DEPRECIATOR +DEPRECIATORS +DEPRECIATORY +DEPREDATE +DEPREDATED +DEPREDATES +DEPREDATING +DEPREDATION +DEPREDATIONS +DEPREDATOR +DEPREDATORS +DEPREDATORY +DEPRENYL +DEPRENYLS +DEPRESS +DEPRESSANT +DEPRESSANTS +DEPRESSED +DEPRESSES +DEPRESSIBLE +DEPRESSING +DEPRESSINGLY +DEPRESSION +DEPRESSIONS +DEPRESSIVE +DEPRESSIVELY +DEPRESSIVES +DEPRESSOR +DEPRESSORS +DEPRESSURIZE +DEPRESSURIZED +DEPRESSURIZES +DEPRESSURIZING +DEPRIVAL +DEPRIVALS +DEPRIVATION +DEPRIVATIONS +DEPRIVE +DEPRIVED +DEPRIVER +DEPRIVERS +DEPRIVES +DEPRIVING +DEPROGRAM +DEPROGRAMED +DEPROGRAMING +DEPROGRAMMED +DEPROGRAMMER +DEPROGRAMMERS +DEPROGRAMMING +DEPROGRAMS +DEPSIDE +DEPSIDES +DEPTH +DEPTHLESS +DEPTHS +DEPURATE +DEPURATED +DEPURATES +DEPURATING +DEPURATOR +DEPURATORS +DEPUTABLE +DEPUTATION +DEPUTATIONS +DEPUTE +DEPUTED +DEPUTES +DEPUTIES +DEPUTING +DEPUTIZATION +DEPUTIZATIONS +DEPUTIZE +DEPUTIZED +DEPUTIZES +DEPUTIZING +DEPUTY +DERACINATE +DERACINATED +DERACINATES +DERACINATING +DERACINATION +DERACINATIONS +DERAIGN +DERAIGNED +DERAIGNING +DERAIGNS +DERAIL +DERAILED +DERAILING +DERAILLEUR +DERAILLEURS +DERAILMENT +DERAILMENTS +DERAILS +DERANGE +DERANGED +DERANGEMENT +DERANGEMENTS +DERANGER +DERANGERS +DERANGES +DERANGING +DERAT +DERATE +DERATED +DERATES +DERATING +DERATS +DERATTED +DERATTING +DERAY +DERAYS +DERBIES +DERBY +DERE +DEREALIZATION +DEREALIZATIONS +DEREGULATE +DEREGULATED +DEREGULATES +DEREGULATING +DEREGULATION +DEREGULATIONS +DERELICT +DERELICTION +DERELICTIONS +DERELICTS +DEREPRESS +DEREPRESSED +DEREPRESSES +DEREPRESSING +DEREPRESSION +DEREPRESSIONS +DERIDE +DERIDED +DERIDER +DERIDERS +DERIDES +DERIDING +DERIDINGLY +DERINGER +DERINGERS +DERISIBLE +DERISION +DERISIONS +DERISIVE +DERISIVELY +DERISIVENESS +DERISIVENESSES +DERISORY +DERIVABLE +DERIVATE +DERIVATES +DERIVATION +DERIVATIONAL +DERIVATIONS +DERIVATIVE +DERIVATIVELY +DERIVATIVENESS +DERIVATIVES +DERIVATIZATION +DERIVATIZATIONS +DERIVATIZE +DERIVATIZED +DERIVATIZES +DERIVATIZING +DERIVE +DERIVED +DERIVER +DERIVERS +DERIVES +DERIVING +DERM +DERMA +DERMABRASION +DERMABRASIONS +DERMAL +DERMAS +DERMATITIS +DERMATITISES +DERMATOGEN +DERMATOGENS +DERMATOGLYPHIC +DERMATOGLYPHICS +DERMATOID +DERMATOLOGIC +DERMATOLOGICAL +DERMATOLOGIES +DERMATOLOGIST +DERMATOLOGISTS +DERMATOLOGY +DERMATOMAL +DERMATOME +DERMATOMES +DERMATOPHYTE +DERMATOPHYTES +DERMATOSES +DERMATOSIS +DERMESTID +DERMESTIDS +DERMIC +DERMIS +DERMISES +DERMOID +DERMOIDS +DERMS +DERNIER +DEROGATE +DEROGATED +DEROGATES +DEROGATING +DEROGATION +DEROGATIONS +DEROGATIVE +DEROGATORILY +DEROGATORY +DERRICK +DERRICKS +DERRIERE +DERRIERES +DERRIES +DERRINGER +DERRINGERS +DERRIS +DERRISES +DERRY +DERVISH +DERVISHES +DESACRALIZATION +DESACRALIZE +DESACRALIZED +DESACRALIZES +DESACRALIZING +DESALINATE +DESALINATED +DESALINATES +DESALINATING +DESALINATION +DESALINATIONS +DESALINATOR +DESALINATORS +DESALINIZATION +DESALINIZATIONS +DESALINIZE +DESALINIZED +DESALINIZES +DESALINIZING +DESALT +DESALTED +DESALTER +DESALTERS +DESALTING +DESALTS +DESAND +DESANDED +DESANDING +DESANDS +DESCANT +DESCANTED +DESCANTER +DESCANTERS +DESCANTING +DESCANTS +DESCEND +DESCENDANT +DESCENDANTS +DESCENDED +DESCENDENT +DESCENDENTS +DESCENDER +DESCENDERS +DESCENDIBLE +DESCENDING +DESCENDS +DESCENSION +DESCENSIONS +DESCENT +DESCENTS +DESCRIBABLE +DESCRIBE +DESCRIBED +DESCRIBER +DESCRIBERS +DESCRIBES +DESCRIBING +DESCRIED +DESCRIER +DESCRIERS +DESCRIES +DESCRIPTION +DESCRIPTIONS +DESCRIPTIVE +DESCRIPTIVELY +DESCRIPTIVENESS +DESCRIPTOR +DESCRIPTORS +DESCRY +DESCRYING +DESECRATE +DESECRATED +DESECRATER +DESECRATERS +DESECRATES +DESECRATING +DESECRATION +DESECRATIONS +DESECRATOR +DESECRATORS +DESEGREGATE +DESEGREGATED +DESEGREGATES +DESEGREGATING +DESEGREGATION +DESEGREGATIONS +DESELECT +DESELECTED +DESELECTING +DESELECTS +DESENSITIZATION +DESENSITIZE +DESENSITIZED +DESENSITIZER +DESENSITIZERS +DESENSITIZES +DESENSITIZING +DESERT +DESERTED +DESERTER +DESERTERS +DESERTIC +DESERTIFICATION +DESERTIFIED +DESERTIFIES +DESERTIFY +DESERTIFYING +DESERTING +DESERTION +DESERTIONS +DESERTS +DESERVE +DESERVED +DESERVEDLY +DESERVEDNESS +DESERVEDNESSES +DESERVER +DESERVERS +DESERVES +DESERVING +DESERVINGS +DESEX +DESEXED +DESEXES +DESEXING +DESEXUALIZATION +DESEXUALIZE +DESEXUALIZED +DESEXUALIZES +DESEXUALIZING +DESHABILLE +DESHABILLES +DESICCANT +DESICCANTS +DESICCATE +DESICCATED +DESICCATES +DESICCATING +DESICCATION +DESICCATIONS +DESICCATIVE +DESICCATOR +DESICCATORS +DESIDERATA +DESIDERATE +DESIDERATED +DESIDERATES +DESIDERATING +DESIDERATION +DESIDERATIONS +DESIDERATIVE +DESIDERATUM +DESIGN +DESIGNATE +DESIGNATED +DESIGNATES +DESIGNATING +DESIGNATION +DESIGNATIONS +DESIGNATIVE +DESIGNATOR +DESIGNATORS +DESIGNATORY +DESIGNED +DESIGNEDLY +DESIGNEE +DESIGNEES +DESIGNER +DESIGNERS +DESIGNING +DESIGNINGS +DESIGNMENT +DESIGNMENTS +DESIGNS +DESILVER +DESILVERED +DESILVERING +DESILVERS +DESINENCE +DESINENCES +DESINENT +DESIPRAMINE +DESIPRAMINES +DESIRABILITIES +DESIRABILITY +DESIRABLE +DESIRABLENESS +DESIRABLENESSES +DESIRABLES +DESIRABLY +DESIRE +DESIRED +DESIRER +DESIRERS +DESIRES +DESIRING +DESIROUS +DESIROUSLY +DESIROUSNESS +DESIROUSNESSES +DESIST +DESISTANCE +DESISTANCES +DESISTED +DESISTING +DESISTS +DESK +DESKBOUND +DESKMAN +DESKMEN +DESKS +DESKTOP +DESKTOPS +DESMAN +DESMANS +DESMID +DESMIDIAN +DESMIDS +DESMOID +DESMOIDS +DESMOSOMAL +DESMOSOME +DESMOSOMES +DESOLATE +DESOLATED +DESOLATELY +DESOLATENESS +DESOLATENESSES +DESOLATER +DESOLATERS +DESOLATES +DESOLATING +DESOLATINGLY +DESOLATION +DESOLATIONS +DESOLATOR +DESOLATORS +DESORB +DESORBED +DESORBING +DESORBS +DESORPTION +DESORPTIONS +DESOXY +DESPAIR +DESPAIRED +DESPAIRER +DESPAIRERS +DESPAIRING +DESPAIRINGLY +DESPAIRS +DESPATCH +DESPATCHED +DESPATCHES +DESPATCHING +DESPERADO +DESPERADOES +DESPERADOS +DESPERATE +DESPERATELY +DESPERATENESS +DESPERATENESSES +DESPERATION +DESPERATIONS +DESPICABLE +DESPICABLENESS +DESPICABLY +DESPIRITUALIZE +DESPIRITUALIZED +DESPIRITUALIZES +DESPISAL +DESPISALS +DESPISE +DESPISED +DESPISEMENT +DESPISEMENTS +DESPISER +DESPISERS +DESPISES +DESPISING +DESPITE +DESPITED +DESPITEFUL +DESPITEFULLY +DESPITEFULNESS +DESPITEOUS +DESPITEOUSLY +DESPITES +DESPITING +DESPOIL +DESPOILED +DESPOILER +DESPOILERS +DESPOILING +DESPOILMENT +DESPOILMENTS +DESPOILS +DESPOLIATION +DESPOLIATIONS +DESPOND +DESPONDED +DESPONDENCE +DESPONDENCES +DESPONDENCIES +DESPONDENCY +DESPONDENT +DESPONDENTLY +DESPONDING +DESPONDS +DESPOT +DESPOTIC +DESPOTICALLY +DESPOTISM +DESPOTISMS +DESPOTS +DESPUMATE +DESPUMATED +DESPUMATES +DESPUMATING +DESQUAMATE +DESQUAMATED +DESQUAMATES +DESQUAMATING +DESQUAMATION +DESQUAMATIONS +DESSERT +DESSERTS +DESSERTSPOON +DESSERTSPOONFUL +DESSERTSPOONS +DESTABILIZATION +DESTABILIZE +DESTABILIZED +DESTABILIZES +DESTABILIZING +DESTAIN +DESTAINED +DESTAINING +DESTAINS +DESTINATION +DESTINATIONS +DESTINE +DESTINED +DESTINES +DESTINIES +DESTINING +DESTINY +DESTITUTE +DESTITUTED +DESTITUTENESS +DESTITUTENESSES +DESTITUTES +DESTITUTING +DESTITUTION +DESTITUTIONS +DESTRIER +DESTRIERS +DESTROY +DESTROYED +DESTROYER +DESTROYERS +DESTROYING +DESTROYS +DESTRUCT +DESTRUCTED +DESTRUCTIBILITY +DESTRUCTIBLE +DESTRUCTING +DESTRUCTION +DESTRUCTIONIST +DESTRUCTIONISTS +DESTRUCTIONS +DESTRUCTIVE +DESTRUCTIVELY +DESTRUCTIVENESS +DESTRUCTIVITIES +DESTRUCTIVITY +DESTRUCTS +DESUETUDE +DESUETUDES +DESUGAR +DESUGARED +DESUGARING +DESUGARS +DESULFUR +DESULFURED +DESULFURING +DESULFURIZATION +DESULFURIZE +DESULFURIZED +DESULFURIZES +DESULFURIZING +DESULFURS +DESULTORILY +DESULTORINESS +DESULTORINESSES +DESULTORY +DETACH +DETACHABILITIES +DETACHABILITY +DETACHABLE +DETACHABLY +DETACHED +DETACHEDLY +DETACHEDNESS +DETACHEDNESSES +DETACHER +DETACHERS +DETACHES +DETACHING +DETACHMENT +DETACHMENTS +DETAIL +DETAILED +DETAILEDLY +DETAILEDNESS +DETAILEDNESSES +DETAILER +DETAILERS +DETAILING +DETAILINGS +DETAILS +DETAIN +DETAINED +DETAINEE +DETAINEES +DETAINER +DETAINERS +DETAINING +DETAINMENT +DETAINMENTS +DETAINS +DETASSEL +DETASSELED +DETASSELING +DETASSELLED +DETASSELLING +DETASSELS +DETECT +DETECTABILITIES +DETECTABILITY +DETECTABLE +DETECTED +DETECTER +DETECTERS +DETECTING +DETECTION +DETECTIONS +DETECTIVE +DETECTIVELIKE +DETECTIVES +DETECTOR +DETECTORS +DETECTS +DETENT +DETENTE +DETENTES +DETENTION +DETENTIONS +DETENTIST +DETENTISTS +DETENTS +DETER +DETERGE +DETERGED +DETERGENCIES +DETERGENCY +DETERGENT +DETERGENTS +DETERGER +DETERGERS +DETERGES +DETERGING +DETERIORATE +DETERIORATED +DETERIORATES +DETERIORATING +DETERIORATION +DETERIORATIONS +DETERIORATIVE +DETERMENT +DETERMENTS +DETERMINABLE +DETERMINABLY +DETERMINACIES +DETERMINACY +DETERMINANT +DETERMINANTAL +DETERMINANTS +DETERMINATE +DETERMINATELY +DETERMINATENESS +DETERMINATION +DETERMINATIONS +DETERMINATIVE +DETERMINATIVES +DETERMINATOR +DETERMINATORS +DETERMINE +DETERMINED +DETERMINEDLY +DETERMINEDNESS +DETERMINER +DETERMINERS +DETERMINES +DETERMINING +DETERMINISM +DETERMINISMS +DETERMINIST +DETERMINISTIC +DETERMINISTS +DETERRABILITIES +DETERRABILITY +DETERRABLE +DETERRED +DETERRENCE +DETERRENCES +DETERRENT +DETERRENTLY +DETERRENTS +DETERRER +DETERRERS +DETERRING +DETERS +DETERSIVE +DETERSIVES +DETEST +DETESTABLE +DETESTABLENESS +DETESTABLY +DETESTATION +DETESTATIONS +DETESTED +DETESTER +DETESTERS +DETESTING +DETESTS +DETHATCH +DETHATCHED +DETHATCHES +DETHATCHING +DETHRONE +DETHRONED +DETHRONEMENT +DETHRONEMENTS +DETHRONER +DETHRONERS +DETHRONES +DETHRONING +DETICK +DETICKED +DETICKER +DETICKERS +DETICKING +DETICKS +DETINUE +DETINUES +DETONABILITIES +DETONABILITY +DETONABLE +DETONATABLE +DETONATE +DETONATED +DETONATES +DETONATING +DETONATION +DETONATIONS +DETONATIVE +DETONATOR +DETONATORS +DETOUR +DETOURED +DETOURING +DETOURS +DETOX +DETOXED +DETOXES +DETOXICANT +DETOXICANTS +DETOXICATE +DETOXICATED +DETOXICATES +DETOXICATING +DETOXICATION +DETOXICATIONS +DETOXIFICATION +DETOXIFICATIONS +DETOXIFIED +DETOXIFIES +DETOXIFY +DETOXIFYING +DETOXING +DETRACT +DETRACTED +DETRACTING +DETRACTION +DETRACTIONS +DETRACTIVE +DETRACTIVELY +DETRACTOR +DETRACTORS +DETRACTS +DETRAIN +DETRAINED +DETRAINING +DETRAINMENT +DETRAINMENTS +DETRAINS +DETRIBALIZATION +DETRIBALIZE +DETRIBALIZED +DETRIBALIZES +DETRIBALIZING +DETRIMENT +DETRIMENTAL +DETRIMENTALLY +DETRIMENTALS +DETRIMENTS +DETRITAL +DETRITION +DETRITIONS +DETRITUS +DETRUDE +DETRUDED +DETRUDES +DETRUDING +DETRUSION +DETRUSIONS +DETUMESCENCE +DETUMESCENCES +DETUMESCENT +DEUCE +DEUCED +DEUCEDLY +DEUCES +DEUCING +DEUTERAGONIST +DEUTERAGONISTS +DEUTERANOMALIES +DEUTERANOMALOUS +DEUTERANOMALY +DEUTERANOPE +DEUTERANOPES +DEUTERANOPIA +DEUTERANOPIAS +DEUTERANOPIC +DEUTERATE +DEUTERATED +DEUTERATES +DEUTERATING +DEUTERATION +DEUTERATIONS +DEUTERIC +DEUTERIDE +DEUTERIDES +DEUTERIUM +DEUTERIUMS +DEUTERON +DEUTERONS +DEUTEROSTOME +DEUTEROSTOMES +DEUTOPLASM +DEUTOPLASMS +DEUTZIA +DEUTZIAS +DEV +DEVA +DEVALUATE +DEVALUATED +DEVALUATES +DEVALUATING +DEVALUATION +DEVALUATIONS +DEVALUE +DEVALUED +DEVALUES +DEVALUING +DEVAS +DEVASTATE +DEVASTATED +DEVASTATES +DEVASTATING +DEVASTATINGLY +DEVASTATION +DEVASTATIONS +DEVASTATIVE +DEVASTATOR +DEVASTATORS +DEVEIN +DEVEINED +DEVEINING +DEVEINS +DEVEL +DEVELED +DEVELING +DEVELOP +DEVELOPABLE +DEVELOPE +DEVELOPED +DEVELOPER +DEVELOPERS +DEVELOPES +DEVELOPING +DEVELOPMENT +DEVELOPMENTAL +DEVELOPMENTALLY +DEVELOPMENTS +DEVELOPPE +DEVELOPPES +DEVELOPS +DEVELS +DEVERBAL +DEVERBALS +DEVERBATIVE +DEVERBATIVES +DEVEST +DEVESTED +DEVESTING +DEVESTS +DEVIANCE +DEVIANCES +DEVIANCIES +DEVIANCY +DEVIANT +DEVIANTS +DEVIATE +DEVIATED +DEVIATES +DEVIATING +DEVIATION +DEVIATIONISM +DEVIATIONISMS +DEVIATIONIST +DEVIATIONISTS +DEVIATIONS +DEVIATIVE +DEVIATOR +DEVIATORS +DEVIATORY +DEVICE +DEVICES +DEVIL +DEVILED +DEVILFISH +DEVILFISHES +DEVILING +DEVILISH +DEVILISHLY +DEVILISHNESS +DEVILISHNESSES +DEVILKIN +DEVILKINS +DEVILLED +DEVILLING +DEVILMENT +DEVILMENTS +DEVILRIES +DEVILRY +DEVILS +DEVILTRIES +DEVILTRY +DEVILWOOD +DEVILWOODS +DEVIOUS +DEVIOUSLY +DEVIOUSNESS +DEVIOUSNESSES +DEVISABLE +DEVISAL +DEVISALS +DEVISE +DEVISED +DEVISEE +DEVISEES +DEVISER +DEVISERS +DEVISES +DEVISING +DEVISOR +DEVISORS +DEVITALIZE +DEVITALIZED +DEVITALIZES +DEVITALIZING +DEVITRIFICATION +DEVITRIFIED +DEVITRIFIES +DEVITRIFY +DEVITRIFYING +DEVOCALIZE +DEVOCALIZED +DEVOCALIZES +DEVOCALIZING +DEVOICE +DEVOICED +DEVOICES +DEVOICING +DEVOID +DEVOIR +DEVOIRS +DEVOLUTION +DEVOLUTIONARY +DEVOLUTIONIST +DEVOLUTIONISTS +DEVOLUTIONS +DEVOLVE +DEVOLVED +DEVOLVES +DEVOLVING +DEVON +DEVONIAN +DEVONS +DEVOTE +DEVOTED +DEVOTEDLY +DEVOTEDNESS +DEVOTEDNESSES +DEVOTEE +DEVOTEES +DEVOTEMENT +DEVOTEMENTS +DEVOTES +DEVOTING +DEVOTION +DEVOTIONAL +DEVOTIONALLY +DEVOTIONALS +DEVOTIONS +DEVOUR +DEVOURED +DEVOURER +DEVOURERS +DEVOURING +DEVOURS +DEVOUT +DEVOUTER +DEVOUTEST +DEVOUTLY +DEVOUTNESS +DEVOUTNESSES +DEVS +DEW +DEWAN +DEWANS +DEWAR +DEWARS +DEWATER +DEWATERED +DEWATERER +DEWATERERS +DEWATERING +DEWATERS +DEWAX +DEWAXED +DEWAXES +DEWAXING +DEWBERRIES +DEWBERRY +DEWCLAW +DEWCLAWED +DEWCLAWS +DEWDROP +DEWDROPS +DEWED +DEWFALL +DEWFALLS +DEWIER +DEWIEST +DEWILY +DEWINESS +DEWINESSES +DEWING +DEWLAP +DEWLAPPED +DEWLAPS +DEWLESS +DEWOOL +DEWOOLED +DEWOOLING +DEWOOLS +DEWORM +DEWORMED +DEWORMER +DEWORMERS +DEWORMING +DEWORMS +DEWS +DEWY +DEX +DEXAMETHASONE +DEXAMETHASONES +DEXES +DEXIE +DEXIES +DEXTER +DEXTERITIES +DEXTERITY +DEXTEROUS +DEXTEROUSLY +DEXTEROUSNESS +DEXTEROUSNESSES +DEXTRAL +DEXTRALLY +DEXTRAN +DEXTRANASE +DEXTRANASES +DEXTRANS +DEXTRIN +DEXTRINE +DEXTRINES +DEXTRINS +DEXTRO +DEXTROROTARY +DEXTROROTATORY +DEXTRORSE +DEXTROSE +DEXTROSES +DEXTROUS +DEXY +DEY +DEYS +DEZINC +DEZINCED +DEZINCING +DEZINCKED +DEZINCKING +DEZINCS +DHAK +DHAKS +DHAL +DHALS +DHARMA +DHARMAS +DHARMIC +DHARNA +DHARNAS +DHOBI +DHOBIS +DHOLE +DHOLES +DHOOLIES +DHOOLY +DHOORA +DHOORAS +DHOOTI +DHOOTIE +DHOOTIES +DHOOTIS +DHOTI +DHOTIS +DHOURRA +DHOURRAS +DHOW +DHOWS +DHURNA +DHURNAS +DHURRIE +DHURRIES +DHUTI +DHUTIS +DIABASE +DIABASES +DIABASIC +DIABETES +DIABETIC +DIABETICS +DIABETOGENIC +DIABETOLOGIST +DIABETOLOGISTS +DIABLERIE +DIABLERIES +DIABLERY +DIABOLIC +DIABOLICAL +DIABOLICALLY +DIABOLICALNESS +DIABOLISM +DIABOLISMS +DIABOLIST +DIABOLISTS +DIABOLIZE +DIABOLIZED +DIABOLIZES +DIABOLIZING +DIABOLO +DIABOLOS +DIACETYL +DIACETYLS +DIACHRONIC +DIACHRONICALLY +DIACHRONIES +DIACHRONY +DIACID +DIACIDIC +DIACIDS +DIACONAL +DIACONATE +DIACONATES +DIACRITIC +DIACRITICAL +DIACRITICS +DIACTINIC +DIADELPHOUS +DIADEM +DIADEMED +DIADEMING +DIADEMS +DIADROMOUS +DIAERESES +DIAERESIS +DIAERETIC +DIAGENESES +DIAGENESIS +DIAGENETIC +DIAGENETICALLY +DIAGEOTROPIC +DIAGNOSABLE +DIAGNOSE +DIAGNOSEABLE +DIAGNOSED +DIAGNOSES +DIAGNOSING +DIAGNOSIS +DIAGNOSTIC +DIAGNOSTICAL +DIAGNOSTICALLY +DIAGNOSTICIAN +DIAGNOSTICIANS +DIAGNOSTICS +DIAGONAL +DIAGONALIZABLE +DIAGONALIZATION +DIAGONALIZE +DIAGONALIZED +DIAGONALIZES +DIAGONALIZING +DIAGONALLY +DIAGONALS +DIAGRAM +DIAGRAMED +DIAGRAMING +DIAGRAMMABLE +DIAGRAMMATIC +DIAGRAMMATICAL +DIAGRAMMED +DIAGRAMMING +DIAGRAMS +DIAGRAPH +DIAGRAPHS +DIAKINESES +DIAKINESIS +DIAL +DIALECT +DIALECTAL +DIALECTALLY +DIALECTIC +DIALECTICAL +DIALECTICALLY +DIALECTICIAN +DIALECTICIANS +DIALECTICS +DIALECTOLOGICAL +DIALECTOLOGIES +DIALECTOLOGIST +DIALECTOLOGISTS +DIALECTOLOGY +DIALECTS +DIALED +DIALER +DIALERS +DIALING +DIALINGS +DIALIST +DIALISTS +DIALLAGE +DIALLAGES +DIALLED +DIALLEL +DIALLER +DIALLERS +DIALLING +DIALLINGS +DIALLIST +DIALLISTS +DIALOG +DIALOGED +DIALOGER +DIALOGERS +DIALOGIC +DIALOGICAL +DIALOGICALLY +DIALOGING +DIALOGIST +DIALOGISTIC +DIALOGISTS +DIALOGS +DIALOGUE +DIALOGUED +DIALOGUER +DIALOGUERS +DIALOGUES +DIALOGUING +DIALS +DIALYSATE +DIALYSATES +DIALYSE +DIALYSED +DIALYSER +DIALYSERS +DIALYSES +DIALYSING +DIALYSIS +DIALYTIC +DIALYZABLE +DIALYZATE +DIALYZATES +DIALYZE +DIALYZED +DIALYZER +DIALYZERS +DIALYZES +DIALYZING +DIAMAGNET +DIAMAGNETIC +DIAMAGNETISM +DIAMAGNETISMS +DIAMAGNETS +DIAMANTE +DIAMANTES +DIAMETER +DIAMETERS +DIAMETRAL +DIAMETRIC +DIAMETRICAL +DIAMETRICALLY +DIAMIDE +DIAMIDES +DIAMIN +DIAMINE +DIAMINES +DIAMINS +DIAMOND +DIAMONDBACK +DIAMONDBACKS +DIAMONDED +DIAMONDIFEROUS +DIAMONDING +DIAMONDS +DIANDROUS +DIANTHUS +DIANTHUSES +DIAPASON +DIAPASONS +DIAPAUSE +DIAPAUSED +DIAPAUSES +DIAPAUSING +DIAPEDESES +DIAPEDESIS +DIAPER +DIAPERED +DIAPERING +DIAPERS +DIAPHANEITIES +DIAPHANEITY +DIAPHANOUS +DIAPHANOUSLY +DIAPHANOUSNESS +DIAPHONE +DIAPHONES +DIAPHONIES +DIAPHONY +DIAPHORASE +DIAPHORASES +DIAPHORESES +DIAPHORESIS +DIAPHORETIC +DIAPHORETICS +DIAPHRAGM +DIAPHRAGMATIC +DIAPHRAGMED +DIAPHRAGMING +DIAPHRAGMS +DIAPHYSEAL +DIAPHYSES +DIAPHYSIAL +DIAPHYSIS +DIAPIR +DIAPIRIC +DIAPIRS +DIAPOSITIVE +DIAPOSITIVES +DIAPSID +DIAPSIDS +DIARCHIC +DIARCHIES +DIARCHY +DIARIES +DIARIST +DIARISTIC +DIARISTS +DIARRHEA +DIARRHEAL +DIARRHEAS +DIARRHEIC +DIARRHETIC +DIARRHOEA +DIARRHOEAS +DIARTHROSES +DIARTHROSIS +DIARY +DIASPORA +DIASPORAS +DIASPORE +DIASPORES +DIASPORIC +DIASTASE +DIASTASES +DIASTASIC +DIASTATIC +DIASTEM +DIASTEMA +DIASTEMAS +DIASTEMATA +DIASTEMS +DIASTER +DIASTEREOISOMER +DIASTEREOMER +DIASTEREOMERIC +DIASTEREOMERS +DIASTERS +DIASTOLE +DIASTOLES +DIASTOLIC +DIASTRAL +DIASTROPHIC +DIASTROPHICALLY +DIASTROPHISM +DIASTROPHISMS +DIATESSARON +DIATESSARONS +DIATHERMANOUS +DIATHERMIC +DIATHERMIES +DIATHERMY +DIATHESES +DIATHESIS +DIATHETIC +DIATOM +DIATOMACEOUS +DIATOMIC +DIATOMITE +DIATOMITES +DIATOMS +DIATONIC +DIATONICALLY +DIATRIBE +DIATRIBES +DIATRON +DIATRONS +DIATROPIC +DIAZEPAM +DIAZEPAMS +DIAZIN +DIAZINE +DIAZINES +DIAZINON +DIAZINONS +DIAZINS +DIAZO +DIAZOLE +DIAZOLES +DIAZONIUM +DIAZONIUMS +DIAZOTIZATION +DIAZOTIZATIONS +DIAZOTIZE +DIAZOTIZED +DIAZOTIZES +DIAZOTIZING +DIB +DIBASIC +DIBBED +DIBBER +DIBBERS +DIBBING +DIBBLE +DIBBLED +DIBBLER +DIBBLERS +DIBBLES +DIBBLING +DIBBUK +DIBBUKIM +DIBBUKS +DIBENZOFURAN +DIBENZOFURANS +DIBROMIDE +DIBROMIDES +DIBS +DICAMBA +DICAMBAS +DICARBOXYLIC +DICAST +DICASTIC +DICASTS +DICE +DICED +DICENTRA +DICENTRAS +DICENTRIC +DICENTRICS +DICER +DICERS +DICES +DICEY +DICHASIA +DICHASIAL +DICHASIUM +DICHLOROBENZENE +DICHLOROETHANE +DICHLOROETHANES +DICHLORVOS +DICHLORVOSES +DICHOGAMIES +DICHOGAMOUS +DICHOGAMY +DICHONDRA +DICHONDRAS +DICHOTIC +DICHOTICALLY +DICHOTOMIES +DICHOTOMIST +DICHOTOMISTS +DICHOTOMIZATION +DICHOTOMIZE +DICHOTOMIZED +DICHOTOMIZES +DICHOTOMIZING +DICHOTOMOUS +DICHOTOMOUSLY +DICHOTOMOUSNESS +DICHOTOMY +DICHROIC +DICHROISM +DICHROISMS +DICHROITE +DICHROITES +DICHROMAT +DICHROMATE +DICHROMATES +DICHROMATIC +DICHROMATISM +DICHROMATISMS +DICHROMATS +DICHROMIC +DICHROSCOPE +DICHROSCOPES +DICIER +DICIEST +DICING +DICK +DICKCISSEL +DICKCISSELS +DICKED +DICKENS +DICKENSES +DICKER +DICKERED +DICKERING +DICKERS +DICKEY +DICKEYS +DICKHEAD +DICKHEADS +DICKIE +DICKIER +DICKIES +DICKIEST +DICKING +DICKS +DICKY +DICLINIES +DICLINISM +DICLINISMS +DICLINOUS +DICLINY +DICOT +DICOTS +DICOTYL +DICOTYLEDON +DICOTYLEDONOUS +DICOTYLEDONS +DICOTYLS +DICOUMARIN +DICOUMARINS +DICOUMAROL +DICOUMAROLS +DICROTAL +DICROTIC +DICROTISM +DICROTISMS +DICTA +DICTATE +DICTATED +DICTATES +DICTATING +DICTATION +DICTATIONS +DICTATOR +DICTATORIAL +DICTATORIALLY +DICTATORIALNESS +DICTATORS +DICTATORSHIP +DICTATORSHIPS +DICTIER +DICTIEST +DICTION +DICTIONAL +DICTIONALLY +DICTIONARIES +DICTIONARY +DICTIONS +DICTUM +DICTUMS +DICTY +DICTYOSOME +DICTYOSOMES +DICTYOSTELE +DICTYOSTELES +DICUMAROL +DICUMAROLS +DICYCLIC +DICYCLIES +DICYCLY +DICYNODONT +DICYNODONTS +DID +DIDACT +DIDACTIC +DIDACTICAL +DIDACTICALLY +DIDACTICISM +DIDACTICISMS +DIDACTICS +DIDACTS +DIDACTYL +DIDAPPER +DIDAPPERS +DIDDLE +DIDDLED +DIDDLER +DIDDLERS +DIDDLES +DIDDLEY +DIDDLEYS +DIDDLIES +DIDDLING +DIDDLY +DIDGERIDOO +DIDGERIDOOS +DIDIE +DIDIES +DIDJERIDOO +DIDJERIDOOS +DIDJERIDU +DIDJERIDUS +DIDO +DIDOES +DIDOS +DIDST +DIDY +DIDYMIUM +DIDYMIUMS +DIDYMOUS +DIDYNAMIES +DIDYNAMY +DIE +DIEBACK +DIEBACKS +DIECIOUS +DIED +DIEFFENBACHIA +DIEFFENBACHIAS +DIEHARD +DIEHARDS +DIEING +DIEL +DIELDRIN +DIELDRINS +DIELECTRIC +DIELECTRICS +DIEMAKER +DIEMAKERS +DIENCEPHALA +DIENCEPHALIC +DIENCEPHALON +DIENE +DIENES +DIEOFF +DIEOFFS +DIERESES +DIERESIS +DIERETIC +DIES +DIESEL +DIESELED +DIESELING +DIESELINGS +DIESELIZATION +DIESELIZATIONS +DIESELIZE +DIESELIZED +DIESELIZES +DIESELIZING +DIESELS +DIESES +DIESINKER +DIESINKERS +DIESIS +DIESTER +DIESTERS +DIESTOCK +DIESTOCKS +DIESTROUS +DIESTRUM +DIESTRUMS +DIESTRUS +DIESTRUSES +DIET +DIETARIES +DIETARILY +DIETARY +DIETED +DIETER +DIETERS +DIETETIC +DIETETICALLY +DIETETICS +DIETHER +DIETHERS +DIETICIAN +DIETICIANS +DIETING +DIETITIAN +DIETITIANS +DIETS +DIF +DIFF +DIFFER +DIFFERED +DIFFERENCE +DIFFERENCED +DIFFERENCES +DIFFERENCING +DIFFERENT +DIFFERENTIA +DIFFERENTIABLE +DIFFERENTIAE +DIFFERENTIAL +DIFFERENTIALLY +DIFFERENTIALS +DIFFERENTIATE +DIFFERENTIATED +DIFFERENTIATES +DIFFERENTIATING +DIFFERENTIATION +DIFFERENTLY +DIFFERENTNESS +DIFFERENTNESSES +DIFFERING +DIFFERS +DIFFICILE +DIFFICULT +DIFFICULTIES +DIFFICULTLY +DIFFICULTY +DIFFIDENCE +DIFFIDENCES +DIFFIDENT +DIFFIDENTLY +DIFFRACT +DIFFRACTED +DIFFRACTING +DIFFRACTION +DIFFRACTIONS +DIFFRACTOMETER +DIFFRACTOMETERS +DIFFRACTOMETRIC +DIFFRACTOMETRY +DIFFRACTS +DIFFS +DIFFUSE +DIFFUSED +DIFFUSELY +DIFFUSENESS +DIFFUSENESSES +DIFFUSER +DIFFUSERS +DIFFUSES +DIFFUSIBLE +DIFFUSING +DIFFUSION +DIFFUSIONAL +DIFFUSIONISM +DIFFUSIONISMS +DIFFUSIONIST +DIFFUSIONISTS +DIFFUSIONS +DIFFUSIVE +DIFFUSIVELY +DIFFUSIVENESS +DIFFUSIVENESSES +DIFFUSIVITIES +DIFFUSIVITY +DIFFUSOR +DIFFUSORS +DIFS +DIFUNCTIONAL +DIG +DIGAMIES +DIGAMIST +DIGAMISTS +DIGAMMA +DIGAMMAS +DIGAMOUS +DIGAMY +DIGASTRIC +DIGASTRICS +DIGENESES +DIGENESIS +DIGENETIC +DIGERATI +DIGEST +DIGESTED +DIGESTER +DIGESTERS +DIGESTIBILITIES +DIGESTIBILITY +DIGESTIBLE +DIGESTIF +DIGESTIFS +DIGESTING +DIGESTION +DIGESTIONS +DIGESTIVE +DIGESTIVELY +DIGESTIVES +DIGESTOR +DIGESTORS +DIGESTS +DIGGED +DIGGER +DIGGERS +DIGGING +DIGGINGS +DIGHT +DIGHTED +DIGHTING +DIGHTS +DIGIT +DIGITAL +DIGITALIN +DIGITALINS +DIGITALIS +DIGITALISES +DIGITALIZATION +DIGITALIZATIONS +DIGITALIZE +DIGITALIZED +DIGITALIZES +DIGITALIZING +DIGITALLY +DIGITALS +DIGITATE +DIGITATED +DIGITATELY +DIGITIGRADE +DIGITIZATION +DIGITIZATIONS +DIGITIZE +DIGITIZED +DIGITIZER +DIGITIZERS +DIGITIZES +DIGITIZING +DIGITONIN +DIGITONINS +DIGITOXIGENIN +DIGITOXIGENINS +DIGITOXIN +DIGITOXINS +DIGITS +DIGLOSSIA +DIGLOSSIAS +DIGLOSSIC +DIGLOT +DIGLOTS +DIGLYCERIDE +DIGLYCERIDES +DIGNIFIED +DIGNIFIES +DIGNIFY +DIGNIFYING +DIGNITARIES +DIGNITARY +DIGNITIES +DIGNITY +DIGOXIN +DIGOXINS +DIGRAPH +DIGRAPHIC +DIGRAPHICALLY +DIGRAPHS +DIGRESS +DIGRESSED +DIGRESSES +DIGRESSING +DIGRESSION +DIGRESSIONAL +DIGRESSIONARY +DIGRESSIONS +DIGRESSIVE +DIGRESSIVELY +DIGRESSIVENESS +DIGS +DIHEDRAL +DIHEDRALS +DIHEDRON +DIHEDRONS +DIHYBRID +DIHYBRIDS +DIHYDRIC +DIKDIK +DIKDIKS +DIKE +DIKED +DIKER +DIKERS +DIKES +DIKEY +DIKING +DIKTAT +DIKTATS +DILAPIDATE +DILAPIDATED +DILAPIDATES +DILAPIDATING +DILAPIDATION +DILAPIDATIONS +DILATABILITIES +DILATABILITY +DILATABLE +DILATABLY +DILATANCIES +DILATANCY +DILATANT +DILATANTS +DILATATE +DILATATION +DILATATIONAL +DILATATIONS +DILATATOR +DILATATORS +DILATE +DILATED +DILATER +DILATERS +DILATES +DILATING +DILATION +DILATIONS +DILATIVE +DILATOMETER +DILATOMETERS +DILATOMETRIC +DILATOMETRIES +DILATOMETRY +DILATOR +DILATORILY +DILATORINESS +DILATORINESSES +DILATORS +DILATORY +DILDO +DILDOE +DILDOES +DILDOS +DILEMMA +DILEMMAS +DILEMMATIC +DILEMMIC +DILETTANTE +DILETTANTES +DILETTANTI +DILETTANTISH +DILETTANTISM +DILETTANTISMS +DILIGENCE +DILIGENCES +DILIGENT +DILIGENTLY +DILL +DILLED +DILLIES +DILLS +DILLY +DILLYDALLIED +DILLYDALLIES +DILLYDALLY +DILLYDALLYING +DILTIAZEM +DILTIAZEMS +DILUENT +DILUENTS +DILUTE +DILUTED +DILUTENESS +DILUTENESSES +DILUTER +DILUTERS +DILUTES +DILUTING +DILUTION +DILUTIONS +DILUTIVE +DILUTOR +DILUTORS +DILUVIA +DILUVIAL +DILUVIAN +DILUVION +DILUVIONS +DILUVIUM +DILUVIUMS +DIM +DIME +DIMENHYDRINATE +DIMENHYDRINATES +DIMENSION +DIMENSIONAL +DIMENSIONALITY +DIMENSIONALLY +DIMENSIONED +DIMENSIONING +DIMENSIONLESS +DIMENSIONS +DIMER +DIMERCAPROL +DIMERCAPROLS +DIMERIC +DIMERISM +DIMERISMS +DIMERIZATION +DIMERIZATIONS +DIMERIZE +DIMERIZED +DIMERIZES +DIMERIZING +DIMEROUS +DIMERS +DIMES +DIMETER +DIMETERS +DIMETHOATE +DIMETHOATES +DIMETHYL +DIMETHYLS +DIMETRIC +DIMIDIATE +DIMIDIATED +DIMIDIATES +DIMIDIATING +DIMINISH +DIMINISHABLE +DIMINISHED +DIMINISHES +DIMINISHING +DIMINISHMENT +DIMINISHMENTS +DIMINUENDO +DIMINUENDOS +DIMINUTION +DIMINUTIONS +DIMINUTIVE +DIMINUTIVELY +DIMINUTIVENESS +DIMINUTIVES +DIMITIES +DIMITY +DIMLY +DIMMABLE +DIMMED +DIMMER +DIMMERS +DIMMEST +DIMMING +DIMNESS +DIMNESSES +DIMORPH +DIMORPHIC +DIMORPHISM +DIMORPHISMS +DIMORPHOUS +DIMORPHS +DIMOUT +DIMOUTS +DIMPLE +DIMPLED +DIMPLES +DIMPLIER +DIMPLIEST +DIMPLING +DIMPLY +DIMS +DIMWIT +DIMWITS +DIMWITTED +DIN +DINAR +DINARS +DINDLE +DINDLED +DINDLES +DINDLING +DINE +DINED +DINER +DINERIC +DINERO +DINEROS +DINERS +DINES +DINETTE +DINETTES +DING +DINGBAT +DINGBATS +DINGDONG +DINGDONGED +DINGDONGING +DINGDONGS +DINGE +DINGED +DINGER +DINGERS +DINGES +DINGEY +DINGEYS +DINGHIES +DINGHY +DINGIER +DINGIES +DINGIEST +DINGILY +DINGINESS +DINGINESSES +DINGING +DINGLE +DINGLEBERRIES +DINGLEBERRY +DINGLES +DINGO +DINGOES +DINGS +DINGUS +DINGUSES +DINGY +DINING +DINITRO +DINITROBENZENE +DINITROBENZENES +DINITROPHENOL +DINITROPHENOLS +DINK +DINKED +DINKEY +DINKEYS +DINKIER +DINKIES +DINKIEST +DINKING +DINKLY +DINKS +DINKUM +DINKUMS +DINKY +DINNED +DINNER +DINNERLESS +DINNERS +DINNERTIME +DINNERTIMES +DINNERWARE +DINNERWARES +DINNING +DINO +DINOFLAGELLATE +DINOFLAGELLATES +DINOS +DINOSAUR +DINOSAURIAN +DINOSAURS +DINOTHERE +DINOTHERES +DINS +DINT +DINTED +DINTING +DINTS +DINUCLEOTIDE +DINUCLEOTIDES +DIOBOL +DIOBOLON +DIOBOLONS +DIOBOLS +DIOCESAN +DIOCESANS +DIOCESE +DIOCESES +DIODE +DIODES +DIOECIES +DIOECIOUS +DIOECISM +DIOECISMS +DIOECY +DIOESTRUS +DIOESTRUSES +DIOICOUS +DIOL +DIOLEFIN +DIOLEFINS +DIOLS +DIONYSIAC +DIONYSIAN +DIOPSIDE +DIOPSIDES +DIOPSIDIC +DIOPTASE +DIOPTASES +DIOPTER +DIOPTERS +DIOPTRAL +DIOPTRE +DIOPTRES +DIOPTRIC +DIOPTRICS +DIORAMA +DIORAMAS +DIORAMIC +DIORITE +DIORITES +DIORITIC +DIOSGENIN +DIOSGENINS +DIOXAN +DIOXANE +DIOXANES +DIOXANS +DIOXID +DIOXIDE +DIOXIDES +DIOXIDS +DIOXIN +DIOXINS +DIP +DIPEPTIDASE +DIPEPTIDASES +DIPEPTIDE +DIPEPTIDES +DIPHASE +DIPHASIC +DIPHENHYDRAMINE +DIPHENYL +DIPHENYLAMINE +DIPHENYLAMINES +DIPHENYLS +DIPHOSGENE +DIPHOSGENES +DIPHOSPHATE +DIPHOSPHATES +DIPHTHERIA +DIPHTHERIAL +DIPHTHERIAS +DIPHTHERITIC +DIPHTHEROID +DIPHTHEROIDS +DIPHTHONG +DIPHTHONGAL +DIPHTHONGED +DIPHTHONGING +DIPHTHONGIZE +DIPHTHONGIZED +DIPHTHONGIZES +DIPHTHONGIZING +DIPHTHONGS +DIPHYLETIC +DIPHYODONT +DIPLEGIA +DIPLEGIAS +DIPLEGIC +DIPLEX +DIPLEXER +DIPLEXERS +DIPLOBLASTIC +DIPLOCOCCI +DIPLOCOCCUS +DIPLODOCUS +DIPLODOCUSES +DIPLOE +DIPLOES +DIPLOIC +DIPLOID +DIPLOIDIC +DIPLOIDIES +DIPLOIDS +DIPLOIDY +DIPLOMA +DIPLOMACIES +DIPLOMACY +DIPLOMAED +DIPLOMAING +DIPLOMAS +DIPLOMAT +DIPLOMATA +DIPLOMATE +DIPLOMATES +DIPLOMATIC +DIPLOMATICALLY +DIPLOMATIST +DIPLOMATISTS +DIPLOMATS +DIPLONT +DIPLONTIC +DIPLONTS +DIPLOPHASE +DIPLOPHASES +DIPLOPIA +DIPLOPIAS +DIPLOPIC +DIPLOPOD +DIPLOPODS +DIPLOSES +DIPLOSIS +DIPLOTENE +DIPLOTENES +DIPNET +DIPNETS +DIPNETTED +DIPNETTING +DIPNOAN +DIPNOANS +DIPODIC +DIPODIES +DIPODY +DIPOLAR +DIPOLE +DIPOLES +DIPPABLE +DIPPED +DIPPER +DIPPERFUL +DIPPERFULS +DIPPERS +DIPPIER +DIPPIEST +DIPPINESS +DIPPINESSES +DIPPING +DIPPY +DIPROTIC +DIPS +DIPSADES +DIPSAS +DIPSHIT +DIPSHITS +DIPSO +DIPSOMANIA +DIPSOMANIAC +DIPSOMANIACAL +DIPSOMANIACS +DIPSOMANIAS +DIPSOS +DIPSTICK +DIPSTICKS +DIPT +DIPTERA +DIPTERAL +DIPTERAN +DIPTERANS +DIPTEROCARP +DIPTEROCARPS +DIPTERON +DIPTEROUS +DIPTYCA +DIPTYCAS +DIPTYCH +DIPTYCHS +DIQUAT +DIQUATS +DIRAM +DIRAMS +DIRDUM +DIRDUMS +DIRE +DIRECT +DIRECTED +DIRECTEDNESS +DIRECTEDNESSES +DIRECTER +DIRECTEST +DIRECTING +DIRECTION +DIRECTIONAL +DIRECTIONALITY +DIRECTIONLESS +DIRECTIONS +DIRECTIVE +DIRECTIVES +DIRECTIVITIES +DIRECTIVITY +DIRECTLY +DIRECTNESS +DIRECTNESSES +DIRECTOR +DIRECTORATE +DIRECTORATES +DIRECTORIAL +DIRECTORIES +DIRECTORS +DIRECTORSHIP +DIRECTORSHIPS +DIRECTORY +DIRECTRESS +DIRECTRESSES +DIRECTRICE +DIRECTRICES +DIRECTRIX +DIRECTRIXES +DIRECTS +DIREFUL +DIREFULLY +DIRELY +DIRENESS +DIRENESSES +DIRER +DIREST +DIRGE +DIRGEFUL +DIRGELIKE +DIRGES +DIRHAM +DIRHAMS +DIRIGIBLE +DIRIGIBLES +DIRIGISME +DIRIGISMES +DIRIGISTE +DIRIMENT +DIRK +DIRKED +DIRKING +DIRKS +DIRL +DIRLED +DIRLING +DIRLS +DIRNDL +DIRNDLS +DIRT +DIRTBAG +DIRTBAGS +DIRTIED +DIRTIER +DIRTIES +DIRTIEST +DIRTILY +DIRTINESS +DIRTINESSES +DIRTS +DIRTY +DIRTYING +DIS +DISABILITIES +DISABILITY +DISABLE +DISABLED +DISABLEMENT +DISABLEMENTS +DISABLER +DISABLERS +DISABLES +DISABLING +DISABUSAL +DISABUSALS +DISABUSE +DISABUSED +DISABUSES +DISABUSING +DISACCHARIDASE +DISACCHARIDASES +DISACCHARIDE +DISACCHARIDES +DISACCORD +DISACCORDED +DISACCORDING +DISACCORDS +DISACCUSTOM +DISACCUSTOMED +DISACCUSTOMING +DISACCUSTOMS +DISADVANTAGE +DISADVANTAGED +DISADVANTAGEOUS +DISADVANTAGES +DISADVANTAGING +DISAFFECT +DISAFFECTED +DISAFFECTING +DISAFFECTION +DISAFFECTIONS +DISAFFECTS +DISAFFILIATE +DISAFFILIATED +DISAFFILIATES +DISAFFILIATING +DISAFFILIATION +DISAFFILIATIONS +DISAFFIRM +DISAFFIRMANCE +DISAFFIRMANCES +DISAFFIRMED +DISAFFIRMING +DISAFFIRMS +DISAGGREGATE +DISAGGREGATED +DISAGGREGATES +DISAGGREGATING +DISAGGREGATION +DISAGGREGATIONS +DISAGGREGATIVE +DISAGREE +DISAGREEABLE +DISAGREEABLY +DISAGREED +DISAGREEING +DISAGREEMENT +DISAGREEMENTS +DISAGREES +DISALLOW +DISALLOWANCE +DISALLOWANCES +DISALLOWED +DISALLOWING +DISALLOWS +DISAMBIGUATE +DISAMBIGUATED +DISAMBIGUATES +DISAMBIGUATING +DISAMBIGUATION +DISAMBIGUATIONS +DISANNUL +DISANNULLED +DISANNULLING +DISANNULS +DISAPPEAR +DISAPPEARANCE +DISAPPEARANCES +DISAPPEARED +DISAPPEARING +DISAPPEARS +DISAPPOINT +DISAPPOINTED +DISAPPOINTEDLY +DISAPPOINTING +DISAPPOINTINGLY +DISAPPOINTMENT +DISAPPOINTMENTS +DISAPPOINTS +DISAPPROBATION +DISAPPROBATIONS +DISAPPROVAL +DISAPPROVALS +DISAPPROVE +DISAPPROVED +DISAPPROVER +DISAPPROVERS +DISAPPROVES +DISAPPROVING +DISAPPROVINGLY +DISARM +DISARMAMENT +DISARMAMENTS +DISARMED +DISARMER +DISARMERS +DISARMING +DISARMINGLY +DISARMS +DISARRANGE +DISARRANGED +DISARRANGEMENT +DISARRANGEMENTS +DISARRANGES +DISARRANGING +DISARRAY +DISARRAYED +DISARRAYING +DISARRAYS +DISARTICULATE +DISARTICULATED +DISARTICULATES +DISARTICULATING +DISARTICULATION +DISASSEMBLE +DISASSEMBLED +DISASSEMBLES +DISASSEMBLIES +DISASSEMBLING +DISASSEMBLY +DISASSOCIATE +DISASSOCIATED +DISASSOCIATES +DISASSOCIATING +DISASSOCIATION +DISASSOCIATIONS +DISASTER +DISASTERS +DISASTROUS +DISASTROUSLY +DISAVOW +DISAVOWABLE +DISAVOWAL +DISAVOWALS +DISAVOWED +DISAVOWER +DISAVOWERS +DISAVOWING +DISAVOWS +DISBAND +DISBANDED +DISBANDING +DISBANDMENT +DISBANDMENTS +DISBANDS +DISBAR +DISBARMENT +DISBARMENTS +DISBARRED +DISBARRING +DISBARS +DISBELIEF +DISBELIEFS +DISBELIEVE +DISBELIEVED +DISBELIEVER +DISBELIEVERS +DISBELIEVES +DISBELIEVING +DISBENEFIT +DISBENEFITS +DISBOSOM +DISBOSOMED +DISBOSOMING +DISBOSOMS +DISBOUND +DISBOWEL +DISBOWELED +DISBOWELING +DISBOWELLED +DISBOWELLING +DISBOWELS +DISBRANCH +DISBRANCHED +DISBRANCHES +DISBRANCHING +DISBUD +DISBUDDED +DISBUDDING +DISBUDS +DISBURDEN +DISBURDENED +DISBURDENING +DISBURDENMENT +DISBURDENMENTS +DISBURDENS +DISBURSAL +DISBURSALS +DISBURSE +DISBURSED +DISBURSEMENT +DISBURSEMENTS +DISBURSER +DISBURSERS +DISBURSES +DISBURSING +DISC +DISCALCED +DISCANT +DISCANTED +DISCANTING +DISCANTS +DISCARD +DISCARDABLE +DISCARDED +DISCARDER +DISCARDERS +DISCARDING +DISCARDS +DISCARNATE +DISCASE +DISCASED +DISCASES +DISCASING +DISCED +DISCEPT +DISCEPTED +DISCEPTING +DISCEPTS +DISCERN +DISCERNABLE +DISCERNED +DISCERNER +DISCERNERS +DISCERNIBLE +DISCERNIBLY +DISCERNING +DISCERNINGLY +DISCERNMENT +DISCERNMENTS +DISCERNS +DISCHARGE +DISCHARGEABLE +DISCHARGED +DISCHARGEE +DISCHARGEES +DISCHARGER +DISCHARGERS +DISCHARGES +DISCHARGING +DISCI +DISCIFORM +DISCING +DISCIPLE +DISCIPLED +DISCIPLES +DISCIPLESHIP +DISCIPLESHIPS +DISCIPLINABLE +DISCIPLINAL +DISCIPLINARIAN +DISCIPLINARIANS +DISCIPLINARILY +DISCIPLINARITY +DISCIPLINARY +DISCIPLINE +DISCIPLINED +DISCIPLINER +DISCIPLINERS +DISCIPLINES +DISCIPLING +DISCIPLINING +DISCLAIM +DISCLAIMED +DISCLAIMER +DISCLAIMERS +DISCLAIMING +DISCLAIMS +DISCLAMATION +DISCLAMATIONS +DISCLIKE +DISCLIMAX +DISCLIMAXES +DISCLOSE +DISCLOSED +DISCLOSER +DISCLOSERS +DISCLOSES +DISCLOSING +DISCLOSURE +DISCLOSURES +DISCO +DISCOED +DISCOGRAPHER +DISCOGRAPHERS +DISCOGRAPHIC +DISCOGRAPHICAL +DISCOGRAPHIES +DISCOGRAPHY +DISCOID +DISCOIDAL +DISCOIDS +DISCOING +DISCOLOR +DISCOLORATION +DISCOLORATIONS +DISCOLORED +DISCOLORING +DISCOLORS +DISCOLOUR +DISCOLOURED +DISCOLOURING +DISCOLOURS +DISCOMBOBULATE +DISCOMBOBULATED +DISCOMBOBULATES +DISCOMFIT +DISCOMFITED +DISCOMFITING +DISCOMFITS +DISCOMFITURE +DISCOMFITURES +DISCOMFORT +DISCOMFORTABLE +DISCOMFORTED +DISCOMFORTING +DISCOMFORTS +DISCOMMEND +DISCOMMENDED +DISCOMMENDING +DISCOMMENDS +DISCOMMODE +DISCOMMODED +DISCOMMODES +DISCOMMODING +DISCOMPOSE +DISCOMPOSED +DISCOMPOSES +DISCOMPOSING +DISCOMPOSURE +DISCOMPOSURES +DISCONCERT +DISCONCERTED +DISCONCERTING +DISCONCERTINGLY +DISCONCERTMENT +DISCONCERTMENTS +DISCONCERTS +DISCONFIRM +DISCONFIRMED +DISCONFIRMING +DISCONFIRMS +DISCONFORMITIES +DISCONFORMITY +DISCONNECT +DISCONNECTED +DISCONNECTEDLY +DISCONNECTING +DISCONNECTION +DISCONNECTIONS +DISCONNECTS +DISCONSOLATE +DISCONSOLATELY +DISCONSOLATION +DISCONSOLATIONS +DISCONTENT +DISCONTENTED +DISCONTENTEDLY +DISCONTENTING +DISCONTENTMENT +DISCONTENTMENTS +DISCONTENTS +DISCONTINUANCE +DISCONTINUANCES +DISCONTINUATION +DISCONTINUE +DISCONTINUED +DISCONTINUES +DISCONTINUING +DISCONTINUITIES +DISCONTINUITY +DISCONTINUOUS +DISCONTINUOUSLY +DISCOPHILE +DISCOPHILES +DISCORD +DISCORDANCE +DISCORDANCES +DISCORDANCIES +DISCORDANCY +DISCORDANT +DISCORDANTLY +DISCORDED +DISCORDING +DISCORDS +DISCOS +DISCOTHEQUE +DISCOTHEQUES +DISCOUNT +DISCOUNTABLE +DISCOUNTED +DISCOUNTENANCE +DISCOUNTENANCED +DISCOUNTENANCES +DISCOUNTER +DISCOUNTERS +DISCOUNTING +DISCOUNTS +DISCOURAGE +DISCOURAGEABLE +DISCOURAGED +DISCOURAGEMENT +DISCOURAGEMENTS +DISCOURAGER +DISCOURAGERS +DISCOURAGES +DISCOURAGING +DISCOURAGINGLY +DISCOURSE +DISCOURSED +DISCOURSER +DISCOURSERS +DISCOURSES +DISCOURSING +DISCOURTEOUS +DISCOURTEOUSLY +DISCOURTESIES +DISCOURTESY +DISCOVER +DISCOVERABLE +DISCOVERED +DISCOVERER +DISCOVERERS +DISCOVERIES +DISCOVERING +DISCOVERS +DISCOVERT +DISCOVERY +DISCREDIT +DISCREDITABLE +DISCREDITABLY +DISCREDITED +DISCREDITING +DISCREDITS +DISCREET +DISCREETER +DISCREETEST +DISCREETLY +DISCREETNESS +DISCREETNESSES +DISCREPANCIES +DISCREPANCY +DISCREPANT +DISCREPANTLY +DISCRETE +DISCRETELY +DISCRETENESS +DISCRETENESSES +DISCRETION +DISCRETIONARY +DISCRETIONS +DISCRIMINABLE +DISCRIMINABLY +DISCRIMINANT +DISCRIMINANTS +DISCRIMINATE +DISCRIMINATED +DISCRIMINATES +DISCRIMINATING +DISCRIMINATION +DISCRIMINATIONS +DISCRIMINATIVE +DISCRIMINATOR +DISCRIMINATORS +DISCRIMINATORY +DISCROWN +DISCROWNED +DISCROWNING +DISCROWNS +DISCS +DISCURSIVE +DISCURSIVELY +DISCURSIVENESS +DISCUS +DISCUSES +DISCUSS +DISCUSSABLE +DISCUSSANT +DISCUSSANTS +DISCUSSED +DISCUSSER +DISCUSSERS +DISCUSSES +DISCUSSIBLE +DISCUSSING +DISCUSSION +DISCUSSIONS +DISDAIN +DISDAINED +DISDAINFUL +DISDAINFULLY +DISDAINFULNESS +DISDAINING +DISDAINS +DISEASE +DISEASED +DISEASES +DISEASING +DISECONOMIES +DISECONOMY +DISEMBARK +DISEMBARKATION +DISEMBARKATIONS +DISEMBARKED +DISEMBARKING +DISEMBARKS +DISEMBARRASS +DISEMBARRASSED +DISEMBARRASSES +DISEMBARRASSING +DISEMBODIED +DISEMBODIES +DISEMBODY +DISEMBODYING +DISEMBOGUE +DISEMBOGUED +DISEMBOGUES +DISEMBOGUING +DISEMBOWEL +DISEMBOWELED +DISEMBOWELING +DISEMBOWELLED +DISEMBOWELLING +DISEMBOWELMENT +DISEMBOWELMENTS +DISEMBOWELS +DISEMPLOY +DISEMPLOYED +DISEMPLOYING +DISEMPLOYS +DISENABLE +DISENABLED +DISENABLES +DISENABLING +DISENCHANT +DISENCHANTED +DISENCHANTER +DISENCHANTERS +DISENCHANTING +DISENCHANTINGLY +DISENCHANTMENT +DISENCHANTMENTS +DISENCHANTS +DISENCUMBER +DISENCUMBERED +DISENCUMBERING +DISENCUMBERS +DISENDOW +DISENDOWED +DISENDOWER +DISENDOWERS +DISENDOWING +DISENDOWMENT +DISENDOWMENTS +DISENDOWS +DISENFRANCHISE +DISENFRANCHISED +DISENFRANCHISES +DISENGAGE +DISENGAGED +DISENGAGEMENT +DISENGAGEMENTS +DISENGAGES +DISENGAGING +DISENTAIL +DISENTAILED +DISENTAILING +DISENTAILS +DISENTANGLE +DISENTANGLED +DISENTANGLEMENT +DISENTANGLES +DISENTANGLING +DISENTHRAL +DISENTHRALL +DISENTHRALLED +DISENTHRALLING +DISENTHRALLS +DISENTHRALS +DISENTITLE +DISENTITLED +DISENTITLES +DISENTITLING +DISEQUILIBRATE +DISEQUILIBRATED +DISEQUILIBRATES +DISEQUILIBRIA +DISEQUILIBRIUM +DISEQUILIBRIUMS +DISESTABLISH +DISESTABLISHED +DISESTABLISHES +DISESTABLISHING +DISESTEEM +DISESTEEMED +DISESTEEMING +DISESTEEMS +DISEUR +DISEURS +DISEUSE +DISEUSES +DISFAVOR +DISFAVORED +DISFAVORING +DISFAVORS +DISFAVOUR +DISFAVOURED +DISFAVOURING +DISFAVOURS +DISFIGURE +DISFIGURED +DISFIGUREMENT +DISFIGUREMENTS +DISFIGURES +DISFIGURING +DISFRANCHISE +DISFRANCHISED +DISFRANCHISES +DISFRANCHISING +DISFROCK +DISFROCKED +DISFROCKING +DISFROCKS +DISFUNCTION +DISFUNCTIONS +DISFURNISH +DISFURNISHED +DISFURNISHES +DISFURNISHING +DISFURNISHMENT +DISFURNISHMENTS +DISGORGE +DISGORGED +DISGORGES +DISGORGING +DISGRACE +DISGRACED +DISGRACEFUL +DISGRACEFULLY +DISGRACEFULNESS +DISGRACER +DISGRACERS +DISGRACES +DISGRACING +DISGRUNTLE +DISGRUNTLED +DISGRUNTLEMENT +DISGRUNTLEMENTS +DISGRUNTLES +DISGRUNTLING +DISGUISE +DISGUISED +DISGUISEDLY +DISGUISEMENT +DISGUISEMENTS +DISGUISER +DISGUISERS +DISGUISES +DISGUISING +DISGUST +DISGUSTED +DISGUSTEDLY +DISGUSTFUL +DISGUSTFULLY +DISGUSTING +DISGUSTINGLY +DISGUSTS +DISH +DISHABILLE +DISHABILLES +DISHARMONIES +DISHARMONIOUS +DISHARMONIZE +DISHARMONIZED +DISHARMONIZES +DISHARMONIZING +DISHARMONY +DISHCLOTH +DISHCLOTHS +DISHCLOUT +DISHCLOUTS +DISHDASHA +DISHDASHAS +DISHEARTEN +DISHEARTENED +DISHEARTENING +DISHEARTENINGLY +DISHEARTENMENT +DISHEARTENMENTS +DISHEARTENS +DISHED +DISHELM +DISHELMED +DISHELMING +DISHELMS +DISHERIT +DISHERITED +DISHERITING +DISHERITS +DISHES +DISHEVEL +DISHEVELED +DISHEVELING +DISHEVELLED +DISHEVELLING +DISHEVELS +DISHFUL +DISHFULS +DISHIER +DISHIEST +DISHING +DISHLIKE +DISHONEST +DISHONESTIES +DISHONESTLY +DISHONESTY +DISHONOR +DISHONORABLE +DISHONORABLY +DISHONORED +DISHONORER +DISHONORERS +DISHONORING +DISHONORS +DISHPAN +DISHPANS +DISHRAG +DISHRAGS +DISHTOWEL +DISHTOWELS +DISHWARE +DISHWARES +DISHWASHER +DISHWASHERS +DISHWATER +DISHWATERS +DISHY +DISILLUSION +DISILLUSIONED +DISILLUSIONING +DISILLUSIONMENT +DISILLUSIONS +DISINCENTIVE +DISINCENTIVES +DISINCLINATION +DISINCLINATIONS +DISINCLINE +DISINCLINED +DISINCLINES +DISINCLINING +DISINFECT +DISINFECTANT +DISINFECTANTS +DISINFECTED +DISINFECTING +DISINFECTION +DISINFECTIONS +DISINFECTS +DISINFEST +DISINFESTANT +DISINFESTANTS +DISINFESTATION +DISINFESTATIONS +DISINFESTED +DISINFESTING +DISINFESTS +DISINFLATION +DISINFLATIONARY +DISINFLATIONS +DISINFORM +DISINFORMATION +DISINFORMATIONS +DISINFORMED +DISINFORMING +DISINFORMS +DISINGENUOUS +DISINGENUOUSLY +DISINHERIT +DISINHERITANCE +DISINHERITANCES +DISINHERITED +DISINHERITING +DISINHERITS +DISINHIBIT +DISINHIBITED +DISINHIBITING +DISINHIBITION +DISINHIBITIONS +DISINHIBITS +DISINTEGRATE +DISINTEGRATED +DISINTEGRATES +DISINTEGRATING +DISINTEGRATION +DISINTEGRATIONS +DISINTEGRATIVE +DISINTEGRATOR +DISINTEGRATORS +DISINTER +DISINTEREST +DISINTERESTED +DISINTERESTEDLY +DISINTERESTING +DISINTERESTS +DISINTERMENT +DISINTERMENTS +DISINTERRED +DISINTERRING +DISINTERS +DISINTOXICATE +DISINTOXICATED +DISINTOXICATES +DISINTOXICATING +DISINTOXICATION +DISINVEST +DISINVESTED +DISINVESTING +DISINVESTMENT +DISINVESTMENTS +DISINVESTS +DISINVITE +DISINVITED +DISINVITES +DISINVITING +DISJECT +DISJECTED +DISJECTING +DISJECTS +DISJOIN +DISJOINED +DISJOINING +DISJOINS +DISJOINT +DISJOINTED +DISJOINTEDLY +DISJOINTEDNESS +DISJOINTING +DISJOINTS +DISJUNCT +DISJUNCTION +DISJUNCTIONS +DISJUNCTIVE +DISJUNCTIVELY +DISJUNCTIVES +DISJUNCTS +DISJUNCTURE +DISJUNCTURES +DISK +DISKED +DISKETTE +DISKETTES +DISKING +DISKLIKE +DISKS +DISLIKABLE +DISLIKE +DISLIKEABLE +DISLIKED +DISLIKER +DISLIKERS +DISLIKES +DISLIKING +DISLIMN +DISLIMNED +DISLIMNING +DISLIMNS +DISLOCATE +DISLOCATED +DISLOCATES +DISLOCATING +DISLOCATION +DISLOCATIONS +DISLODGE +DISLODGED +DISLODGEMENT +DISLODGEMENTS +DISLODGES +DISLODGING +DISLODGMENT +DISLODGMENTS +DISLOYAL +DISLOYALLY +DISLOYALTIES +DISLOYALTY +DISMAL +DISMALER +DISMALEST +DISMALLY +DISMALNESS +DISMALNESSES +DISMALS +DISMANTLE +DISMANTLED +DISMANTLEMENT +DISMANTLEMENTS +DISMANTLES +DISMANTLING +DISMAST +DISMASTED +DISMASTING +DISMASTS +DISMAY +DISMAYED +DISMAYING +DISMAYINGLY +DISMAYS +DISME +DISMEMBER +DISMEMBERED +DISMEMBERING +DISMEMBERMENT +DISMEMBERMENTS +DISMEMBERS +DISMES +DISMISS +DISMISSAL +DISMISSALS +DISMISSED +DISMISSES +DISMISSING +DISMISSION +DISMISSIONS +DISMISSIVE +DISMISSIVELY +DISMOUNT +DISMOUNTED +DISMOUNTING +DISMOUNTS +DISOBEDIENCE +DISOBEDIENCES +DISOBEDIENT +DISOBEDIENTLY +DISOBEY +DISOBEYED +DISOBEYER +DISOBEYERS +DISOBEYING +DISOBEYS +DISOBLIGE +DISOBLIGED +DISOBLIGES +DISOBLIGING +DISOMIC +DISORDER +DISORDERED +DISORDEREDLY +DISORDEREDNESS +DISORDERING +DISORDERLINESS +DISORDERLY +DISORDERS +DISORGANIZATION +DISORGANIZE +DISORGANIZED +DISORGANIZES +DISORGANIZING +DISORIENT +DISORIENTATE +DISORIENTATED +DISORIENTATES +DISORIENTATING +DISORIENTATION +DISORIENTATIONS +DISORIENTED +DISORIENTING +DISORIENTS +DISOWN +DISOWNED +DISOWNING +DISOWNMENT +DISOWNMENTS +DISOWNS +DISPARAGE +DISPARAGED +DISPARAGEMENT +DISPARAGEMENTS +DISPARAGER +DISPARAGERS +DISPARAGES +DISPARAGING +DISPARAGINGLY +DISPARATE +DISPARATELY +DISPARATENESS +DISPARATENESSES +DISPARITIES +DISPARITY +DISPART +DISPARTED +DISPARTING +DISPARTS +DISPASSION +DISPASSIONATE +DISPASSIONATELY +DISPASSIONS +DISPATCH +DISPATCHED +DISPATCHER +DISPATCHERS +DISPATCHES +DISPATCHING +DISPEL +DISPELLED +DISPELLER +DISPELLERS +DISPELLING +DISPELS +DISPEND +DISPENDED +DISPENDING +DISPENDS +DISPENSABILITY +DISPENSABLE +DISPENSARIES +DISPENSARY +DISPENSATION +DISPENSATIONAL +DISPENSATIONS +DISPENSATORIES +DISPENSATORY +DISPENSE +DISPENSED +DISPENSER +DISPENSERS +DISPENSES +DISPENSING +DISPEOPLE +DISPEOPLED +DISPEOPLES +DISPEOPLING +DISPERSAL +DISPERSALS +DISPERSANT +DISPERSANTS +DISPERSE +DISPERSED +DISPERSEDLY +DISPERSER +DISPERSERS +DISPERSES +DISPERSIBLE +DISPERSING +DISPERSION +DISPERSIONS +DISPERSIVE +DISPERSIVELY +DISPERSIVENESS +DISPERSOID +DISPERSOIDS +DISPIRIT +DISPIRITED +DISPIRITEDLY +DISPIRITEDNESS +DISPIRITING +DISPIRITS +DISPITEOUS +DISPLACE +DISPLACEABLE +DISPLACED +DISPLACEMENT +DISPLACEMENTS +DISPLACER +DISPLACERS +DISPLACES +DISPLACING +DISPLANT +DISPLANTED +DISPLANTING +DISPLANTS +DISPLAY +DISPLAYABLE +DISPLAYED +DISPLAYER +DISPLAYERS +DISPLAYING +DISPLAYS +DISPLEASE +DISPLEASED +DISPLEASES +DISPLEASING +DISPLEASURE +DISPLEASURES +DISPLODE +DISPLODED +DISPLODES +DISPLODING +DISPLOSION +DISPLOSIONS +DISPLUME +DISPLUMED +DISPLUMES +DISPLUMING +DISPORT +DISPORTED +DISPORTING +DISPORTMENT +DISPORTMENTS +DISPORTS +DISPOSABILITIES +DISPOSABILITY +DISPOSABLE +DISPOSABLES +DISPOSAL +DISPOSALS +DISPOSE +DISPOSED +DISPOSER +DISPOSERS +DISPOSES +DISPOSING +DISPOSITION +DISPOSITIONAL +DISPOSITIONS +DISPOSITIVE +DISPOSSESS +DISPOSSESSED +DISPOSSESSES +DISPOSSESSING +DISPOSSESSION +DISPOSSESSIONS +DISPOSSESSOR +DISPOSSESSORS +DISPOSURE +DISPOSURES +DISPRAISE +DISPRAISED +DISPRAISER +DISPRAISERS +DISPRAISES +DISPRAISING +DISPRAISINGLY +DISPREAD +DISPREADING +DISPREADS +DISPRIZE +DISPRIZED +DISPRIZES +DISPRIZING +DISPROOF +DISPROOFS +DISPROPORTION +DISPROPORTIONAL +DISPROPORTIONED +DISPROPORTIONS +DISPROVABLE +DISPROVAL +DISPROVALS +DISPROVE +DISPROVED +DISPROVEN +DISPROVER +DISPROVERS +DISPROVES +DISPROVING +DISPUTABLE +DISPUTABLY +DISPUTANT +DISPUTANTS +DISPUTATION +DISPUTATIONS +DISPUTATIOUS +DISPUTATIOUSLY +DISPUTE +DISPUTED +DISPUTER +DISPUTERS +DISPUTES +DISPUTING +DISQUALIFIED +DISQUALIFIES +DISQUALIFY +DISQUALIFYING +DISQUANTITIED +DISQUANTITIES +DISQUANTITY +DISQUANTITYING +DISQUIET +DISQUIETED +DISQUIETING +DISQUIETINGLY +DISQUIETLY +DISQUIETS +DISQUIETUDE +DISQUIETUDES +DISQUISITION +DISQUISITIONS +DISRATE +DISRATED +DISRATES +DISRATING +DISREGARD +DISREGARDED +DISREGARDFUL +DISREGARDING +DISREGARDS +DISRELATED +DISRELATION +DISRELATIONS +DISRELISH +DISRELISHED +DISRELISHES +DISRELISHING +DISREMEMBER +DISREMEMBERED +DISREMEMBERING +DISREMEMBERS +DISREPAIR +DISREPAIRS +DISREPUTABILITY +DISREPUTABLE +DISREPUTABLY +DISREPUTE +DISREPUTES +DISRESPECT +DISRESPECTABLE +DISRESPECTED +DISRESPECTFUL +DISRESPECTFULLY +DISRESPECTING +DISRESPECTS +DISROBE +DISROBED +DISROBER +DISROBERS +DISROBES +DISROBING +DISROOT +DISROOTED +DISROOTING +DISROOTS +DISRUPT +DISRUPTED +DISRUPTER +DISRUPTERS +DISRUPTING +DISRUPTION +DISRUPTIONS +DISRUPTIVE +DISRUPTIVELY +DISRUPTIVENESS +DISRUPTOR +DISRUPTORS +DISRUPTS +DISS +DISSATISFACTION +DISSATISFACTORY +DISSATISFIED +DISSATISFIES +DISSATISFY +DISSATISFYING +DISSAVE +DISSAVED +DISSAVES +DISSAVING +DISSEAT +DISSEATED +DISSEATING +DISSEATS +DISSECT +DISSECTED +DISSECTING +DISSECTION +DISSECTIONS +DISSECTOR +DISSECTORS +DISSECTS +DISSED +DISSEISE +DISSEISED +DISSEISEE +DISSEISEES +DISSEISES +DISSEISIN +DISSEISING +DISSEISINS +DISSEISOR +DISSEISORS +DISSEIZE +DISSEIZED +DISSEIZEE +DISSEIZEES +DISSEIZES +DISSEIZIN +DISSEIZING +DISSEIZINS +DISSEIZOR +DISSEIZORS +DISSEMBLE +DISSEMBLED +DISSEMBLER +DISSEMBLERS +DISSEMBLES +DISSEMBLING +DISSEMINATE +DISSEMINATED +DISSEMINATES +DISSEMINATING +DISSEMINATION +DISSEMINATIONS +DISSEMINATOR +DISSEMINATORS +DISSEMINULE +DISSEMINULES +DISSENSION +DISSENSIONS +DISSENSUS +DISSENSUSES +DISSENT +DISSENTED +DISSENTER +DISSENTERS +DISSENTIENT +DISSENTIENTS +DISSENTING +DISSENTION +DISSENTIONS +DISSENTIOUS +DISSENTS +DISSEPIMENT +DISSEPIMENTS +DISSERT +DISSERTATE +DISSERTATED +DISSERTATES +DISSERTATING +DISSERTATION +DISSERTATIONAL +DISSERTATIONS +DISSERTATOR +DISSERTATORS +DISSERTED +DISSERTING +DISSERTS +DISSERVE +DISSERVED +DISSERVES +DISSERVICE +DISSERVICEABLE +DISSERVICES +DISSERVING +DISSES +DISSEVER +DISSEVERANCE +DISSEVERANCES +DISSEVERED +DISSEVERING +DISSEVERMENT +DISSEVERMENTS +DISSEVERS +DISSIDENCE +DISSIDENCES +DISSIDENT +DISSIDENTS +DISSIMILAR +DISSIMILARITIES +DISSIMILARITY +DISSIMILARLY +DISSIMILARS +DISSIMILATE +DISSIMILATED +DISSIMILATES +DISSIMILATING +DISSIMILATION +DISSIMILATIONS +DISSIMILATORY +DISSIMILITUDE +DISSIMILITUDES +DISSIMULATE +DISSIMULATED +DISSIMULATES +DISSIMULATING +DISSIMULATION +DISSIMULATIONS +DISSIMULATOR +DISSIMULATORS +DISSING +DISSIPATE +DISSIPATED +DISSIPATEDLY +DISSIPATEDNESS +DISSIPATER +DISSIPATERS +DISSIPATES +DISSIPATING +DISSIPATION +DISSIPATIONS +DISSIPATIVE +DISSOCIABILITY +DISSOCIABLE +DISSOCIAL +DISSOCIATE +DISSOCIATED +DISSOCIATES +DISSOCIATING +DISSOCIATION +DISSOCIATIONS +DISSOCIATIVE +DISSOLUBLE +DISSOLUTE +DISSOLUTELY +DISSOLUTENESS +DISSOLUTENESSES +DISSOLUTION +DISSOLUTIONS +DISSOLVABLE +DISSOLVE +DISSOLVED +DISSOLVENT +DISSOLVENTS +DISSOLVER +DISSOLVERS +DISSOLVES +DISSOLVING +DISSONANCE +DISSONANCES +DISSONANT +DISSONANTLY +DISSUADE +DISSUADED +DISSUADER +DISSUADERS +DISSUADES +DISSUADING +DISSUASION +DISSUASIONS +DISSUASIVE +DISSUASIVELY +DISSUASIVENESS +DISSYLLABLE +DISSYLLABLES +DISSYMMETRIC +DISSYMMETRIES +DISSYMMETRY +DISTAFF +DISTAFFS +DISTAIN +DISTAINED +DISTAINING +DISTAINS +DISTAL +DISTALLY +DISTANCE +DISTANCED +DISTANCES +DISTANCING +DISTANT +DISTANTLY +DISTANTNESS +DISTANTNESSES +DISTASTE +DISTASTED +DISTASTEFUL +DISTASTEFULLY +DISTASTEFULNESS +DISTASTES +DISTASTING +DISTAVES +DISTELFINK +DISTELFINKS +DISTEMPER +DISTEMPERATE +DISTEMPERATURE +DISTEMPERATURES +DISTEMPERED +DISTEMPERING +DISTEMPERS +DISTEND +DISTENDED +DISTENDER +DISTENDERS +DISTENDING +DISTENDS +DISTENSIBILITY +DISTENSIBLE +DISTENSION +DISTENSIONS +DISTENT +DISTENTION +DISTENTIONS +DISTICH +DISTICHAL +DISTICHOUS +DISTICHS +DISTIL +DISTILL +DISTILLATE +DISTILLATES +DISTILLATION +DISTILLATIONS +DISTILLED +DISTILLER +DISTILLERIES +DISTILLERS +DISTILLERY +DISTILLING +DISTILLS +DISTILS +DISTINCT +DISTINCTER +DISTINCTEST +DISTINCTION +DISTINCTIONS +DISTINCTIVE +DISTINCTIVELY +DISTINCTIVENESS +DISTINCTLY +DISTINCTNESS +DISTINCTNESSES +DISTINGUE +DISTINGUISH +DISTINGUISHABLE +DISTINGUISHABLY +DISTINGUISHED +DISTINGUISHES +DISTINGUISHING +DISTOME +DISTOMES +DISTORT +DISTORTED +DISTORTER +DISTORTERS +DISTORTING +DISTORTION +DISTORTIONAL +DISTORTIONS +DISTORTS +DISTRACT +DISTRACTABLE +DISTRACTED +DISTRACTEDLY +DISTRACTIBILITY +DISTRACTIBLE +DISTRACTING +DISTRACTINGLY +DISTRACTION +DISTRACTIONS +DISTRACTIVE +DISTRACTS +DISTRAIN +DISTRAINABLE +DISTRAINED +DISTRAINER +DISTRAINERS +DISTRAINING +DISTRAINOR +DISTRAINORS +DISTRAINS +DISTRAINT +DISTRAINTS +DISTRAIT +DISTRAITE +DISTRAUGHT +DISTRAUGHTLY +DISTRESS +DISTRESSED +DISTRESSES +DISTRESSFUL +DISTRESSFULLY +DISTRESSFULNESS +DISTRESSING +DISTRESSINGLY +DISTRIBUTARIES +DISTRIBUTARY +DISTRIBUTE +DISTRIBUTED +DISTRIBUTEE +DISTRIBUTEES +DISTRIBUTES +DISTRIBUTING +DISTRIBUTION +DISTRIBUTIONAL +DISTRIBUTIONS +DISTRIBUTIVE +DISTRIBUTIVELY +DISTRIBUTIVITY +DISTRIBUTOR +DISTRIBUTORS +DISTRICT +DISTRICTED +DISTRICTING +DISTRICTS +DISTRUST +DISTRUSTED +DISTRUSTFUL +DISTRUSTFULLY +DISTRUSTFULNESS +DISTRUSTING +DISTRUSTS +DISTURB +DISTURBANCE +DISTURBANCES +DISTURBED +DISTURBER +DISTURBERS +DISTURBING +DISTURBINGLY +DISTURBS +DISUBSTITUTED +DISULFATE +DISULFATES +DISULFID +DISULFIDE +DISULFIDES +DISULFIDS +DISULFIRAM +DISULFIRAMS +DISULFOTON +DISULFOTONS +DISUNION +DISUNIONIST +DISUNIONISTS +DISUNIONS +DISUNITE +DISUNITED +DISUNITER +DISUNITERS +DISUNITES +DISUNITIES +DISUNITING +DISUNITY +DISUSE +DISUSED +DISUSES +DISUSING +DISUTILITIES +DISUTILITY +DISVALUE +DISVALUED +DISVALUES +DISVALUING +DISYLLABIC +DISYLLABLE +DISYLLABLES +DISYOKE +DISYOKED +DISYOKES +DISYOKING +DIT +DITA +DITAS +DITCH +DITCHDIGGER +DITCHDIGGERS +DITCHED +DITCHER +DITCHERS +DITCHES +DITCHING +DITE +DITES +DITHEISM +DITHEISMS +DITHEIST +DITHEISTS +DITHER +DITHERED +DITHERER +DITHERERS +DITHERING +DITHERS +DITHERY +DITHIOCARBAMATE +DITHIOL +DITHYRAMB +DITHYRAMBIC +DITHYRAMBICALLY +DITHYRAMBS +DITRANSITIVE +DITRANSITIVES +DITS +DITSIER +DITSIEST +DITSINESS +DITSINESSES +DITSY +DITTANIES +DITTANY +DITTIES +DITTO +DITTOED +DITTOING +DITTOS +DITTY +DITZ +DITZES +DITZIER +DITZIEST +DITZINESS +DITZINESSES +DITZY +DIURESES +DIURESIS +DIURETIC +DIURETICALLY +DIURETICS +DIURNAL +DIURNALLY +DIURNALS +DIURON +DIURONS +DIVA +DIVAGATE +DIVAGATED +DIVAGATES +DIVAGATING +DIVAGATION +DIVAGATIONS +DIVALENCE +DIVALENCES +DIVALENT +DIVAN +DIVANS +DIVARICATE +DIVARICATED +DIVARICATES +DIVARICATING +DIVARICATION +DIVARICATIONS +DIVAS +DIVE +DIVEBOMB +DIVEBOMBED +DIVEBOMBING +DIVEBOMBS +DIVED +DIVER +DIVERGE +DIVERGED +DIVERGENCE +DIVERGENCES +DIVERGENCIES +DIVERGENCY +DIVERGENT +DIVERGENTLY +DIVERGES +DIVERGING +DIVERS +DIVERSE +DIVERSELY +DIVERSENESS +DIVERSENESSES +DIVERSIFICATION +DIVERSIFIED +DIVERSIFIER +DIVERSIFIERS +DIVERSIFIES +DIVERSIFY +DIVERSIFYING +DIVERSION +DIVERSIONARY +DIVERSIONIST +DIVERSIONISTS +DIVERSIONS +DIVERSITIES +DIVERSITY +DIVERT +DIVERTED +DIVERTER +DIVERTERS +DIVERTICULA +DIVERTICULAR +DIVERTICULITIS +DIVERTICULOSES +DIVERTICULOSIS +DIVERTICULUM +DIVERTIMENTI +DIVERTIMENTO +DIVERTIMENTOS +DIVERTING +DIVERTISSEMENT +DIVERTISSEMENTS +DIVERTS +DIVES +DIVEST +DIVESTED +DIVESTING +DIVESTITURE +DIVESTITURES +DIVESTMENT +DIVESTMENTS +DIVESTS +DIVESTURE +DIVESTURES +DIVIDABLE +DIVIDE +DIVIDED +DIVIDEDLY +DIVIDEDNESS +DIVIDEDNESSES +DIVIDEND +DIVIDENDLESS +DIVIDENDS +DIVIDER +DIVIDERS +DIVIDES +DIVIDING +DIVIDUAL +DIVINATION +DIVINATIONS +DIVINATORY +DIVINE +DIVINED +DIVINELY +DIVINER +DIVINERS +DIVINES +DIVINEST +DIVING +DIVINING +DIVINISE +DIVINISED +DIVINISES +DIVINISING +DIVINITIES +DIVINITY +DIVINIZE +DIVINIZED +DIVINIZES +DIVINIZING +DIVISIBILITIES +DIVISIBILITY +DIVISIBLE +DIVISIBLY +DIVISION +DIVISIONAL +DIVISIONISM +DIVISIONISMS +DIVISIONIST +DIVISIONISTS +DIVISIONS +DIVISIVE +DIVISIVELY +DIVISIVENESS +DIVISIVENESSES +DIVISOR +DIVISORS +DIVORCE +DIVORCED +DIVORCEE +DIVORCEES +DIVORCEMENT +DIVORCEMENTS +DIVORCER +DIVORCERS +DIVORCES +DIVORCING +DIVORCIVE +DIVOT +DIVOTS +DIVULGATE +DIVULGATED +DIVULGATES +DIVULGATING +DIVULGE +DIVULGED +DIVULGENCE +DIVULGENCES +DIVULGER +DIVULGERS +DIVULGES +DIVULGING +DIVULSE +DIVULSED +DIVULSES +DIVULSING +DIVULSION +DIVULSIONS +DIVULSIVE +DIVVIED +DIVVIES +DIVVY +DIVVYING +DIWAN +DIWANS +DIXIT +DIXITS +DIZEN +DIZENED +DIZENING +DIZENMENT +DIZENMENTS +DIZENS +DIZYGOTIC +DIZYGOUS +DIZZIED +DIZZIER +DIZZIES +DIZZIEST +DIZZILY +DIZZINESS +DIZZINESSES +DIZZY +DIZZYING +DIZZYINGLY +DJEBEL +DJEBELS +DJELLABA +DJELLABAH +DJELLABAHS +DJELLABAS +DJIN +DJINN +DJINNI +DJINNS +DJINNY +DJINS +DO +DOABLE +DOAT +DOATED +DOATING +DOATS +DOBBER +DOBBERS +DOBBIES +DOBBIN +DOBBINS +DOBBY +DOBIE +DOBIES +DOBLA +DOBLAS +DOBLON +DOBLONES +DOBLONS +DOBRA +DOBRAS +DOBRO +DOBROS +DOBSON +DOBSONFLIES +DOBSONFLY +DOBSONS +DOBY +DOC +DOCENT +DOCENTS +DOCETIC +DOCILE +DOCILELY +DOCILITIES +DOCILITY +DOCK +DOCKAGE +DOCKAGES +DOCKED +DOCKER +DOCKERS +DOCKET +DOCKETED +DOCKETING +DOCKETS +DOCKHAND +DOCKHANDS +DOCKING +DOCKLAND +DOCKLANDS +DOCKMASTER +DOCKMASTERS +DOCKS +DOCKSIDE +DOCKSIDES +DOCKWORKER +DOCKWORKERS +DOCKYARD +DOCKYARDS +DOCS +DOCTOR +DOCTORAL +DOCTORATE +DOCTORATES +DOCTORED +DOCTORIAL +DOCTORING +DOCTORLESS +DOCTORLY +DOCTORS +DOCTORSHIP +DOCTORSHIPS +DOCTRINAIRE +DOCTRINAIRES +DOCTRINAIRISM +DOCTRINAIRISMS +DOCTRINAL +DOCTRINALLY +DOCTRINE +DOCTRINES +DOCUDRAMA +DOCUDRAMAS +DOCUMENT +DOCUMENTABLE +DOCUMENTAL +DOCUMENTALIST +DOCUMENTALISTS +DOCUMENTARIAN +DOCUMENTARIANS +DOCUMENTARIES +DOCUMENTARILY +DOCUMENTARIST +DOCUMENTARISTS +DOCUMENTARY +DOCUMENTATION +DOCUMENTATIONAL +DOCUMENTATIONS +DOCUMENTED +DOCUMENTER +DOCUMENTERS +DOCUMENTING +DOCUMENTS +DODDER +DODDERED +DODDERER +DODDERERS +DODDERING +DODDERS +DODDERY +DODECAGON +DODECAGONS +DODECAHEDRA +DODECAHEDRAL +DODECAHEDRON +DODECAHEDRONS +DODECAPHONIC +DODECAPHONIES +DODECAPHONIST +DODECAPHONISTS +DODECAPHONY +DODGE +DODGEBALL +DODGEBALLS +DODGED +DODGEM +DODGEMS +DODGER +DODGERIES +DODGERS +DODGERY +DODGES +DODGIER +DODGIEST +DODGINESS +DODGINESSES +DODGING +DODGY +DODO +DODOES +DODOISM +DODOISMS +DODOS +DOE +DOER +DOERS +DOES +DOESKIN +DOESKINS +DOEST +DOETH +DOFF +DOFFED +DOFFER +DOFFERS +DOFFING +DOFFS +DOG +DOGBANE +DOGBANES +DOGBERRIES +DOGBERRY +DOGCART +DOGCARTS +DOGCATCHER +DOGCATCHERS +DOGDOM +DOGDOMS +DOGE +DOGEAR +DOGEARED +DOGEARING +DOGEARS +DOGEDOM +DOGEDOMS +DOGES +DOGESHIP +DOGESHIPS +DOGEY +DOGEYS +DOGFACE +DOGFACES +DOGFIGHT +DOGFIGHTING +DOGFIGHTS +DOGFISH +DOGFISHES +DOGFOUGHT +DOGGED +DOGGEDLY +DOGGEDNESS +DOGGEDNESSES +DOGGER +DOGGEREL +DOGGERELS +DOGGERIES +DOGGERS +DOGGERY +DOGGIE +DOGGIER +DOGGIES +DOGGIEST +DOGGING +DOGGISH +DOGGISHLY +DOGGISHNESS +DOGGISHNESSES +DOGGO +DOGGONE +DOGGONED +DOGGONEDER +DOGGONEDEST +DOGGONER +DOGGONES +DOGGONEST +DOGGONING +DOGGREL +DOGGRELS +DOGGY +DOGHANGED +DOGHOUSE +DOGHOUSES +DOGIE +DOGIES +DOGLEG +DOGLEGGED +DOGLEGGING +DOGLEGS +DOGLIKE +DOGMA +DOGMAS +DOGMATA +DOGMATIC +DOGMATICAL +DOGMATICALLY +DOGMATICALNESS +DOGMATICS +DOGMATISM +DOGMATISMS +DOGMATIST +DOGMATISTS +DOGMATIZATION +DOGMATIZATIONS +DOGMATIZE +DOGMATIZED +DOGMATIZER +DOGMATIZERS +DOGMATIZES +DOGMATIZING +DOGNAP +DOGNAPED +DOGNAPER +DOGNAPERS +DOGNAPING +DOGNAPPED +DOGNAPPER +DOGNAPPERS +DOGNAPPING +DOGNAPS +DOGROBBER +DOGROBBERS +DOGS +DOGSBODIES +DOGSBODY +DOGSLED +DOGSLEDDED +DOGSLEDDER +DOGSLEDDERS +DOGSLEDDING +DOGSLEDS +DOGTEETH +DOGTOOTH +DOGTROT +DOGTROTS +DOGTROTTED +DOGTROTTING +DOGVANE +DOGVANES +DOGWATCH +DOGWATCHES +DOGWOOD +DOGWOODS +DOGY +DOILED +DOILIES +DOILY +DOING +DOINGS +DOIT +DOITED +DOITS +DOJO +DOJOS +DOL +DOLABRATE +DOLCE +DOLCETTO +DOLCETTOS +DOLCI +DOLDRUMS +DOLE +DOLED +DOLEFUL +DOLEFULLER +DOLEFULLEST +DOLEFULLY +DOLEFULNESS +DOLEFULNESSES +DOLERITE +DOLERITES +DOLERITIC +DOLES +DOLESOME +DOLICHOCEPHALIC +DOLICHOCEPHALY +DOLING +DOLL +DOLLAR +DOLLARIZE +DOLLARIZED +DOLLARIZES +DOLLARIZING +DOLLARS +DOLLED +DOLLHOUSE +DOLLHOUSES +DOLLIED +DOLLIES +DOLLING +DOLLISH +DOLLISHLY +DOLLISHNESS +DOLLISHNESSES +DOLLOP +DOLLOPED +DOLLOPING +DOLLOPS +DOLLS +DOLLY +DOLLYBIRD +DOLLYBIRDS +DOLLYING +DOLMA +DOLMADES +DOLMAN +DOLMANS +DOLMAS +DOLMEN +DOLMENIC +DOLMENS +DOLOMITE +DOLOMITES +DOLOMITIC +DOLOMITIZATION +DOLOMITIZATIONS +DOLOMITIZE +DOLOMITIZED +DOLOMITIZES +DOLOMITIZING +DOLOR +DOLOROSO +DOLOROUS +DOLOROUSLY +DOLOROUSNESS +DOLOROUSNESSES +DOLORS +DOLOUR +DOLOURS +DOLPHIN +DOLPHINFISH +DOLPHINFISHES +DOLPHINS +DOLS +DOLT +DOLTISH +DOLTISHLY +DOLTISHNESS +DOLTISHNESSES +DOLTS +DOM +DOMAIN +DOMAINE +DOMAINES +DOMAINS +DOMAL +DOME +DOMED +DOMELIKE +DOMES +DOMESDAY +DOMESDAYS +DOMESTIC +DOMESTICALLY +DOMESTICATE +DOMESTICATED +DOMESTICATES +DOMESTICATING +DOMESTICATION +DOMESTICATIONS +DOMESTICITIES +DOMESTICITY +DOMESTICS +DOMIC +DOMICAL +DOMICALLY +DOMICIL +DOMICILE +DOMICILED +DOMICILES +DOMICILIARY +DOMICILIATE +DOMICILIATED +DOMICILIATES +DOMICILIATING +DOMICILIATION +DOMICILIATIONS +DOMICILING +DOMICILS +DOMINANCE +DOMINANCES +DOMINANCIES +DOMINANCY +DOMINANT +DOMINANTLY +DOMINANTS +DOMINATE +DOMINATED +DOMINATES +DOMINATING +DOMINATION +DOMINATIONS +DOMINATIVE +DOMINATOR +DOMINATORS +DOMINATRICES +DOMINATRIX +DOMINE +DOMINEER +DOMINEERED +DOMINEERING +DOMINEERINGLY +DOMINEERINGNESS +DOMINEERS +DOMINES +DOMING +DOMINICAL +DOMINICK +DOMINICKER +DOMINICKERS +DOMINICKS +DOMINIE +DOMINIES +DOMINION +DOMINIONS +DOMINIQUE +DOMINIQUES +DOMINIUM +DOMINIUMS +DOMINO +DOMINOES +DOMINOS +DOMS +DON +DONA +DONAS +DONATE +DONATED +DONATES +DONATING +DONATION +DONATIONS +DONATIVE +DONATIVES +DONATOR +DONATORS +DONE +DONEE +DONEES +DONENESS +DONENESSES +DONG +DONGA +DONGAS +DONGLE +DONGLES +DONGOLA +DONGOLAS +DONGS +DONJON +DONJONS +DONKEY +DONKEYS +DONKEYWORK +DONKEYWORKS +DONNA +DONNAS +DONNE +DONNED +DONNEE +DONNEES +DONNERD +DONNERED +DONNERT +DONNICKER +DONNICKERS +DONNIKER +DONNIKERS +DONNING +DONNISH +DONNISHLY +DONNISHNESS +DONNISHNESSES +DONNYBROOK +DONNYBROOKS +DONOR +DONORS +DONORSHIP +DONORSHIPS +DONS +DONSIE +DONSY +DONUT +DONUTS +DONZEL +DONZELS +DOOBIE +DOOBIES +DOODAD +DOODADS +DOODIES +DOODLE +DOODLEBUG +DOODLEBUGS +DOODLED +DOODLER +DOODLERS +DOODLES +DOODLING +DOODOO +DOODOOS +DOODY +DOOFUS +DOOFUSES +DOOHICKEY +DOOHICKEYS +DOOHICKIES +DOOLEE +DOOLEES +DOOLIE +DOOLIES +DOOLY +DOOM +DOOMED +DOOMFUL +DOOMFULLY +DOOMIER +DOOMIEST +DOOMILY +DOOMING +DOOMS +DOOMSAYER +DOOMSAYERS +DOOMSAYING +DOOMSAYINGS +DOOMSDAY +DOOMSDAYER +DOOMSDAYERS +DOOMSDAYS +DOOMSTER +DOOMSTERS +DOOMY +DOOR +DOORBELL +DOORBELLS +DOORJAMB +DOORJAMBS +DOORKEEPER +DOORKEEPERS +DOORKNOB +DOORKNOBS +DOORLESS +DOORMAN +DOORMAT +DOORMATS +DOORMEN +DOORNAIL +DOORNAILS +DOORPLATE +DOORPLATES +DOORPOST +DOORPOSTS +DOORS +DOORSILL +DOORSILLS +DOORSTEP +DOORSTEPS +DOORSTOP +DOORSTOPS +DOORWAY +DOORWAYS +DOORWOMAN +DOORWOMEN +DOORYARD +DOORYARDS +DOOWOP +DOOWOPS +DOOZER +DOOZERS +DOOZIE +DOOZIES +DOOZY +DOPA +DOPAMINE +DOPAMINERGIC +DOPAMINES +DOPANT +DOPANTS +DOPAS +DOPE +DOPED +DOPEHEAD +DOPEHEADS +DOPER +DOPERS +DOPES +DOPESHEET +DOPESHEETS +DOPESTER +DOPESTERS +DOPEY +DOPEYNESS +DOPEYNESSES +DOPIER +DOPIEST +DOPILY +DOPINESS +DOPINESSES +DOPING +DOPINGS +DOPPELGANGER +DOPPELGANGERS +DOPY +DOR +DORADO +DORADOS +DORBEETLE +DORBEETLES +DORBUG +DORBUGS +DORE +DORHAWK +DORHAWKS +DORIES +DORK +DORKIER +DORKIEST +DORKINESS +DORKINESSES +DORKS +DORKY +DORM +DORMANCIES +DORMANCY +DORMANT +DORMER +DORMERED +DORMERS +DORMICE +DORMIE +DORMIENT +DORMIN +DORMINS +DORMITORIES +DORMITORY +DORMOUSE +DORMS +DORMY +DORNECK +DORNECKS +DORNICK +DORNICKS +DORNOCK +DORNOCKS +DORONICUM +DORONICUMS +DORP +DORPER +DORPERS +DORPS +DORR +DORRS +DORS +DORSA +DORSAD +DORSAL +DORSALLY +DORSALS +DORSEL +DORSELS +DORSER +DORSERS +DORSIVENTRAL +DORSIVENTRALITY +DORSIVENTRALLY +DORSOLATERAL +DORSOVENTRAL +DORSOVENTRALITY +DORSOVENTRALLY +DORSUM +DORTY +DORY +DOS +DOSAGE +DOSAGES +DOSE +DOSED +DOSER +DOSERS +DOSES +DOSIMETER +DOSIMETERS +DOSIMETRIC +DOSIMETRIES +DOSIMETRY +DOSING +DOSS +DOSSAL +DOSSALS +DOSSED +DOSSEL +DOSSELS +DOSSER +DOSSERET +DOSSERETS +DOSSERS +DOSSES +DOSSHOUSE +DOSSHOUSES +DOSSIER +DOSSIERS +DOSSIL +DOSSILS +DOSSING +DOST +DOT +DOTAGE +DOTAGES +DOTAL +DOTARD +DOTARDLY +DOTARDS +DOTATION +DOTATIONS +DOTE +DOTED +DOTER +DOTERS +DOTES +DOTH +DOTIER +DOTIEST +DOTING +DOTINGLY +DOTS +DOTTED +DOTTEL +DOTTELS +DOTTER +DOTTEREL +DOTTERELS +DOTTERS +DOTTIER +DOTTIEST +DOTTILY +DOTTINESS +DOTTINESSES +DOTTING +DOTTLE +DOTTLES +DOTTREL +DOTTRELS +DOTTY +DOTY +DOUBLE +DOUBLED +DOUBLEHEADER +DOUBLEHEADERS +DOUBLENESS +DOUBLENESSES +DOUBLER +DOUBLERS +DOUBLES +DOUBLESPEAK +DOUBLESPEAKER +DOUBLESPEAKERS +DOUBLESPEAKS +DOUBLET +DOUBLETHINK +DOUBLETHINKS +DOUBLETON +DOUBLETONS +DOUBLETS +DOUBLING +DOUBLOON +DOUBLOONS +DOUBLURE +DOUBLURES +DOUBLY +DOUBT +DOUBTABLE +DOUBTED +DOUBTER +DOUBTERS +DOUBTFUL +DOUBTFULLY +DOUBTFULNESS +DOUBTFULNESSES +DOUBTING +DOUBTINGLY +DOUBTLESS +DOUBTLESSLY +DOUBTLESSNESS +DOUBTLESSNESSES +DOUBTS +DOUCE +DOUCELY +DOUCEUR +DOUCEURS +DOUCHE +DOUCHEBAG +DOUCHEBAGS +DOUCHED +DOUCHES +DOUCHING +DOUGH +DOUGHBOY +DOUGHBOYS +DOUGHFACE +DOUGHFACES +DOUGHIER +DOUGHIEST +DOUGHLIKE +DOUGHNUT +DOUGHNUTLIKE +DOUGHNUTS +DOUGHS +DOUGHT +DOUGHTIER +DOUGHTIEST +DOUGHTILY +DOUGHTINESS +DOUGHTINESSES +DOUGHTY +DOUGHY +DOULA +DOULAS +DOUM +DOUMA +DOUMAS +DOUMS +DOUPIONI +DOUPIONIS +DOUPPIONI +DOUPPIONIS +DOUR +DOURA +DOURAH +DOURAHS +DOURAS +DOURER +DOUREST +DOURINE +DOURINES +DOURLY +DOURNESS +DOURNESSES +DOUROUCOULI +DOUROUCOULIS +DOUSE +DOUSED +DOUSER +DOUSERS +DOUSES +DOUSING +DOUX +DOUZEPER +DOUZEPERS +DOVE +DOVECOT +DOVECOTE +DOVECOTES +DOVECOTS +DOVEKEY +DOVEKEYS +DOVEKIE +DOVEKIES +DOVELIKE +DOVEN +DOVENED +DOVENING +DOVENS +DOVES +DOVETAIL +DOVETAILED +DOVETAILING +DOVETAILS +DOVISH +DOVISHNESS +DOVISHNESSES +DOW +DOWABLE +DOWAGER +DOWAGERS +DOWDIER +DOWDIES +DOWDIEST +DOWDILY +DOWDINESS +DOWDINESSES +DOWDY +DOWDYISH +DOWED +DOWEL +DOWELED +DOWELING +DOWELLED +DOWELLING +DOWELS +DOWER +DOWERED +DOWERIES +DOWERING +DOWERLESS +DOWERS +DOWERY +DOWIE +DOWING +DOWITCHER +DOWITCHERS +DOWN +DOWNBEAT +DOWNBEATS +DOWNBOW +DOWNBOWS +DOWNBURST +DOWNBURSTS +DOWNCAST +DOWNCASTS +DOWNCOME +DOWNCOMES +DOWNCOURT +DOWNDRAFT +DOWNDRAFTS +DOWNED +DOWNER +DOWNERS +DOWNFALL +DOWNFALLEN +DOWNFALLS +DOWNFIELD +DOWNFORCE +DOWNFORCES +DOWNGRADE +DOWNGRADED +DOWNGRADES +DOWNGRADING +DOWNHAUL +DOWNHAULS +DOWNHEARTED +DOWNHEARTEDLY +DOWNHEARTEDNESS +DOWNHILL +DOWNHILLER +DOWNHILLERS +DOWNHILLS +DOWNIER +DOWNIEST +DOWNINESS +DOWNINESSES +DOWNING +DOWNLAND +DOWNLANDS +DOWNLESS +DOWNLIGHT +DOWNLIGHTS +DOWNLIKE +DOWNLINK +DOWNLINKED +DOWNLINKING +DOWNLINKS +DOWNLOAD +DOWNLOADABLE +DOWNLOADED +DOWNLOADING +DOWNLOADS +DOWNPIPE +DOWNPIPES +DOWNPLAY +DOWNPLAYED +DOWNPLAYING +DOWNPLAYS +DOWNPOUR +DOWNPOURS +DOWNRANGE +DOWNRIGHT +DOWNRIGHTLY +DOWNRIGHTNESS +DOWNRIGHTNESSES +DOWNRIVER +DOWNS +DOWNSCALE +DOWNSCALED +DOWNSCALES +DOWNSCALING +DOWNSHIFT +DOWNSHIFTED +DOWNSHIFTING +DOWNSHIFTS +DOWNSIDE +DOWNSIDES +DOWNSIZE +DOWNSIZED +DOWNSIZES +DOWNSIZING +DOWNSLIDE +DOWNSLIDES +DOWNSLOPE +DOWNSPIN +DOWNSPINS +DOWNSPOUT +DOWNSPOUTS +DOWNSTAGE +DOWNSTAGES +DOWNSTAIR +DOWNSTAIRS +DOWNSTATE +DOWNSTATER +DOWNSTATERS +DOWNSTATES +DOWNSTREAM +DOWNSTROKE +DOWNSTROKES +DOWNSWING +DOWNSWINGS +DOWNTHROW +DOWNTHROWS +DOWNTICK +DOWNTICKS +DOWNTIME +DOWNTIMES +DOWNTOWN +DOWNTOWNER +DOWNTOWNERS +DOWNTOWNS +DOWNTREND +DOWNTRENDED +DOWNTRENDING +DOWNTRENDS +DOWNTROD +DOWNTRODDEN +DOWNTURN +DOWNTURNS +DOWNWARD +DOWNWARDLY +DOWNWARDNESS +DOWNWARDNESSES +DOWNWARDS +DOWNWASH +DOWNWASHES +DOWNWIND +DOWNY +DOWNZONE +DOWNZONED +DOWNZONES +DOWNZONING +DOWRIES +DOWRY +DOWS +DOWSABEL +DOWSABELS +DOWSE +DOWSED +DOWSER +DOWSERS +DOWSES +DOWSING +DOXIE +DOXIES +DOXOLOGIES +DOXOLOGY +DOXORUBICIN +DOXORUBICINS +DOXY +DOXYCYCLINE +DOXYCYCLINES +DOYEN +DOYENNE +DOYENNES +DOYENS +DOYLEY +DOYLEYS +DOYLIES +DOYLY +DOZE +DOZED +DOZEN +DOZENED +DOZENING +DOZENS +DOZENTH +DOZENTHS +DOZER +DOZERS +DOZES +DOZIER +DOZIEST +DOZILY +DOZINESS +DOZINESSES +DOZING +DOZY +DRAB +DRABBED +DRABBER +DRABBEST +DRABBET +DRABBETS +DRABBING +DRABBLE +DRABBLED +DRABBLES +DRABBLING +DRABLY +DRABNESS +DRABNESSES +DRABS +DRACAENA +DRACAENAS +DRACENA +DRACENAS +DRACHM +DRACHMA +DRACHMAE +DRACHMAI +DRACHMAS +DRACHMS +DRACONIAN +DRACONIC +DRAFF +DRAFFIER +DRAFFIEST +DRAFFISH +DRAFFS +DRAFFY +DRAFT +DRAFTABLE +DRAFTED +DRAFTEE +DRAFTEES +DRAFTER +DRAFTERS +DRAFTIER +DRAFTIEST +DRAFTILY +DRAFTINESS +DRAFTINESSES +DRAFTING +DRAFTINGS +DRAFTS +DRAFTSMAN +DRAFTSMANSHIP +DRAFTSMANSHIPS +DRAFTSMEN +DRAFTSPERSON +DRAFTSPERSONS +DRAFTY +DRAG +DRAGEE +DRAGEES +DRAGGED +DRAGGER +DRAGGERS +DRAGGIER +DRAGGIEST +DRAGGING +DRAGGINGLY +DRAGGLE +DRAGGLED +DRAGGLES +DRAGGLING +DRAGGY +DRAGLINE +DRAGLINES +DRAGNET +DRAGNETS +DRAGOMAN +DRAGOMANS +DRAGOMEN +DRAGON +DRAGONET +DRAGONETS +DRAGONFLIES +DRAGONFLY +DRAGONHEAD +DRAGONHEADS +DRAGONISH +DRAGONS +DRAGOON +DRAGOONED +DRAGOONING +DRAGOONS +DRAGROPE +DRAGROPES +DRAGS +DRAGSTER +DRAGSTERS +DRAGSTRIP +DRAGSTRIPS +DRAIL +DRAILS +DRAIN +DRAINABLE +DRAINAGE +DRAINAGES +DRAINED +DRAINER +DRAINERS +DRAINING +DRAINPIPE +DRAINPIPES +DRAINS +DRAKE +DRAKES +DRAM +DRAMA +DRAMADIES +DRAMADY +DRAMAS +DRAMATIC +DRAMATICALLY +DRAMATICS +DRAMATISATION +DRAMATISATIONS +DRAMATISE +DRAMATISED +DRAMATISES +DRAMATISING +DRAMATIST +DRAMATISTS +DRAMATIZABLE +DRAMATIZATION +DRAMATIZATIONS +DRAMATIZE +DRAMATIZED +DRAMATIZES +DRAMATIZING +DRAMATURG +DRAMATURGE +DRAMATURGES +DRAMATURGIC +DRAMATURGICAL +DRAMATURGICALLY +DRAMATURGIES +DRAMATURGY +DRAMEDIES +DRAMEDY +DRAMMED +DRAMMING +DRAMMOCK +DRAMMOCKS +DRAMS +DRAMSHOP +DRAMSHOPS +DRANK +DRAPABILITIES +DRAPABILITY +DRAPABLE +DRAPE +DRAPEABILITIES +DRAPEABILITY +DRAPEABLE +DRAPED +DRAPER +DRAPERIED +DRAPERIES +DRAPERS +DRAPERY +DRAPES +DRAPEY +DRAPING +DRASTIC +DRASTICALLY +DRAT +DRATS +DRATTED +DRATTING +DRAUGHT +DRAUGHTED +DRAUGHTIER +DRAUGHTIEST +DRAUGHTING +DRAUGHTS +DRAUGHTSMAN +DRAUGHTSMEN +DRAUGHTY +DRAVE +DRAW +DRAWABLE +DRAWBACK +DRAWBACKS +DRAWBAR +DRAWBARS +DRAWBORE +DRAWBORES +DRAWBRIDGE +DRAWBRIDGES +DRAWDOWN +DRAWDOWNS +DRAWEE +DRAWEES +DRAWER +DRAWERFUL +DRAWERFULS +DRAWERS +DRAWING +DRAWINGS +DRAWKNIFE +DRAWKNIVES +DRAWL +DRAWLED +DRAWLER +DRAWLERS +DRAWLIER +DRAWLIEST +DRAWLING +DRAWLINGLY +DRAWLS +DRAWLY +DRAWN +DRAWNWORK +DRAWNWORKS +DRAWPLATE +DRAWPLATES +DRAWS +DRAWSHAVE +DRAWSHAVES +DRAWSTRING +DRAWSTRINGS +DRAWTUBE +DRAWTUBES +DRAY +DRAYAGE +DRAYAGES +DRAYED +DRAYING +DRAYMAN +DRAYMEN +DRAYS +DREAD +DREADED +DREADFUL +DREADFULLY +DREADFULNESS +DREADFULNESSES +DREADFULS +DREADING +DREADLOCK +DREADLOCKS +DREADNOUGHT +DREADNOUGHTS +DREADS +DREAM +DREAMBOAT +DREAMBOATS +DREAMED +DREAMER +DREAMERS +DREAMFUL +DREAMFULLY +DREAMFULNESS +DREAMFULNESSES +DREAMIER +DREAMIEST +DREAMILY +DREAMINESS +DREAMINESSES +DREAMING +DREAMLAND +DREAMLANDS +DREAMLESS +DREAMLESSLY +DREAMLESSNESS +DREAMLESSNESSES +DREAMLIKE +DREAMS +DREAMT +DREAMTIME +DREAMTIMES +DREAMWORLD +DREAMWORLDS +DREAMY +DREAR +DREARIER +DREARIES +DREARIEST +DREARILY +DREARINESS +DREARINESSES +DREARS +DREARY +DRECK +DRECKS +DRECKY +DREDGE +DREDGED +DREDGER +DREDGERS +DREDGES +DREDGING +DREDGINGS +DREE +DREED +DREEING +DREES +DREG +DREGGIER +DREGGIEST +DREGGISH +DREGGY +DREGS +DREICH +DREIDEL +DREIDELS +DREIDL +DREIDLS +DREIGH +DREK +DREKS +DRENCH +DRENCHED +DRENCHER +DRENCHERS +DRENCHES +DRENCHING +DRESS +DRESSAGE +DRESSAGES +DRESSED +DRESSER +DRESSERS +DRESSES +DRESSIER +DRESSIEST +DRESSILY +DRESSINESS +DRESSINESSES +DRESSING +DRESSINGS +DRESSMAKER +DRESSMAKERS +DRESSMAKING +DRESSMAKINGS +DRESSY +DREST +DREW +DRIB +DRIBBED +DRIBBING +DRIBBLE +DRIBBLED +DRIBBLER +DRIBBLERS +DRIBBLES +DRIBBLET +DRIBBLETS +DRIBBLING +DRIBBLY +DRIBLET +DRIBLETS +DRIBS +DRIED +DRIEGH +DRIER +DRIERS +DRIES +DRIEST +DRIFT +DRIFTAGE +DRIFTAGES +DRIFTED +DRIFTER +DRIFTERS +DRIFTIER +DRIFTIEST +DRIFTING +DRIFTINGLY +DRIFTPIN +DRIFTPINS +DRIFTS +DRIFTWOOD +DRIFTWOODS +DRIFTY +DRILL +DRILLABILITIES +DRILLABILITY +DRILLABLE +DRILLED +DRILLER +DRILLERS +DRILLING +DRILLINGS +DRILLMASTER +DRILLMASTERS +DRILLS +DRILY +DRINK +DRINKABILITIES +DRINKABILITY +DRINKABLE +DRINKABLES +DRINKABLY +DRINKER +DRINKERS +DRINKING +DRINKINGS +DRINKS +DRIP +DRIPLESS +DRIPPED +DRIPPER +DRIPPERS +DRIPPIER +DRIPPIEST +DRIPPILY +DRIPPING +DRIPPINGS +DRIPPY +DRIPS +DRIPSTONE +DRIPSTONES +DRIPT +DRIVABILITIES +DRIVABILITY +DRIVABLE +DRIVE +DRIVEABILITIES +DRIVEABILITY +DRIVEABLE +DRIVEL +DRIVELED +DRIVELER +DRIVELERS +DRIVELINE +DRIVELINES +DRIVELING +DRIVELLED +DRIVELLER +DRIVELLERS +DRIVELLING +DRIVELS +DRIVEN +DRIVENNESS +DRIVENNESSES +DRIVER +DRIVERLESS +DRIVERS +DRIVES +DRIVESHAFT +DRIVESHAFTS +DRIVETRAIN +DRIVETRAINS +DRIVEWAY +DRIVEWAYS +DRIVING +DRIVINGLY +DRIVINGS +DRIZZLE +DRIZZLED +DRIZZLES +DRIZZLIER +DRIZZLIEST +DRIZZLING +DRIZZLINGLY +DRIZZLY +DROGUE +DROGUES +DROID +DROIDS +DROIT +DROITS +DROLL +DROLLED +DROLLER +DROLLERIES +DROLLERY +DROLLEST +DROLLING +DROLLNESS +DROLLNESSES +DROLLS +DROLLY +DROMEDARIES +DROMEDARY +DROMON +DROMOND +DROMONDS +DROMONS +DRONE +DRONED +DRONER +DRONERS +DRONES +DRONGO +DRONGOS +DRONING +DRONINGLY +DRONISH +DROOL +DROOLED +DROOLIER +DROOLIEST +DROOLING +DROOLS +DROOLY +DROOP +DROOPED +DROOPIER +DROOPIEST +DROOPILY +DROOPING +DROOPINGLY +DROOPS +DROOPY +DROP +DROPCLOTH +DROPCLOTHS +DROPFORGE +DROPFORGED +DROPFORGES +DROPFORGING +DROPHEAD +DROPHEADS +DROPKICK +DROPKICKER +DROPKICKERS +DROPKICKS +DROPLET +DROPLETS +DROPLIGHT +DROPLIGHTS +DROPOUT +DROPOUTS +DROPPABLE +DROPPED +DROPPER +DROPPERFUL +DROPPERFULS +DROPPERS +DROPPERSFUL +DROPPING +DROPPINGS +DROPS +DROPSHOT +DROPSHOTS +DROPSICAL +DROPSIED +DROPSIES +DROPSONDE +DROPSONDES +DROPSY +DROPT +DROPWORT +DROPWORTS +DROSERA +DROSERAS +DROSHKIES +DROSHKY +DROSKIES +DROSKY +DROSOPHILA +DROSOPHILAS +DROSS +DROSSES +DROSSIER +DROSSIEST +DROSSY +DROUGHT +DROUGHTIER +DROUGHTIEST +DROUGHTINESS +DROUGHTINESSES +DROUGHTS +DROUGHTY +DROUK +DROUKED +DROUKING +DROUKS +DROUTH +DROUTHIER +DROUTHIEST +DROUTHS +DROUTHY +DROVE +DROVED +DROVER +DROVERS +DROVES +DROVING +DROWN +DROWND +DROWNDED +DROWNDING +DROWNDS +DROWNED +DROWNER +DROWNERS +DROWNING +DROWNS +DROWSE +DROWSED +DROWSES +DROWSIER +DROWSIEST +DROWSILY +DROWSINESS +DROWSINESSES +DROWSING +DROWSY +DRUB +DRUBBED +DRUBBER +DRUBBERS +DRUBBING +DRUBBINGS +DRUBS +DRUDGE +DRUDGED +DRUDGER +DRUDGERIES +DRUDGERS +DRUDGERY +DRUDGES +DRUDGING +DRUDGINGLY +DRUG +DRUGGED +DRUGGET +DRUGGETS +DRUGGIE +DRUGGIER +DRUGGIES +DRUGGIEST +DRUGGING +DRUGGIST +DRUGGISTS +DRUGGY +DRUGMAKER +DRUGMAKERS +DRUGS +DRUGSTORE +DRUGSTORES +DRUID +DRUIDESS +DRUIDESSES +DRUIDIC +DRUIDICAL +DRUIDISM +DRUIDISMS +DRUIDS +DRUM +DRUMBEAT +DRUMBEATER +DRUMBEATERS +DRUMBEATING +DRUMBEATINGS +DRUMBEATS +DRUMBLE +DRUMBLED +DRUMBLES +DRUMBLING +DRUMFIRE +DRUMFIRES +DRUMFISH +DRUMFISHES +DRUMHEAD +DRUMHEADS +DRUMLIER +DRUMLIEST +DRUMLIKE +DRUMLIN +DRUMLINS +DRUMLY +DRUMMED +DRUMMER +DRUMMERS +DRUMMING +DRUMROLL +DRUMROLLS +DRUMS +DRUMSTICK +DRUMSTICKS +DRUNK +DRUNKARD +DRUNKARDS +DRUNKEN +DRUNKENLY +DRUNKENNESS +DRUNKENNESSES +DRUNKER +DRUNKEST +DRUNKS +DRUPACEOUS +DRUPE +DRUPELET +DRUPELETS +DRUPES +DRUSE +DRUSES +DRUTHERS +DRY +DRYABLE +DRYAD +DRYADES +DRYADIC +DRYADS +DRYASDUST +DRYASDUSTS +DRYER +DRYERS +DRYEST +DRYING +DRYISH +DRYLAND +DRYLOT +DRYLOTS +DRYLY +DRYNESS +DRYNESSES +DRYOPITHECINE +DRYOPITHECINES +DRYPOINT +DRYPOINTS +DRYS +DRYSALTER +DRYSALTERIES +DRYSALTERS +DRYSALTERY +DRYSTONE +DRYWALL +DRYWALLED +DRYWALLING +DRYWALLS +DRYWELL +DRYWELLS +DUAD +DUADS +DUAL +DUALISM +DUALISMS +DUALIST +DUALISTIC +DUALISTICALLY +DUALISTS +DUALITIES +DUALITY +DUALIZE +DUALIZED +DUALIZES +DUALIZING +DUALLY +DUALS +DUB +DUBBED +DUBBER +DUBBERS +DUBBIN +DUBBING +DUBBINGS +DUBBINS +DUBIETIES +DUBIETY +DUBIOSITIES +DUBIOSITY +DUBIOUS +DUBIOUSLY +DUBIOUSNESS +DUBIOUSNESSES +DUBITABLE +DUBITABLY +DUBITATION +DUBITATIONS +DUBNIUM +DUBNIUMS +DUBONNET +DUBONNETS +DUBS +DUCAL +DUCALLY +DUCAT +DUCATS +DUCE +DUCES +DUCHESS +DUCHESSES +DUCHIES +DUCHY +DUCI +DUCK +DUCKBILL +DUCKBILLS +DUCKBOARD +DUCKBOARDS +DUCKED +DUCKER +DUCKERS +DUCKIE +DUCKIER +DUCKIES +DUCKIEST +DUCKING +DUCKLING +DUCKLINGS +DUCKPIN +DUCKPINS +DUCKS +DUCKTAIL +DUCKTAILS +DUCKWALK +DUCKWALKED +DUCKWALKING +DUCKWALKS +DUCKWEED +DUCKWEEDS +DUCKY +DUCT +DUCTAL +DUCTED +DUCTILE +DUCTILELY +DUCTILITIES +DUCTILITY +DUCTING +DUCTINGS +DUCTLESS +DUCTS +DUCTULE +DUCTULES +DUCTWORK +DUCTWORKS +DUD +DUDDIE +DUDDY +DUDE +DUDED +DUDEEN +DUDEENS +DUDES +DUDGEON +DUDGEONS +DUDING +DUDISH +DUDISHLY +DUDS +DUE +DUECENTO +DUECENTOS +DUEL +DUELED +DUELER +DUELERS +DUELING +DUELIST +DUELISTS +DUELLED +DUELLER +DUELLERS +DUELLI +DUELLING +DUELLIST +DUELLISTS +DUELLO +DUELLOS +DUELS +DUENDE +DUENDES +DUENESS +DUENESSES +DUENNA +DUENNAS +DUENNASHIP +DUENNASHIPS +DUES +DUET +DUETED +DUETING +DUETS +DUETTED +DUETTING +DUETTIST +DUETTISTS +DUFF +DUFFEL +DUFFELS +DUFFER +DUFFERS +DUFFLE +DUFFLES +DUFFS +DUFUS +DUFUSES +DUG +DUGONG +DUGONGS +DUGOUT +DUGOUTS +DUGS +DUH +DUI +DUIKER +DUIKERS +DUIT +DUITS +DUKE +DUKED +DUKEDOM +DUKEDOMS +DUKES +DUKING +DULCET +DULCETLY +DULCETS +DULCIANA +DULCIANAS +DULCIFIED +DULCIFIES +DULCIFY +DULCIFYING +DULCIMER +DULCIMERS +DULCIMORE +DULCIMORES +DULCINEA +DULCINEAS +DULIA +DULIAS +DULL +DULLARD +DULLARDS +DULLED +DULLER +DULLEST +DULLING +DULLISH +DULLISHLY +DULLNESS +DULLNESSES +DULLS +DULLSVILLE +DULLSVILLES +DULLY +DULNESS +DULNESSES +DULSE +DULSES +DULY +DUMA +DUMAS +DUMB +DUMBBELL +DUMBBELLS +DUMBCANE +DUMBCANES +DUMBED +DUMBER +DUMBEST +DUMBFOUND +DUMBFOUNDED +DUMBFOUNDER +DUMBFOUNDERED +DUMBFOUNDERING +DUMBFOUNDERS +DUMBFOUNDING +DUMBFOUNDS +DUMBHEAD +DUMBHEADS +DUMBING +DUMBLY +DUMBNESS +DUMBNESSES +DUMBO +DUMBOS +DUMBS +DUMBSTRUCK +DUMBWAITER +DUMBWAITERS +DUMDUM +DUMDUMS +DUMFOUND +DUMFOUNDED +DUMFOUNDING +DUMFOUNDS +DUMKA +DUMKY +DUMMIED +DUMMIES +DUMMKOPF +DUMMKOPFS +DUMMY +DUMMYING +DUMORTIERITE +DUMORTIERITES +DUMP +DUMPCART +DUMPCARTS +DUMPED +DUMPER +DUMPERS +DUMPIER +DUMPIEST +DUMPILY +DUMPINESS +DUMPINESSES +DUMPING +DUMPINGS +DUMPISH +DUMPLING +DUMPLINGS +DUMPS +DUMPSITE +DUMPSITES +DUMPSTER +DUMPSTERS +DUMPTRUCK +DUMPTRUCKS +DUMPY +DUN +DUNAM +DUNAMS +DUNCE +DUNCES +DUNCH +DUNCHES +DUNCICAL +DUNCISH +DUNCISHLY +DUNDERHEAD +DUNDERHEADED +DUNDERHEADS +DUNDREARIES +DUNE +DUNELAND +DUNELANDS +DUNELIKE +DUNES +DUNG +DUNGAREE +DUNGAREED +DUNGAREES +DUNGED +DUNGEON +DUNGEONED +DUNGEONING +DUNGEONS +DUNGHILL +DUNGHILLS +DUNGIER +DUNGIEST +DUNGING +DUNGS +DUNGY +DUNITE +DUNITES +DUNITIC +DUNK +DUNKED +DUNKER +DUNKERS +DUNKING +DUNKS +DUNLIN +DUNLINS +DUNNAGE +DUNNAGES +DUNNED +DUNNER +DUNNESS +DUNNESSES +DUNNEST +DUNNING +DUNNITE +DUNNITES +DUNS +DUNT +DUNTED +DUNTING +DUNTS +DUO +DUODECILLION +DUODECILLIONS +DUODECIMAL +DUODECIMALS +DUODECIMO +DUODECIMOS +DUODENA +DUODENAL +DUODENUM +DUODENUMS +DUOLOG +DUOLOGS +DUOLOGUE +DUOLOGUES +DUOMI +DUOMO +DUOMOS +DUOPOLIES +DUOPOLISTIC +DUOPOLY +DUOPSONIES +DUOPSONY +DUOS +DUOTONE +DUOTONES +DUP +DUPABLE +DUPE +DUPED +DUPER +DUPERIES +DUPERS +DUPERY +DUPES +DUPING +DUPLE +DUPLEX +DUPLEXED +DUPLEXER +DUPLEXERS +DUPLEXES +DUPLEXING +DUPLEXITIES +DUPLEXITY +DUPLICATE +DUPLICATED +DUPLICATES +DUPLICATING +DUPLICATION +DUPLICATIONS +DUPLICATIVE +DUPLICATOR +DUPLICATORS +DUPLICITIES +DUPLICITOUS +DUPLICITOUSLY +DUPLICITY +DUPPED +DUPPING +DUPS +DURA +DURABILITIES +DURABILITY +DURABLE +DURABLENESS +DURABLENESSES +DURABLES +DURABLY +DURAL +DURALUMIN +DURALUMINS +DURAMEN +DURAMENS +DURANCE +DURANCES +DURAS +DURATION +DURATIONS +DURATIVE +DURATIVES +DURBAR +DURBARS +DURE +DURED +DURES +DURESS +DURESSES +DURIAN +DURIANS +DURING +DURION +DURIONS +DURMAST +DURMASTS +DURN +DURNDEST +DURNED +DURNEDER +DURNEDEST +DURNING +DURNS +DURO +DUROC +DUROCS +DUROMETER +DUROMETERS +DUROS +DURR +DURRA +DURRAS +DURRIE +DURRIES +DURRS +DURST +DURUM +DURUMS +DUSK +DUSKED +DUSKIER +DUSKIEST +DUSKILY +DUSKINESS +DUSKINESSES +DUSKING +DUSKISH +DUSKS +DUSKY +DUST +DUSTBIN +DUSTBINS +DUSTCOVER +DUSTCOVERS +DUSTED +DUSTER +DUSTERS +DUSTHEAP +DUSTHEAPS +DUSTIER +DUSTIEST +DUSTILY +DUSTINESS +DUSTINESSES +DUSTING +DUSTINGS +DUSTLESS +DUSTLIKE +DUSTMAN +DUSTMEN +DUSTOFF +DUSTOFFS +DUSTPAN +DUSTPANS +DUSTPROOF +DUSTRAG +DUSTRAGS +DUSTS +DUSTSTORM +DUSTSTORMS +DUSTUP +DUSTUPS +DUSTY +DUTCH +DUTCHMAN +DUTCHMEN +DUTEOUS +DUTEOUSLY +DUTIABLE +DUTIES +DUTIFUL +DUTIFULLY +DUTIFULNESS +DUTIFULNESSES +DUTY +DUUMVIR +DUUMVIRATE +DUUMVIRATES +DUUMVIRI +DUUMVIRS +DUVET +DUVETINE +DUVETINES +DUVETS +DUVETYN +DUVETYNE +DUVETYNES +DUVETYNS +DUXELLES +DWARF +DWARFED +DWARFER +DWARFEST +DWARFING +DWARFISH +DWARFISHLY +DWARFISHNESS +DWARFISHNESSES +DWARFISM +DWARFISMS +DWARFLIKE +DWARFNESS +DWARFNESSES +DWARFS +DWARVES +DWEEB +DWEEBIER +DWEEBIEST +DWEEBISH +DWEEBS +DWEEBY +DWELL +DWELLED +DWELLER +DWELLERS +DWELLING +DWELLINGS +DWELLS +DWELT +DWINDLE +DWINDLED +DWINDLES +DWINDLING +DWINE +DWINED +DWINES +DWINING +DYABLE +DYAD +DYADIC +DYADICALLY +DYADICS +DYADS +DYARCHIC +DYARCHIES +DYARCHY +DYBBUK +DYBBUKIM +DYBBUKS +DYE +DYEABILITIES +DYEABILITY +DYEABLE +DYED +DYEING +DYEINGS +DYER +DYERS +DYES +DYESTUFF +DYESTUFFS +DYEWEED +DYEWEEDS +DYEWOOD +DYEWOODS +DYING +DYINGS +DYKE +DYKED +DYKES +DYKEY +DYKING +DYNAMETER +DYNAMETERS +DYNAMIC +DYNAMICAL +DYNAMICALLY +DYNAMICS +DYNAMISM +DYNAMISMS +DYNAMIST +DYNAMISTIC +DYNAMISTS +DYNAMITE +DYNAMITED +DYNAMITER +DYNAMITERS +DYNAMITES +DYNAMITIC +DYNAMITING +DYNAMO +DYNAMOMETER +DYNAMOMETERS +DYNAMOMETRIC +DYNAMOMETRIES +DYNAMOMETRY +DYNAMOS +DYNAMOTOR +DYNAMOTORS +DYNAST +DYNASTIC +DYNASTICALLY +DYNASTIES +DYNASTS +DYNASTY +DYNATRON +DYNATRONS +DYNE +DYNEIN +DYNEINS +DYNEL +DYNELS +DYNES +DYNODE +DYNODES +DYNORPHIN +DYNORPHINS +DYSARTHRIA +DYSARTHRIAS +DYSCRASIA +DYSCRASIAS +DYSCRASIC +DYSCRATIC +DYSENTERIC +DYSENTERIES +DYSENTERY +DYSFUNCTION +DYSFUNCTIONAL +DYSFUNCTIONS +DYSGENESES +DYSGENESIS +DYSGENIC +DYSGENICS +DYSKINESIA +DYSKINESIAS +DYSKINETIC +DYSLECTIC +DYSLECTICS +DYSLEXIA +DYSLEXIAS +DYSLEXIC +DYSLEXICS +DYSLOGISTIC +DYSLOGISTICALLY +DYSMENORRHEA +DYSMENORRHEAS +DYSMENORRHEIC +DYSPEPSIA +DYSPEPSIAS +DYSPEPSIES +DYSPEPSY +DYSPEPTIC +DYSPEPTICALLY +DYSPEPTICS +DYSPHAGIA +DYSPHAGIAS +DYSPHAGIC +DYSPHASIA +DYSPHASIAS +DYSPHASIC +DYSPHASICS +DYSPHEMISM +DYSPHEMISMS +DYSPHEMISTIC +DYSPHONIA +DYSPHONIAS +DYSPHONIC +DYSPHORIA +DYSPHORIAS +DYSPHORIC +DYSPLASIA +DYSPLASIAS +DYSPLASTIC +DYSPNEA +DYSPNEAL +DYSPNEAS +DYSPNEIC +DYSPNOEA +DYSPNOEAS +DYSPNOIC +DYSPROSIUM +DYSPROSIUMS +DYSRHYTHMIA +DYSRHYTHMIAS +DYSRHYTHMIC +DYSTAXIA +DYSTAXIAS +DYSTHYMIA +DYSTHYMIAS +DYSTHYMIC +DYSTHYMICS +DYSTOCIA +DYSTOCIAS +DYSTONIA +DYSTONIAS +DYSTONIC +DYSTOPIA +DYSTOPIAN +DYSTOPIAS +DYSTROPHIC +DYSTROPHIES +DYSTROPHY +DYSURIA +DYSURIAS +DYSURIC +DYVOUR +DYVOURS +EACH +EAGER +EAGERER +EAGEREST +EAGERLY +EAGERNESS +EAGERNESSES +EAGERS +EAGLE +EAGLED +EAGLES +EAGLET +EAGLETS +EAGLEWOOD +EAGLEWOODS +EAGLING +EAGRE +EAGRES +EALDORMAN +EALDORMEN +EANLING +EANLINGS +EAR +EARACHE +EARACHES +EARBUD +EARBUDS +EARDROP +EARDROPS +EARDRUM +EARDRUMS +EARED +EARFLAP +EARFLAPS +EARFUL +EARFULS +EARING +EARINGS +EARL +EARLAP +EARLAPS +EARLDOM +EARLDOMS +EARLESS +EARLIER +EARLIEST +EARLINESS +EARLINESSES +EARLOBE +EARLOBES +EARLOCK +EARLOCKS +EARLS +EARLSHIP +EARLSHIPS +EARLY +EARLYWOOD +EARLYWOODS +EARMARK +EARMARKED +EARMARKING +EARMARKS +EARMUFF +EARMUFFS +EARN +EARNED +EARNER +EARNERS +EARNEST +EARNESTLY +EARNESTNESS +EARNESTNESSES +EARNESTS +EARNING +EARNINGS +EARNS +EARPHONE +EARPHONES +EARPIECE +EARPIECES +EARPLUG +EARPLUGS +EARRING +EARRINGED +EARRINGS +EARS +EARSHOT +EARSHOTS +EARSPLITTING +EARSTONE +EARSTONES +EARTH +EARTHBORN +EARTHBOUND +EARTHED +EARTHEN +EARTHENWARE +EARTHENWARES +EARTHIER +EARTHIEST +EARTHILY +EARTHINESS +EARTHINESSES +EARTHING +EARTHLIER +EARTHLIEST +EARTHLIGHT +EARTHLIGHTS +EARTHLIKE +EARTHLINESS +EARTHLINESSES +EARTHLING +EARTHLINGS +EARTHLY +EARTHMAN +EARTHMEN +EARTHMOVER +EARTHMOVERS +EARTHMOVING +EARTHMOVINGS +EARTHNUT +EARTHNUTS +EARTHPEA +EARTHPEAS +EARTHQUAKE +EARTHQUAKES +EARTHRISE +EARTHRISES +EARTHS +EARTHSET +EARTHSETS +EARTHSHAKER +EARTHSHAKERS +EARTHSHAKING +EARTHSHAKINGLY +EARTHSHINE +EARTHSHINES +EARTHSTAR +EARTHSTARS +EARTHWARD +EARTHWARDS +EARTHWORK +EARTHWORKS +EARTHWORM +EARTHWORMS +EARTHY +EARWAX +EARWAXES +EARWIG +EARWIGGED +EARWIGGING +EARWIGS +EARWITNESS +EARWITNESSES +EARWORM +EARWORMS +EASE +EASED +EASEFUL +EASEFULLY +EASEL +EASELED +EASELS +EASEMENT +EASEMENTS +EASES +EASIER +EASIES +EASIEST +EASILY +EASINESS +EASINESSES +EASING +EAST +EASTBOUND +EASTER +EASTERLIES +EASTERLY +EASTERN +EASTERNER +EASTERNERS +EASTERNMOST +EASTERS +EASTING +EASTINGS +EASTS +EASTWARD +EASTWARDS +EASY +EASYGOING +EASYGOINGNESS +EASYGOINGNESSES +EAT +EATABLE +EATABLES +EATEN +EATER +EATERIES +EATERS +EATERY +EATH +EATING +EATINGS +EATS +EAU +EAUX +EAVE +EAVED +EAVES +EAVESDROP +EAVESDROPPED +EAVESDROPPER +EAVESDROPPERS +EAVESDROPPING +EAVESDROPS +EBB +EBBED +EBBET +EBBETS +EBBING +EBBS +EBON +EBONICS +EBONIES +EBONISE +EBONISED +EBONISES +EBONISING +EBONITE +EBONITES +EBONIZE +EBONIZED +EBONIZES +EBONIZING +EBONS +EBONY +EBOOK +EBOOKS +EBULLIENCE +EBULLIENCES +EBULLIENCIES +EBULLIENCY +EBULLIENT +EBULLIENTLY +EBULLITION +EBULLITIONS +ECARTE +ECARTES +ECAUDATE +ECBOLIC +ECBOLICS +ECCENTRIC +ECCENTRICALLY +ECCENTRICITIES +ECCENTRICITY +ECCENTRICS +ECCHYMOSES +ECCHYMOSIS +ECCHYMOTIC +ECCLESIA +ECCLESIAE +ECCLESIAL +ECCLESIASTIC +ECCLESIASTICAL +ECCLESIASTICISM +ECCLESIASTICS +ECCLESIOLOGICAL +ECCLESIOLOGIES +ECCLESIOLOGIST +ECCLESIOLOGISTS +ECCLESIOLOGY +ECCRINE +ECDYSES +ECDYSIAL +ECDYSIAST +ECDYSIASTS +ECDYSIS +ECDYSON +ECDYSONE +ECDYSONES +ECDYSONS +ECESIC +ECESIS +ECESISES +ECHARD +ECHARDS +ECHE +ECHED +ECHELLE +ECHELLES +ECHELON +ECHELONED +ECHELONING +ECHELONS +ECHES +ECHEVERIA +ECHEVERIAS +ECHIDNA +ECHIDNAE +ECHIDNAS +ECHINACEA +ECHINACEAS +ECHINATE +ECHINATED +ECHING +ECHINI +ECHINOCOCCI +ECHINOCOCCOSES +ECHINOCOCCOSIS +ECHINOCOCCUS +ECHINODERM +ECHINODERMATOUS +ECHINODERMS +ECHINOID +ECHINOIDS +ECHINUS +ECHIUROID +ECHIUROIDS +ECHO +ECHOCARDIOGRAM +ECHOCARDIOGRAMS +ECHOED +ECHOER +ECHOERS +ECHOES +ECHOEY +ECHOGRAM +ECHOGRAMS +ECHOIC +ECHOING +ECHOISM +ECHOISMS +ECHOLALIA +ECHOLALIAS +ECHOLALIC +ECHOLESS +ECHOLOCATION +ECHOLOCATIONS +ECHOS +ECHOVIRUS +ECHOVIRUSES +ECHT +ECLAIR +ECLAIRCISSEMENT +ECLAIRS +ECLAMPSIA +ECLAMPSIAS +ECLAMPTIC +ECLAT +ECLATS +ECLECTIC +ECLECTICALLY +ECLECTICISM +ECLECTICISMS +ECLECTICS +ECLIPSE +ECLIPSED +ECLIPSER +ECLIPSERS +ECLIPSES +ECLIPSING +ECLIPSIS +ECLIPSISES +ECLIPTIC +ECLIPTICS +ECLOGITE +ECLOGITES +ECLOGUE +ECLOGUES +ECLOSION +ECLOSIONS +ECOCATASTROPHE +ECOCATASTROPHES +ECOCIDAL +ECOCIDE +ECOCIDES +ECOFEMINISM +ECOFEMINISMS +ECOFEMINIST +ECOFEMINISTS +ECOFREAK +ECOFREAKS +ECOLOGIC +ECOLOGICAL +ECOLOGICALLY +ECOLOGIES +ECOLOGIST +ECOLOGISTS +ECOLOGY +ECONOBOX +ECONOBOXES +ECONOMETRIC +ECONOMETRICALLY +ECONOMETRICIAN +ECONOMETRICIANS +ECONOMETRICS +ECONOMETRIST +ECONOMETRISTS +ECONOMIC +ECONOMICAL +ECONOMICALLY +ECONOMICS +ECONOMIES +ECONOMISE +ECONOMISED +ECONOMISES +ECONOMISING +ECONOMIST +ECONOMISTS +ECONOMIZE +ECONOMIZED +ECONOMIZER +ECONOMIZERS +ECONOMIZES +ECONOMIZING +ECONOMY +ECOPHYSIOLOGIES +ECOPHYSIOLOGY +ECOSPECIES +ECOSPHERE +ECOSPHERES +ECOSYSTEM +ECOSYSTEMS +ECOTAGE +ECOTAGES +ECOTERRORISM +ECOTERRORISMS +ECOTERRORIST +ECOTERRORISTS +ECOTONAL +ECOTONE +ECOTONES +ECOTOUR +ECOTOURISM +ECOTOURISMS +ECOTOURIST +ECOTOURISTS +ECOTOURS +ECOTYPE +ECOTYPES +ECOTYPIC +ECRASEUR +ECRASEURS +ECRU +ECRUS +ECSTASIES +ECSTASY +ECSTATIC +ECSTATICALLY +ECSTATICS +ECTASES +ECTASIS +ECTATIC +ECTHYMA +ECTHYMATA +ECTOBLAST +ECTOBLASTS +ECTODERM +ECTODERMAL +ECTODERMS +ECTOGENIC +ECTOMERE +ECTOMERES +ECTOMERIC +ECTOMORPH +ECTOMORPHIC +ECTOMORPHS +ECTOPARASITE +ECTOPARASITES +ECTOPARASITIC +ECTOPIA +ECTOPIAS +ECTOPIC +ECTOPICALLY +ECTOPLASM +ECTOPLASMIC +ECTOPLASMS +ECTOPROCT +ECTOPROCTS +ECTOSARC +ECTOSARCS +ECTOTHERM +ECTOTHERMIC +ECTOTHERMS +ECTOTROPHIC +ECTOZOA +ECTOZOAN +ECTOZOANS +ECTOZOON +ECTYPAL +ECTYPE +ECTYPES +ECU +ECUMENIC +ECUMENICAL +ECUMENICALISM +ECUMENICALISMS +ECUMENICALLY +ECUMENICISM +ECUMENICISMS +ECUMENICIST +ECUMENICISTS +ECUMENICITIES +ECUMENICITY +ECUMENICS +ECUMENISM +ECUMENISMS +ECUMENIST +ECUMENISTS +ECUS +ECZEMA +ECZEMAS +ECZEMATOUS +ED +EDACIOUS +EDACITIES +EDACITY +EDAPHIC +EDAPHICALLY +EDDIED +EDDIES +EDDO +EDDOES +EDDY +EDDYING +EDELWEISS +EDELWEISSES +EDEMA +EDEMAS +EDEMATA +EDEMATOSE +EDEMATOUS +EDENIC +EDENTATE +EDENTATES +EDENTULOUS +EDGE +EDGED +EDGELESS +EDGER +EDGERS +EDGES +EDGEWAYS +EDGEWISE +EDGIER +EDGIEST +EDGILY +EDGINESS +EDGINESSES +EDGING +EDGINGS +EDGY +EDH +EDHS +EDIBILITIES +EDIBILITY +EDIBLE +EDIBLENESS +EDIBLENESSES +EDIBLES +EDICT +EDICTAL +EDICTALLY +EDICTS +EDIFICATION +EDIFICATIONS +EDIFICE +EDIFICES +EDIFICIAL +EDIFIED +EDIFIER +EDIFIERS +EDIFIES +EDIFY +EDIFYING +EDILE +EDILES +EDIT +EDITABLE +EDITED +EDITING +EDITION +EDITIONS +EDITOR +EDITORIAL +EDITORIALIST +EDITORIALISTS +EDITORIALIZE +EDITORIALIZED +EDITORIALIZER +EDITORIALIZERS +EDITORIALIZES +EDITORIALIZING +EDITORIALLY +EDITORIALS +EDITORS +EDITORSHIP +EDITORSHIPS +EDITRESS +EDITRESSES +EDITRICES +EDITRIX +EDITRIXES +EDITS +EDS +EDUCABILITIES +EDUCABILITY +EDUCABLE +EDUCABLES +EDUCATE +EDUCATED +EDUCATEDNESS +EDUCATEDNESSES +EDUCATES +EDUCATING +EDUCATION +EDUCATIONAL +EDUCATIONALIST +EDUCATIONALISTS +EDUCATIONALLY +EDUCATIONESE +EDUCATIONESES +EDUCATIONIST +EDUCATIONISTS +EDUCATIONS +EDUCATIVE +EDUCATOR +EDUCATORS +EDUCATORY +EDUCE +EDUCED +EDUCES +EDUCIBLE +EDUCING +EDUCT +EDUCTION +EDUCTIONS +EDUCTIVE +EDUCTOR +EDUCTORS +EDUCTS +EDULCORATE +EDULCORATED +EDULCORATES +EDULCORATING +EDUTAINMENT +EDUTAINMENTS +EEK +EEL +EELGRASS +EELGRASSES +EELIER +EELIEST +EELLIKE +EELPOUT +EELPOUTS +EELS +EELWORM +EELWORMS +EELY +EERIE +EERIER +EERIEST +EERILY +EERINESS +EERINESSES +EERY +EF +EFF +EFFABLE +EFFACE +EFFACEABLE +EFFACED +EFFACEMENT +EFFACEMENTS +EFFACER +EFFACERS +EFFACES +EFFACING +EFFECT +EFFECTED +EFFECTER +EFFECTERS +EFFECTING +EFFECTIVE +EFFECTIVELY +EFFECTIVENESS +EFFECTIVENESSES +EFFECTIVES +EFFECTIVITIES +EFFECTIVITY +EFFECTOR +EFFECTORS +EFFECTS +EFFECTUAL +EFFECTUALITIES +EFFECTUALITY +EFFECTUALLY +EFFECTUALNESS +EFFECTUALNESSES +EFFECTUATE +EFFECTUATED +EFFECTUATES +EFFECTUATING +EFFECTUATION +EFFECTUATIONS +EFFEMINACIES +EFFEMINACY +EFFEMINATE +EFFEMINATES +EFFENDI +EFFENDIS +EFFERENT +EFFERENTLY +EFFERENTS +EFFERVESCE +EFFERVESCED +EFFERVESCENCE +EFFERVESCENCES +EFFERVESCENT +EFFERVESCENTLY +EFFERVESCES +EFFERVESCING +EFFETE +EFFETELY +EFFETENESS +EFFETENESSES +EFFICACIES +EFFICACIOUS +EFFICACIOUSLY +EFFICACIOUSNESS +EFFICACITIES +EFFICACITY +EFFICACY +EFFICIENCIES +EFFICIENCY +EFFICIENT +EFFICIENTLY +EFFIGIAL +EFFIGIES +EFFIGY +EFFLORESCE +EFFLORESCED +EFFLORESCENCE +EFFLORESCENCES +EFFLORESCENT +EFFLORESCES +EFFLORESCING +EFFLUENCE +EFFLUENCES +EFFLUENT +EFFLUENTS +EFFLUVIA +EFFLUVIAL +EFFLUVIUM +EFFLUVIUMS +EFFLUX +EFFLUXES +EFFLUXION +EFFLUXIONS +EFFORT +EFFORTFUL +EFFORTFULLY +EFFORTFULNESS +EFFORTFULNESSES +EFFORTLESS +EFFORTLESSLY +EFFORTLESSNESS +EFFORTS +EFFRONTERIES +EFFRONTERY +EFFS +EFFULGE +EFFULGED +EFFULGENCE +EFFULGENCES +EFFULGENT +EFFULGES +EFFULGING +EFFUSE +EFFUSED +EFFUSES +EFFUSING +EFFUSION +EFFUSIONS +EFFUSIVE +EFFUSIVELY +EFFUSIVENESS +EFFUSIVENESSES +EFS +EFT +EFTS +EFTSOON +EFTSOONS +EGAD +EGADS +EGAL +EGALITARIAN +EGALITARIANISM +EGALITARIANISMS +EGALITARIANS +EGALITE +EGALITES +EGER +EGERS +EGEST +EGESTA +EGESTED +EGESTING +EGESTION +EGESTIONS +EGESTIVE +EGESTS +EGG +EGGAR +EGGARS +EGGBEATER +EGGBEATERS +EGGCUP +EGGCUPS +EGGED +EGGER +EGGERS +EGGFRUIT +EGGFRUITS +EGGHEAD +EGGHEADED +EGGHEADEDNESS +EGGHEADEDNESSES +EGGHEADS +EGGING +EGGLESS +EGGNOG +EGGNOGS +EGGPLANT +EGGPLANTS +EGGS +EGGSHELL +EGGSHELLS +EGGY +EGIS +EGISES +EGLANTINE +EGLANTINES +EGLATERE +EGLATERES +EGLOMISE +EGO +EGOCENTRIC +EGOCENTRICALLY +EGOCENTRICITIES +EGOCENTRICITY +EGOCENTRICS +EGOCENTRISM +EGOCENTRISMS +EGOISM +EGOISMS +EGOIST +EGOISTIC +EGOISTICAL +EGOISTICALLY +EGOISTS +EGOLESS +EGOMANIA +EGOMANIAC +EGOMANIACAL +EGOMANIACALLY +EGOMANIACS +EGOMANIAS +EGOS +EGOTISM +EGOTISMS +EGOTIST +EGOTISTIC +EGOTISTICAL +EGOTISTICALLY +EGOTISTS +EGREGIOUS +EGREGIOUSLY +EGREGIOUSNESS +EGREGIOUSNESSES +EGRESS +EGRESSED +EGRESSES +EGRESSING +EGRESSION +EGRESSIONS +EGRET +EGRETS +EGYPTIAN +EGYPTIANS +EH +EICOSANOID +EICOSANOIDS +EIDE +EIDER +EIDERDOWN +EIDERDOWNS +EIDERS +EIDETIC +EIDETICALLY +EIDOLA +EIDOLIC +EIDOLON +EIDOLONS +EIDOS +EIGENMODE +EIGENMODES +EIGENVALUE +EIGENVALUES +EIGENVECTOR +EIGENVECTORS +EIGHT +EIGHTBALL +EIGHTBALLS +EIGHTEEN +EIGHTEENS +EIGHTEENTH +EIGHTEENTHS +EIGHTFOLD +EIGHTH +EIGHTHLY +EIGHTHS +EIGHTIES +EIGHTIETH +EIGHTIETHS +EIGHTS +EIGHTVO +EIGHTVOS +EIGHTY +EIKON +EIKONES +EIKONS +EINKORN +EINKORNS +EINSTEIN +EINSTEINIUM +EINSTEINIUMS +EINSTEINS +EIRENIC +EIRENICAL +EISEGESES +EISEGESIS +EISTEDDFOD +EISTEDDFODAU +EISTEDDFODIC +EISTEDDFODS +EISWEIN +EISWEINS +EITHER +EJACULATE +EJACULATED +EJACULATES +EJACULATING +EJACULATION +EJACULATIONS +EJACULATOR +EJACULATORS +EJACULATORY +EJECT +EJECTA +EJECTABLE +EJECTED +EJECTING +EJECTION +EJECTIONS +EJECTIVE +EJECTIVES +EJECTMENT +EJECTMENTS +EJECTOR +EJECTORS +EJECTS +EKE +EKED +EKES +EKING +EKISTIC +EKISTICAL +EKISTICS +EKPWELE +EKPWELES +EKTEXINE +EKTEXINES +EKUELE +EL +ELABORATE +ELABORATED +ELABORATELY +ELABORATENESS +ELABORATENESSES +ELABORATES +ELABORATING +ELABORATION +ELABORATIONS +ELABORATIVE +ELAIN +ELAINS +ELAN +ELAND +ELANDS +ELANS +ELAPHINE +ELAPID +ELAPIDS +ELAPINE +ELAPSE +ELAPSED +ELAPSES +ELAPSING +ELASMOBRANCH +ELASMOBRANCHS +ELASTASE +ELASTASES +ELASTIC +ELASTICALLY +ELASTICITIES +ELASTICITY +ELASTICIZED +ELASTICS +ELASTIN +ELASTINS +ELASTOMER +ELASTOMERIC +ELASTOMERS +ELATE +ELATED +ELATEDLY +ELATEDNESS +ELATEDNESSES +ELATER +ELATERID +ELATERIDS +ELATERIN +ELATERINS +ELATERITE +ELATERITES +ELATERIUM +ELATERIUMS +ELATERS +ELATES +ELATING +ELATION +ELATIONS +ELATIVE +ELATIVES +ELBOW +ELBOWED +ELBOWING +ELBOWROOM +ELBOWROOMS +ELBOWS +ELD +ELDER +ELDERBERRIES +ELDERBERRY +ELDERCARE +ELDERCARES +ELDERLIES +ELDERLINESS +ELDERLINESSES +ELDERLY +ELDERS +ELDERSHIP +ELDERSHIPS +ELDEST +ELDRESS +ELDRESSES +ELDRICH +ELDRITCH +ELDS +ELECAMPANE +ELECAMPANES +ELECT +ELECTABILITIES +ELECTABILITY +ELECTABLE +ELECTED +ELECTEE +ELECTEES +ELECTING +ELECTION +ELECTIONEER +ELECTIONEERED +ELECTIONEERER +ELECTIONEERERS +ELECTIONEERING +ELECTIONEERS +ELECTIONS +ELECTIVE +ELECTIVELY +ELECTIVENESS +ELECTIVENESSES +ELECTIVES +ELECTOR +ELECTORAL +ELECTORALLY +ELECTORATE +ELECTORATES +ELECTORS +ELECTRESS +ELECTRESSES +ELECTRET +ELECTRETS +ELECTRIC +ELECTRICAL +ELECTRICALLY +ELECTRICIAN +ELECTRICIANS +ELECTRICITIES +ELECTRICITY +ELECTRICS +ELECTRIFICATION +ELECTRIFIED +ELECTRIFIES +ELECTRIFY +ELECTRIFYING +ELECTRO +ELECTROACOUSTIC +ELECTROANALYSES +ELECTROANALYSIS +ELECTROCHEMICAL +ELECTROCUTE +ELECTROCUTED +ELECTROCUTES +ELECTROCUTING +ELECTROCUTION +ELECTROCUTIONS +ELECTRODE +ELECTRODEPOSIT +ELECTRODEPOSITS +ELECTRODERMAL +ELECTRODES +ELECTRODIALYSES +ELECTRODIALYSIS +ELECTRODIALYTIC +ELECTRODYNAMIC +ELECTRODYNAMICS +ELECTROED +ELECTROFISHING +ELECTROFISHINGS +ELECTROFORM +ELECTROFORMED +ELECTROFORMING +ELECTROFORMS +ELECTROGENESES +ELECTROGENESIS +ELECTROGENIC +ELECTROGRAM +ELECTROGRAMS +ELECTROING +ELECTROJET +ELECTROJETS +ELECTROKINETIC +ELECTROKINETICS +ELECTROLESS +ELECTROLOGIES +ELECTROLOGIST +ELECTROLOGISTS +ELECTROLOGY +ELECTROLYSES +ELECTROLYSIS +ELECTROLYTE +ELECTROLYTES +ELECTROLYTIC +ELECTROLYZE +ELECTROLYZED +ELECTROLYZES +ELECTROLYZING +ELECTROMAGNET +ELECTROMAGNETIC +ELECTROMAGNETS +ELECTROMETER +ELECTROMETERS +ELECTROMYOGRAM +ELECTROMYOGRAMS +ELECTROMYOGRAPH +ELECTRON +ELECTRONEGATIVE +ELECTRONIC +ELECTRONICA +ELECTRONICALLY +ELECTRONICAS +ELECTRONICS +ELECTRONS +ELECTROOSMOSES +ELECTROOSMOSIS +ELECTROOSMOTIC +ELECTROPHILE +ELECTROPHILES +ELECTROPHILIC +ELECTROPHORESE +ELECTROPHORESED +ELECTROPHORESES +ELECTROPHORESIS +ELECTROPHORETIC +ELECTROPHORI +ELECTROPHORUS +ELECTROPLATE +ELECTROPLATED +ELECTROPLATES +ELECTROPLATING +ELECTROPOSITIVE +ELECTROS +ELECTROSCOPE +ELECTROSCOPES +ELECTROSHOCK +ELECTROSHOCKS +ELECTROSTATIC +ELECTROSTATICS +ELECTROSURGERY +ELECTROSURGICAL +ELECTROTHERAPY +ELECTROTHERMAL +ELECTROTONIC +ELECTROTONUS +ELECTROTONUSES +ELECTROTYPE +ELECTROTYPED +ELECTROTYPER +ELECTROTYPERS +ELECTROTYPES +ELECTROTYPING +ELECTROWEAK +ELECTROWINNING +ELECTROWINNINGS +ELECTRUM +ELECTRUMS +ELECTS +ELECTUARIES +ELECTUARY +ELEDOISIN +ELEDOISINS +ELEEMOSYNARY +ELEGANCE +ELEGANCES +ELEGANCIES +ELEGANCY +ELEGANT +ELEGANTLY +ELEGIAC +ELEGIACAL +ELEGIACALLY +ELEGIACS +ELEGIES +ELEGISE +ELEGISED +ELEGISES +ELEGISING +ELEGIST +ELEGISTS +ELEGIT +ELEGITS +ELEGIZE +ELEGIZED +ELEGIZES +ELEGIZING +ELEGY +ELEMENT +ELEMENTAL +ELEMENTALLY +ELEMENTALS +ELEMENTARILY +ELEMENTARINESS +ELEMENTARY +ELEMENTS +ELEMI +ELEMIS +ELENCHI +ELENCHIC +ELENCHTIC +ELENCHUS +ELENCTIC +ELEOPTENE +ELEOPTENES +ELEPHANT +ELEPHANTIASES +ELEPHANTIASIS +ELEPHANTINE +ELEPHANTS +ELEVATE +ELEVATED +ELEVATEDS +ELEVATES +ELEVATING +ELEVATION +ELEVATIONS +ELEVATOR +ELEVATORS +ELEVEN +ELEVENS +ELEVENSES +ELEVENTH +ELEVENTHS +ELEVON +ELEVONS +ELF +ELFIN +ELFINS +ELFISH +ELFISHLY +ELFLIKE +ELFLOCK +ELFLOCKS +ELHI +ELICIT +ELICITATION +ELICITATIONS +ELICITED +ELICITING +ELICITOR +ELICITORS +ELICITS +ELIDE +ELIDED +ELIDES +ELIDIBLE +ELIDING +ELIGIBILITIES +ELIGIBILITY +ELIGIBLE +ELIGIBLES +ELIGIBLY +ELIMINATE +ELIMINATED +ELIMINATES +ELIMINATING +ELIMINATION +ELIMINATIONS +ELIMINATIVE +ELIMINATOR +ELIMINATORS +ELINT +ELINTS +ELISION +ELISIONS +ELITE +ELITES +ELITISM +ELITISMS +ELITIST +ELITISTS +ELIXIR +ELIXIRS +ELK +ELKHOUND +ELKHOUNDS +ELKS +ELL +ELLIPSE +ELLIPSES +ELLIPSIS +ELLIPSOID +ELLIPSOIDAL +ELLIPSOIDS +ELLIPTIC +ELLIPTICAL +ELLIPTICALLY +ELLIPTICALS +ELLIPTICITIES +ELLIPTICITY +ELLS +ELM +ELMIER +ELMIEST +ELMS +ELMY +ELOCUTION +ELOCUTIONARY +ELOCUTIONIST +ELOCUTIONISTS +ELOCUTIONS +ELODEA +ELODEAS +ELOIGN +ELOIGNED +ELOIGNER +ELOIGNERS +ELOIGNING +ELOIGNS +ELOIN +ELOINED +ELOINER +ELOINERS +ELOINING +ELOINMENT +ELOINMENTS +ELOINS +ELONGATE +ELONGATED +ELONGATES +ELONGATING +ELONGATION +ELONGATIONS +ELOPE +ELOPED +ELOPEMENT +ELOPEMENTS +ELOPER +ELOPERS +ELOPES +ELOPING +ELOQUENCE +ELOQUENCES +ELOQUENT +ELOQUENTLY +ELS +ELSE +ELSEWHERE +ELUANT +ELUANTS +ELUATE +ELUATES +ELUCIDATE +ELUCIDATED +ELUCIDATES +ELUCIDATING +ELUCIDATION +ELUCIDATIONS +ELUCIDATIVE +ELUCIDATOR +ELUCIDATORS +ELUCUBRATE +ELUCUBRATED +ELUCUBRATES +ELUCUBRATING +ELUCUBRATION +ELUCUBRATIONS +ELUDE +ELUDED +ELUDER +ELUDERS +ELUDES +ELUDING +ELUENT +ELUENTS +ELUSION +ELUSIONS +ELUSIVE +ELUSIVELY +ELUSIVENESS +ELUSIVENESSES +ELUSORY +ELUTE +ELUTED +ELUTES +ELUTING +ELUTION +ELUTIONS +ELUTRIATE +ELUTRIATED +ELUTRIATES +ELUTRIATING +ELUTRIATION +ELUTRIATIONS +ELUTRIATOR +ELUTRIATORS +ELUVIA +ELUVIAL +ELUVIATE +ELUVIATED +ELUVIATES +ELUVIATING +ELUVIATION +ELUVIATIONS +ELUVIUM +ELUVIUMS +ELVER +ELVERS +ELVES +ELVISH +ELVISHLY +ELYSIAN +ELYTRA +ELYTROID +ELYTRON +ELYTROUS +ELYTRUM +EM +EMACIATE +EMACIATED +EMACIATES +EMACIATING +EMACIATION +EMACIATIONS +EMAIL +EMAILED +EMAILING +EMAILS +EMALANGENI +EMANANT +EMANATE +EMANATED +EMANATES +EMANATING +EMANATION +EMANATIONS +EMANATIVE +EMANATOR +EMANATORS +EMANCIPATE +EMANCIPATED +EMANCIPATES +EMANCIPATING +EMANCIPATION +EMANCIPATIONIST +EMANCIPATIONS +EMANCIPATOR +EMANCIPATORS +EMARGINATE +EMARGINATION +EMARGINATIONS +EMASCULATE +EMASCULATED +EMASCULATES +EMASCULATING +EMASCULATION +EMASCULATIONS +EMASCULATOR +EMASCULATORS +EMBALM +EMBALMED +EMBALMER +EMBALMERS +EMBALMING +EMBALMMENT +EMBALMMENTS +EMBALMS +EMBANK +EMBANKED +EMBANKING +EMBANKMENT +EMBANKMENTS +EMBANKS +EMBAR +EMBARCADERO +EMBARCADEROS +EMBARGO +EMBARGOED +EMBARGOES +EMBARGOING +EMBARK +EMBARKATION +EMBARKATIONS +EMBARKED +EMBARKING +EMBARKMENT +EMBARKMENTS +EMBARKS +EMBARRASS +EMBARRASSABLE +EMBARRASSED +EMBARRASSEDLY +EMBARRASSES +EMBARRASSING +EMBARRASSINGLY +EMBARRASSMENT +EMBARRASSMENTS +EMBARRED +EMBARRING +EMBARS +EMBASSAGE +EMBASSAGES +EMBASSIES +EMBASSY +EMBATTLE +EMBATTLED +EMBATTLEMENT +EMBATTLEMENTS +EMBATTLES +EMBATTLING +EMBAY +EMBAYED +EMBAYING +EMBAYMENT +EMBAYMENTS +EMBAYS +EMBED +EMBEDDED +EMBEDDING +EMBEDDINGS +EMBEDMENT +EMBEDMENTS +EMBEDS +EMBELLISH +EMBELLISHED +EMBELLISHER +EMBELLISHERS +EMBELLISHES +EMBELLISHING +EMBELLISHMENT +EMBELLISHMENTS +EMBER +EMBERS +EMBEZZLE +EMBEZZLED +EMBEZZLEMENT +EMBEZZLEMENTS +EMBEZZLER +EMBEZZLERS +EMBEZZLES +EMBEZZLING +EMBITTER +EMBITTERED +EMBITTERING +EMBITTERMENT +EMBITTERMENTS +EMBITTERS +EMBLAZE +EMBLAZED +EMBLAZER +EMBLAZERS +EMBLAZES +EMBLAZING +EMBLAZON +EMBLAZONED +EMBLAZONER +EMBLAZONERS +EMBLAZONING +EMBLAZONMENT +EMBLAZONMENTS +EMBLAZONRIES +EMBLAZONRY +EMBLAZONS +EMBLEM +EMBLEMATIC +EMBLEMATICAL +EMBLEMATICALLY +EMBLEMATIZE +EMBLEMATIZED +EMBLEMATIZES +EMBLEMATIZING +EMBLEMED +EMBLEMENTS +EMBLEMING +EMBLEMIZE +EMBLEMIZED +EMBLEMIZES +EMBLEMIZING +EMBLEMS +EMBODIED +EMBODIER +EMBODIERS +EMBODIES +EMBODIMENT +EMBODIMENTS +EMBODY +EMBODYING +EMBOLDEN +EMBOLDENED +EMBOLDENING +EMBOLDENS +EMBOLECTOMIES +EMBOLECTOMY +EMBOLI +EMBOLIC +EMBOLIES +EMBOLISM +EMBOLISMIC +EMBOLISMS +EMBOLIZATION +EMBOLIZATIONS +EMBOLUS +EMBOLY +EMBONPOINT +EMBONPOINTS +EMBORDER +EMBORDERED +EMBORDERING +EMBORDERS +EMBOSK +EMBOSKED +EMBOSKING +EMBOSKS +EMBOSOM +EMBOSOMED +EMBOSOMING +EMBOSOMS +EMBOSS +EMBOSSABLE +EMBOSSED +EMBOSSER +EMBOSSERS +EMBOSSES +EMBOSSING +EMBOSSMENT +EMBOSSMENTS +EMBOUCHURE +EMBOUCHURES +EMBOW +EMBOWED +EMBOWEL +EMBOWELED +EMBOWELING +EMBOWELLED +EMBOWELLING +EMBOWELS +EMBOWER +EMBOWERED +EMBOWERING +EMBOWERS +EMBOWING +EMBOWS +EMBRACE +EMBRACEABLE +EMBRACED +EMBRACEMENT +EMBRACEMENTS +EMBRACEOR +EMBRACEORS +EMBRACER +EMBRACERIES +EMBRACERS +EMBRACERY +EMBRACES +EMBRACING +EMBRACINGLY +EMBRACIVE +EMBRANGLE +EMBRANGLED +EMBRANGLEMENT +EMBRANGLEMENTS +EMBRANGLES +EMBRANGLING +EMBRASURE +EMBRASURES +EMBRITTLE +EMBRITTLED +EMBRITTLEMENT +EMBRITTLEMENTS +EMBRITTLES +EMBRITTLING +EMBROCATE +EMBROCATED +EMBROCATES +EMBROCATING +EMBROCATION +EMBROCATIONS +EMBROGLIO +EMBROGLIOS +EMBROIDER +EMBROIDERED +EMBROIDERER +EMBROIDERERS +EMBROIDERIES +EMBROIDERING +EMBROIDERS +EMBROIDERY +EMBROIL +EMBROILED +EMBROILER +EMBROILERS +EMBROILING +EMBROILMENT +EMBROILMENTS +EMBROILS +EMBROWN +EMBROWNED +EMBROWNING +EMBROWNS +EMBRUE +EMBRUED +EMBRUES +EMBRUING +EMBRUTE +EMBRUTED +EMBRUTES +EMBRUTING +EMBRYO +EMBRYOGENESES +EMBRYOGENESIS +EMBRYOGENETIC +EMBRYOGENIC +EMBRYOGENIES +EMBRYOGENY +EMBRYOID +EMBRYOIDS +EMBRYOLOGICAL +EMBRYOLOGICALLY +EMBRYOLOGIES +EMBRYOLOGIST +EMBRYOLOGISTS +EMBRYOLOGY +EMBRYON +EMBRYONAL +EMBRYONATED +EMBRYONIC +EMBRYONICALLY +EMBRYONS +EMBRYOPHYTE +EMBRYOPHYTES +EMBRYOS +EMBRYOTIC +EMCEE +EMCEED +EMCEEING +EMCEES +EMDASH +EMDASHES +EME +EMEER +EMEERATE +EMEERATES +EMEERS +EMEND +EMENDABLE +EMENDATE +EMENDATED +EMENDATES +EMENDATING +EMENDATION +EMENDATIONS +EMENDATOR +EMENDATORS +EMENDED +EMENDER +EMENDERS +EMENDING +EMENDS +EMERALD +EMERALDS +EMERGE +EMERGED +EMERGENCE +EMERGENCES +EMERGENCIES +EMERGENCY +EMERGENT +EMERGENTS +EMERGES +EMERGING +EMERIES +EMERITA +EMERITAE +EMERITAS +EMERITI +EMERITUS +EMEROD +EMERODS +EMEROID +EMEROIDS +EMERSED +EMERSION +EMERSIONS +EMERY +EMES +EMESES +EMESIS +EMETIC +EMETICALLY +EMETICS +EMETIN +EMETINE +EMETINES +EMETINS +EMEU +EMEUS +EMEUTE +EMEUTES +EMIC +EMIGRANT +EMIGRANTS +EMIGRATE +EMIGRATED +EMIGRATES +EMIGRATING +EMIGRATION +EMIGRATIONS +EMIGRE +EMIGRES +EMINENCE +EMINENCES +EMINENCIES +EMINENCY +EMINENT +EMINENTLY +EMIR +EMIRATE +EMIRATES +EMIRS +EMISSARIES +EMISSARY +EMISSION +EMISSIONS +EMISSIVE +EMISSIVITIES +EMISSIVITY +EMIT +EMITS +EMITTANCE +EMITTANCES +EMITTED +EMITTER +EMITTERS +EMITTING +EMMENAGOGUE +EMMENAGOGUES +EMMER +EMMERS +EMMET +EMMETROPE +EMMETROPES +EMMETS +EMMY +EMMYS +EMODIN +EMODINS +EMOLLIENT +EMOLLIENTS +EMOLUMENT +EMOLUMENTS +EMOTE +EMOTED +EMOTER +EMOTERS +EMOTES +EMOTICON +EMOTICONS +EMOTING +EMOTION +EMOTIONAL +EMOTIONALISM +EMOTIONALISMS +EMOTIONALIST +EMOTIONALISTIC +EMOTIONALISTS +EMOTIONALITIES +EMOTIONALITY +EMOTIONALIZE +EMOTIONALIZED +EMOTIONALIZES +EMOTIONALIZING +EMOTIONALLY +EMOTIONLESS +EMOTIONLESSLY +EMOTIONLESSNESS +EMOTIONS +EMOTIVE +EMOTIVELY +EMOTIVITIES +EMOTIVITY +EMPALE +EMPALED +EMPALER +EMPALERS +EMPALES +EMPALING +EMPANADA +EMPANADAS +EMPANEL +EMPANELED +EMPANELING +EMPANELLED +EMPANELLING +EMPANELS +EMPATHETIC +EMPATHETICALLY +EMPATHIC +EMPATHICALLY +EMPATHIES +EMPATHISE +EMPATHISED +EMPATHISES +EMPATHISING +EMPATHIZE +EMPATHIZED +EMPATHIZES +EMPATHIZING +EMPATHY +EMPENNAGE +EMPENNAGES +EMPERIES +EMPEROR +EMPERORS +EMPERORSHIP +EMPERORSHIPS +EMPERY +EMPHASES +EMPHASIS +EMPHASISE +EMPHASISED +EMPHASISES +EMPHASISING +EMPHASIZE +EMPHASIZED +EMPHASIZES +EMPHASIZING +EMPHATIC +EMPHATICALLY +EMPHYSEMA +EMPHYSEMAS +EMPHYSEMATOUS +EMPHYSEMIC +EMPIRE +EMPIRES +EMPIRIC +EMPIRICAL +EMPIRICALLY +EMPIRICISM +EMPIRICISMS +EMPIRICIST +EMPIRICISTS +EMPIRICS +EMPLACE +EMPLACED +EMPLACEMENT +EMPLACEMENTS +EMPLACES +EMPLACING +EMPLANE +EMPLANED +EMPLANES +EMPLANING +EMPLOY +EMPLOYABILITIES +EMPLOYABILITY +EMPLOYABLE +EMPLOYABLES +EMPLOYE +EMPLOYED +EMPLOYEE +EMPLOYEES +EMPLOYER +EMPLOYERS +EMPLOYES +EMPLOYING +EMPLOYMENT +EMPLOYMENTS +EMPLOYS +EMPOISON +EMPOISONED +EMPOISONING +EMPOISONMENT +EMPOISONMENTS +EMPOISONS +EMPORIA +EMPORIUM +EMPORIUMS +EMPOWER +EMPOWERED +EMPOWERING +EMPOWERMENT +EMPOWERMENTS +EMPOWERS +EMPRESS +EMPRESSEMENT +EMPRESSEMENTS +EMPRESSES +EMPRISE +EMPRISES +EMPRIZE +EMPRIZES +EMPTIABLE +EMPTIED +EMPTIER +EMPTIERS +EMPTIES +EMPTIEST +EMPTILY +EMPTINESS +EMPTINESSES +EMPTINGS +EMPTINS +EMPTY +EMPTYING +EMPURPLE +EMPURPLED +EMPURPLES +EMPURPLING +EMPYEMA +EMPYEMAS +EMPYEMATA +EMPYEMIC +EMPYREAL +EMPYREAN +EMPYREANS +EMS +EMU +EMULATE +EMULATED +EMULATES +EMULATING +EMULATION +EMULATIONS +EMULATIVE +EMULATIVELY +EMULATOR +EMULATORS +EMULOUS +EMULOUSLY +EMULOUSNESS +EMULOUSNESSES +EMULSIBLE +EMULSIFIABLE +EMULSIFICATION +EMULSIFICATIONS +EMULSIFIED +EMULSIFIER +EMULSIFIERS +EMULSIFIES +EMULSIFY +EMULSIFYING +EMULSION +EMULSIONS +EMULSIVE +EMULSOID +EMULSOIDAL +EMULSOIDS +EMUNCTORIES +EMUNCTORY +EMUS +EMYD +EMYDE +EMYDES +EMYDS +EN +ENABLE +ENABLED +ENABLER +ENABLERS +ENABLES +ENABLING +ENACT +ENACTABLE +ENACTED +ENACTING +ENACTIVE +ENACTMENT +ENACTMENTS +ENACTOR +ENACTORS +ENACTORY +ENACTS +ENALAPRIL +ENALAPRILS +ENAMEL +ENAMELED +ENAMELER +ENAMELERS +ENAMELING +ENAMELIST +ENAMELISTS +ENAMELLED +ENAMELLER +ENAMELLERS +ENAMELLING +ENAMELS +ENAMELWARE +ENAMELWARES +ENAMINE +ENAMINES +ENAMOR +ENAMORED +ENAMORING +ENAMORS +ENAMOUR +ENAMOURED +ENAMOURING +ENAMOURS +ENANTIOMER +ENANTIOMERIC +ENANTIOMERS +ENANTIOMORPH +ENANTIOMORPHIC +ENANTIOMORPHISM +ENANTIOMORPHOUS +ENANTIOMORPHS +ENATE +ENATES +ENATIC +ENATION +ENATIONS +ENCAENIA +ENCAGE +ENCAGED +ENCAGES +ENCAGING +ENCAMP +ENCAMPED +ENCAMPING +ENCAMPMENT +ENCAMPMENTS +ENCAMPS +ENCAPSULATE +ENCAPSULATED +ENCAPSULATES +ENCAPSULATING +ENCAPSULATION +ENCAPSULATIONS +ENCAPSULE +ENCAPSULED +ENCAPSULES +ENCAPSULING +ENCASE +ENCASED +ENCASEMENT +ENCASEMENTS +ENCASES +ENCASH +ENCASHABLE +ENCASHED +ENCASHES +ENCASHING +ENCASHMENT +ENCASHMENTS +ENCASING +ENCAUSTIC +ENCAUSTICS +ENCEINTE +ENCEINTES +ENCEPHALA +ENCEPHALITIC +ENCEPHALITIDES +ENCEPHALITIS +ENCEPHALITOGEN +ENCEPHALITOGENS +ENCEPHALOGRAM +ENCEPHALOGRAMS +ENCEPHALOGRAPH +ENCEPHALOGRAPHS +ENCEPHALOGRAPHY +ENCEPHALON +ENCEPHALOPATHIC +ENCEPHALOPATHY +ENCHAIN +ENCHAINED +ENCHAINING +ENCHAINMENT +ENCHAINMENTS +ENCHAINS +ENCHANT +ENCHANTED +ENCHANTER +ENCHANTERS +ENCHANTING +ENCHANTINGLY +ENCHANTMENT +ENCHANTMENTS +ENCHANTRESS +ENCHANTRESSES +ENCHANTS +ENCHASE +ENCHASED +ENCHASER +ENCHASERS +ENCHASES +ENCHASING +ENCHILADA +ENCHILADAS +ENCHIRIDIA +ENCHIRIDION +ENCHORIAL +ENCHORIC +ENCINA +ENCINAL +ENCINAS +ENCIPHER +ENCIPHERED +ENCIPHERER +ENCIPHERERS +ENCIPHERING +ENCIPHERMENT +ENCIPHERMENTS +ENCIPHERS +ENCIRCLE +ENCIRCLED +ENCIRCLEMENT +ENCIRCLEMENTS +ENCIRCLES +ENCIRCLING +ENCLASP +ENCLASPED +ENCLASPING +ENCLASPS +ENCLAVE +ENCLAVED +ENCLAVES +ENCLAVING +ENCLITIC +ENCLITICS +ENCLOSE +ENCLOSED +ENCLOSER +ENCLOSERS +ENCLOSES +ENCLOSING +ENCLOSURE +ENCLOSURES +ENCODABLE +ENCODE +ENCODED +ENCODER +ENCODERS +ENCODES +ENCODING +ENCOMIA +ENCOMIAST +ENCOMIASTIC +ENCOMIASTS +ENCOMIUM +ENCOMIUMS +ENCOMPASS +ENCOMPASSED +ENCOMPASSES +ENCOMPASSING +ENCOMPASSMENT +ENCOMPASSMENTS +ENCORE +ENCORED +ENCORES +ENCORING +ENCOUNTER +ENCOUNTERED +ENCOUNTERING +ENCOUNTERS +ENCOURAGE +ENCOURAGED +ENCOURAGEMENT +ENCOURAGEMENTS +ENCOURAGER +ENCOURAGERS +ENCOURAGES +ENCOURAGING +ENCOURAGINGLY +ENCRIMSON +ENCRIMSONED +ENCRIMSONING +ENCRIMSONS +ENCRINITE +ENCRINITES +ENCROACH +ENCROACHED +ENCROACHER +ENCROACHERS +ENCROACHES +ENCROACHING +ENCROACHMENT +ENCROACHMENTS +ENCRUST +ENCRUSTATION +ENCRUSTATIONS +ENCRUSTED +ENCRUSTING +ENCRUSTS +ENCRYPT +ENCRYPTED +ENCRYPTING +ENCRYPTION +ENCRYPTIONS +ENCRYPTS +ENCULTURATE +ENCULTURATED +ENCULTURATES +ENCULTURATING +ENCULTURATION +ENCULTURATIONS +ENCUMBER +ENCUMBERED +ENCUMBERING +ENCUMBERS +ENCUMBRANCE +ENCUMBRANCER +ENCUMBRANCERS +ENCUMBRANCES +ENCYCLIC +ENCYCLICAL +ENCYCLICALS +ENCYCLICS +ENCYCLOPAEDIA +ENCYCLOPAEDIAS +ENCYCLOPAEDIC +ENCYCLOPEDIA +ENCYCLOPEDIAS +ENCYCLOPEDIC +ENCYCLOPEDISM +ENCYCLOPEDISMS +ENCYCLOPEDIST +ENCYCLOPEDISTS +ENCYST +ENCYSTED +ENCYSTING +ENCYSTMENT +ENCYSTMENTS +ENCYSTS +END +ENDAMAGE +ENDAMAGED +ENDAMAGES +ENDAMAGING +ENDAMEBA +ENDAMEBAE +ENDAMEBAS +ENDAMEBIC +ENDAMOEBA +ENDAMOEBAE +ENDAMOEBAS +ENDANGER +ENDANGERED +ENDANGERING +ENDANGERMENT +ENDANGERMENTS +ENDANGERS +ENDARCH +ENDARCHIES +ENDARCHY +ENDARTERECTOMY +ENDASH +ENDASHES +ENDBRAIN +ENDBRAINS +ENDEAR +ENDEARED +ENDEARING +ENDEARINGLY +ENDEARMENT +ENDEARMENTS +ENDEARS +ENDEAVOR +ENDEAVORED +ENDEAVORING +ENDEAVORS +ENDEAVOUR +ENDEAVOURED +ENDEAVOURING +ENDEAVOURS +ENDED +ENDEMIAL +ENDEMIC +ENDEMICAL +ENDEMICALLY +ENDEMICITIES +ENDEMICITY +ENDEMICS +ENDEMISM +ENDEMISMS +ENDER +ENDERGONIC +ENDERMIC +ENDERS +ENDEXINE +ENDEXINES +ENDGAME +ENDGAMES +ENDING +ENDINGS +ENDITE +ENDITED +ENDITES +ENDITING +ENDIVE +ENDIVES +ENDLEAF +ENDLEAFS +ENDLEAVES +ENDLESS +ENDLESSLY +ENDLESSNESS +ENDLESSNESSES +ENDLONG +ENDMOST +ENDNOTE +ENDNOTES +ENDOBIOTIC +ENDOBLAST +ENDOBLASTS +ENDOCARDIA +ENDOCARDIAL +ENDOCARDITIS +ENDOCARDITISES +ENDOCARDIUM +ENDOCARP +ENDOCARPS +ENDOCAST +ENDOCASTS +ENDOCHONDRAL +ENDOCRINE +ENDOCRINES +ENDOCRINOLOGIC +ENDOCRINOLOGIES +ENDOCRINOLOGIST +ENDOCRINOLOGY +ENDOCYTIC +ENDOCYTOSES +ENDOCYTOSIS +ENDOCYTOTIC +ENDODERM +ENDODERMAL +ENDODERMIS +ENDODERMISES +ENDODERMS +ENDODONTIC +ENDODONTICALLY +ENDODONTICS +ENDODONTIST +ENDODONTISTS +ENDOENZYME +ENDOENZYMES +ENDOERGIC +ENDOGAMIC +ENDOGAMIES +ENDOGAMOUS +ENDOGAMY +ENDOGEN +ENDOGENIC +ENDOGENIES +ENDOGENOUS +ENDOGENOUSLY +ENDOGENS +ENDOGENY +ENDOLITHIC +ENDOLYMPH +ENDOLYMPHATIC +ENDOLYMPHS +ENDOMETRIA +ENDOMETRIAL +ENDOMETRIOSES +ENDOMETRIOSIS +ENDOMETRITIS +ENDOMETRITISES +ENDOMETRIUM +ENDOMITOSES +ENDOMITOSIS +ENDOMITOTIC +ENDOMIXIS +ENDOMIXISES +ENDOMORPH +ENDOMORPHIC +ENDOMORPHIES +ENDOMORPHISM +ENDOMORPHISMS +ENDOMORPHS +ENDOMORPHY +ENDONUCLEASE +ENDONUCLEASES +ENDONUCLEOLYTIC +ENDOPARASITE +ENDOPARASITES +ENDOPARASITIC +ENDOPARASITISM +ENDOPARASITISMS +ENDOPEPTIDASE +ENDOPEPTIDASES +ENDOPEROXIDE +ENDOPEROXIDES +ENDOPHYTE +ENDOPHYTES +ENDOPHYTIC +ENDOPLASM +ENDOPLASMIC +ENDOPLASMS +ENDOPOD +ENDOPODITE +ENDOPODITES +ENDOPODS +ENDOPOLYPLOID +ENDOPOLYPLOIDY +ENDOPROCT +ENDOPROCTS +ENDORPHIN +ENDORPHINS +ENDORSABLE +ENDORSE +ENDORSED +ENDORSEE +ENDORSEES +ENDORSEMENT +ENDORSEMENTS +ENDORSER +ENDORSERS +ENDORSES +ENDORSING +ENDORSIVE +ENDORSOR +ENDORSORS +ENDOSARC +ENDOSARCS +ENDOSCOPE +ENDOSCOPES +ENDOSCOPIC +ENDOSCOPICALLY +ENDOSCOPIES +ENDOSCOPY +ENDOSKELETAL +ENDOSKELETON +ENDOSKELETONS +ENDOSMOS +ENDOSMOSES +ENDOSOME +ENDOSOMES +ENDOSPERM +ENDOSPERMS +ENDOSPORE +ENDOSPORES +ENDOSTEA +ENDOSTEAL +ENDOSTEALLY +ENDOSTEUM +ENDOSTYLE +ENDOSTYLES +ENDOSULFAN +ENDOSULFANS +ENDOSYMBIONT +ENDOSYMBIONTS +ENDOSYMBIOSES +ENDOSYMBIOSIS +ENDOSYMBIOTIC +ENDOTHECIA +ENDOTHECIUM +ENDOTHELIA +ENDOTHELIAL +ENDOTHELIOMA +ENDOTHELIOMAS +ENDOTHELIOMATA +ENDOTHELIUM +ENDOTHERM +ENDOTHERMIC +ENDOTHERMIES +ENDOTHERMS +ENDOTHERMY +ENDOTOXIC +ENDOTOXIN +ENDOTOXINS +ENDOTRACHEAL +ENDOTROPHIC +ENDOW +ENDOWED +ENDOWER +ENDOWERS +ENDOWING +ENDOWMENT +ENDOWMENTS +ENDOWS +ENDOZOIC +ENDPAPER +ENDPAPERS +ENDPLATE +ENDPLATES +ENDPLAY +ENDPLAYED +ENDPLAYING +ENDPLAYS +ENDPOINT +ENDPOINTS +ENDRIN +ENDRINS +ENDS +ENDUE +ENDUED +ENDUES +ENDUING +ENDURABLE +ENDURABLY +ENDURANCE +ENDURANCES +ENDURE +ENDURED +ENDURER +ENDURERS +ENDURES +ENDURING +ENDURINGLY +ENDURINGNESS +ENDURINGNESSES +ENDURO +ENDUROS +ENDWAYS +ENDWISE +ENEMA +ENEMAS +ENEMATA +ENEMIES +ENEMY +ENERGETIC +ENERGETICALLY +ENERGETICS +ENERGID +ENERGIDS +ENERGIES +ENERGISE +ENERGISED +ENERGISES +ENERGISING +ENERGIZATION +ENERGIZATIONS +ENERGIZE +ENERGIZED +ENERGIZER +ENERGIZERS +ENERGIZES +ENERGIZING +ENERGUMEN +ENERGUMENS +ENERGY +ENERVATE +ENERVATED +ENERVATES +ENERVATING +ENERVATION +ENERVATIONS +ENERVATOR +ENERVATORS +ENFACE +ENFACED +ENFACES +ENFACING +ENFEEBLE +ENFEEBLED +ENFEEBLEMENT +ENFEEBLEMENTS +ENFEEBLER +ENFEEBLERS +ENFEEBLES +ENFEEBLING +ENFEOFF +ENFEOFFED +ENFEOFFING +ENFEOFFMENT +ENFEOFFMENTS +ENFEOFFS +ENFETTER +ENFETTERED +ENFETTERING +ENFETTERS +ENFEVER +ENFEVERED +ENFEVERING +ENFEVERS +ENFILADE +ENFILADED +ENFILADES +ENFILADING +ENFLAME +ENFLAMED +ENFLAMES +ENFLAMING +ENFLEURAGE +ENFLEURAGES +ENFOLD +ENFOLDED +ENFOLDER +ENFOLDERS +ENFOLDING +ENFOLDS +ENFORCE +ENFORCEABILITY +ENFORCEABLE +ENFORCED +ENFORCEMENT +ENFORCEMENTS +ENFORCER +ENFORCERS +ENFORCES +ENFORCING +ENFRAME +ENFRAMED +ENFRAMEMENT +ENFRAMEMENTS +ENFRAMES +ENFRAMING +ENFRANCHISE +ENFRANCHISED +ENFRANCHISEMENT +ENFRANCHISES +ENFRANCHISING +ENG +ENGAGE +ENGAGED +ENGAGEDLY +ENGAGEMENT +ENGAGEMENTS +ENGAGER +ENGAGERS +ENGAGES +ENGAGING +ENGAGINGLY +ENGARLAND +ENGARLANDED +ENGARLANDING +ENGARLANDS +ENGENDER +ENGENDERED +ENGENDERING +ENGENDERS +ENGILD +ENGILDED +ENGILDING +ENGILDS +ENGINE +ENGINED +ENGINEER +ENGINEERED +ENGINEERING +ENGINEERINGS +ENGINEERS +ENGINERIES +ENGINERY +ENGINES +ENGINING +ENGINOUS +ENGIRD +ENGIRDED +ENGIRDING +ENGIRDLE +ENGIRDLED +ENGIRDLES +ENGIRDLING +ENGIRDS +ENGIRT +ENGLACIAL +ENGLISH +ENGLISHED +ENGLISHES +ENGLISHING +ENGLUT +ENGLUTS +ENGLUTTED +ENGLUTTING +ENGORGE +ENGORGED +ENGORGEMENT +ENGORGEMENTS +ENGORGES +ENGORGING +ENGRAFT +ENGRAFTED +ENGRAFTING +ENGRAFTMENT +ENGRAFTMENTS +ENGRAFTS +ENGRAIL +ENGRAILED +ENGRAILING +ENGRAILS +ENGRAIN +ENGRAINED +ENGRAINING +ENGRAINS +ENGRAM +ENGRAMME +ENGRAMMES +ENGRAMMIC +ENGRAMS +ENGRAVE +ENGRAVED +ENGRAVER +ENGRAVERS +ENGRAVES +ENGRAVING +ENGRAVINGS +ENGROSS +ENGROSSED +ENGROSSER +ENGROSSERS +ENGROSSES +ENGROSSING +ENGROSSINGLY +ENGROSSMENT +ENGROSSMENTS +ENGS +ENGULF +ENGULFED +ENGULFING +ENGULFMENT +ENGULFMENTS +ENGULFS +ENHALO +ENHALOED +ENHALOES +ENHALOING +ENHALOS +ENHANCE +ENHANCED +ENHANCEMENT +ENHANCEMENTS +ENHANCER +ENHANCERS +ENHANCES +ENHANCING +ENHANCIVE +ENHARMONIC +ENHARMONICALLY +ENIGMA +ENIGMAS +ENIGMATA +ENIGMATIC +ENIGMATICAL +ENIGMATICALLY +ENISLE +ENISLED +ENISLES +ENISLING +ENJAMBED +ENJAMBEMENT +ENJAMBEMENTS +ENJAMBMENT +ENJAMBMENTS +ENJOIN +ENJOINDER +ENJOINDERS +ENJOINED +ENJOINER +ENJOINERS +ENJOINING +ENJOINS +ENJOY +ENJOYABLE +ENJOYABLENESS +ENJOYABLENESSES +ENJOYABLY +ENJOYED +ENJOYER +ENJOYERS +ENJOYING +ENJOYMENT +ENJOYMENTS +ENJOYS +ENKEPHALIN +ENKEPHALINS +ENKINDLE +ENKINDLED +ENKINDLER +ENKINDLERS +ENKINDLES +ENKINDLING +ENLACE +ENLACED +ENLACEMENT +ENLACEMENTS +ENLACES +ENLACING +ENLARGE +ENLARGEABLE +ENLARGED +ENLARGEMENT +ENLARGEMENTS +ENLARGER +ENLARGERS +ENLARGES +ENLARGING +ENLIGHTEN +ENLIGHTENED +ENLIGHTENING +ENLIGHTENMENT +ENLIGHTENMENTS +ENLIGHTENS +ENLIST +ENLISTED +ENLISTEE +ENLISTEES +ENLISTER +ENLISTERS +ENLISTING +ENLISTMENT +ENLISTMENTS +ENLISTS +ENLIVEN +ENLIVENED +ENLIVENER +ENLIVENERS +ENLIVENING +ENLIVENS +ENMESH +ENMESHED +ENMESHES +ENMESHING +ENMESHMENT +ENMESHMENTS +ENMITIES +ENMITY +ENNEAD +ENNEADIC +ENNEADS +ENNEAGON +ENNEAGONS +ENNOBLE +ENNOBLED +ENNOBLEMENT +ENNOBLEMENTS +ENNOBLER +ENNOBLERS +ENNOBLES +ENNOBLING +ENNUI +ENNUIS +ENNUYE +ENNUYEE +ENOKI +ENOKIDAKE +ENOKIDAKES +ENOKIS +ENOKITAKE +ENOKITAKES +ENOL +ENOLASE +ENOLASES +ENOLIC +ENOLOGICAL +ENOLOGIES +ENOLOGIST +ENOLOGISTS +ENOLOGY +ENOLS +ENOPHILE +ENOPHILES +ENORM +ENORMITIES +ENORMITY +ENORMOUS +ENORMOUSLY +ENORMOUSNESS +ENORMOUSNESSES +ENOSIS +ENOSISES +ENOUGH +ENOUGHS +ENOUNCE +ENOUNCED +ENOUNCES +ENOUNCING +ENOW +ENOWS +ENPLANE +ENPLANED +ENPLANES +ENPLANING +ENQUIRE +ENQUIRED +ENQUIRES +ENQUIRIES +ENQUIRING +ENQUIRY +ENRAGE +ENRAGED +ENRAGEDLY +ENRAGES +ENRAGING +ENRAPT +ENRAPTURE +ENRAPTURED +ENRAPTURES +ENRAPTURING +ENRAVISH +ENRAVISHED +ENRAVISHES +ENRAVISHING +ENREGISTER +ENREGISTERED +ENREGISTERING +ENREGISTERS +ENRICH +ENRICHED +ENRICHER +ENRICHERS +ENRICHES +ENRICHING +ENRICHMENT +ENRICHMENTS +ENROBE +ENROBED +ENROBER +ENROBERS +ENROBES +ENROBING +ENROL +ENROLL +ENROLLED +ENROLLEE +ENROLLEES +ENROLLER +ENROLLERS +ENROLLING +ENROLLMENT +ENROLLMENTS +ENROLLS +ENROLMENT +ENROLMENTS +ENROLS +ENROOT +ENROOTED +ENROOTING +ENROOTS +ENS +ENSAMPLE +ENSAMPLES +ENSANGUINE +ENSANGUINED +ENSANGUINES +ENSANGUINING +ENSCONCE +ENSCONCED +ENSCONCES +ENSCONCING +ENSCROLL +ENSCROLLED +ENSCROLLING +ENSCROLLS +ENSEMBLE +ENSEMBLES +ENSERF +ENSERFED +ENSERFING +ENSERFMENT +ENSERFMENTS +ENSERFS +ENSHEATH +ENSHEATHE +ENSHEATHED +ENSHEATHES +ENSHEATHING +ENSHEATHS +ENSHRINE +ENSHRINED +ENSHRINEE +ENSHRINEES +ENSHRINEMENT +ENSHRINEMENTS +ENSHRINES +ENSHRINING +ENSHROUD +ENSHROUDED +ENSHROUDING +ENSHROUDS +ENSIFORM +ENSIGN +ENSIGNCIES +ENSIGNCY +ENSIGNS +ENSILAGE +ENSILAGED +ENSILAGES +ENSILAGING +ENSILE +ENSILED +ENSILES +ENSILING +ENSKIED +ENSKIES +ENSKY +ENSKYED +ENSKYING +ENSLAVE +ENSLAVED +ENSLAVEMENT +ENSLAVEMENTS +ENSLAVER +ENSLAVERS +ENSLAVES +ENSLAVING +ENSNARE +ENSNARED +ENSNARER +ENSNARERS +ENSNARES +ENSNARING +ENSNARL +ENSNARLED +ENSNARLING +ENSNARLS +ENSORCEL +ENSORCELED +ENSORCELING +ENSORCELL +ENSORCELLED +ENSORCELLING +ENSORCELLMENT +ENSORCELLMENTS +ENSORCELLS +ENSORCELS +ENSOUL +ENSOULED +ENSOULING +ENSOULS +ENSPHERE +ENSPHERED +ENSPHERES +ENSPHERING +ENSTATITE +ENSTATITES +ENSUE +ENSUED +ENSUES +ENSUING +ENSURE +ENSURED +ENSURER +ENSURERS +ENSURES +ENSURING +ENSWATHE +ENSWATHED +ENSWATHES +ENSWATHING +ENTABLATURE +ENTABLATURES +ENTAIL +ENTAILED +ENTAILER +ENTAILERS +ENTAILING +ENTAILMENT +ENTAILMENTS +ENTAILS +ENTAMEBA +ENTAMEBAE +ENTAMEBAS +ENTAMOEBA +ENTAMOEBAE +ENTAMOEBAS +ENTANGLE +ENTANGLED +ENTANGLEMENT +ENTANGLEMENTS +ENTANGLER +ENTANGLERS +ENTANGLES +ENTANGLING +ENTASES +ENTASIA +ENTASIAS +ENTASIS +ENTASTIC +ENTELECHIES +ENTELECHY +ENTELLUS +ENTELLUSES +ENTENTE +ENTENTES +ENTER +ENTERA +ENTERABLE +ENTERAL +ENTERALLY +ENTERED +ENTERER +ENTERERS +ENTERIC +ENTERICS +ENTERING +ENTERITIDES +ENTERITIS +ENTERITISES +ENTEROBACTERIA +ENTEROBACTERIAL +ENTEROBACTERIUM +ENTEROBIASES +ENTEROBIASIS +ENTEROCOCCAL +ENTEROCOCCI +ENTEROCOCCUS +ENTEROCOEL +ENTEROCOELE +ENTEROCOELES +ENTEROCOELIC +ENTEROCOELOUS +ENTEROCOELS +ENTEROCOLITIS +ENTEROCOLITISES +ENTEROGASTRONE +ENTEROGASTRONES +ENTEROKINASE +ENTEROKINASES +ENTERON +ENTERONS +ENTEROPATHIES +ENTEROPATHY +ENTEROSTOMAL +ENTEROSTOMIES +ENTEROSTOMY +ENTEROTOXIN +ENTEROTOXINS +ENTEROVIRAL +ENTEROVIRUS +ENTEROVIRUSES +ENTERPRISE +ENTERPRISER +ENTERPRISERS +ENTERPRISES +ENTERPRISING +ENTERS +ENTERTAIN +ENTERTAINED +ENTERTAINER +ENTERTAINERS +ENTERTAINING +ENTERTAININGLY +ENTERTAINMENT +ENTERTAINMENTS +ENTERTAINS +ENTHALPIES +ENTHALPY +ENTHETIC +ENTHRAL +ENTHRALL +ENTHRALLED +ENTHRALLING +ENTHRALLMENT +ENTHRALLMENTS +ENTHRALLS +ENTHRALS +ENTHRONE +ENTHRONED +ENTHRONEMENT +ENTHRONEMENTS +ENTHRONES +ENTHRONING +ENTHUSE +ENTHUSED +ENTHUSES +ENTHUSIASM +ENTHUSIASMS +ENTHUSIAST +ENTHUSIASTIC +ENTHUSIASTS +ENTHUSING +ENTHYMEME +ENTHYMEMES +ENTIA +ENTICE +ENTICED +ENTICEMENT +ENTICEMENTS +ENTICER +ENTICERS +ENTICES +ENTICING +ENTICINGLY +ENTIRE +ENTIRELY +ENTIRENESS +ENTIRENESSES +ENTIRES +ENTIRETIES +ENTIRETY +ENTITIES +ENTITLE +ENTITLED +ENTITLEMENT +ENTITLEMENTS +ENTITLES +ENTITLING +ENTITY +ENTOBLAST +ENTOBLASTS +ENTODERM +ENTODERMAL +ENTODERMIC +ENTODERMS +ENTOIL +ENTOILED +ENTOILING +ENTOILS +ENTOMB +ENTOMBED +ENTOMBING +ENTOMBMENT +ENTOMBMENTS +ENTOMBS +ENTOMOFAUNA +ENTOMOFAUNAE +ENTOMOFAUNAS +ENTOMOLOGICAL +ENTOMOLOGICALLY +ENTOMOLOGIES +ENTOMOLOGIST +ENTOMOLOGISTS +ENTOMOLOGY +ENTOMOPHAGOUS +ENTOMOPHILIES +ENTOMOPHILOUS +ENTOMOPHILY +ENTOPHYTE +ENTOPHYTES +ENTOPIC +ENTOPROCT +ENTOPROCTS +ENTOURAGE +ENTOURAGES +ENTOZOA +ENTOZOAL +ENTOZOAN +ENTOZOANS +ENTOZOIC +ENTOZOON +ENTRAILS +ENTRAIN +ENTRAINED +ENTRAINER +ENTRAINERS +ENTRAINING +ENTRAINMENT +ENTRAINMENTS +ENTRAINS +ENTRANCE +ENTRANCED +ENTRANCEMENT +ENTRANCEMENTS +ENTRANCES +ENTRANCEWAY +ENTRANCEWAYS +ENTRANCING +ENTRANT +ENTRANTS +ENTRAP +ENTRAPMENT +ENTRAPMENTS +ENTRAPPED +ENTRAPPER +ENTRAPPERS +ENTRAPPING +ENTRAPS +ENTREAT +ENTREATED +ENTREATIES +ENTREATING +ENTREATINGLY +ENTREATMENT +ENTREATMENTS +ENTREATS +ENTREATY +ENTRECHAT +ENTRECHATS +ENTRECOTE +ENTRECOTES +ENTREE +ENTREES +ENTREMETS +ENTRENCH +ENTRENCHED +ENTRENCHES +ENTRENCHING +ENTRENCHMENT +ENTRENCHMENTS +ENTREPOT +ENTREPOTS +ENTREPRENEUR +ENTREPRENEURIAL +ENTREPRENEURS +ENTRESOL +ENTRESOLS +ENTRIES +ENTROPIC +ENTROPICALLY +ENTROPIES +ENTROPION +ENTROPIONS +ENTROPY +ENTRUST +ENTRUSTED +ENTRUSTING +ENTRUSTMENT +ENTRUSTMENTS +ENTRUSTS +ENTRY +ENTRYWAY +ENTRYWAYS +ENTWINE +ENTWINED +ENTWINES +ENTWINING +ENTWIST +ENTWISTED +ENTWISTING +ENTWISTS +ENUCLEATE +ENUCLEATED +ENUCLEATES +ENUCLEATING +ENUCLEATION +ENUCLEATIONS +ENUF +ENUMERABILITIES +ENUMERABILITY +ENUMERABLE +ENUMERATE +ENUMERATED +ENUMERATES +ENUMERATING +ENUMERATION +ENUMERATIONS +ENUMERATIVE +ENUMERATOR +ENUMERATORS +ENUNCIABLE +ENUNCIATE +ENUNCIATED +ENUNCIATES +ENUNCIATING +ENUNCIATION +ENUNCIATIONS +ENUNCIATOR +ENUNCIATORS +ENURE +ENURED +ENURES +ENURESES +ENURESIS +ENURESISES +ENURETIC +ENURETICS +ENURING +ENVELOP +ENVELOPE +ENVELOPED +ENVELOPER +ENVELOPERS +ENVELOPES +ENVELOPING +ENVELOPMENT +ENVELOPMENTS +ENVELOPS +ENVENOM +ENVENOMED +ENVENOMING +ENVENOMIZATION +ENVENOMIZATIONS +ENVENOMS +ENVIABLE +ENVIABLENESS +ENVIABLENESSES +ENVIABLY +ENVIED +ENVIER +ENVIERS +ENVIES +ENVIOUS +ENVIOUSLY +ENVIOUSNESS +ENVIOUSNESSES +ENVIRO +ENVIRON +ENVIRONED +ENVIRONING +ENVIRONMENT +ENVIRONMENTAL +ENVIRONMENTALLY +ENVIRONMENTS +ENVIRONS +ENVIROS +ENVISAGE +ENVISAGED +ENVISAGES +ENVISAGING +ENVISION +ENVISIONED +ENVISIONING +ENVISIONS +ENVOI +ENVOIS +ENVOY +ENVOYS +ENVY +ENVYING +ENVYINGLY +ENWHEEL +ENWHEELED +ENWHEELING +ENWHEELS +ENWIND +ENWINDING +ENWINDS +ENWOMB +ENWOMBED +ENWOMBING +ENWOMBS +ENWOUND +ENWRAP +ENWRAPPED +ENWRAPPING +ENWRAPS +ENWREATHE +ENWREATHED +ENWREATHES +ENWREATHING +ENZOOTIC +ENZOOTICS +ENZYM +ENZYMATIC +ENZYMATICALLY +ENZYME +ENZYMES +ENZYMIC +ENZYMICALLY +ENZYMOLOGIES +ENZYMOLOGIST +ENZYMOLOGISTS +ENZYMOLOGY +ENZYMS +EOBIONT +EOBIONTS +EOCENE +EOHIPPUS +EOHIPPUSES +EOLIAN +EOLIPILE +EOLIPILES +EOLITH +EOLITHIC +EOLITHS +EOLOPILE +EOLOPILES +EON +EONIAN +EONISM +EONISMS +EONS +EOSIN +EOSINE +EOSINES +EOSINIC +EOSINOPHIL +EOSINOPHILIA +EOSINOPHILIAS +EOSINOPHILIC +EOSINOPHILS +EOSINS +EPACT +EPACTS +EPARCH +EPARCHIAL +EPARCHIES +EPARCHS +EPARCHY +EPAULET +EPAULETS +EPAULETTE +EPAULETTED +EPAULETTES +EPAZOTE +EPAZOTES +EPEE +EPEEIST +EPEEISTS +EPEES +EPEIRIC +EPEIROGENIC +EPEIROGENICALLY +EPEIROGENIES +EPEIROGENY +EPENDYMA +EPENDYMAS +EPENTHESES +EPENTHESIS +EPENTHETIC +EPERGNE +EPERGNES +EPEXEGESES +EPEXEGESIS +EPEXEGETIC +EPEXEGETICAL +EPEXEGETICALLY +EPHA +EPHAH +EPHAHS +EPHAS +EPHEBE +EPHEBES +EPHEBI +EPHEBIC +EPHEBOI +EPHEBOS +EPHEBUS +EPHEDRA +EPHEDRAS +EPHEDRIN +EPHEDRINE +EPHEDRINES +EPHEDRINS +EPHEMERA +EPHEMERAE +EPHEMERAL +EPHEMERALITIES +EPHEMERALITY +EPHEMERALLY +EPHEMERALS +EPHEMERAS +EPHEMERID +EPHEMERIDES +EPHEMERIDS +EPHEMERIS +EPHEMERON +EPHEMERONS +EPHOD +EPHODS +EPHOR +EPHORAL +EPHORATE +EPHORATES +EPHORI +EPHORS +EPIBLAST +EPIBLASTIC +EPIBLASTS +EPIBOLIC +EPIBOLIES +EPIBOLY +EPIC +EPICAL +EPICALLY +EPICALYCES +EPICALYX +EPICALYXES +EPICANTHI +EPICANTHUS +EPICARDIA +EPICARDIAL +EPICARDIUM +EPICARP +EPICARPS +EPICEDIA +EPICEDIUM +EPICENE +EPICENES +EPICENISM +EPICENISMS +EPICENTER +EPICENTERS +EPICENTRA +EPICENTRAL +EPICENTRUM +EPICHLOROHYDRIN +EPICLIKE +EPICONTINENTAL +EPICOTYL +EPICOTYLS +EPICRANIA +EPICRANIUM +EPICRITIC +EPICS +EPICURE +EPICUREAN +EPICUREANISM +EPICUREANISMS +EPICUREANS +EPICURES +EPICURISM +EPICURISMS +EPICUTICLE +EPICUTICLES +EPICUTICULAR +EPICYCLE +EPICYCLES +EPICYCLIC +EPICYCLOID +EPICYCLOIDAL +EPICYCLOIDS +EPIDEMIC +EPIDEMICAL +EPIDEMICALLY +EPIDEMICITIES +EPIDEMICITY +EPIDEMICS +EPIDEMIOLOGIC +EPIDEMIOLOGICAL +EPIDEMIOLOGIES +EPIDEMIOLOGIST +EPIDEMIOLOGISTS +EPIDEMIOLOGY +EPIDENDRUM +EPIDENDRUMS +EPIDERM +EPIDERMAL +EPIDERMIC +EPIDERMIS +EPIDERMISES +EPIDERMOID +EPIDERMS +EPIDIASCOPE +EPIDIASCOPES +EPIDIDYMAL +EPIDIDYMIDES +EPIDIDYMIS +EPIDIDYMITIS +EPIDIDYMITISES +EPIDOTE +EPIDOTES +EPIDOTIC +EPIDURAL +EPIDURALS +EPIFAUNA +EPIFAUNAE +EPIFAUNAL +EPIFAUNAS +EPIFOCAL +EPIGASTRIC +EPIGEAL +EPIGEAN +EPIGEIC +EPIGENE +EPIGENESES +EPIGENESIS +EPIGENETIC +EPIGENETICALLY +EPIGENIC +EPIGENIST +EPIGENISTS +EPIGENOUS +EPIGEOUS +EPIGLOTTAL +EPIGLOTTIC +EPIGLOTTIS +EPIGLOTTISES +EPIGON +EPIGONE +EPIGONES +EPIGONI +EPIGONIC +EPIGONISM +EPIGONISMS +EPIGONOUS +EPIGONS +EPIGONUS +EPIGRAM +EPIGRAMMATIC +EPIGRAMMATISM +EPIGRAMMATISMS +EPIGRAMMATIST +EPIGRAMMATISTS +EPIGRAMMATIZE +EPIGRAMMATIZED +EPIGRAMMATIZER +EPIGRAMMATIZERS +EPIGRAMMATIZES +EPIGRAMMATIZING +EPIGRAMS +EPIGRAPH +EPIGRAPHER +EPIGRAPHERS +EPIGRAPHIC +EPIGRAPHICAL +EPIGRAPHICALLY +EPIGRAPHIES +EPIGRAPHIST +EPIGRAPHISTS +EPIGRAPHS +EPIGRAPHY +EPIGYNIES +EPIGYNOUS +EPIGYNY +EPILATE +EPILATED +EPILATES +EPILATING +EPILATION +EPILATIONS +EPILATOR +EPILATORS +EPILEPSIES +EPILEPSY +EPILEPTIC +EPILEPTICALLY +EPILEPTICS +EPILEPTIFORM +EPILEPTOGENIC +EPILEPTOID +EPILIMNIA +EPILIMNION +EPILIMNIONS +EPILOG +EPILOGS +EPILOGUE +EPILOGUED +EPILOGUES +EPILOGUING +EPIMER +EPIMERASE +EPIMERASES +EPIMERE +EPIMERES +EPIMERIC +EPIMERS +EPIMYSIA +EPIMYSIUM +EPINAOI +EPINAOS +EPINASTIC +EPINASTIES +EPINASTY +EPINEPHRIN +EPINEPHRINE +EPINEPHRINES +EPINEPHRINS +EPINEURIA +EPINEURIUM +EPINEURIUMS +EPIPELAGIC +EPIPHANIC +EPIPHANIES +EPIPHANOUS +EPIPHANY +EPIPHENOMENA +EPIPHENOMENAL +EPIPHENOMENALLY +EPIPHENOMENON +EPIPHRAGM +EPIPHRAGMS +EPIPHYSEAL +EPIPHYSES +EPIPHYSIAL +EPIPHYSIS +EPIPHYTE +EPIPHYTES +EPIPHYTIC +EPIPHYTICALLY +EPIPHYTISM +EPIPHYTISMS +EPIPHYTOLOGIES +EPIPHYTOLOGY +EPIPHYTOTIC +EPIPHYTOTICS +EPIROGENIES +EPIROGENY +EPISCIA +EPISCIAS +EPISCOPACIES +EPISCOPACY +EPISCOPAL +EPISCOPALLY +EPISCOPATE +EPISCOPATES +EPISCOPE +EPISCOPES +EPISIOTOMIES +EPISIOTOMY +EPISODE +EPISODES +EPISODIC +EPISODICAL +EPISODICALLY +EPISOMAL +EPISOMALLY +EPISOME +EPISOMES +EPISTASES +EPISTASIES +EPISTASIS +EPISTASY +EPISTATIC +EPISTAXES +EPISTAXIS +EPISTEMIC +EPISTEMICALLY +EPISTEMOLOGICAL +EPISTEMOLOGIES +EPISTEMOLOGIST +EPISTEMOLOGISTS +EPISTEMOLOGY +EPISTERNA +EPISTERNUM +EPISTLE +EPISTLER +EPISTLERS +EPISTLES +EPISTOLARIES +EPISTOLARY +EPISTOLER +EPISTOLERS +EPISTOME +EPISTOMES +EPISTROPHE +EPISTROPHES +EPISTYLE +EPISTYLES +EPITAPH +EPITAPHIAL +EPITAPHIC +EPITAPHS +EPITASES +EPITASIS +EPITAXIAL +EPITAXIALLY +EPITAXIC +EPITAXIES +EPITAXY +EPITHALAMIA +EPITHALAMIC +EPITHALAMION +EPITHALAMIUM +EPITHALAMIUMS +EPITHELIA +EPITHELIAL +EPITHELIALIZE +EPITHELIALIZED +EPITHELIALIZES +EPITHELIALIZING +EPITHELIOID +EPITHELIOMA +EPITHELIOMAS +EPITHELIOMATA +EPITHELIOMATOUS +EPITHELIUM +EPITHELIUMS +EPITHELIZATION +EPITHELIZATIONS +EPITHELIZE +EPITHELIZED +EPITHELIZES +EPITHELIZING +EPITHET +EPITHETIC +EPITHETICAL +EPITHETS +EPITOME +EPITOMES +EPITOMIC +EPITOMICAL +EPITOMISE +EPITOMISED +EPITOMISES +EPITOMISING +EPITOMIZE +EPITOMIZED +EPITOMIZES +EPITOMIZING +EPITOPE +EPITOPES +EPIZOA +EPIZOIC +EPIZOISM +EPIZOISMS +EPIZOITE +EPIZOITES +EPIZOON +EPIZOOTIC +EPIZOOTICS +EPIZOOTIES +EPIZOOTIOLOGIC +EPIZOOTIOLOGIES +EPIZOOTIOLOGY +EPIZOOTY +EPOCH +EPOCHAL +EPOCHALLY +EPOCHS +EPODE +EPODES +EPONYM +EPONYMIC +EPONYMIES +EPONYMOUS +EPONYMS +EPONYMY +EPOPEE +EPOPEES +EPOPOEIA +EPOPOEIAS +EPOS +EPOSES +EPOXIDATION +EPOXIDATIONS +EPOXIDE +EPOXIDES +EPOXIDIZE +EPOXIDIZED +EPOXIDIZES +EPOXIDIZING +EPOXIED +EPOXIES +EPOXY +EPOXYED +EPOXYING +EPSILON +EPSILONIC +EPSILONS +EQUABILITIES +EQUABILITY +EQUABLE +EQUABLENESS +EQUABLENESSES +EQUABLY +EQUAL +EQUALED +EQUALING +EQUALISE +EQUALISED +EQUALISER +EQUALISERS +EQUALISES +EQUALISING +EQUALITARIAN +EQUALITARIANISM +EQUALITARIANS +EQUALITIES +EQUALITY +EQUALIZATION +EQUALIZATIONS +EQUALIZE +EQUALIZED +EQUALIZER +EQUALIZERS +EQUALIZES +EQUALIZING +EQUALLED +EQUALLING +EQUALLY +EQUALS +EQUANIMITIES +EQUANIMITY +EQUATABLE +EQUATE +EQUATED +EQUATES +EQUATING +EQUATION +EQUATIONAL +EQUATIONALLY +EQUATIONS +EQUATOR +EQUATORIAL +EQUATORS +EQUATORWARD +EQUERRIES +EQUERRY +EQUESTRIAN +EQUESTRIANS +EQUESTRIENNE +EQUESTRIENNES +EQUIANGULAR +EQUICALORIC +EQUID +EQUIDISTANT +EQUIDISTANTLY +EQUIDS +EQUILATERAL +EQUILIBRANT +EQUILIBRANTS +EQUILIBRATE +EQUILIBRATED +EQUILIBRATES +EQUILIBRATING +EQUILIBRATION +EQUILIBRATIONS +EQUILIBRATOR +EQUILIBRATORS +EQUILIBRATORY +EQUILIBRIA +EQUILIBRIST +EQUILIBRISTIC +EQUILIBRISTS +EQUILIBRIUM +EQUILIBRIUMS +EQUIMOLAL +EQUIMOLAR +EQUINE +EQUINELY +EQUINES +EQUINITIES +EQUINITY +EQUINOCTIAL +EQUINOCTIALS +EQUINOX +EQUINOXES +EQUIP +EQUIPAGE +EQUIPAGES +EQUIPMENT +EQUIPMENTS +EQUIPOISE +EQUIPOISED +EQUIPOISES +EQUIPOISING +EQUIPOLLENCE +EQUIPOLLENCES +EQUIPOLLENT +EQUIPOLLENTLY +EQUIPOLLENTS +EQUIPONDERANT +EQUIPOTENTIAL +EQUIPPED +EQUIPPER +EQUIPPERS +EQUIPPING +EQUIPROBABLE +EQUIPS +EQUISETA +EQUISETIC +EQUISETUM +EQUISETUMS +EQUITABILITIES +EQUITABILITY +EQUITABLE +EQUITABLENESS +EQUITABLENESSES +EQUITABLY +EQUITANT +EQUITATION +EQUITATIONS +EQUITES +EQUITIES +EQUITY +EQUIVALENCE +EQUIVALENCES +EQUIVALENCIES +EQUIVALENCY +EQUIVALENT +EQUIVALENTLY +EQUIVALENTS +EQUIVOCAL +EQUIVOCALITIES +EQUIVOCALITY +EQUIVOCALLY +EQUIVOCALNESS +EQUIVOCALNESSES +EQUIVOCATE +EQUIVOCATED +EQUIVOCATES +EQUIVOCATING +EQUIVOCATION +EQUIVOCATIONS +EQUIVOCATOR +EQUIVOCATORS +EQUIVOKE +EQUIVOKES +EQUIVOQUE +EQUIVOQUES +ER +ERA +ERADIATE +ERADIATED +ERADIATES +ERADIATING +ERADICABLE +ERADICANT +ERADICANTS +ERADICATE +ERADICATED +ERADICATES +ERADICATING +ERADICATION +ERADICATIONS +ERADICATOR +ERADICATORS +ERAS +ERASABILITIES +ERASABILITY +ERASABLE +ERASE +ERASED +ERASER +ERASERS +ERASES +ERASING +ERASION +ERASIONS +ERASURE +ERASURES +ERBIUM +ERBIUMS +ERE +ERECT +ERECTABLE +ERECTED +ERECTER +ERECTERS +ERECTILE +ERECTILITIES +ERECTILITY +ERECTING +ERECTION +ERECTIONS +ERECTIVE +ERECTLY +ERECTNESS +ERECTNESSES +ERECTOR +ERECTORS +ERECTS +ERELONG +EREMITE +EREMITES +EREMITIC +EREMITICAL +EREMITISH +EREMITISM +EREMITISMS +EREMURI +EREMURUS +EREMURUSES +ERENOW +EREPSIN +EREPSINS +ERETHIC +ERETHISM +ERETHISMS +ERETHITIC +EREWHILE +EREWHILES +ERG +ERGASTIC +ERGASTOPLASM +ERGASTOPLASMIC +ERGASTOPLASMS +ERGATE +ERGATES +ERGATIVE +ERGATIVES +ERGO +ERGODIC +ERGODICITIES +ERGODICITY +ERGOGENIC +ERGOGRAPH +ERGOGRAPHS +ERGOMETER +ERGOMETERS +ERGOMETRIC +ERGOMETRIES +ERGOMETRY +ERGONOMIC +ERGONOMICALLY +ERGONOMICS +ERGONOMIST +ERGONOMISTS +ERGONOVINE +ERGONOVINES +ERGOSTEROL +ERGOSTEROLS +ERGOT +ERGOTAMINE +ERGOTAMINES +ERGOTIC +ERGOTISM +ERGOTISMS +ERGOTIZED +ERGOTS +ERGS +ERICA +ERICACEOUS +ERICAS +ERICOID +ERIGERON +ERIGERONS +ERINGO +ERINGOES +ERINGOS +ERIOPHYID +ERIOPHYIDS +ERISTIC +ERISTICAL +ERISTICALLY +ERISTICS +ERLKING +ERLKINGS +ERMINE +ERMINED +ERMINES +ERN +ERNE +ERNES +ERNS +ERODABLE +ERODE +ERODED +ERODENT +ERODES +ERODIBILITIES +ERODIBILITY +ERODIBLE +ERODING +EROGENIC +EROGENOUS +EROS +EROSE +EROSELY +EROSES +EROSIBLE +EROSION +EROSIONAL +EROSIONALLY +EROSIONS +EROSIVE +EROSIVENESS +EROSIVENESSES +EROSIVITIES +EROSIVITY +EROTIC +EROTICA +EROTICAL +EROTICALLY +EROTICISM +EROTICISMS +EROTICIST +EROTICISTS +EROTICIZATION +EROTICIZATIONS +EROTICIZE +EROTICIZED +EROTICIZES +EROTICIZING +EROTICS +EROTISM +EROTISMS +EROTIZATION +EROTIZATIONS +EROTIZE +EROTIZED +EROTIZES +EROTIZING +EROTOGENIC +ERR +ERRABLE +ERRANCIES +ERRANCY +ERRAND +ERRANDS +ERRANT +ERRANTLY +ERRANTRIES +ERRANTRY +ERRANTS +ERRATA +ERRATAS +ERRATIC +ERRATICAL +ERRATICALLY +ERRATICISM +ERRATICISMS +ERRATICS +ERRATUM +ERRED +ERRHINE +ERRHINES +ERRING +ERRINGLY +ERRONEOUS +ERRONEOUSLY +ERRONEOUSNESS +ERRONEOUSNESSES +ERROR +ERRORLESS +ERRORS +ERRS +ERS +ERSATZ +ERSATZES +ERSES +ERST +ERSTWHILE +ERUCT +ERUCTATE +ERUCTATED +ERUCTATES +ERUCTATING +ERUCTATION +ERUCTATIONS +ERUCTED +ERUCTING +ERUCTS +ERUDITE +ERUDITELY +ERUDITION +ERUDITIONS +ERUGO +ERUGOS +ERUMPENT +ERUPT +ERUPTED +ERUPTIBLE +ERUPTING +ERUPTION +ERUPTIONS +ERUPTIVE +ERUPTIVELY +ERUPTIVES +ERUPTS +ERVIL +ERVILS +ERYNGO +ERYNGOES +ERYNGOS +ERYSIPELAS +ERYSIPELASES +ERYTHEMA +ERYTHEMAS +ERYTHEMATOUS +ERYTHEMIC +ERYTHORBATE +ERYTHORBATES +ERYTHREMIA +ERYTHREMIAS +ERYTHRISM +ERYTHRISMAL +ERYTHRISMS +ERYTHRISTIC +ERYTHRITE +ERYTHRITES +ERYTHROBLAST +ERYTHROBLASTIC +ERYTHROBLASTS +ERYTHROCYTE +ERYTHROCYTES +ERYTHROCYTIC +ERYTHROID +ERYTHROMYCIN +ERYTHROMYCINS +ERYTHRON +ERYTHRONS +ERYTHROPOIESES +ERYTHROPOIESIS +ERYTHROPOIETIC +ERYTHROPOIETIN +ERYTHROPOIETINS +ERYTHROSIN +ERYTHROSINE +ERYTHROSINES +ERYTHROSINS +ES +ESCADRILLE +ESCADRILLES +ESCALADE +ESCALADED +ESCALADER +ESCALADERS +ESCALADES +ESCALADING +ESCALATE +ESCALATED +ESCALATES +ESCALATING +ESCALATION +ESCALATIONS +ESCALATOR +ESCALATORS +ESCALATORY +ESCALLOP +ESCALLOPED +ESCALLOPING +ESCALLOPS +ESCALOP +ESCALOPE +ESCALOPED +ESCALOPES +ESCALOPING +ESCALOPS +ESCAPABLE +ESCAPADE +ESCAPADES +ESCAPE +ESCAPED +ESCAPEE +ESCAPEES +ESCAPEMENT +ESCAPEMENTS +ESCAPER +ESCAPERS +ESCAPES +ESCAPING +ESCAPISM +ESCAPISMS +ESCAPIST +ESCAPISTS +ESCAPOLOGIES +ESCAPOLOGIST +ESCAPOLOGISTS +ESCAPOLOGY +ESCAR +ESCARGOT +ESCARGOTS +ESCAROLE +ESCAROLES +ESCARP +ESCARPED +ESCARPING +ESCARPMENT +ESCARPMENTS +ESCARPS +ESCARS +ESCHALOT +ESCHALOTS +ESCHAR +ESCHAROTIC +ESCHAROTICS +ESCHARS +ESCHATOLOGICAL +ESCHATOLOGIES +ESCHATOLOGY +ESCHEAT +ESCHEATABLE +ESCHEATED +ESCHEATING +ESCHEATOR +ESCHEATORS +ESCHEATS +ESCHEW +ESCHEWAL +ESCHEWALS +ESCHEWED +ESCHEWER +ESCHEWERS +ESCHEWING +ESCHEWS +ESCOLAR +ESCOLARS +ESCORT +ESCORTED +ESCORTING +ESCORTS +ESCOT +ESCOTED +ESCOTING +ESCOTS +ESCRITOIRE +ESCRITOIRES +ESCROW +ESCROWED +ESCROWING +ESCROWS +ESCUAGE +ESCUAGES +ESCUDO +ESCUDOS +ESCULENT +ESCULENTS +ESCUTCHEON +ESCUTCHEONS +ESEMPLASTIC +ESERINE +ESERINES +ESES +ESKAR +ESKARS +ESKER +ESKERS +ESNE +ESNES +ESOPHAGEAL +ESOPHAGI +ESOPHAGUS +ESOTERIC +ESOTERICA +ESOTERICALLY +ESOTERICISM +ESOTERICISMS +ESOTROPIA +ESOTROPIAS +ESOTROPIC +ESPADRILLE +ESPADRILLES +ESPALIER +ESPALIERED +ESPALIERING +ESPALIERS +ESPANOL +ESPANOLES +ESPARTO +ESPARTOS +ESPECIAL +ESPECIALLY +ESPERANCE +ESPERANCES +ESPIAL +ESPIALS +ESPIED +ESPIEGLE +ESPIEGLERIE +ESPIEGLERIES +ESPIES +ESPIONAGE +ESPIONAGES +ESPLANADE +ESPLANADES +ESPOUSAL +ESPOUSALS +ESPOUSE +ESPOUSED +ESPOUSER +ESPOUSERS +ESPOUSES +ESPOUSING +ESPRESSO +ESPRESSOS +ESPRIT +ESPRITS +ESPY +ESPYING +ESQUIRE +ESQUIRED +ESQUIRES +ESQUIRING +ESS +ESSAY +ESSAYED +ESSAYER +ESSAYERS +ESSAYING +ESSAYIST +ESSAYISTIC +ESSAYISTS +ESSAYS +ESSENCE +ESSENCES +ESSENTIAL +ESSENTIALISM +ESSENTIALISMS +ESSENTIALIST +ESSENTIALISTS +ESSENTIALITIES +ESSENTIALITY +ESSENTIALIZE +ESSENTIALIZED +ESSENTIALIZES +ESSENTIALIZING +ESSENTIALLY +ESSENTIALNESS +ESSENTIALNESSES +ESSENTIALS +ESSES +ESSOIN +ESSOINS +ESSONITE +ESSONITES +ESTABLISH +ESTABLISHABLE +ESTABLISHED +ESTABLISHER +ESTABLISHERS +ESTABLISHES +ESTABLISHING +ESTABLISHMENT +ESTABLISHMENTS +ESTAMINET +ESTAMINETS +ESTANCIA +ESTANCIAS +ESTATE +ESTATED +ESTATES +ESTATING +ESTEEM +ESTEEMED +ESTEEMING +ESTEEMS +ESTER +ESTERASE +ESTERASES +ESTERIFICATION +ESTERIFICATIONS +ESTERIFIED +ESTERIFIES +ESTERIFY +ESTERIFYING +ESTERS +ESTHESES +ESTHESIA +ESTHESIAS +ESTHESIS +ESTHESISES +ESTHETE +ESTHETES +ESTHETIC +ESTHETICIAN +ESTHETICIANS +ESTHETICISM +ESTHETICISMS +ESTHETICS +ESTIMABLE +ESTIMABLENESS +ESTIMABLENESSES +ESTIMABLY +ESTIMATE +ESTIMATED +ESTIMATES +ESTIMATING +ESTIMATION +ESTIMATIONS +ESTIMATIVE +ESTIMATOR +ESTIMATORS +ESTIVAL +ESTIVATE +ESTIVATED +ESTIVATES +ESTIVATING +ESTIVATION +ESTIVATIONS +ESTIVATOR +ESTIVATORS +ESTOP +ESTOPPAGE +ESTOPPAGES +ESTOPPED +ESTOPPEL +ESTOPPELS +ESTOPPING +ESTOPS +ESTOVERS +ESTRADIOL +ESTRADIOLS +ESTRAGON +ESTRAGONS +ESTRAL +ESTRANGE +ESTRANGED +ESTRANGEMENT +ESTRANGEMENTS +ESTRANGER +ESTRANGERS +ESTRANGES +ESTRANGING +ESTRAY +ESTRAYED +ESTRAYING +ESTRAYS +ESTREAT +ESTREATED +ESTREATING +ESTREATS +ESTRIN +ESTRINS +ESTRIOL +ESTRIOLS +ESTROGEN +ESTROGENIC +ESTROGENICALLY +ESTROGENS +ESTRONE +ESTRONES +ESTROUS +ESTRUAL +ESTRUM +ESTRUMS +ESTRUS +ESTRUSES +ESTUARIAL +ESTUARIES +ESTUARINE +ESTUARY +ESURIENCE +ESURIENCES +ESURIENCIES +ESURIENCY +ESURIENT +ESURIENTLY +ET +ETA +ETAGERE +ETAGERES +ETALON +ETALONS +ETAMIN +ETAMINE +ETAMINES +ETAMINS +ETAPE +ETAPES +ETAS +ETATISM +ETATISMS +ETATIST +ETCETERA +ETCETERAS +ETCH +ETCHANT +ETCHANTS +ETCHED +ETCHER +ETCHERS +ETCHES +ETCHING +ETCHINGS +ETERNAL +ETERNALIZE +ETERNALIZED +ETERNALIZES +ETERNALIZING +ETERNALLY +ETERNALNESS +ETERNALNESSES +ETERNALS +ETERNE +ETERNISE +ETERNISED +ETERNISES +ETERNISING +ETERNITIES +ETERNITY +ETERNIZATION +ETERNIZATIONS +ETERNIZE +ETERNIZED +ETERNIZES +ETERNIZING +ETESIAN +ETESIANS +ETH +ETHAMBUTOL +ETHAMBUTOLS +ETHANE +ETHANES +ETHANOL +ETHANOLAMINE +ETHANOLAMINES +ETHANOLS +ETHENE +ETHENES +ETHEPHON +ETHEPHONS +ETHER +ETHEREAL +ETHEREALITIES +ETHEREALITY +ETHEREALIZATION +ETHEREALIZE +ETHEREALIZED +ETHEREALIZES +ETHEREALIZING +ETHEREALLY +ETHEREALNESS +ETHEREALNESSES +ETHERIC +ETHERIFIED +ETHERIFIES +ETHERIFY +ETHERIFYING +ETHERISH +ETHERIZATION +ETHERIZATIONS +ETHERIZE +ETHERIZED +ETHERIZER +ETHERIZERS +ETHERIZES +ETHERIZING +ETHERS +ETHIC +ETHICAL +ETHICALITIES +ETHICALITY +ETHICALLY +ETHICALNESS +ETHICALNESSES +ETHICALS +ETHICIAN +ETHICIANS +ETHICIST +ETHICISTS +ETHICIZE +ETHICIZED +ETHICIZES +ETHICIZING +ETHICS +ETHINYL +ETHINYLS +ETHION +ETHIONAMIDE +ETHIONAMIDES +ETHIONINE +ETHIONINES +ETHIONS +ETHMOID +ETHMOIDAL +ETHMOIDS +ETHNARCH +ETHNARCHIES +ETHNARCHS +ETHNARCHY +ETHNIC +ETHNICAL +ETHNICALLY +ETHNICITIES +ETHNICITY +ETHNICS +ETHNOBOTANICAL +ETHNOBOTANIES +ETHNOBOTANIST +ETHNOBOTANISTS +ETHNOBOTANY +ETHNOCENTRIC +ETHNOCENTRICITY +ETHNOCENTRISM +ETHNOCENTRISMS +ETHNOGRAPHER +ETHNOGRAPHERS +ETHNOGRAPHIC +ETHNOGRAPHICAL +ETHNOGRAPHIES +ETHNOGRAPHY +ETHNOHISTORIAN +ETHNOHISTORIANS +ETHNOHISTORIC +ETHNOHISTORICAL +ETHNOHISTORIES +ETHNOHISTORY +ETHNOLOGIC +ETHNOLOGICAL +ETHNOLOGIES +ETHNOLOGIST +ETHNOLOGISTS +ETHNOLOGY +ETHNOMUSICOLOGY +ETHNONYM +ETHNONYMS +ETHNOS +ETHNOSCIENCE +ETHNOSCIENCES +ETHNOSES +ETHOGRAM +ETHOGRAMS +ETHOLOGICAL +ETHOLOGIES +ETHOLOGIST +ETHOLOGISTS +ETHOLOGY +ETHOS +ETHOSES +ETHOXIES +ETHOXY +ETHOXYL +ETHOXYLS +ETHS +ETHYL +ETHYLATE +ETHYLATED +ETHYLATES +ETHYLATING +ETHYLBENZENE +ETHYLBENZENES +ETHYLENE +ETHYLENES +ETHYLENIC +ETHYLIC +ETHYLS +ETHYNE +ETHYNES +ETHYNYL +ETHYNYLS +ETIC +ETIOLATE +ETIOLATED +ETIOLATES +ETIOLATING +ETIOLATION +ETIOLATIONS +ETIOLOGIC +ETIOLOGICAL +ETIOLOGICALLY +ETIOLOGIES +ETIOLOGY +ETIQUETTE +ETIQUETTES +ETNA +ETNAS +ETOILE +ETOILES +ETOUFFEE +ETOUFFEES +ETUDE +ETUDES +ETUI +ETUIS +ETWEE +ETWEES +ETYMA +ETYMOLOGICAL +ETYMOLOGICALLY +ETYMOLOGIES +ETYMOLOGISE +ETYMOLOGISED +ETYMOLOGISES +ETYMOLOGISING +ETYMOLOGIST +ETYMOLOGISTS +ETYMOLOGIZE +ETYMOLOGIZED +ETYMOLOGIZES +ETYMOLOGIZING +ETYMOLOGY +ETYMON +ETYMONS +EUCAINE +EUCAINES +EUCALYPT +EUCALYPTI +EUCALYPTOL +EUCALYPTOLE +EUCALYPTOLES +EUCALYPTOLS +EUCALYPTS +EUCALYPTUS +EUCALYPTUSES +EUCARYOTE +EUCARYOTES +EUCHARIS +EUCHARISES +EUCHARISTIC +EUCHRE +EUCHRED +EUCHRES +EUCHRING +EUCHROMATIC +EUCHROMATIN +EUCHROMATINS +EUCLASE +EUCLASES +EUCLIDEAN +EUCLIDIAN +EUCRITE +EUCRITES +EUCRITIC +EUDAEMON +EUDAEMONISM +EUDAEMONISMS +EUDAEMONIST +EUDAEMONISTIC +EUDAEMONISTS +EUDAEMONS +EUDAIMON +EUDAIMONISM +EUDAIMONISMS +EUDAIMONS +EUDEMON +EUDEMONIA +EUDEMONIAS +EUDEMONS +EUDIOMETER +EUDIOMETERS +EUDIOMETRIC +EUDIOMETRICALLY +EUGENIA +EUGENIAS +EUGENIC +EUGENICAL +EUGENICALLY +EUGENICIST +EUGENICISTS +EUGENICS +EUGENIST +EUGENISTS +EUGENOL +EUGENOLS +EUGEOSYNCLINAL +EUGEOSYNCLINE +EUGEOSYNCLINES +EUGLENA +EUGLENAS +EUGLENID +EUGLENIDS +EUGLENOID +EUGLENOIDS +EUGLOBULIN +EUGLOBULINS +EUHEMERISM +EUHEMERISMS +EUHEMERIST +EUHEMERISTIC +EUHEMERISTS +EUKARYOTE +EUKARYOTES +EUKARYOTIC +EULACHAN +EULACHANS +EULACHON +EULACHONS +EULOGIA +EULOGIAE +EULOGIAS +EULOGIES +EULOGISE +EULOGISED +EULOGISES +EULOGISING +EULOGIST +EULOGISTIC +EULOGISTICALLY +EULOGISTS +EULOGIUM +EULOGIUMS +EULOGIZE +EULOGIZED +EULOGIZER +EULOGIZERS +EULOGIZES +EULOGIZING +EULOGY +EUNUCH +EUNUCHISM +EUNUCHISMS +EUNUCHOID +EUNUCHOIDS +EUNUCHS +EUONYMUS +EUONYMUSES +EUPATRID +EUPATRIDAE +EUPATRIDS +EUPEPSIA +EUPEPSIAS +EUPEPSIES +EUPEPSY +EUPEPTIC +EUPHAUSID +EUPHAUSIDS +EUPHAUSIID +EUPHAUSIIDS +EUPHEMISE +EUPHEMISED +EUPHEMISES +EUPHEMISING +EUPHEMISM +EUPHEMISMS +EUPHEMIST +EUPHEMISTIC +EUPHEMISTICALLY +EUPHEMISTS +EUPHEMIZE +EUPHEMIZED +EUPHEMIZER +EUPHEMIZERS +EUPHEMIZES +EUPHEMIZING +EUPHENIC +EUPHENICS +EUPHONIC +EUPHONICALLY +EUPHONIES +EUPHONIOUS +EUPHONIOUSLY +EUPHONIOUSNESS +EUPHONIUM +EUPHONIUMS +EUPHONIZE +EUPHONIZED +EUPHONIZES +EUPHONIZING +EUPHONY +EUPHORBIA +EUPHORBIAS +EUPHORIA +EUPHORIANT +EUPHORIANTS +EUPHORIAS +EUPHORIC +EUPHORICALLY +EUPHOTIC +EUPHRASIES +EUPHRASY +EUPHROE +EUPHROES +EUPHUISM +EUPHUISMS +EUPHUIST +EUPHUISTIC +EUPHUISTICALLY +EUPHUISTS +EUPLASTIC +EUPLASTICS +EUPLOID +EUPLOIDIES +EUPLOIDS +EUPLOIDY +EUPNEA +EUPNEAS +EUPNEIC +EUPNOEA +EUPNOEAS +EUPNOEIC +EUREKA +EURHYTHMIC +EURHYTHMICS +EURHYTHMIES +EURHYTHMY +EURIPI +EURIPUS +EURO +EUROKIES +EUROKOUS +EUROKY +EUROPIUM +EUROPIUMS +EUROS +EURYBATH +EURYBATHIC +EURYBATHS +EURYHALINE +EURYOKIES +EURYOKOUS +EURYOKY +EURYPTERID +EURYPTERIDS +EURYTHERM +EURYTHERMAL +EURYTHERMIC +EURYTHERMOUS +EURYTHERMS +EURYTHMIC +EURYTHMICS +EURYTHMIES +EURYTHMY +EURYTOPIC +EUSOCIAL +EUSTACIES +EUSTACY +EUSTASIES +EUSTASY +EUSTATIC +EUSTELE +EUSTELES +EUTAXIES +EUTAXY +EUTECTIC +EUTECTICS +EUTECTOID +EUTECTOIDS +EUTHANASIA +EUTHANASIAS +EUTHANASIC +EUTHANATIZE +EUTHANATIZED +EUTHANATIZES +EUTHANATIZING +EUTHANIZE +EUTHANIZED +EUTHANIZES +EUTHANIZING +EUTHENICS +EUTHENIST +EUTHENISTS +EUTHERIAN +EUTHERIANS +EUTHYROID +EUTHYROIDS +EUTROPHIC +EUTROPHICATION +EUTROPHICATIONS +EUTROPHIES +EUTROPHY +EUXENITE +EUXENITES +EVACUANT +EVACUANTS +EVACUATE +EVACUATED +EVACUATES +EVACUATING +EVACUATION +EVACUATIONS +EVACUATIVE +EVACUATOR +EVACUATORS +EVACUEE +EVACUEES +EVADABLE +EVADE +EVADED +EVADER +EVADERS +EVADES +EVADIBLE +EVADING +EVADINGLY +EVAGINATE +EVAGINATED +EVAGINATES +EVAGINATING +EVAGINATION +EVAGINATIONS +EVALUABLE +EVALUATE +EVALUATED +EVALUATES +EVALUATING +EVALUATION +EVALUATIONS +EVALUATIVE +EVALUATOR +EVALUATORS +EVANESCE +EVANESCED +EVANESCENCE +EVANESCENCES +EVANESCENT +EVANESCES +EVANESCING +EVANGEL +EVANGELIC +EVANGELICAL +EVANGELICALLY +EVANGELISM +EVANGELISMS +EVANGELIST +EVANGELISTIC +EVANGELISTS +EVANGELIZATION +EVANGELIZATIONS +EVANGELIZE +EVANGELIZED +EVANGELIZES +EVANGELIZING +EVANGELS +EVANISH +EVANISHED +EVANISHES +EVANISHING +EVAPORATE +EVAPORATED +EVAPORATES +EVAPORATING +EVAPORATION +EVAPORATIONS +EVAPORATIVE +EVAPORATOR +EVAPORATORS +EVAPORITE +EVAPORITES +EVAPORITIC +EVASION +EVASIONAL +EVASIONS +EVASIVE +EVASIVELY +EVASIVENESS +EVASIVENESSES +EVE +EVECTION +EVECTIONS +EVEN +EVENED +EVENER +EVENERS +EVENEST +EVENFALL +EVENFALLS +EVENHANDED +EVENHANDEDLY +EVENHANDEDNESS +EVENING +EVENINGS +EVENLY +EVENNESS +EVENNESSES +EVENS +EVENSONG +EVENSONGS +EVENT +EVENTFUL +EVENTFULLY +EVENTFULNESS +EVENTFULNESSES +EVENTIDE +EVENTIDES +EVENTLESS +EVENTS +EVENTUAL +EVENTUALITIES +EVENTUALITY +EVENTUALLY +EVENTUATE +EVENTUATED +EVENTUATES +EVENTUATING +EVER +EVERBLOOMING +EVERDURING +EVERGLADE +EVERGLADES +EVERGREEN +EVERGREENS +EVERLASTING +EVERLASTINGLY +EVERLASTINGNESS +EVERLASTINGS +EVERMORE +EVERSIBLE +EVERSION +EVERSIONS +EVERT +EVERTED +EVERTING +EVERTOR +EVERTORS +EVERTS +EVERWHERE +EVERWHICH +EVERY +EVERYBODY +EVERYDAY +EVERYDAYNESS +EVERYDAYNESSES +EVERYDAYS +EVERYMAN +EVERYMEN +EVERYONE +EVERYPLACE +EVERYTHING +EVERYWAY +EVERYWHERE +EVERYWOMAN +EVERYWOMEN +EVES +EVICT +EVICTED +EVICTEE +EVICTEES +EVICTING +EVICTION +EVICTIONS +EVICTOR +EVICTORS +EVICTS +EVIDENCE +EVIDENCED +EVIDENCES +EVIDENCING +EVIDENT +EVIDENTIAL +EVIDENTIALLY +EVIDENTIARY +EVIDENTLY +EVIL +EVILDOER +EVILDOERS +EVILDOING +EVILDOINGS +EVILER +EVILEST +EVILLER +EVILLEST +EVILLY +EVILNESS +EVILNESSES +EVILS +EVINCE +EVINCED +EVINCES +EVINCIBLE +EVINCING +EVINCIVE +EVISCERATE +EVISCERATED +EVISCERATES +EVISCERATING +EVISCERATION +EVISCERATIONS +EVITABLE +EVITE +EVITED +EVITES +EVITING +EVOCABLE +EVOCATION +EVOCATIONS +EVOCATIVE +EVOCATIVELY +EVOCATIVENESS +EVOCATIVENESSES +EVOCATOR +EVOCATORS +EVOKE +EVOKED +EVOKER +EVOKERS +EVOKES +EVOKING +EVOLUTE +EVOLUTES +EVOLUTION +EVOLUTIONARILY +EVOLUTIONARY +EVOLUTIONISM +EVOLUTIONISMS +EVOLUTIONIST +EVOLUTIONISTS +EVOLUTIONS +EVOLVABLE +EVOLVE +EVOLVED +EVOLVEMENT +EVOLVEMENTS +EVOLVER +EVOLVERS +EVOLVES +EVOLVING +EVONYMUS +EVONYMUSES +EVULSE +EVULSED +EVULSES +EVULSING +EVULSION +EVULSIONS +EVZONE +EVZONES +EWE +EWER +EWERS +EWES +EX +EXABYTE +EXABYTES +EXACERBATE +EXACERBATED +EXACERBATES +EXACERBATING +EXACERBATION +EXACERBATIONS +EXACT +EXACTA +EXACTABLE +EXACTAS +EXACTED +EXACTER +EXACTERS +EXACTEST +EXACTING +EXACTINGLY +EXACTINGNESS +EXACTINGNESSES +EXACTION +EXACTIONS +EXACTITUDE +EXACTITUDES +EXACTLY +EXACTNESS +EXACTNESSES +EXACTOR +EXACTORS +EXACTS +EXAGGERATE +EXAGGERATED +EXAGGERATEDLY +EXAGGERATEDNESS +EXAGGERATES +EXAGGERATING +EXAGGERATION +EXAGGERATIONS +EXAGGERATIVE +EXAGGERATOR +EXAGGERATORS +EXAGGERATORY +EXAHERTZ +EXAHERTZES +EXALT +EXALTATION +EXALTATIONS +EXALTED +EXALTEDLY +EXALTER +EXALTERS +EXALTING +EXALTS +EXAM +EXAMEN +EXAMENS +EXAMINABLE +EXAMINANT +EXAMINANTS +EXAMINATION +EXAMINATIONAL +EXAMINATIONS +EXAMINE +EXAMINED +EXAMINEE +EXAMINEES +EXAMINER +EXAMINERS +EXAMINES +EXAMINING +EXAMPLE +EXAMPLED +EXAMPLES +EXAMPLING +EXAMS +EXANIMATE +EXANTHEM +EXANTHEMA +EXANTHEMAS +EXANTHEMATA +EXANTHEMATIC +EXANTHEMATOUS +EXANTHEMS +EXAPTED +EXAPTIVE +EXARCH +EXARCHAL +EXARCHATE +EXARCHATES +EXARCHIES +EXARCHS +EXARCHY +EXASPERATE +EXASPERATED +EXASPERATEDLY +EXASPERATES +EXASPERATING +EXASPERATINGLY +EXASPERATION +EXASPERATIONS +EXCAUDATE +EXCAVATE +EXCAVATED +EXCAVATES +EXCAVATING +EXCAVATION +EXCAVATIONAL +EXCAVATIONS +EXCAVATOR +EXCAVATORS +EXCEED +EXCEEDED +EXCEEDER +EXCEEDERS +EXCEEDING +EXCEEDINGLY +EXCEEDS +EXCEL +EXCELLED +EXCELLENCE +EXCELLENCES +EXCELLENCIES +EXCELLENCY +EXCELLENT +EXCELLENTLY +EXCELLING +EXCELS +EXCELSIOR +EXCELSIORS +EXCEPT +EXCEPTED +EXCEPTING +EXCEPTION +EXCEPTIONABLE +EXCEPTIONABLY +EXCEPTIONAL +EXCEPTIONALISM +EXCEPTIONALISMS +EXCEPTIONALITY +EXCEPTIONALLY +EXCEPTIONALNESS +EXCEPTIONS +EXCEPTIVE +EXCEPTS +EXCERPT +EXCERPTED +EXCERPTER +EXCERPTERS +EXCERPTING +EXCERPTION +EXCERPTIONS +EXCERPTOR +EXCERPTORS +EXCERPTS +EXCESS +EXCESSED +EXCESSES +EXCESSING +EXCESSIVE +EXCESSIVELY +EXCESSIVENESS +EXCESSIVENESSES +EXCHANGE +EXCHANGEABILITY +EXCHANGEABLE +EXCHANGED +EXCHANGER +EXCHANGERS +EXCHANGES +EXCHANGING +EXCHEQUER +EXCHEQUERS +EXCIDE +EXCIDED +EXCIDES +EXCIDING +EXCIMER +EXCIMERS +EXCIPIENT +EXCIPIENTS +EXCIPLE +EXCIPLES +EXCISABLE +EXCISE +EXCISED +EXCISEMAN +EXCISEMEN +EXCISES +EXCISING +EXCISION +EXCISIONAL +EXCISIONS +EXCITABILITIES +EXCITABILITY +EXCITABLE +EXCITABLENESS +EXCITABLENESSES +EXCITABLY +EXCITANT +EXCITANTS +EXCITATION +EXCITATIONS +EXCITATIVE +EXCITATORY +EXCITE +EXCITED +EXCITEDLY +EXCITEMENT +EXCITEMENTS +EXCITER +EXCITERS +EXCITES +EXCITING +EXCITINGLY +EXCITON +EXCITONIC +EXCITONS +EXCITOR +EXCITORS +EXCLAIM +EXCLAIMED +EXCLAIMER +EXCLAIMERS +EXCLAIMING +EXCLAIMS +EXCLAMATION +EXCLAMATIONS +EXCLAMATORY +EXCLAVE +EXCLAVES +EXCLOSURE +EXCLOSURES +EXCLUDABILITIES +EXCLUDABILITY +EXCLUDABLE +EXCLUDE +EXCLUDED +EXCLUDER +EXCLUDERS +EXCLUDES +EXCLUDIBLE +EXCLUDING +EXCLUSION +EXCLUSIONARY +EXCLUSIONIST +EXCLUSIONISTS +EXCLUSIONS +EXCLUSIVE +EXCLUSIVELY +EXCLUSIVENESS +EXCLUSIVENESSES +EXCLUSIVES +EXCLUSIVISM +EXCLUSIVISMS +EXCLUSIVIST +EXCLUSIVISTS +EXCLUSIVITIES +EXCLUSIVITY +EXCLUSORY +EXCOGITATE +EXCOGITATED +EXCOGITATES +EXCOGITATING +EXCOGITATION +EXCOGITATIONS +EXCOGITATIVE +EXCOMMUNICATE +EXCOMMUNICATED +EXCOMMUNICATES +EXCOMMUNICATING +EXCOMMUNICATION +EXCOMMUNICATIVE +EXCOMMUNICATOR +EXCOMMUNICATORS +EXCORIATE +EXCORIATED +EXCORIATES +EXCORIATING +EXCORIATION +EXCORIATIONS +EXCREMENT +EXCREMENTAL +EXCREMENTITIOUS +EXCREMENTS +EXCRESCENCE +EXCRESCENCES +EXCRESCENCIES +EXCRESCENCY +EXCRESCENT +EXCRESCENTLY +EXCRETA +EXCRETAL +EXCRETE +EXCRETED +EXCRETER +EXCRETERS +EXCRETES +EXCRETING +EXCRETION +EXCRETIONS +EXCRETIVE +EXCRETORIES +EXCRETORY +EXCRUCIATE +EXCRUCIATED +EXCRUCIATES +EXCRUCIATING +EXCRUCIATINGLY +EXCRUCIATION +EXCRUCIATIONS +EXCULPATE +EXCULPATED +EXCULPATES +EXCULPATING +EXCULPATION +EXCULPATIONS +EXCULPATORY +EXCURRENT +EXCURSION +EXCURSIONIST +EXCURSIONISTS +EXCURSIONS +EXCURSIVE +EXCURSIVELY +EXCURSIVENESS +EXCURSIVENESSES +EXCURSUS +EXCURSUSES +EXCUSABLE +EXCUSABLENESS +EXCUSABLENESSES +EXCUSABLY +EXCUSATORY +EXCUSE +EXCUSED +EXCUSER +EXCUSERS +EXCUSES +EXCUSING +EXEC +EXECRABLE +EXECRABLENESS +EXECRABLENESSES +EXECRABLY +EXECRATE +EXECRATED +EXECRATES +EXECRATING +EXECRATION +EXECRATIONS +EXECRATIVE +EXECRATOR +EXECRATORS +EXECS +EXECUTABLE +EXECUTANT +EXECUTANTS +EXECUTE +EXECUTED +EXECUTER +EXECUTERS +EXECUTES +EXECUTING +EXECUTION +EXECUTIONER +EXECUTIONERS +EXECUTIONS +EXECUTIVE +EXECUTIVES +EXECUTOR +EXECUTORIAL +EXECUTORS +EXECUTORY +EXECUTRICES +EXECUTRIX +EXECUTRIXES +EXED +EXEDRA +EXEDRAE +EXEGESES +EXEGESIS +EXEGETE +EXEGETES +EXEGETIC +EXEGETICAL +EXEGETICS +EXEGETIST +EXEGETISTS +EXEMPLA +EXEMPLAR +EXEMPLARILY +EXEMPLARINESS +EXEMPLARINESSES +EXEMPLARITIES +EXEMPLARITY +EXEMPLARS +EXEMPLARY +EXEMPLIFICATION +EXEMPLIFIED +EXEMPLIFIES +EXEMPLIFY +EXEMPLIFYING +EXEMPLUM +EXEMPT +EXEMPTED +EXEMPTING +EXEMPTION +EXEMPTIONS +EXEMPTIVE +EXEMPTS +EXENTERATE +EXENTERATED +EXENTERATES +EXENTERATING +EXENTERATION +EXENTERATIONS +EXEQUATUR +EXEQUATURS +EXEQUIAL +EXEQUIES +EXEQUY +EXERCISABLE +EXERCISE +EXERCISED +EXERCISER +EXERCISERS +EXERCISES +EXERCISING +EXERCITATION +EXERCITATIONS +EXERCYCLE +EXERCYCLES +EXERGONIC +EXERGUAL +EXERGUE +EXERGUES +EXERT +EXERTED +EXERTING +EXERTION +EXERTIONS +EXERTIVE +EXERTS +EXES +EXEUNT +EXFOLIANT +EXFOLIANTS +EXFOLIATE +EXFOLIATED +EXFOLIATES +EXFOLIATING +EXFOLIATION +EXFOLIATIONS +EXFOLIATIVE +EXHALANT +EXHALANTS +EXHALATION +EXHALATIONS +EXHALE +EXHALED +EXHALENT +EXHALENTS +EXHALES +EXHALING +EXHAUST +EXHAUSTED +EXHAUSTER +EXHAUSTERS +EXHAUSTIBILITY +EXHAUSTIBLE +EXHAUSTING +EXHAUSTION +EXHAUSTIONS +EXHAUSTIVE +EXHAUSTIVELY +EXHAUSTIVENESS +EXHAUSTIVITIES +EXHAUSTIVITY +EXHAUSTLESS +EXHAUSTLESSLY +EXHAUSTLESSNESS +EXHAUSTS +EXHEDRA +EXHEDRAE +EXHIBIT +EXHIBITED +EXHIBITER +EXHIBITERS +EXHIBITING +EXHIBITION +EXHIBITIONER +EXHIBITIONERS +EXHIBITIONISM +EXHIBITIONISMS +EXHIBITIONIST +EXHIBITIONISTIC +EXHIBITIONISTS +EXHIBITIONS +EXHIBITIVE +EXHIBITOR +EXHIBITORS +EXHIBITORY +EXHIBITS +EXHILARATE +EXHILARATED +EXHILARATES +EXHILARATING +EXHILARATINGLY +EXHILARATION +EXHILARATIONS +EXHILARATIVE +EXHORT +EXHORTATION +EXHORTATIONS +EXHORTATIVE +EXHORTATORY +EXHORTED +EXHORTER +EXHORTERS +EXHORTING +EXHORTS +EXHUMATION +EXHUMATIONS +EXHUME +EXHUMED +EXHUMER +EXHUMERS +EXHUMES +EXHUMING +EXIGENCE +EXIGENCES +EXIGENCIES +EXIGENCY +EXIGENT +EXIGENTLY +EXIGIBLE +EXIGUITIES +EXIGUITY +EXIGUOUS +EXIGUOUSLY +EXIGUOUSNESS +EXIGUOUSNESSES +EXILABLE +EXILE +EXILED +EXILER +EXILERS +EXILES +EXILIAN +EXILIC +EXILING +EXIMIOUS +EXINE +EXINES +EXING +EXIST +EXISTED +EXISTENCE +EXISTENCES +EXISTENT +EXISTENTIAL +EXISTENTIALISM +EXISTENTIALISMS +EXISTENTIALIST +EXISTENTIALISTS +EXISTENTIALLY +EXISTENTS +EXISTING +EXISTS +EXIT +EXITED +EXITING +EXITLESS +EXITS +EXOBIOLOGICAL +EXOBIOLOGIES +EXOBIOLOGIST +EXOBIOLOGISTS +EXOBIOLOGY +EXOCARP +EXOCARPS +EXOCRINE +EXOCRINES +EXOCYCLIC +EXOCYTIC +EXOCYTOSE +EXOCYTOSED +EXOCYTOSES +EXOCYTOSING +EXOCYTOSIS +EXOCYTOTIC +EXODERM +EXODERMIS +EXODERMISES +EXODERMS +EXODOI +EXODONTIA +EXODONTIAS +EXODONTIST +EXODONTISTS +EXODOS +EXODUS +EXODUSES +EXOENZYME +EXOENZYMES +EXOERGIC +EXOERYTHROCYTIC +EXOGAMIC +EXOGAMIES +EXOGAMOUS +EXOGAMY +EXOGEN +EXOGENISM +EXOGENISMS +EXOGENOUS +EXOGENOUSLY +EXOGENS +EXON +EXONERATE +EXONERATED +EXONERATES +EXONERATING +EXONERATION +EXONERATIONS +EXONERATIVE +EXONIC +EXONS +EXONUCLEASE +EXONUCLEASES +EXONUMIA +EXONUMIST +EXONUMISTS +EXONYM +EXONYMS +EXOPEPTIDASE +EXOPEPTIDASES +EXOPHTHALMIC +EXOPHTHALMOS +EXOPHTHALMOSES +EXOPHTHALMUS +EXOPHTHALMUSES +EXORABLE +EXORBITANCE +EXORBITANCES +EXORBITANT +EXORBITANTLY +EXORCISE +EXORCISED +EXORCISER +EXORCISERS +EXORCISES +EXORCISING +EXORCISM +EXORCISMS +EXORCIST +EXORCISTIC +EXORCISTICAL +EXORCISTS +EXORCIZE +EXORCIZED +EXORCIZES +EXORCIZING +EXORDIA +EXORDIAL +EXORDIUM +EXORDIUMS +EXOSKELETAL +EXOSKELETON +EXOSKELETONS +EXOSMIC +EXOSMOSE +EXOSMOSES +EXOSMOSIS +EXOSMOTIC +EXOSPHERE +EXOSPHERES +EXOSPHERIC +EXOSPORE +EXOSPORES +EXOSPORIA +EXOSPORIUM +EXOSTOSES +EXOSTOSIS +EXOTERIC +EXOTERICALLY +EXOTHERMAL +EXOTHERMALLY +EXOTHERMIC +EXOTHERMICALLY +EXOTHERMICITIES +EXOTHERMICITY +EXOTIC +EXOTICA +EXOTICALLY +EXOTICISM +EXOTICISMS +EXOTICIST +EXOTICISTS +EXOTICNESS +EXOTICNESSES +EXOTICS +EXOTISM +EXOTISMS +EXOTOXIC +EXOTOXIN +EXOTOXINS +EXOTROPIA +EXOTROPIAS +EXOTROPIC +EXPAND +EXPANDABILITIES +EXPANDABILITY +EXPANDABLE +EXPANDED +EXPANDER +EXPANDERS +EXPANDING +EXPANDOR +EXPANDORS +EXPANDS +EXPANSE +EXPANSES +EXPANSIBILITIES +EXPANSIBILITY +EXPANSIBLE +EXPANSILE +EXPANSION +EXPANSIONAL +EXPANSIONARY +EXPANSIONISM +EXPANSIONISMS +EXPANSIONIST +EXPANSIONISTIC +EXPANSIONISTS +EXPANSIONS +EXPANSIVE +EXPANSIVELY +EXPANSIVENESS +EXPANSIVENESSES +EXPANSIVITIES +EXPANSIVITY +EXPAT +EXPATIATE +EXPATIATED +EXPATIATES +EXPATIATING +EXPATIATION +EXPATIATIONS +EXPATRIATE +EXPATRIATED +EXPATRIATES +EXPATRIATING +EXPATRIATION +EXPATRIATIONS +EXPATRIATISM +EXPATRIATISMS +EXPATS +EXPECT +EXPECTABLE +EXPECTABLY +EXPECTANCE +EXPECTANCES +EXPECTANCIES +EXPECTANCY +EXPECTANT +EXPECTANTLY +EXPECTANTS +EXPECTATION +EXPECTATIONAL +EXPECTATIONS +EXPECTATIVE +EXPECTED +EXPECTEDLY +EXPECTEDNESS +EXPECTEDNESSES +EXPECTER +EXPECTERS +EXPECTING +EXPECTORANT +EXPECTORANTS +EXPECTORATE +EXPECTORATED +EXPECTORATES +EXPECTORATING +EXPECTORATION +EXPECTORATIONS +EXPECTS +EXPEDIENCE +EXPEDIENCES +EXPEDIENCIES +EXPEDIENCY +EXPEDIENT +EXPEDIENTIAL +EXPEDIENTLY +EXPEDIENTS +EXPEDITE +EXPEDITED +EXPEDITER +EXPEDITERS +EXPEDITES +EXPEDITING +EXPEDITION +EXPEDITIONARY +EXPEDITIONS +EXPEDITIOUS +EXPEDITIOUSLY +EXPEDITIOUSNESS +EXPEDITOR +EXPEDITORS +EXPEL +EXPELLABLE +EXPELLANT +EXPELLANTS +EXPELLED +EXPELLEE +EXPELLEES +EXPELLENT +EXPELLENTS +EXPELLER +EXPELLERS +EXPELLING +EXPELS +EXPEND +EXPENDABILITIES +EXPENDABILITY +EXPENDABLE +EXPENDABLES +EXPENDED +EXPENDER +EXPENDERS +EXPENDING +EXPENDITURE +EXPENDITURES +EXPENDS +EXPENSE +EXPENSED +EXPENSES +EXPENSING +EXPENSIVE +EXPENSIVELY +EXPENSIVENESS +EXPENSIVENESSES +EXPERIENCE +EXPERIENCED +EXPERIENCES +EXPERIENCING +EXPERIENTIAL +EXPERIENTIALLY +EXPERIMENT +EXPERIMENTAL +EXPERIMENTALISM +EXPERIMENTALIST +EXPERIMENTALLY +EXPERIMENTATION +EXPERIMENTED +EXPERIMENTER +EXPERIMENTERS +EXPERIMENTING +EXPERIMENTS +EXPERT +EXPERTED +EXPERTING +EXPERTISE +EXPERTISES +EXPERTISM +EXPERTISMS +EXPERTIZE +EXPERTIZED +EXPERTIZES +EXPERTIZING +EXPERTLY +EXPERTNESS +EXPERTNESSES +EXPERTS +EXPIABLE +EXPIATE +EXPIATED +EXPIATES +EXPIATING +EXPIATION +EXPIATIONS +EXPIATOR +EXPIATORS +EXPIATORY +EXPIRATION +EXPIRATIONS +EXPIRATORY +EXPIRE +EXPIRED +EXPIRER +EXPIRERS +EXPIRES +EXPIRIES +EXPIRING +EXPIRY +EXPLAIN +EXPLAINABLE +EXPLAINED +EXPLAINER +EXPLAINERS +EXPLAINING +EXPLAINS +EXPLANATION +EXPLANATIONS +EXPLANATIVE +EXPLANATIVELY +EXPLANATORILY +EXPLANATORY +EXPLANT +EXPLANTATION +EXPLANTATIONS +EXPLANTED +EXPLANTING +EXPLANTS +EXPLETIVE +EXPLETIVES +EXPLETORY +EXPLICABLE +EXPLICABLY +EXPLICATE +EXPLICATED +EXPLICATES +EXPLICATING +EXPLICATION +EXPLICATIONS +EXPLICATIVE +EXPLICATIVELY +EXPLICATOR +EXPLICATORS +EXPLICATORY +EXPLICIT +EXPLICITLY +EXPLICITNESS +EXPLICITNESSES +EXPLICITS +EXPLODE +EXPLODED +EXPLODER +EXPLODERS +EXPLODES +EXPLODING +EXPLOIT +EXPLOITABLE +EXPLOITATION +EXPLOITATIONS +EXPLOITATIVE +EXPLOITATIVELY +EXPLOITED +EXPLOITER +EXPLOITERS +EXPLOITING +EXPLOITIVE +EXPLOITS +EXPLORATION +EXPLORATIONAL +EXPLORATIONS +EXPLORATIVE +EXPLORATIVELY +EXPLORATORY +EXPLORE +EXPLORED +EXPLORER +EXPLORERS +EXPLORES +EXPLORING +EXPLOSION +EXPLOSIONS +EXPLOSIVE +EXPLOSIVELY +EXPLOSIVENESS +EXPLOSIVENESSES +EXPLOSIVES +EXPO +EXPONENT +EXPONENTIAL +EXPONENTIALLY +EXPONENTIALS +EXPONENTIATION +EXPONENTIATIONS +EXPONENTS +EXPORT +EXPORTABILITIES +EXPORTABILITY +EXPORTABLE +EXPORTATION +EXPORTATIONS +EXPORTED +EXPORTER +EXPORTERS +EXPORTING +EXPORTS +EXPOS +EXPOSABLE +EXPOSAL +EXPOSALS +EXPOSE +EXPOSED +EXPOSER +EXPOSERS +EXPOSES +EXPOSING +EXPOSIT +EXPOSITED +EXPOSITING +EXPOSITION +EXPOSITIONAL +EXPOSITIONS +EXPOSITIVE +EXPOSITOR +EXPOSITORS +EXPOSITORY +EXPOSITS +EXPOSTULATE +EXPOSTULATED +EXPOSTULATES +EXPOSTULATING +EXPOSTULATION +EXPOSTULATIONS +EXPOSTULATORY +EXPOSURE +EXPOSURES +EXPOUND +EXPOUNDED +EXPOUNDER +EXPOUNDERS +EXPOUNDING +EXPOUNDS +EXPRESS +EXPRESSAGE +EXPRESSAGES +EXPRESSED +EXPRESSER +EXPRESSERS +EXPRESSES +EXPRESSIBLE +EXPRESSING +EXPRESSION +EXPRESSIONAL +EXPRESSIONISM +EXPRESSIONISMS +EXPRESSIONIST +EXPRESSIONISTIC +EXPRESSIONISTS +EXPRESSIONLESS +EXPRESSIONS +EXPRESSIVE +EXPRESSIVELY +EXPRESSIVENESS +EXPRESSIVITIES +EXPRESSIVITY +EXPRESSLY +EXPRESSMAN +EXPRESSMEN +EXPRESSO +EXPRESSOS +EXPRESSWAY +EXPRESSWAYS +EXPROPRIATE +EXPROPRIATED +EXPROPRIATES +EXPROPRIATING +EXPROPRIATION +EXPROPRIATIONS +EXPROPRIATOR +EXPROPRIATORS +EXPULSE +EXPULSED +EXPULSES +EXPULSING +EXPULSION +EXPULSIONS +EXPULSIVE +EXPUNCTION +EXPUNCTIONS +EXPUNGE +EXPUNGED +EXPUNGER +EXPUNGERS +EXPUNGES +EXPUNGING +EXPURGATE +EXPURGATED +EXPURGATES +EXPURGATING +EXPURGATION +EXPURGATIONS +EXPURGATOR +EXPURGATORIAL +EXPURGATORS +EXPURGATORY +EXQUISITE +EXQUISITELY +EXQUISITENESS +EXQUISITENESSES +EXQUISITES +EXSANGUINATE +EXSANGUINATED +EXSANGUINATES +EXSANGUINATING +EXSANGUINATION +EXSANGUINATIONS +EXSCIND +EXSCINDED +EXSCINDING +EXSCINDS +EXSECANT +EXSECANTS +EXSECT +EXSECTED +EXSECTING +EXSECTION +EXSECTIONS +EXSECTS +EXSERT +EXSERTED +EXSERTILE +EXSERTING +EXSERTION +EXSERTIONS +EXSERTS +EXSICCATE +EXSICCATED +EXSICCATES +EXSICCATING +EXSICCATION +EXSICCATIONS +EXSOLUTION +EXSOLUTIONS +EXSTROPHIES +EXSTROPHY +EXTANT +EXTEMPORAL +EXTEMPORALLY +EXTEMPORANEITY +EXTEMPORANEOUS +EXTEMPORARILY +EXTEMPORARY +EXTEMPORE +EXTEMPORISATION +EXTEMPORISE +EXTEMPORISED +EXTEMPORISES +EXTEMPORISING +EXTEMPORIZATION +EXTEMPORIZE +EXTEMPORIZED +EXTEMPORIZER +EXTEMPORIZERS +EXTEMPORIZES +EXTEMPORIZING +EXTEND +EXTENDABILITIES +EXTENDABILITY +EXTENDABLE +EXTENDED +EXTENDEDLY +EXTENDEDNESS +EXTENDEDNESSES +EXTENDER +EXTENDERS +EXTENDIBLE +EXTENDING +EXTENDS +EXTENSIBILITIES +EXTENSIBILITY +EXTENSIBLE +EXTENSILE +EXTENSION +EXTENSIONAL +EXTENSIONALITY +EXTENSIONALLY +EXTENSIONS +EXTENSITIES +EXTENSITY +EXTENSIVE +EXTENSIVELY +EXTENSIVENESS +EXTENSIVENESSES +EXTENSOMETER +EXTENSOMETERS +EXTENSOR +EXTENSORS +EXTENT +EXTENTS +EXTENUATE +EXTENUATED +EXTENUATES +EXTENUATING +EXTENUATION +EXTENUATIONS +EXTENUATOR +EXTENUATORS +EXTENUATORY +EXTERIOR +EXTERIORISE +EXTERIORISED +EXTERIORISES +EXTERIORISING +EXTERIORITIES +EXTERIORITY +EXTERIORIZATION +EXTERIORIZE +EXTERIORIZED +EXTERIORIZES +EXTERIORIZING +EXTERIORLY +EXTERIORS +EXTERMINATE +EXTERMINATED +EXTERMINATES +EXTERMINATING +EXTERMINATION +EXTERMINATIONS +EXTERMINATOR +EXTERMINATORS +EXTERMINATORY +EXTERMINE +EXTERMINED +EXTERMINES +EXTERMINING +EXTERN +EXTERNAL +EXTERNALISATION +EXTERNALISE +EXTERNALISED +EXTERNALISES +EXTERNALISING +EXTERNALISM +EXTERNALISMS +EXTERNALITIES +EXTERNALITY +EXTERNALIZATION +EXTERNALIZE +EXTERNALIZED +EXTERNALIZES +EXTERNALIZING +EXTERNALLY +EXTERNALS +EXTERNE +EXTERNES +EXTERNS +EXTERNSHIP +EXTERNSHIPS +EXTEROCEPTIVE +EXTEROCEPTOR +EXTEROCEPTORS +EXTERRITORIAL +EXTINCT +EXTINCTED +EXTINCTING +EXTINCTION +EXTINCTIONS +EXTINCTIVE +EXTINCTS +EXTINGUISH +EXTINGUISHABLE +EXTINGUISHED +EXTINGUISHER +EXTINGUISHERS +EXTINGUISHES +EXTINGUISHING +EXTINGUISHMENT +EXTINGUISHMENTS +EXTIRPATE +EXTIRPATED +EXTIRPATES +EXTIRPATING +EXTIRPATION +EXTIRPATIONS +EXTIRPATOR +EXTIRPATORS +EXTOL +EXTOLL +EXTOLLED +EXTOLLER +EXTOLLERS +EXTOLLING +EXTOLLS +EXTOLMENT +EXTOLMENTS +EXTOLS +EXTORT +EXTORTED +EXTORTER +EXTORTERS +EXTORTING +EXTORTION +EXTORTIONARY +EXTORTIONATE +EXTORTIONATELY +EXTORTIONER +EXTORTIONERS +EXTORTIONIST +EXTORTIONISTS +EXTORTIONS +EXTORTIVE +EXTORTS +EXTRA +EXTRABOLD +EXTRABOLDS +EXTRACELLULAR +EXTRACELLULARLY +EXTRACORPOREAL +EXTRACRANIAL +EXTRACT +EXTRACTABILITY +EXTRACTABLE +EXTRACTED +EXTRACTING +EXTRACTION +EXTRACTIONS +EXTRACTIVE +EXTRACTIVELY +EXTRACTIVES +EXTRACTOR +EXTRACTORS +EXTRACTS +EXTRACURRICULAR +EXTRADITABLE +EXTRADITE +EXTRADITED +EXTRADITES +EXTRADITING +EXTRADITION +EXTRADITIONS +EXTRADOS +EXTRADOSES +EXTRAEMBRYONIC +EXTRAGALACTIC +EXTRAHEPATIC +EXTRAJUDICIAL +EXTRAJUDICIALLY +EXTRALEGAL +EXTRALEGALLY +EXTRALIMITAL +EXTRALINGUISTIC +EXTRALITERARY +EXTRALITIES +EXTRALITY +EXTRALOGICAL +EXTRAMARITAL +EXTRAMUNDANE +EXTRAMURAL +EXTRAMURALLY +EXTRAMUSICAL +EXTRANEOUS +EXTRANEOUSLY +EXTRANEOUSNESS +EXTRANET +EXTRANETS +EXTRANUCLEAR +EXTRAORDINAIRE +EXTRAORDINARILY +EXTRAORDINARY +EXTRAPOLATE +EXTRAPOLATED +EXTRAPOLATES +EXTRAPOLATING +EXTRAPOLATION +EXTRAPOLATIONS +EXTRAPOLATIVE +EXTRAPOLATOR +EXTRAPOLATORS +EXTRAPYRAMIDAL +EXTRAS +EXTRASENSORY +EXTRASYSTOLE +EXTRASYSTOLES +EXTRATEXTUAL +EXTRAUTERINE +EXTRAVAGANCE +EXTRAVAGANCES +EXTRAVAGANCIES +EXTRAVAGANCY +EXTRAVAGANT +EXTRAVAGANTLY +EXTRAVAGANZA +EXTRAVAGANZAS +EXTRAVAGATE +EXTRAVAGATED +EXTRAVAGATES +EXTRAVAGATING +EXTRAVASATE +EXTRAVASATED +EXTRAVASATES +EXTRAVASATING +EXTRAVASATION +EXTRAVASATIONS +EXTRAVASCULAR +EXTRAVEHICULAR +EXTRAVERSION +EXTRAVERSIONS +EXTRAVERT +EXTRAVERTED +EXTRAVERTS +EXTREMA +EXTREME +EXTREMELY +EXTREMENESS +EXTREMENESSES +EXTREMER +EXTREMES +EXTREMEST +EXTREMISM +EXTREMISMS +EXTREMIST +EXTREMISTS +EXTREMITIES +EXTREMITY +EXTREMUM +EXTRICABLE +EXTRICATE +EXTRICATED +EXTRICATES +EXTRICATING +EXTRICATION +EXTRICATIONS +EXTRINSIC +EXTRINSICALLY +EXTRORSE +EXTROVERSION +EXTROVERSIONS +EXTROVERT +EXTROVERTED +EXTROVERTS +EXTRUDABILITIES +EXTRUDABILITY +EXTRUDABLE +EXTRUDE +EXTRUDED +EXTRUDER +EXTRUDERS +EXTRUDES +EXTRUDING +EXTRUSION +EXTRUSIONS +EXTRUSIVE +EXTUBATE +EXTUBATED +EXTUBATES +EXTUBATING +EXUBERANCE +EXUBERANCES +EXUBERANT +EXUBERANTLY +EXUBERATE +EXUBERATED +EXUBERATES +EXUBERATING +EXUDATE +EXUDATES +EXUDATION +EXUDATIONS +EXUDATIVE +EXUDE +EXUDED +EXUDES +EXUDING +EXULT +EXULTANCE +EXULTANCES +EXULTANCIES +EXULTANCY +EXULTANT +EXULTANTLY +EXULTATION +EXULTATIONS +EXULTED +EXULTING +EXULTINGLY +EXULTS +EXURB +EXURBAN +EXURBANITE +EXURBANITES +EXURBIA +EXURBIAS +EXURBS +EXUVIA +EXUVIAE +EXUVIAL +EXUVIATE +EXUVIATED +EXUVIATES +EXUVIATING +EXUVIATION +EXUVIATIONS +EXUVIUM +EYAS +EYASES +EYASS +EYASSES +EYE +EYEABLE +EYEBALL +EYEBALLED +EYEBALLING +EYEBALLS +EYEBAR +EYEBARS +EYEBEAM +EYEBEAMS +EYEBLACK +EYEBLACKS +EYEBLINK +EYEBLINKS +EYEBOLT +EYEBOLTS +EYEBRIGHT +EYEBRIGHTS +EYEBROW +EYEBROWS +EYECUP +EYECUPS +EYED +EYEDNESS +EYEDNESSES +EYEDROPPER +EYEDROPPERS +EYEDROPS +EYEFOLD +EYEFOLDS +EYEFUL +EYEFULS +EYEGLASS +EYEGLASSES +EYEHOLE +EYEHOLES +EYEHOOK +EYEHOOKS +EYEING +EYELASH +EYELASHES +EYELESS +EYELET +EYELETS +EYELETTED +EYELETTING +EYELID +EYELIDS +EYELIFT +EYELIFTS +EYELIKE +EYELINER +EYELINERS +EYEN +EYEOPENER +EYEOPENERS +EYEPIECE +EYEPIECES +EYEPOINT +EYEPOINTS +EYEPOPPER +EYEPOPPERS +EYER +EYERS +EYES +EYESHADE +EYESHADES +EYESHINE +EYESHINES +EYESHOT +EYESHOTS +EYESIGHT +EYESIGHTS +EYESOME +EYESORE +EYESORES +EYESPOT +EYESPOTS +EYESTALK +EYESTALKS +EYESTONE +EYESTONES +EYESTRAIN +EYESTRAINS +EYESTRINGS +EYETEETH +EYETOOTH +EYEWASH +EYEWASHES +EYEWATER +EYEWATERS +EYEWEAR +EYEWINK +EYEWINKS +EYEWITNESS +EYEWITNESSES +EYING +EYNE +EYRA +EYRAS +EYRE +EYRES +EYRIE +EYRIES +EYRIR +EYRY +FA +FAB +FABACEOUS +FABBER +FABBEST +FABLE +FABLED +FABLER +FABLERS +FABLES +FABLIAU +FABLIAUX +FABLING +FABRIC +FABRICANT +FABRICANTS +FABRICATE +FABRICATED +FABRICATES +FABRICATING +FABRICATION +FABRICATIONS +FABRICATOR +FABRICATORS +FABRICS +FABS +FABULAR +FABULATE +FABULATED +FABULATES +FABULATING +FABULATOR +FABULATORS +FABULIST +FABULISTIC +FABULISTS +FABULOUS +FABULOUSLY +FABULOUSNESS +FABULOUSNESSES +FACADE +FACADES +FACE +FACEABLE +FACECLOTH +FACECLOTHS +FACED +FACEDOWN +FACEDOWNS +FACELESS +FACELESSNESS +FACELESSNESSES +FACELIFT +FACELIFTED +FACELIFTING +FACELIFTS +FACEMASK +FACEMASKS +FACEPLATE +FACEPLATES +FACER +FACERS +FACES +FACET +FACETE +FACETED +FACETELY +FACETIAE +FACETING +FACETIOUS +FACETIOUSLY +FACETIOUSNESS +FACETIOUSNESSES +FACETS +FACETTED +FACETTING +FACEUP +FACIA +FACIAE +FACIAL +FACIALLY +FACIALS +FACIAS +FACIEND +FACIENDS +FACIES +FACILE +FACILELY +FACILENESS +FACILENESSES +FACILITATE +FACILITATED +FACILITATES +FACILITATING +FACILITATION +FACILITATIONS +FACILITATIVE +FACILITATOR +FACILITATORS +FACILITATORY +FACILITIES +FACILITY +FACING +FACINGS +FACSIMILE +FACSIMILED +FACSIMILEING +FACSIMILES +FACT +FACTFUL +FACTICITIES +FACTICITY +FACTION +FACTIONAL +FACTIONALISM +FACTIONALISMS +FACTIONALLY +FACTIONS +FACTIOUS +FACTIOUSLY +FACTIOUSNESS +FACTIOUSNESSES +FACTITIOUS +FACTITIOUSLY +FACTITIOUSNESS +FACTITIVE +FACTITIVELY +FACTOID +FACTOIDAL +FACTOIDS +FACTOR +FACTORABLE +FACTORAGE +FACTORAGES +FACTORED +FACTORIAL +FACTORIALS +FACTORIES +FACTORING +FACTORIZATION +FACTORIZATIONS +FACTORIZE +FACTORIZED +FACTORIZES +FACTORIZING +FACTORS +FACTORSHIP +FACTORSHIPS +FACTORY +FACTORYLIKE +FACTOTUM +FACTOTUMS +FACTS +FACTUAL +FACTUALISM +FACTUALISMS +FACTUALIST +FACTUALISTS +FACTUALITIES +FACTUALITY +FACTUALLY +FACTUALNESS +FACTUALNESSES +FACTURE +FACTURES +FACULA +FACULAE +FACULAR +FACULTATIVE +FACULTATIVELY +FACULTIES +FACULTY +FAD +FADABLE +FADDIER +FADDIEST +FADDISH +FADDISHLY +FADDISHNESS +FADDISHNESSES +FADDISM +FADDISMS +FADDIST +FADDISTS +FADDY +FADE +FADEAWAY +FADEAWAYS +FADED +FADEDLY +FADEDNESS +FADEDNESSES +FADEIN +FADEINS +FADELESS +FADEOUT +FADEOUTS +FADER +FADERS +FADES +FADGE +FADGED +FADGES +FADGING +FADING +FADINGS +FADLIKE +FADO +FADOS +FADS +FAECAL +FAECES +FAENA +FAENAS +FAERIE +FAERIES +FAERY +FAG +FAGGED +FAGGIER +FAGGIEST +FAGGING +FAGGOT +FAGGOTED +FAGGOTING +FAGGOTINGS +FAGGOTRIES +FAGGOTRY +FAGGOTS +FAGGOTY +FAGGY +FAGIN +FAGINS +FAGOT +FAGOTED +FAGOTER +FAGOTERS +FAGOTING +FAGOTINGS +FAGOTS +FAGS +FAHLBAND +FAHLBANDS +FAIENCE +FAIENCES +FAIL +FAILED +FAILING +FAILINGLY +FAILINGS +FAILLE +FAILLES +FAILS +FAILURE +FAILURES +FAIN +FAINEANCE +FAINEANCES +FAINEANT +FAINEANTS +FAINER +FAINEST +FAINT +FAINTED +FAINTER +FAINTERS +FAINTEST +FAINTHEARTED +FAINTHEARTEDLY +FAINTING +FAINTISH +FAINTISHNESS +FAINTISHNESSES +FAINTLY +FAINTNESS +FAINTNESSES +FAINTS +FAIR +FAIRED +FAIRER +FAIREST +FAIRGOER +FAIRGOERS +FAIRGROUND +FAIRGROUNDS +FAIRIES +FAIRING +FAIRINGS +FAIRISH +FAIRISHLY +FAIRLEAD +FAIRLEADER +FAIRLEADERS +FAIRLEADS +FAIRLY +FAIRNESS +FAIRNESSES +FAIRS +FAIRWAY +FAIRWAYS +FAIRY +FAIRYHOOD +FAIRYHOODS +FAIRYISM +FAIRYISMS +FAIRYLAND +FAIRYLANDS +FAIRYLIKE +FAITH +FAITHED +FAITHFUL +FAITHFULLY +FAITHFULNESS +FAITHFULNESSES +FAITHFULS +FAITHING +FAITHLESS +FAITHLESSLY +FAITHLESSNESS +FAITHLESSNESSES +FAITHS +FAITOUR +FAITOURS +FAJITA +FAJITAS +FAKE +FAKED +FAKEER +FAKEERS +FAKER +FAKERIES +FAKERS +FAKERY +FAKES +FAKEY +FAKING +FAKIR +FAKIRS +FALAFEL +FALAFELS +FALBALA +FALBALAS +FALCATE +FALCATED +FALCES +FALCHION +FALCHIONS +FALCIFORM +FALCON +FALCONER +FALCONERS +FALCONET +FALCONETS +FALCONINE +FALCONOID +FALCONRIES +FALCONRY +FALCONS +FALDERAL +FALDERALS +FALDEROL +FALDEROLS +FALDSTOOL +FALDSTOOLS +FALL +FALLACIES +FALLACIOUS +FALLACIOUSLY +FALLACIOUSNESS +FALLACY +FALLAL +FALLALERIES +FALLALERY +FALLALS +FALLAWAY +FALLAWAYS +FALLBACK +FALLBACKS +FALLBOARD +FALLBOARDS +FALLEN +FALLER +FALLERS +FALLFISH +FALLFISHES +FALLIBILITIES +FALLIBILITY +FALLIBLE +FALLIBLY +FALLING +FALLOFF +FALLOFFS +FALLOUT +FALLOUTS +FALLOW +FALLOWED +FALLOWING +FALLOWNESS +FALLOWNESSES +FALLOWS +FALLS +FALSE +FALSEFACE +FALSEFACES +FALSEHOOD +FALSEHOODS +FALSELY +FALSENESS +FALSENESSES +FALSER +FALSEST +FALSETTO +FALSETTOS +FALSEWORK +FALSEWORKS +FALSIE +FALSIES +FALSIFIABILITY +FALSIFIABLE +FALSIFICATION +FALSIFICATIONS +FALSIFIED +FALSIFIER +FALSIFIERS +FALSIFIES +FALSIFY +FALSIFYING +FALSITIES +FALSITY +FALTBOAT +FALTBOATS +FALTER +FALTERED +FALTERER +FALTERERS +FALTERING +FALTERINGLY +FALTERS +FALX +FAME +FAMED +FAMELESS +FAMES +FAMILIAL +FAMILIAR +FAMILIARISE +FAMILIARISED +FAMILIARISES +FAMILIARISING +FAMILIARITIES +FAMILIARITY +FAMILIARIZATION +FAMILIARIZE +FAMILIARIZED +FAMILIARIZES +FAMILIARIZING +FAMILIARLY +FAMILIARNESS +FAMILIARNESSES +FAMILIARS +FAMILIES +FAMILISM +FAMILISMS +FAMILISTIC +FAMILY +FAMINE +FAMINES +FAMING +FAMISH +FAMISHED +FAMISHES +FAMISHING +FAMISHMENT +FAMISHMENTS +FAMOUS +FAMOUSLY +FAMOUSNESS +FAMOUSNESSES +FAMULI +FAMULUS +FAN +FANATIC +FANATICAL +FANATICALLY +FANATICALNESS +FANATICALNESSES +FANATICISM +FANATICISMS +FANATICIZE +FANATICIZED +FANATICIZES +FANATICIZING +FANATICS +FANCIED +FANCIER +FANCIERS +FANCIES +FANCIEST +FANCIFIED +FANCIFIES +FANCIFUL +FANCIFULLY +FANCIFULNESS +FANCIFULNESSES +FANCIFY +FANCIFYING +FANCILESS +FANCILY +FANCINESS +FANCINESSES +FANCY +FANCYING +FANCYWORK +FANCYWORKS +FANDANGO +FANDANGOS +FANDOM +FANDOMS +FANE +FANEGA +FANEGADA +FANEGADAS +FANEGAS +FANES +FANFARE +FANFARES +FANFARON +FANFARONADE +FANFARONADES +FANFARONS +FANFIC +FANFICS +FANFOLD +FANFOLDED +FANFOLDING +FANFOLDS +FANG +FANGA +FANGAS +FANGED +FANGLESS +FANGLIKE +FANGS +FANION +FANIONS +FANJET +FANJETS +FANLIGHT +FANLIGHTS +FANLIKE +FANNED +FANNER +FANNERS +FANNIES +FANNING +FANNY +FANO +FANON +FANONS +FANOS +FANS +FANTABULOUS +FANTAIL +FANTAILED +FANTAILS +FANTASIA +FANTASIAS +FANTASIE +FANTASIED +FANTASIES +FANTASISE +FANTASISED +FANTASISES +FANTASISING +FANTASIST +FANTASISTS +FANTASIZE +FANTASIZED +FANTASIZER +FANTASIZERS +FANTASIZES +FANTASIZING +FANTASM +FANTASMS +FANTAST +FANTASTIC +FANTASTICAL +FANTASTICALITY +FANTASTICALLY +FANTASTICALNESS +FANTASTICATE +FANTASTICATED +FANTASTICATES +FANTASTICATING +FANTASTICATION +FANTASTICATIONS +FANTASTICO +FANTASTICOES +FANTASTICS +FANTASTS +FANTASY +FANTASYING +FANTASYLAND +FANTASYLANDS +FANTOCCINI +FANTOD +FANTODS +FANTOM +FANTOMS +FANUM +FANUMS +FANWISE +FANWORT +FANWORTS +FANZINE +FANZINES +FAQIR +FAQIRS +FAQUIR +FAQUIRS +FAR +FARAD +FARADAIC +FARADAY +FARADAYS +FARADIC +FARADISE +FARADISED +FARADISES +FARADISING +FARADISM +FARADISMS +FARADIZE +FARADIZED +FARADIZER +FARADIZERS +FARADIZES +FARADIZING +FARADS +FARANDOLE +FARANDOLES +FARAWAY +FARCE +FARCED +FARCER +FARCERS +FARCES +FARCEUR +FARCEURS +FARCI +FARCICAL +FARCICALITIES +FARCICALITY +FARCICALLY +FARCIE +FARCIES +FARCING +FARCY +FARD +FARDED +FARDEL +FARDELS +FARDING +FARDS +FARE +FAREBOX +FAREBOXES +FARED +FARER +FARERS +FARES +FAREWELL +FAREWELLED +FAREWELLING +FAREWELLS +FARFAL +FARFALLE +FARFALS +FARFEL +FARFELS +FARFETCHEDNESS +FARINA +FARINACEOUS +FARINAS +FARING +FARINHA +FARINHAS +FARINOSE +FARKLEBERRIES +FARKLEBERRY +FARL +FARLE +FARLES +FARLS +FARM +FARMABLE +FARMED +FARMER +FARMERETTE +FARMERETTES +FARMERS +FARMHAND +FARMHANDS +FARMHOUSE +FARMHOUSES +FARMING +FARMINGS +FARMLAND +FARMLANDS +FARMS +FARMSTEAD +FARMSTEADS +FARMWIFE +FARMWIVES +FARMWORK +FARMWORKER +FARMWORKERS +FARMWORKS +FARMYARD +FARMYARDS +FARNESOL +FARNESOLS +FARNESS +FARNESSES +FARO +FAROLITO +FAROLITOS +FAROS +FAROUCHE +FARRAGINOUS +FARRAGO +FARRAGOES +FARRIER +FARRIERIES +FARRIERS +FARRIERY +FARROW +FARROWED +FARROWING +FARROWS +FARSEEING +FARSIDE +FARSIDES +FARSIGHTED +FARSIGHTEDLY +FARSIGHTEDNESS +FART +FARTED +FARTHER +FARTHERMOST +FARTHEST +FARTHING +FARTHINGALE +FARTHINGALES +FARTHINGS +FARTING +FARTLEK +FARTLEKS +FARTS +FAS +FASCES +FASCIA +FASCIAE +FASCIAL +FASCIAS +FASCIATE +FASCIATED +FASCIATION +FASCIATIONS +FASCICLE +FASCICLED +FASCICLES +FASCICULAR +FASCICULARLY +FASCICULATE +FASCICULATED +FASCICULATION +FASCICULATIONS +FASCICULE +FASCICULES +FASCICULI +FASCICULUS +FASCIITIS +FASCIITISES +FASCINATE +FASCINATED +FASCINATES +FASCINATING +FASCINATINGLY +FASCINATION +FASCINATIONS +FASCINATOR +FASCINATORS +FASCINE +FASCINES +FASCIOLIASES +FASCIOLIASIS +FASCISM +FASCISMS +FASCIST +FASCISTIC +FASCISTICALLY +FASCISTS +FASCITIS +FASCITISES +FASH +FASHED +FASHES +FASHING +FASHION +FASHIONABILITY +FASHIONABLE +FASHIONABLENESS +FASHIONABLES +FASHIONABLY +FASHIONED +FASHIONER +FASHIONERS +FASHIONING +FASHIONISTA +FASHIONISTAS +FASHIONMONGER +FASHIONMONGERS +FASHIONS +FASHIOUS +FAST +FASTBACK +FASTBACKS +FASTBALL +FASTBALLER +FASTBALLERS +FASTBALLS +FASTED +FASTEN +FASTENED +FASTENER +FASTENERS +FASTENING +FASTENINGS +FASTENS +FASTER +FASTEST +FASTIDIOUS +FASTIDIOUSLY +FASTIDIOUSNESS +FASTIGIATE +FASTIGIUM +FASTIGIUMS +FASTING +FASTINGS +FASTNESS +FASTNESSES +FASTS +FASTUOUS +FAT +FATAL +FATALISM +FATALISMS +FATALIST +FATALISTIC +FATALISTICALLY +FATALISTS +FATALITIES +FATALITY +FATALLY +FATALNESS +FATALNESSES +FATBACK +FATBACKS +FATBIRD +FATBIRDS +FATE +FATED +FATEFUL +FATEFULLY +FATEFULNESS +FATEFULNESSES +FATES +FATHEAD +FATHEADED +FATHEADEDLY +FATHEADEDNESS +FATHEADEDNESSES +FATHEADS +FATHER +FATHERED +FATHERHOOD +FATHERHOODS +FATHERING +FATHERLAND +FATHERLANDS +FATHERLESS +FATHERLIKE +FATHERLINESS +FATHERLINESSES +FATHERLY +FATHERS +FATHOM +FATHOMABLE +FATHOMED +FATHOMER +FATHOMERS +FATHOMING +FATHOMLESS +FATHOMLESSLY +FATHOMLESSNESS +FATHOMS +FATIDIC +FATIDICAL +FATIGABILITIES +FATIGABILITY +FATIGABLE +FATIGUE +FATIGUED +FATIGUES +FATIGUING +FATIGUINGLY +FATING +FATLESS +FATLIKE +FATLING +FATLINGS +FATLY +FATNESS +FATNESSES +FATS +FATSHEDERA +FATSHEDERAS +FATSO +FATSOES +FATSOS +FATSTOCK +FATSTOCKS +FATTED +FATTEN +FATTENED +FATTENER +FATTENERS +FATTENING +FATTENS +FATTER +FATTEST +FATTIER +FATTIES +FATTIEST +FATTILY +FATTINESS +FATTINESSES +FATTING +FATTISH +FATTY +FATUITIES +FATUITY +FATUOUS +FATUOUSLY +FATUOUSNESS +FATUOUSNESSES +FATWA +FATWAS +FATWOOD +FATWOODS +FAUBOURG +FAUBOURGS +FAUCAL +FAUCALS +FAUCES +FAUCET +FAUCETS +FAUCIAL +FAUGH +FAULD +FAULDS +FAULT +FAULTED +FAULTFINDER +FAULTFINDERS +FAULTFINDING +FAULTFINDINGS +FAULTIER +FAULTIEST +FAULTILY +FAULTINESS +FAULTINESSES +FAULTING +FAULTLESS +FAULTLESSLY +FAULTLESSNESS +FAULTLESSNESSES +FAULTS +FAULTY +FAUN +FAUNA +FAUNAE +FAUNAL +FAUNALLY +FAUNAS +FAUNISTIC +FAUNISTICALLY +FAUNLIKE +FAUNS +FAUTEUIL +FAUTEUILS +FAUVE +FAUVES +FAUVISM +FAUVISMS +FAUVIST +FAUVISTS +FAUX +FAVA +FAVAS +FAVE +FAVELA +FAVELAS +FAVELLA +FAVELLAS +FAVEOLATE +FAVES +FAVISM +FAVISMS +FAVONIAN +FAVOR +FAVORABLE +FAVORABLENESS +FAVORABLENESSES +FAVORABLY +FAVORED +FAVORER +FAVORERS +FAVORING +FAVORITE +FAVORITES +FAVORITISM +FAVORITISMS +FAVORS +FAVOUR +FAVOURED +FAVOURER +FAVOURERS +FAVOURING +FAVOURS +FAVUS +FAVUSES +FAWN +FAWNED +FAWNER +FAWNERS +FAWNIER +FAWNIEST +FAWNING +FAWNINGLY +FAWNLIKE +FAWNS +FAWNY +FAX +FAXED +FAXES +FAXING +FAY +FAYALITE +FAYALITES +FAYED +FAYING +FAYS +FAZE +FAZED +FAZENDA +FAZENDAS +FAZES +FAZING +FE +FEAL +FEALTIES +FEALTY +FEAR +FEARED +FEARER +FEARERS +FEARFUL +FEARFULLER +FEARFULLEST +FEARFULLY +FEARFULNESS +FEARFULNESSES +FEARING +FEARLESS +FEARLESSLY +FEARLESSNESS +FEARLESSNESSES +FEARS +FEARSOME +FEARSOMELY +FEARSOMENESS +FEARSOMENESSES +FEASANCE +FEASANCES +FEASE +FEASED +FEASES +FEASIBILITIES +FEASIBILITY +FEASIBLE +FEASIBLY +FEASING +FEAST +FEASTED +FEASTER +FEASTERS +FEASTFUL +FEASTING +FEASTLESS +FEASTS +FEAT +FEATER +FEATEST +FEATHER +FEATHERBED +FEATHERBEDDED +FEATHERBEDDING +FEATHERBEDDINGS +FEATHERBEDS +FEATHERBRAIN +FEATHERBRAINED +FEATHERBRAINS +FEATHERED +FEATHEREDGE +FEATHEREDGED +FEATHEREDGES +FEATHEREDGING +FEATHERHEAD +FEATHERHEADED +FEATHERHEADS +FEATHERIER +FEATHERIEST +FEATHERING +FEATHERINGS +FEATHERLESS +FEATHERLIGHT +FEATHERS +FEATHERSTITCH +FEATHERSTITCHED +FEATHERSTITCHES +FEATHERWEIGHT +FEATHERWEIGHTS +FEATHERY +FEATLIER +FEATLIEST +FEATLY +FEATS +FEATURE +FEATURED +FEATURELESS +FEATURES +FEATURETTE +FEATURETTES +FEATURING +FEAZE +FEAZED +FEAZES +FEAZING +FEBRICITIES +FEBRICITY +FEBRIFIC +FEBRIFUGE +FEBRIFUGES +FEBRILE +FEBRILITIES +FEBRILITY +FECAL +FECES +FECIAL +FECIALS +FECK +FECKLESS +FECKLESSLY +FECKLESSNESS +FECKLESSNESSES +FECKLY +FECKS +FECULA +FECULAE +FECULENCE +FECULENCES +FECULENT +FECUND +FECUNDATE +FECUNDATED +FECUNDATES +FECUNDATING +FECUNDATION +FECUNDATIONS +FECUNDITIES +FECUNDITY +FED +FEDAYEE +FEDAYEEN +FEDERACIES +FEDERACY +FEDERAL +FEDERALESE +FEDERALESES +FEDERALISM +FEDERALISMS +FEDERALIST +FEDERALISTS +FEDERALIZATION +FEDERALIZATIONS +FEDERALIZE +FEDERALIZED +FEDERALIZES +FEDERALIZING +FEDERALLY +FEDERALS +FEDERATE +FEDERATED +FEDERATES +FEDERATING +FEDERATION +FEDERATIONS +FEDERATIVE +FEDERATIVELY +FEDERATOR +FEDERATORS +FEDEX +FEDEXED +FEDEXES +FEDEXING +FEDORA +FEDORAS +FEDS +FEE +FEEB +FEEBLE +FEEBLEMINDED +FEEBLEMINDEDLY +FEEBLENESS +FEEBLENESSES +FEEBLER +FEEBLEST +FEEBLISH +FEEBLY +FEEBS +FEED +FEEDABLE +FEEDBACK +FEEDBACKS +FEEDBAG +FEEDBAGS +FEEDBOX +FEEDBOXES +FEEDER +FEEDERS +FEEDGRAIN +FEEDGRAINS +FEEDHOLE +FEEDHOLES +FEEDING +FEEDLOT +FEEDLOTS +FEEDS +FEEDSTOCK +FEEDSTOCKS +FEEDSTUFF +FEEDSTUFFS +FEEDYARD +FEEDYARDS +FEEING +FEEL +FEELER +FEELERS +FEELESS +FEELING +FEELINGLY +FEELINGNESS +FEELINGNESSES +FEELINGS +FEELS +FEES +FEET +FEETFIRST +FEETLESS +FEEZE +FEEZED +FEEZES +FEEZING +FEH +FEHS +FEIGN +FEIGNED +FEIGNEDLY +FEIGNER +FEIGNERS +FEIGNING +FEIGNS +FEIJOA +FEIJOAS +FEINT +FEINTED +FEINTING +FEINTS +FEIRIE +FEIST +FEISTIER +FEISTIEST +FEISTILY +FEISTINESS +FEISTINESSES +FEISTS +FEISTY +FELAFEL +FELAFELS +FELDSCHER +FELDSCHERS +FELDSHER +FELDSHERS +FELDSPAR +FELDSPARS +FELDSPATHIC +FELICIFIC +FELICITATE +FELICITATED +FELICITATES +FELICITATING +FELICITATION +FELICITATIONS +FELICITATOR +FELICITATORS +FELICITIES +FELICITOUS +FELICITOUSLY +FELICITOUSNESS +FELICITY +FELID +FELIDS +FELINE +FELINELY +FELINES +FELINITIES +FELINITY +FELL +FELLA +FELLABLE +FELLAH +FELLAHEEN +FELLAHIN +FELLAHS +FELLAS +FELLATE +FELLATED +FELLATES +FELLATING +FELLATIO +FELLATION +FELLATIONS +FELLATIOS +FELLATOR +FELLATORS +FELLATRICES +FELLATRIX +FELLATRIXES +FELLED +FELLER +FELLERS +FELLEST +FELLIES +FELLING +FELLMONGER +FELLMONGERED +FELLMONGERIES +FELLMONGERING +FELLMONGERINGS +FELLMONGERS +FELLMONGERY +FELLNESS +FELLNESSES +FELLOE +FELLOES +FELLOW +FELLOWED +FELLOWING +FELLOWLY +FELLOWMAN +FELLOWMEN +FELLOWS +FELLOWSHIP +FELLOWSHIPED +FELLOWSHIPING +FELLOWSHIPPED +FELLOWSHIPPING +FELLOWSHIPS +FELLS +FELLY +FELON +FELONIES +FELONIOUS +FELONIOUSLY +FELONIOUSNESS +FELONIOUSNESSES +FELONRIES +FELONRY +FELONS +FELONY +FELSIC +FELSITE +FELSITES +FELSITIC +FELSPAR +FELSPARS +FELSTONE +FELSTONES +FELT +FELTED +FELTING +FELTINGS +FELTLIKE +FELTS +FELUCCA +FELUCCAS +FELWORT +FELWORTS +FEM +FEMALE +FEMALENESS +FEMALENESSES +FEMALES +FEME +FEMES +FEMINACIES +FEMINACY +FEMINAZI +FEMINAZIS +FEMINIE +FEMININE +FEMININELY +FEMININENESS +FEMININENESSES +FEMININES +FEMININITIES +FEMININITY +FEMINISE +FEMINISED +FEMINISES +FEMINISING +FEMINISM +FEMINISMS +FEMINIST +FEMINISTIC +FEMINISTS +FEMINITIES +FEMINITY +FEMINIZATION +FEMINIZATIONS +FEMINIZE +FEMINIZED +FEMINIZES +FEMINIZING +FEMME +FEMMES +FEMORA +FEMORAL +FEMS +FEMTOSECOND +FEMTOSECONDS +FEMUR +FEMURS +FEN +FENAGLE +FENAGLED +FENAGLES +FENAGLING +FENCE +FENCED +FENCELESS +FENCELESSNESS +FENCELESSNESSES +FENCER +FENCEROW +FENCEROWS +FENCERS +FENCES +FENCIBLE +FENCIBLES +FENCING +FENCINGS +FEND +FENDED +FENDER +FENDERED +FENDERLESS +FENDERS +FENDING +FENDS +FENESTRA +FENESTRAE +FENESTRAL +FENESTRATE +FENESTRATED +FENESTRATION +FENESTRATIONS +FENLAND +FENLANDS +FENNEC +FENNECS +FENNEL +FENNELS +FENNIER +FENNIEST +FENNY +FENS +FENTANYL +FENTANYLS +FENTHION +FENTHIONS +FENUGREEK +FENUGREEKS +FENURON +FENURONS +FEOD +FEODARIES +FEODARY +FEODS +FEOFF +FEOFFED +FEOFFEE +FEOFFEES +FEOFFER +FEOFFERS +FEOFFING +FEOFFMENT +FEOFFMENTS +FEOFFOR +FEOFFORS +FEOFFS +FER +FERACITIES +FERACITY +FERAL +FERALS +FERBAM +FERBAMS +FERE +FERES +FERETORIES +FERETORY +FERIA +FERIAE +FERIAL +FERIAS +FERINE +FERITIES +FERITY +FERLIE +FERLIES +FERLY +FERMATA +FERMATAS +FERMATE +FERMENT +FERMENTABLE +FERMENTATION +FERMENTATIONS +FERMENTATIVE +FERMENTED +FERMENTER +FERMENTERS +FERMENTING +FERMENTOR +FERMENTORS +FERMENTS +FERMI +FERMION +FERMIONIC +FERMIONS +FERMIS +FERMIUM +FERMIUMS +FERN +FERNERIES +FERNERY +FERNIER +FERNIEST +FERNINST +FERNLESS +FERNLIKE +FERNS +FERNY +FEROCIOUS +FEROCIOUSLY +FEROCIOUSNESS +FEROCIOUSNESSES +FEROCITIES +FEROCITY +FERRATE +FERRATES +FERREDOXIN +FERREDOXINS +FERREL +FERRELED +FERRELING +FERRELLED +FERRELLING +FERRELS +FERREOUS +FERRET +FERRETED +FERRETER +FERRETERS +FERRETING +FERRETINGS +FERRETS +FERRETY +FERRIAGE +FERRIAGES +FERRIC +FERRICYANIDE +FERRICYANIDES +FERRIED +FERRIES +FERRIFEROUS +FERRIMAGNET +FERRIMAGNETIC +FERRIMAGNETISM +FERRIMAGNETISMS +FERRIMAGNETS +FERRITE +FERRITES +FERRITIC +FERRITIN +FERRITINS +FERROCENE +FERROCENES +FERROCONCRETE +FERROCONCRETES +FERROCYANIDE +FERROCYANIDES +FERROELECTRIC +FERROELECTRICS +FERROMAGNESIAN +FERROMAGNET +FERROMAGNETIC +FERROMAGNETISM +FERROMAGNETISMS +FERROMAGNETS +FERROMANGANESE +FERROMANGANESES +FERROSILICON +FERROSILICONS +FERROTYPE +FERROTYPED +FERROTYPES +FERROTYPING +FERROUS +FERRUGINOUS +FERRULE +FERRULED +FERRULES +FERRULING +FERRUM +FERRUMS +FERRY +FERRYBOAT +FERRYBOATS +FERRYING +FERRYMAN +FERRYMEN +FERTILE +FERTILELY +FERTILENESS +FERTILENESSES +FERTILITIES +FERTILITY +FERTILIZABLE +FERTILIZATION +FERTILIZATIONS +FERTILIZE +FERTILIZED +FERTILIZER +FERTILIZERS +FERTILIZES +FERTILIZING +FERULA +FERULAE +FERULAS +FERULE +FERULED +FERULES +FERULING +FERVENCIES +FERVENCY +FERVENT +FERVENTLY +FERVID +FERVIDITIES +FERVIDITY +FERVIDLY +FERVIDNESS +FERVIDNESSES +FERVOR +FERVORS +FERVOUR +FERVOURS +FES +FESCENNINE +FESCUE +FESCUES +FESS +FESSE +FESSED +FESSES +FESSING +FESSWISE +FEST +FESTAL +FESTALLY +FESTER +FESTERED +FESTERING +FESTERS +FESTINATE +FESTINATED +FESTINATELY +FESTINATES +FESTINATING +FESTIVAL +FESTIVALGOER +FESTIVALGOERS +FESTIVALS +FESTIVE +FESTIVELY +FESTIVENESS +FESTIVENESSES +FESTIVITIES +FESTIVITY +FESTOON +FESTOONED +FESTOONERIES +FESTOONERY +FESTOONING +FESTOONS +FESTS +FET +FETA +FETAL +FETAS +FETATION +FETATIONS +FETCH +FETCHED +FETCHER +FETCHERS +FETCHES +FETCHING +FETCHINGLY +FETE +FETED +FETERITA +FETERITAS +FETES +FETIAL +FETIALES +FETIALIS +FETIALS +FETICH +FETICHES +FETICHISM +FETICHISMS +FETICIDAL +FETICIDE +FETICIDES +FETID +FETIDITIES +FETIDITY +FETIDLY +FETIDNESS +FETIDNESSES +FETING +FETISH +FETISHES +FETISHISM +FETISHISMS +FETISHIST +FETISHISTIC +FETISHISTICALLY +FETISHISTS +FETISHIZE +FETISHIZED +FETISHIZES +FETISHIZING +FETLOCK +FETLOCKS +FETOLOGIES +FETOLOGIST +FETOLOGISTS +FETOLOGY +FETOPROTEIN +FETOPROTEINS +FETOR +FETORS +FETOSCOPE +FETOSCOPES +FETOSCOPIES +FETOSCOPY +FETS +FETTED +FETTER +FETTERED +FETTERER +FETTERERS +FETTERING +FETTERS +FETTING +FETTLE +FETTLED +FETTLES +FETTLING +FETTLINGS +FETTUCCINE +FETTUCCINI +FETTUCINE +FETTUCINI +FETUS +FETUSES +FEU +FEUAR +FEUARS +FEUD +FEUDAL +FEUDALISM +FEUDALISMS +FEUDALIST +FEUDALISTIC +FEUDALISTS +FEUDALITIES +FEUDALITY +FEUDALIZATION +FEUDALIZATIONS +FEUDALIZE +FEUDALIZED +FEUDALIZES +FEUDALIZING +FEUDALLY +FEUDARIES +FEUDARY +FEUDATORIES +FEUDATORY +FEUDED +FEUDING +FEUDIST +FEUDISTS +FEUDS +FEUED +FEUILLETON +FEUILLETONISM +FEUILLETONISMS +FEUILLETONIST +FEUILLETONISTS +FEUILLETONS +FEUING +FEUS +FEVER +FEVERED +FEVERFEW +FEVERFEWS +FEVERING +FEVERISH +FEVERISHLY +FEVERISHNESS +FEVERISHNESSES +FEVEROUS +FEVERROOT +FEVERROOTS +FEVERS +FEVERWEED +FEVERWEEDS +FEVERWORT +FEVERWORTS +FEW +FEWER +FEWEST +FEWNESS +FEWNESSES +FEWTRILS +FEY +FEYER +FEYEST +FEYLY +FEYNESS +FEYNESSES +FEZ +FEZES +FEZZED +FEZZES +FEZZY +FIACRE +FIACRES +FIANCE +FIANCEE +FIANCEES +FIANCES +FIANCHETTO +FIANCHETTOED +FIANCHETTOING +FIANCHETTOS +FIAR +FIARS +FIASCHI +FIASCO +FIASCOES +FIASCOS +FIAT +FIATS +FIB +FIBBED +FIBBER +FIBBERS +FIBBING +FIBER +FIBERBOARD +FIBERBOARDS +FIBERED +FIBERFILL +FIBERFILLS +FIBERGLASS +FIBERGLASSED +FIBERGLASSES +FIBERGLASSING +FIBERIZATION +FIBERIZATIONS +FIBERIZE +FIBERIZED +FIBERIZES +FIBERIZING +FIBERLESS +FIBERLIKE +FIBERS +FIBERSCOPE +FIBERSCOPES +FIBRANNE +FIBRANNES +FIBRE +FIBREBOARD +FIBREBOARDS +FIBREFILL +FIBREFILLS +FIBREGLASS +FIBREGLASSES +FIBRES +FIBRIL +FIBRILLA +FIBRILLAE +FIBRILLAR +FIBRILLATE +FIBRILLATED +FIBRILLATES +FIBRILLATING +FIBRILLATION +FIBRILLATIONS +FIBRILS +FIBRIN +FIBRINOGEN +FIBRINOGENS +FIBRINOID +FIBRINOIDS +FIBRINOLYSES +FIBRINOLYSIN +FIBRINOLYSINS +FIBRINOLYSIS +FIBRINOLYTIC +FIBRINOPEPTIDE +FIBRINOPEPTIDES +FIBRINOUS +FIBRINS +FIBROBLAST +FIBROBLASTIC +FIBROBLASTS +FIBROCYSTIC +FIBROID +FIBROIDS +FIBROIN +FIBROINS +FIBROMA +FIBROMAS +FIBROMATA +FIBROMATOUS +FIBROMYALGIA +FIBROMYALGIAS +FIBRONECTIN +FIBRONECTINS +FIBROSARCOMA +FIBROSARCOMAS +FIBROSARCOMATA +FIBROSES +FIBROSIS +FIBROSITIS +FIBROSITISES +FIBROTIC +FIBROUS +FIBROUSLY +FIBROVASCULAR +FIBS +FIBSTER +FIBSTERS +FIBULA +FIBULAE +FIBULAR +FIBULAS +FICE +FICES +FICHE +FICHES +FICHU +FICHUS +FICIN +FICINS +FICKLE +FICKLENESS +FICKLENESSES +FICKLER +FICKLEST +FICKLY +FICO +FICOES +FICTILE +FICTION +FICTIONAL +FICTIONALISE +FICTIONALISED +FICTIONALISES +FICTIONALISING +FICTIONALITIES +FICTIONALITY +FICTIONALIZE +FICTIONALIZED +FICTIONALIZES +FICTIONALIZING +FICTIONALLY +FICTIONEER +FICTIONEERING +FICTIONEERINGS +FICTIONEERS +FICTIONIST +FICTIONISTS +FICTIONIZATION +FICTIONIZATIONS +FICTIONIZE +FICTIONIZED +FICTIONIZES +FICTIONIZING +FICTIONS +FICTITIOUS +FICTITIOUSLY +FICTITIOUSNESS +FICTIVE +FICTIVELY +FICTIVENESS +FICTIVENESSES +FICUS +FICUSES +FID +FIDDLE +FIDDLEBACK +FIDDLEBACKS +FIDDLED +FIDDLEHEAD +FIDDLEHEADS +FIDDLER +FIDDLERS +FIDDLES +FIDDLESTICK +FIDDLESTICKS +FIDDLING +FIDDLY +FIDEISM +FIDEISMS +FIDEIST +FIDEISTIC +FIDEISTS +FIDELISMO +FIDELISMOS +FIDELISTA +FIDELISTAS +FIDELITIES +FIDELITY +FIDGE +FIDGED +FIDGES +FIDGET +FIDGETED +FIDGETER +FIDGETERS +FIDGETINESS +FIDGETINESSES +FIDGETING +FIDGETS +FIDGETY +FIDGING +FIDO +FIDOS +FIDS +FIDUCIAL +FIDUCIALLY +FIDUCIARIES +FIDUCIARY +FIE +FIEF +FIEFDOM +FIEFDOMS +FIEFS +FIELD +FIELDED +FIELDER +FIELDERS +FIELDFARE +FIELDFARES +FIELDING +FIELDPIECE +FIELDPIECES +FIELDS +FIELDSMAN +FIELDSMEN +FIELDSTONE +FIELDSTONES +FIELDSTRIP +FIELDSTRIPPED +FIELDSTRIPPING +FIELDSTRIPS +FIELDWORK +FIELDWORKS +FIEND +FIENDISH +FIENDISHLY +FIENDISHNESS +FIENDISHNESSES +FIENDS +FIERCE +FIERCELY +FIERCENESS +FIERCENESSES +FIERCER +FIERCEST +FIERIER +FIERIEST +FIERILY +FIERINESS +FIERINESSES +FIERY +FIESTA +FIESTAS +FIFE +FIFED +FIFER +FIFERS +FIFES +FIFING +FIFTEEN +FIFTEENS +FIFTEENTH +FIFTEENTHS +FIFTH +FIFTHLY +FIFTHS +FIFTIES +FIFTIETH +FIFTIETHS +FIFTY +FIFTYISH +FIG +FIGEATER +FIGEATERS +FIGGED +FIGGING +FIGHT +FIGHTABLE +FIGHTER +FIGHTERS +FIGHTING +FIGHTINGS +FIGHTS +FIGMENT +FIGMENTS +FIGS +FIGULINE +FIGULINES +FIGURABLE +FIGURAL +FIGURALLY +FIGURANT +FIGURANTS +FIGURATE +FIGURATION +FIGURATIONS +FIGURATIVE +FIGURATIVELY +FIGURATIVENESS +FIGURE +FIGURED +FIGUREDLY +FIGUREHEAD +FIGUREHEADS +FIGURER +FIGURERS +FIGURES +FIGURINE +FIGURINES +FIGURING +FIGWORT +FIGWORTS +FIL +FILA +FILAGREE +FILAGREED +FILAGREEING +FILAGREES +FILAMENT +FILAMENTARY +FILAMENTOUS +FILAMENTS +FILAR +FILAREE +FILAREES +FILARIA +FILARIAE +FILARIAL +FILARIAN +FILARIASES +FILARIASIS +FILARIID +FILARIIDS +FILATURE +FILATURES +FILBERT +FILBERTS +FILCH +FILCHED +FILCHER +FILCHERS +FILCHES +FILCHING +FILE +FILEABLE +FILED +FILEFISH +FILEFISHES +FILEMOT +FILENAME +FILENAMES +FILER +FILERS +FILES +FILET +FILETED +FILETING +FILETS +FILIAL +FILIALLY +FILIATE +FILIATED +FILIATES +FILIATING +FILIATION +FILIATIONS +FILIBEG +FILIBEGS +FILIBUSTER +FILIBUSTERED +FILIBUSTERER +FILIBUSTERERS +FILIBUSTERING +FILIBUSTERS +FILICIDE +FILICIDES +FILIFORM +FILIGREE +FILIGREED +FILIGREEING +FILIGREES +FILING +FILINGS +FILIOPIETISTIC +FILISTER +FILISTERS +FILL +FILLABLE +FILLAGREE +FILLAGREED +FILLAGREEING +FILLAGREES +FILLE +FILLED +FILLER +FILLERS +FILLES +FILLET +FILLETED +FILLETING +FILLETS +FILLIES +FILLING +FILLINGS +FILLIP +FILLIPED +FILLIPING +FILLIPS +FILLISTER +FILLISTERS +FILLO +FILLOS +FILLS +FILLY +FILM +FILMABLE +FILMCARD +FILMCARDS +FILMDOM +FILMDOMS +FILMED +FILMER +FILMERS +FILMGOER +FILMGOERS +FILMGOING +FILMI +FILMIC +FILMICALLY +FILMIER +FILMIEST +FILMILY +FILMINESS +FILMINESSES +FILMING +FILMIS +FILMLAND +FILMLANDS +FILMLESS +FILMLIKE +FILMMAKER +FILMMAKERS +FILMMAKING +FILMMAKINGS +FILMOGRAPHIES +FILMOGRAPHY +FILMS +FILMSET +FILMSETS +FILMSETTER +FILMSETTERS +FILMSETTING +FILMSETTINGS +FILMSTRIP +FILMSTRIPS +FILMY +FILO +FILOPLUME +FILOPLUMES +FILOPODIA +FILOPODIUM +FILOS +FILOSE +FILOVIRUS +FILOVIRUSES +FILS +FILTER +FILTERABILITIES +FILTERABILITY +FILTERABLE +FILTERED +FILTERER +FILTERERS +FILTERING +FILTERS +FILTH +FILTHIER +FILTHIEST +FILTHILY +FILTHINESS +FILTHINESSES +FILTHS +FILTHY +FILTRABLE +FILTRATE +FILTRATED +FILTRATES +FILTRATING +FILTRATION +FILTRATIONS +FILUM +FIMBLE +FIMBLES +FIMBRIA +FIMBRIAE +FIMBRIAL +FIMBRIATE +FIMBRIATED +FIMBRIATION +FIMBRIATIONS +FIN +FINABLE +FINAGLE +FINAGLED +FINAGLER +FINAGLERS +FINAGLES +FINAGLING +FINAL +FINALE +FINALES +FINALIS +FINALISE +FINALISED +FINALISES +FINALISING +FINALISM +FINALISMS +FINALIST +FINALISTS +FINALITIES +FINALITY +FINALIZATION +FINALIZATIONS +FINALIZE +FINALIZED +FINALIZER +FINALIZERS +FINALIZES +FINALIZING +FINALLY +FINALS +FINANCE +FINANCED +FINANCES +FINANCIAL +FINANCIALLY +FINANCIER +FINANCIERED +FINANCIERING +FINANCIERS +FINANCING +FINANCINGS +FINBACK +FINBACKS +FINCA +FINCAS +FINCH +FINCHES +FIND +FINDABLE +FINDER +FINDERS +FINDING +FINDINGS +FINDS +FINE +FINEABLE +FINED +FINELY +FINENESS +FINENESSES +FINER +FINERIES +FINERY +FINES +FINESPUN +FINESSE +FINESSED +FINESSES +FINESSING +FINEST +FINFISH +FINFISHES +FINFOOT +FINFOOTS +FINGER +FINGERBOARD +FINGERBOARDS +FINGERED +FINGERER +FINGERERS +FINGERHOLD +FINGERHOLDS +FINGERING +FINGERINGS +FINGERLIKE +FINGERLING +FINGERLINGS +FINGERNAIL +FINGERNAILS +FINGERPICK +FINGERPICKED +FINGERPICKING +FINGERPICKINGS +FINGERPICKS +FINGERPOST +FINGERPOSTS +FINGERPRINT +FINGERPRINTED +FINGERPRINTING +FINGERPRINTINGS +FINGERPRINTS +FINGERS +FINGERTIP +FINGERTIPS +FINIAL +FINIALED +FINIALS +FINICAL +FINICALLY +FINICALNESS +FINICALNESSES +FINICKIER +FINICKIEST +FINICKIN +FINICKINESS +FINICKINESSES +FINICKING +FINICKY +FINIKIN +FINIKING +FINING +FININGS +FINIS +FINISES +FINISH +FINISHED +FINISHER +FINISHERS +FINISHES +FINISHING +FINITE +FINITELY +FINITENESS +FINITENESSES +FINITES +FINITO +FINITUDE +FINITUDES +FINK +FINKED +FINKING +FINKS +FINLESS +FINLIKE +FINMARK +FINMARKS +FINNED +FINNICKIER +FINNICKIEST +FINNICKY +FINNIER +FINNIEST +FINNING +FINNMARK +FINNMARKS +FINNY +FINO +FINOCCHIO +FINOCCHIOS +FINOCHIO +FINOCHIOS +FINOS +FINS +FIORATURA +FIORATURAE +FIORD +FIORDS +FIORITURA +FIORITURE +FIPPLE +FIPPLES +FIQUE +FIQUES +FIR +FIRE +FIREABLE +FIREARM +FIREARMED +FIREARMS +FIREBACK +FIREBACKS +FIREBALL +FIREBALLER +FIREBALLERS +FIREBALLING +FIREBALLS +FIREBASE +FIREBASES +FIREBIRD +FIREBIRDS +FIREBOARD +FIREBOARDS +FIREBOAT +FIREBOATS +FIREBOMB +FIREBOMBED +FIREBOMBING +FIREBOMBS +FIREBOX +FIREBOXES +FIREBRAND +FIREBRANDS +FIREBRAT +FIREBRATS +FIREBREAK +FIREBREAKS +FIREBRICK +FIREBRICKS +FIREBUG +FIREBUGS +FIRECLAY +FIRECLAYS +FIRECRACKER +FIRECRACKERS +FIRED +FIREDAMP +FIREDAMPS +FIREDOG +FIREDOGS +FIREDRAKE +FIREDRAKES +FIREFANG +FIREFANGED +FIREFANGING +FIREFANGS +FIREFIGHT +FIREFIGHTER +FIREFIGHTERS +FIREFIGHTS +FIREFLIES +FIREFLOOD +FIREFLOODS +FIREFLY +FIREGUARD +FIREGUARDS +FIREHALL +FIREHALLS +FIREHOUSE +FIREHOUSES +FIRELESS +FIRELIGHT +FIRELIGHTS +FIRELIT +FIRELOCK +FIRELOCKS +FIREMAN +FIREMANIC +FIREMEN +FIREPAN +FIREPANS +FIREPINK +FIREPINKS +FIREPLACE +FIREPLACED +FIREPLACES +FIREPLUG +FIREPLUGS +FIREPOT +FIREPOTS +FIREPOWER +FIREPOWERS +FIREPROOF +FIREPROOFED +FIREPROOFING +FIREPROOFS +FIRER +FIREROOM +FIREROOMS +FIRERS +FIRES +FIRESHIP +FIRESHIPS +FIRESIDE +FIRESIDES +FIRESTONE +FIRESTONES +FIRESTORM +FIRESTORMS +FIRETHORN +FIRETHORNS +FIRETRAP +FIRETRAPS +FIRETRUCK +FIRETRUCKS +FIREWALL +FIREWALLS +FIREWATER +FIREWATERS +FIREWEED +FIREWEEDS +FIREWOOD +FIREWOODS +FIREWORK +FIREWORKS +FIREWORM +FIREWORMS +FIRING +FIRINGS +FIRKIN +FIRKINS +FIRM +FIRMAMENT +FIRMAMENTAL +FIRMAMENTS +FIRMAN +FIRMANS +FIRMED +FIRMER +FIRMERS +FIRMEST +FIRMING +FIRMLY +FIRMNESS +FIRMNESSES +FIRMS +FIRMWARE +FIRMWARES +FIRN +FIRNS +FIRRIER +FIRRIEST +FIRRY +FIRS +FIRST +FIRSTBORN +FIRSTBORNS +FIRSTFRUITS +FIRSTHAND +FIRSTLING +FIRSTLINGS +FIRSTLY +FIRSTNESS +FIRSTNESSES +FIRSTS +FIRTH +FIRTHS +FISC +FISCAL +FISCALIST +FISCALISTS +FISCALLY +FISCALS +FISCS +FISH +FISHABILITIES +FISHABILITY +FISHABLE +FISHBOLT +FISHBOLTS +FISHBONE +FISHBONES +FISHBOWL +FISHBOWLS +FISHED +FISHER +FISHERFOLK +FISHERIES +FISHERMAN +FISHERMEN +FISHERS +FISHERWOMAN +FISHERWOMEN +FISHERY +FISHES +FISHEYE +FISHEYES +FISHGIG +FISHGIGS +FISHHOOK +FISHHOOKS +FISHIER +FISHIEST +FISHILY +FISHINESS +FISHINESSES +FISHING +FISHINGS +FISHKILL +FISHKILLS +FISHLESS +FISHLIKE +FISHLINE +FISHLINES +FISHMEAL +FISHMEALS +FISHMONGER +FISHMONGERS +FISHNET +FISHNETS +FISHPLATE +FISHPLATES +FISHPOLE +FISHPOLES +FISHPOND +FISHPONDS +FISHTAIL +FISHTAILED +FISHTAILING +FISHTAILS +FISHWAY +FISHWAYS +FISHWIFE +FISHWIVES +FISHWORM +FISHWORMS +FISHY +FISSATE +FISSILE +FISSILITIES +FISSILITY +FISSION +FISSIONABILITY +FISSIONABLE +FISSIONABLES +FISSIONAL +FISSIONED +FISSIONING +FISSIONS +FISSIPAROUS +FISSIPAROUSNESS +FISSIPED +FISSIPEDS +FISSURAL +FISSURE +FISSURED +FISSURES +FISSURING +FIST +FISTED +FISTFIGHT +FISTFIGHTS +FISTFUL +FISTFULS +FISTIC +FISTICUFF +FISTICUFFS +FISTING +FISTNOTE +FISTNOTES +FISTS +FISTULA +FISTULAE +FISTULAR +FISTULAS +FISTULATE +FISTULOUS +FIT +FITCH +FITCHEE +FITCHES +FITCHET +FITCHETS +FITCHEW +FITCHEWS +FITCHY +FITFUL +FITFULLY +FITFULNESS +FITFULNESSES +FITLY +FITMENT +FITMENTS +FITNESS +FITNESSES +FITS +FITTABLE +FITTED +FITTER +FITTERS +FITTEST +FITTING +FITTINGLY +FITTINGNESS +FITTINGNESSES +FITTINGS +FIVE +FIVEFOLD +FIVEPINS +FIVER +FIVERS +FIVES +FIX +FIXABLE +FIXATE +FIXATED +FIXATES +FIXATIF +FIXATIFS +FIXATING +FIXATION +FIXATIONS +FIXATIVE +FIXATIVES +FIXED +FIXEDLY +FIXEDNESS +FIXEDNESSES +FIXER +FIXERS +FIXES +FIXING +FIXINGS +FIXIT +FIXITIES +FIXITY +FIXT +FIXTURE +FIXTURES +FIXURE +FIXURES +FIZ +FIZGIG +FIZGIGS +FIZZ +FIZZED +FIZZER +FIZZERS +FIZZES +FIZZIER +FIZZIEST +FIZZING +FIZZLE +FIZZLED +FIZZLES +FIZZLING +FIZZY +FJELD +FJELDS +FJORD +FJORDIC +FJORDS +FLAB +FLABBERGAST +FLABBERGASTED +FLABBERGASTING +FLABBERGASTS +FLABBIER +FLABBIEST +FLABBILY +FLABBINESS +FLABBINESSES +FLABBY +FLABELLA +FLABELLATE +FLABELLIFORM +FLABELLUM +FLABS +FLACCID +FLACCIDITIES +FLACCIDITY +FLACCIDLY +FLACK +FLACKED +FLACKERIES +FLACKERY +FLACKING +FLACKS +FLACON +FLACONS +FLAG +FLAGELLA +FLAGELLANT +FLAGELLANTISM +FLAGELLANTISMS +FLAGELLANTS +FLAGELLAR +FLAGELLATE +FLAGELLATED +FLAGELLATES +FLAGELLATING +FLAGELLATION +FLAGELLATIONS +FLAGELLIN +FLAGELLINS +FLAGELLUM +FLAGELLUMS +FLAGEOLET +FLAGEOLETS +FLAGGED +FLAGGER +FLAGGERS +FLAGGIER +FLAGGIEST +FLAGGING +FLAGGINGLY +FLAGGINGS +FLAGGY +FLAGITIOUS +FLAGITIOUSLY +FLAGITIOUSNESS +FLAGLESS +FLAGMAN +FLAGMEN +FLAGON +FLAGONS +FLAGPOLE +FLAGPOLES +FLAGRANCE +FLAGRANCES +FLAGRANCIES +FLAGRANCY +FLAGRANT +FLAGRANTLY +FLAGS +FLAGSHIP +FLAGSHIPS +FLAGSTAFF +FLAGSTAFFS +FLAGSTAVES +FLAGSTICK +FLAGSTICKS +FLAGSTONE +FLAGSTONES +FLAIL +FLAILED +FLAILING +FLAILS +FLAIR +FLAIRS +FLAK +FLAKE +FLAKED +FLAKER +FLAKERS +FLAKES +FLAKEY +FLAKIER +FLAKIEST +FLAKILY +FLAKINESS +FLAKINESSES +FLAKING +FLAKY +FLAM +FLAMBE +FLAMBEAU +FLAMBEAUS +FLAMBEAUX +FLAMBEE +FLAMBEED +FLAMBEING +FLAMBES +FLAMBOYANCE +FLAMBOYANCES +FLAMBOYANCIES +FLAMBOYANCY +FLAMBOYANT +FLAMBOYANTLY +FLAMBOYANTS +FLAME +FLAMED +FLAMELESS +FLAMELIKE +FLAMEN +FLAMENCO +FLAMENCOS +FLAMENS +FLAMEOUT +FLAMEOUTS +FLAMEPROOF +FLAMEPROOFED +FLAMEPROOFER +FLAMEPROOFERS +FLAMEPROOFING +FLAMEPROOFS +FLAMER +FLAMERS +FLAMES +FLAMETHROWER +FLAMETHROWERS +FLAMIER +FLAMIEST +FLAMINES +FLAMING +FLAMINGLY +FLAMINGO +FLAMINGOES +FLAMINGOS +FLAMMABILITIES +FLAMMABILITY +FLAMMABLE +FLAMMABLES +FLAMMED +FLAMMING +FLAMS +FLAMY +FLAN +FLANCARD +FLANCARDS +FLANERIE +FLANERIES +FLANES +FLANEUR +FLANEURS +FLANGE +FLANGED +FLANGER +FLANGERS +FLANGES +FLANGING +FLANK +FLANKED +FLANKEN +FLANKER +FLANKERS +FLANKING +FLANKS +FLANNEL +FLANNELED +FLANNELET +FLANNELETS +FLANNELETTE +FLANNELETTES +FLANNELING +FLANNELLED +FLANNELLING +FLANNELLY +FLANNELMOUTHED +FLANNELS +FLANS +FLAP +FLAPDOODLE +FLAPDOODLES +FLAPERON +FLAPERONS +FLAPJACK +FLAPJACKS +FLAPLESS +FLAPPABLE +FLAPPED +FLAPPER +FLAPPERS +FLAPPIER +FLAPPIEST +FLAPPING +FLAPPY +FLAPS +FLARE +FLAREBACK +FLAREBACKS +FLARED +FLARES +FLAREUP +FLAREUPS +FLARING +FLARINGLY +FLASH +FLASHBACK +FLASHBACKS +FLASHBOARD +FLASHBOARDS +FLASHBULB +FLASHBULBS +FLASHCARD +FLASHCARDS +FLASHCUBE +FLASHCUBES +FLASHED +FLASHER +FLASHERS +FLASHES +FLASHGUN +FLASHGUNS +FLASHIER +FLASHIEST +FLASHILY +FLASHINESS +FLASHINESSES +FLASHING +FLASHINGS +FLASHLAMP +FLASHLAMPS +FLASHLIGHT +FLASHLIGHTS +FLASHOVER +FLASHOVERS +FLASHTUBE +FLASHTUBES +FLASHY +FLASK +FLASKET +FLASKETS +FLASKS +FLAT +FLATBED +FLATBEDS +FLATBOAT +FLATBOATS +FLATBREAD +FLATBREADS +FLATCAP +FLATCAPS +FLATCAR +FLATCARS +FLATFEET +FLATFISH +FLATFISHES +FLATFOOT +FLATFOOTED +FLATFOOTING +FLATFOOTS +FLATHEAD +FLATHEADS +FLATIRON +FLATIRONS +FLATLAND +FLATLANDER +FLATLANDERS +FLATLANDS +FLATLET +FLATLETS +FLATLINE +FLATLINED +FLATLINER +FLATLINERS +FLATLINES +FLATLING +FLATLINGS +FLATLINING +FLATLONG +FLATLY +FLATMATE +FLATMATES +FLATNESS +FLATNESSES +FLATS +FLATTED +FLATTEN +FLATTENED +FLATTENER +FLATTENERS +FLATTENING +FLATTENS +FLATTER +FLATTERED +FLATTERER +FLATTERERS +FLATTERIES +FLATTERING +FLATTERINGLY +FLATTERS +FLATTERY +FLATTEST +FLATTING +FLATTISH +FLATTOP +FLATTOPS +FLATULENCE +FLATULENCES +FLATULENCIES +FLATULENCY +FLATULENT +FLATULENTLY +FLATUS +FLATUSES +FLATWARE +FLATWARES +FLATWASH +FLATWASHES +FLATWAYS +FLATWISE +FLATWORK +FLATWORKS +FLATWORM +FLATWORMS +FLAUNT +FLAUNTED +FLAUNTER +FLAUNTERS +FLAUNTIER +FLAUNTIEST +FLAUNTILY +FLAUNTING +FLAUNTINGLY +FLAUNTS +FLAUNTY +FLAUTA +FLAUTAS +FLAUTIST +FLAUTISTS +FLAVANOL +FLAVANOLS +FLAVANONE +FLAVANONES +FLAVIN +FLAVINE +FLAVINES +FLAVINS +FLAVONE +FLAVONES +FLAVONOID +FLAVONOIDS +FLAVONOL +FLAVONOLS +FLAVOPROTEIN +FLAVOPROTEINS +FLAVOR +FLAVORED +FLAVORER +FLAVORERS +FLAVORFUL +FLAVORFULLY +FLAVORING +FLAVORINGS +FLAVORIST +FLAVORISTS +FLAVORLESS +FLAVOROUS +FLAVORS +FLAVORSOME +FLAVORY +FLAVOUR +FLAVOURED +FLAVOURING +FLAVOURS +FLAVOURY +FLAW +FLAWED +FLAWIER +FLAWIEST +FLAWING +FLAWLESS +FLAWLESSLY +FLAWLESSNESS +FLAWLESSNESSES +FLAWS +FLAWY +FLAX +FLAXEN +FLAXES +FLAXIER +FLAXIEST +FLAXSEED +FLAXSEEDS +FLAXY +FLAY +FLAYED +FLAYER +FLAYERS +FLAYING +FLAYS +FLEA +FLEABAG +FLEABAGS +FLEABANE +FLEABANES +FLEABITE +FLEABITES +FLEAHOPPER +FLEAHOPPERS +FLEAM +FLEAMS +FLEAPIT +FLEAPITS +FLEAS +FLEAWORT +FLEAWORTS +FLECHE +FLECHES +FLECHETTE +FLECHETTES +FLECK +FLECKED +FLECKING +FLECKLESS +FLECKS +FLECKY +FLECTION +FLECTIONS +FLED +FLEDGE +FLEDGED +FLEDGES +FLEDGIER +FLEDGIEST +FLEDGING +FLEDGLING +FLEDGLINGS +FLEDGY +FLEE +FLEECE +FLEECED +FLEECER +FLEECERS +FLEECES +FLEECH +FLEECHED +FLEECHES +FLEECHING +FLEECIER +FLEECIEST +FLEECILY +FLEECING +FLEECY +FLEEING +FLEER +FLEERED +FLEERING +FLEERINGLY +FLEERS +FLEES +FLEET +FLEETED +FLEETER +FLEETEST +FLEETING +FLEETINGLY +FLEETINGNESS +FLEETINGNESSES +FLEETLY +FLEETNESS +FLEETNESSES +FLEETS +FLEHMEN +FLEHMENED +FLEHMENING +FLEHMENS +FLEISHIG +FLEMISH +FLEMISHED +FLEMISHES +FLEMISHING +FLENCH +FLENCHED +FLENCHES +FLENCHING +FLENSE +FLENSED +FLENSER +FLENSERS +FLENSES +FLENSING +FLESH +FLESHED +FLESHER +FLESHERS +FLESHES +FLESHIER +FLESHIEST +FLESHILY +FLESHINESS +FLESHINESSES +FLESHING +FLESHINGS +FLESHLESS +FLESHLIER +FLESHLIEST +FLESHLY +FLESHMENT +FLESHMENTS +FLESHPOT +FLESHPOTS +FLESHY +FLETCH +FLETCHED +FLETCHER +FLETCHERS +FLETCHES +FLETCHING +FLETCHINGS +FLEURON +FLEURONS +FLEURY +FLEW +FLEWS +FLEX +FLEXAGON +FLEXAGONS +FLEXED +FLEXES +FLEXIBILITIES +FLEXIBILITY +FLEXIBLE +FLEXIBLY +FLEXILE +FLEXING +FLEXION +FLEXIONAL +FLEXIONS +FLEXITIME +FLEXITIMES +FLEXOGRAPHIC +FLEXOGRAPHIES +FLEXOGRAPHY +FLEXOR +FLEXORS +FLEXTIME +FLEXTIMER +FLEXTIMERS +FLEXTIMES +FLEXUOSE +FLEXUOUS +FLEXURAL +FLEXURE +FLEXURES +FLEY +FLEYED +FLEYING +FLEYS +FLIBBERTIGIBBET +FLIC +FLICHTER +FLICHTERED +FLICHTERING +FLICHTERS +FLICK +FLICKABLE +FLICKED +FLICKER +FLICKERED +FLICKERING +FLICKERINGLY +FLICKERS +FLICKERY +FLICKING +FLICKS +FLICS +FLIED +FLIER +FLIERS +FLIES +FLIEST +FLIGHT +FLIGHTED +FLIGHTIER +FLIGHTIEST +FLIGHTILY +FLIGHTINESS +FLIGHTINESSES +FLIGHTING +FLIGHTLESS +FLIGHTS +FLIGHTY +FLIMFLAM +FLIMFLAMMED +FLIMFLAMMER +FLIMFLAMMERIES +FLIMFLAMMERS +FLIMFLAMMERY +FLIMFLAMMING +FLIMFLAMS +FLIMSIER +FLIMSIES +FLIMSIEST +FLIMSILY +FLIMSINESS +FLIMSINESSES +FLIMSY +FLINCH +FLINCHED +FLINCHER +FLINCHERS +FLINCHES +FLINCHING +FLINDER +FLINDERS +FLING +FLINGER +FLINGERS +FLINGING +FLINGS +FLINKITE +FLINKITES +FLINT +FLINTED +FLINTHEAD +FLINTHEADS +FLINTIER +FLINTIEST +FLINTILY +FLINTINESS +FLINTINESSES +FLINTING +FLINTLIKE +FLINTLOCK +FLINTLOCKS +FLINTS +FLINTY +FLIP +FLIPBOOK +FLIPBOOKS +FLIPFLOP +FLIPFLOPPED +FLIPFLOPPING +FLIPFLOPS +FLIPPANCIES +FLIPPANCY +FLIPPANT +FLIPPANTLY +FLIPPED +FLIPPER +FLIPPERS +FLIPPEST +FLIPPING +FLIPPY +FLIPS +FLIR +FLIRS +FLIRT +FLIRTATION +FLIRTATIONS +FLIRTATIOUS +FLIRTATIOUSLY +FLIRTATIOUSNESS +FLIRTED +FLIRTER +FLIRTERS +FLIRTIER +FLIRTIEST +FLIRTING +FLIRTS +FLIRTY +FLIT +FLITCH +FLITCHED +FLITCHES +FLITCHING +FLITE +FLITED +FLITES +FLITING +FLITS +FLITTED +FLITTER +FLITTERED +FLITTERING +FLITTERS +FLITTING +FLIVVER +FLIVVERS +FLOAT +FLOATABLE +FLOATAGE +FLOATAGES +FLOATATION +FLOATATIONS +FLOATED +FLOATEL +FLOATELS +FLOATER +FLOATERS +FLOATIER +FLOATIEST +FLOATING +FLOATPLANE +FLOATPLANES +FLOATS +FLOATY +FLOC +FLOCCED +FLOCCI +FLOCCING +FLOCCOSE +FLOCCULANT +FLOCCULANTS +FLOCCULATE +FLOCCULATED +FLOCCULATES +FLOCCULATING +FLOCCULATION +FLOCCULATIONS +FLOCCULATOR +FLOCCULATORS +FLOCCULE +FLOCCULENT +FLOCCULES +FLOCCULI +FLOCCULUS +FLOCCUS +FLOCK +FLOCKED +FLOCKIER +FLOCKIEST +FLOCKING +FLOCKINGS +FLOCKLESS +FLOCKS +FLOCKY +FLOCS +FLOE +FLOES +FLOG +FLOGGABLE +FLOGGED +FLOGGER +FLOGGERS +FLOGGING +FLOGGINGS +FLOGS +FLOKATI +FLOKATIS +FLONG +FLONGS +FLOOD +FLOODABLE +FLOODED +FLOODER +FLOODERS +FLOODGATE +FLOODGATES +FLOODING +FLOODLIGHT +FLOODLIGHTED +FLOODLIGHTING +FLOODLIGHTS +FLOODLIT +FLOODPLAIN +FLOODPLAINS +FLOODS +FLOODTIDE +FLOODTIDES +FLOODWALL +FLOODWALLS +FLOODWATER +FLOODWATERS +FLOODWAY +FLOODWAYS +FLOOEY +FLOOIE +FLOOR +FLOORAGE +FLOORAGES +FLOORBOARD +FLOORBOARDS +FLOORCLOTH +FLOORCLOTHS +FLOORED +FLOORER +FLOORERS +FLOORING +FLOORINGS +FLOORLESS +FLOORS +FLOORSHOW +FLOORSHOWS +FLOORWALKER +FLOORWALKERS +FLOOSIE +FLOOSIES +FLOOSY +FLOOZIE +FLOOZIES +FLOOZY +FLOP +FLOPHOUSE +FLOPHOUSES +FLOPOVER +FLOPOVERS +FLOPPED +FLOPPER +FLOPPERS +FLOPPIER +FLOPPIES +FLOPPIEST +FLOPPILY +FLOPPINESS +FLOPPINESSES +FLOPPING +FLOPPY +FLOPS +FLORA +FLORAE +FLORAL +FLORALLY +FLORALS +FLORAS +FLOREATED +FLORENCE +FLORENCES +FLORESCENCE +FLORESCENCES +FLORESCENT +FLORET +FLORETS +FLORIATED +FLORIATION +FLORIATIONS +FLORIBUNDA +FLORIBUNDAS +FLORICANE +FLORICANES +FLORICULTURAL +FLORICULTURE +FLORICULTURES +FLORICULTURIST +FLORICULTURISTS +FLORID +FLORIDITIES +FLORIDITY +FLORIDLY +FLORIDNESS +FLORIDNESSES +FLORIFEROUS +FLORIFEROUSNESS +FLORIGEN +FLORIGENIC +FLORIGENS +FLORILEGIA +FLORILEGIUM +FLORIN +FLORINS +FLORIST +FLORISTIC +FLORISTICALLY +FLORISTRIES +FLORISTRY +FLORISTS +FLORUIT +FLORUITS +FLOSS +FLOSSED +FLOSSER +FLOSSERS +FLOSSES +FLOSSIE +FLOSSIER +FLOSSIES +FLOSSIEST +FLOSSILY +FLOSSING +FLOSSY +FLOTA +FLOTAGE +FLOTAGES +FLOTAS +FLOTATION +FLOTATIONS +FLOTILLA +FLOTILLAS +FLOTSAM +FLOTSAMS +FLOUNCE +FLOUNCED +FLOUNCES +FLOUNCIER +FLOUNCIEST +FLOUNCING +FLOUNCINGS +FLOUNCY +FLOUNDER +FLOUNDERED +FLOUNDERING +FLOUNDERS +FLOUR +FLOURED +FLOURING +FLOURISH +FLOURISHED +FLOURISHER +FLOURISHERS +FLOURISHES +FLOURISHING +FLOURISHINGLY +FLOURLESS +FLOURS +FLOURY +FLOUT +FLOUTED +FLOUTER +FLOUTERS +FLOUTING +FLOUTS +FLOW +FLOWAGE +FLOWAGES +FLOWCHART +FLOWCHARTING +FLOWCHARTINGS +FLOWCHARTS +FLOWED +FLOWER +FLOWERAGE +FLOWERAGES +FLOWERED +FLOWERER +FLOWERERS +FLOWERET +FLOWERETS +FLOWERETTE +FLOWERETTES +FLOWERFUL +FLOWERIER +FLOWERIEST +FLOWERILY +FLOWERINESS +FLOWERINESSES +FLOWERING +FLOWERLESS +FLOWERLIKE +FLOWERPOT +FLOWERPOTS +FLOWERS +FLOWERY +FLOWING +FLOWINGLY +FLOWMETER +FLOWMETERS +FLOWN +FLOWS +FLOWSTONE +FLOWSTONES +FLU +FLUB +FLUBBED +FLUBBER +FLUBBERS +FLUBBING +FLUBDUB +FLUBDUBS +FLUBS +FLUCTUANT +FLUCTUATE +FLUCTUATED +FLUCTUATES +FLUCTUATING +FLUCTUATION +FLUCTUATIONAL +FLUCTUATIONS +FLUE +FLUED +FLUEGELHORN +FLUEGELHORNS +FLUENCIES +FLUENCY +FLUENT +FLUENTLY +FLUERIC +FLUERICS +FLUES +FLUFF +FLUFFED +FLUFFER +FLUFFERS +FLUFFIER +FLUFFIEST +FLUFFILY +FLUFFINESS +FLUFFINESSES +FLUFFING +FLUFFS +FLUFFY +FLUGELHORN +FLUGELHORNIST +FLUGELHORNISTS +FLUGELHORNS +FLUID +FLUIDAL +FLUIDALLY +FLUIDEXTRACT +FLUIDEXTRACTS +FLUIDIC +FLUIDICS +FLUIDISE +FLUIDISED +FLUIDISES +FLUIDISING +FLUIDITIES +FLUIDITY +FLUIDIZATION +FLUIDIZATIONS +FLUIDIZE +FLUIDIZED +FLUIDIZER +FLUIDIZERS +FLUIDIZES +FLUIDIZING +FLUIDLIKE +FLUIDLY +FLUIDNESS +FLUIDNESSES +FLUIDRAM +FLUIDRAMS +FLUIDS +FLUISH +FLUKE +FLUKED +FLUKES +FLUKEY +FLUKIER +FLUKIEST +FLUKILY +FLUKINESS +FLUKINESSES +FLUKING +FLUKY +FLUME +FLUMED +FLUMES +FLUMING +FLUMMERIES +FLUMMERY +FLUMMOX +FLUMMOXED +FLUMMOXES +FLUMMOXING +FLUMP +FLUMPED +FLUMPING +FLUMPS +FLUNG +FLUNK +FLUNKED +FLUNKER +FLUNKERS +FLUNKEY +FLUNKEYS +FLUNKIE +FLUNKIES +FLUNKING +FLUNKS +FLUNKY +FLUNKYISM +FLUNKYISMS +FLUOR +FLUORENE +FLUORENES +FLUORESCE +FLUORESCED +FLUORESCEIN +FLUORESCEINS +FLUORESCENCE +FLUORESCENCES +FLUORESCENT +FLUORESCENTS +FLUORESCER +FLUORESCERS +FLUORESCES +FLUORESCING +FLUORIC +FLUORID +FLUORIDATE +FLUORIDATED +FLUORIDATES +FLUORIDATING +FLUORIDATION +FLUORIDATIONS +FLUORIDE +FLUORIDES +FLUORIDS +FLUORIMETER +FLUORIMETERS +FLUORIMETRIC +FLUORIMETRIES +FLUORIMETRY +FLUORIN +FLUORINATE +FLUORINATED +FLUORINATES +FLUORINATING +FLUORINATION +FLUORINATIONS +FLUORINE +FLUORINES +FLUORINS +FLUORITE +FLUORITES +FLUOROCARBON +FLUOROCARBONS +FLUOROCHROME +FLUOROCHROMES +FLUOROGRAPHIC +FLUOROGRAPHIES +FLUOROGRAPHY +FLUOROMETER +FLUOROMETERS +FLUOROMETRIC +FLUOROMETRIES +FLUOROMETRY +FLUOROSCOPE +FLUOROSCOPED +FLUOROSCOPES +FLUOROSCOPIC +FLUOROSCOPIES +FLUOROSCOPING +FLUOROSCOPIST +FLUOROSCOPISTS +FLUOROSCOPY +FLUOROSES +FLUOROSIS +FLUOROTIC +FLUOROURACIL +FLUOROURACILS +FLUORS +FLUORSPAR +FLUORSPARS +FLUOXETINE +FLUOXETINES +FLUPHENAZINE +FLUPHENAZINES +FLURRIED +FLURRIES +FLURRY +FLURRYING +FLUS +FLUSH +FLUSHABLE +FLUSHED +FLUSHER +FLUSHERS +FLUSHES +FLUSHEST +FLUSHING +FLUSHNESS +FLUSHNESSES +FLUSTER +FLUSTERED +FLUSTEREDLY +FLUSTERING +FLUSTERS +FLUTE +FLUTED +FLUTELIKE +FLUTER +FLUTERS +FLUTES +FLUTEY +FLUTIER +FLUTIEST +FLUTING +FLUTINGS +FLUTIST +FLUTISTS +FLUTTER +FLUTTERBOARD +FLUTTERBOARDS +FLUTTERED +FLUTTERER +FLUTTERERS +FLUTTERING +FLUTTERS +FLUTTERY +FLUTY +FLUVIAL +FLUVIATILE +FLUX +FLUXED +FLUXES +FLUXGATE +FLUXGATES +FLUXING +FLUXION +FLUXIONAL +FLUXIONS +FLUYT +FLUYTS +FLY +FLYABLE +FLYAWAY +FLYAWAYS +FLYBELT +FLYBELTS +FLYBLEW +FLYBLOW +FLYBLOWING +FLYBLOWN +FLYBLOWS +FLYBOAT +FLYBOATS +FLYBOY +FLYBOYS +FLYBRIDGE +FLYBRIDGES +FLYBY +FLYBYS +FLYCATCHER +FLYCATCHERS +FLYER +FLYERS +FLYING +FLYINGS +FLYLEAF +FLYLEAVES +FLYLESS +FLYMAN +FLYMEN +FLYOFF +FLYOFFS +FLYOVER +FLYOVERS +FLYPAPER +FLYPAPERS +FLYPAST +FLYPASTS +FLYRODDER +FLYRODDERS +FLYSCH +FLYSCHES +FLYSHEET +FLYSHEETS +FLYSPECK +FLYSPECKED +FLYSPECKING +FLYSPECKS +FLYSWATTER +FLYSWATTERS +FLYTE +FLYTED +FLYTES +FLYTIER +FLYTIERS +FLYTING +FLYTINGS +FLYTRAP +FLYTRAPS +FLYWAY +FLYWAYS +FLYWEIGHT +FLYWEIGHTS +FLYWHEEL +FLYWHEELS +FOAL +FOALED +FOALING +FOALS +FOAM +FOAMABLE +FOAMED +FOAMER +FOAMERS +FOAMFLOWER +FOAMFLOWERS +FOAMIER +FOAMIEST +FOAMILY +FOAMINESS +FOAMINESSES +FOAMING +FOAMLESS +FOAMLIKE +FOAMS +FOAMY +FOB +FOBBED +FOBBING +FOBS +FOCACCIA +FOCACCIAS +FOCAL +FOCALISE +FOCALISED +FOCALISES +FOCALISING +FOCALIZATION +FOCALIZATIONS +FOCALIZE +FOCALIZED +FOCALIZES +FOCALIZING +FOCALLY +FOCI +FOCUS +FOCUSABLE +FOCUSED +FOCUSER +FOCUSERS +FOCUSES +FOCUSING +FOCUSLESS +FOCUSSED +FOCUSSES +FOCUSSING +FODDER +FODDERED +FODDERING +FODDERS +FODGEL +FOE +FOEHN +FOEHNS +FOEMAN +FOEMEN +FOES +FOETAL +FOETID +FOETOR +FOETORS +FOETUS +FOETUSES +FOG +FOGBOUND +FOGBOW +FOGBOWS +FOGDOG +FOGDOGS +FOGEY +FOGEYISH +FOGEYISM +FOGEYISMS +FOGEYS +FOGFRUIT +FOGFRUITS +FOGGAGE +FOGGAGES +FOGGED +FOGGER +FOGGERS +FOGGIER +FOGGIEST +FOGGILY +FOGGINESS +FOGGINESSES +FOGGING +FOGGY +FOGHORN +FOGHORNS +FOGIE +FOGIES +FOGLESS +FOGS +FOGY +FOGYISH +FOGYISM +FOGYISMS +FOH +FOHN +FOHNS +FOIBLE +FOIBLES +FOIL +FOILABLE +FOILED +FOILING +FOILS +FOILSMAN +FOILSMEN +FOIN +FOINED +FOINING +FOINS +FOISON +FOISONS +FOIST +FOISTED +FOISTING +FOISTS +FOLACIN +FOLACINS +FOLATE +FOLATES +FOLD +FOLDABLE +FOLDAWAY +FOLDAWAYS +FOLDBOAT +FOLDBOATS +FOLDED +FOLDER +FOLDEROL +FOLDEROLS +FOLDERS +FOLDING +FOLDOUT +FOLDOUTS +FOLDS +FOLDUP +FOLDUPS +FOLEY +FOLEYS +FOLIA +FOLIACEOUS +FOLIAGE +FOLIAGED +FOLIAGES +FOLIAR +FOLIATE +FOLIATED +FOLIATES +FOLIATING +FOLIATION +FOLIATIONS +FOLIC +FOLIO +FOLIOED +FOLIOING +FOLIOLATE +FOLIOS +FOLIOSE +FOLIOUS +FOLIUM +FOLIUMS +FOLK +FOLKIE +FOLKIER +FOLKIES +FOLKIEST +FOLKISH +FOLKISHNESS +FOLKISHNESSES +FOLKLIFE +FOLKLIKE +FOLKLIVES +FOLKLORE +FOLKLORES +FOLKLORIC +FOLKLORISH +FOLKLORIST +FOLKLORISTIC +FOLKLORISTS +FOLKMOOT +FOLKMOOTS +FOLKMOT +FOLKMOTE +FOLKMOTES +FOLKMOTS +FOLKS +FOLKSIER +FOLKSIEST +FOLKSILY +FOLKSINESS +FOLKSINESSES +FOLKSINGER +FOLKSINGERS +FOLKSINGING +FOLKSINGINGS +FOLKSONG +FOLKSONGS +FOLKSY +FOLKTALE +FOLKTALES +FOLKWAY +FOLKWAYS +FOLKY +FOLLES +FOLLICLE +FOLLICLES +FOLLICULAR +FOLLICULITIS +FOLLICULITISES +FOLLIES +FOLLIS +FOLLOW +FOLLOWED +FOLLOWER +FOLLOWERS +FOLLOWERSHIP +FOLLOWERSHIPS +FOLLOWING +FOLLOWINGS +FOLLOWS +FOLLOWUP +FOLLOWUPS +FOLLY +FOMENT +FOMENTATION +FOMENTATIONS +FOMENTED +FOMENTER +FOMENTERS +FOMENTING +FOMENTS +FOMITE +FOMITES +FON +FOND +FONDANT +FONDANTS +FONDED +FONDER +FONDEST +FONDING +FONDLE +FONDLED +FONDLER +FONDLERS +FONDLES +FONDLING +FONDLINGS +FONDLY +FONDNESS +FONDNESSES +FONDS +FONDU +FONDUE +FONDUED +FONDUEING +FONDUES +FONDUING +FONDUS +FONS +FONT +FONTAL +FONTANEL +FONTANELLE +FONTANELLES +FONTANELS +FONTINA +FONTINAS +FONTS +FOOD +FOODIE +FOODIES +FOODLESS +FOODLESSNESS +FOODLESSNESSES +FOODS +FOODSTUFF +FOODSTUFFS +FOODWAYS +FOOFARAW +FOOFARAWS +FOOL +FOOLED +FOOLERIES +FOOLERY +FOOLFISH +FOOLFISHES +FOOLHARDIER +FOOLHARDIEST +FOOLHARDILY +FOOLHARDINESS +FOOLHARDINESSES +FOOLHARDY +FOOLING +FOOLISH +FOOLISHER +FOOLISHEST +FOOLISHLY +FOOLISHNESS +FOOLISHNESSES +FOOLPROOF +FOOLS +FOOLSCAP +FOOLSCAPS +FOOSBALL +FOOSBALLS +FOOT +FOOTAGE +FOOTAGES +FOOTBAG +FOOTBAGS +FOOTBALL +FOOTBALLER +FOOTBALLERS +FOOTBALLS +FOOTBATH +FOOTBATHS +FOOTBOARD +FOOTBOARDS +FOOTBOY +FOOTBOYS +FOOTBRIDGE +FOOTBRIDGES +FOOTCLOTH +FOOTCLOTHS +FOOTDRAGGER +FOOTDRAGGERS +FOOTED +FOOTER +FOOTERS +FOOTFALL +FOOTFALLS +FOOTFAULT +FOOTFAULTED +FOOTFAULTING +FOOTFAULTS +FOOTGEAR +FOOTGEARS +FOOTHILL +FOOTHILLS +FOOTHOLD +FOOTHOLDS +FOOTIE +FOOTIER +FOOTIES +FOOTIEST +FOOTING +FOOTINGS +FOOTLAMBERT +FOOTLAMBERTS +FOOTLE +FOOTLED +FOOTLER +FOOTLERS +FOOTLES +FOOTLESS +FOOTLESSLY +FOOTLESSNESS +FOOTLESSNESSES +FOOTLIGHT +FOOTLIGHTS +FOOTLIKE +FOOTLING +FOOTLOCKER +FOOTLOCKERS +FOOTLOOSE +FOOTMAN +FOOTMARK +FOOTMARKS +FOOTMEN +FOOTNOTE +FOOTNOTED +FOOTNOTES +FOOTNOTING +FOOTPACE +FOOTPACES +FOOTPAD +FOOTPADS +FOOTPATH +FOOTPATHS +FOOTPRINT +FOOTPRINTS +FOOTRACE +FOOTRACES +FOOTREST +FOOTRESTS +FOOTROPE +FOOTROPES +FOOTS +FOOTSIE +FOOTSIES +FOOTSLOG +FOOTSLOGGED +FOOTSLOGGER +FOOTSLOGGERS +FOOTSLOGGING +FOOTSLOGS +FOOTSORE +FOOTSORENESS +FOOTSORENESSES +FOOTSTALK +FOOTSTALKS +FOOTSTALL +FOOTSTALLS +FOOTSTEP +FOOTSTEPS +FOOTSTOCK +FOOTSTOCKS +FOOTSTONE +FOOTSTONES +FOOTSTOOL +FOOTSTOOLS +FOOTSY +FOOTWALL +FOOTWALLS +FOOTWAY +FOOTWAYS +FOOTWEAR +FOOTWORK +FOOTWORKS +FOOTWORN +FOOTY +FOOZLE +FOOZLED +FOOZLER +FOOZLERS +FOOZLES +FOOZLING +FOP +FOPPED +FOPPERIES +FOPPERY +FOPPING +FOPPISH +FOPPISHLY +FOPPISHNESS +FOPPISHNESSES +FOPS +FOR +FORA +FORAGE +FORAGED +FORAGER +FORAGERS +FORAGES +FORAGING +FORAM +FORAMEN +FORAMENS +FORAMINA +FORAMINAL +FORAMINIFER +FORAMINIFERA +FORAMINIFERAL +FORAMINIFERAN +FORAMINIFERANS +FORAMINIFERS +FORAMINOUS +FORAMS +FORASMUCH +FORAY +FORAYED +FORAYER +FORAYERS +FORAYING +FORAYS +FORB +FORBAD +FORBADE +FORBARE +FORBEAR +FORBEARANCE +FORBEARANCES +FORBEARER +FORBEARERS +FORBEARING +FORBEARS +FORBID +FORBIDAL +FORBIDALS +FORBIDDANCE +FORBIDDANCES +FORBIDDEN +FORBIDDER +FORBIDDERS +FORBIDDING +FORBIDDINGLY +FORBIDS +FORBODE +FORBODED +FORBODES +FORBODING +FORBORE +FORBORNE +FORBS +FORBY +FORBYE +FORCE +FORCEABLE +FORCED +FORCEDLY +FORCEFUL +FORCEFULLY +FORCEFULNESS +FORCEFULNESSES +FORCELESS +FORCEMEAT +FORCEMEATS +FORCEPS +FORCEPSLIKE +FORCER +FORCERS +FORCES +FORCIBLE +FORCIBLENESS +FORCIBLENESSES +FORCIBLY +FORCING +FORCIPES +FORD +FORDABLE +FORDED +FORDID +FORDING +FORDLESS +FORDO +FORDOES +FORDOING +FORDONE +FORDS +FORE +FOREARM +FOREARMED +FOREARMING +FOREARMS +FOREBAY +FOREBAYS +FOREBEAR +FOREBEARS +FOREBODE +FOREBODED +FOREBODER +FOREBODERS +FOREBODES +FOREBODIES +FOREBODING +FOREBODINGLY +FOREBODINGNESS +FOREBODINGS +FOREBODY +FOREBOOM +FOREBOOMS +FOREBRAIN +FOREBRAINS +FOREBY +FOREBYE +FORECADDIE +FORECADDIES +FORECAST +FORECASTABLE +FORECASTED +FORECASTER +FORECASTERS +FORECASTING +FORECASTLE +FORECASTLES +FORECASTS +FORECHECK +FORECHECKED +FORECHECKER +FORECHECKERS +FORECHECKING +FORECHECKS +FORECLOSE +FORECLOSED +FORECLOSES +FORECLOSING +FORECLOSURE +FORECLOSURES +FORECOURT +FORECOURTS +FOREDATE +FOREDATED +FOREDATES +FOREDATING +FOREDECK +FOREDECKS +FOREDID +FOREDO +FOREDOES +FOREDOING +FOREDONE +FOREDOOM +FOREDOOMED +FOREDOOMING +FOREDOOMS +FOREFACE +FOREFACES +FOREFATHER +FOREFATHERS +FOREFEEL +FOREFEELING +FOREFEELS +FOREFEET +FOREFELT +FOREFEND +FOREFENDED +FOREFENDING +FOREFENDS +FOREFINGER +FOREFINGERS +FOREFOOT +FOREFRONT +FOREFRONTS +FOREGATHER +FOREGATHERED +FOREGATHERING +FOREGATHERS +FOREGO +FOREGOER +FOREGOERS +FOREGOES +FOREGOING +FOREGONE +FOREGROUND +FOREGROUNDED +FOREGROUNDING +FOREGROUNDS +FOREGUT +FOREGUTS +FOREHAND +FOREHANDED +FOREHANDEDLY +FOREHANDEDNESS +FOREHANDS +FOREHEAD +FOREHEADS +FOREHOOF +FOREHOOFS +FOREHOOVES +FOREIGN +FOREIGNER +FOREIGNERS +FOREIGNISM +FOREIGNISMS +FOREIGNNESS +FOREIGNNESSES +FOREJUDGE +FOREJUDGED +FOREJUDGES +FOREJUDGING +FOREKNEW +FOREKNOW +FOREKNOWING +FOREKNOWLEDGE +FOREKNOWLEDGES +FOREKNOWN +FOREKNOWS +FORELADIES +FORELADY +FORELAND +FORELANDS +FORELEG +FORELEGS +FORELIMB +FORELIMBS +FORELOCK +FORELOCKED +FORELOCKING +FORELOCKS +FOREMAN +FOREMANSHIP +FOREMANSHIPS +FOREMAST +FOREMASTS +FOREMEN +FOREMILK +FOREMILKS +FOREMOST +FOREMOTHER +FOREMOTHERS +FORENAME +FORENAMED +FORENAMES +FORENOON +FORENOONS +FORENSIC +FORENSICALLY +FORENSICS +FOREORDAIN +FOREORDAINED +FOREORDAINING +FOREORDAINS +FOREORDINATION +FOREORDINATIONS +FOREPART +FOREPARTS +FOREPASSED +FOREPAST +FOREPAW +FOREPAWS +FOREPEAK +FOREPEAKS +FOREPLAY +FOREPLAYS +FOREQUARTER +FOREQUARTERS +FORERAN +FORERANK +FORERANKS +FOREREACH +FOREREACHED +FOREREACHES +FOREREACHING +FORERUN +FORERUNNER +FORERUNNERS +FORERUNNING +FORERUNS +FORES +FORESAID +FORESAIL +FORESAILS +FORESAW +FORESEE +FORESEEABILITY +FORESEEABLE +FORESEEING +FORESEEN +FORESEER +FORESEERS +FORESEES +FORESHADOW +FORESHADOWED +FORESHADOWER +FORESHADOWERS +FORESHADOWING +FORESHADOWS +FORESHANK +FORESHANKS +FORESHEET +FORESHEETS +FORESHOCK +FORESHOCKS +FORESHORE +FORESHORES +FORESHORTEN +FORESHORTENED +FORESHORTENING +FORESHORTENS +FORESHOW +FORESHOWED +FORESHOWING +FORESHOWN +FORESHOWS +FORESIDE +FORESIDES +FORESIGHT +FORESIGHTED +FORESIGHTEDLY +FORESIGHTEDNESS +FORESIGHTFUL +FORESIGHTS +FORESKIN +FORESKINS +FORESPAKE +FORESPEAK +FORESPEAKING +FORESPEAKS +FORESPOKE +FORESPOKEN +FOREST +FORESTAGE +FORESTAGES +FORESTAL +FORESTALL +FORESTALLED +FORESTALLER +FORESTALLERS +FORESTALLING +FORESTALLMENT +FORESTALLMENTS +FORESTALLS +FORESTATION +FORESTATIONS +FORESTAY +FORESTAYS +FORESTAYSAIL +FORESTAYSAILS +FORESTED +FORESTER +FORESTERS +FORESTIAL +FORESTING +FORESTLAND +FORESTLANDS +FORESTRIES +FORESTRY +FORESTS +FORESWEAR +FORESWEARING +FORESWEARS +FORESWORE +FORESWORN +FORETASTE +FORETASTED +FORETASTES +FORETASTING +FORETEETH +FORETELL +FORETELLER +FORETELLERS +FORETELLING +FORETELLS +FORETHOUGHT +FORETHOUGHTFUL +FORETHOUGHTS +FORETIME +FORETIMES +FORETOKEN +FORETOKENED +FORETOKENING +FORETOKENS +FORETOLD +FORETOOTH +FORETOP +FORETOPMAN +FORETOPMEN +FORETOPS +FOREVER +FOREVERMORE +FOREVERNESS +FOREVERNESSES +FOREVERS +FOREWARN +FOREWARNED +FOREWARNING +FOREWARNS +FOREWENT +FOREWING +FOREWINGS +FOREWOMAN +FOREWOMEN +FOREWORD +FOREWORDS +FOREWORN +FOREYARD +FOREYARDS +FORFEIT +FORFEITABLE +FORFEITED +FORFEITER +FORFEITERS +FORFEITING +FORFEITS +FORFEITURE +FORFEITURES +FORFEND +FORFENDED +FORFENDING +FORFENDS +FORFICATE +FORGAT +FORGATHER +FORGATHERED +FORGATHERING +FORGATHERS +FORGAVE +FORGE +FORGEABILITIES +FORGEABILITY +FORGEABLE +FORGED +FORGER +FORGERIES +FORGERS +FORGERY +FORGES +FORGET +FORGETFUL +FORGETFULLY +FORGETFULNESS +FORGETFULNESSES +FORGETIVE +FORGETS +FORGETTABLE +FORGETTER +FORGETTERS +FORGETTING +FORGING +FORGINGS +FORGIVABLE +FORGIVABLY +FORGIVE +FORGIVEN +FORGIVENESS +FORGIVENESSES +FORGIVER +FORGIVERS +FORGIVES +FORGIVING +FORGIVINGLY +FORGIVINGNESS +FORGIVINGNESSES +FORGO +FORGOER +FORGOERS +FORGOES +FORGOING +FORGONE +FORGOT +FORGOTTEN +FORINT +FORINTS +FORJUDGE +FORJUDGED +FORJUDGES +FORJUDGING +FORK +FORKBALL +FORKBALLS +FORKED +FORKEDLY +FORKER +FORKERS +FORKFUL +FORKFULS +FORKIER +FORKIEST +FORKINESS +FORKINESSES +FORKING +FORKLESS +FORKLIFT +FORKLIFTED +FORKLIFTING +FORKLIFTS +FORKLIKE +FORKS +FORKSFUL +FORKY +FORLORN +FORLORNER +FORLORNEST +FORLORNLY +FORLORNNESS +FORLORNNESSES +FORM +FORMABILITIES +FORMABILITY +FORMABLE +FORMABLY +FORMAL +FORMALDEHYDE +FORMALDEHYDES +FORMALIN +FORMALINS +FORMALISE +FORMALISED +FORMALISES +FORMALISING +FORMALISM +FORMALISMS +FORMALIST +FORMALISTIC +FORMALISTS +FORMALITIES +FORMALITY +FORMALIZABLE +FORMALIZATION +FORMALIZATIONS +FORMALIZE +FORMALIZED +FORMALIZER +FORMALIZERS +FORMALIZES +FORMALIZING +FORMALLY +FORMALNESS +FORMALNESSES +FORMALS +FORMAMIDE +FORMAMIDES +FORMANT +FORMANTS +FORMAT +FORMATE +FORMATES +FORMATION +FORMATIONS +FORMATIVE +FORMATIVELY +FORMATIVES +FORMATS +FORMATTED +FORMATTER +FORMATTERS +FORMATTING +FORME +FORMED +FORMEE +FORMER +FORMERLY +FORMERS +FORMES +FORMFITTING +FORMFUL +FORMIC +FORMICA +FORMICARIES +FORMICARY +FORMICAS +FORMIDABILITIES +FORMIDABILITY +FORMIDABLE +FORMIDABLENESS +FORMIDABLY +FORMING +FORMLESS +FORMLESSLY +FORMLESSNESS +FORMLESSNESSES +FORMOL +FORMOLS +FORMS +FORMULA +FORMULAE +FORMULAIC +FORMULAICALLY +FORMULARIES +FORMULARIZATION +FORMULARIZE +FORMULARIZED +FORMULARIZER +FORMULARIZERS +FORMULARIZES +FORMULARIZING +FORMULARY +FORMULAS +FORMULATE +FORMULATED +FORMULATES +FORMULATING +FORMULATION +FORMULATIONS +FORMULATOR +FORMULATORS +FORMULISM +FORMULISMS +FORMULIST +FORMULISTS +FORMULIZE +FORMULIZED +FORMULIZES +FORMULIZING +FORMWORK +FORMWORKS +FORMYL +FORMYLS +FORNENT +FORNICAL +FORNICATE +FORNICATED +FORNICATES +FORNICATING +FORNICATION +FORNICATIONS +FORNICATOR +FORNICATORS +FORNICES +FORNIX +FORRADER +FORRARDER +FORRIT +FORSAKE +FORSAKEN +FORSAKER +FORSAKERS +FORSAKES +FORSAKING +FORSOOK +FORSOOTH +FORSPENT +FORSWEAR +FORSWEARING +FORSWEARS +FORSWORE +FORSWORN +FORSYTHIA +FORSYTHIAS +FORT +FORTALICE +FORTALICES +FORTE +FORTEPIANO +FORTEPIANOS +FORTES +FORTH +FORTHCOMING +FORTHRIGHT +FORTHRIGHTLY +FORTHRIGHTNESS +FORTHRIGHTS +FORTHWITH +FORTIES +FORTIETH +FORTIETHS +FORTIFICATION +FORTIFICATIONS +FORTIFIED +FORTIFIER +FORTIFIERS +FORTIFIES +FORTIFY +FORTIFYING +FORTIS +FORTISSIMI +FORTISSIMO +FORTISSIMOS +FORTITUDE +FORTITUDES +FORTNIGHT +FORTNIGHTLIES +FORTNIGHTLY +FORTNIGHTS +FORTRESS +FORTRESSED +FORTRESSES +FORTRESSING +FORTRESSLIKE +FORTS +FORTUITIES +FORTUITOUS +FORTUITOUSLY +FORTUITOUSNESS +FORTUITY +FORTUNATE +FORTUNATELY +FORTUNATENESS +FORTUNATENESSES +FORTUNATES +FORTUNE +FORTUNED +FORTUNES +FORTUNING +FORTY +FORTYISH +FORUM +FORUMS +FORWARD +FORWARDED +FORWARDER +FORWARDERS +FORWARDEST +FORWARDING +FORWARDLY +FORWARDNESS +FORWARDNESSES +FORWARDS +FORWENT +FORWHY +FORWORN +FORZANDI +FORZANDO +FORZANDOS +FOSCARNET +FOSCARNETS +FOSS +FOSSA +FOSSAE +FOSSAS +FOSSATE +FOSSE +FOSSES +FOSSETTE +FOSSETTES +FOSSICK +FOSSICKED +FOSSICKER +FOSSICKERS +FOSSICKING +FOSSICKS +FOSSIL +FOSSILIFEROUS +FOSSILISE +FOSSILISED +FOSSILISES +FOSSILISING +FOSSILIZATION +FOSSILIZATIONS +FOSSILIZE +FOSSILIZED +FOSSILIZES +FOSSILIZING +FOSSILS +FOSSORIAL +FOSTER +FOSTERAGE +FOSTERAGES +FOSTERED +FOSTERER +FOSTERERS +FOSTERING +FOSTERLING +FOSTERLINGS +FOSTERS +FOU +FOUETTE +FOUETTES +FOUGHT +FOUGHTEN +FOUL +FOULARD +FOULARDS +FOULBROOD +FOULBROODS +FOULED +FOULER +FOULEST +FOULING +FOULINGS +FOULLY +FOULMOUTHED +FOULNESS +FOULNESSES +FOULS +FOUND +FOUNDATION +FOUNDATIONAL +FOUNDATIONALLY +FOUNDATIONLESS +FOUNDATIONS +FOUNDED +FOUNDER +FOUNDERED +FOUNDERING +FOUNDERS +FOUNDING +FOUNDLING +FOUNDLINGS +FOUNDRIES +FOUNDRY +FOUNDS +FOUNT +FOUNTAIN +FOUNTAINED +FOUNTAINHEAD +FOUNTAINHEADS +FOUNTAINING +FOUNTAINS +FOUNTS +FOUR +FOURCHEE +FOURDRINIER +FOURDRINIERS +FOUREYED +FOURFOLD +FOURGON +FOURGONS +FOURPENCE +FOURPENCES +FOURPENNIES +FOURPENNY +FOURPLEX +FOURPLEXES +FOURRAGERE +FOURRAGERES +FOURS +FOURSCORE +FOURSOME +FOURSOMES +FOURSQUARE +FOURTEEN +FOURTEENER +FOURTEENERS +FOURTEENS +FOURTEENTH +FOURTEENTHS +FOURTH +FOURTHLY +FOURTHS +FOVEA +FOVEAE +FOVEAL +FOVEAS +FOVEATE +FOVEATED +FOVEIFORM +FOVEOLA +FOVEOLAE +FOVEOLAR +FOVEOLAS +FOVEOLATE +FOVEOLE +FOVEOLES +FOVEOLET +FOVEOLETS +FOWL +FOWLED +FOWLER +FOWLERS +FOWLING +FOWLINGS +FOWLPOX +FOWLPOXES +FOWLS +FOX +FOXED +FOXES +FOXFIRE +FOXFIRES +FOXFISH +FOXFISHES +FOXGLOVE +FOXGLOVES +FOXHOLE +FOXHOLES +FOXHOUND +FOXHOUNDS +FOXHUNT +FOXHUNTED +FOXHUNTER +FOXHUNTERS +FOXHUNTING +FOXHUNTINGS +FOXHUNTS +FOXIER +FOXIEST +FOXILY +FOXINESS +FOXINESSES +FOXING +FOXINGS +FOXLIKE +FOXSKIN +FOXSKINS +FOXTAIL +FOXTAILS +FOXTROT +FOXTROTS +FOXTROTTED +FOXTROTTING +FOXY +FOY +FOYER +FOYERS +FOYS +FOZIER +FOZIEST +FOZINESS +FOZINESSES +FOZY +FRABJOUS +FRACAS +FRACASES +FRACTAL +FRACTALS +FRACTED +FRACTI +FRACTION +FRACTIONAL +FRACTIONALIZE +FRACTIONALIZED +FRACTIONALIZES +FRACTIONALIZING +FRACTIONALLY +FRACTIONATE +FRACTIONATED +FRACTIONATES +FRACTIONATING +FRACTIONATION +FRACTIONATIONS +FRACTIONATOR +FRACTIONATORS +FRACTIONED +FRACTIONING +FRACTIONS +FRACTIOUS +FRACTIOUSLY +FRACTIOUSNESS +FRACTIOUSNESSES +FRACTUR +FRACTURAL +FRACTURE +FRACTURED +FRACTURER +FRACTURERS +FRACTURES +FRACTURING +FRACTURS +FRACTUS +FRAE +FRAENA +FRAENUM +FRAENUMS +FRAG +FRAGGED +FRAGGING +FRAGGINGS +FRAGILE +FRAGILELY +FRAGILITIES +FRAGILITY +FRAGMENT +FRAGMENTAL +FRAGMENTALLY +FRAGMENTARILY +FRAGMENTARINESS +FRAGMENTARY +FRAGMENTATE +FRAGMENTATED +FRAGMENTATES +FRAGMENTATING +FRAGMENTATION +FRAGMENTATIONS +FRAGMENTED +FRAGMENTING +FRAGMENTIZE +FRAGMENTIZED +FRAGMENTIZES +FRAGMENTIZING +FRAGMENTS +FRAGRANCE +FRAGRANCES +FRAGRANCIES +FRAGRANCY +FRAGRANT +FRAGRANTLY +FRAGS +FRAIL +FRAILER +FRAILEST +FRAILLY +FRAILNESS +FRAILNESSES +FRAILS +FRAILTIES +FRAILTY +FRAISE +FRAISES +FRAKTUR +FRAKTURS +FRAMABLE +FRAMBESIA +FRAMBESIAS +FRAMBOISE +FRAMBOISES +FRAME +FRAMEABLE +FRAMED +FRAMELESS +FRAMER +FRAMERS +FRAMES +FRAMESHIFT +FRAMESHIFTS +FRAMEWORK +FRAMEWORKS +FRAMING +FRAMINGS +FRANC +FRANCHISE +FRANCHISED +FRANCHISEE +FRANCHISEES +FRANCHISER +FRANCHISERS +FRANCHISES +FRANCHISING +FRANCHISOR +FRANCHISORS +FRANCIUM +FRANCIUMS +FRANCIZE +FRANCIZED +FRANCIZES +FRANCIZING +FRANCOLIN +FRANCOLINS +FRANCOPHONE +FRANCS +FRANGIBILITIES +FRANGIBILITY +FRANGIBLE +FRANGIPANE +FRANGIPANES +FRANGIPANI +FRANGIPANNI +FRANGLAIS +FRANK +FRANKABLE +FRANKED +FRANKER +FRANKERS +FRANKEST +FRANKFORT +FRANKFORTS +FRANKFURT +FRANKFURTER +FRANKFURTERS +FRANKFURTS +FRANKINCENSE +FRANKINCENSES +FRANKING +FRANKLIN +FRANKLINITE +FRANKLINITES +FRANKLINS +FRANKLY +FRANKNESS +FRANKNESSES +FRANKPLEDGE +FRANKPLEDGES +FRANKS +FRANSERIA +FRANSERIAS +FRANTIC +FRANTICALLY +FRANTICLY +FRANTICNESS +FRANTICNESSES +FRAP +FRAPPE +FRAPPED +FRAPPES +FRAPPING +FRAPS +FRASS +FRASSES +FRAT +FRATER +FRATERNAL +FRATERNALISM +FRATERNALISMS +FRATERNALLY +FRATERNITIES +FRATERNITY +FRATERNIZATION +FRATERNIZATIONS +FRATERNIZE +FRATERNIZED +FRATERNIZER +FRATERNIZERS +FRATERNIZES +FRATERNIZING +FRATERS +FRATRICIDAL +FRATRICIDE +FRATRICIDES +FRATS +FRAUD +FRAUDS +FRAUDSTER +FRAUDSTERS +FRAUDULENCE +FRAUDULENCES +FRAUDULENT +FRAUDULENTLY +FRAUDULENTNESS +FRAUGHT +FRAUGHTED +FRAUGHTING +FRAUGHTS +FRAULEIN +FRAULEINS +FRAXINELLA +FRAXINELLAS +FRAY +FRAYED +FRAYING +FRAYINGS +FRAYS +FRAZIL +FRAZILS +FRAZZLE +FRAZZLED +FRAZZLES +FRAZZLING +FREAK +FREAKED +FREAKIER +FREAKIEST +FREAKILY +FREAKINESS +FREAKINESSES +FREAKING +FREAKISH +FREAKISHLY +FREAKISHNESS +FREAKISHNESSES +FREAKOUT +FREAKOUTS +FREAKS +FREAKY +FRECKLE +FRECKLED +FRECKLES +FRECKLIER +FRECKLIEST +FRECKLING +FRECKLY +FREE +FREEBASE +FREEBASED +FREEBASER +FREEBASERS +FREEBASES +FREEBASING +FREEBEE +FREEBEES +FREEBIE +FREEBIES +FREEBOARD +FREEBOARDS +FREEBOOT +FREEBOOTED +FREEBOOTER +FREEBOOTERS +FREEBOOTING +FREEBOOTS +FREEBORN +FREED +FREEDMAN +FREEDMEN +FREEDOM +FREEDOMS +FREEDWOMAN +FREEDWOMEN +FREEFORM +FREEHAND +FREEHANDED +FREEHANDEDLY +FREEHANDEDNESS +FREEHEARTED +FREEHEARTEDLY +FREEHOLD +FREEHOLDER +FREEHOLDERS +FREEHOLDS +FREEING +FREELANCE +FREELANCED +FREELANCER +FREELANCERS +FREELANCES +FREELANCING +FREELOAD +FREELOADED +FREELOADER +FREELOADERS +FREELOADING +FREELOADS +FREELY +FREEMAN +FREEMARTIN +FREEMARTINS +FREEMASON +FREEMASONRIES +FREEMASONRY +FREEMASONS +FREEMEN +FREENESS +FREENESSES +FREER +FREERS +FREES +FREESIA +FREESIAS +FREEST +FREESTANDING +FREESTONE +FREESTONES +FREESTYLE +FREESTYLER +FREESTYLERS +FREESTYLES +FREETHINKER +FREETHINKERS +FREETHINKING +FREETHINKINGS +FREEWARE +FREEWARES +FREEWAY +FREEWAYS +FREEWHEEL +FREEWHEELED +FREEWHEELER +FREEWHEELERS +FREEWHEELING +FREEWHEELINGLY +FREEWHEELS +FREEWILL +FREEWRITE +FREEWRITES +FREEWRITING +FREEWRITINGS +FREEWRITTEN +FREEWROTE +FREEZABLE +FREEZE +FREEZER +FREEZERS +FREEZES +FREEZING +FREEZINGLY +FREIGHT +FREIGHTAGE +FREIGHTAGES +FREIGHTED +FREIGHTER +FREIGHTERS +FREIGHTING +FREIGHTS +FREMD +FREMITUS +FREMITUSES +FRENA +FRENCH +FRENCHED +FRENCHES +FRENCHIFICATION +FRENCHIFIED +FRENCHIFIES +FRENCHIFY +FRENCHIFYING +FRENCHING +FRENETIC +FRENETICALLY +FRENETICISM +FRENETICISMS +FRENETICS +FRENULA +FRENULAR +FRENULUM +FRENULUMS +FRENUM +FRENUMS +FRENZIED +FRENZIEDLY +FRENZIES +FRENZILY +FRENZY +FRENZYING +FREQUENCE +FREQUENCES +FREQUENCIES +FREQUENCY +FREQUENT +FREQUENTATION +FREQUENTATIONS +FREQUENTATIVE +FREQUENTATIVES +FREQUENTED +FREQUENTER +FREQUENTERS +FREQUENTEST +FREQUENTING +FREQUENTLY +FREQUENTNESS +FREQUENTNESSES +FREQUENTS +FRERE +FRERES +FRESCO +FRESCOED +FRESCOER +FRESCOERS +FRESCOES +FRESCOING +FRESCOIST +FRESCOISTS +FRESCOS +FRESH +FRESHED +FRESHEN +FRESHENED +FRESHENER +FRESHENERS +FRESHENING +FRESHENS +FRESHER +FRESHES +FRESHEST +FRESHET +FRESHETS +FRESHING +FRESHLY +FRESHMAN +FRESHMEN +FRESHNESS +FRESHNESSES +FRESHWATER +FRESHWATERS +FRESNEL +FRESNELS +FRET +FRETBOARD +FRETBOARDS +FRETFUL +FRETFULLY +FRETFULNESS +FRETFULNESSES +FRETLESS +FRETS +FRETSAW +FRETSAWS +FRETSOME +FRETTED +FRETTER +FRETTERS +FRETTIER +FRETTIEST +FRETTING +FRETTY +FRETWORK +FRETWORKS +FRIABILITIES +FRIABILITY +FRIABLE +FRIAR +FRIARBIRD +FRIARBIRDS +FRIARIES +FRIARLY +FRIARS +FRIARY +FRIBBLE +FRIBBLED +FRIBBLER +FRIBBLERS +FRIBBLES +FRIBBLING +FRICANDEAU +FRICANDEAUS +FRICANDO +FRICANDOES +FRICASSEE +FRICASSEED +FRICASSEEING +FRICASSEES +FRICATIVE +FRICATIVES +FRICTION +FRICTIONAL +FRICTIONALLY +FRICTIONLESS +FRICTIONLESSLY +FRICTIONS +FRIDGE +FRIDGES +FRIED +FRIEDCAKE +FRIEDCAKES +FRIEND +FRIENDED +FRIENDING +FRIENDLESS +FRIENDLESSNESS +FRIENDLIER +FRIENDLIES +FRIENDLIEST +FRIENDLILY +FRIENDLINESS +FRIENDLINESSES +FRIENDLY +FRIENDS +FRIENDSHIP +FRIENDSHIPS +FRIER +FRIERS +FRIES +FRIEZE +FRIEZELIKE +FRIEZES +FRIG +FRIGATE +FRIGATES +FRIGES +FRIGGED +FRIGGING +FRIGHT +FRIGHTED +FRIGHTEN +FRIGHTENED +FRIGHTENING +FRIGHTENINGLY +FRIGHTENS +FRIGHTFUL +FRIGHTFULLY +FRIGHTFULNESS +FRIGHTFULNESSES +FRIGHTING +FRIGHTS +FRIGID +FRIGIDITIES +FRIGIDITY +FRIGIDLY +FRIGIDNESS +FRIGIDNESSES +FRIGORIFIC +FRIGS +FRIJOL +FRIJOLE +FRIJOLES +FRILL +FRILLED +FRILLER +FRILLERS +FRILLIER +FRILLIEST +FRILLING +FRILLINGS +FRILLS +FRILLY +FRINGE +FRINGED +FRINGES +FRINGIER +FRINGIEST +FRINGING +FRINGY +FRIPPERIES +FRIPPERY +FRISBEE +FRISBEES +FRISE +FRISEE +FRISEES +FRISES +FRISETTE +FRISETTES +FRISEUR +FRISEURS +FRISK +FRISKED +FRISKER +FRISKERS +FRISKET +FRISKETS +FRISKIER +FRISKIEST +FRISKILY +FRISKINESS +FRISKINESSES +FRISKING +FRISKS +FRISKY +FRISSON +FRISSONS +FRIT +FRITES +FRITH +FRITHS +FRITILLARIA +FRITILLARIAS +FRITILLARIES +FRITILLARY +FRITS +FRITT +FRITTATA +FRITTATAS +FRITTED +FRITTER +FRITTERED +FRITTERER +FRITTERERS +FRITTERING +FRITTERS +FRITTING +FRITTS +FRITZ +FRITZES +FRIVOL +FRIVOLED +FRIVOLER +FRIVOLERS +FRIVOLING +FRIVOLITIES +FRIVOLITY +FRIVOLLED +FRIVOLLER +FRIVOLLERS +FRIVOLLING +FRIVOLOUS +FRIVOLOUSLY +FRIVOLOUSNESS +FRIVOLOUSNESSES +FRIVOLS +FRIZ +FRIZED +FRIZER +FRIZERS +FRIZES +FRIZETTE +FRIZETTES +FRIZING +FRIZZ +FRIZZED +FRIZZER +FRIZZERS +FRIZZES +FRIZZIER +FRIZZIES +FRIZZIEST +FRIZZILY +FRIZZINESS +FRIZZINESSES +FRIZZING +FRIZZLE +FRIZZLED +FRIZZLER +FRIZZLERS +FRIZZLES +FRIZZLIER +FRIZZLIEST +FRIZZLING +FRIZZLY +FRIZZY +FRO +FROCK +FROCKED +FROCKING +FROCKLESS +FROCKS +FROE +FROES +FROG +FROGEYE +FROGEYED +FROGEYES +FROGFISH +FROGFISHES +FROGGED +FROGGIER +FROGGIEST +FROGGING +FROGGY +FROGHOPPER +FROGHOPPERS +FROGLET +FROGLETS +FROGLIKE +FROGMAN +FROGMARCH +FROGMARCHED +FROGMARCHES +FROGMARCHING +FROGMEN +FROGS +FROLIC +FROLICKED +FROLICKER +FROLICKERS +FROLICKING +FROLICKY +FROLICS +FROLICSOME +FROM +FROMAGE +FROMAGES +FROMENTIES +FROMENTY +FROND +FRONDED +FRONDEUR +FRONDEURS +FRONDOSE +FRONDS +FRONS +FRONT +FRONTAGE +FRONTAGES +FRONTAL +FRONTALITIES +FRONTALITY +FRONTALLY +FRONTALS +FRONTCOURT +FRONTCOURTS +FRONTED +FRONTENIS +FRONTENISES +FRONTER +FRONTES +FRONTIER +FRONTIERS +FRONTIERSMAN +FRONTIERSMEN +FRONTING +FRONTISPIECE +FRONTISPIECES +FRONTLESS +FRONTLET +FRONTLETS +FRONTLINE +FRONTLINES +FRONTLIST +FRONTLISTS +FRONTMAN +FRONTMEN +FRONTOGENESES +FRONTOGENESIS +FRONTOLYSES +FRONTOLYSIS +FRONTON +FRONTONS +FRONTPAGE +FRONTPAGED +FRONTPAGES +FRONTPAGING +FRONTS +FRONTWARD +FRONTWARDS +FRORE +FROSH +FROST +FROSTBIT +FROSTBITE +FROSTBITES +FROSTBITING +FROSTBITINGS +FROSTBITTEN +FROSTED +FROSTEDS +FROSTFISH +FROSTFISHES +FROSTIER +FROSTIEST +FROSTILY +FROSTINESS +FROSTINESSES +FROSTING +FROSTINGS +FROSTLESS +FROSTLINE +FROSTLINES +FROSTNIP +FROSTNIPS +FROSTS +FROSTWORK +FROSTWORKS +FROSTY +FROTH +FROTHED +FROTHER +FROTHERS +FROTHIER +FROTHIEST +FROTHILY +FROTHINESS +FROTHINESSES +FROTHING +FROTHS +FROTHY +FROTTAGE +FROTTAGES +FROTTEUR +FROTTEURS +FROUFROU +FROUFROUS +FROUNCE +FROUNCED +FROUNCES +FROUNCING +FROUZIER +FROUZIEST +FROUZY +FROW +FROWARD +FROWARDLY +FROWARDNESS +FROWARDNESSES +FROWN +FROWNED +FROWNER +FROWNERS +FROWNING +FROWNINGLY +FROWNS +FROWS +FROWSIER +FROWSIEST +FROWST +FROWSTED +FROWSTIER +FROWSTIEST +FROWSTING +FROWSTS +FROWSTY +FROWSY +FROWZIER +FROWZIEST +FROWZILY +FROWZY +FROZE +FROZEN +FROZENLY +FROZENNESS +FROZENNESSES +FRUCTIFICATION +FRUCTIFICATIONS +FRUCTIFIED +FRUCTIFIES +FRUCTIFY +FRUCTIFYING +FRUCTOSE +FRUCTOSES +FRUCTUOUS +FRUG +FRUGAL +FRUGALITIES +FRUGALITY +FRUGALLY +FRUGGED +FRUGGING +FRUGIVORE +FRUGIVORES +FRUGIVOROUS +FRUGS +FRUIT +FRUITAGE +FRUITAGES +FRUITARIAN +FRUITARIANS +FRUITCAKE +FRUITCAKES +FRUITED +FRUITER +FRUITERER +FRUITERERS +FRUITERS +FRUITFUL +FRUITFULLER +FRUITFULLEST +FRUITFULLY +FRUITFULNESS +FRUITFULNESSES +FRUITIER +FRUITIEST +FRUITILY +FRUITINESS +FRUITINESSES +FRUITING +FRUITION +FRUITIONS +FRUITLESS +FRUITLESSLY +FRUITLESSNESS +FRUITLESSNESSES +FRUITLET +FRUITLETS +FRUITLIKE +FRUITS +FRUITWOOD +FRUITWOODS +FRUITY +FRUMENTIES +FRUMENTY +FRUMP +FRUMPIER +FRUMPIEST +FRUMPILY +FRUMPISH +FRUMPS +FRUMPY +FRUSTA +FRUSTRATE +FRUSTRATED +FRUSTRATES +FRUSTRATING +FRUSTRATINGLY +FRUSTRATION +FRUSTRATIONS +FRUSTULE +FRUSTULES +FRUSTUM +FRUSTUMS +FRUTESCENT +FRUTICOSE +FRY +FRYABLE +FRYBREAD +FRYBREADS +FRYER +FRYERS +FRYING +FRYPAN +FRYPANS +FUB +FUBAR +FUBBED +FUBBING +FUBS +FUBSIER +FUBSIEST +FUBSY +FUCHSIA +FUCHSIAS +FUCHSIN +FUCHSINE +FUCHSINES +FUCHSINS +FUCI +FUCK +FUCKED +FUCKER +FUCKERS +FUCKING +FUCKOFF +FUCKOFFS +FUCKS +FUCKUP +FUCKUPS +FUCOID +FUCOIDAL +FUCOIDS +FUCOSE +FUCOSES +FUCOUS +FUCOXANTHIN +FUCOXANTHINS +FUCUS +FUCUSES +FUD +FUDDIES +FUDDLE +FUDDLED +FUDDLES +FUDDLING +FUDDY +FUDGE +FUDGED +FUDGES +FUDGING +FUDS +FUEHRER +FUEHRERS +FUEL +FUELED +FUELER +FUELERS +FUELING +FUELLED +FUELLER +FUELLERS +FUELLING +FUELS +FUELWOOD +FUELWOODS +FUG +FUGACIOUS +FUGACITIES +FUGACITY +FUGAL +FUGALLY +FUGATO +FUGATOS +FUGGED +FUGGIER +FUGGIEST +FUGGILY +FUGGING +FUGGY +FUGIO +FUGIOS +FUGITIVE +FUGITIVELY +FUGITIVENESS +FUGITIVENESSES +FUGITIVES +FUGLE +FUGLED +FUGLEMAN +FUGLEMEN +FUGLES +FUGLING +FUGS +FUGU +FUGUE +FUGUED +FUGUELIKE +FUGUES +FUGUING +FUGUIST +FUGUISTS +FUGUS +FUHRER +FUHRERS +FUJI +FUJIS +FULCRA +FULCRUM +FULCRUMS +FULFIL +FULFILL +FULFILLED +FULFILLER +FULFILLERS +FULFILLING +FULFILLMENT +FULFILLMENTS +FULFILLS +FULFILMENT +FULFILMENTS +FULFILS +FULGENT +FULGENTLY +FULGID +FULGURANT +FULGURATE +FULGURATED +FULGURATES +FULGURATING +FULGURATION +FULGURATIONS +FULGURITE +FULGURITES +FULGUROUS +FULHAM +FULHAMS +FULIGINOUS +FULIGINOUSLY +FULL +FULLAM +FULLAMS +FULLBACK +FULLBACKS +FULLBLOOD +FULLBLOODS +FULLED +FULLER +FULLERED +FULLERENE +FULLERENES +FULLERIES +FULLERING +FULLERS +FULLERY +FULLEST +FULLFACE +FULLFACES +FULLING +FULLMOUTHED +FULLNESS +FULLNESSES +FULLS +FULLY +FULMAR +FULMARS +FULMINANT +FULMINATE +FULMINATED +FULMINATES +FULMINATING +FULMINATION +FULMINATIONS +FULMINE +FULMINED +FULMINES +FULMINIC +FULMINING +FULNESS +FULNESSES +FULSOME +FULSOMELY +FULSOMENESS +FULSOMENESSES +FULVOUS +FUMARASE +FUMARASES +FUMARATE +FUMARATES +FUMARIC +FUMAROLE +FUMAROLES +FUMAROLIC +FUMATORIES +FUMATORY +FUMBLE +FUMBLED +FUMBLER +FUMBLERS +FUMBLES +FUMBLING +FUMBLINGLY +FUME +FUMED +FUMELESS +FUMELIKE +FUMER +FUMERS +FUMES +FUMET +FUMETS +FUMETTE +FUMETTES +FUMIER +FUMIEST +FUMIGANT +FUMIGANTS +FUMIGATE +FUMIGATED +FUMIGATES +FUMIGATING +FUMIGATION +FUMIGATIONS +FUMIGATOR +FUMIGATORS +FUMING +FUMINGLY +FUMITORIES +FUMITORY +FUMULI +FUMULUS +FUMY +FUN +FUNAMBULISM +FUNAMBULISMS +FUNAMBULIST +FUNAMBULISTS +FUNCTION +FUNCTIONAL +FUNCTIONALISM +FUNCTIONALISMS +FUNCTIONALIST +FUNCTIONALISTIC +FUNCTIONALISTS +FUNCTIONALITIES +FUNCTIONALITY +FUNCTIONALLY +FUNCTIONARIES +FUNCTIONARY +FUNCTIONED +FUNCTIONING +FUNCTIONLESS +FUNCTIONS +FUNCTOR +FUNCTORS +FUND +FUNDAMENT +FUNDAMENTAL +FUNDAMENTALISM +FUNDAMENTALISMS +FUNDAMENTALIST +FUNDAMENTALISTS +FUNDAMENTALLY +FUNDAMENTALS +FUNDAMENTS +FUNDED +FUNDER +FUNDERS +FUNDI +FUNDIC +FUNDING +FUNDRAISE +FUNDRAISED +FUNDRAISES +FUNDRAISING +FUNDS +FUNDUS +FUNERAL +FUNERALS +FUNERARY +FUNEREAL +FUNEREALLY +FUNEST +FUNFAIR +FUNFAIRS +FUNFEST +FUNFESTS +FUNGAL +FUNGALS +FUNGI +FUNGIBILITIES +FUNGIBILITY +FUNGIBLE +FUNGIBLES +FUNGIC +FUNGICIDAL +FUNGICIDALLY +FUNGICIDE +FUNGICIDES +FUNGIFORM +FUNGISTAT +FUNGISTATIC +FUNGISTATS +FUNGO +FUNGOES +FUNGOID +FUNGOIDS +FUNGOUS +FUNGUS +FUNGUSES +FUNHOUSE +FUNHOUSES +FUNICLE +FUNICLES +FUNICULAR +FUNICULARS +FUNICULI +FUNICULUS +FUNK +FUNKED +FUNKER +FUNKERS +FUNKIA +FUNKIAS +FUNKIER +FUNKIEST +FUNKILY +FUNKINESS +FUNKINESSES +FUNKING +FUNKS +FUNKY +FUNNED +FUNNEL +FUNNELED +FUNNELFORM +FUNNELING +FUNNELLED +FUNNELLING +FUNNELS +FUNNER +FUNNEST +FUNNIER +FUNNIES +FUNNIEST +FUNNILY +FUNNINESS +FUNNINESSES +FUNNING +FUNNY +FUNNYMAN +FUNNYMEN +FUNPLEX +FUNPLEXES +FUNS +FUR +FURAN +FURANE +FURANES +FURANOSE +FURANOSES +FURANOSIDE +FURANOSIDES +FURANS +FURAZOLIDONE +FURAZOLIDONES +FURBEARER +FURBEARERS +FURBELOW +FURBELOWED +FURBELOWING +FURBELOWS +FURBISH +FURBISHED +FURBISHER +FURBISHERS +FURBISHES +FURBISHING +FURCATE +FURCATED +FURCATELY +FURCATES +FURCATING +FURCATION +FURCATIONS +FURCRAEA +FURCRAEAS +FURCULA +FURCULAE +FURCULAR +FURCULUM +FURFUR +FURFURAL +FURFURALS +FURFURAN +FURFURANS +FURFURES +FURIBUND +FURIES +FURIOSO +FURIOUS +FURIOUSLY +FURL +FURLABLE +FURLED +FURLER +FURLERS +FURLESS +FURLING +FURLONG +FURLONGS +FURLOUGH +FURLOUGHED +FURLOUGHING +FURLOUGHS +FURLS +FURMENTIES +FURMENTY +FURMETIES +FURMETY +FURMITIES +FURMITY +FURNACE +FURNACED +FURNACES +FURNACING +FURNISH +FURNISHED +FURNISHER +FURNISHERS +FURNISHES +FURNISHING +FURNISHINGS +FURNITURE +FURNITURES +FUROR +FURORE +FURORES +FURORS +FUROSEMIDE +FUROSEMIDES +FURRED +FURRIER +FURRIERIES +FURRIERS +FURRIERY +FURRIEST +FURRILY +FURRINER +FURRINERS +FURRINESS +FURRINESSES +FURRING +FURRINGS +FURROW +FURROWED +FURROWER +FURROWERS +FURROWING +FURROWS +FURROWY +FURRY +FURS +FURTHER +FURTHERANCE +FURTHERANCES +FURTHERED +FURTHERER +FURTHERERS +FURTHERING +FURTHERMORE +FURTHERMOST +FURTHERS +FURTHEST +FURTIVE +FURTIVELY +FURTIVENESS +FURTIVENESSES +FURUNCLE +FURUNCLES +FURUNCULOSES +FURUNCULOSIS +FURY +FURZE +FURZES +FURZIER +FURZIEST +FURZY +FUSAIN +FUSAINS +FUSARIA +FUSARIUM +FUSCOUS +FUSE +FUSED +FUSEE +FUSEES +FUSEL +FUSELAGE +FUSELAGES +FUSELESS +FUSELIKE +FUSELS +FUSES +FUSIBILITIES +FUSIBILITY +FUSIBLE +FUSIBLY +FUSIFORM +FUSIL +FUSILE +FUSILEER +FUSILEERS +FUSILIER +FUSILIERS +FUSILLADE +FUSILLADED +FUSILLADES +FUSILLADING +FUSILLI +FUSILLIS +FUSILS +FUSING +FUSION +FUSIONAL +FUSIONISM +FUSIONISMS +FUSIONIST +FUSIONISTS +FUSIONS +FUSS +FUSSBUDGET +FUSSBUDGETS +FUSSBUDGETY +FUSSED +FUSSER +FUSSERS +FUSSES +FUSSIER +FUSSIEST +FUSSILY +FUSSINESS +FUSSINESSES +FUSSING +FUSSPOT +FUSSPOTS +FUSSY +FUSTIAN +FUSTIANS +FUSTIC +FUSTICS +FUSTIER +FUSTIEST +FUSTIGATE +FUSTIGATED +FUSTIGATES +FUSTIGATING +FUSTIGATION +FUSTIGATIONS +FUSTILY +FUSTINESS +FUSTINESSES +FUSTY +FUSULINID +FUSULINIDS +FUSUMA +FUTHARC +FUTHARCS +FUTHARK +FUTHARKS +FUTHORC +FUTHORCS +FUTHORK +FUTHORKS +FUTILE +FUTILELY +FUTILENESS +FUTILENESSES +FUTILITARIAN +FUTILITARIANISM +FUTILITARIANS +FUTILITIES +FUTILITY +FUTON +FUTONS +FUTTOCK +FUTTOCKS +FUTURAL +FUTURE +FUTURELESS +FUTURELESSNESS +FUTURES +FUTURISM +FUTURISMS +FUTURIST +FUTURISTIC +FUTURISTICALLY +FUTURISTICS +FUTURISTS +FUTURITIES +FUTURITY +FUTUROLOGICAL +FUTUROLOGIES +FUTUROLOGIST +FUTUROLOGISTS +FUTUROLOGY +FUTZ +FUTZED +FUTZES +FUTZING +FUZE +FUZED +FUZEE +FUZEES +FUZES +FUZIL +FUZILS +FUZING +FUZZ +FUZZED +FUZZES +FUZZIER +FUZZIEST +FUZZILY +FUZZINESS +FUZZINESSES +FUZZING +FUZZTONE +FUZZTONES +FUZZY +FYCE +FYCES +FYKE +FYKES +FYLFOT +FYLFOTS +FYNBOS +FYTTE +FYTTES +GAB +GABARDINE +GABARDINES +GABBARD +GABBARDS +GABBART +GABBARTS +GABBED +GABBER +GABBERS +GABBIER +GABBIEST +GABBINESS +GABBINESSES +GABBING +GABBLE +GABBLED +GABBLER +GABBLERS +GABBLES +GABBLING +GABBRO +GABBROIC +GABBROID +GABBROS +GABBY +GABELLE +GABELLED +GABELLES +GABERDINE +GABERDINES +GABFEST +GABFESTS +GABIES +GABION +GABIONS +GABLE +GABLED +GABLELIKE +GABLES +GABLING +GABOON +GABOONS +GABS +GABY +GAD +GADABOUT +GADABOUTS +GADARENE +GADDED +GADDER +GADDERS +GADDI +GADDING +GADDIS +GADFLIES +GADFLY +GADGET +GADGETEER +GADGETEERS +GADGETRIES +GADGETRY +GADGETS +GADGETY +GADI +GADID +GADIDS +GADIS +GADJE +GADJO +GADOID +GADOIDS +GADOLINITE +GADOLINITES +GADOLINIUM +GADOLINIUMS +GADROON +GADROONED +GADROONING +GADROONINGS +GADROONS +GADS +GADWALL +GADWALLS +GADZOOKERIES +GADZOOKERY +GADZOOKS +GAE +GAED +GAEING +GAEN +GAES +GAFF +GAFFE +GAFFED +GAFFER +GAFFERS +GAFFES +GAFFING +GAFFS +GAG +GAGA +GAGAKU +GAGAKUS +GAGE +GAGED +GAGER +GAGERS +GAGES +GAGGED +GAGGER +GAGGERS +GAGGING +GAGGLE +GAGGLED +GAGGLES +GAGGLING +GAGING +GAGMAN +GAGMEN +GAGS +GAGSTER +GAGSTERS +GAHNITE +GAHNITES +GAIETIES +GAIETY +GAIJIN +GAILLARDIA +GAILLARDIAS +GAILY +GAIN +GAINABLE +GAINED +GAINER +GAINERS +GAINFUL +GAINFULLY +GAINFULNESS +GAINFULNESSES +GAINGIVING +GAINGIVINGS +GAINING +GAINLESS +GAINLIER +GAINLIEST +GAINLY +GAINS +GAINSAID +GAINSAY +GAINSAYER +GAINSAYERS +GAINSAYING +GAINSAYS +GAINST +GAIT +GAITED +GAITER +GAITERS +GAITING +GAITS +GAL +GALA +GALABIA +GALABIAS +GALABIEH +GALABIEHS +GALABIYA +GALABIYAH +GALABIYAHS +GALABIYAS +GALACTIC +GALACTORRHEA +GALACTORRHEAS +GALACTOSAMINE +GALACTOSAMINES +GALACTOSE +GALACTOSEMIA +GALACTOSEMIAS +GALACTOSEMIC +GALACTOSES +GALACTOSIDASE +GALACTOSIDASES +GALACTOSIDE +GALACTOSIDES +GALACTOSYL +GALACTOSYLS +GALAGO +GALAGOS +GALAH +GALAHS +GALANGA +GALANGAL +GALANGALS +GALANGAS +GALANTINE +GALANTINES +GALAS +GALATEA +GALATEAS +GALAVANT +GALAVANTED +GALAVANTING +GALAVANTS +GALAX +GALAXES +GALAXIES +GALAXY +GALBANUM +GALBANUMS +GALE +GALEA +GALEAE +GALEAS +GALEATE +GALEATED +GALENA +GALENAS +GALENIC +GALENICAL +GALENICALS +GALENITE +GALENITES +GALERE +GALERES +GALES +GALETTE +GALETTES +GALILEE +GALILEES +GALINGALE +GALINGALES +GALIOT +GALIOTS +GALIPOT +GALIPOTS +GALIVANT +GALIVANTED +GALIVANTING +GALIVANTS +GALL +GALLAMINE +GALLAMINES +GALLANT +GALLANTED +GALLANTING +GALLANTLY +GALLANTRIES +GALLANTRY +GALLANTS +GALLATE +GALLATES +GALLBLADDER +GALLBLADDERS +GALLEASS +GALLEASSES +GALLED +GALLEIN +GALLEINS +GALLEON +GALLEONS +GALLERIA +GALLERIAS +GALLERIED +GALLERIES +GALLERY +GALLERYGOER +GALLERYGOERS +GALLERYING +GALLERYITE +GALLERYITES +GALLET +GALLETA +GALLETAS +GALLETED +GALLETING +GALLETS +GALLEY +GALLEYS +GALLFLIES +GALLFLY +GALLIARD +GALLIARDS +GALLIASS +GALLIASSES +GALLIC +GALLICA +GALLICAN +GALLICAS +GALLICISM +GALLICISMS +GALLICIZATION +GALLICIZATIONS +GALLICIZE +GALLICIZED +GALLICIZES +GALLICIZING +GALLIED +GALLIES +GALLIGASKINS +GALLIMAUFRIES +GALLIMAUFRY +GALLINACEOUS +GALLING +GALLINGLY +GALLINIPPER +GALLINIPPERS +GALLINULE +GALLINULES +GALLIOT +GALLIOTS +GALLIPOT +GALLIPOTS +GALLIUM +GALLIUMS +GALLIVANT +GALLIVANTED +GALLIVANTING +GALLIVANTS +GALLIWASP +GALLIWASPS +GALLNUT +GALLNUTS +GALLON +GALLONAGE +GALLONAGES +GALLONS +GALLOON +GALLOONED +GALLOONS +GALLOOT +GALLOOTS +GALLOP +GALLOPADE +GALLOPADES +GALLOPED +GALLOPER +GALLOPERS +GALLOPING +GALLOPS +GALLOUS +GALLOWGLASS +GALLOWGLASSES +GALLOWS +GALLOWSES +GALLS +GALLSTONE +GALLSTONES +GALLUS +GALLUSED +GALLUSES +GALLY +GALLYING +GALOOT +GALOOTS +GALOP +GALOPADE +GALOPADES +GALOPED +GALOPING +GALOPS +GALORE +GALORES +GALOSH +GALOSHE +GALOSHED +GALOSHES +GALS +GALUMPH +GALUMPHED +GALUMPHING +GALUMPHS +GALVANIC +GALVANICALLY +GALVANISE +GALVANISED +GALVANISES +GALVANISING +GALVANISM +GALVANISMS +GALVANIZATION +GALVANIZATIONS +GALVANIZE +GALVANIZED +GALVANIZER +GALVANIZERS +GALVANIZES +GALVANIZING +GALVANOMETER +GALVANOMETERS +GALVANOMETRIC +GALVANOSCOPE +GALVANOSCOPES +GALYAC +GALYACS +GALYAK +GALYAKS +GAM +GAMA +GAMAS +GAMASHES +GAMAY +GAMAYS +GAMB +GAMBA +GAMBADE +GAMBADES +GAMBADO +GAMBADOES +GAMBADOS +GAMBAS +GAMBE +GAMBES +GAMBESON +GAMBESONS +GAMBIA +GAMBIAS +GAMBIER +GAMBIERS +GAMBIR +GAMBIRS +GAMBIT +GAMBITS +GAMBLE +GAMBLED +GAMBLER +GAMBLERS +GAMBLES +GAMBLING +GAMBOGE +GAMBOGES +GAMBOGIAN +GAMBOL +GAMBOLED +GAMBOLING +GAMBOLLED +GAMBOLLING +GAMBOLS +GAMBREL +GAMBRELS +GAMBS +GAMBUSIA +GAMBUSIAS +GAME +GAMECOCK +GAMECOCKS +GAMED +GAMEKEEPER +GAMEKEEPERS +GAMELAN +GAMELANS +GAMELIKE +GAMELY +GAMENESS +GAMENESSES +GAMER +GAMERS +GAMES +GAMESMAN +GAMESMANSHIP +GAMESMANSHIPS +GAMESMEN +GAMESOME +GAMESOMELY +GAMESOMENESS +GAMESOMENESSES +GAMEST +GAMESTER +GAMESTERS +GAMETAL +GAMETANGIA +GAMETANGIUM +GAMETE +GAMETES +GAMETIC +GAMETICALLY +GAMETOCYTE +GAMETOCYTES +GAMETOGENESES +GAMETOGENESIS +GAMETOGENIC +GAMETOGENOUS +GAMETOPHORE +GAMETOPHORES +GAMETOPHYTE +GAMETOPHYTES +GAMETOPHYTIC +GAMEY +GAMIC +GAMIER +GAMIEST +GAMILY +GAMIN +GAMINE +GAMINES +GAMINESS +GAMINESSES +GAMING +GAMINGS +GAMINS +GAMMA +GAMMADIA +GAMMADION +GAMMAS +GAMMED +GAMMER +GAMMERS +GAMMIER +GAMMIEST +GAMMING +GAMMON +GAMMONED +GAMMONER +GAMMONERS +GAMMONING +GAMMONS +GAMMY +GAMODEME +GAMODEMES +GAMOPETALOUS +GAMP +GAMPS +GAMS +GAMUT +GAMUTS +GAMY +GAN +GANACHE +GANACHES +GANDER +GANDERED +GANDERING +GANDERS +GANE +GANEF +GANEFS +GANEV +GANEVS +GANG +GANGBANG +GANGBANGED +GANGBANGER +GANGBANGERS +GANGBANGING +GANGBANGS +GANGBUSTER +GANGBUSTERS +GANGED +GANGER +GANGERS +GANGING +GANGLAND +GANGLANDS +GANGLIA +GANGLIAL +GANGLIAR +GANGLIATE +GANGLIER +GANGLIEST +GANGLING +GANGLION +GANGLIONATED +GANGLIONIC +GANGLIONS +GANGLIOSIDE +GANGLIOSIDES +GANGLY +GANGPLANK +GANGPLANKS +GANGPLOW +GANGPLOWS +GANGREL +GANGRELS +GANGRENE +GANGRENED +GANGRENES +GANGRENING +GANGRENOUS +GANGS +GANGSTA +GANGSTAS +GANGSTER +GANGSTERDOM +GANGSTERDOMS +GANGSTERISH +GANGSTERISM +GANGSTERISMS +GANGSTERS +GANGUE +GANGUES +GANGWAY +GANGWAYS +GANISTER +GANISTERS +GANJA +GANJAH +GANJAHS +GANJAS +GANNET +GANNETS +GANNISTER +GANNISTERS +GANOF +GANOFS +GANOID +GANOIDS +GANTELOPE +GANTELOPES +GANTLET +GANTLETED +GANTLETING +GANTLETS +GANTLINE +GANTLINES +GANTLOPE +GANTLOPES +GANTRIES +GANTRY +GANYMEDE +GANYMEDES +GAOL +GAOLED +GAOLER +GAOLERS +GAOLING +GAOLS +GAP +GAPE +GAPED +GAPER +GAPERS +GAPES +GAPESEED +GAPESEEDS +GAPEWORM +GAPEWORMS +GAPING +GAPINGLY +GAPLESS +GAPOSIS +GAPOSISES +GAPPED +GAPPIER +GAPPIEST +GAPPING +GAPPY +GAPS +GAPY +GAR +GARAGE +GARAGED +GARAGEMAN +GARAGEMEN +GARAGES +GARAGING +GARB +GARBAGE +GARBAGEMAN +GARBAGEMEN +GARBAGES +GARBAGEY +GARBAGY +GARBANZO +GARBANZOS +GARBED +GARBING +GARBLE +GARBLED +GARBLER +GARBLERS +GARBLES +GARBLESS +GARBLING +GARBOARD +GARBOARDS +GARBOIL +GARBOILS +GARBOLOGIES +GARBOLOGY +GARBS +GARCON +GARCONS +GARDA +GARDAI +GARDANT +GARDEN +GARDENED +GARDENER +GARDENERS +GARDENFUL +GARDENFULS +GARDENIA +GARDENIAS +GARDENING +GARDENS +GARDEROBE +GARDEROBES +GARDYLOO +GARFISH +GARFISHES +GARGANEY +GARGANEYS +GARGANTUA +GARGANTUAN +GARGANTUAS +GARGET +GARGETS +GARGETY +GARGLE +GARGLED +GARGLER +GARGLERS +GARGLES +GARGLING +GARGOYLE +GARGOYLED +GARGOYLES +GARIBALDI +GARIBALDIS +GARIGUE +GARIGUES +GARISH +GARISHLY +GARISHNESS +GARISHNESSES +GARLAND +GARLANDED +GARLANDING +GARLANDS +GARLIC +GARLICKED +GARLICKIER +GARLICKIEST +GARLICKING +GARLICKY +GARLICS +GARMENT +GARMENTED +GARMENTING +GARMENTS +GARNER +GARNERED +GARNERING +GARNERS +GARNET +GARNETIFEROUS +GARNETS +GARNI +GARNIERITE +GARNIERITES +GARNISH +GARNISHED +GARNISHEE +GARNISHEED +GARNISHEEING +GARNISHEES +GARNISHER +GARNISHERS +GARNISHES +GARNISHING +GARNISHMENT +GARNISHMENTS +GARNITURE +GARNITURES +GAROTE +GAROTED +GAROTES +GAROTING +GAROTTE +GAROTTED +GAROTTER +GAROTTERS +GAROTTES +GAROTTING +GARPIKE +GARPIKES +GARRED +GARRET +GARRETED +GARRETS +GARRING +GARRISON +GARRISONED +GARRISONING +GARRISONS +GARRON +GARRONS +GARROTE +GARROTED +GARROTER +GARROTERS +GARROTES +GARROTING +GARROTTE +GARROTTED +GARROTTES +GARROTTING +GARRULITIES +GARRULITY +GARRULOUS +GARRULOUSLY +GARRULOUSNESS +GARRULOUSNESSES +GARS +GARTER +GARTERED +GARTERING +GARTERS +GARTH +GARTHS +GARVEY +GARVEYS +GAS +GASALIER +GASALIERS +GASBAG +GASBAGS +GASCON +GASCONADE +GASCONADED +GASCONADER +GASCONADERS +GASCONADES +GASCONADING +GASCONS +GASEITIES +GASEITY +GASELIER +GASELIERS +GASEOUS +GASEOUSNESS +GASEOUSNESSES +GASES +GASH +GASHED +GASHER +GASHES +GASHEST +GASHING +GASHOLDER +GASHOLDERS +GASHOUSE +GASHOUSES +GASIFICATION +GASIFICATIONS +GASIFIED +GASIFIER +GASIFIERS +GASIFIES +GASIFORM +GASIFY +GASIFYING +GASKET +GASKETS +GASKIN +GASKING +GASKINGS +GASKINS +GASLESS +GASLIGHT +GASLIGHTS +GASLIT +GASMAN +GASMEN +GASOGENE +GASOGENES +GASOHOL +GASOHOLS +GASOLENE +GASOLENES +GASOLIER +GASOLIERS +GASOLINE +GASOLINES +GASOLINIC +GASOMETER +GASOMETERS +GASP +GASPED +GASPER +GASPEREAU +GASPEREAUX +GASPERS +GASPING +GASPINGLY +GASPS +GASSED +GASSER +GASSERS +GASSES +GASSIER +GASSIEST +GASSILY +GASSINESS +GASSINESSES +GASSING +GASSINGS +GASSY +GAST +GASTED +GASTER +GASTERS +GASTIGHT +GASTIGHTNESS +GASTIGHTNESSES +GASTING +GASTNESS +GASTNESSES +GASTRAEA +GASTRAEAS +GASTRAL +GASTREA +GASTREAS +GASTRECTOMIES +GASTRECTOMY +GASTRIC +GASTRIN +GASTRINS +GASTRITIC +GASTRITIDES +GASTRITIS +GASTRITISES +GASTROCNEMII +GASTROCNEMIUS +GASTRODUODENAL +GASTROENTERITIS +GASTROLITH +GASTROLITHS +GASTRONOME +GASTRONOMES +GASTRONOMIC +GASTRONOMICAL +GASTRONOMICALLY +GASTRONOMIES +GASTRONOMIST +GASTRONOMISTS +GASTRONOMY +GASTROPOD +GASTROPODS +GASTROSCOPE +GASTROSCOPES +GASTROSCOPIC +GASTROSCOPIES +GASTROSCOPIST +GASTROSCOPISTS +GASTROSCOPY +GASTROTRICH +GASTROTRICHS +GASTROVASCULAR +GASTRULA +GASTRULAE +GASTRULAR +GASTRULAS +GASTRULATE +GASTRULATED +GASTRULATES +GASTRULATING +GASTRULATION +GASTRULATIONS +GASTS +GASWORKS +GAT +GATE +GATEAU +GATEAUS +GATEAUX +GATECRASH +GATECRASHED +GATECRASHES +GATECRASHING +GATED +GATEFOLD +GATEFOLDS +GATEHOUSE +GATEHOUSES +GATEKEEPER +GATEKEEPERS +GATEKEEPING +GATELESS +GATELIKE +GATEMAN +GATEMEN +GATEPOST +GATEPOSTS +GATER +GATERS +GATES +GATEWAY +GATEWAYS +GATHER +GATHERED +GATHERER +GATHERERS +GATHERING +GATHERINGS +GATHERS +GATING +GATINGS +GATOR +GATORS +GATS +GAUCHE +GAUCHELY +GAUCHENESS +GAUCHENESSES +GAUCHER +GAUCHERIE +GAUCHERIES +GAUCHEST +GAUCHO +GAUCHOS +GAUD +GAUDERIES +GAUDERY +GAUDIER +GAUDIES +GAUDIEST +GAUDILY +GAUDINESS +GAUDINESSES +GAUDS +GAUDY +GAUFFER +GAUFFERED +GAUFFERING +GAUFFERS +GAUGE +GAUGEABLE +GAUGED +GAUGER +GAUGERS +GAUGES +GAUGING +GAULEITER +GAULEITERS +GAULT +GAULTS +GAUM +GAUMED +GAUMING +GAUMS +GAUN +GAUNT +GAUNTER +GAUNTEST +GAUNTLET +GAUNTLETED +GAUNTLETING +GAUNTLETS +GAUNTLY +GAUNTNESS +GAUNTNESSES +GAUNTRIES +GAUNTRY +GAUR +GAURS +GAUSS +GAUSSES +GAUZE +GAUZELIKE +GAUZES +GAUZIER +GAUZIEST +GAUZILY +GAUZINESS +GAUZINESSES +GAUZY +GAVAGE +GAVAGES +GAVE +GAVEL +GAVELED +GAVELING +GAVELKIND +GAVELKINDS +GAVELLED +GAVELLING +GAVELOCK +GAVELOCKS +GAVELS +GAVIAL +GAVIALOID +GAVIALS +GAVOT +GAVOTS +GAVOTTE +GAVOTTED +GAVOTTES +GAVOTTING +GAWK +GAWKED +GAWKER +GAWKERS +GAWKIER +GAWKIES +GAWKIEST +GAWKILY +GAWKINESS +GAWKINESSES +GAWKING +GAWKISH +GAWKISHLY +GAWKISHNESS +GAWKISHNESSES +GAWKS +GAWKY +GAWP +GAWPED +GAWPER +GAWPERS +GAWPING +GAWPS +GAWSIE +GAWSY +GAY +GAYAL +GAYALS +GAYDAR +GAYDARS +GAYER +GAYEST +GAYETIES +GAYETY +GAYLY +GAYNESS +GAYNESSES +GAYS +GAYWINGS +GAZABO +GAZABOES +GAZABOS +GAZANIA +GAZANIAS +GAZAR +GAZARS +GAZE +GAZEBO +GAZEBOES +GAZEBOS +GAZED +GAZEHOUND +GAZEHOUNDS +GAZELLE +GAZELLES +GAZER +GAZERS +GAZES +GAZETTE +GAZETTED +GAZETTEER +GAZETTEERS +GAZETTES +GAZETTING +GAZILLION +GAZILLIONS +GAZING +GAZOGENE +GAZOGENES +GAZOO +GAZOOS +GAZPACHO +GAZPACHOS +GAZUMP +GAZUMPED +GAZUMPER +GAZUMPERS +GAZUMPING +GAZUMPS +GEANTICLINE +GEANTICLINES +GEAR +GEARBOX +GEARBOXES +GEARCASE +GEARCASES +GEARCHANGE +GEARCHANGES +GEARED +GEARHEAD +GEARHEADS +GEARING +GEARINGS +GEARLESS +GEARS +GEARSHIFT +GEARSHIFTS +GEARWHEEL +GEARWHEELS +GECK +GECKED +GECKING +GECKO +GECKOES +GECKOS +GECKS +GED +GEDS +GEE +GEED +GEEGAW +GEEGAWS +GEEING +GEEK +GEEKDOM +GEEKDOMS +GEEKED +GEEKIER +GEEKIEST +GEEKINESS +GEEKINESSES +GEEKS +GEEKY +GEEPOUND +GEEPOUNDS +GEES +GEESE +GEEST +GEESTS +GEEZ +GEEZER +GEEZERS +GEGENSCHEIN +GEGENSCHEINS +GEISHA +GEISHAS +GEL +GELABLE +GELADA +GELADAS +GELANDESPRUNG +GELANDESPRUNGS +GELANT +GELANTS +GELATE +GELATED +GELATES +GELATI +GELATIN +GELATINE +GELATINES +GELATING +GELATINIZATION +GELATINIZATIONS +GELATINIZE +GELATINIZED +GELATINIZES +GELATINIZING +GELATINOUS +GELATINOUSLY +GELATINOUSNESS +GELATINS +GELATION +GELATIONS +GELATIS +GELATO +GELATOS +GELCAP +GELCAPS +GELD +GELDED +GELDER +GELDERS +GELDING +GELDINGS +GELDS +GELEE +GELEES +GELID +GELIDITIES +GELIDITY +GELIDLY +GELIDNESS +GELIDNESSES +GELIGNITE +GELIGNITES +GELLANT +GELLANTS +GELLED +GELLING +GELS +GELSEMIA +GELSEMIUM +GELSEMIUMS +GELT +GELTS +GEM +GEMATRIA +GEMATRIAS +GEMEINSCHAFT +GEMEINSCHAFTS +GEMINAL +GEMINALLY +GEMINATE +GEMINATED +GEMINATES +GEMINATING +GEMINATION +GEMINATIONS +GEMLIKE +GEMMA +GEMMAE +GEMMATE +GEMMATED +GEMMATES +GEMMATING +GEMMATION +GEMMATIONS +GEMMED +GEMMIER +GEMMIEST +GEMMILY +GEMMINESS +GEMMINESSES +GEMMING +GEMMOLOGIES +GEMMOLOGIST +GEMMOLOGISTS +GEMMOLOGY +GEMMULE +GEMMULES +GEMMY +GEMOLOGICAL +GEMOLOGIES +GEMOLOGIST +GEMOLOGISTS +GEMOLOGY +GEMOT +GEMOTE +GEMOTES +GEMOTS +GEMS +GEMSBOK +GEMSBOKS +GEMSBUCK +GEMSBUCKS +GEMSTONE +GEMSTONES +GEMUTLICH +GEMUTLICHKEIT +GEMUTLICHKEITS +GEN +GENDARME +GENDARMERIE +GENDARMERIES +GENDARMERY +GENDARMES +GENDER +GENDERED +GENDERING +GENDERIZE +GENDERIZED +GENDERIZES +GENDERIZING +GENDERS +GENE +GENEALOGICAL +GENEALOGICALLY +GENEALOGIES +GENEALOGIST +GENEALOGISTS +GENEALOGY +GENERA +GENERABLE +GENERAL +GENERALCIES +GENERALCY +GENERALISATION +GENERALISATIONS +GENERALISE +GENERALISED +GENERALISES +GENERALISING +GENERALISSIMO +GENERALISSIMOS +GENERALIST +GENERALISTS +GENERALITIES +GENERALITY +GENERALIZABLE +GENERALIZATION +GENERALIZATIONS +GENERALIZE +GENERALIZED +GENERALIZER +GENERALIZERS +GENERALIZES +GENERALIZING +GENERALLY +GENERALS +GENERALSHIP +GENERALSHIPS +GENERATE +GENERATED +GENERATES +GENERATING +GENERATION +GENERATIONAL +GENERATIONALLY +GENERATIONS +GENERATIVE +GENERATOR +GENERATORS +GENERATRICES +GENERATRIX +GENERIC +GENERICAL +GENERICALLY +GENERICNESS +GENERICNESSES +GENERICS +GENEROSITIES +GENEROSITY +GENEROUS +GENEROUSLY +GENEROUSNESS +GENEROUSNESSES +GENES +GENESES +GENESIS +GENET +GENETIC +GENETICAL +GENETICALLY +GENETICIST +GENETICISTS +GENETICS +GENETS +GENETTE +GENETTES +GENEVA +GENEVAS +GENIAL +GENIALITIES +GENIALITY +GENIALLY +GENIC +GENICALLY +GENICULATE +GENICULATED +GENIE +GENIES +GENII +GENIP +GENIPAP +GENIPAPS +GENIPS +GENISTEIN +GENISTEINS +GENITAL +GENITALIA +GENITALIC +GENITALLY +GENITALS +GENITIVAL +GENITIVALLY +GENITIVE +GENITIVES +GENITOR +GENITORS +GENITOURINARY +GENITURE +GENITURES +GENIUS +GENIUSES +GENNAKER +GENNAKERS +GENOA +GENOAS +GENOCIDAL +GENOCIDE +GENOCIDES +GENOGRAM +GENOGRAMS +GENOISE +GENOISES +GENOM +GENOME +GENOMES +GENOMIC +GENOMICS +GENOMS +GENOTYPE +GENOTYPES +GENOTYPIC +GENOTYPICAL +GENOTYPICALLY +GENRE +GENRES +GENRO +GENROS +GENS +GENSENG +GENSENGS +GENT +GENTAMICIN +GENTAMICINS +GENTEEL +GENTEELER +GENTEELEST +GENTEELISM +GENTEELISMS +GENTEELLY +GENTEELNESS +GENTEELNESSES +GENTES +GENTIAN +GENTIANS +GENTIL +GENTILE +GENTILES +GENTILESSE +GENTILESSES +GENTILITIES +GENTILITY +GENTLE +GENTLED +GENTLEFOLK +GENTLEFOLKS +GENTLEMAN +GENTLEMANLIKE +GENTLEMANLINESS +GENTLEMANLY +GENTLEMEN +GENTLENESS +GENTLENESSES +GENTLEPERSON +GENTLEPERSONS +GENTLER +GENTLES +GENTLEST +GENTLEWOMAN +GENTLEWOMEN +GENTLING +GENTLY +GENTOO +GENTOOS +GENTRICE +GENTRICES +GENTRIES +GENTRIFICATION +GENTRIFICATIONS +GENTRIFIED +GENTRIFIER +GENTRIFIERS +GENTRIFIES +GENTRIFY +GENTRIFYING +GENTRY +GENTS +GENU +GENUA +GENUFLECT +GENUFLECTED +GENUFLECTING +GENUFLECTION +GENUFLECTIONS +GENUFLECTS +GENUINE +GENUINELY +GENUINENESS +GENUINENESSES +GENUS +GENUSES +GEOBOTANIC +GEOBOTANICAL +GEOBOTANIES +GEOBOTANIST +GEOBOTANISTS +GEOBOTANY +GEOCENTRIC +GEOCENTRICALLY +GEOCHEMICAL +GEOCHEMICALLY +GEOCHEMIST +GEOCHEMISTRIES +GEOCHEMISTRY +GEOCHEMISTS +GEOCHRONOLOGIC +GEOCHRONOLOGIES +GEOCHRONOLOGIST +GEOCHRONOLOGY +GEOCORONA +GEOCORONAE +GEOCORONAS +GEODE +GEODES +GEODESIC +GEODESICS +GEODESIES +GEODESIST +GEODESISTS +GEODESY +GEODETIC +GEODETICAL +GEODETICS +GEODIC +GEODUCK +GEODUCKS +GEOGNOSIES +GEOGNOSY +GEOGRAPHER +GEOGRAPHERS +GEOGRAPHIC +GEOGRAPHICAL +GEOGRAPHICALLY +GEOGRAPHIES +GEOGRAPHY +GEOHYDROLOGIC +GEOHYDROLOGIES +GEOHYDROLOGIST +GEOHYDROLOGISTS +GEOHYDROLOGY +GEOID +GEOIDAL +GEOIDS +GEOLOGER +GEOLOGERS +GEOLOGIC +GEOLOGICAL +GEOLOGICALLY +GEOLOGIES +GEOLOGIST +GEOLOGISTS +GEOLOGIZE +GEOLOGIZED +GEOLOGIZES +GEOLOGIZING +GEOLOGY +GEOMAGNETIC +GEOMAGNETICALLY +GEOMAGNETISM +GEOMAGNETISMS +GEOMANCER +GEOMANCERS +GEOMANCIES +GEOMANCY +GEOMANTIC +GEOMETER +GEOMETERS +GEOMETRIC +GEOMETRICAL +GEOMETRICALLY +GEOMETRICIAN +GEOMETRICIANS +GEOMETRICS +GEOMETRID +GEOMETRIDS +GEOMETRIES +GEOMETRISE +GEOMETRISED +GEOMETRISES +GEOMETRISING +GEOMETRIZATION +GEOMETRIZATIONS +GEOMETRIZE +GEOMETRIZED +GEOMETRIZES +GEOMETRIZING +GEOMETRY +GEOMORPHIC +GEOMORPHOLOGIES +GEOMORPHOLOGIST +GEOMORPHOLOGY +GEOPHAGIA +GEOPHAGIAS +GEOPHAGIES +GEOPHAGY +GEOPHONE +GEOPHONES +GEOPHYSICAL +GEOPHYSICALLY +GEOPHYSICIST +GEOPHYSICISTS +GEOPHYSICS +GEOPHYTE +GEOPHYTES +GEOPHYTIC +GEOPOLITICAL +GEOPOLITICALLY +GEOPOLITICIAN +GEOPOLITICIANS +GEOPOLITICS +GEOPONIC +GEOPONICS +GEOPRESSURED +GEOPROBE +GEOPROBES +GEORGETTE +GEORGETTES +GEORGIC +GEORGICAL +GEORGICS +GEOSCIENCE +GEOSCIENCES +GEOSCIENTIST +GEOSCIENTISTS +GEOSTATIONARY +GEOSTRATEGIC +GEOSTRATEGIES +GEOSTRATEGIST +GEOSTRATEGISTS +GEOSTRATEGY +GEOSTROPHIC +GEOSTROPHICALLY +GEOSYNCHRONOUS +GEOSYNCLINAL +GEOSYNCLINE +GEOSYNCLINES +GEOTACTIC +GEOTAXES +GEOTAXIS +GEOTECHNICAL +GEOTECTONIC +GEOTECTONICALLY +GEOTHERMAL +GEOTHERMALLY +GEOTROPIC +GEOTROPICALLY +GEOTROPISM +GEOTROPISMS +GERAH +GERAHS +GERANIAL +GERANIALS +GERANIOL +GERANIOLS +GERANIUM +GERANIUMS +GERARDIA +GERARDIAS +GERBERA +GERBERAS +GERBIL +GERBILLE +GERBILLES +GERBILS +GERENT +GERENTS +GERENUK +GERENUKS +GERFALCON +GERFALCONS +GERIATRIC +GERIATRICIAN +GERIATRICIANS +GERIATRICS +GERM +GERMAN +GERMANDER +GERMANDERS +GERMANE +GERMANELY +GERMANIC +GERMANIUM +GERMANIUMS +GERMANIZATION +GERMANIZATIONS +GERMANIZE +GERMANIZED +GERMANIZES +GERMANIZING +GERMANS +GERMEN +GERMENS +GERMFREE +GERMICIDAL +GERMICIDE +GERMICIDES +GERMIER +GERMIEST +GERMINA +GERMINABILITIES +GERMINABILITY +GERMINAL +GERMINALLY +GERMINANT +GERMINATE +GERMINATED +GERMINATES +GERMINATING +GERMINATION +GERMINATIONS +GERMINATIVE +GERMINESS +GERMINESSES +GERMLIKE +GERMPLASM +GERMPLASMS +GERMPROOF +GERMS +GERMY +GERONTIC +GERONTOCRACIES +GERONTOCRACY +GERONTOCRAT +GERONTOCRATIC +GERONTOCRATS +GERONTOLOGIC +GERONTOLOGICAL +GERONTOLOGIES +GERONTOLOGIST +GERONTOLOGISTS +GERONTOLOGY +GERONTOMORPHIC +GERRYMANDER +GERRYMANDERED +GERRYMANDERING +GERRYMANDERS +GERUND +GERUNDIAL +GERUNDIVE +GERUNDIVES +GERUNDS +GESELLSCHAFT +GESELLSCHAFTS +GESNERIA +GESNERIAD +GESNERIADS +GESSO +GESSOED +GESSOES +GEST +GESTALT +GESTALTEN +GESTALTIST +GESTALTISTS +GESTALTS +GESTAPO +GESTAPOS +GESTATE +GESTATED +GESTATES +GESTATING +GESTATION +GESTATIONAL +GESTATIONS +GESTATIVE +GESTATORY +GESTE +GESTES +GESTIC +GESTICAL +GESTICULANT +GESTICULATE +GESTICULATED +GESTICULATES +GESTICULATING +GESTICULATION +GESTICULATIONS +GESTICULATIVE +GESTICULATOR +GESTICULATORS +GESTICULATORY +GESTS +GESTURAL +GESTURALLY +GESTURE +GESTURED +GESTURER +GESTURERS +GESTURES +GESTURING +GESUNDHEIT +GET +GETA +GETABLE +GETAS +GETATABLE +GETAWAY +GETAWAYS +GETS +GETTABLE +GETTER +GETTERED +GETTERING +GETTERS +GETTING +GETUP +GETUPS +GEUM +GEUMS +GEWGAW +GEWGAWED +GEWGAWS +GEWURZTRAMINER +GEWURZTRAMINERS +GEY +GEYSER +GEYSERITE +GEYSERITES +GEYSERS +GHARIAL +GHARIALS +GHARRI +GHARRIES +GHARRIS +GHARRY +GHAST +GHASTFUL +GHASTFULLY +GHASTLIER +GHASTLIEST +GHASTLINESS +GHASTLINESSES +GHASTLY +GHAT +GHATS +GHAUT +GHAUTS +GHAZI +GHAZIES +GHAZIS +GHEE +GHEES +GHERAO +GHERAOED +GHERAOES +GHERAOING +GHERKIN +GHERKINS +GHETTO +GHETTOED +GHETTOES +GHETTOING +GHETTOIZATION +GHETTOIZATIONS +GHETTOIZE +GHETTOIZED +GHETTOIZES +GHETTOIZING +GHETTOS +GHI +GHIBLI +GHIBLIS +GHILLIE +GHILLIES +GHIS +GHOST +GHOSTED +GHOSTIER +GHOSTIEST +GHOSTING +GHOSTINGS +GHOSTLIER +GHOSTLIEST +GHOSTLIKE +GHOSTLINESS +GHOSTLINESSES +GHOSTLY +GHOSTS +GHOSTWRITE +GHOSTWRITER +GHOSTWRITERS +GHOSTWRITES +GHOSTWRITING +GHOSTWRITTEN +GHOSTWROTE +GHOSTY +GHOUL +GHOULIE +GHOULIES +GHOULISH +GHOULISHLY +GHOULISHNESS +GHOULISHNESSES +GHOULS +GHYLL +GHYLLS +GIANT +GIANTESS +GIANTESSES +GIANTISM +GIANTISMS +GIANTLIKE +GIANTS +GIAOUR +GIAOURS +GIARDIA +GIARDIAS +GIARDIASES +GIARDIASIS +GIB +GIBBED +GIBBER +GIBBERED +GIBBERELLIN +GIBBERELLINS +GIBBERING +GIBBERISH +GIBBERISHES +GIBBERS +GIBBET +GIBBETED +GIBBETING +GIBBETS +GIBBETTED +GIBBETTING +GIBBING +GIBBON +GIBBONS +GIBBOSE +GIBBOSITIES +GIBBOSITY +GIBBOUS +GIBBOUSLY +GIBBSITE +GIBBSITES +GIBE +GIBED +GIBER +GIBERS +GIBES +GIBING +GIBINGLY +GIBLET +GIBLETS +GIBS +GIBSON +GIBSONS +GID +GIDDAP +GIDDIED +GIDDIER +GIDDIES +GIDDIEST +GIDDILY +GIDDINESS +GIDDINESSES +GIDDY +GIDDYAP +GIDDYING +GIDDYUP +GIDS +GIE +GIED +GIEING +GIEN +GIES +GIFT +GIFTABLE +GIFTABLES +GIFTED +GIFTEDLY +GIFTEDNESS +GIFTEDNESSES +GIFTEE +GIFTEES +GIFTING +GIFTLESS +GIFTS +GIFTWARE +GIFTWARES +GIFTWRAP +GIFTWRAPPED +GIFTWRAPPING +GIFTWRAPS +GIG +GIGA +GIGABIT +GIGABITS +GIGABYTE +GIGABYTES +GIGACYCLE +GIGACYCLES +GIGAFLOP +GIGAFLOPS +GIGAHERTZ +GIGAHERTZES +GIGANTEAN +GIGANTESQUE +GIGANTIC +GIGANTICALLY +GIGANTISM +GIGANTISMS +GIGAS +GIGATON +GIGATONS +GIGAWATT +GIGAWATTS +GIGGED +GIGGING +GIGGLE +GIGGLED +GIGGLER +GIGGLERS +GIGGLES +GIGGLIER +GIGGLIEST +GIGGLING +GIGGLINGLY +GIGGLY +GIGHE +GIGLET +GIGLETS +GIGLOT +GIGLOTS +GIGOLO +GIGOLOS +GIGOT +GIGOTS +GIGS +GIGUE +GIGUES +GILBERT +GILBERTS +GILD +GILDED +GILDER +GILDERS +GILDHALL +GILDHALLS +GILDING +GILDINGS +GILDS +GILL +GILLED +GILLER +GILLERS +GILLIE +GILLIED +GILLIES +GILLING +GILLNET +GILLNETS +GILLNETTED +GILLNETTER +GILLNETTERS +GILLNETTING +GILLS +GILLY +GILLYFLOWER +GILLYFLOWERS +GILLYING +GILT +GILTHEAD +GILTHEADS +GILTS +GIMBAL +GIMBALED +GIMBALING +GIMBALLED +GIMBALLING +GIMBALS +GIMCRACK +GIMCRACKERIES +GIMCRACKERY +GIMCRACKS +GIMEL +GIMELS +GIMLET +GIMLETED +GIMLETING +GIMLETS +GIMMAL +GIMMALS +GIMME +GIMMES +GIMMICK +GIMMICKED +GIMMICKING +GIMMICKRIES +GIMMICKRY +GIMMICKS +GIMMICKY +GIMMIE +GIMMIES +GIMP +GIMPED +GIMPIER +GIMPIEST +GIMPING +GIMPS +GIMPY +GIN +GINGAL +GINGALL +GINGALLS +GINGALS +GINGELEY +GINGELEYS +GINGELI +GINGELIES +GINGELIS +GINGELLI +GINGELLIES +GINGELLIS +GINGELLY +GINGELY +GINGER +GINGERBREAD +GINGERBREADED +GINGERBREADS +GINGERBREADY +GINGERED +GINGERING +GINGERLINESS +GINGERLINESSES +GINGERLY +GINGERROOT +GINGERROOTS +GINGERS +GINGERSNAP +GINGERSNAPS +GINGERY +GINGHAM +GINGHAMS +GINGILI +GINGILIS +GINGILLI +GINGILLIS +GINGIVA +GINGIVAE +GINGIVAL +GINGIVECTOMIES +GINGIVECTOMY +GINGIVITIS +GINGIVITISES +GINGKO +GINGKOES +GINGKOS +GINK +GINKGO +GINKGOES +GINKGOS +GINKS +GINNED +GINNER +GINNERS +GINNIER +GINNIEST +GINNING +GINNINGS +GINNY +GINS +GINSENG +GINSENGS +GINZO +GINZOES +GIP +GIPON +GIPONS +GIPPED +GIPPER +GIPPERS +GIPPING +GIPS +GIPSIED +GIPSIES +GIPSY +GIPSYING +GIRAFFE +GIRAFFES +GIRAFFISH +GIRANDOLA +GIRANDOLAS +GIRANDOLE +GIRANDOLES +GIRASOL +GIRASOLE +GIRASOLES +GIRASOLS +GIRD +GIRDED +GIRDER +GIRDERS +GIRDING +GIRDINGLY +GIRDLE +GIRDLED +GIRDLER +GIRDLERS +GIRDLES +GIRDLING +GIRDS +GIRL +GIRLFRIEND +GIRLFRIENDS +GIRLHOOD +GIRLHOODS +GIRLIE +GIRLIER +GIRLIES +GIRLIEST +GIRLISH +GIRLISHLY +GIRLISHNESS +GIRLISHNESSES +GIRLS +GIRLY +GIRN +GIRNED +GIRNING +GIRNS +GIRO +GIROLLE +GIROLLES +GIRON +GIRONS +GIROS +GIROSOL +GIROSOLS +GIRSH +GIRSHES +GIRT +GIRTED +GIRTH +GIRTHED +GIRTHING +GIRTHS +GIRTING +GIRTS +GISARME +GISARMES +GISMO +GISMOS +GIST +GISTS +GIT +GITANO +GITANOS +GITE +GITES +GITS +GITTED +GITTERN +GITTERNS +GITTIN +GITTING +GIVE +GIVEABLE +GIVEAWAY +GIVEAWAYS +GIVEBACK +GIVEBACKS +GIVEN +GIVENS +GIVER +GIVERS +GIVES +GIVING +GIZMO +GIZMOS +GIZZARD +GIZZARDS +GJETOST +GJETOSTS +GLABELLA +GLABELLAE +GLABELLAR +GLABRATE +GLABRESCENT +GLABROUS +GLACE +GLACEED +GLACEING +GLACES +GLACIAL +GLACIALLY +GLACIATE +GLACIATED +GLACIATES +GLACIATING +GLACIATION +GLACIATIONS +GLACIER +GLACIERED +GLACIERS +GLACIOLOGICAL +GLACIOLOGIES +GLACIOLOGIST +GLACIOLOGISTS +GLACIOLOGY +GLACIS +GLACISES +GLAD +GLADDED +GLADDEN +GLADDENED +GLADDENER +GLADDENERS +GLADDENING +GLADDENS +GLADDER +GLADDEST +GLADDING +GLADE +GLADELIKE +GLADES +GLADIATE +GLADIATOR +GLADIATORIAL +GLADIATORS +GLADIER +GLADIEST +GLADIOLA +GLADIOLAR +GLADIOLAS +GLADIOLI +GLADIOLUS +GLADIOLUSES +GLADLIER +GLADLIEST +GLADLY +GLADNESS +GLADNESSES +GLADS +GLADSOME +GLADSOMELY +GLADSOMENESS +GLADSOMENESSES +GLADSOMER +GLADSOMEST +GLADSTONE +GLADSTONES +GLADY +GLAIKET +GLAIKIT +GLAIR +GLAIRE +GLAIRED +GLAIRES +GLAIRIER +GLAIRIEST +GLAIRING +GLAIRS +GLAIRY +GLAIVE +GLAIVED +GLAIVES +GLAM +GLAMOR +GLAMORISE +GLAMORISED +GLAMORISES +GLAMORISING +GLAMORIZATION +GLAMORIZATIONS +GLAMORIZE +GLAMORIZED +GLAMORIZER +GLAMORIZERS +GLAMORIZES +GLAMORIZING +GLAMOROUS +GLAMOROUSLY +GLAMOROUSNESS +GLAMOROUSNESSES +GLAMORS +GLAMOUR +GLAMOURED +GLAMOURING +GLAMOURIZE +GLAMOURIZED +GLAMOURIZES +GLAMOURIZING +GLAMOURLESS +GLAMOUROUS +GLAMOURS +GLAMS +GLANCE +GLANCED +GLANCER +GLANCERS +GLANCES +GLANCING +GLANCINGLY +GLAND +GLANDERED +GLANDERS +GLANDES +GLANDLESS +GLANDS +GLANDULAR +GLANDULARLY +GLANDULE +GLANDULES +GLANS +GLARE +GLARED +GLARES +GLARIER +GLARIEST +GLARINESS +GLARINESSES +GLARING +GLARINGLY +GLARINGNESS +GLARINGNESSES +GLARY +GLASNOST +GLASNOSTS +GLASS +GLASSBLOWER +GLASSBLOWERS +GLASSBLOWING +GLASSBLOWINGS +GLASSED +GLASSES +GLASSFUL +GLASSFULS +GLASSHOUSE +GLASSHOUSES +GLASSIE +GLASSIER +GLASSIES +GLASSIEST +GLASSILY +GLASSINE +GLASSINES +GLASSINESS +GLASSINESSES +GLASSING +GLASSLESS +GLASSMAKER +GLASSMAKERS +GLASSMAKING +GLASSMAKINGS +GLASSMAN +GLASSMEN +GLASSPAPER +GLASSPAPERED +GLASSPAPERING +GLASSPAPERS +GLASSWARE +GLASSWARES +GLASSWORK +GLASSWORKER +GLASSWORKERS +GLASSWORKS +GLASSWORM +GLASSWORMS +GLASSWORT +GLASSWORTS +GLASSY +GLAUCOMA +GLAUCOMAS +GLAUCONITE +GLAUCONITES +GLAUCONITIC +GLAUCOUS +GLAUCOUSNESS +GLAUCOUSNESSES +GLAZE +GLAZED +GLAZER +GLAZERS +GLAZES +GLAZIER +GLAZIERIES +GLAZIERS +GLAZIERY +GLAZIEST +GLAZILY +GLAZINESS +GLAZINESSES +GLAZING +GLAZINGS +GLAZY +GLEAM +GLEAMED +GLEAMER +GLEAMERS +GLEAMIER +GLEAMIEST +GLEAMING +GLEAMS +GLEAMY +GLEAN +GLEANABLE +GLEANED +GLEANER +GLEANERS +GLEANING +GLEANINGS +GLEANS +GLEBA +GLEBAE +GLEBE +GLEBELESS +GLEBES +GLED +GLEDE +GLEDES +GLEDS +GLEE +GLEED +GLEEDS +GLEEFUL +GLEEFULLY +GLEEFULNESS +GLEEFULNESSES +GLEEK +GLEEKED +GLEEKING +GLEEKS +GLEEMAN +GLEEMEN +GLEES +GLEESOME +GLEET +GLEETED +GLEETIER +GLEETIEST +GLEETING +GLEETS +GLEETY +GLEG +GLEGLY +GLEGNESS +GLEGNESSES +GLEIZATION +GLEIZATIONS +GLEN +GLENGARRIES +GLENGARRY +GLENLIKE +GLENOID +GLENS +GLEY +GLEYED +GLEYING +GLEYINGS +GLEYS +GLIA +GLIADIN +GLIADINE +GLIADINES +GLIADINS +GLIAL +GLIAS +GLIB +GLIBBER +GLIBBEST +GLIBLY +GLIBNESS +GLIBNESSES +GLIDE +GLIDED +GLIDEPATH +GLIDEPATHS +GLIDER +GLIDERS +GLIDES +GLIDING +GLIFF +GLIFFS +GLIM +GLIME +GLIMED +GLIMES +GLIMING +GLIMMER +GLIMMERED +GLIMMERING +GLIMMERINGS +GLIMMERS +GLIMPSE +GLIMPSED +GLIMPSER +GLIMPSERS +GLIMPSES +GLIMPSING +GLIMS +GLINT +GLINTED +GLINTIER +GLINTIEST +GLINTING +GLINTS +GLINTY +GLIOBLASTOMA +GLIOBLASTOMAS +GLIOBLASTOMATA +GLIOMA +GLIOMAS +GLIOMATA +GLISSADE +GLISSADED +GLISSADER +GLISSADERS +GLISSADES +GLISSADING +GLISSANDI +GLISSANDO +GLISSANDOS +GLISTEN +GLISTENED +GLISTENING +GLISTENS +GLISTER +GLISTERED +GLISTERING +GLISTERS +GLITCH +GLITCHES +GLITCHIER +GLITCHIEST +GLITCHY +GLITTER +GLITTERATI +GLITTERED +GLITTERING +GLITTERINGLY +GLITTERS +GLITTERY +GLITZ +GLITZED +GLITZES +GLITZIER +GLITZIEST +GLITZING +GLITZY +GLOAM +GLOAMING +GLOAMINGS +GLOAMS +GLOAT +GLOATED +GLOATER +GLOATERS +GLOATING +GLOATINGLY +GLOATS +GLOB +GLOBAL +GLOBALISE +GLOBALISED +GLOBALISES +GLOBALISING +GLOBALISM +GLOBALISMS +GLOBALIST +GLOBALISTS +GLOBALIZATION +GLOBALIZATIONS +GLOBALIZE +GLOBALIZED +GLOBALIZES +GLOBALIZING +GLOBALLY +GLOBATE +GLOBATED +GLOBBIER +GLOBBIEST +GLOBBY +GLOBE +GLOBED +GLOBEFISH +GLOBEFISHES +GLOBEFLOWER +GLOBEFLOWERS +GLOBELIKE +GLOBES +GLOBETROT +GLOBETROTS +GLOBETROTTED +GLOBETROTTING +GLOBIN +GLOBING +GLOBINS +GLOBOID +GLOBOIDS +GLOBOSE +GLOBOSELY +GLOBOSITIES +GLOBOSITY +GLOBOUS +GLOBS +GLOBULAR +GLOBULARS +GLOBULE +GLOBULES +GLOBULIN +GLOBULINS +GLOCHID +GLOCHIDIA +GLOCHIDIUM +GLOCHIDS +GLOCKENSPIEL +GLOCKENSPIELS +GLOGG +GLOGGS +GLOM +GLOMERA +GLOMERATE +GLOMERULAR +GLOMERULE +GLOMERULES +GLOMERULI +GLOMERULUS +GLOMMED +GLOMMING +GLOMS +GLOMUS +GLONOIN +GLONOINS +GLOOM +GLOOMED +GLOOMFUL +GLOOMIER +GLOOMIEST +GLOOMILY +GLOOMINESS +GLOOMINESSES +GLOOMING +GLOOMINGS +GLOOMS +GLOOMY +GLOP +GLOPPED +GLOPPIER +GLOPPIEST +GLOPPING +GLOPPY +GLOPS +GLORIA +GLORIAS +GLORIED +GLORIES +GLORIFICATION +GLORIFICATIONS +GLORIFIED +GLORIFIER +GLORIFIERS +GLORIFIES +GLORIFY +GLORIFYING +GLORIOLE +GLORIOLES +GLORIOUS +GLORIOUSLY +GLORIOUSNESS +GLORIOUSNESSES +GLORY +GLORYING +GLOSS +GLOSSA +GLOSSAE +GLOSSAL +GLOSSARIAL +GLOSSARIES +GLOSSARIST +GLOSSARISTS +GLOSSARY +GLOSSAS +GLOSSATOR +GLOSSATORS +GLOSSED +GLOSSEME +GLOSSEMES +GLOSSER +GLOSSERS +GLOSSES +GLOSSIER +GLOSSIES +GLOSSIEST +GLOSSILY +GLOSSINA +GLOSSINAS +GLOSSINESS +GLOSSINESSES +GLOSSING +GLOSSITIC +GLOSSITIS +GLOSSITISES +GLOSSOGRAPHER +GLOSSOGRAPHERS +GLOSSOLALIA +GLOSSOLALIAS +GLOSSOLALIST +GLOSSOLALISTS +GLOSSY +GLOST +GLOSTS +GLOTTAL +GLOTTIC +GLOTTIDES +GLOTTIS +GLOTTISES +GLOUT +GLOUTED +GLOUTING +GLOUTS +GLOVE +GLOVED +GLOVER +GLOVERS +GLOVES +GLOVING +GLOW +GLOWED +GLOWER +GLOWERED +GLOWERING +GLOWERS +GLOWFLIES +GLOWFLY +GLOWING +GLOWINGLY +GLOWS +GLOWWORM +GLOWWORMS +GLOXINIA +GLOXINIAS +GLOZE +GLOZED +GLOZES +GLOZING +GLUCAGON +GLUCAGONS +GLUCAN +GLUCANS +GLUCINIC +GLUCINUM +GLUCINUMS +GLUCOCORTICOID +GLUCOCORTICOIDS +GLUCOKINASE +GLUCOKINASES +GLUCONATE +GLUCONATES +GLUCONEOGENESES +GLUCONEOGENESIS +GLUCOSAMINE +GLUCOSAMINES +GLUCOSE +GLUCOSES +GLUCOSIC +GLUCOSIDASE +GLUCOSIDASES +GLUCOSIDE +GLUCOSIDES +GLUCOSIDIC +GLUCURONIDASE +GLUCURONIDASES +GLUCURONIDE +GLUCURONIDES +GLUE +GLUED +GLUEING +GLUELIKE +GLUEPOT +GLUEPOTS +GLUER +GLUERS +GLUES +GLUEY +GLUEYNESS +GLUEYNESSES +GLUG +GLUGGED +GLUGGING +GLUGS +GLUHWEIN +GLUHWEINS +GLUIER +GLUIEST +GLUILY +GLUINESS +GLUINESSES +GLUING +GLUM +GLUME +GLUMES +GLUMLY +GLUMMER +GLUMMEST +GLUMNESS +GLUMNESSES +GLUMPIER +GLUMPIEST +GLUMPILY +GLUMPY +GLUMS +GLUNCH +GLUNCHED +GLUNCHES +GLUNCHING +GLUON +GLUONS +GLUT +GLUTAMATE +GLUTAMATES +GLUTAMINASE +GLUTAMINASES +GLUTAMINE +GLUTAMINES +GLUTARALDEHYDE +GLUTARALDEHYDES +GLUTATHIONE +GLUTATHIONES +GLUTE +GLUTEAL +GLUTEI +GLUTELIN +GLUTELINS +GLUTEN +GLUTENIN +GLUTENINS +GLUTENOUS +GLUTENS +GLUTES +GLUTETHIMIDE +GLUTETHIMIDES +GLUTEUS +GLUTINOUS +GLUTINOUSLY +GLUTS +GLUTTED +GLUTTING +GLUTTON +GLUTTONIES +GLUTTONOUS +GLUTTONOUSLY +GLUTTONOUSNESS +GLUTTONS +GLUTTONY +GLYCAN +GLYCANS +GLYCERALDEHYDE +GLYCERALDEHYDES +GLYCERIC +GLYCERIDE +GLYCERIDES +GLYCERIDIC +GLYCERIN +GLYCERINATE +GLYCERINATED +GLYCERINATES +GLYCERINATING +GLYCERINE +GLYCERINES +GLYCERINS +GLYCEROL +GLYCEROLS +GLYCERYL +GLYCERYLS +GLYCIN +GLYCINE +GLYCINES +GLYCINS +GLYCOGEN +GLYCOGENESES +GLYCOGENESIS +GLYCOGENOLYSES +GLYCOGENOLYSIS +GLYCOGENOLYTIC +GLYCOGENS +GLYCOL +GLYCOLIC +GLYCOLIPID +GLYCOLIPIDS +GLYCOLS +GLYCOLYSES +GLYCOLYSIS +GLYCOLYTIC +GLYCONIC +GLYCONICS +GLYCOPEPTIDE +GLYCOPEPTIDES +GLYCOPROTEIN +GLYCOPROTEINS +GLYCOSIDASE +GLYCOSIDASES +GLYCOSIDE +GLYCOSIDES +GLYCOSIDIC +GLYCOSIDICALLY +GLYCOSURIA +GLYCOSURIAS +GLYCOSYL +GLYCOSYLATE +GLYCOSYLATED +GLYCOSYLATES +GLYCOSYLATING +GLYCOSYLATION +GLYCOSYLATIONS +GLYCOSYLS +GLYCYL +GLYCYLS +GLYPH +GLYPHIC +GLYPHS +GLYPTIC +GLYPTICS +GNAR +GNARL +GNARLED +GNARLIER +GNARLIEST +GNARLING +GNARLS +GNARLY +GNARR +GNARRED +GNARRING +GNARRS +GNARS +GNASH +GNASHED +GNASHES +GNASHING +GNAT +GNATCATCHER +GNATCATCHERS +GNATHAL +GNATHIC +GNATHION +GNATHIONS +GNATHITE +GNATHITES +GNATHONIC +GNATLIKE +GNATS +GNATTIER +GNATTIEST +GNATTY +GNAW +GNAWABLE +GNAWED +GNAWER +GNAWERS +GNAWING +GNAWINGLY +GNAWINGS +GNAWN +GNAWS +GNEISS +GNEISSES +GNEISSIC +GNEISSOID +GNEISSOSE +GNOCCHI +GNOME +GNOMELIKE +GNOMES +GNOMIC +GNOMICAL +GNOMISH +GNOMIST +GNOMISTS +GNOMON +GNOMONIC +GNOMONS +GNOSES +GNOSIS +GNOSTIC +GNOSTICAL +GNOSTICISM +GNOSTICISMS +GNOSTICS +GNOTOBIOTIC +GNOTOBIOTICALLY +GNU +GNUS +GO +GOA +GOAD +GOADED +GOADING +GOADLIKE +GOADS +GOAL +GOALED +GOALIE +GOALIES +GOALING +GOALKEEPER +GOALKEEPERS +GOALLESS +GOALMOUTH +GOALMOUTHS +GOALPOST +GOALPOSTS +GOALS +GOALTENDER +GOALTENDERS +GOALTENDING +GOALTENDINGS +GOALWARD +GOANNA +GOANNAS +GOAS +GOAT +GOATEE +GOATEED +GOATEES +GOATFISH +GOATFISHES +GOATHERD +GOATHERDS +GOATISH +GOATISHLY +GOATLIKE +GOATS +GOATSKIN +GOATSKINS +GOATSUCKER +GOATSUCKERS +GOB +GOBAN +GOBANG +GOBANGS +GOBANS +GOBBED +GOBBET +GOBBETS +GOBBING +GOBBLE +GOBBLED +GOBBLEDEGOOK +GOBBLEDEGOOKS +GOBBLEDYGOOK +GOBBLEDYGOOKS +GOBBLER +GOBBLERS +GOBBLES +GOBBLING +GOBIES +GOBIOID +GOBIOIDS +GOBLET +GOBLETS +GOBLIN +GOBLINS +GOBO +GOBOES +GOBONEE +GOBONY +GOBOS +GOBS +GOBSHITE +GOBSHITES +GOBY +GOD +GODCHILD +GODCHILDREN +GODDAM +GODDAMMED +GODDAMMING +GODDAMN +GODDAMNDEST +GODDAMNED +GODDAMNEDEST +GODDAMNING +GODDAMNS +GODDAMS +GODDAUGHTER +GODDAUGHTERS +GODDED +GODDESS +GODDESSES +GODDING +GODET +GODETIA +GODETIAS +GODETS +GODFATHER +GODFATHERED +GODFATHERING +GODFATHERS +GODFORSAKEN +GODHEAD +GODHEADS +GODHOOD +GODHOODS +GODLESS +GODLESSLY +GODLESSNESS +GODLESSNESSES +GODLIER +GODLIEST +GODLIKE +GODLIKENESS +GODLIKENESSES +GODLILY +GODLINESS +GODLINESSES +GODLING +GODLINGS +GODLY +GODMOTHER +GODMOTHERED +GODMOTHERING +GODMOTHERS +GODOWN +GODOWNS +GODPARENT +GODPARENTS +GODROON +GODROONS +GODS +GODSEND +GODSENDS +GODSHIP +GODSHIPS +GODSON +GODSONS +GODWIT +GODWITS +GOER +GOERS +GOES +GOETHITE +GOETHITES +GOFER +GOFERS +GOFFER +GOFFERED +GOFFERING +GOFFERINGS +GOFFERS +GOGGLE +GOGGLED +GOGGLER +GOGGLERS +GOGGLES +GOGGLIER +GOGGLIEST +GOGGLING +GOGGLY +GOGLET +GOGLETS +GOGO +GOGOS +GOING +GOINGS +GOITER +GOITERS +GOITRE +GOITRES +GOITROGEN +GOITROGENIC +GOITROGENICITY +GOITROGENS +GOITROUS +GOLCONDA +GOLCONDAS +GOLD +GOLDARN +GOLDARNS +GOLDBRICK +GOLDBRICKED +GOLDBRICKING +GOLDBRICKS +GOLDBUG +GOLDBUGS +GOLDEN +GOLDENER +GOLDENEST +GOLDENEYE +GOLDENEYES +GOLDENLY +GOLDENNESS +GOLDENNESSES +GOLDENROD +GOLDENRODS +GOLDENSEAL +GOLDENSEALS +GOLDER +GOLDEST +GOLDEYE +GOLDEYES +GOLDFIELD +GOLDFIELDS +GOLDFINCH +GOLDFINCHES +GOLDFISH +GOLDFISHES +GOLDS +GOLDSMITH +GOLDSMITHS +GOLDSTONE +GOLDSTONES +GOLDTONE +GOLDURN +GOLDURNS +GOLEM +GOLEMS +GOLF +GOLFED +GOLFER +GOLFERS +GOLFING +GOLFINGS +GOLFS +GOLGOTHA +GOLGOTHAS +GOLIARD +GOLIARDIC +GOLIARDS +GOLIATH +GOLIATHS +GOLLIWOG +GOLLIWOGG +GOLLIWOGGS +GOLLIWOGS +GOLLY +GOLLYWOG +GOLLYWOGS +GOLOSH +GOLOSHE +GOLOSHES +GOMBEEN +GOMBEENS +GOMBO +GOMBOS +GOMBROON +GOMBROONS +GOMER +GOMERAL +GOMERALS +GOMEREL +GOMERELS +GOMERIL +GOMERILS +GOMERS +GOMPHOSES +GOMPHOSIS +GOMUTI +GOMUTIS +GONAD +GONADAL +GONADECTOMIES +GONADECTOMIZED +GONADECTOMY +GONADIAL +GONADIC +GONADOTROPHIC +GONADOTROPHIN +GONADOTROPHINS +GONADOTROPIC +GONADOTROPIN +GONADOTROPINS +GONADS +GONDOLA +GONDOLAS +GONDOLIER +GONDOLIERS +GONE +GONEF +GONEFS +GONENESS +GONENESSES +GONER +GONERS +GONFALON +GONFALONS +GONFANON +GONFANONS +GONG +GONGED +GONGING +GONGLIKE +GONGORISTIC +GONGS +GONIA +GONIDIA +GONIDIAL +GONIDIC +GONIDIUM +GONIF +GONIFF +GONIFFS +GONIFS +GONIOMETER +GONIOMETERS +GONIOMETRIC +GONIOMETRIES +GONIOMETRY +GONION +GONIUM +GONOCOCCAL +GONOCOCCI +GONOCOCCUS +GONOCYTE +GONOCYTES +GONOF +GONOFS +GONOPH +GONOPHORE +GONOPHORES +GONOPHS +GONOPORE +GONOPORES +GONORRHEA +GONORRHEAL +GONORRHEAS +GONZO +GOO +GOOBER +GOOBERS +GOOD +GOODBY +GOODBYE +GOODBYES +GOODBYS +GOODIE +GOODIES +GOODISH +GOODLIER +GOODLIEST +GOODLY +GOODMAN +GOODMEN +GOODNESS +GOODNESSES +GOODS +GOODWIFE +GOODWILL +GOODWILLED +GOODWILLS +GOODWIVES +GOODY +GOOEY +GOOEYNESS +GOOEYNESSES +GOOF +GOOFBALL +GOOFBALLS +GOOFED +GOOFIER +GOOFIEST +GOOFILY +GOOFINESS +GOOFINESSES +GOOFING +GOOFS +GOOFY +GOOGLIES +GOOGLY +GOOGOL +GOOGOLPLEX +GOOGOLPLEXES +GOOGOLS +GOOIER +GOOIEST +GOOK +GOOKS +GOOKY +GOOMBAH +GOOMBAHS +GOOMBAY +GOOMBAYS +GOON +GOONEY +GOONEYS +GOONIE +GOONIER +GOONIES +GOONIEST +GOONS +GOONY +GOOP +GOOPIER +GOOPIEST +GOOPS +GOOPY +GOORAL +GOORALS +GOOS +GOOSANDER +GOOSANDERS +GOOSE +GOOSEBERRIES +GOOSEBERRY +GOOSED +GOOSEFISH +GOOSEFISHES +GOOSEFLESH +GOOSEFLESHES +GOOSEFOOT +GOOSEFOOTS +GOOSEGRASS +GOOSEGRASSES +GOOSEHERD +GOOSEHERDS +GOOSENECK +GOOSENECKED +GOOSENECKS +GOOSES +GOOSEY +GOOSIER +GOOSIEST +GOOSING +GOOSY +GOPHER +GOPHERS +GOPIK +GOR +GORAL +GORALS +GORBELLIES +GORBELLY +GORBLIMY +GORCOCK +GORCOCKS +GORDITA +GORDITAS +GORE +GORED +GORES +GORGE +GORGED +GORGEDLY +GORGEOUS +GORGEOUSLY +GORGEOUSNESS +GORGEOUSNESSES +GORGER +GORGERIN +GORGERINS +GORGERS +GORGES +GORGET +GORGETED +GORGETS +GORGING +GORGON +GORGONIAN +GORGONIANS +GORGONIZE +GORGONIZED +GORGONIZES +GORGONIZING +GORGONS +GORHEN +GORHENS +GORIER +GORIEST +GORILLA +GORILLAS +GORILY +GORINESS +GORINESSES +GORING +GORM +GORMAND +GORMANDISE +GORMANDISED +GORMANDISES +GORMANDISING +GORMANDIZE +GORMANDIZED +GORMANDIZER +GORMANDIZERS +GORMANDIZES +GORMANDIZING +GORMANDS +GORMED +GORMING +GORMLESS +GORMS +GORP +GORPS +GORSE +GORSES +GORSIER +GORSIEST +GORSY +GORY +GOS +GOSH +GOSHAWK +GOSHAWKS +GOSLING +GOSLINGS +GOSPEL +GOSPELER +GOSPELERS +GOSPELLER +GOSPELLERS +GOSPELLY +GOSPELS +GOSPORT +GOSPORTS +GOSSAMER +GOSSAMERS +GOSSAMERY +GOSSAN +GOSSANS +GOSSIP +GOSSIPED +GOSSIPER +GOSSIPERS +GOSSIPING +GOSSIPMONGER +GOSSIPMONGERS +GOSSIPPED +GOSSIPPER +GOSSIPPERS +GOSSIPPING +GOSSIPRIES +GOSSIPRY +GOSSIPS +GOSSIPY +GOSSOON +GOSSOONS +GOSSYPOL +GOSSYPOLS +GOT +GOTCHA +GOTCHAS +GOTH +GOTHIC +GOTHICALLY +GOTHICISM +GOTHICISMS +GOTHICIZE +GOTHICIZED +GOTHICIZES +GOTHICIZING +GOTHICS +GOTHITE +GOTHITES +GOTHS +GOTTEN +GOUACHE +GOUACHES +GOUGE +GOUGED +GOUGER +GOUGERS +GOUGES +GOUGING +GOULASH +GOULASHES +GOURAMI +GOURAMIES +GOURAMIS +GOURD +GOURDE +GOURDES +GOURDS +GOURMAND +GOURMANDISE +GOURMANDISES +GOURMANDISM +GOURMANDISMS +GOURMANDIZE +GOURMANDIZED +GOURMANDIZES +GOURMANDIZING +GOURMANDS +GOURMET +GOURMETS +GOUT +GOUTIER +GOUTIEST +GOUTILY +GOUTINESS +GOUTINESSES +GOUTS +GOUTY +GOVERN +GOVERNABLE +GOVERNANCE +GOVERNANCES +GOVERNED +GOVERNESS +GOVERNESSES +GOVERNESSY +GOVERNING +GOVERNMENT +GOVERNMENTAL +GOVERNMENTALISM +GOVERNMENTALIST +GOVERNMENTALIZE +GOVERNMENTALLY +GOVERNMENTESE +GOVERNMENTESES +GOVERNMENTS +GOVERNOR +GOVERNORATE +GOVERNORATES +GOVERNORS +GOVERNORSHIP +GOVERNORSHIPS +GOVERNS +GOWAN +GOWANED +GOWANS +GOWANY +GOWD +GOWDS +GOWK +GOWKS +GOWN +GOWNED +GOWNING +GOWNS +GOWNSMAN +GOWNSMEN +GOX +GOXES +GOY +GOYIM +GOYISH +GOYS +GRAAL +GRAALS +GRAB +GRABBABLE +GRABBED +GRABBER +GRABBERS +GRABBIER +GRABBIEST +GRABBING +GRABBLE +GRABBLED +GRABBLER +GRABBLERS +GRABBLES +GRABBLING +GRABBY +GRABEN +GRABENS +GRABS +GRACE +GRACED +GRACEFUL +GRACEFULLER +GRACEFULLEST +GRACEFULLY +GRACEFULNESS +GRACEFULNESSES +GRACELESS +GRACELESSLY +GRACELESSNESS +GRACELESSNESSES +GRACES +GRACILE +GRACILENESS +GRACILENESSES +GRACILES +GRACILIS +GRACILITIES +GRACILITY +GRACING +GRACIOSO +GRACIOSOS +GRACIOUS +GRACIOUSLY +GRACIOUSNESS +GRACIOUSNESSES +GRACKLE +GRACKLES +GRAD +GRADABLE +GRADATE +GRADATED +GRADATES +GRADATING +GRADATION +GRADATIONAL +GRADATIONALLY +GRADATIONS +GRADE +GRADED +GRADELESS +GRADER +GRADERS +GRADES +GRADIENT +GRADIENTS +GRADIN +GRADINE +GRADINES +GRADING +GRADINS +GRADIOMETER +GRADIOMETERS +GRADS +GRADUAL +GRADUALISM +GRADUALISMS +GRADUALIST +GRADUALISTS +GRADUALLY +GRADUALNESS +GRADUALNESSES +GRADUALS +GRADUAND +GRADUANDS +GRADUATE +GRADUATED +GRADUATES +GRADUATING +GRADUATION +GRADUATIONS +GRADUATOR +GRADUATORS +GRADUS +GRADUSES +GRAECIZE +GRAECIZED +GRAECIZES +GRAECIZING +GRAFFITI +GRAFFITIED +GRAFFITIING +GRAFFITING +GRAFFITIS +GRAFFITIST +GRAFFITISTS +GRAFFITO +GRAFT +GRAFTAGE +GRAFTAGES +GRAFTED +GRAFTER +GRAFTERS +GRAFTING +GRAFTS +GRAHAM +GRAHAMS +GRAIL +GRAILS +GRAIN +GRAINED +GRAINER +GRAINERS +GRAINFIELD +GRAINFIELDS +GRAINIER +GRAINIEST +GRAININESS +GRAININESSES +GRAINING +GRAINLESS +GRAINS +GRAINY +GRAM +GRAMA +GRAMARIES +GRAMARY +GRAMARYE +GRAMARYES +GRAMAS +GRAMERCIES +GRAMERCY +GRAMICIDIN +GRAMICIDINS +GRAMINEOUS +GRAMINIVOROUS +GRAMMA +GRAMMAR +GRAMMARIAN +GRAMMARIANS +GRAMMARS +GRAMMAS +GRAMMATICAL +GRAMMATICALITY +GRAMMATICALLY +GRAMMATICALNESS +GRAMME +GRAMMES +GRAMOPHONE +GRAMOPHONES +GRAMP +GRAMPA +GRAMPAS +GRAMPS +GRAMPUS +GRAMPUSES +GRAMS +GRAN +GRANA +GRANADILLA +GRANADILLAS +GRANARIES +GRANARY +GRAND +GRANDAD +GRANDADDIES +GRANDADDY +GRANDADS +GRANDAM +GRANDAME +GRANDAMES +GRANDAMS +GRANDAUNT +GRANDAUNTS +GRANDBABIES +GRANDBABY +GRANDCHILD +GRANDCHILDREN +GRANDDAD +GRANDDADDIES +GRANDDADDY +GRANDDADS +GRANDDAM +GRANDDAMS +GRANDDAUGHTER +GRANDDAUGHTERS +GRANDEE +GRANDEES +GRANDER +GRANDEST +GRANDEUR +GRANDEURS +GRANDFATHER +GRANDFATHERED +GRANDFATHERING +GRANDFATHERLY +GRANDFATHERS +GRANDIFLORA +GRANDIFLORAS +GRANDILOQUENCE +GRANDILOQUENCES +GRANDILOQUENT +GRANDILOQUENTLY +GRANDIOSE +GRANDIOSELY +GRANDIOSENESS +GRANDIOSENESSES +GRANDIOSITIES +GRANDIOSITY +GRANDIOSO +GRANDKID +GRANDKIDS +GRANDLY +GRANDMA +GRANDMAMA +GRANDMAMAS +GRANDMAS +GRANDMOTHER +GRANDMOTHERLY +GRANDMOTHERS +GRANDNEPHEW +GRANDNEPHEWS +GRANDNESS +GRANDNESSES +GRANDNIECE +GRANDNIECES +GRANDPA +GRANDPAPA +GRANDPAPAS +GRANDPARENT +GRANDPARENTAL +GRANDPARENTHOOD +GRANDPARENTS +GRANDPAS +GRANDS +GRANDSIR +GRANDSIRE +GRANDSIRES +GRANDSIRS +GRANDSON +GRANDSONS +GRANDSTAND +GRANDSTANDED +GRANDSTANDER +GRANDSTANDERS +GRANDSTANDING +GRANDSTANDS +GRANDUNCLE +GRANDUNCLES +GRANGE +GRANGER +GRANGERISM +GRANGERISMS +GRANGERS +GRANGES +GRANITA +GRANITAS +GRANITE +GRANITELIKE +GRANITES +GRANITEWARE +GRANITEWARES +GRANITIC +GRANITOID +GRANIVOROUS +GRANNIE +GRANNIES +GRANNY +GRANODIORITE +GRANODIORITES +GRANODIORITIC +GRANOLA +GRANOLAS +GRANOLITH +GRANOLITHIC +GRANOLITHS +GRANOPHYRE +GRANOPHYRES +GRANOPHYRIC +GRANS +GRANT +GRANTABLE +GRANTED +GRANTEE +GRANTEES +GRANTER +GRANTERS +GRANTING +GRANTOR +GRANTORS +GRANTS +GRANTSMAN +GRANTSMANSHIP +GRANTSMANSHIPS +GRANTSMEN +GRANULAR +GRANULARITIES +GRANULARITY +GRANULATE +GRANULATED +GRANULATES +GRANULATING +GRANULATION +GRANULATIONS +GRANULATOR +GRANULATORS +GRANULE +GRANULES +GRANULITE +GRANULITES +GRANULITIC +GRANULOCYTE +GRANULOCYTES +GRANULOCYTIC +GRANULOMA +GRANULOMAS +GRANULOMATA +GRANULOMATOUS +GRANULOSE +GRANULOSES +GRANULOSIS +GRANUM +GRAPE +GRAPEFRUIT +GRAPEFRUITS +GRAPELIKE +GRAPERIES +GRAPERY +GRAPES +GRAPESHOT +GRAPEVINE +GRAPEVINES +GRAPEY +GRAPH +GRAPHED +GRAPHEME +GRAPHEMES +GRAPHEMIC +GRAPHEMICALLY +GRAPHEMICS +GRAPHIC +GRAPHICAL +GRAPHICALLY +GRAPHICNESS +GRAPHICNESSES +GRAPHICS +GRAPHING +GRAPHITE +GRAPHITES +GRAPHITIC +GRAPHITIZABLE +GRAPHITIZATION +GRAPHITIZATIONS +GRAPHITIZE +GRAPHITIZED +GRAPHITIZES +GRAPHITIZING +GRAPHOLECT +GRAPHOLECTS +GRAPHOLOGICAL +GRAPHOLOGIES +GRAPHOLOGIST +GRAPHOLOGISTS +GRAPHOLOGY +GRAPHS +GRAPIER +GRAPIEST +GRAPINESS +GRAPINESSES +GRAPLIN +GRAPLINE +GRAPLINES +GRAPLINS +GRAPNEL +GRAPNELS +GRAPPA +GRAPPAS +GRAPPLE +GRAPPLED +GRAPPLER +GRAPPLERS +GRAPPLES +GRAPPLING +GRAPPLINGS +GRAPTOLITE +GRAPTOLITES +GRAPY +GRASP +GRASPABLE +GRASPED +GRASPER +GRASPERS +GRASPING +GRASPINGLY +GRASPINGNESS +GRASPINGNESSES +GRASPS +GRASS +GRASSED +GRASSES +GRASSHOPPER +GRASSHOPPERS +GRASSIER +GRASSIEST +GRASSILY +GRASSING +GRASSLAND +GRASSLANDS +GRASSLESS +GRASSLIKE +GRASSPLOT +GRASSPLOTS +GRASSROOT +GRASSROOTS +GRASSY +GRAT +GRATE +GRATED +GRATEFUL +GRATEFULLER +GRATEFULLEST +GRATEFULLY +GRATEFULNESS +GRATEFULNESSES +GRATELESS +GRATER +GRATERS +GRATES +GRATICULE +GRATICULES +GRATIFICATION +GRATIFICATIONS +GRATIFIED +GRATIFIER +GRATIFIERS +GRATIFIES +GRATIFY +GRATIFYING +GRATIFYINGLY +GRATIN +GRATINE +GRATINEE +GRATINEED +GRATINEEING +GRATINEES +GRATING +GRATINGLY +GRATINGS +GRATINS +GRATIS +GRATITUDE +GRATITUDES +GRATUITIES +GRATUITOUS +GRATUITOUSLY +GRATUITOUSNESS +GRATUITY +GRATULATE +GRATULATED +GRATULATES +GRATULATING +GRATULATION +GRATULATIONS +GRATULATORY +GRAUPEL +GRAUPELS +GRAVAMEN +GRAVAMENS +GRAVAMINA +GRAVE +GRAVED +GRAVEL +GRAVELED +GRAVELESS +GRAVELIKE +GRAVELING +GRAVELLED +GRAVELLING +GRAVELLY +GRAVELS +GRAVELY +GRAVEN +GRAVENESS +GRAVENESSES +GRAVER +GRAVERS +GRAVES +GRAVESIDE +GRAVESIDES +GRAVESITE +GRAVESITES +GRAVEST +GRAVESTONE +GRAVESTONES +GRAVEWARD +GRAVEYARD +GRAVEYARDS +GRAVID +GRAVIDA +GRAVIDAE +GRAVIDAS +GRAVIDITIES +GRAVIDITY +GRAVIDLY +GRAVIES +GRAVIMETER +GRAVIMETERS +GRAVIMETRIC +GRAVIMETRICALLY +GRAVIMETRIES +GRAVIMETRY +GRAVING +GRAVITAS +GRAVITASES +GRAVITATE +GRAVITATED +GRAVITATES +GRAVITATING +GRAVITATION +GRAVITATIONAL +GRAVITATIONALLY +GRAVITATIONS +GRAVITATIVE +GRAVITIES +GRAVITINO +GRAVITINOS +GRAVITON +GRAVITONS +GRAVITY +GRAVLAKS +GRAVLAX +GRAVURE +GRAVURES +GRAVY +GRAY +GRAYBACK +GRAYBACKS +GRAYBEARD +GRAYBEARDS +GRAYED +GRAYER +GRAYEST +GRAYFISH +GRAYFISHES +GRAYHOUND +GRAYHOUNDS +GRAYING +GRAYISH +GRAYLAG +GRAYLAGS +GRAYLING +GRAYLINGS +GRAYLY +GRAYMAIL +GRAYMAILS +GRAYNESS +GRAYNESSES +GRAYOUT +GRAYOUTS +GRAYS +GRAYSCALE +GRAYWACKE +GRAYWACKES +GRAYWATER +GRAYWATERS +GRAZABLE +GRAZE +GRAZEABLE +GRAZED +GRAZER +GRAZERS +GRAZES +GRAZIER +GRAZIERS +GRAZING +GRAZINGLY +GRAZINGS +GRAZIOSO +GREASE +GREASEBALL +GREASEBALLS +GREASED +GREASELESS +GREASEPAINT +GREASEPAINTS +GREASEPROOF +GREASEPROOFS +GREASER +GREASERS +GREASES +GREASEWOOD +GREASEWOODS +GREASIER +GREASIEST +GREASILY +GREASINESS +GREASINESSES +GREASING +GREASY +GREAT +GREATCOAT +GREATCOATS +GREATEN +GREATENED +GREATENING +GREATENS +GREATER +GREATEST +GREATHEARTED +GREATHEARTEDLY +GREATLY +GREATNESS +GREATNESSES +GREATS +GREAVE +GREAVED +GREAVES +GREBE +GREBES +GRECIANIZE +GRECIANIZED +GRECIANIZES +GRECIANIZING +GRECIZE +GRECIZED +GRECIZES +GRECIZING +GREE +GREED +GREEDIER +GREEDIEST +GREEDILY +GREEDINESS +GREEDINESSES +GREEDLESS +GREEDS +GREEDSOME +GREEDY +GREEGREE +GREEGREES +GREEING +GREEK +GREEN +GREENBACK +GREENBACKER +GREENBACKERS +GREENBACKISM +GREENBACKISMS +GREENBACKS +GREENBELT +GREENBELTS +GREENBRIER +GREENBRIERS +GREENBUG +GREENBUGS +GREENED +GREENER +GREENERIES +GREENERY +GREENEST +GREENFIELD +GREENFIELDS +GREENFINCH +GREENFINCHES +GREENFLIES +GREENFLY +GREENGAGE +GREENGAGES +GREENGROCER +GREENGROCERIES +GREENGROCERS +GREENGROCERY +GREENHEAD +GREENHEADS +GREENHEART +GREENHEARTS +GREENHORN +GREENHORNS +GREENHOUSE +GREENHOUSES +GREENIE +GREENIER +GREENIES +GREENIEST +GREENING +GREENINGS +GREENISH +GREENISHNESS +GREENISHNESSES +GREENKEEPER +GREENKEEPERS +GREENLET +GREENLETS +GREENLIGHT +GREENLIGHTED +GREENLIGHTING +GREENLIGHTS +GREENLING +GREENLINGS +GREENLIT +GREENLY +GREENMAIL +GREENMAILED +GREENMAILER +GREENMAILERS +GREENMAILING +GREENMAILS +GREENNESS +GREENNESSES +GREENOCKITE +GREENOCKITES +GREENROOM +GREENROOMS +GREENS +GREENSAND +GREENSANDS +GREENSHANK +GREENSHANKS +GREENSICK +GREENSICKNESS +GREENSICKNESSES +GREENSKEEPER +GREENSKEEPERS +GREENSTONE +GREENSTONES +GREENSTUFF +GREENSTUFFS +GREENSWARD +GREENSWARDS +GREENTH +GREENTHS +GREENWASH +GREENWASHES +GREENWAY +GREENWAYS +GREENWING +GREENWINGS +GREENWOOD +GREENWOODS +GREENY +GREES +GREET +GREETED +GREETER +GREETERS +GREETING +GREETINGS +GREETS +GREGARINE +GREGARINES +GREGARIOUS +GREGARIOUSLY +GREGARIOUSNESS +GREGO +GREGOS +GREIGE +GREIGES +GREISEN +GREISENS +GREMIAL +GREMIALS +GREMLIN +GREMLINS +GREMMIE +GREMMIES +GREMMY +GRENADE +GRENADES +GRENADIER +GRENADIERS +GRENADINE +GRENADINES +GREW +GREWSOME +GREWSOMER +GREWSOMEST +GREY +GREYED +GREYER +GREYEST +GREYHEN +GREYHENS +GREYHOUND +GREYHOUNDS +GREYING +GREYISH +GREYLAG +GREYLAGS +GREYLY +GREYNESS +GREYNESSES +GREYS +GRIBBLE +GRIBBLES +GRID +GRIDDED +GRIDDER +GRIDDERS +GRIDDLE +GRIDDLED +GRIDDLES +GRIDDLING +GRIDE +GRIDED +GRIDES +GRIDING +GRIDIRON +GRIDIRONED +GRIDIRONING +GRIDIRONS +GRIDLOCK +GRIDLOCKED +GRIDLOCKING +GRIDLOCKS +GRIDS +GRIEF +GRIEFS +GRIEVANCE +GRIEVANCES +GRIEVANT +GRIEVANTS +GRIEVE +GRIEVED +GRIEVER +GRIEVERS +GRIEVES +GRIEVING +GRIEVOUS +GRIEVOUSLY +GRIEVOUSNESS +GRIEVOUSNESSES +GRIFF +GRIFFE +GRIFFES +GRIFFIN +GRIFFINS +GRIFFON +GRIFFONS +GRIFFS +GRIFT +GRIFTED +GRIFTER +GRIFTERS +GRIFTING +GRIFTS +GRIG +GRIGRI +GRIGRIS +GRIGS +GRILL +GRILLADE +GRILLADES +GRILLAGE +GRILLAGES +GRILLE +GRILLED +GRILLER +GRILLERIES +GRILLERS +GRILLERY +GRILLES +GRILLING +GRILLROOM +GRILLROOMS +GRILLS +GRILLWORK +GRILLWORKS +GRILSE +GRILSES +GRIM +GRIMACE +GRIMACED +GRIMACER +GRIMACERS +GRIMACES +GRIMACING +GRIMALKIN +GRIMALKINS +GRIME +GRIMED +GRIMES +GRIMIER +GRIMIEST +GRIMILY +GRIMINESS +GRIMINESSES +GRIMING +GRIMLY +GRIMMER +GRIMMEST +GRIMNESS +GRIMNESSES +GRIMY +GRIN +GRINCH +GRINCHES +GRIND +GRINDED +GRINDELIA +GRINDELIAS +GRINDER +GRINDERIES +GRINDERS +GRINDERY +GRINDING +GRINDINGLY +GRINDS +GRINDSTONE +GRINDSTONES +GRINGA +GRINGAS +GRINGO +GRINGOS +GRINNED +GRINNER +GRINNERS +GRINNING +GRINNINGLY +GRINS +GRIOT +GRIOTS +GRIP +GRIPE +GRIPED +GRIPER +GRIPERS +GRIPES +GRIPEY +GRIPIER +GRIPIEST +GRIPING +GRIPMAN +GRIPMEN +GRIPPE +GRIPPED +GRIPPER +GRIPPERS +GRIPPES +GRIPPIER +GRIPPIEST +GRIPPING +GRIPPINGLY +GRIPPLE +GRIPPY +GRIPS +GRIPSACK +GRIPSACKS +GRIPT +GRIPY +GRISAILLE +GRISAILLES +GRISEOFULVIN +GRISEOFULVINS +GRISEOUS +GRISETTE +GRISETTES +GRISKIN +GRISKINS +GRISLIER +GRISLIEST +GRISLINESS +GRISLINESSES +GRISLY +GRISON +GRISONS +GRIST +GRISTER +GRISTERS +GRISTLE +GRISTLES +GRISTLIER +GRISTLIEST +GRISTLINESS +GRISTLINESSES +GRISTLY +GRISTMILL +GRISTMILLS +GRISTS +GRIT +GRITH +GRITHS +GRITS +GRITTED +GRITTER +GRITTERS +GRITTIER +GRITTIEST +GRITTILY +GRITTINESS +GRITTINESSES +GRITTING +GRITTY +GRIVET +GRIVETS +GRIZZLE +GRIZZLED +GRIZZLER +GRIZZLERS +GRIZZLES +GRIZZLIER +GRIZZLIES +GRIZZLIEST +GRIZZLING +GRIZZLY +GROAN +GROANED +GROANER +GROANERS +GROANING +GROANS +GROAT +GROATS +GROCER +GROCERIES +GROCERS +GROCERY +GRODIER +GRODIEST +GRODY +GROG +GROGGERIES +GROGGERY +GROGGIER +GROGGIEST +GROGGILY +GROGGINESS +GROGGINESSES +GROGGY +GROGRAM +GROGRAMS +GROGS +GROGSHOP +GROGSHOPS +GROIN +GROINED +GROINING +GROINS +GROK +GROKKED +GROKKING +GROKS +GROMMET +GROMMETED +GROMMETING +GROMMETS +GROMWELL +GROMWELLS +GROOM +GROOMED +GROOMER +GROOMERS +GROOMING +GROOMS +GROOMSMAN +GROOMSMEN +GROOVE +GROOVED +GROOVER +GROOVERS +GROOVES +GROOVIER +GROOVIEST +GROOVING +GROOVY +GROPE +GROPED +GROPER +GROPERS +GROPES +GROPING +GROPINGLY +GROSBEAK +GROSBEAKS +GROSCHEN +GROSGRAIN +GROSGRAINS +GROSS +GROSSED +GROSSER +GROSSERS +GROSSES +GROSSEST +GROSSING +GROSSLY +GROSSNESS +GROSSNESSES +GROSSULAR +GROSSULARITE +GROSSULARITES +GROSSULARS +GROSZ +GROSZE +GROSZY +GROT +GROTESQUE +GROTESQUELY +GROTESQUENESS +GROTESQUENESSES +GROTESQUERIE +GROTESQUERIES +GROTESQUERY +GROTESQUES +GROTS +GROTTIER +GROTTIEST +GROTTO +GROTTOED +GROTTOES +GROTTOS +GROTTY +GROUCH +GROUCHED +GROUCHES +GROUCHIER +GROUCHIEST +GROUCHILY +GROUCHINESS +GROUCHINESSES +GROUCHING +GROUCHY +GROUND +GROUNDBREAKER +GROUNDBREAKERS +GROUNDBREAKING +GROUNDBURST +GROUNDBURSTS +GROUNDED +GROUNDER +GROUNDERS +GROUNDFISH +GROUNDFISHES +GROUNDHOG +GROUNDHOGS +GROUNDING +GROUNDINGS +GROUNDLESS +GROUNDLESSLY +GROUNDLESSNESS +GROUNDLING +GROUNDLINGS +GROUNDMASS +GROUNDMASSES +GROUNDNUT +GROUNDNUTS +GROUNDOUT +GROUNDOUTS +GROUNDS +GROUNDSEL +GROUNDSELS +GROUNDSHEET +GROUNDSHEETS +GROUNDSKEEPER +GROUNDSKEEPERS +GROUNDSMAN +GROUNDSMEN +GROUNDSWELL +GROUNDSWELLS +GROUNDWATER +GROUNDWATERS +GROUNDWOOD +GROUNDWOODS +GROUNDWORK +GROUNDWORKS +GROUP +GROUPABLE +GROUPED +GROUPER +GROUPERS +GROUPIE +GROUPIES +GROUPING +GROUPINGS +GROUPOID +GROUPOIDS +GROUPS +GROUPTHINK +GROUPTHINKS +GROUPUSCULE +GROUPUSCULES +GROUPWARE +GROUPWARES +GROUSE +GROUSED +GROUSER +GROUSERS +GROUSES +GROUSING +GROUT +GROUTED +GROUTER +GROUTERS +GROUTIER +GROUTIEST +GROUTING +GROUTS +GROUTY +GROVE +GROVED +GROVEL +GROVELED +GROVELER +GROVELERS +GROVELESS +GROVELING +GROVELINGLY +GROVELLED +GROVELLER +GROVELLERS +GROVELLING +GROVELS +GROVES +GROW +GROWABLE +GROWER +GROWERS +GROWING +GROWINGLY +GROWL +GROWLED +GROWLER +GROWLERS +GROWLIER +GROWLIEST +GROWLINESS +GROWLINESSES +GROWLING +GROWLINGLY +GROWLS +GROWLY +GROWN +GROWNUP +GROWNUPS +GROWS +GROWTH +GROWTHIER +GROWTHIEST +GROWTHINESS +GROWTHINESSES +GROWTHS +GROWTHY +GROYNE +GROYNES +GRUB +GRUBBED +GRUBBER +GRUBBERS +GRUBBIER +GRUBBIEST +GRUBBILY +GRUBBINESS +GRUBBINESSES +GRUBBING +GRUBBY +GRUBS +GRUBSTAKE +GRUBSTAKED +GRUBSTAKER +GRUBSTAKERS +GRUBSTAKES +GRUBSTAKING +GRUBWORM +GRUBWORMS +GRUDGE +GRUDGED +GRUDGER +GRUDGERS +GRUDGES +GRUDGING +GRUDGINGLY +GRUE +GRUEL +GRUELED +GRUELER +GRUELERS +GRUELING +GRUELINGLY +GRUELINGS +GRUELLED +GRUELLER +GRUELLERS +GRUELLING +GRUELLINGS +GRUELS +GRUES +GRUESOME +GRUESOMELY +GRUESOMENESS +GRUESOMENESSES +GRUESOMER +GRUESOMEST +GRUFF +GRUFFED +GRUFFER +GRUFFEST +GRUFFIER +GRUFFIEST +GRUFFILY +GRUFFING +GRUFFISH +GRUFFLY +GRUFFNESS +GRUFFNESSES +GRUFFS +GRUFFY +GRUGRU +GRUGRUS +GRUIFORM +GRUM +GRUMBLE +GRUMBLED +GRUMBLER +GRUMBLERS +GRUMBLES +GRUMBLING +GRUMBLINGLY +GRUMBLY +GRUME +GRUMES +GRUMMER +GRUMMEST +GRUMMET +GRUMMETED +GRUMMETING +GRUMMETS +GRUMOSE +GRUMOUS +GRUMP +GRUMPED +GRUMPHIE +GRUMPHIES +GRUMPHY +GRUMPIER +GRUMPIEST +GRUMPILY +GRUMPINESS +GRUMPINESSES +GRUMPING +GRUMPISH +GRUMPS +GRUMPY +GRUNGE +GRUNGER +GRUNGERS +GRUNGES +GRUNGIER +GRUNGIEST +GRUNGY +GRUNION +GRUNIONS +GRUNT +GRUNTED +GRUNTER +GRUNTERS +GRUNTING +GRUNTLE +GRUNTLED +GRUNTLES +GRUNTLING +GRUNTS +GRUSHIE +GRUTCH +GRUTCHED +GRUTCHES +GRUTCHING +GRUTTEN +GRUYERE +GRUYERES +GRYPHON +GRYPHONS +GUACAMOLE +GUACAMOLES +GUACHARO +GUACHAROES +GUACHAROS +GUACO +GUACOS +GUAIAC +GUAIACOL +GUAIACOLS +GUAIACS +GUAIACUM +GUAIACUMS +GUAIOCUM +GUAIOCUMS +GUAN +GUANABANA +GUANABANAS +GUANACO +GUANACOS +GUANASE +GUANASES +GUANAY +GUANAYS +GUANETHIDINE +GUANETHIDINES +GUANIDIN +GUANIDINE +GUANIDINES +GUANIDINS +GUANIN +GUANINE +GUANINES +GUANINS +GUANO +GUANOS +GUANOSINE +GUANOSINES +GUANS +GUAR +GUARANA +GUARANAS +GUARANI +GUARANIES +GUARANIS +GUARANTEE +GUARANTEED +GUARANTEEING +GUARANTEES +GUARANTIED +GUARANTIES +GUARANTOR +GUARANTORS +GUARANTY +GUARANTYING +GUARD +GUARDANT +GUARDANTS +GUARDDOG +GUARDDOGS +GUARDED +GUARDEDLY +GUARDEDNESS +GUARDEDNESSES +GUARDER +GUARDERS +GUARDHOUSE +GUARDHOUSES +GUARDIAN +GUARDIANS +GUARDIANSHIP +GUARDIANSHIPS +GUARDING +GUARDRAIL +GUARDRAILS +GUARDROOM +GUARDROOMS +GUARDS +GUARDSMAN +GUARDSMEN +GUARS +GUAVA +GUAVAS +GUAYABERA +GUAYABERAS +GUAYULE +GUAYULES +GUBERNATORIAL +GUCK +GUCKS +GUDE +GUDES +GUDGEON +GUDGEONED +GUDGEONING +GUDGEONS +GUENON +GUENONS +GUERDON +GUERDONED +GUERDONING +GUERDONS +GUERIDON +GUERIDONS +GUERILLA +GUERILLAS +GUERNSEY +GUERNSEYS +GUERRILLA +GUERRILLAS +GUESS +GUESSABLE +GUESSED +GUESSER +GUESSERS +GUESSES +GUESSING +GUESSTIMATE +GUESSTIMATED +GUESSTIMATES +GUESSTIMATING +GUESSWORK +GUESSWORKS +GUEST +GUESTED +GUESTING +GUESTS +GUFF +GUFFAW +GUFFAWED +GUFFAWING +GUFFAWS +GUFFS +GUGGLE +GUGGLED +GUGGLES +GUGGLING +GUGLET +GUGLETS +GUID +GUIDABLE +GUIDANCE +GUIDANCES +GUIDE +GUIDEBOOK +GUIDEBOOKS +GUIDED +GUIDELESS +GUIDELINE +GUIDELINES +GUIDEPOST +GUIDEPOSTS +GUIDER +GUIDERS +GUIDES +GUIDEWAY +GUIDEWAYS +GUIDEWORD +GUIDEWORDS +GUIDING +GUIDON +GUIDONS +GUIDS +GUIDWILLIE +GUILD +GUILDER +GUILDERS +GUILDHALL +GUILDHALLS +GUILDS +GUILDSHIP +GUILDSHIPS +GUILDSMAN +GUILDSMEN +GUILE +GUILED +GUILEFUL +GUILEFULLY +GUILEFULNESS +GUILEFULNESSES +GUILELESS +GUILELESSLY +GUILELESSNESS +GUILELESSNESSES +GUILES +GUILING +GUILLEMET +GUILLEMETS +GUILLEMOT +GUILLEMOTS +GUILLOCHE +GUILLOCHES +GUILLOTINE +GUILLOTINED +GUILLOTINES +GUILLOTINING +GUILT +GUILTIER +GUILTIEST +GUILTILY +GUILTINESS +GUILTINESSES +GUILTLESS +GUILTLESSLY +GUILTLESSNESS +GUILTLESSNESSES +GUILTS +GUILTY +GUIMPE +GUIMPES +GUINEA +GUINEAS +GUIPURE +GUIPURES +GUIRO +GUIROS +GUISARD +GUISARDS +GUISE +GUISED +GUISES +GUISING +GUITAR +GUITARFISH +GUITARFISHES +GUITARIST +GUITARISTS +GUITARS +GUITGUIT +GUITGUITS +GUL +GULAG +GULAGS +GULAR +GULCH +GULCHES +GULDEN +GULDENS +GULES +GULF +GULFED +GULFIER +GULFIEST +GULFING +GULFLIKE +GULFS +GULFWEED +GULFWEEDS +GULFY +GULL +GULLABLE +GULLABLY +GULLED +GULLET +GULLETS +GULLEY +GULLEYS +GULLIBILITIES +GULLIBILITY +GULLIBLE +GULLIBLY +GULLIED +GULLIES +GULLING +GULLS +GULLWING +GULLY +GULLYING +GULOSITIES +GULOSITY +GULP +GULPED +GULPER +GULPERS +GULPIER +GULPIEST +GULPING +GULPINGLY +GULPS +GULPY +GULS +GUM +GUMBALL +GUMBALLS +GUMBO +GUMBOIL +GUMBOILS +GUMBOOT +GUMBOOTS +GUMBOS +GUMBOTIL +GUMBOTILS +GUMDROP +GUMDROPS +GUMLESS +GUMLIKE +GUMLINE +GUMLINES +GUMMA +GUMMAS +GUMMATA +GUMMATOUS +GUMMED +GUMMER +GUMMERS +GUMMIER +GUMMIEST +GUMMINESS +GUMMINESSES +GUMMING +GUMMITE +GUMMITES +GUMMOSE +GUMMOSES +GUMMOSIS +GUMMOUS +GUMMY +GUMPTION +GUMPTIONS +GUMPTIOUS +GUMS +GUMSHOE +GUMSHOED +GUMSHOEING +GUMSHOES +GUMTREE +GUMTREES +GUMWEED +GUMWEEDS +GUMWOOD +GUMWOODS +GUN +GUNBOAT +GUNBOATS +GUNCOTTON +GUNCOTTONS +GUNDOG +GUNDOGS +GUNFIGHT +GUNFIGHTER +GUNFIGHTERS +GUNFIGHTING +GUNFIGHTS +GUNFIRE +GUNFIRES +GUNFLINT +GUNFLINTS +GUNFOUGHT +GUNITE +GUNITES +GUNK +GUNKHOLE +GUNKHOLED +GUNKHOLES +GUNKHOLING +GUNKIER +GUNKIEST +GUNKS +GUNKY +GUNLESS +GUNLOCK +GUNLOCKS +GUNMAN +GUNMEN +GUNMETAL +GUNMETALS +GUNNED +GUNNEL +GUNNELS +GUNNEN +GUNNER +GUNNERIES +GUNNERS +GUNNERY +GUNNIES +GUNNING +GUNNINGS +GUNNY +GUNNYBAG +GUNNYBAGS +GUNNYSACK +GUNNYSACKS +GUNPAPER +GUNPAPERS +GUNPLAY +GUNPLAYS +GUNPOINT +GUNPOINTS +GUNPOWDER +GUNPOWDERS +GUNROOM +GUNROOMS +GUNRUNNER +GUNRUNNERS +GUNRUNNING +GUNRUNNINGS +GUNS +GUNSEL +GUNSELS +GUNSHIP +GUNSHIPS +GUNSHOT +GUNSHOTS +GUNSLINGER +GUNSLINGERS +GUNSLINGING +GUNSLINGINGS +GUNSMITH +GUNSMITHING +GUNSMITHINGS +GUNSMITHS +GUNSTOCK +GUNSTOCKS +GUNWALE +GUNWALES +GUPPIES +GUPPY +GURGE +GURGED +GURGES +GURGING +GURGLE +GURGLED +GURGLES +GURGLET +GURGLETS +GURGLING +GURNARD +GURNARDS +GURNET +GURNETS +GURNEY +GURNEYS +GURRIES +GURRY +GURSH +GURSHES +GURU +GURUS +GURUSHIP +GURUSHIPS +GUSH +GUSHED +GUSHER +GUSHERS +GUSHES +GUSHIER +GUSHIEST +GUSHILY +GUSHINESS +GUSHINESSES +GUSHING +GUSHINGLY +GUSHY +GUSSET +GUSSETED +GUSSETING +GUSSETS +GUSSIE +GUSSIED +GUSSIES +GUSSY +GUSSYING +GUST +GUSTABLE +GUSTABLES +GUSTATION +GUSTATIONS +GUSTATIVE +GUSTATORILY +GUSTATORY +GUSTED +GUSTIER +GUSTIEST +GUSTILY +GUSTINESS +GUSTINESSES +GUSTING +GUSTLESS +GUSTO +GUSTOES +GUSTS +GUSTY +GUT +GUTBUCKET +GUTBUCKETS +GUTLESS +GUTLESSNESS +GUTLESSNESSES +GUTLIKE +GUTS +GUTSIER +GUTSIEST +GUTSILY +GUTSINESS +GUTSINESSES +GUTSY +GUTTA +GUTTAE +GUTTATE +GUTTATED +GUTTATION +GUTTATIONS +GUTTED +GUTTER +GUTTERED +GUTTERING +GUTTERINGS +GUTTERS +GUTTERSNIPE +GUTTERSNIPES +GUTTERSNIPISH +GUTTERY +GUTTIER +GUTTIEST +GUTTING +GUTTLE +GUTTLED +GUTTLER +GUTTLERS +GUTTLES +GUTTLING +GUTTURAL +GUTTURALISM +GUTTURALISMS +GUTTURALS +GUTTY +GUV +GUVS +GUY +GUYED +GUYING +GUYLINE +GUYLINES +GUYOT +GUYOTS +GUYS +GUZZLE +GUZZLED +GUZZLER +GUZZLERS +GUZZLES +GUZZLING +GWEDUC +GWEDUCK +GWEDUCKS +GWEDUCS +GWINE +GYBE +GYBED +GYBES +GYBING +GYM +GYMKHANA +GYMKHANAS +GYMNASIA +GYMNASIAL +GYMNASIUM +GYMNASIUMS +GYMNAST +GYMNASTIC +GYMNASTICALLY +GYMNASTICS +GYMNASTS +GYMNOSOPHIST +GYMNOSOPHISTS +GYMNOSPERM +GYMNOSPERMIES +GYMNOSPERMOUS +GYMNOSPERMS +GYMNOSPERMY +GYMS +GYNAECEA +GYNAECEUM +GYNAECIA +GYNAECIUM +GYNAECOLOGIES +GYNAECOLOGY +GYNANDRIES +GYNANDROMORPH +GYNANDROMORPHIC +GYNANDROMORPHS +GYNANDROMORPHY +GYNANDROUS +GYNANDRY +GYNARCHIC +GYNARCHIES +GYNARCHY +GYNECIA +GYNECIC +GYNECIUM +GYNECOCRACIES +GYNECOCRACY +GYNECOCRATIC +GYNECOID +GYNECOLOGIC +GYNECOLOGICAL +GYNECOLOGIES +GYNECOLOGIST +GYNECOLOGISTS +GYNECOLOGY +GYNECOMASTIA +GYNECOMASTIAS +GYNIATRIES +GYNIATRY +GYNOECIA +GYNOECIUM +GYNOGENESES +GYNOGENESIS +GYNOGENETIC +GYNOPHOBE +GYNOPHOBES +GYNOPHORE +GYNOPHORES +GYOZA +GYOZAS +GYP +GYPLURE +GYPLURES +GYPPED +GYPPER +GYPPERS +GYPPING +GYPS +GYPSEIAN +GYPSEOUS +GYPSIED +GYPSIES +GYPSIFEROUS +GYPSOPHILA +GYPSOPHILAS +GYPSTER +GYPSTERS +GYPSUM +GYPSUMS +GYPSY +GYPSYDOM +GYPSYDOMS +GYPSYING +GYPSYISH +GYPSYISM +GYPSYISMS +GYRAL +GYRALLY +GYRASE +GYRASES +GYRATE +GYRATED +GYRATES +GYRATING +GYRATION +GYRATIONAL +GYRATIONS +GYRATOR +GYRATORS +GYRATORY +GYRE +GYRED +GYRENE +GYRENES +GYRES +GYRFALCON +GYRFALCONS +GYRI +GYRING +GYRO +GYROCOMPASS +GYROCOMPASSES +GYROFREQUENCIES +GYROFREQUENCY +GYROIDAL +GYROMAGNETIC +GYRON +GYRONS +GYROPILOT +GYROPILOTS +GYROPLANE +GYROPLANES +GYROS +GYROSCOPE +GYROSCOPES +GYROSCOPIC +GYROSCOPICALLY +GYROSE +GYROSTABILIZER +GYROSTABILIZERS +GYROSTAT +GYROSTATS +GYRUS +GYTTJA +GYTTJAS +GYVE +GYVED +GYVES +GYVING +HA +HAAF +HAAFS +HAAR +HAARS +HABANERA +HABANERAS +HABANERO +HABANEROS +HABDALAH +HABDALAHS +HABERDASHER +HABERDASHERIES +HABERDASHERS +HABERDASHERY +HABERGEON +HABERGEONS +HABILE +HABILIMENT +HABILIMENTS +HABILITATE +HABILITATED +HABILITATES +HABILITATING +HABILITATION +HABILITATIONS +HABIT +HABITABILITIES +HABITABILITY +HABITABLE +HABITABLENESS +HABITABLENESSES +HABITABLY +HABITAN +HABITANS +HABITANT +HABITANTS +HABITAT +HABITATION +HABITATIONS +HABITATS +HABITED +HABITING +HABITS +HABITUAL +HABITUALLY +HABITUALNESS +HABITUALNESSES +HABITUATE +HABITUATED +HABITUATES +HABITUATING +HABITUATION +HABITUATIONS +HABITUDE +HABITUDES +HABITUE +HABITUES +HABITUS +HABOOB +HABOOBS +HABU +HABUS +HACEK +HACEKS +HACENDADO +HACENDADOS +HACHURE +HACHURED +HACHURES +HACHURING +HACIENDA +HACIENDADO +HACIENDADOS +HACIENDAS +HACK +HACKABLE +HACKAMORE +HACKAMORES +HACKBERRIES +HACKBERRY +HACKBUT +HACKBUTS +HACKED +HACKEE +HACKEES +HACKER +HACKERS +HACKIE +HACKIES +HACKING +HACKLE +HACKLED +HACKLER +HACKLERS +HACKLES +HACKLIER +HACKLIEST +HACKLING +HACKLY +HACKMAN +HACKMATACK +HACKMATACKS +HACKMEN +HACKNEY +HACKNEYED +HACKNEYING +HACKNEYS +HACKS +HACKSAW +HACKSAWED +HACKSAWING +HACKSAWN +HACKSAWS +HACKWORK +HACKWORKS +HAD +HADAL +HADARIM +HADDEST +HADDOCK +HADDOCKS +HADE +HADED +HADES +HADING +HADITH +HADITHS +HADJ +HADJEE +HADJEES +HADJES +HADJI +HADJIS +HADRON +HADRONIC +HADRONS +HADROSAUR +HADROSAURS +HADST +HAE +HAECCEITIES +HAECCEITY +HAED +HAEING +HAEM +HAEMAL +HAEMATAL +HAEMATIC +HAEMATICS +HAEMATIN +HAEMATINS +HAEMATITE +HAEMATITES +HAEMIC +HAEMIN +HAEMINS +HAEMOID +HAEMS +HAEN +HAEREDES +HAERES +HAES +HAET +HAETS +HAFFET +HAFFETS +HAFFIT +HAFFITS +HAFIZ +HAFIZES +HAFNIUM +HAFNIUMS +HAFT +HAFTARA +HAFTARAH +HAFTARAHS +HAFTARAS +HAFTAROT +HAFTAROTH +HAFTED +HAFTER +HAFTERS +HAFTING +HAFTORAH +HAFTORAHS +HAFTOROS +HAFTOROT +HAFTOROTH +HAFTS +HAG +HAGADIC +HAGADIST +HAGADISTS +HAGBERRIES +HAGBERRY +HAGBORN +HAGBUSH +HAGBUSHES +HAGBUT +HAGBUTS +HAGDON +HAGDONS +HAGFISH +HAGFISHES +HAGGADA +HAGGADAH +HAGGADAHS +HAGGADAS +HAGGADIC +HAGGADIST +HAGGADISTIC +HAGGADISTS +HAGGADOT +HAGGADOTH +HAGGARD +HAGGARDLY +HAGGARDNESS +HAGGARDNESSES +HAGGARDS +HAGGED +HAGGING +HAGGIS +HAGGISES +HAGGISH +HAGGISHLY +HAGGLE +HAGGLED +HAGGLER +HAGGLERS +HAGGLES +HAGGLING +HAGIARCHIES +HAGIARCHY +HAGIOGRAPHER +HAGIOGRAPHERS +HAGIOGRAPHIC +HAGIOGRAPHICAL +HAGIOGRAPHIES +HAGIOGRAPHY +HAGIOLOGIC +HAGIOLOGICAL +HAGIOLOGIES +HAGIOLOGY +HAGIOSCOPE +HAGIOSCOPES +HAGIOSCOPIC +HAGRIDDEN +HAGRIDE +HAGRIDER +HAGRIDERS +HAGRIDES +HAGRIDING +HAGRODE +HAGS +HAH +HAHA +HAHAS +HAHNIUM +HAHNIUMS +HAHS +HAIK +HAIKA +HAIKS +HAIKU +HAIKUS +HAIL +HAILED +HAILER +HAILERS +HAILING +HAILS +HAILSTONE +HAILSTONES +HAILSTORM +HAILSTORMS +HAIMISH +HAINT +HAINTS +HAIR +HAIRBALL +HAIRBALLS +HAIRBAND +HAIRBANDS +HAIRBREADTH +HAIRBREADTHS +HAIRBRUSH +HAIRBRUSHES +HAIRCAP +HAIRCAPS +HAIRCLOTH +HAIRCLOTHS +HAIRCUT +HAIRCUTS +HAIRCUTTER +HAIRCUTTERS +HAIRCUTTING +HAIRCUTTINGS +HAIRDO +HAIRDOS +HAIRDRESSER +HAIRDRESSERS +HAIRDRESSING +HAIRDRESSINGS +HAIRED +HAIRIER +HAIRIEST +HAIRINESS +HAIRINESSES +HAIRLESS +HAIRLESSNESS +HAIRLESSNESSES +HAIRLIKE +HAIRLINE +HAIRLINES +HAIRLOCK +HAIRLOCKS +HAIRNET +HAIRNETS +HAIRPIECE +HAIRPIECES +HAIRPIN +HAIRPINS +HAIRS +HAIRSBREADTH +HAIRSBREADTHS +HAIRSPLITTER +HAIRSPLITTERS +HAIRSPLITTING +HAIRSPLITTINGS +HAIRSPRAY +HAIRSPRAYS +HAIRSPRING +HAIRSPRINGS +HAIRSTREAK +HAIRSTREAKS +HAIRSTYLE +HAIRSTYLES +HAIRSTYLING +HAIRSTYLINGS +HAIRSTYLIST +HAIRSTYLISTS +HAIRWORK +HAIRWORKS +HAIRWORM +HAIRWORMS +HAIRY +HAJ +HAJES +HAJI +HAJIS +HAJJ +HAJJES +HAJJI +HAJJIS +HAKE +HAKEEM +HAKEEMS +HAKES +HAKIM +HAKIMS +HAKU +HAKUS +HALACHA +HALACHAS +HALACHIC +HALACHIST +HALACHISTS +HALACHOT +HALACHOTH +HALAKAH +HALAKAHS +HALAKHA +HALAKHAH +HALAKHAHS +HALAKHAS +HALAKHIC +HALAKHIST +HALAKHISTS +HALAKHOT +HALAKHOTH +HALAKIC +HALAKIST +HALAKISTS +HALAKOTH +HALAL +HALALA +HALALAH +HALALAHS +HALALAS +HALALS +HALATION +HALATIONS +HALAVAH +HALAVAHS +HALAZONE +HALAZONES +HALBERD +HALBERDS +HALBERT +HALBERTS +HALCYON +HALCYONS +HALE +HALED +HALENESS +HALENESSES +HALER +HALERS +HALERU +HALES +HALEST +HALF +HALFBACK +HALFBACKS +HALFBEAK +HALFBEAKS +HALFHEARTED +HALFHEARTEDLY +HALFHEARTEDNESS +HALFLIFE +HALFLIVES +HALFNESS +HALFNESSES +HALFPENCE +HALFPENNIES +HALFPENNY +HALFPIPE +HALFPIPES +HALFTIME +HALFTIMES +HALFTONE +HALFTONES +HALFTRACK +HALFTRACKS +HALFWAY +HALIBUT +HALIBUTS +HALID +HALIDE +HALIDES +HALIDOM +HALIDOME +HALIDOMES +HALIDOMS +HALIDS +HALING +HALITE +HALITES +HALITOSES +HALITOSIS +HALITUS +HALITUSES +HALL +HALLAH +HALLAHS +HALLAL +HALLEL +HALLELS +HALLELUJAH +HALLELUJAHS +HALLIARD +HALLIARDS +HALLMARK +HALLMARKED +HALLMARKING +HALLMARKS +HALLO +HALLOA +HALLOAED +HALLOAING +HALLOAS +HALLOED +HALLOES +HALLOING +HALLOO +HALLOOED +HALLOOING +HALLOOS +HALLOS +HALLOT +HALLOTH +HALLOW +HALLOWED +HALLOWER +HALLOWERS +HALLOWING +HALLOWS +HALLS +HALLUCAL +HALLUCES +HALLUCINATE +HALLUCINATED +HALLUCINATES +HALLUCINATING +HALLUCINATION +HALLUCINATIONS +HALLUCINATOR +HALLUCINATORS +HALLUCINATORY +HALLUCINOGEN +HALLUCINOGENIC +HALLUCINOGENICS +HALLUCINOGENS +HALLUCINOSES +HALLUCINOSIS +HALLUX +HALLWAY +HALLWAYS +HALM +HALMA +HALMAS +HALMS +HALO +HALOBIONT +HALOBIONTS +HALOCARBON +HALOCARBONS +HALOCLINE +HALOCLINES +HALOED +HALOES +HALOGEN +HALOGENATE +HALOGENATED +HALOGENATES +HALOGENATING +HALOGENATION +HALOGENATIONS +HALOGENOUS +HALOGENS +HALOGETON +HALOGETONS +HALOID +HALOIDS +HALOING +HALOLIKE +HALOMORPHIC +HALON +HALONS +HALOPERIDOL +HALOPERIDOLS +HALOPHILE +HALOPHILES +HALOPHILIC +HALOPHYTE +HALOPHYTES +HALOPHYTIC +HALOS +HALOTHANE +HALOTHANES +HALT +HALTED +HALTER +HALTERBREAK +HALTERBREAKING +HALTERBREAKS +HALTERBROKE +HALTERBROKEN +HALTERE +HALTERED +HALTERES +HALTERING +HALTERS +HALTING +HALTINGLY +HALTLESS +HALTS +HALUTZ +HALUTZIM +HALVA +HALVAH +HALVAHS +HALVAS +HALVE +HALVED +HALVERS +HALVES +HALVING +HALYARD +HALYARDS +HAM +HAMADA +HAMADAS +HAMADRYAD +HAMADRYADES +HAMADRYADS +HAMADRYAS +HAMADRYASES +HAMAL +HAMALS +HAMANTASCH +HAMANTASCHEN +HAMARTIA +HAMARTIAS +HAMATE +HAMATES +HAMAUL +HAMAULS +HAMBONE +HAMBONED +HAMBONES +HAMBONING +HAMBURG +HAMBURGER +HAMBURGERS +HAMBURGS +HAME +HAMES +HAMLET +HAMLETS +HAMMADA +HAMMADAS +HAMMAL +HAMMALS +HAMMAM +HAMMAMS +HAMMED +HAMMER +HAMMERED +HAMMERER +HAMMERERS +HAMMERHEAD +HAMMERHEADS +HAMMERING +HAMMERKOP +HAMMERKOPS +HAMMERLESS +HAMMERLOCK +HAMMERLOCKS +HAMMERS +HAMMERTOE +HAMMERTOES +HAMMIER +HAMMIEST +HAMMILY +HAMMINESS +HAMMINESSES +HAMMING +HAMMOCK +HAMMOCKS +HAMMY +HAMPER +HAMPERED +HAMPERER +HAMPERERS +HAMPERING +HAMPERS +HAMS +HAMSTER +HAMSTERS +HAMSTRING +HAMSTRINGING +HAMSTRINGS +HAMSTRUNG +HAMULAR +HAMULATE +HAMULI +HAMULOSE +HAMULOUS +HAMULUS +HAMZA +HAMZAH +HAMZAHS +HAMZAS +HANAPER +HANAPERS +HANCE +HANCES +HAND +HANDAX +HANDAXES +HANDBAG +HANDBAGS +HANDBALL +HANDBALLS +HANDBARROW +HANDBARROWS +HANDBASKET +HANDBASKETS +HANDBELL +HANDBELLS +HANDBILL +HANDBILLS +HANDBLOWN +HANDBOOK +HANDBOOKS +HANDBREADTH +HANDBREADTHS +HANDCAR +HANDCARS +HANDCART +HANDCARTS +HANDCLAP +HANDCLAPS +HANDCLASP +HANDCLASPS +HANDCRAFT +HANDCRAFTED +HANDCRAFTING +HANDCRAFTS +HANDCRAFTSMAN +HANDCRAFTSMEN +HANDCUFF +HANDCUFFED +HANDCUFFING +HANDCUFFS +HANDED +HANDEDNESS +HANDEDNESSES +HANDER +HANDERS +HANDFAST +HANDFASTED +HANDFASTING +HANDFASTS +HANDFUL +HANDFULS +HANDGRIP +HANDGRIPS +HANDGUN +HANDGUNS +HANDHELD +HANDHELDS +HANDHOLD +HANDHOLDS +HANDICAP +HANDICAPPED +HANDICAPPER +HANDICAPPERS +HANDICAPPING +HANDICAPS +HANDICRAFT +HANDICRAFTER +HANDICRAFTERS +HANDICRAFTS +HANDICRAFTSMAN +HANDICRAFTSMEN +HANDIER +HANDIEST +HANDILY +HANDINESS +HANDINESSES +HANDING +HANDIWORK +HANDIWORKS +HANDKERCHIEF +HANDKERCHIEFS +HANDKERCHIEVES +HANDLE +HANDLEABLE +HANDLEBAR +HANDLEBARS +HANDLED +HANDLELESS +HANDLER +HANDLERS +HANDLES +HANDLESS +HANDLIKE +HANDLING +HANDLINGS +HANDLIST +HANDLISTS +HANDLOOM +HANDLOOMS +HANDMADE +HANDMAID +HANDMAIDEN +HANDMAIDENS +HANDMAIDS +HANDOFF +HANDOFFS +HANDOUT +HANDOUTS +HANDOVER +HANDOVERS +HANDPICK +HANDPICKED +HANDPICKING +HANDPICKS +HANDPRESS +HANDPRESSES +HANDPRINT +HANDPRINTS +HANDRAIL +HANDRAILS +HANDS +HANDSAW +HANDSAWS +HANDSBREADTH +HANDSBREADTHS +HANDSEL +HANDSELED +HANDSELING +HANDSELLED +HANDSELLING +HANDSELS +HANDSET +HANDSETS +HANDSEWN +HANDSFUL +HANDSHAKE +HANDSHAKES +HANDSOME +HANDSOMELY +HANDSOMENESS +HANDSOMENESSES +HANDSOMER +HANDSOMEST +HANDSPIKE +HANDSPIKES +HANDSPRING +HANDSPRINGS +HANDSTAMP +HANDSTAMPED +HANDSTAMPING +HANDSTAMPS +HANDSTAND +HANDSTANDS +HANDWHEEL +HANDWHEELS +HANDWORK +HANDWORKER +HANDWORKERS +HANDWORKS +HANDWOVEN +HANDWRINGER +HANDWRINGERS +HANDWRIT +HANDWRITE +HANDWRITES +HANDWRITING +HANDWRITINGS +HANDWRITTEN +HANDWROTE +HANDWROUGHT +HANDY +HANDYMAN +HANDYMEN +HANDYPERSON +HANDYPERSONS +HANG +HANGABLE +HANGAR +HANGARED +HANGARING +HANGARS +HANGBIRD +HANGBIRDS +HANGDOG +HANGDOGS +HANGED +HANGER +HANGERS +HANGFIRE +HANGFIRES +HANGING +HANGINGS +HANGMAN +HANGMEN +HANGNAIL +HANGNAILS +HANGNEST +HANGNESTS +HANGOUT +HANGOUTS +HANGOVER +HANGOVERS +HANGS +HANGTAG +HANGTAGS +HANGUL +HANGUP +HANGUPS +HANIWA +HANK +HANKED +HANKER +HANKERED +HANKERER +HANKERERS +HANKERING +HANKERINGS +HANKERS +HANKIE +HANKIES +HANKING +HANKS +HANKY +HANSA +HANSAS +HANSE +HANSEATIC +HANSEL +HANSELED +HANSELING +HANSELLED +HANSELLING +HANSELS +HANSES +HANSOM +HANSOMS +HANT +HANTAVIRUS +HANTAVIRUSES +HANTED +HANTING +HANTLE +HANTLES +HANTS +HANUMAN +HANUMANS +HAO +HAOLE +HAOLES +HAP +HAPAX +HAPAXES +HAPHAZARD +HAPHAZARDLY +HAPHAZARDNESS +HAPHAZARDNESSES +HAPHAZARDRIES +HAPHAZARDRY +HAPHAZARDS +HAPHTARA +HAPHTARAH +HAPHTARAHS +HAPHTARAS +HAPHTAROT +HAPHTAROTH +HAPKIDO +HAPKIDOS +HAPLESS +HAPLESSLY +HAPLESSNESS +HAPLESSNESSES +HAPLITE +HAPLITES +HAPLOID +HAPLOIDIC +HAPLOIDIES +HAPLOIDS +HAPLOIDY +HAPLOLOGIES +HAPLOLOGY +HAPLONT +HAPLONTIC +HAPLONTS +HAPLOPIA +HAPLOPIAS +HAPLOSES +HAPLOSIS +HAPLOTYPE +HAPLOTYPES +HAPLY +HAPPED +HAPPEN +HAPPENCHANCE +HAPPENCHANCES +HAPPENED +HAPPENING +HAPPENINGS +HAPPENS +HAPPENSTANCE +HAPPENSTANCES +HAPPIER +HAPPIEST +HAPPILY +HAPPINESS +HAPPINESSES +HAPPING +HAPPY +HAPS +HAPTEN +HAPTENE +HAPTENES +HAPTENIC +HAPTENS +HAPTIC +HAPTICAL +HAPTOGLOBIN +HAPTOGLOBINS +HARANGUE +HARANGUED +HARANGUER +HARANGUERS +HARANGUES +HARANGUING +HARASS +HARASSED +HARASSER +HARASSERS +HARASSES +HARASSING +HARASSMENT +HARASSMENTS +HARBINGER +HARBINGERED +HARBINGERING +HARBINGERS +HARBOR +HARBORAGE +HARBORAGES +HARBORED +HARBORER +HARBORERS +HARBORFUL +HARBORFULS +HARBORING +HARBORLESS +HARBORMASTER +HARBORMASTERS +HARBOROUS +HARBORS +HARBORSIDE +HARBOUR +HARBOURED +HARBOURING +HARBOURS +HARD +HARDASS +HARDASSES +HARDBACK +HARDBACKS +HARDBALL +HARDBALLS +HARDBOARD +HARDBOARDS +HARDBOOT +HARDBOOTS +HARDBOUND +HARDBOUNDS +HARDCASE +HARDCORE +HARDCORES +HARDCOURT +HARDCOVER +HARDCOVERS +HARDEDGE +HARDEDGES +HARDEN +HARDENED +HARDENER +HARDENERS +HARDENING +HARDENINGS +HARDENS +HARDER +HARDEST +HARDFISTED +HARDGOODS +HARDHACK +HARDHACKS +HARDHANDED +HARDHANDEDNESS +HARDHAT +HARDHATS +HARDHEAD +HARDHEADED +HARDHEADEDLY +HARDHEADEDNESS +HARDHEADS +HARDIER +HARDIES +HARDIEST +HARDIHOOD +HARDIHOODS +HARDILY +HARDIMENT +HARDIMENTS +HARDINESS +HARDINESSES +HARDINGGRASS +HARDINGGRASSES +HARDLINE +HARDLY +HARDMOUTHED +HARDNESS +HARDNESSES +HARDNOSE +HARDNOSES +HARDPACK +HARDPACKS +HARDPAN +HARDPANS +HARDS +HARDSCRABBLE +HARDSET +HARDSHIP +HARDSHIPS +HARDSTAND +HARDSTANDING +HARDSTANDINGS +HARDSTANDS +HARDTACK +HARDTACKS +HARDTOP +HARDTOPS +HARDWARE +HARDWARES +HARDWIRE +HARDWIRED +HARDWIRES +HARDWIRING +HARDWOOD +HARDWOODS +HARDWORKING +HARDY +HARE +HAREBELL +HAREBELLS +HAREBRAINED +HARED +HAREEM +HAREEMS +HARELIKE +HARELIP +HARELIPS +HAREM +HAREMS +HARES +HARIANA +HARIANAS +HARICOT +HARICOTS +HARIJAN +HARIJANS +HARING +HARISSA +HARISSAS +HARK +HARKED +HARKEN +HARKENED +HARKENER +HARKENERS +HARKENING +HARKENS +HARKING +HARKS +HARL +HARLEQUIN +HARLEQUINADE +HARLEQUINADES +HARLEQUINS +HARLOT +HARLOTRIES +HARLOTRY +HARLOTS +HARLS +HARM +HARMATTAN +HARMATTANS +HARMED +HARMER +HARMERS +HARMFUL +HARMFULLY +HARMFULNESS +HARMFULNESSES +HARMIN +HARMINE +HARMINES +HARMING +HARMINS +HARMLESS +HARMLESSLY +HARMLESSNESS +HARMLESSNESSES +HARMONIC +HARMONICA +HARMONICALLY +HARMONICAS +HARMONICIST +HARMONICISTS +HARMONICS +HARMONIES +HARMONIOUS +HARMONIOUSLY +HARMONIOUSNESS +HARMONISE +HARMONISED +HARMONISES +HARMONISING +HARMONIST +HARMONISTS +HARMONIUM +HARMONIUMS +HARMONIZATION +HARMONIZATIONS +HARMONIZE +HARMONIZED +HARMONIZER +HARMONIZERS +HARMONIZES +HARMONIZING +HARMONY +HARMS +HARNESS +HARNESSED +HARNESSES +HARNESSING +HARP +HARPED +HARPER +HARPERS +HARPIES +HARPIN +HARPING +HARPINGS +HARPINS +HARPIST +HARPISTS +HARPOON +HARPOONED +HARPOONER +HARPOONERS +HARPOONING +HARPOONS +HARPS +HARPSICHORD +HARPSICHORDIST +HARPSICHORDISTS +HARPSICHORDS +HARPY +HARPYLIKE +HARQUEBUS +HARQUEBUSES +HARQUEBUSIER +HARQUEBUSIERS +HARRIDAN +HARRIDANS +HARRIED +HARRIER +HARRIERS +HARRIES +HARROW +HARROWED +HARROWER +HARROWERS +HARROWING +HARROWS +HARRUMPH +HARRUMPHED +HARRUMPHING +HARRUMPHS +HARRY +HARRYING +HARSH +HARSHEN +HARSHENED +HARSHENING +HARSHENS +HARSHER +HARSHEST +HARSHLY +HARSHNESS +HARSHNESSES +HARSLET +HARSLETS +HART +HARTAL +HARTALS +HARTEBEEST +HARTEBEESTS +HARTS +HARTSHORN +HARTSHORNS +HARUMPH +HARUMPHED +HARUMPHING +HARUMPHS +HARUSPEX +HARUSPICATION +HARUSPICATIONS +HARUSPICES +HARVEST +HARVESTABLE +HARVESTED +HARVESTER +HARVESTERS +HARVESTING +HARVESTMAN +HARVESTMEN +HARVESTS +HARVESTTIME +HARVESTTIMES +HAS +HASENPFEFFER +HASENPFEFFERS +HASH +HASHED +HASHEESH +HASHEESHES +HASHES +HASHHEAD +HASHHEADS +HASHING +HASHISH +HASHISHES +HASLET +HASLETS +HASP +HASPED +HASPING +HASPS +HASSEL +HASSELS +HASSIUM +HASSIUMS +HASSLE +HASSLED +HASSLES +HASSLING +HASSOCK +HASSOCKS +HAST +HASTATE +HASTATELY +HASTE +HASTED +HASTEFUL +HASTEN +HASTENED +HASTENER +HASTENERS +HASTENING +HASTENS +HASTES +HASTIER +HASTIEST +HASTILY +HASTINESS +HASTINESSES +HASTING +HASTY +HAT +HATABLE +HATBAND +HATBANDS +HATBOX +HATBOXES +HATCH +HATCHABILITIES +HATCHABILITY +HATCHABLE +HATCHBACK +HATCHBACKS +HATCHECK +HATCHECKS +HATCHED +HATCHEL +HATCHELED +HATCHELING +HATCHELLED +HATCHELLING +HATCHELS +HATCHER +HATCHERIES +HATCHERS +HATCHERY +HATCHES +HATCHET +HATCHETS +HATCHING +HATCHINGS +HATCHLING +HATCHLINGS +HATCHMENT +HATCHMENTS +HATCHWAY +HATCHWAYS +HATE +HATEABLE +HATED +HATEFUL +HATEFULLY +HATEFULNESS +HATEFULNESSES +HATER +HATERS +HATES +HATFUL +HATFULS +HATH +HATING +HATLESS +HATLIKE +HATMAKER +HATMAKERS +HATPIN +HATPINS +HATRACK +HATRACKS +HATRED +HATREDS +HATS +HATSFUL +HATTED +HATTER +HATTERIA +HATTERIAS +HATTERS +HATTING +HAUBERK +HAUBERKS +HAUGH +HAUGHS +HAUGHTIER +HAUGHTIEST +HAUGHTILY +HAUGHTINESS +HAUGHTINESSES +HAUGHTY +HAUL +HAULAGE +HAULAGES +HAULED +HAULER +HAULERS +HAULIER +HAULIERS +HAULING +HAULM +HAULMIER +HAULMIEST +HAULMS +HAULMY +HAULS +HAULYARD +HAULYARDS +HAUNCH +HAUNCHED +HAUNCHES +HAUNT +HAUNTED +HAUNTER +HAUNTERS +HAUNTING +HAUNTINGLY +HAUNTS +HAUSEN +HAUSENS +HAUSFRAU +HAUSFRAUEN +HAUSFRAUS +HAUSTELLA +HAUSTELLUM +HAUSTORIA +HAUSTORIAL +HAUSTORIUM +HAUT +HAUTBOIS +HAUTBOY +HAUTBOYS +HAUTE +HAUTEUR +HAUTEURS +HAVARTI +HAVARTIS +HAVDALAH +HAVDALAHS +HAVE +HAVELOCK +HAVELOCKS +HAVEN +HAVENED +HAVENING +HAVENS +HAVER +HAVERED +HAVEREL +HAVERELS +HAVERING +HAVERS +HAVERSACK +HAVERSACKS +HAVES +HAVING +HAVIOR +HAVIORS +HAVIOUR +HAVIOURS +HAVOC +HAVOCKED +HAVOCKER +HAVOCKERS +HAVOCKING +HAVOCS +HAW +HAWALA +HAWALAS +HAWED +HAWFINCH +HAWFINCHES +HAWING +HAWK +HAWKBILL +HAWKBILLS +HAWKED +HAWKER +HAWKERS +HAWKEY +HAWKEYED +HAWKEYS +HAWKIE +HAWKIES +HAWKING +HAWKINGS +HAWKISH +HAWKISHLY +HAWKISHNESS +HAWKISHNESSES +HAWKLIKE +HAWKMOTH +HAWKMOTHS +HAWKNOSE +HAWKNOSES +HAWKS +HAWKSBILL +HAWKSBILLS +HAWKSHAW +HAWKSHAWS +HAWKWEED +HAWKWEEDS +HAWS +HAWSE +HAWSEHOLE +HAWSEHOLES +HAWSEPIPE +HAWSEPIPES +HAWSER +HAWSERS +HAWSES +HAWTHORN +HAWTHORNS +HAWTHORNY +HAY +HAYCOCK +HAYCOCKS +HAYED +HAYER +HAYERS +HAYEY +HAYFIELD +HAYFIELDS +HAYFORK +HAYFORKS +HAYING +HAYINGS +HAYLAGE +HAYLAGES +HAYLOFT +HAYLOFTS +HAYMAKER +HAYMAKERS +HAYMOW +HAYMOWS +HAYRACK +HAYRACKS +HAYRICK +HAYRICKS +HAYRIDE +HAYRIDES +HAYS +HAYSEED +HAYSEEDS +HAYSTACK +HAYSTACKS +HAYWARD +HAYWARDS +HAYWIRE +HAYWIRES +HAZAN +HAZANIM +HAZANS +HAZARD +HAZARDED +HAZARDER +HAZARDERS +HAZARDING +HAZARDOUS +HAZARDOUSLY +HAZARDOUSNESS +HAZARDOUSNESSES +HAZARDS +HAZE +HAZED +HAZEL +HAZELHEN +HAZELHENS +HAZELLY +HAZELNUT +HAZELNUTS +HAZELS +HAZER +HAZERS +HAZES +HAZIER +HAZIEST +HAZILY +HAZINESS +HAZINESSES +HAZING +HAZINGS +HAZMAT +HAZMATS +HAZY +HAZZAN +HAZZANIM +HAZZANS +HE +HEAD +HEADACHE +HEADACHES +HEADACHEY +HEADACHIER +HEADACHIEST +HEADACHY +HEADBAND +HEADBANDS +HEADBOARD +HEADBOARDS +HEADCHEESE +HEADCHEESES +HEADCOUNT +HEADCOUNTS +HEADDRESS +HEADDRESSES +HEADED +HEADEND +HEADENDS +HEADER +HEADERS +HEADFIRST +HEADFISH +HEADFISHES +HEADFOREMOST +HEADFUL +HEADFULS +HEADGATE +HEADGATES +HEADGEAR +HEADGEARS +HEADHUNT +HEADHUNTED +HEADHUNTER +HEADHUNTERS +HEADHUNTING +HEADHUNTS +HEADIER +HEADIEST +HEADILY +HEADINESS +HEADINESSES +HEADING +HEADINGS +HEADLAMP +HEADLAMPS +HEADLAND +HEADLANDS +HEADLESS +HEADLESSNESS +HEADLESSNESSES +HEADLIGHT +HEADLIGHTS +HEADLINE +HEADLINED +HEADLINER +HEADLINERS +HEADLINES +HEADLINING +HEADLOCK +HEADLOCKS +HEADLONG +HEADMAN +HEADMASTER +HEADMASTERS +HEADMASTERSHIP +HEADMASTERSHIPS +HEADMEN +HEADMISTRESS +HEADMISTRESSES +HEADMOST +HEADNOTE +HEADNOTES +HEADPHONE +HEADPHONES +HEADPIECE +HEADPIECES +HEADPIN +HEADPINS +HEADQUARTER +HEADQUARTERED +HEADQUARTERING +HEADQUARTERS +HEADRACE +HEADRACES +HEADREST +HEADRESTS +HEADROOM +HEADROOMS +HEADS +HEADSAIL +HEADSAILS +HEADSET +HEADSETS +HEADSHIP +HEADSHIPS +HEADSHRINKER +HEADSHRINKERS +HEADSMAN +HEADSMEN +HEADSPACE +HEADSPACES +HEADSPRING +HEADSPRINGS +HEADSTALL +HEADSTALLS +HEADSTAND +HEADSTANDS +HEADSTAY +HEADSTAYS +HEADSTOCK +HEADSTOCKS +HEADSTONE +HEADSTONES +HEADSTREAM +HEADSTREAMS +HEADSTRONG +HEADWAITER +HEADWAITERS +HEADWATER +HEADWATERS +HEADWAY +HEADWAYS +HEADWIND +HEADWINDS +HEADWORD +HEADWORDS +HEADWORK +HEADWORKS +HEADY +HEAL +HEALABLE +HEALED +HEALER +HEALERS +HEALING +HEALS +HEALTH +HEALTHFUL +HEALTHFULNESS +HEALTHFULNESSES +HEALTHIER +HEALTHIEST +HEALTHILY +HEALTHINESS +HEALTHINESSES +HEALTHS +HEALTHY +HEAP +HEAPED +HEAPER +HEAPERS +HEAPING +HEAPS +HEAPY +HEAR +HEARABLE +HEARD +HEARER +HEARERS +HEARING +HEARINGS +HEARKEN +HEARKENED +HEARKENER +HEARKENERS +HEARKENING +HEARKENS +HEARS +HEARSAY +HEARSAYS +HEARSE +HEARSED +HEARSES +HEARSING +HEART +HEARTACHE +HEARTACHES +HEARTBEAT +HEARTBEATS +HEARTBREAK +HEARTBREAKER +HEARTBREAKERS +HEARTBREAKING +HEARTBREAKINGLY +HEARTBREAKS +HEARTBROKEN +HEARTBURN +HEARTBURNING +HEARTBURNINGS +HEARTBURNS +HEARTED +HEARTEN +HEARTENED +HEARTENER +HEARTENERS +HEARTENING +HEARTENINGLY +HEARTENS +HEARTFELT +HEARTFREE +HEARTH +HEARTHRUG +HEARTHRUGS +HEARTHS +HEARTHSTONE +HEARTHSTONES +HEARTIER +HEARTIES +HEARTIEST +HEARTILY +HEARTINESS +HEARTINESSES +HEARTING +HEARTLAND +HEARTLANDS +HEARTLESS +HEARTLESSLY +HEARTLESSNESS +HEARTLESSNESSES +HEARTRENDING +HEARTRENDINGLY +HEARTS +HEARTSEASE +HEARTSEASES +HEARTSICK +HEARTSICKNESS +HEARTSICKNESSES +HEARTSOME +HEARTSOMELY +HEARTSORE +HEARTSTRING +HEARTSTRINGS +HEARTTHROB +HEARTTHROBS +HEARTWARMING +HEARTWOOD +HEARTWOODS +HEARTWORM +HEARTWORMS +HEARTY +HEAT +HEATABLE +HEATED +HEATEDLY +HEATER +HEATERS +HEATH +HEATHBIRD +HEATHBIRDS +HEATHEN +HEATHENDOM +HEATHENDOMS +HEATHENISH +HEATHENISHLY +HEATHENISM +HEATHENISMS +HEATHENIZE +HEATHENIZED +HEATHENIZES +HEATHENIZING +HEATHENRIES +HEATHENRY +HEATHENS +HEATHER +HEATHERED +HEATHERS +HEATHERY +HEATHIER +HEATHIEST +HEATHLAND +HEATHLANDS +HEATHLESS +HEATHLIKE +HEATHS +HEATHY +HEATING +HEATLESS +HEATPROOF +HEATS +HEATSTROKE +HEATSTROKES +HEAUME +HEAUMES +HEAVE +HEAVED +HEAVEN +HEAVENLIER +HEAVENLIEST +HEAVENLINESS +HEAVENLINESSES +HEAVENLY +HEAVENS +HEAVENWARD +HEAVENWARDS +HEAVER +HEAVERS +HEAVES +HEAVIER +HEAVIES +HEAVIEST +HEAVILY +HEAVINESS +HEAVINESSES +HEAVING +HEAVY +HEAVYHEARTED +HEAVYHEARTEDLY +HEAVYSET +HEAVYWEIGHT +HEAVYWEIGHTS +HEBDOMAD +HEBDOMADAL +HEBDOMADALLY +HEBDOMADS +HEBE +HEBEPHRENIA +HEBEPHRENIAS +HEBEPHRENIC +HEBEPHRENICS +HEBES +HEBETATE +HEBETATED +HEBETATES +HEBETATING +HEBETATION +HEBETATIONS +HEBETIC +HEBETUDE +HEBETUDES +HEBETUDINOUS +HEBRAIZATION +HEBRAIZATIONS +HEBRAIZE +HEBRAIZED +HEBRAIZES +HEBRAIZING +HECATOMB +HECATOMBS +HECK +HECKLE +HECKLED +HECKLER +HECKLERS +HECKLES +HECKLING +HECKS +HECTARE +HECTARES +HECTIC +HECTICAL +HECTICALLY +HECTICLY +HECTOGRAM +HECTOGRAMS +HECTOGRAPH +HECTOGRAPHED +HECTOGRAPHING +HECTOGRAPHS +HECTOLITER +HECTOLITERS +HECTOMETER +HECTOMETERS +HECTOR +HECTORED +HECTORING +HECTORINGLY +HECTORS +HEDDLE +HEDDLES +HEDER +HEDERS +HEDGE +HEDGED +HEDGEHOG +HEDGEHOGS +HEDGEHOP +HEDGEHOPPED +HEDGEHOPPER +HEDGEHOPPERS +HEDGEHOPPING +HEDGEHOPS +HEDGEPIG +HEDGEPIGS +HEDGER +HEDGEROW +HEDGEROWS +HEDGERS +HEDGES +HEDGIER +HEDGIEST +HEDGING +HEDGINGLY +HEDGY +HEDONIC +HEDONICALLY +HEDONICS +HEDONISM +HEDONISMS +HEDONIST +HEDONISTIC +HEDONISTICALLY +HEDONISTS +HEED +HEEDED +HEEDER +HEEDERS +HEEDFUL +HEEDFULLY +HEEDFULNESS +HEEDFULNESSES +HEEDING +HEEDLESS +HEEDLESSLY +HEEDLESSNESS +HEEDLESSNESSES +HEEDS +HEEHAW +HEEHAWED +HEEHAWING +HEEHAWS +HEEL +HEELBALL +HEELBALLS +HEELED +HEELER +HEELERS +HEELING +HEELINGS +HEELLESS +HEELPIECE +HEELPIECES +HEELPLATE +HEELPLATES +HEELPOST +HEELPOSTS +HEELS +HEELTAP +HEELTAPS +HEEZE +HEEZED +HEEZES +HEEZING +HEFT +HEFTED +HEFTER +HEFTERS +HEFTIER +HEFTIEST +HEFTILY +HEFTINESS +HEFTINESSES +HEFTING +HEFTS +HEFTY +HEGARI +HEGARIS +HEGEMON +HEGEMONIC +HEGEMONIES +HEGEMONS +HEGEMONY +HEGIRA +HEGIRAS +HEGUMEN +HEGUMENE +HEGUMENES +HEGUMENIES +HEGUMENOS +HEGUMENOSES +HEGUMENS +HEGUMENY +HEH +HEHS +HEIFER +HEIFERS +HEIGH +HEIGHT +HEIGHTEN +HEIGHTENED +HEIGHTENING +HEIGHTENS +HEIGHTH +HEIGHTHS +HEIGHTISM +HEIGHTISMS +HEIGHTS +HEIL +HEILED +HEILING +HEILS +HEIMISH +HEINIE +HEINIES +HEINOUS +HEINOUSLY +HEINOUSNESS +HEINOUSNESSES +HEIR +HEIRDOM +HEIRDOMS +HEIRED +HEIRESS +HEIRESSES +HEIRING +HEIRLESS +HEIRLOOM +HEIRLOOMS +HEIRS +HEIRSHIP +HEIRSHIPS +HEISHI +HEIST +HEISTED +HEISTER +HEISTERS +HEISTING +HEISTS +HEJIRA +HEJIRAS +HEKTARE +HEKTARES +HEKTOGRAM +HEKTOGRAMS +HELD +HELDENTENOR +HELDENTENORS +HELIAC +HELIACAL +HELIACALLY +HELIAST +HELIASTS +HELICAL +HELICALLY +HELICES +HELICITIES +HELICITY +HELICLINE +HELICLINES +HELICOID +HELICOIDAL +HELICOIDS +HELICON +HELICONIA +HELICONIAS +HELICONS +HELICOPT +HELICOPTED +HELICOPTER +HELICOPTERED +HELICOPTERING +HELICOPTERS +HELICOPTING +HELICOPTS +HELICTITE +HELICTITES +HELILIFT +HELILIFTED +HELILIFTING +HELILIFTS +HELIO +HELIOCENTRIC +HELIOGRAM +HELIOGRAMS +HELIOGRAPH +HELIOGRAPHED +HELIOGRAPHIC +HELIOGRAPHING +HELIOGRAPHS +HELIOLATRIES +HELIOLATROUS +HELIOLATRY +HELIOMETER +HELIOMETERS +HELIOMETRIC +HELIOMETRICALLY +HELIOS +HELIOSPHERE +HELIOSPHERES +HELIOSTAT +HELIOSTATS +HELIOTROPE +HELIOTROPES +HELIOTROPIC +HELIOTROPISM +HELIOTROPISMS +HELIOTYPE +HELIOTYPED +HELIOTYPES +HELIOTYPIES +HELIOTYPING +HELIOTYPY +HELIOZOAN +HELIOZOANS +HELIOZOIC +HELIPAD +HELIPADS +HELIPORT +HELIPORTS +HELISTOP +HELISTOPS +HELIUM +HELIUMS +HELIX +HELIXES +HELL +HELLACIOUS +HELLACIOUSLY +HELLBENDER +HELLBENDERS +HELLBENT +HELLBOX +HELLBOXES +HELLBROTH +HELLBROTHS +HELLCAT +HELLCATS +HELLDIVER +HELLDIVERS +HELLEBORE +HELLEBORES +HELLED +HELLENIZATION +HELLENIZATIONS +HELLENIZE +HELLENIZED +HELLENIZES +HELLENIZING +HELLER +HELLERI +HELLERIES +HELLERIS +HELLERS +HELLERY +HELLFIRE +HELLFIRES +HELLGRAMMITE +HELLGRAMMITES +HELLHOLE +HELLHOLES +HELLHOUND +HELLHOUNDS +HELLING +HELLION +HELLIONS +HELLISH +HELLISHLY +HELLISHNESS +HELLISHNESSES +HELLKITE +HELLKITES +HELLO +HELLOED +HELLOES +HELLOING +HELLOS +HELLS +HELLUVA +HELM +HELMED +HELMET +HELMETED +HELMETING +HELMETLIKE +HELMETS +HELMING +HELMINTH +HELMINTHIASES +HELMINTHIASIS +HELMINTHIC +HELMINTHOLOGIES +HELMINTHOLOGY +HELMINTHS +HELMLESS +HELMS +HELMSMAN +HELMSMANSHIP +HELMSMANSHIPS +HELMSMEN +HELO +HELOS +HELOT +HELOTAGE +HELOTAGES +HELOTISM +HELOTISMS +HELOTRIES +HELOTRY +HELOTS +HELP +HELPABLE +HELPED +HELPER +HELPERS +HELPFUL +HELPFULLY +HELPFULNESS +HELPFULNESSES +HELPING +HELPINGS +HELPLESS +HELPLESSLY +HELPLESSNESS +HELPLESSNESSES +HELPMATE +HELPMATES +HELPMEET +HELPMEETS +HELPS +HELVE +HELVED +HELVES +HELVING +HEM +HEMACYTOMETER +HEMACYTOMETERS +HEMAGGLUTINATE +HEMAGGLUTINATED +HEMAGGLUTINATES +HEMAGGLUTININ +HEMAGGLUTININS +HEMAGOG +HEMAGOGS +HEMAL +HEMANGIOMA +HEMANGIOMAS +HEMANGIOMATA +HEMATAL +HEMATEIN +HEMATEINS +HEMATIC +HEMATICS +HEMATIN +HEMATINE +HEMATINES +HEMATINIC +HEMATINICS +HEMATINS +HEMATITE +HEMATITES +HEMATITIC +HEMATOCRIT +HEMATOCRITS +HEMATOGENOUS +HEMATOID +HEMATOLOGIC +HEMATOLOGICAL +HEMATOLOGIES +HEMATOLOGIST +HEMATOLOGISTS +HEMATOLOGY +HEMATOMA +HEMATOMAS +HEMATOMATA +HEMATOPHAGOUS +HEMATOPOIESES +HEMATOPOIESIS +HEMATOPOIETIC +HEMATOPORPHYRIN +HEMATOSES +HEMATOSIS +HEMATOXYLIN +HEMATOXYLINS +HEMATOZOA +HEMATOZOON +HEMATURIA +HEMATURIAS +HEMATURIC +HEME +HEMELYTRA +HEMELYTRON +HEMELYTRUM +HEMEROCALLIS +HEMEROCALLISES +HEMERYTHRIN +HEMERYTHRINS +HEMES +HEMIACETAL +HEMIACETALS +HEMIALGIA +HEMIALGIAS +HEMIC +HEMICELLULOSE +HEMICELLULOSES +HEMICHORDATE +HEMICHORDATES +HEMICYCLE +HEMICYCLES +HEMIHEDRAL +HEMIHYDRATE +HEMIHYDRATED +HEMIHYDRATES +HEMIMETABOLOUS +HEMIMORPHIC +HEMIMORPHISM +HEMIMORPHISMS +HEMIN +HEMINS +HEMIOLA +HEMIOLAS +HEMIOLIA +HEMIOLIAS +HEMIPLEGIA +HEMIPLEGIAS +HEMIPLEGIC +HEMIPLEGICS +HEMIPTER +HEMIPTERAN +HEMIPTERANS +HEMIPTEROUS +HEMIPTERS +HEMISPHERE +HEMISPHERES +HEMISPHERIC +HEMISPHERICAL +HEMISTICH +HEMISTICHS +HEMITROPE +HEMITROPES +HEMIZYGOUS +HEMLINE +HEMLINES +HEMLOCK +HEMLOCKS +HEMMED +HEMMER +HEMMERS +HEMMING +HEMOCHROMATOSES +HEMOCHROMATOSIS +HEMOCOEL +HEMOCOELS +HEMOCYANIN +HEMOCYANINS +HEMOCYTE +HEMOCYTES +HEMOCYTOMETER +HEMOCYTOMETERS +HEMODIALYSES +HEMODIALYSIS +HEMODILUTION +HEMODILUTIONS +HEMODYNAMIC +HEMODYNAMICALLY +HEMODYNAMICS +HEMOFLAGELLATE +HEMOFLAGELLATES +HEMOGLOBIN +HEMOGLOBINS +HEMOGLOBINURIA +HEMOGLOBINURIAS +HEMOGLOBINURIC +HEMOID +HEMOLYMPH +HEMOLYMPHS +HEMOLYSES +HEMOLYSIN +HEMOLYSINS +HEMOLYSIS +HEMOLYTIC +HEMOLYZE +HEMOLYZED +HEMOLYZES +HEMOLYZING +HEMOPHILE +HEMOPHILES +HEMOPHILIA +HEMOPHILIAC +HEMOPHILIACS +HEMOPHILIAS +HEMOPHILIC +HEMOPHILICS +HEMOPOIESES +HEMOPOIESIS +HEMOPOIETIC +HEMOPROTEIN +HEMOPROTEINS +HEMOPTYSES +HEMOPTYSIS +HEMORRHAGE +HEMORRHAGED +HEMORRHAGES +HEMORRHAGIC +HEMORRHAGING +HEMORRHOID +HEMORRHOIDAL +HEMORRHOIDALS +HEMORRHOIDS +HEMOSIDERIN +HEMOSIDERINS +HEMOSTASES +HEMOSTASIS +HEMOSTAT +HEMOSTATIC +HEMOSTATICS +HEMOSTATS +HEMOTOXIC +HEMOTOXIN +HEMOTOXINS +HEMP +HEMPEN +HEMPIE +HEMPIER +HEMPIEST +HEMPLIKE +HEMPS +HEMPSEED +HEMPSEEDS +HEMPWEED +HEMPWEEDS +HEMPY +HEMS +HEMSTITCH +HEMSTITCHED +HEMSTITCHER +HEMSTITCHERS +HEMSTITCHES +HEMSTITCHING +HEN +HENBANE +HENBANES +HENBIT +HENBITS +HENCE +HENCEFORTH +HENCEFORWARD +HENCHMAN +HENCHMEN +HENCOOP +HENCOOPS +HENDECASYLLABIC +HENDECASYLLABLE +HENDIADYS +HENDIADYSES +HENEQUEN +HENEQUENS +HENEQUIN +HENEQUINS +HENGE +HENGES +HENHOUSE +HENHOUSES +HENIQUEN +HENIQUENS +HENLEY +HENLEYS +HENLIKE +HENNA +HENNAED +HENNAING +HENNAS +HENNERIES +HENNERY +HENNISH +HENNISHLY +HENOTHEISM +HENOTHEISMS +HENOTHEIST +HENOTHEISTIC +HENOTHEISTS +HENPECK +HENPECKED +HENPECKING +HENPECKS +HENRIES +HENRY +HENRYS +HENS +HENT +HENTED +HENTING +HENTS +HEP +HEPARIN +HEPARINIZED +HEPARINS +HEPATECTOMIES +HEPATECTOMIZED +HEPATECTOMY +HEPATIC +HEPATICA +HEPATICAE +HEPATICAS +HEPATICS +HEPATITIDES +HEPATITIS +HEPATITISES +HEPATIZE +HEPATIZED +HEPATIZES +HEPATIZING +HEPATOCELLULAR +HEPATOCYTE +HEPATOCYTES +HEPATOMA +HEPATOMAS +HEPATOMATA +HEPATOMEGALIES +HEPATOMEGALY +HEPATOPANCREAS +HEPATOTOXIC +HEPATOTOXICITY +HEPCAT +HEPCATS +HEPPER +HEPPEST +HEPTACHLOR +HEPTACHLORS +HEPTAD +HEPTADS +HEPTAGON +HEPTAGONAL +HEPTAGONS +HEPTAMETER +HEPTAMETERS +HEPTANE +HEPTANES +HEPTARCH +HEPTARCHIES +HEPTARCHS +HEPTARCHY +HEPTOSE +HEPTOSES +HER +HERALD +HERALDED +HERALDIC +HERALDICALLY +HERALDING +HERALDIST +HERALDISTS +HERALDRIES +HERALDRY +HERALDS +HERB +HERBACEOUS +HERBAGE +HERBAGED +HERBAGES +HERBAL +HERBALISM +HERBALISMS +HERBALIST +HERBALISTS +HERBALS +HERBARIA +HERBARIAL +HERBARIUM +HERBARIUMS +HERBED +HERBICIDAL +HERBICIDALLY +HERBICIDE +HERBICIDES +HERBIER +HERBIEST +HERBIVORE +HERBIVORES +HERBIVORIES +HERBIVOROUS +HERBIVORY +HERBLESS +HERBLIKE +HERBOLOGIES +HERBOLOGY +HERBS +HERBY +HERCULEAN +HERCULES +HERCULESES +HERD +HERDED +HERDER +HERDERS +HERDIC +HERDICS +HERDING +HERDLIKE +HERDMAN +HERDMEN +HERDS +HERDSMAN +HERDSMEN +HERE +HEREABOUT +HEREABOUTS +HEREAFTER +HEREAFTERS +HEREAT +HEREAWAY +HEREAWAYS +HEREBY +HEREDES +HEREDITAMENT +HEREDITAMENTS +HEREDITARIAN +HEREDITARIANS +HEREDITARILY +HEREDITARY +HEREDITIES +HEREDITY +HEREIN +HEREINABOVE +HEREINAFTER +HEREINBEFORE +HEREINBELOW +HEREINTO +HEREOF +HEREON +HERES +HERESIARCH +HERESIARCHS +HERESIES +HERESY +HERETIC +HERETICAL +HERETICALLY +HERETICS +HERETO +HERETOFORE +HERETRICES +HERETRIX +HERETRIXES +HEREUNDER +HEREUNTO +HEREUPON +HEREWITH +HERIOT +HERIOTS +HERITABILITIES +HERITABILITY +HERITABLE +HERITABLY +HERITAGE +HERITAGES +HERITOR +HERITORS +HERITRICES +HERITRIX +HERITRIXES +HERL +HERLS +HERM +HERMA +HERMAE +HERMAEAN +HERMAI +HERMAPHRODITE +HERMAPHRODITES +HERMAPHRODITIC +HERMAPHRODITISM +HERMATYPIC +HERMENEUTIC +HERMENEUTICAL +HERMENEUTICALLY +HERMENEUTICS +HERMETIC +HERMETICAL +HERMETICALLY +HERMETICISM +HERMETICISMS +HERMETISM +HERMETISMS +HERMETIST +HERMETISTS +HERMIT +HERMITAGE +HERMITAGES +HERMITIC +HERMITISM +HERMITISMS +HERMITRIES +HERMITRY +HERMITS +HERMS +HERN +HERNIA +HERNIAE +HERNIAL +HERNIAS +HERNIATE +HERNIATED +HERNIATES +HERNIATING +HERNIATION +HERNIATIONS +HERNS +HERO +HEROES +HEROIC +HEROICAL +HEROICALLY +HEROICIZE +HEROICIZED +HEROICIZES +HEROICIZING +HEROICOMIC +HEROICOMICAL +HEROICS +HEROIN +HEROINE +HEROINES +HEROINISM +HEROINISMS +HEROINS +HEROISM +HEROISMS +HEROIZE +HEROIZED +HEROIZES +HEROIZING +HERON +HERONRIES +HERONRY +HERONS +HEROS +HERPES +HERPESVIRUS +HERPESVIRUSES +HERPETIC +HERPETOLOGICAL +HERPETOLOGIES +HERPETOLOGIST +HERPETOLOGISTS +HERPETOLOGY +HERRENVOLK +HERRENVOLKS +HERRIED +HERRIES +HERRING +HERRINGBONE +HERRINGBONED +HERRINGBONES +HERRINGBONING +HERRINGS +HERRY +HERRYING +HERS +HERSELF +HERSTORIES +HERSTORY +HERTZ +HERTZES +HES +HESITANCE +HESITANCES +HESITANCIES +HESITANCY +HESITANT +HESITANTLY +HESITATE +HESITATED +HESITATER +HESITATERS +HESITATES +HESITATING +HESITATINGLY +HESITATION +HESITATIONS +HESITATOR +HESITATORS +HESPERIDIA +HESPERIDIN +HESPERIDINS +HESPERIDIUM +HESSIAN +HESSIANS +HESSITE +HESSITES +HESSONITE +HESSONITES +HEST +HESTS +HET +HETAERA +HETAERAE +HETAERAS +HETAERIC +HETAERISM +HETAERISMS +HETAIRA +HETAIRAI +HETAIRAS +HETAIRISM +HETAIRISMS +HETERO +HETEROATOM +HETEROATOMS +HETEROAUXIN +HETEROAUXINS +HETEROCERCAL +HETEROCHROMATIC +HETEROCHROMATIN +HETEROCLITE +HETEROCLITES +HETEROCYCLE +HETEROCYCLES +HETEROCYCLIC +HETEROCYCLICS +HETEROCYST +HETEROCYSTOUS +HETEROCYSTS +HETERODOX +HETERODOXIES +HETERODOXY +HETERODUPLEX +HETERODUPLEXES +HETERODYNE +HETERODYNED +HETERODYNES +HETERODYNING +HETEROECIOUS +HETEROECISM +HETEROECISMS +HETEROGAMETE +HETEROGAMETES +HETEROGAMETIC +HETEROGAMETIES +HETEROGAMETY +HETEROGAMIES +HETEROGAMOUS +HETEROGAMY +HETEROGENEITIES +HETEROGENEITY +HETEROGENEOUS +HETEROGENEOUSLY +HETEROGENIES +HETEROGENOUS +HETEROGENY +HETEROGONIC +HETEROGONIES +HETEROGONY +HETEROGRAFT +HETEROGRAFTS +HETEROKARYON +HETEROKARYONS +HETEROKARYOSES +HETEROKARYOSIS +HETEROKARYOTIC +HETEROLOGOUS +HETEROLOGOUSLY +HETEROLYSES +HETEROLYSIS +HETEROLYTIC +HETEROMORPHIC +HETEROMORPHISM +HETEROMORPHISMS +HETERONOMIES +HETERONOMOUS +HETERONOMY +HETERONYM +HETERONYMS +HETEROPHIL +HETEROPHILE +HETEROPHONIES +HETEROPHONY +HETEROPHYLLIES +HETEROPHYLLOUS +HETEROPHYLLY +HETEROPLOID +HETEROPLOIDIES +HETEROPLOIDS +HETEROPLOIDY +HETEROPTEROUS +HETEROS +HETEROSES +HETEROSEXUAL +HETEROSEXUALITY +HETEROSEXUALLY +HETEROSEXUALS +HETEROSIS +HETEROSPORIES +HETEROSPOROUS +HETEROSPORY +HETEROTHALLIC +HETEROTHALLISM +HETEROTHALLISMS +HETEROTIC +HETEROTOPIC +HETEROTROPH +HETEROTROPHIC +HETEROTROPHIES +HETEROTROPHS +HETEROTROPHY +HETEROTYPIC +HETEROZYGOSES +HETEROZYGOSIS +HETEROZYGOSITY +HETEROZYGOTE +HETEROZYGOTES +HETEROZYGOUS +HETH +HETHS +HETMAN +HETMANS +HETS +HEUCH +HEUCHS +HEUGH +HEUGHS +HEULANDITE +HEULANDITES +HEURISTIC +HEURISTICALLY +HEURISTICS +HEW +HEWABLE +HEWED +HEWER +HEWERS +HEWING +HEWN +HEWS +HEX +HEXACHLORETHANE +HEXACHLOROPHENE +HEXACHORD +HEXACHORDS +HEXAD +HEXADE +HEXADECIMAL +HEXADECIMALS +HEXADES +HEXADIC +HEXADS +HEXAGON +HEXAGONAL +HEXAGONALLY +HEXAGONS +HEXAGRAM +HEXAGRAMS +HEXAHEDRA +HEXAHEDRON +HEXAHEDRONS +HEXAHYDRATE +HEXAHYDRATES +HEXAMETER +HEXAMETERS +HEXAMETHONIUM +HEXAMETHONIUMS +HEXAMINE +HEXAMINES +HEXANE +HEXANES +HEXAPLA +HEXAPLAR +HEXAPLAS +HEXAPLOID +HEXAPLOIDIES +HEXAPLOIDS +HEXAPLOIDY +HEXAPOD +HEXAPODIES +HEXAPODS +HEXAPODY +HEXARCHIES +HEXARCHY +HEXASTICH +HEXASTICHS +HEXED +HEXER +HEXEREI +HEXEREIS +HEXERS +HEXES +HEXING +HEXOBARBITAL +HEXOBARBITALS +HEXOKINASE +HEXOKINASES +HEXONE +HEXONES +HEXOSAMINIDASE +HEXOSAMINIDASES +HEXOSAN +HEXOSANS +HEXOSE +HEXOSES +HEXYL +HEXYLIC +HEXYLRESORCINOL +HEXYLS +HEY +HEYDAY +HEYDAYS +HEYDEY +HEYDEYS +HI +HIATAL +HIATUS +HIATUSES +HIBACHI +HIBACHIS +HIBAKUSHA +HIBERNACULA +HIBERNACULUM +HIBERNAL +HIBERNATE +HIBERNATED +HIBERNATES +HIBERNATING +HIBERNATION +HIBERNATIONS +HIBERNATOR +HIBERNATORS +HIBISCUS +HIBISCUSES +HIC +HICCOUGH +HICCOUGHED +HICCOUGHING +HICCOUGHS +HICCUP +HICCUPED +HICCUPING +HICCUPPED +HICCUPPING +HICCUPS +HICK +HICKEY +HICKEYS +HICKIE +HICKIES +HICKISH +HICKORIES +HICKORY +HICKS +HID +HIDABLE +HIDALGO +HIDALGOS +HIDDEN +HIDDENITE +HIDDENITES +HIDDENLY +HIDDENNESS +HIDDENNESSES +HIDE +HIDEAWAY +HIDEAWAYS +HIDEBOUND +HIDED +HIDELESS +HIDEOSITIES +HIDEOSITY +HIDEOUS +HIDEOUSLY +HIDEOUSNESS +HIDEOUSNESSES +HIDEOUT +HIDEOUTS +HIDER +HIDERS +HIDES +HIDING +HIDINGS +HIDROSES +HIDROSIS +HIDROTIC +HIDROTICS +HIE +HIED +HIEING +HIEMAL +HIERARCH +HIERARCHAL +HIERARCHIC +HIERARCHICAL +HIERARCHICALLY +HIERARCHIES +HIERARCHIZE +HIERARCHIZED +HIERARCHIZES +HIERARCHIZING +HIERARCHS +HIERARCHY +HIERATIC +HIERATICALLY +HIERODULE +HIERODULES +HIEROGLYPH +HIEROGLYPHIC +HIEROGLYPHICAL +HIEROGLYPHICS +HIEROGLYPHS +HIEROLOGIES +HIEROLOGY +HIEROPHANT +HIEROPHANTIC +HIEROPHANTS +HIERURGIES +HIERURGY +HIES +HIFALUTIN +HIGGLE +HIGGLED +HIGGLER +HIGGLERS +HIGGLES +HIGGLING +HIGH +HIGHBALL +HIGHBALLED +HIGHBALLING +HIGHBALLS +HIGHBINDER +HIGHBINDERS +HIGHBORN +HIGHBOY +HIGHBOYS +HIGHBRED +HIGHBROW +HIGHBROWED +HIGHBROWISM +HIGHBROWISMS +HIGHBROWS +HIGHBUSH +HIGHCHAIR +HIGHCHAIRS +HIGHER +HIGHEST +HIGHFALUTIN +HIGHFLIER +HIGHFLIERS +HIGHFLYER +HIGHFLYERS +HIGHJACK +HIGHJACKED +HIGHJACKING +HIGHJACKS +HIGHLAND +HIGHLANDER +HIGHLANDERS +HIGHLANDS +HIGHLIFE +HIGHLIFES +HIGHLIGHT +HIGHLIGHTED +HIGHLIGHTING +HIGHLIGHTS +HIGHLY +HIGHNESS +HIGHNESSES +HIGHRISE +HIGHRISES +HIGHROAD +HIGHROADS +HIGHS +HIGHSPOT +HIGHSPOTS +HIGHT +HIGHTAIL +HIGHTAILED +HIGHTAILING +HIGHTAILS +HIGHTED +HIGHTH +HIGHTHS +HIGHTING +HIGHTOP +HIGHTOPS +HIGHTS +HIGHWAY +HIGHWAYMAN +HIGHWAYMEN +HIGHWAYS +HIJAB +HIJABS +HIJACK +HIJACKED +HIJACKER +HIJACKERS +HIJACKING +HIJACKS +HIJINKS +HIJRA +HIJRAH +HIJRAHS +HIJRAS +HIKE +HIKED +HIKER +HIKERS +HIKES +HIKING +HILA +HILAR +HILARIOUS +HILARIOUSLY +HILARIOUSNESS +HILARIOUSNESSES +HILARITIES +HILARITY +HILDING +HILDINGS +HILI +HILL +HILLBILLIES +HILLBILLY +HILLCREST +HILLCRESTS +HILLED +HILLER +HILLERS +HILLIER +HILLIEST +HILLINESS +HILLINESSES +HILLING +HILLO +HILLOA +HILLOAED +HILLOAING +HILLOAS +HILLOCK +HILLOCKED +HILLOCKS +HILLOCKY +HILLOED +HILLOES +HILLOING +HILLOS +HILLS +HILLSIDE +HILLSIDES +HILLSLOPE +HILLSLOPES +HILLTOP +HILLTOPS +HILLY +HILT +HILTED +HILTING +HILTLESS +HILTS +HILUM +HILUS +HIM +HIMATIA +HIMATION +HIMATIONS +HIMS +HIMSELF +HIN +HIND +HINDBRAIN +HINDBRAINS +HINDER +HINDERED +HINDERER +HINDERERS +HINDERING +HINDERS +HINDGUT +HINDGUTS +HINDMOST +HINDQUARTER +HINDQUARTERS +HINDRANCE +HINDRANCES +HINDS +HINDSHANK +HINDSHANKS +HINDSIGHT +HINDSIGHTS +HINGE +HINGED +HINGER +HINGERS +HINGES +HINGING +HINKIER +HINKIEST +HINKY +HINNIED +HINNIES +HINNY +HINNYING +HINS +HINT +HINTED +HINTER +HINTERLAND +HINTERLANDS +HINTERS +HINTING +HINTS +HIP +HIPBONE +HIPBONES +HIPHUGGER +HIPLESS +HIPLIKE +HIPLINE +HIPLINES +HIPLY +HIPNESS +HIPNESSES +HIPPARCH +HIPPARCHS +HIPPED +HIPPER +HIPPEST +HIPPIE +HIPPIEDOM +HIPPIEDOMS +HIPPIEISH +HIPPIENESS +HIPPIENESSES +HIPPIER +HIPPIES +HIPPIEST +HIPPINESS +HIPPINESSES +HIPPING +HIPPISH +HIPPO +HIPPOCAMPAL +HIPPOCAMPI +HIPPOCAMPUS +HIPPOCRAS +HIPPOCRASES +HIPPODROME +HIPPODROMES +HIPPOGRIFF +HIPPOGRIFFS +HIPPOPOTAMI +HIPPOPOTAMUS +HIPPOPOTAMUSES +HIPPOS +HIPPY +HIPS +HIPSHOT +HIPSTER +HIPSTERISM +HIPSTERISMS +HIPSTERS +HIRABLE +HIRAGANA +HIRAGANAS +HIRCINE +HIRE +HIREABLE +HIRED +HIREE +HIREES +HIRELING +HIRELINGS +HIRER +HIRERS +HIRES +HIRING +HIRPLE +HIRPLED +HIRPLES +HIRPLING +HIRSEL +HIRSELED +HIRSELING +HIRSELLED +HIRSELLING +HIRSELS +HIRSLE +HIRSLED +HIRSLES +HIRSLING +HIRSUTE +HIRSUTENESS +HIRSUTENESSES +HIRSUTISM +HIRSUTISMS +HIRUDIN +HIRUDINS +HIS +HISN +HISPANIDAD +HISPANIDADS +HISPANISM +HISPANISMS +HISPID +HISPIDITIES +HISPIDITY +HISS +HISSED +HISSELF +HISSER +HISSERS +HISSES +HISSIER +HISSIES +HISSIEST +HISSING +HISSINGS +HISSY +HIST +HISTAMIN +HISTAMINASE +HISTAMINASES +HISTAMINE +HISTAMINERGIC +HISTAMINES +HISTAMINS +HISTED +HISTIDIN +HISTIDINE +HISTIDINES +HISTIDINS +HISTING +HISTIOCYTE +HISTIOCYTES +HISTIOCYTIC +HISTOCHEMICAL +HISTOCHEMICALLY +HISTOCHEMISTRY +HISTOGEN +HISTOGENESES +HISTOGENESIS +HISTOGENETIC +HISTOGENS +HISTOGRAM +HISTOGRAMS +HISTOID +HISTOLOGIC +HISTOLOGICAL +HISTOLOGICALLY +HISTOLOGIES +HISTOLOGIST +HISTOLOGISTS +HISTOLOGY +HISTOLYSES +HISTOLYSIS +HISTONE +HISTONES +HISTOPATHOLOGIC +HISTOPATHOLOGY +HISTOPHYSIOLOGY +HISTOPLASMOSES +HISTOPLASMOSIS +HISTORIAN +HISTORIANS +HISTORIC +HISTORICAL +HISTORICALLY +HISTORICALNESS +HISTORICISM +HISTORICISMS +HISTORICIST +HISTORICISTS +HISTORICITIES +HISTORICITY +HISTORICIZE +HISTORICIZED +HISTORICIZES +HISTORICIZING +HISTORIED +HISTORIES +HISTORIOGRAPHER +HISTORIOGRAPHIC +HISTORIOGRAPHY +HISTORY +HISTRIONIC +HISTRIONICALLY +HISTRIONICS +HISTS +HIT +HITCH +HITCHED +HITCHER +HITCHERS +HITCHES +HITCHHIKE +HITCHHIKED +HITCHHIKER +HITCHHIKERS +HITCHHIKES +HITCHHIKING +HITCHING +HITHER +HITHERMOST +HITHERTO +HITHERWARD +HITLESS +HITMAN +HITMEN +HITS +HITTABLE +HITTER +HITTERS +HITTING +HIVE +HIVED +HIVELESS +HIVES +HIVING +HIZZONER +HIZZONERS +HM +HMM +HO +HOACTZIN +HOACTZINES +HOACTZINS +HOAGIE +HOAGIES +HOAGY +HOAR +HOARD +HOARDED +HOARDER +HOARDERS +HOARDING +HOARDINGS +HOARDS +HOARFROST +HOARFROSTS +HOARIER +HOARIEST +HOARILY +HOARINESS +HOARINESSES +HOARS +HOARSE +HOARSELY +HOARSEN +HOARSENED +HOARSENESS +HOARSENESSES +HOARSENING +HOARSENS +HOARSER +HOARSEST +HOARY +HOATZIN +HOATZINES +HOATZINS +HOAX +HOAXED +HOAXER +HOAXERS +HOAXES +HOAXING +HOB +HOBBED +HOBBER +HOBBERS +HOBBIES +HOBBING +HOBBIT +HOBBITS +HOBBLE +HOBBLEBUSH +HOBBLEBUSHES +HOBBLED +HOBBLEDEHOY +HOBBLEDEHOYS +HOBBLER +HOBBLERS +HOBBLES +HOBBLING +HOBBY +HOBBYHORSE +HOBBYHORSES +HOBBYIST +HOBBYISTS +HOBGOBLIN +HOBGOBLINS +HOBLIKE +HOBNAIL +HOBNAILED +HOBNAILING +HOBNAILS +HOBNOB +HOBNOBBED +HOBNOBBER +HOBNOBBERS +HOBNOBBING +HOBNOBS +HOBO +HOBOED +HOBOES +HOBOING +HOBOISM +HOBOISMS +HOBOS +HOBS +HOCK +HOCKED +HOCKER +HOCKERS +HOCKEY +HOCKEYS +HOCKING +HOCKS +HOCKSHOP +HOCKSHOPS +HOCUS +HOCUSED +HOCUSES +HOCUSING +HOCUSSED +HOCUSSES +HOCUSSING +HOD +HODAD +HODADDIES +HODADDY +HODADS +HODDEN +HODDENS +HODDIN +HODDINS +HODGEPODGE +HODGEPODGES +HODOSCOPE +HODOSCOPES +HODS +HOE +HOECAKE +HOECAKES +HOED +HOEDOWN +HOEDOWNS +HOEING +HOELIKE +HOER +HOERS +HOES +HOG +HOGAN +HOGANS +HOGBACK +HOGBACKS +HOGFISH +HOGFISHES +HOGG +HOGGED +HOGGER +HOGGERS +HOGGET +HOGGETS +HOGGING +HOGGISH +HOGGISHLY +HOGGISHNESS +HOGGISHNESSES +HOGGS +HOGLIKE +HOGMANAY +HOGMANAYS +HOGMANE +HOGMANES +HOGMENAY +HOGMENAYS +HOGNOSE +HOGNOSES +HOGNUT +HOGNUTS +HOGS +HOGSHEAD +HOGSHEADS +HOGTIE +HOGTIED +HOGTIEING +HOGTIES +HOGTYING +HOGWASH +HOGWASHES +HOGWEED +HOGWEEDS +HOICK +HOICKED +HOICKING +HOICKS +HOIDEN +HOIDENED +HOIDENING +HOIDENS +HOISE +HOISED +HOISES +HOISING +HOIST +HOISTED +HOISTER +HOISTERS +HOISTING +HOISTS +HOKE +HOKED +HOKES +HOKEY +HOKEYNESS +HOKEYNESSES +HOKEYPOKEY +HOKEYPOKEYS +HOKIER +HOKIEST +HOKILY +HOKINESS +HOKINESSES +HOKING +HOKKU +HOKUM +HOKUMS +HOKYPOKIES +HOKYPOKY +HOLANDRIC +HOLARD +HOLARDS +HOLD +HOLDABLE +HOLDALL +HOLDALLS +HOLDBACK +HOLDBACKS +HOLDDOWN +HOLDDOWNS +HOLDEN +HOLDER +HOLDERS +HOLDFAST +HOLDFASTS +HOLDING +HOLDINGS +HOLDOUT +HOLDOUTS +HOLDOVER +HOLDOVERS +HOLDS +HOLDUP +HOLDUPS +HOLE +HOLED +HOLELESS +HOLES +HOLEY +HOLIBUT +HOLIBUTS +HOLIDAY +HOLIDAYED +HOLIDAYER +HOLIDAYERS +HOLIDAYING +HOLIDAYMAKER +HOLIDAYMAKERS +HOLIDAYS +HOLIER +HOLIES +HOLIEST +HOLILY +HOLINESS +HOLINESSES +HOLING +HOLISM +HOLISMS +HOLIST +HOLISTIC +HOLISTICALLY +HOLISTS +HOLK +HOLKED +HOLKING +HOLKS +HOLLA +HOLLAED +HOLLAING +HOLLAND +HOLLANDAISE +HOLLANDAISES +HOLLANDS +HOLLAS +HOLLER +HOLLERED +HOLLERING +HOLLERS +HOLLIES +HOLLO +HOLLOA +HOLLOAED +HOLLOAING +HOLLOAS +HOLLOED +HOLLOES +HOLLOING +HOLLOO +HOLLOOED +HOLLOOING +HOLLOOS +HOLLOS +HOLLOW +HOLLOWARE +HOLLOWARES +HOLLOWED +HOLLOWER +HOLLOWEST +HOLLOWING +HOLLOWLY +HOLLOWNESS +HOLLOWNESSES +HOLLOWS +HOLLOWWARE +HOLLOWWARES +HOLLY +HOLLYHOCK +HOLLYHOCKS +HOLM +HOLMIC +HOLMIUM +HOLMIUMS +HOLMS +HOLOBLASTIC +HOLOCAUST +HOLOCAUSTS +HOLOCENE +HOLOCRINE +HOLOENZYME +HOLOENZYMES +HOLOGAMIES +HOLOGAMY +HOLOGRAM +HOLOGRAMS +HOLOGRAPH +HOLOGRAPHED +HOLOGRAPHER +HOLOGRAPHERS +HOLOGRAPHIC +HOLOGRAPHICALLY +HOLOGRAPHIES +HOLOGRAPHING +HOLOGRAPHS +HOLOGRAPHY +HOLOGYNIC +HOLOGYNIES +HOLOGYNY +HOLOHEDRAL +HOLOMETABOLISM +HOLOMETABOLISMS +HOLOMETABOLOUS +HOLOPHRASTIC +HOLOPHYTE +HOLOPHYTES +HOLOPHYTIC +HOLOTHURIAN +HOLOTHURIANS +HOLOTYPE +HOLOTYPES +HOLOTYPIC +HOLOZOIC +HOLP +HOLPEN +HOLS +HOLSTEIN +HOLSTEINS +HOLSTER +HOLSTERED +HOLSTERING +HOLSTERS +HOLT +HOLTS +HOLY +HOLYDAY +HOLYDAYS +HOLYSTONE +HOLYSTONED +HOLYSTONES +HOLYSTONING +HOLYTIDE +HOLYTIDES +HOMAGE +HOMAGED +HOMAGER +HOMAGERS +HOMAGES +HOMAGING +HOMBRE +HOMBRES +HOMBURG +HOMBURGS +HOME +HOMEBODIES +HOMEBODY +HOMEBOUND +HOMEBOY +HOMEBOYS +HOMEBRED +HOMEBREDS +HOMEBREW +HOMEBREWS +HOMEBUILT +HOMECOMER +HOMECOMERS +HOMECOMING +HOMECOMINGS +HOMED +HOMEGIRL +HOMEGIRLS +HOMEGROWN +HOMELAND +HOMELANDS +HOMELESS +HOMELESSNESS +HOMELESSNESSES +HOMELIER +HOMELIEST +HOMELIKE +HOMELINESS +HOMELINESSES +HOMELY +HOMEMADE +HOMEMAKER +HOMEMAKERS +HOMEMAKING +HOMEMAKINGS +HOMEOBOX +HOMEOBOXES +HOMEOMORPHIC +HOMEOMORPHISM +HOMEOMORPHISMS +HOMEOPATH +HOMEOPATHIC +HOMEOPATHICALLY +HOMEOPATHIES +HOMEOPATHS +HOMEOPATHY +HOMEOSTASES +HOMEOSTASIS +HOMEOSTATIC +HOMEOTHERM +HOMEOTHERMIC +HOMEOTHERMIES +HOMEOTHERMS +HOMEOTHERMY +HOMEOTIC +HOMEOWNER +HOMEOWNERS +HOMEPAGE +HOMEPAGES +HOMEPLACE +HOMEPLACES +HOMEPORT +HOMEPORTED +HOMEPORTING +HOMEPORTS +HOMER +HOMERED +HOMERIC +HOMERING +HOMEROOM +HOMEROOMS +HOMERS +HOMES +HOMESCHOOL +HOMESCHOOLED +HOMESCHOOLER +HOMESCHOOLERS +HOMESCHOOLING +HOMESCHOOLS +HOMESICK +HOMESICKNESS +HOMESICKNESSES +HOMESITE +HOMESITES +HOMESPUN +HOMESPUNS +HOMESTAND +HOMESTANDS +HOMESTAY +HOMESTAYS +HOMESTEAD +HOMESTEADED +HOMESTEADER +HOMESTEADERS +HOMESTEADING +HOMESTEADS +HOMESTRETCH +HOMESTRETCHES +HOMETOWN +HOMETOWNS +HOMEWARD +HOMEWARDS +HOMEWORK +HOMEWORKS +HOMEY +HOMEYNESS +HOMEYNESSES +HOMEYS +HOMICIDAL +HOMICIDALLY +HOMICIDE +HOMICIDES +HOMIE +HOMIER +HOMIES +HOMIEST +HOMILETIC +HOMILETICAL +HOMILETICS +HOMILIES +HOMILIST +HOMILISTS +HOMILY +HOMINES +HOMINESS +HOMINESSES +HOMING +HOMINIAN +HOMINIANS +HOMINID +HOMINIDS +HOMINIES +HOMININE +HOMINIZATION +HOMINIZATIONS +HOMINIZE +HOMINIZED +HOMINIZES +HOMINIZING +HOMINOID +HOMINOIDS +HOMINY +HOMMOCK +HOMMOCKS +HOMMOS +HOMMOSES +HOMO +HOMOCERCAL +HOMOCERCIES +HOMOCERCY +HOMOEROTIC +HOMOEROTICISM +HOMOEROTICISMS +HOMOGAMETIC +HOMOGAMIES +HOMOGAMOUS +HOMOGAMY +HOMOGENATE +HOMOGENATES +HOMOGENEITIES +HOMOGENEITY +HOMOGENEOUS +HOMOGENEOUSLY +HOMOGENEOUSNESS +HOMOGENIES +HOMOGENISATION +HOMOGENISATIONS +HOMOGENISE +HOMOGENISED +HOMOGENISES +HOMOGENISING +HOMOGENIZATION +HOMOGENIZATIONS +HOMOGENIZE +HOMOGENIZED +HOMOGENIZER +HOMOGENIZERS +HOMOGENIZES +HOMOGENIZING +HOMOGENOUS +HOMOGENY +HOMOGONIES +HOMOGONY +HOMOGRAFT +HOMOGRAFTS +HOMOGRAPH +HOMOGRAPHIC +HOMOGRAPHS +HOMOIOTHERM +HOMOIOTHERMIC +HOMOIOTHERMS +HOMOIOUSIAN +HOMOIOUSIANS +HOMOLOG +HOMOLOGATE +HOMOLOGATED +HOMOLOGATES +HOMOLOGATING +HOMOLOGATION +HOMOLOGATIONS +HOMOLOGIC +HOMOLOGICAL +HOMOLOGICALLY +HOMOLOGIES +HOMOLOGIZE +HOMOLOGIZED +HOMOLOGIZER +HOMOLOGIZERS +HOMOLOGIZES +HOMOLOGIZING +HOMOLOGOUS +HOMOLOGS +HOMOLOGUE +HOMOLOGUES +HOMOLOGY +HOMOLYSES +HOMOLYSIS +HOMOLYTIC +HOMOMORPHIC +HOMOMORPHISM +HOMOMORPHISMS +HOMONUCLEAR +HOMONYM +HOMONYMIC +HOMONYMIES +HOMONYMOUS +HOMONYMOUSLY +HOMONYMS +HOMONYMY +HOMOOUSIAN +HOMOOUSIANS +HOMOPHILE +HOMOPHILES +HOMOPHOBE +HOMOPHOBES +HOMOPHOBIA +HOMOPHOBIAS +HOMOPHOBIC +HOMOPHONE +HOMOPHONES +HOMOPHONIC +HOMOPHONIES +HOMOPHONOUS +HOMOPHONY +HOMOPHYLIES +HOMOPHYLY +HOMOPLASIES +HOMOPLASTIC +HOMOPLASY +HOMOPOLAR +HOMOPOLYMER +HOMOPOLYMERIC +HOMOPOLYMERS +HOMOPTERAN +HOMOPTERANS +HOMOPTEROUS +HOMOS +HOMOSCEDASTIC +HOMOSEX +HOMOSEXES +HOMOSEXUAL +HOMOSEXUALITIES +HOMOSEXUALITY +HOMOSEXUALLY +HOMOSEXUALS +HOMOSOCIAL +HOMOSOCIALITIES +HOMOSOCIALITY +HOMOSPORIES +HOMOSPOROUS +HOMOSPORY +HOMOSTYLIES +HOMOSTYLY +HOMOTAXES +HOMOTAXIS +HOMOTHALLIC +HOMOTHALLISM +HOMOTHALLISMS +HOMOTRANSPLANT +HOMOTRANSPLANTS +HOMOZYGOSES +HOMOZYGOSIS +HOMOZYGOSITIES +HOMOZYGOSITY +HOMOZYGOTE +HOMOZYGOTES +HOMOZYGOUS +HOMOZYGOUSLY +HOMUNCULI +HOMUNCULUS +HOMY +HON +HONAN +HONANS +HONCHO +HONCHOED +HONCHOING +HONCHOS +HONDA +HONDAS +HONDLE +HONDLED +HONDLES +HONDLING +HONE +HONED +HONER +HONERS +HONES +HONEST +HONESTER +HONESTEST +HONESTIES +HONESTLY +HONESTY +HONEWORT +HONEWORTS +HONEY +HONEYBEE +HONEYBEES +HONEYBUN +HONEYBUNS +HONEYCOMB +HONEYCOMBED +HONEYCOMBING +HONEYCOMBS +HONEYCREEPER +HONEYCREEPERS +HONEYDEW +HONEYDEWS +HONEYEATER +HONEYEATERS +HONEYED +HONEYFUL +HONEYGUIDE +HONEYGUIDES +HONEYING +HONEYMOON +HONEYMOONED +HONEYMOONER +HONEYMOONERS +HONEYMOONING +HONEYMOONS +HONEYPOT +HONEYPOTS +HONEYS +HONEYSUCKLE +HONEYSUCKLES +HONG +HONGI +HONGIED +HONGIES +HONGIING +HONGS +HONIED +HONING +HONK +HONKED +HONKER +HONKERS +HONKEY +HONKEYS +HONKIE +HONKIES +HONKING +HONKS +HONKY +HONOR +HONORABILITIES +HONORABILITY +HONORABLE +HONORABLENESS +HONORABLENESSES +HONORABLY +HONORAND +HONORANDS +HONORARIA +HONORARIES +HONORARILY +HONORARIUM +HONORARIUMS +HONORARY +HONORED +HONOREE +HONOREES +HONORER +HONORERS +HONORIFIC +HONORIFICALLY +HONORIFICS +HONORING +HONORS +HONOUR +HONOURABLE +HONOURED +HONOURER +HONOURERS +HONOURING +HONOURS +HONS +HOOCH +HOOCHES +HOOCHIE +HOOCHIES +HOOD +HOODED +HOODEDNESS +HOODEDNESSES +HOODIE +HOODIER +HOODIES +HOODIEST +HOODING +HOODLESS +HOODLIKE +HOODLUM +HOODLUMISH +HOODLUMISM +HOODLUMISMS +HOODLUMS +HOODMOLD +HOODMOLDS +HOODOO +HOODOOED +HOODOOING +HOODOOISM +HOODOOISMS +HOODOOS +HOODS +HOODWINK +HOODWINKED +HOODWINKER +HOODWINKERS +HOODWINKING +HOODWINKS +HOODY +HOOEY +HOOEYS +HOOF +HOOFBEAT +HOOFBEATS +HOOFBOUND +HOOFED +HOOFER +HOOFERS +HOOFING +HOOFLESS +HOOFLIKE +HOOFPRINT +HOOFPRINTS +HOOFS +HOOK +HOOKA +HOOKAH +HOOKAHS +HOOKAS +HOOKED +HOOKER +HOOKERS +HOOKEY +HOOKEYS +HOOKIER +HOOKIES +HOOKIEST +HOOKING +HOOKLESS +HOOKLET +HOOKLETS +HOOKLIKE +HOOKNOSE +HOOKNOSED +HOOKNOSES +HOOKS +HOOKUP +HOOKUPS +HOOKWORM +HOOKWORMS +HOOKY +HOOLIE +HOOLIGAN +HOOLIGANISM +HOOLIGANISMS +HOOLIGANS +HOOLY +HOOP +HOOPED +HOOPER +HOOPERS +HOOPING +HOOPLA +HOOPLAS +HOOPLESS +HOOPLIKE +HOOPOE +HOOPOES +HOOPOO +HOOPOOS +HOOPS +HOOPSKIRT +HOOPSKIRTS +HOOPSTER +HOOPSTERS +HOORAH +HOORAHED +HOORAHING +HOORAHS +HOORAY +HOORAYED +HOORAYING +HOORAYS +HOOSEGOW +HOOSEGOWS +HOOSGOW +HOOSGOWS +HOOT +HOOTCH +HOOTCHES +HOOTED +HOOTENANNIES +HOOTENANNY +HOOTER +HOOTERS +HOOTIER +HOOTIEST +HOOTING +HOOTS +HOOTY +HOOVED +HOOVER +HOOVERED +HOOVERING +HOOVERS +HOOVES +HOP +HOPE +HOPED +HOPEFUL +HOPEFULLY +HOPEFULNESS +HOPEFULNESSES +HOPEFULS +HOPELESS +HOPELESSLY +HOPELESSNESS +HOPELESSNESSES +HOPER +HOPERS +HOPES +HOPHEAD +HOPHEADS +HOPING +HOPINGLY +HOPLITE +HOPLITES +HOPLITIC +HOPPED +HOPPER +HOPPERS +HOPPIER +HOPPIEST +HOPPING +HOPPINGS +HOPPLE +HOPPLED +HOPPLES +HOPPLING +HOPPY +HOPS +HOPSACK +HOPSACKING +HOPSACKINGS +HOPSACKS +HOPSCOTCH +HOPSCOTCHED +HOPSCOTCHES +HOPSCOTCHING +HOPTOAD +HOPTOADS +HORA +HORAH +HORAHS +HORAL +HORARY +HORAS +HORDE +HORDED +HORDEIN +HORDEINS +HORDEOLA +HORDEOLUM +HORDES +HORDING +HOREHOUND +HOREHOUNDS +HORIZON +HORIZONAL +HORIZONLESS +HORIZONS +HORIZONTAL +HORIZONTALITIES +HORIZONTALITY +HORIZONTALLY +HORIZONTALS +HORMOGONIA +HORMOGONIUM +HORMONAL +HORMONALLY +HORMONE +HORMONELIKE +HORMONES +HORMONIC +HORN +HORNBEAM +HORNBEAMS +HORNBILL +HORNBILLS +HORNBLENDE +HORNBLENDES +HORNBLENDIC +HORNBOOK +HORNBOOKS +HORNED +HORNEDNESS +HORNEDNESSES +HORNET +HORNETS +HORNFELS +HORNIER +HORNIEST +HORNILY +HORNINESS +HORNINESSES +HORNING +HORNINGS +HORNIST +HORNISTS +HORNITO +HORNITOS +HORNLESS +HORNLESSNESS +HORNLESSNESSES +HORNLIKE +HORNPIPE +HORNPIPES +HORNPOUT +HORNPOUTS +HORNS +HORNSTONE +HORNSTONES +HORNSWOGGLE +HORNSWOGGLED +HORNSWOGGLES +HORNSWOGGLING +HORNTAIL +HORNTAILS +HORNWORM +HORNWORMS +HORNWORT +HORNWORTS +HORNY +HOROLOGE +HOROLOGER +HOROLOGERS +HOROLOGES +HOROLOGIC +HOROLOGICAL +HOROLOGIES +HOROLOGIST +HOROLOGISTS +HOROLOGY +HOROSCOPE +HOROSCOPES +HOROSCOPIES +HOROSCOPY +HORRENDOUS +HORRENDOUSLY +HORRENT +HORRIBLE +HORRIBLENESS +HORRIBLENESSES +HORRIBLES +HORRIBLY +HORRID +HORRIDER +HORRIDEST +HORRIDLY +HORRIDNESS +HORRIDNESSES +HORRIFIC +HORRIFICALLY +HORRIFIED +HORRIFIES +HORRIFY +HORRIFYING +HORRIFYINGLY +HORROR +HORRORS +HORSE +HORSEBACK +HORSEBACKS +HORSEBEAN +HORSEBEANS +HORSECAR +HORSECARS +HORSED +HORSEFEATHERS +HORSEFLESH +HORSEFLESHES +HORSEFLIES +HORSEFLY +HORSEHAIR +HORSEHAIRS +HORSEHIDE +HORSEHIDES +HORSELAUGH +HORSELAUGHS +HORSELESS +HORSELIKE +HORSEMAN +HORSEMANSHIP +HORSEMANSHIPS +HORSEMEN +HORSEMINT +HORSEMINTS +HORSEPLAY +HORSEPLAYER +HORSEPLAYERS +HORSEPLAYS +HORSEPOWER +HORSEPOWERS +HORSEPOX +HORSEPOXES +HORSERACE +HORSERACES +HORSERADISH +HORSERADISHES +HORSES +HORSESHIT +HORSESHITS +HORSESHOD +HORSESHOE +HORSESHOED +HORSESHOEING +HORSESHOER +HORSESHOERS +HORSESHOES +HORSETAIL +HORSETAILS +HORSEWEED +HORSEWEEDS +HORSEWHIP +HORSEWHIPPED +HORSEWHIPPER +HORSEWHIPPERS +HORSEWHIPPING +HORSEWHIPS +HORSEWOMAN +HORSEWOMEN +HORSEY +HORSIER +HORSIEST +HORSILY +HORSINESS +HORSINESSES +HORSING +HORST +HORSTE +HORSTES +HORSTS +HORSY +HORTATIVE +HORTATIVELY +HORTATORY +HORTICULTURAL +HORTICULTURALLY +HORTICULTURE +HORTICULTURES +HORTICULTURIST +HORTICULTURISTS +HOS +HOSANNA +HOSANNAED +HOSANNAH +HOSANNAHS +HOSANNAING +HOSANNAS +HOSE +HOSED +HOSEL +HOSELIKE +HOSELS +HOSEN +HOSEPIPE +HOSEPIPES +HOSER +HOSERS +HOSES +HOSEY +HOSEYED +HOSEYING +HOSEYS +HOSIER +HOSIERIES +HOSIERS +HOSIERY +HOSING +HOSPICE +HOSPICES +HOSPITABLE +HOSPITABLY +HOSPITAL +HOSPITALISE +HOSPITALISED +HOSPITALISES +HOSPITALISING +HOSPITALITIES +HOSPITALITY +HOSPITALIZATION +HOSPITALIZE +HOSPITALIZED +HOSPITALIZES +HOSPITALIZING +HOSPITALS +HOSPITIA +HOSPITIUM +HOSPODAR +HOSPODARS +HOST +HOSTA +HOSTAGE +HOSTAGES +HOSTAS +HOSTED +HOSTEL +HOSTELED +HOSTELER +HOSTELERS +HOSTELING +HOSTELLED +HOSTELLER +HOSTELLERS +HOSTELLING +HOSTELRIES +HOSTELRY +HOSTELS +HOSTESS +HOSTESSED +HOSTESSES +HOSTESSING +HOSTILE +HOSTILELY +HOSTILES +HOSTILITIES +HOSTILITY +HOSTING +HOSTLER +HOSTLERS +HOSTLY +HOSTS +HOT +HOTBED +HOTBEDS +HOTBLOOD +HOTBLOODS +HOTBOX +HOTBOXES +HOTCAKE +HOTCAKES +HOTCH +HOTCHED +HOTCHES +HOTCHING +HOTCHPOT +HOTCHPOTCH +HOTCHPOTCHES +HOTCHPOTS +HOTDOG +HOTDOGGED +HOTDOGGER +HOTDOGGERS +HOTDOGGING +HOTDOGS +HOTEL +HOTELDOM +HOTELDOMS +HOTELIER +HOTELIERS +HOTELMAN +HOTELMEN +HOTELS +HOTFOOT +HOTFOOTED +HOTFOOTING +HOTFOOTS +HOTHEAD +HOTHEADED +HOTHEADEDLY +HOTHEADEDNESS +HOTHEADEDNESSES +HOTHEADS +HOTHOUSE +HOTHOUSED +HOTHOUSES +HOTHOUSING +HOTLINE +HOTLINES +HOTLINK +HOTLINKS +HOTLY +HOTNESS +HOTNESSES +HOTPRESS +HOTPRESSED +HOTPRESSES +HOTPRESSING +HOTROD +HOTRODS +HOTS +HOTSHOT +HOTSHOTS +HOTSPOT +HOTSPOTS +HOTSPUR +HOTSPURS +HOTTED +HOTTER +HOTTEST +HOTTIE +HOTTIES +HOTTING +HOTTISH +HOUDAH +HOUDAHS +HOUND +HOUNDED +HOUNDER +HOUNDERS +HOUNDING +HOUNDS +HOUR +HOURGLASS +HOURGLASSES +HOURI +HOURIS +HOURLIES +HOURLONG +HOURLY +HOURS +HOUSE +HOUSEBOAT +HOUSEBOATER +HOUSEBOATERS +HOUSEBOATS +HOUSEBOUND +HOUSEBOY +HOUSEBOYS +HOUSEBREAK +HOUSEBREAKER +HOUSEBREAKERS +HOUSEBREAKING +HOUSEBREAKINGS +HOUSEBREAKS +HOUSEBROKE +HOUSEBROKEN +HOUSECARL +HOUSECARLS +HOUSECLEAN +HOUSECLEANED +HOUSECLEANING +HOUSECLEANINGS +HOUSECLEANS +HOUSECOAT +HOUSECOATS +HOUSED +HOUSEDRESS +HOUSEDRESSES +HOUSEFATHER +HOUSEFATHERS +HOUSEFLIES +HOUSEFLY +HOUSEFRONT +HOUSEFRONTS +HOUSEFUL +HOUSEFULS +HOUSEGUEST +HOUSEGUESTS +HOUSEHOLD +HOUSEHOLDER +HOUSEHOLDERS +HOUSEHOLDS +HOUSEHUSBAND +HOUSEHUSBANDS +HOUSEKEEP +HOUSEKEEPER +HOUSEKEEPERS +HOUSEKEEPING +HOUSEKEEPINGS +HOUSEKEEPS +HOUSEKEPT +HOUSEL +HOUSELED +HOUSELEEK +HOUSELEEKS +HOUSELESS +HOUSELESSNESS +HOUSELESSNESSES +HOUSELIGHTS +HOUSELING +HOUSELLED +HOUSELLING +HOUSELS +HOUSEMAID +HOUSEMAIDS +HOUSEMAN +HOUSEMASTER +HOUSEMASTERS +HOUSEMATE +HOUSEMATES +HOUSEMEN +HOUSEMOTHER +HOUSEMOTHERS +HOUSEPAINTER +HOUSEPAINTERS +HOUSEPARENT +HOUSEPARENTS +HOUSEPERSON +HOUSEPERSONS +HOUSEPLANT +HOUSEPLANTS +HOUSER +HOUSEROOM +HOUSEROOMS +HOUSERS +HOUSES +HOUSESAT +HOUSESIT +HOUSESITS +HOUSESITTING +HOUSETOP +HOUSETOPS +HOUSEWARES +HOUSEWARMING +HOUSEWARMINGS +HOUSEWIFE +HOUSEWIFELINESS +HOUSEWIFELY +HOUSEWIFERIES +HOUSEWIFERY +HOUSEWIFEY +HOUSEWIVES +HOUSEWORK +HOUSEWORKS +HOUSING +HOUSINGS +HOUSTONIA +HOUSTONIAS +HOVE +HOVEL +HOVELED +HOVELING +HOVELLED +HOVELLING +HOVELS +HOVER +HOVERCRAFT +HOVERCRAFTS +HOVERED +HOVERER +HOVERERS +HOVERFLIES +HOVERFLY +HOVERING +HOVERS +HOW +HOWBEIT +HOWDAH +HOWDAHS +HOWDIE +HOWDIED +HOWDIES +HOWDY +HOWDYING +HOWE +HOWES +HOWEVER +HOWF +HOWFF +HOWFFS +HOWFS +HOWITZER +HOWITZERS +HOWK +HOWKED +HOWKING +HOWKS +HOWL +HOWLED +HOWLER +HOWLERS +HOWLET +HOWLETS +HOWLING +HOWLINGLY +HOWLS +HOWS +HOWSOEVER +HOY +HOYA +HOYAS +HOYDEN +HOYDENED +HOYDENING +HOYDENISH +HOYDENS +HOYLE +HOYLES +HOYS +HRYVNA +HRYVNAS +HRYVNIA +HRYVNIAS +HUARACHE +HUARACHES +HUARACHO +HUARACHOS +HUB +HUBBIES +HUBBLY +HUBBUB +HUBBUBS +HUBBY +HUBCAP +HUBCAPS +HUBRIS +HUBRISES +HUBRISTIC +HUBS +HUCK +HUCKABACK +HUCKABACKS +HUCKLE +HUCKLEBERRIES +HUCKLEBERRY +HUCKLES +HUCKS +HUCKSTER +HUCKSTERED +HUCKSTERING +HUCKSTERISM +HUCKSTERISMS +HUCKSTERS +HUDDLE +HUDDLED +HUDDLER +HUDDLERS +HUDDLES +HUDDLING +HUE +HUED +HUELESS +HUES +HUFF +HUFFED +HUFFIER +HUFFIEST +HUFFILY +HUFFINESS +HUFFINESSES +HUFFING +HUFFISH +HUFFISHLY +HUFFS +HUFFY +HUG +HUGE +HUGELY +HUGENESS +HUGENESSES +HUGEOUS +HUGEOUSLY +HUGER +HUGEST +HUGGABLE +HUGGED +HUGGER +HUGGERS +HUGGING +HUGS +HUH +HUIC +HUIPIL +HUIPILES +HUIPILS +HUISACHE +HUISACHES +HULA +HULAS +HULK +HULKED +HULKIER +HULKIEST +HULKING +HULKS +HULKY +HULL +HULLABALOO +HULLABALOOS +HULLED +HULLER +HULLERS +HULLING +HULLO +HULLOA +HULLOAED +HULLOAING +HULLOAS +HULLOED +HULLOES +HULLOING +HULLOO +HULLOOED +HULLOOING +HULLOOS +HULLOS +HULLS +HUM +HUMAN +HUMANE +HUMANELY +HUMANENESS +HUMANENESSES +HUMANER +HUMANEST +HUMANHOOD +HUMANHOODS +HUMANISE +HUMANISED +HUMANISES +HUMANISING +HUMANISM +HUMANISMS +HUMANIST +HUMANISTIC +HUMANISTICALLY +HUMANISTS +HUMANITARIAN +HUMANITARIANISM +HUMANITARIANS +HUMANITIES +HUMANITY +HUMANIZATION +HUMANIZATIONS +HUMANIZE +HUMANIZED +HUMANIZER +HUMANIZERS +HUMANIZES +HUMANIZING +HUMANKIND +HUMANLIKE +HUMANLY +HUMANNESS +HUMANNESSES +HUMANOID +HUMANOIDS +HUMANS +HUMATE +HUMATES +HUMBLE +HUMBLEBEE +HUMBLEBEES +HUMBLED +HUMBLENESS +HUMBLENESSES +HUMBLER +HUMBLERS +HUMBLES +HUMBLEST +HUMBLING +HUMBLINGLY +HUMBLY +HUMBUG +HUMBUGGED +HUMBUGGER +HUMBUGGERIES +HUMBUGGERS +HUMBUGGERY +HUMBUGGING +HUMBUGS +HUMDINGER +HUMDINGERS +HUMDRUM +HUMDRUMS +HUMECTANT +HUMECTANTS +HUMERAL +HUMERALS +HUMERI +HUMERUS +HUMIC +HUMID +HUMIDEX +HUMIDEXES +HUMIDIFICATION +HUMIDIFICATIONS +HUMIDIFIED +HUMIDIFIER +HUMIDIFIERS +HUMIDIFIES +HUMIDIFY +HUMIDIFYING +HUMIDISTAT +HUMIDISTATS +HUMIDITIES +HUMIDITY +HUMIDLY +HUMIDNESS +HUMIDNESSES +HUMIDOR +HUMIDORS +HUMIFICATION +HUMIFICATIONS +HUMIFIED +HUMILIATE +HUMILIATED +HUMILIATES +HUMILIATING +HUMILIATINGLY +HUMILIATION +HUMILIATIONS +HUMILITIES +HUMILITY +HUMITURE +HUMITURES +HUMMABLE +HUMMED +HUMMER +HUMMERS +HUMMING +HUMMINGBIRD +HUMMINGBIRDS +HUMMOCK +HUMMOCKED +HUMMOCKING +HUMMOCKS +HUMMOCKY +HUMMUS +HUMMUSES +HUMONGOUS +HUMOR +HUMORAL +HUMORED +HUMORESQUE +HUMORESQUES +HUMORFUL +HUMORING +HUMORIST +HUMORISTIC +HUMORISTS +HUMORLESS +HUMORLESSLY +HUMORLESSNESS +HUMORLESSNESSES +HUMOROUS +HUMOROUSLY +HUMOROUSNESS +HUMOROUSNESSES +HUMORS +HUMOUR +HUMOURED +HUMOURING +HUMOURS +HUMP +HUMPBACK +HUMPBACKED +HUMPBACKS +HUMPED +HUMPER +HUMPERS +HUMPH +HUMPHED +HUMPHING +HUMPHS +HUMPIER +HUMPIEST +HUMPINESS +HUMPINESSES +HUMPING +HUMPLESS +HUMPS +HUMPY +HUMS +HUMUNGOUS +HUMUS +HUMUSES +HUMVEE +HUMVEES +HUN +HUNCH +HUNCHBACK +HUNCHBACKED +HUNCHBACKS +HUNCHED +HUNCHES +HUNCHING +HUNDRED +HUNDREDFOLD +HUNDREDS +HUNDREDTH +HUNDREDTHS +HUNDREDWEIGHT +HUNDREDWEIGHTS +HUNG +HUNGER +HUNGERED +HUNGERING +HUNGERS +HUNGOVER +HUNGRIER +HUNGRIEST +HUNGRILY +HUNGRINESS +HUNGRINESSES +HUNGRY +HUNH +HUNK +HUNKER +HUNKERED +HUNKERING +HUNKERS +HUNKEY +HUNKEYS +HUNKIE +HUNKIER +HUNKIES +HUNKIEST +HUNKS +HUNKY +HUNNISH +HUNS +HUNT +HUNTABLE +HUNTED +HUNTEDLY +HUNTER +HUNTERS +HUNTING +HUNTINGS +HUNTRESS +HUNTRESSES +HUNTS +HUNTSMAN +HUNTSMEN +HUP +HUPPAH +HUPPAHS +HURDIES +HURDLE +HURDLED +HURDLER +HURDLERS +HURDLES +HURDLING +HURDS +HURL +HURLED +HURLER +HURLERS +HURLEY +HURLEYS +HURLIES +HURLING +HURLINGS +HURLS +HURLY +HURRAH +HURRAHED +HURRAHING +HURRAHS +HURRAY +HURRAYED +HURRAYING +HURRAYS +HURRICANE +HURRICANES +HURRIED +HURRIEDLY +HURRIEDNESS +HURRIEDNESSES +HURRIER +HURRIERS +HURRIES +HURRY +HURRYING +HURST +HURSTS +HURT +HURTER +HURTERS +HURTFUL +HURTFULLY +HURTFULNESS +HURTFULNESSES +HURTING +HURTLE +HURTLED +HURTLES +HURTLESS +HURTLING +HURTS +HUSBAND +HUSBANDED +HUSBANDER +HUSBANDERS +HUSBANDING +HUSBANDLY +HUSBANDMAN +HUSBANDMEN +HUSBANDRIES +HUSBANDRY +HUSBANDS +HUSH +HUSHABY +HUSHED +HUSHEDLY +HUSHES +HUSHFUL +HUSHING +HUSHPUPPIES +HUSHPUPPY +HUSK +HUSKED +HUSKER +HUSKERS +HUSKIER +HUSKIES +HUSKIEST +HUSKILY +HUSKINESS +HUSKINESSES +HUSKING +HUSKINGS +HUSKLIKE +HUSKS +HUSKY +HUSSAR +HUSSARS +HUSSIES +HUSSY +HUSTINGS +HUSTLE +HUSTLED +HUSTLER +HUSTLERS +HUSTLES +HUSTLING +HUSWIFE +HUSWIFES +HUSWIVES +HUT +HUTCH +HUTCHED +HUTCHES +HUTCHING +HUTLIKE +HUTMENT +HUTMENTS +HUTS +HUTTED +HUTTING +HUTZPA +HUTZPAH +HUTZPAHS +HUTZPAS +HUZZA +HUZZAED +HUZZAH +HUZZAHED +HUZZAHING +HUZZAHS +HUZZAING +HUZZAS +HWAN +HYACINTH +HYACINTHINE +HYACINTHS +HYAENA +HYAENAS +HYAENIC +HYALIN +HYALINE +HYALINES +HYALINS +HYALITE +HYALITES +HYALOGEN +HYALOGENS +HYALOID +HYALOIDS +HYALOPLASM +HYALOPLASMS +HYALURONIDASE +HYALURONIDASES +HYBRID +HYBRIDISM +HYBRIDISMS +HYBRIDIST +HYBRIDISTS +HYBRIDITIES +HYBRIDITY +HYBRIDIZATION +HYBRIDIZATIONS +HYBRIDIZE +HYBRIDIZED +HYBRIDIZER +HYBRIDIZERS +HYBRIDIZES +HYBRIDIZING +HYBRIDOMA +HYBRIDOMAS +HYBRIDS +HYBRIS +HYBRISES +HYBRISTIC +HYDATHODE +HYDATHODES +HYDATID +HYDATIDS +HYDRA +HYDRACID +HYDRACIDS +HYDRAE +HYDRAGOG +HYDRAGOGS +HYDRALAZINE +HYDRALAZINES +HYDRANGEA +HYDRANGEAS +HYDRANT +HYDRANTH +HYDRANTHS +HYDRANTS +HYDRAS +HYDRASE +HYDRASES +HYDRASTIS +HYDRASTISES +HYDRATE +HYDRATED +HYDRATES +HYDRATING +HYDRATION +HYDRATIONS +HYDRATOR +HYDRATORS +HYDRAULIC +HYDRAULICALLY +HYDRAULICS +HYDRAZIDE +HYDRAZIDES +HYDRAZINE +HYDRAZINES +HYDRIA +HYDRIAE +HYDRIC +HYDRID +HYDRIDE +HYDRIDES +HYDRIDS +HYDRILLA +HYDRILLAS +HYDRO +HYDROBIOLOGICAL +HYDROBIOLOGIES +HYDROBIOLOGIST +HYDROBIOLOGISTS +HYDROBIOLOGY +HYDROCARBON +HYDROCARBONS +HYDROCAST +HYDROCASTS +HYDROCELE +HYDROCELES +HYDROCEPHALIC +HYDROCEPHALICS +HYDROCEPHALIES +HYDROCEPHALUS +HYDROCEPHALUSES +HYDROCEPHALY +HYDROCHLORIDE +HYDROCHLORIDES +HYDROCOLLOID +HYDROCOLLOIDAL +HYDROCOLLOIDS +HYDROCORTISONE +HYDROCORTISONES +HYDROCRACK +HYDROCRACKED +HYDROCRACKER +HYDROCRACKERS +HYDROCRACKING +HYDROCRACKINGS +HYDROCRACKS +HYDRODYNAMIC +HYDRODYNAMICAL +HYDRODYNAMICIST +HYDRODYNAMICS +HYDROELECTRIC +HYDROFOIL +HYDROFOILS +HYDROGEL +HYDROGELS +HYDROGEN +HYDROGENASE +HYDROGENASES +HYDROGENATE +HYDROGENATED +HYDROGENATES +HYDROGENATING +HYDROGENATION +HYDROGENATIONS +HYDROGENOUS +HYDROGENS +HYDROGRAPHER +HYDROGRAPHERS +HYDROGRAPHIC +HYDROGRAPHIES +HYDROGRAPHY +HYDROID +HYDROIDS +HYDROKINETIC +HYDROLASE +HYDROLASES +HYDROLOGIC +HYDROLOGICAL +HYDROLOGICALLY +HYDROLOGIES +HYDROLOGIST +HYDROLOGISTS +HYDROLOGY +HYDROLYSATE +HYDROLYSATES +HYDROLYSES +HYDROLYSIS +HYDROLYTE +HYDROLYTES +HYDROLYTIC +HYDROLYTICALLY +HYDROLYZABLE +HYDROLYZATE +HYDROLYZATES +HYDROLYZE +HYDROLYZED +HYDROLYZES +HYDROLYZING +HYDROMAGNETIC +HYDROMANCIES +HYDROMANCY +HYDROMECHANICAL +HYDROMECHANICS +HYDROMEDUSA +HYDROMEDUSAE +HYDROMEL +HYDROMELS +HYDROMETALLURGY +HYDROMETEOR +HYDROMETEORS +HYDROMETER +HYDROMETERS +HYDROMETRIC +HYDROMORPHIC +HYDRONIC +HYDRONICALLY +HYDRONIUM +HYDRONIUMS +HYDROPATH +HYDROPATHIC +HYDROPATHIES +HYDROPATHS +HYDROPATHY +HYDROPEROXIDE +HYDROPEROXIDES +HYDROPHANE +HYDROPHANES +HYDROPHILIC +HYDROPHILICITY +HYDROPHOBIA +HYDROPHOBIAS +HYDROPHOBIC +HYDROPHOBICITY +HYDROPHONE +HYDROPHONES +HYDROPHYTE +HYDROPHYTES +HYDROPHYTIC +HYDROPIC +HYDROPLANE +HYDROPLANED +HYDROPLANES +HYDROPLANING +HYDROPONIC +HYDROPONICALLY +HYDROPONICS +HYDROPOWER +HYDROPOWERS +HYDROPS +HYDROPSES +HYDROPSIES +HYDROPSY +HYDROQUINONE +HYDROQUINONES +HYDROS +HYDROSERE +HYDROSERES +HYDROSKI +HYDROSKIS +HYDROSOL +HYDROSOLIC +HYDROSOLS +HYDROSPACE +HYDROSPACES +HYDROSPHERE +HYDROSPHERES +HYDROSPHERIC +HYDROSTAT +HYDROSTATIC +HYDROSTATICALLY +HYDROSTATICS +HYDROSTATS +HYDROTHERAPIES +HYDROTHERAPY +HYDROTHERMAL +HYDROTHERMALLY +HYDROTHORACES +HYDROTHORAX +HYDROTHORAXES +HYDROTROPIC +HYDROTROPISM +HYDROTROPISMS +HYDROUS +HYDROXIDE +HYDROXIDES +HYDROXY +HYDROXYAPATITE +HYDROXYAPATITES +HYDROXYL +HYDROXYLAMINE +HYDROXYLAMINES +HYDROXYLAPATITE +HYDROXYLASE +HYDROXYLASES +HYDROXYLATE +HYDROXYLATED +HYDROXYLATES +HYDROXYLATING +HYDROXYLATION +HYDROXYLATIONS +HYDROXYLIC +HYDROXYLS +HYDROXYPROLINE +HYDROXYPROLINES +HYDROXYUREA +HYDROXYUREAS +HYDROXYZINE +HYDROXYZINES +HYDROZOAN +HYDROZOANS +HYENA +HYENAS +HYENIC +HYENINE +HYENOID +HYETAL +HYGEIST +HYGEISTS +HYGIEIST +HYGIEISTS +HYGIENE +HYGIENES +HYGIENIC +HYGIENICALLY +HYGIENICS +HYGIENIST +HYGIENISTS +HYGROGRAPH +HYGROGRAPHS +HYGROMETER +HYGROMETERS +HYGROMETRIC +HYGROPHILOUS +HYGROPHYTE +HYGROPHYTES +HYGROPHYTIC +HYGROSCOPIC +HYGROSCOPICITY +HYGROSTAT +HYGROSTATS +HYING +HYLA +HYLAS +HYLOZOIC +HYLOZOISM +HYLOZOISMS +HYLOZOIST +HYLOZOISTIC +HYLOZOISTS +HYMEN +HYMENAL +HYMENEAL +HYMENEALLY +HYMENEALS +HYMENIA +HYMENIAL +HYMENIUM +HYMENIUMS +HYMENOPTERA +HYMENOPTERAN +HYMENOPTERANS +HYMENOPTERON +HYMENOPTERONS +HYMENOPTEROUS +HYMENS +HYMN +HYMNAL +HYMNALS +HYMNARIES +HYMNARY +HYMNBOOK +HYMNBOOKS +HYMNED +HYMNING +HYMNIST +HYMNISTS +HYMNLESS +HYMNLIKE +HYMNODIES +HYMNODIST +HYMNODISTS +HYMNODY +HYMNOLOGIES +HYMNOLOGY +HYMNS +HYOID +HYOIDAL +HYOIDEAN +HYOIDS +HYOSCINE +HYOSCINES +HYOSCYAMINE +HYOSCYAMINES +HYP +HYPABYSSAL +HYPABYSSALLY +HYPAETHRAL +HYPALLAGE +HYPALLAGES +HYPANTHIA +HYPANTHIUM +HYPE +HYPED +HYPER +HYPERACID +HYPERACIDITIES +HYPERACIDITY +HYPERACTIVE +HYPERACTIVES +HYPERACTIVITIES +HYPERACTIVITY +HYPERACUITIES +HYPERACUITY +HYPERACUTE +HYPERAESTHESIA +HYPERAESTHESIAS +HYPERAESTHETIC +HYPERAGGRESSIVE +HYPERALERT +HYPERARID +HYPERAROUSAL +HYPERAROUSALS +HYPERAWARE +HYPERAWARENESS +HYPERBARIC +HYPERBARICALLY +HYPERBOLA +HYPERBOLAE +HYPERBOLAS +HYPERBOLE +HYPERBOLES +HYPERBOLIC +HYPERBOLICAL +HYPERBOLICALLY +HYPERBOLIST +HYPERBOLISTS +HYPERBOLIZE +HYPERBOLIZED +HYPERBOLIZES +HYPERBOLIZING +HYPERBOLOID +HYPERBOLOIDAL +HYPERBOLOIDS +HYPERBOREAN +HYPERBOREANS +HYPERCALCEMIA +HYPERCALCEMIAS +HYPERCALCEMIC +HYPERCAPNIA +HYPERCAPNIAS +HYPERCAPNIC +HYPERCATABOLISM +HYPERCATALECTIC +HYPERCATALEXES +HYPERCATALEXIS +HYPERCAUTIOUS +HYPERCHARGE +HYPERCHARGED +HYPERCHARGES +HYPERCIVILIZED +HYPERCOAGULABLE +HYPERCOMPLEX +HYPERCONSCIOUS +HYPERCORRECT +HYPERCORRECTION +HYPERCORRECTLY +HYPERCRITIC +HYPERCRITICAL +HYPERCRITICALLY +HYPERCRITICISM +HYPERCRITICISMS +HYPERCRITICS +HYPERCUBE +HYPERCUBES +HYPEREFFICIENT +HYPEREMIA +HYPEREMIAS +HYPEREMIC +HYPEREMOTIONAL +HYPERENDEMIC +HYPERENERGETIC +HYPERESTHESIA +HYPERESTHESIAS +HYPERESTHETIC +HYPEREUTECTIC +HYPEREUTECTOID +HYPEREXCITABLE +HYPEREXCITED +HYPEREXCITEMENT +HYPEREXCRETION +HYPEREXCRETIONS +HYPEREXTEND +HYPEREXTENDED +HYPEREXTENDING +HYPEREXTENDS +HYPEREXTENSION +HYPEREXTENSIONS +HYPERFASTIDIOUS +HYPERFINE +HYPERFUNCTION +HYPERFUNCTIONAL +HYPERFUNCTIONS +HYPERGAMIES +HYPERGAMY +HYPERGLYCEMIA +HYPERGLYCEMIAS +HYPERGLYCEMIC +HYPERGOL +HYPERGOLIC +HYPERGOLICALLY +HYPERGOLS +HYPERHIDROSES +HYPERHIDROSIS +HYPERIMMUNE +HYPERIMMUNIZE +HYPERIMMUNIZED +HYPERIMMUNIZES +HYPERIMMUNIZING +HYPERINFLATED +HYPERINFLATION +HYPERINFLATIONS +HYPERINSULINISM +HYPERINTENSE +HYPERINVOLUTION +HYPERIRRITABLE +HYPERKERATOSES +HYPERKERATOSIS +HYPERKERATOTIC +HYPERKINESES +HYPERKINESIA +HYPERKINESIAS +HYPERKINESIS +HYPERKINETIC +HYPERLINK +HYPERLINKED +HYPERLINKING +HYPERLINKS +HYPERLIPEMIA +HYPERLIPEMIAS +HYPERLIPEMIC +HYPERLIPIDEMIA +HYPERLIPIDEMIAS +HYPERMANIA +HYPERMANIAS +HYPERMANIC +HYPERMARKET +HYPERMARKETS +HYPERMASCULINE +HYPERMEDIA +HYPERMEDIAS +HYPERMETABOLIC +HYPERMETABOLISM +HYPERMETER +HYPERMETERS +HYPERMETRIC +HYPERMETRICAL +HYPERMETROPIA +HYPERMETROPIAS +HYPERMETROPIC +HYPERMNESIA +HYPERMNESIAS +HYPERMNESIC +HYPERMOBILITIES +HYPERMOBILITY +HYPERMODERN +HYPERMODERNIST +HYPERMODERNISTS +HYPERMUTABILITY +HYPERMUTABLE +HYPERON +HYPERONS +HYPEROPE +HYPEROPES +HYPEROPIA +HYPEROPIAS +HYPEROPIC +HYPEROSTOSES +HYPEROSTOSIS +HYPEROSTOTIC +HYPERPARASITE +HYPERPARASITES +HYPERPARASITIC +HYPERPARASITISM +HYPERPHAGIA +HYPERPHAGIAS +HYPERPHAGIC +HYPERPHYSICAL +HYPERPIGMENTED +HYPERPITUITARY +HYPERPLANE +HYPERPLANES +HYPERPLASIA +HYPERPLASIAS +HYPERPLASTIC +HYPERPLOID +HYPERPLOIDIES +HYPERPLOIDS +HYPERPLOIDY +HYPERPNEA +HYPERPNEAS +HYPERPNEIC +HYPERPOLARIZE +HYPERPOLARIZED +HYPERPOLARIZES +HYPERPOLARIZING +HYPERPRODUCER +HYPERPRODUCERS +HYPERPRODUCTION +HYPERPURE +HYPERPYREXIA +HYPERPYREXIAS +HYPERRATIONAL +HYPERREACTIVE +HYPERREACTIVITY +HYPERREACTOR +HYPERREACTORS +HYPERREALISM +HYPERREALISMS +HYPERREALIST +HYPERREALISTIC +HYPERRESPONSIVE +HYPERROMANTIC +HYPERROMANTICS +HYPERS +HYPERSALINE +HYPERSALINITIES +HYPERSALINITY +HYPERSALIVATION +HYPERSECRETION +HYPERSECRETIONS +HYPERSENSITIVE +HYPERSENSITIZE +HYPERSENSITIZED +HYPERSENSITIZES +HYPERSEXUAL +HYPERSEXUALITY +HYPERSOMNOLENCE +HYPERSONIC +HYPERSONICALLY +HYPERSPACE +HYPERSPACES +HYPERSTATIC +HYPERSTHENE +HYPERSTHENES +HYPERSTHENIC +HYPERSTIMULATE +HYPERSTIMULATED +HYPERSTIMULATES +HYPERSURFACE +HYPERSURFACES +HYPERTENSE +HYPERTENSION +HYPERTENSIONS +HYPERTENSIVE +HYPERTENSIVES +HYPERTEXT +HYPERTEXTS +HYPERTHERMIA +HYPERTHERMIAS +HYPERTHERMIC +HYPERTHYROID +HYPERTHYROIDISM +HYPERTONIA +HYPERTONIAS +HYPERTONIC +HYPERTONICITIES +HYPERTONICITY +HYPERTROPHIC +HYPERTROPHIED +HYPERTROPHIES +HYPERTROPHY +HYPERTROPHYING +HYPERTYPICAL +HYPERURBANISM +HYPERURBANISMS +HYPERURICEMIA +HYPERURICEMIAS +HYPERVELOCITIES +HYPERVELOCITY +HYPERVENTILATE +HYPERVENTILATED +HYPERVENTILATES +HYPERVIGILANCE +HYPERVIGILANCES +HYPERVIGILANT +HYPERVIRULENT +HYPERVISCOSITY +HYPES +HYPETHRAL +HYPHA +HYPHAE +HYPHAL +HYPHEMIA +HYPHEMIAS +HYPHEN +HYPHENATE +HYPHENATED +HYPHENATES +HYPHENATING +HYPHENATION +HYPHENATIONS +HYPHENED +HYPHENIC +HYPHENING +HYPHENLESS +HYPHENS +HYPING +HYPNAGOGIC +HYPNIC +HYPNOGOGIC +HYPNOID +HYPNOIDAL +HYPNOLOGIES +HYPNOLOGY +HYPNOPOMPIC +HYPNOSES +HYPNOSIS +HYPNOTHERAPIES +HYPNOTHERAPIST +HYPNOTHERAPISTS +HYPNOTHERAPY +HYPNOTIC +HYPNOTICALLY +HYPNOTICS +HYPNOTISM +HYPNOTISMS +HYPNOTIST +HYPNOTISTS +HYPNOTIZABILITY +HYPNOTIZABLE +HYPNOTIZE +HYPNOTIZED +HYPNOTIZES +HYPNOTIZING +HYPO +HYPOACID +HYPOALLERGENIC +HYPOBARIC +HYPOBLAST +HYPOBLASTS +HYPOCALCEMIA +HYPOCALCEMIAS +HYPOCALCEMIC +HYPOCAUST +HYPOCAUSTS +HYPOCENTER +HYPOCENTERS +HYPOCENTRAL +HYPOCHLORITE +HYPOCHLORITES +HYPOCHONDRIA +HYPOCHONDRIAC +HYPOCHONDRIACAL +HYPOCHONDRIACS +HYPOCHONDRIAS +HYPOCHONDRIASES +HYPOCHONDRIASIS +HYPOCORISM +HYPOCORISMS +HYPOCORISTIC +HYPOCORISTICAL +HYPOCOTYL +HYPOCOTYLS +HYPOCRISIES +HYPOCRISY +HYPOCRITE +HYPOCRITES +HYPOCRITICAL +HYPOCRITICALLY +HYPOCYCLOID +HYPOCYCLOIDS +HYPODERM +HYPODERMA +HYPODERMAL +HYPODERMAS +HYPODERMIC +HYPODERMICALLY +HYPODERMICS +HYPODERMIS +HYPODERMISES +HYPODERMS +HYPODIPLOID +HYPODIPLOIDIES +HYPODIPLOIDY +HYPOED +HYPOEUTECTOID +HYPOGASTRIC +HYPOGEA +HYPOGEAL +HYPOGEAN +HYPOGENE +HYPOGEOUS +HYPOGEUM +HYPOGLOSSAL +HYPOGLOSSALS +HYPOGLYCEMIA +HYPOGLYCEMIAS +HYPOGLYCEMIC +HYPOGLYCEMICS +HYPOGYNIES +HYPOGYNOUS +HYPOGYNY +HYPOING +HYPOKALEMIA +HYPOKALEMIAS +HYPOKALEMIC +HYPOLIMNIA +HYPOLIMNION +HYPOMAGNESEMIA +HYPOMAGNESEMIAS +HYPOMANIA +HYPOMANIAS +HYPOMANIC +HYPOMANICS +HYPOMORPH +HYPOMORPHIC +HYPOMORPHS +HYPONASTIES +HYPONASTY +HYPONEA +HYPONEAS +HYPONOIA +HYPONOIAS +HYPONYM +HYPONYMIES +HYPONYMS +HYPONYMY +HYPOPHARYNGES +HYPOPHARYNX +HYPOPHARYNXES +HYPOPHYSEAL +HYPOPHYSECTOMY +HYPOPHYSES +HYPOPHYSIAL +HYPOPHYSIS +HYPOPITUITARISM +HYPOPITUITARY +HYPOPLASIA +HYPOPLASIAS +HYPOPLASTIC +HYPOPLOID +HYPOPLOIDS +HYPOPNEA +HYPOPNEAS +HYPOPNEIC +HYPOPYON +HYPOPYONS +HYPOS +HYPOSENSITIZE +HYPOSENSITIZED +HYPOSENSITIZES +HYPOSENSITIZING +HYPOSPADIAS +HYPOSPADIASES +HYPOSTASES +HYPOSTASIS +HYPOSTATIC +HYPOSTATICALLY +HYPOSTATIZATION +HYPOSTATIZE +HYPOSTATIZED +HYPOSTATIZES +HYPOSTATIZING +HYPOSTOME +HYPOSTOMES +HYPOSTYLE +HYPOSTYLES +HYPOTACTIC +HYPOTAXES +HYPOTAXIS +HYPOTENSION +HYPOTENSIONS +HYPOTENSIVE +HYPOTENSIVES +HYPOTENUSE +HYPOTENUSES +HYPOTHALAMI +HYPOTHALAMIC +HYPOTHALAMUS +HYPOTHEC +HYPOTHECATE +HYPOTHECATED +HYPOTHECATES +HYPOTHECATING +HYPOTHECATION +HYPOTHECATIONS +HYPOTHECATOR +HYPOTHECATORS +HYPOTHECS +HYPOTHENUSE +HYPOTHENUSES +HYPOTHERMAL +HYPOTHERMIA +HYPOTHERMIAS +HYPOTHERMIC +HYPOTHESES +HYPOTHESIS +HYPOTHESIZE +HYPOTHESIZED +HYPOTHESIZES +HYPOTHESIZING +HYPOTHETICAL +HYPOTHETICALLY +HYPOTHYROID +HYPOTHYROIDISM +HYPOTHYROIDISMS +HYPOTONIA +HYPOTONIAS +HYPOTONIC +HYPOTONICITIES +HYPOTONICITY +HYPOXANTHINE +HYPOXANTHINES +HYPOXEMIA +HYPOXEMIAS +HYPOXEMIC +HYPOXIA +HYPOXIAS +HYPOXIC +HYPS +HYPSOMETER +HYPSOMETERS +HYPSOMETRIC +HYRACES +HYRACOID +HYRACOIDS +HYRAX +HYRAXES +HYSON +HYSONS +HYSSOP +HYSSOPS +HYSTERECTOMIES +HYSTERECTOMIZED +HYSTERECTOMY +HYSTERESES +HYSTERESIS +HYSTERETIC +HYSTERIA +HYSTERIAS +HYSTERIC +HYSTERICAL +HYSTERICALLY +HYSTERICS +HYSTEROID +HYSTEROTOMIES +HYSTEROTOMY +HYTE +IAMB +IAMBI +IAMBIC +IAMBICS +IAMBS +IAMBUS +IAMBUSES +IATRIC +IATRICAL +IATROGENIC +IATROGENICALLY +IBEX +IBEXES +IBICES +IBIDEM +IBIS +IBISES +IBOGAINE +IBOGAINES +IBUPROFEN +IBUPROFENS +ICE +ICEBERG +ICEBERGS +ICEBLINK +ICEBLINKS +ICEBOAT +ICEBOATER +ICEBOATERS +ICEBOATING +ICEBOATINGS +ICEBOATS +ICEBOUND +ICEBOX +ICEBOXES +ICEBREAKER +ICEBREAKERS +ICECAP +ICECAPPED +ICECAPS +ICED +ICEFALL +ICEFALLS +ICEHOUSE +ICEHOUSES +ICEKHANA +ICEKHANAS +ICELESS +ICELIKE +ICEMAKER +ICEMAKERS +ICEMAN +ICEMEN +ICES +ICH +ICHNEUMON +ICHNEUMONS +ICHNITE +ICHNITES +ICHNOLITE +ICHNOLITES +ICHNOLOGIES +ICHNOLOGY +ICHOR +ICHOROUS +ICHORS +ICHS +ICHTHYIC +ICHTHYOFAUNA +ICHTHYOFAUNAE +ICHTHYOFAUNAL +ICHTHYOFAUNAS +ICHTHYOID +ICHTHYOIDS +ICHTHYOLOGICAL +ICHTHYOLOGIES +ICHTHYOLOGIST +ICHTHYOLOGISTS +ICHTHYOLOGY +ICHTHYOPHAGOUS +ICHTHYOSAUR +ICHTHYOSAURIAN +ICHTHYOSAURIANS +ICHTHYOSAURS +ICICLE +ICICLED +ICICLES +ICIER +ICIEST +ICILY +ICINESS +ICINESSES +ICING +ICINGS +ICK +ICKER +ICKERS +ICKIER +ICKIEST +ICKILY +ICKINESS +ICKINESSES +ICKY +ICON +ICONES +ICONIC +ICONICAL +ICONICALLY +ICONICITIES +ICONICITY +ICONOCLASM +ICONOCLASMS +ICONOCLAST +ICONOCLASTIC +ICONOCLASTS +ICONOGRAPHER +ICONOGRAPHERS +ICONOGRAPHIC +ICONOGRAPHICAL +ICONOGRAPHIES +ICONOGRAPHY +ICONOLATRIES +ICONOLATRY +ICONOLOGICAL +ICONOLOGIES +ICONOLOGY +ICONOSCOPE +ICONOSCOPES +ICONOSTASES +ICONOSTASIS +ICONS +ICOSAHEDRA +ICOSAHEDRAL +ICOSAHEDRON +ICOSAHEDRONS +ICTERIC +ICTERICAL +ICTERICS +ICTERUS +ICTERUSES +ICTIC +ICTUS +ICTUSES +ICY +ID +IDEA +IDEAL +IDEALESS +IDEALISE +IDEALISED +IDEALISES +IDEALISING +IDEALISM +IDEALISMS +IDEALIST +IDEALISTIC +IDEALISTICALLY +IDEALISTS +IDEALITIES +IDEALITY +IDEALIZATION +IDEALIZATIONS +IDEALIZE +IDEALIZED +IDEALIZER +IDEALIZERS +IDEALIZES +IDEALIZING +IDEALLESS +IDEALLY +IDEALOGIES +IDEALOGUE +IDEALOGUES +IDEALOGY +IDEALS +IDEAS +IDEATE +IDEATED +IDEATES +IDEATING +IDEATION +IDEATIONAL +IDEATIONALLY +IDEATIONS +IDEATIVE +IDEM +IDEMPOTENT +IDEMPOTENTS +IDENTIC +IDENTICAL +IDENTICALLY +IDENTICALNESS +IDENTICALNESSES +IDENTIFIABLE +IDENTIFIABLY +IDENTIFICATION +IDENTIFICATIONS +IDENTIFIED +IDENTIFIER +IDENTIFIERS +IDENTIFIES +IDENTIFY +IDENTIFYING +IDENTIKIT +IDENTITIES +IDENTITY +IDEOGRAM +IDEOGRAMIC +IDEOGRAMMATIC +IDEOGRAMMIC +IDEOGRAMS +IDEOGRAPH +IDEOGRAPHIC +IDEOGRAPHICALLY +IDEOGRAPHIES +IDEOGRAPHS +IDEOGRAPHY +IDEOLOGIC +IDEOLOGICAL +IDEOLOGICALLY +IDEOLOGIES +IDEOLOGIST +IDEOLOGISTS +IDEOLOGIZE +IDEOLOGIZED +IDEOLOGIZES +IDEOLOGIZING +IDEOLOGUE +IDEOLOGUES +IDEOLOGY +IDEOMOTOR +IDEOPHONE +IDEOPHONES +IDES +IDIOBLAST +IDIOBLASTIC +IDIOBLASTS +IDIOCIES +IDIOCY +IDIOGRAPHIC +IDIOLECT +IDIOLECTAL +IDIOLECTS +IDIOM +IDIOMATIC +IDIOMATICALLY +IDIOMATICNESS +IDIOMATICNESSES +IDIOMORPHIC +IDIOMS +IDIOPATHIC +IDIOPATHICALLY +IDIOPATHIES +IDIOPATHY +IDIOPLASM +IDIOPLASMS +IDIOSYNCRASIES +IDIOSYNCRASY +IDIOSYNCRATIC +IDIOT +IDIOTIC +IDIOTICAL +IDIOTICALLY +IDIOTISM +IDIOTISMS +IDIOTS +IDIOTYPE +IDIOTYPES +IDIOTYPIC +IDLE +IDLED +IDLENESS +IDLENESSES +IDLER +IDLERS +IDLES +IDLESSE +IDLESSES +IDLEST +IDLING +IDLY +IDOCRASE +IDOCRASES +IDOL +IDOLATER +IDOLATERS +IDOLATOR +IDOLATORS +IDOLATRIES +IDOLATROUS +IDOLATROUSLY +IDOLATROUSNESS +IDOLATRY +IDOLISE +IDOLISED +IDOLISER +IDOLISERS +IDOLISES +IDOLISING +IDOLISM +IDOLISMS +IDOLIZATION +IDOLIZATIONS +IDOLIZE +IDOLIZED +IDOLIZER +IDOLIZERS +IDOLIZES +IDOLIZING +IDOLS +IDONEITIES +IDONEITY +IDONEOUS +IDS +IDYL +IDYLIST +IDYLISTS +IDYLL +IDYLLIC +IDYLLICALLY +IDYLLIST +IDYLLISTS +IDYLLS +IDYLS +IF +IFF +IFFIER +IFFIEST +IFFINESS +IFFINESSES +IFFY +IFS +IGG +IGGED +IGGING +IGGS +IGLOO +IGLOOS +IGLU +IGLUS +IGNATIA +IGNATIAS +IGNEOUS +IGNESCENT +IGNESCENTS +IGNIFIED +IGNIFIES +IGNIFY +IGNIFYING +IGNIMBRITE +IGNIMBRITES +IGNITABILITIES +IGNITABILITY +IGNITABLE +IGNITE +IGNITED +IGNITER +IGNITERS +IGNITES +IGNITIBLE +IGNITING +IGNITION +IGNITIONS +IGNITOR +IGNITORS +IGNITRON +IGNITRONS +IGNOBILITIES +IGNOBILITY +IGNOBLE +IGNOBLENESS +IGNOBLENESSES +IGNOBLY +IGNOMINIES +IGNOMINIOUS +IGNOMINIOUSLY +IGNOMINIOUSNESS +IGNOMINY +IGNORABLE +IGNORAMI +IGNORAMUS +IGNORAMUSES +IGNORANCE +IGNORANCES +IGNORANT +IGNORANTLY +IGNORANTNESS +IGNORANTNESSES +IGNORE +IGNORED +IGNORER +IGNORERS +IGNORES +IGNORING +IGUANA +IGUANAS +IGUANIAN +IGUANIANS +IGUANID +IGUANIDS +IGUANODON +IGUANODONS +IHRAM +IHRAMS +IKAT +IKATS +IKEBANA +IKEBANAS +IKON +IKONS +ILEA +ILEAC +ILEAL +ILEITIDES +ILEITIS +ILEOSTOMIES +ILEOSTOMY +ILEUM +ILEUS +ILEUSES +ILEX +ILEXES +ILIA +ILIAC +ILIAD +ILIADS +ILIAL +ILIUM +ILK +ILKA +ILKS +ILL +ILLATION +ILLATIONS +ILLATIVE +ILLATIVELY +ILLATIVES +ILLAUDABLE +ILLAUDABLY +ILLEGAL +ILLEGALITIES +ILLEGALITY +ILLEGALIZATION +ILLEGALIZATIONS +ILLEGALIZE +ILLEGALIZED +ILLEGALIZES +ILLEGALIZING +ILLEGALLY +ILLEGALS +ILLEGIBILITIES +ILLEGIBILITY +ILLEGIBLE +ILLEGIBLY +ILLEGITIMACIES +ILLEGITIMACY +ILLEGITIMATE +ILLEGITIMATELY +ILLER +ILLEST +ILLIBERAL +ILLIBERALISM +ILLIBERALISMS +ILLIBERALITIES +ILLIBERALITY +ILLIBERALLY +ILLIBERALNESS +ILLIBERALNESSES +ILLICIT +ILLICITLY +ILLIMITABILITY +ILLIMITABLE +ILLIMITABLENESS +ILLIMITABLY +ILLINIUM +ILLINIUMS +ILLIQUID +ILLIQUIDITIES +ILLIQUIDITY +ILLITE +ILLITERACIES +ILLITERACY +ILLITERATE +ILLITERATELY +ILLITERATENESS +ILLITERATES +ILLITES +ILLITIC +ILLNESS +ILLNESSES +ILLOCUTIONARY +ILLOGIC +ILLOGICAL +ILLOGICALITIES +ILLOGICALITY +ILLOGICALLY +ILLOGICALNESS +ILLOGICALNESSES +ILLOGICS +ILLS +ILLUDE +ILLUDED +ILLUDES +ILLUDING +ILLUME +ILLUMED +ILLUMES +ILLUMINABLE +ILLUMINANCE +ILLUMINANCES +ILLUMINANT +ILLUMINANTS +ILLUMINATE +ILLUMINATED +ILLUMINATES +ILLUMINATI +ILLUMINATING +ILLUMINATINGLY +ILLUMINATION +ILLUMINATIONS +ILLUMINATIVE +ILLUMINATOR +ILLUMINATORS +ILLUMINE +ILLUMINED +ILLUMINES +ILLUMING +ILLUMINING +ILLUMINISM +ILLUMINISMS +ILLUMINIST +ILLUMINISTS +ILLUSION +ILLUSIONAL +ILLUSIONARY +ILLUSIONISM +ILLUSIONISMS +ILLUSIONIST +ILLUSIONISTIC +ILLUSIONISTS +ILLUSIONS +ILLUSIVE +ILLUSIVELY +ILLUSIVENESS +ILLUSIVENESSES +ILLUSORILY +ILLUSORINESS +ILLUSORINESSES +ILLUSORY +ILLUSTRATE +ILLUSTRATED +ILLUSTRATES +ILLUSTRATING +ILLUSTRATION +ILLUSTRATIONAL +ILLUSTRATIONS +ILLUSTRATIVE +ILLUSTRATIVELY +ILLUSTRATOR +ILLUSTRATORS +ILLUSTRIOUS +ILLUSTRIOUSLY +ILLUSTRIOUSNESS +ILLUVIA +ILLUVIAL +ILLUVIATE +ILLUVIATED +ILLUVIATES +ILLUVIATING +ILLUVIATION +ILLUVIATIONS +ILLUVIUM +ILLUVIUMS +ILLY +ILMENITE +ILMENITES +IMAGE +IMAGEABLE +IMAGED +IMAGER +IMAGERIES +IMAGERS +IMAGERY +IMAGES +IMAGINABLE +IMAGINABLENESS +IMAGINABLY +IMAGINAL +IMAGINARIES +IMAGINARILY +IMAGINARINESS +IMAGINARINESSES +IMAGINARY +IMAGINATION +IMAGINATIONS +IMAGINATIVE +IMAGINATIVELY +IMAGINATIVENESS +IMAGINE +IMAGINED +IMAGINER +IMAGINERS +IMAGINES +IMAGING +IMAGINGS +IMAGINING +IMAGISM +IMAGISMS +IMAGIST +IMAGISTIC +IMAGISTICALLY +IMAGISTS +IMAGO +IMAGOES +IMAGOS +IMAM +IMAMATE +IMAMATES +IMAMS +IMARET +IMARETS +IMAUM +IMAUMS +IMBALANCE +IMBALANCED +IMBALANCES +IMBALM +IMBALMED +IMBALMER +IMBALMERS +IMBALMING +IMBALMS +IMBARK +IMBARKED +IMBARKING +IMBARKS +IMBECILE +IMBECILES +IMBECILIC +IMBECILITIES +IMBECILITY +IMBED +IMBEDDED +IMBEDDING +IMBEDS +IMBIBE +IMBIBED +IMBIBER +IMBIBERS +IMBIBES +IMBIBING +IMBIBITION +IMBIBITIONAL +IMBIBITIONS +IMBITTER +IMBITTERED +IMBITTERING +IMBITTERS +IMBLAZE +IMBLAZED +IMBLAZES +IMBLAZING +IMBODIED +IMBODIES +IMBODY +IMBODYING +IMBOLDEN +IMBOLDENED +IMBOLDENING +IMBOLDENS +IMBOSOM +IMBOSOMED +IMBOSOMING +IMBOSOMS +IMBOWER +IMBOWERED +IMBOWERING +IMBOWERS +IMBRICATE +IMBRICATED +IMBRICATES +IMBRICATING +IMBRICATION +IMBRICATIONS +IMBROGLIO +IMBROGLIOS +IMBROWN +IMBROWNED +IMBROWNING +IMBROWNS +IMBRUE +IMBRUED +IMBRUES +IMBRUING +IMBRUTE +IMBRUTED +IMBRUTES +IMBRUTING +IMBUE +IMBUED +IMBUEMENT +IMBUEMENTS +IMBUES +IMBUING +IMID +IMIDAZOLE +IMIDAZOLES +IMIDE +IMIDES +IMIDIC +IMIDO +IMIDS +IMINE +IMINES +IMINO +IMIPRAMINE +IMIPRAMINES +IMITABLE +IMITATE +IMITATED +IMITATES +IMITATING +IMITATION +IMITATIONS +IMITATIVE +IMITATIVELY +IMITATIVENESS +IMITATIVENESSES +IMITATOR +IMITATORS +IMMACULACIES +IMMACULACY +IMMACULATE +IMMACULATELY +IMMANE +IMMANENCE +IMMANENCES +IMMANENCIES +IMMANENCY +IMMANENT +IMMANENTISM +IMMANENTISMS +IMMANENTIST +IMMANENTISTIC +IMMANENTISTS +IMMANENTLY +IMMATERIAL +IMMATERIALISM +IMMATERIALISMS +IMMATERIALIST +IMMATERIALISTS +IMMATERIALITIES +IMMATERIALITY +IMMATERIALIZE +IMMATERIALIZED +IMMATERIALIZES +IMMATERIALIZING +IMMATURE +IMMATURELY +IMMATURES +IMMATURITIES +IMMATURITY +IMMEASURABLE +IMMEASURABLY +IMMEDIACIES +IMMEDIACY +IMMEDIATE +IMMEDIATELY +IMMEDIATENESS +IMMEDIATENESSES +IMMEDICABLE +IMMEDICABLY +IMMEMORIAL +IMMEMORIALLY +IMMENSE +IMMENSELY +IMMENSENESS +IMMENSENESSES +IMMENSER +IMMENSEST +IMMENSITIES +IMMENSITY +IMMENSURABLE +IMMERGE +IMMERGED +IMMERGES +IMMERGING +IMMERSE +IMMERSED +IMMERSES +IMMERSIBLE +IMMERSING +IMMERSION +IMMERSIONS +IMMESH +IMMESHED +IMMESHES +IMMESHING +IMMETHODICAL +IMMETHODICALLY +IMMIES +IMMIGRANT +IMMIGRANTS +IMMIGRATE +IMMIGRATED +IMMIGRATES +IMMIGRATING +IMMIGRATION +IMMIGRATIONAL +IMMIGRATIONS +IMMINENCE +IMMINENCES +IMMINENCIES +IMMINENCY +IMMINENT +IMMINENTLY +IMMINGLE +IMMINGLED +IMMINGLES +IMMINGLING +IMMISCIBILITIES +IMMISCIBILITY +IMMISCIBLE +IMMITIGABLE +IMMITIGABLY +IMMITTANCE +IMMITTANCES +IMMIX +IMMIXED +IMMIXES +IMMIXING +IMMIXTURE +IMMIXTURES +IMMOBILE +IMMOBILISM +IMMOBILISMS +IMMOBILITIES +IMMOBILITY +IMMOBILIZATION +IMMOBILIZATIONS +IMMOBILIZE +IMMOBILIZED +IMMOBILIZER +IMMOBILIZERS +IMMOBILIZES +IMMOBILIZING +IMMODERACIES +IMMODERACY +IMMODERATE +IMMODERATELY +IMMODERATENESS +IMMODERATION +IMMODERATIONS +IMMODEST +IMMODESTIES +IMMODESTLY +IMMODESTY +IMMOLATE +IMMOLATED +IMMOLATES +IMMOLATING +IMMOLATION +IMMOLATIONS +IMMOLATOR +IMMOLATORS +IMMORAL +IMMORALISM +IMMORALISMS +IMMORALIST +IMMORALISTS +IMMORALITIES +IMMORALITY +IMMORALLY +IMMORTAL +IMMORTALISE +IMMORTALISED +IMMORTALISES +IMMORTALISING +IMMORTALITIES +IMMORTALITY +IMMORTALIZATION +IMMORTALIZE +IMMORTALIZED +IMMORTALIZER +IMMORTALIZERS +IMMORTALIZES +IMMORTALIZING +IMMORTALLY +IMMORTALS +IMMORTELLE +IMMORTELLES +IMMOTILE +IMMOVABILITIES +IMMOVABILITY +IMMOVABLE +IMMOVABLENESS +IMMOVABLENESSES +IMMOVABLES +IMMOVABLY +IMMUNE +IMMUNES +IMMUNISE +IMMUNISED +IMMUNISES +IMMUNISING +IMMUNITIES +IMMUNITY +IMMUNIZATION +IMMUNIZATIONS +IMMUNIZE +IMMUNIZED +IMMUNIZER +IMMUNIZERS +IMMUNIZES +IMMUNIZING +IMMUNOASSAY +IMMUNOASSAYABLE +IMMUNOASSAYS +IMMUNOBLOT +IMMUNOBLOTS +IMMUNOBLOTTING +IMMUNOBLOTTINGS +IMMUNOCHEMICAL +IMMUNOCHEMIST +IMMUNOCHEMISTRY +IMMUNOCHEMISTS +IMMUNOCOMPETENT +IMMUNODEFICIENT +IMMUNODIAGNOSES +IMMUNODIAGNOSIS +IMMUNODIFFUSION +IMMUNOGEN +IMMUNOGENESES +IMMUNOGENESIS +IMMUNOGENETIC +IMMUNOGENETICS +IMMUNOGENIC +IMMUNOGENICITY +IMMUNOGENS +IMMUNOGLOBULIN +IMMUNOGLOBULINS +IMMUNOLOGIC +IMMUNOLOGICAL +IMMUNOLOGICALLY +IMMUNOLOGIES +IMMUNOLOGIST +IMMUNOLOGISTS +IMMUNOLOGY +IMMUNOMODULATOR +IMMUNOPATHOLOGY +IMMUNOREACTIVE +IMMUNOSORBENT +IMMUNOSORBENTS +IMMUNOSUPPRESS +IMMUNOTHERAPIES +IMMUNOTHERAPY +IMMURE +IMMURED +IMMUREMENT +IMMUREMENTS +IMMURES +IMMURING +IMMUTABILITIES +IMMUTABILITY +IMMUTABLE +IMMUTABLENESS +IMMUTABLENESSES +IMMUTABLY +IMMY +IMP +IMPACT +IMPACTED +IMPACTER +IMPACTERS +IMPACTFUL +IMPACTING +IMPACTION +IMPACTIONS +IMPACTIVE +IMPACTOR +IMPACTORS +IMPACTS +IMPAINT +IMPAINTED +IMPAINTING +IMPAINTS +IMPAIR +IMPAIRED +IMPAIRER +IMPAIRERS +IMPAIRING +IMPAIRMENT +IMPAIRMENTS +IMPAIRS +IMPALA +IMPALAS +IMPALE +IMPALED +IMPALEMENT +IMPALEMENTS +IMPALER +IMPALERS +IMPALES +IMPALING +IMPALPABILITIES +IMPALPABILITY +IMPALPABLE +IMPALPABLY +IMPANEL +IMPANELED +IMPANELING +IMPANELLED +IMPANELLING +IMPANELS +IMPARADISE +IMPARADISED +IMPARADISES +IMPARADISING +IMPARITIES +IMPARITY +IMPARK +IMPARKED +IMPARKING +IMPARKS +IMPART +IMPARTATION +IMPARTATIONS +IMPARTED +IMPARTER +IMPARTERS +IMPARTIAL +IMPARTIALITIES +IMPARTIALITY +IMPARTIALLY +IMPARTIBLE +IMPARTIBLY +IMPARTING +IMPARTMENT +IMPARTMENTS +IMPARTS +IMPASSABILITIES +IMPASSABILITY +IMPASSABLE +IMPASSABLENESS +IMPASSABLY +IMPASSE +IMPASSES +IMPASSIBILITIES +IMPASSIBILITY +IMPASSIBLE +IMPASSIBLY +IMPASSION +IMPASSIONED +IMPASSIONING +IMPASSIONS +IMPASSIVE +IMPASSIVELY +IMPASSIVENESS +IMPASSIVENESSES +IMPASSIVITIES +IMPASSIVITY +IMPASTE +IMPASTED +IMPASTES +IMPASTING +IMPASTO +IMPASTOED +IMPASTOS +IMPATIENCE +IMPATIENCES +IMPATIENS +IMPATIENT +IMPATIENTLY +IMPAVID +IMPAWN +IMPAWNED +IMPAWNING +IMPAWNS +IMPEACH +IMPEACHABLE +IMPEACHED +IMPEACHER +IMPEACHERS +IMPEACHES +IMPEACHING +IMPEACHMENT +IMPEACHMENTS +IMPEARL +IMPEARLED +IMPEARLING +IMPEARLS +IMPECCABILITIES +IMPECCABILITY +IMPECCABLE +IMPECCABLY +IMPECCANT +IMPECUNIOSITIES +IMPECUNIOSITY +IMPECUNIOUS +IMPECUNIOUSLY +IMPECUNIOUSNESS +IMPED +IMPEDANCE +IMPEDANCES +IMPEDE +IMPEDED +IMPEDER +IMPEDERS +IMPEDES +IMPEDIMENT +IMPEDIMENTA +IMPEDIMENTS +IMPEDING +IMPEL +IMPELLED +IMPELLENT +IMPELLENTS +IMPELLER +IMPELLERS +IMPELLING +IMPELLOR +IMPELLORS +IMPELS +IMPEND +IMPENDED +IMPENDENT +IMPENDING +IMPENDS +IMPENETRABILITY +IMPENETRABLE +IMPENETRABLY +IMPENITENCE +IMPENITENCES +IMPENITENT +IMPENITENTLY +IMPERATIVE +IMPERATIVELY +IMPERATIVENESS +IMPERATIVES +IMPERATOR +IMPERATORIAL +IMPERATORS +IMPERCEIVABLE +IMPERCEPTIBLE +IMPERCEPTIBLY +IMPERCEPTIVE +IMPERCIPIENCE +IMPERCIPIENCES +IMPERCIPIENT +IMPERFECT +IMPERFECTION +IMPERFECTIONS +IMPERFECTIVE +IMPERFECTIVES +IMPERFECTLY +IMPERFECTNESS +IMPERFECTNESSES +IMPERFECTS +IMPERFORATE +IMPERIA +IMPERIAL +IMPERIALISM +IMPERIALISMS +IMPERIALIST +IMPERIALISTIC +IMPERIALISTS +IMPERIALLY +IMPERIALS +IMPERIL +IMPERILED +IMPERILING +IMPERILLED +IMPERILLING +IMPERILMENT +IMPERILMENTS +IMPERILS +IMPERIOUS +IMPERIOUSLY +IMPERIOUSNESS +IMPERIOUSNESSES +IMPERISHABILITY +IMPERISHABLE +IMPERISHABLES +IMPERISHABLY +IMPERIUM +IMPERIUMS +IMPERMANENCE +IMPERMANENCES +IMPERMANENCIES +IMPERMANENCY +IMPERMANENT +IMPERMANENTLY +IMPERMEABILITY +IMPERMEABLE +IMPERMISSIBLE +IMPERMISSIBLY +IMPERSONAL +IMPERSONALITIES +IMPERSONALITY +IMPERSONALIZE +IMPERSONALIZED +IMPERSONALIZES +IMPERSONALIZING +IMPERSONALLY +IMPERSONATE +IMPERSONATED +IMPERSONATES +IMPERSONATING +IMPERSONATION +IMPERSONATIONS +IMPERSONATOR +IMPERSONATORS +IMPERTINENCE +IMPERTINENCES +IMPERTINENCIES +IMPERTINENCY +IMPERTINENT +IMPERTINENTLY +IMPERTURBABLE +IMPERTURBABLY +IMPERVIOUS +IMPERVIOUSLY +IMPERVIOUSNESS +IMPETIGINOUS +IMPETIGO +IMPETIGOS +IMPETRATE +IMPETRATED +IMPETRATES +IMPETRATING +IMPETRATION +IMPETRATIONS +IMPETUOSITIES +IMPETUOSITY +IMPETUOUS +IMPETUOUSLY +IMPETUOUSNESS +IMPETUOUSNESSES +IMPETUS +IMPETUSES +IMPHEE +IMPHEES +IMPI +IMPIETIES +IMPIETY +IMPING +IMPINGE +IMPINGED +IMPINGEMENT +IMPINGEMENTS +IMPINGER +IMPINGERS +IMPINGES +IMPINGING +IMPINGS +IMPIOUS +IMPIOUSLY +IMPIS +IMPISH +IMPISHLY +IMPISHNESS +IMPISHNESSES +IMPLACABILITIES +IMPLACABILITY +IMPLACABLE +IMPLACABLY +IMPLANT +IMPLANTABLE +IMPLANTATION +IMPLANTATIONS +IMPLANTED +IMPLANTER +IMPLANTERS +IMPLANTING +IMPLANTS +IMPLAUSIBILITY +IMPLAUSIBLE +IMPLAUSIBLY +IMPLEAD +IMPLEADED +IMPLEADER +IMPLEADERS +IMPLEADING +IMPLEADS +IMPLED +IMPLEDGE +IMPLEDGED +IMPLEDGES +IMPLEDGING +IMPLEMENT +IMPLEMENTATION +IMPLEMENTATIONS +IMPLEMENTED +IMPLEMENTER +IMPLEMENTERS +IMPLEMENTING +IMPLEMENTOR +IMPLEMENTORS +IMPLEMENTS +IMPLETION +IMPLETIONS +IMPLICATE +IMPLICATED +IMPLICATES +IMPLICATING +IMPLICATION +IMPLICATIONS +IMPLICATIVE +IMPLICATIVELY +IMPLICATIVENESS +IMPLICIT +IMPLICITLY +IMPLICITNESS +IMPLICITNESSES +IMPLIED +IMPLIES +IMPLODE +IMPLODED +IMPLODES +IMPLODING +IMPLORE +IMPLORED +IMPLORER +IMPLORERS +IMPLORES +IMPLORING +IMPLORINGLY +IMPLOSION +IMPLOSIONS +IMPLOSIVE +IMPLOSIVES +IMPLY +IMPLYING +IMPOLICIES +IMPOLICY +IMPOLITE +IMPOLITELY +IMPOLITENESS +IMPOLITENESSES +IMPOLITIC +IMPOLITICAL +IMPOLITICALLY +IMPOLITICLY +IMPONDERABILITY +IMPONDERABLE +IMPONDERABLES +IMPONDERABLY +IMPONE +IMPONED +IMPONES +IMPONING +IMPOROUS +IMPORT +IMPORTABLE +IMPORTANCE +IMPORTANCES +IMPORTANCIES +IMPORTANCY +IMPORTANT +IMPORTANTLY +IMPORTATION +IMPORTATIONS +IMPORTED +IMPORTER +IMPORTERS +IMPORTING +IMPORTS +IMPORTUNATE +IMPORTUNATELY +IMPORTUNATENESS +IMPORTUNE +IMPORTUNED +IMPORTUNELY +IMPORTUNER +IMPORTUNERS +IMPORTUNES +IMPORTUNING +IMPORTUNITIES +IMPORTUNITY +IMPOSABLE +IMPOSE +IMPOSED +IMPOSER +IMPOSERS +IMPOSES +IMPOSING +IMPOSINGLY +IMPOSITION +IMPOSITIONS +IMPOSSIBILITIES +IMPOSSIBILITY +IMPOSSIBLE +IMPOSSIBLENESS +IMPOSSIBLY +IMPOST +IMPOSTED +IMPOSTER +IMPOSTERS +IMPOSTHUME +IMPOSTHUMES +IMPOSTING +IMPOSTOR +IMPOSTORS +IMPOSTS +IMPOSTUME +IMPOSTUMES +IMPOSTURE +IMPOSTURES +IMPOTENCE +IMPOTENCES +IMPOTENCIES +IMPOTENCY +IMPOTENT +IMPOTENTLY +IMPOTENTS +IMPOUND +IMPOUNDED +IMPOUNDER +IMPOUNDERS +IMPOUNDING +IMPOUNDMENT +IMPOUNDMENTS +IMPOUNDS +IMPOVERISH +IMPOVERISHED +IMPOVERISHER +IMPOVERISHERS +IMPOVERISHES +IMPOVERISHING +IMPOVERISHMENT +IMPOVERISHMENTS +IMPOWER +IMPOWERED +IMPOWERING +IMPOWERS +IMPRACTICABLE +IMPRACTICABLY +IMPRACTICAL +IMPRACTICALITY +IMPRACTICALLY +IMPRECATE +IMPRECATED +IMPRECATES +IMPRECATING +IMPRECATION +IMPRECATIONS +IMPRECATORY +IMPRECISE +IMPRECISELY +IMPRECISENESS +IMPRECISENESSES +IMPRECISION +IMPRECISIONS +IMPREGN +IMPREGNABILITY +IMPREGNABLE +IMPREGNABLENESS +IMPREGNABLY +IMPREGNANT +IMPREGNANTS +IMPREGNATE +IMPREGNATED +IMPREGNATES +IMPREGNATING +IMPREGNATION +IMPREGNATIONS +IMPREGNATOR +IMPREGNATORS +IMPREGNED +IMPREGNING +IMPREGNS +IMPRESA +IMPRESARIO +IMPRESARIOS +IMPRESAS +IMPRESE +IMPRESES +IMPRESS +IMPRESSED +IMPRESSES +IMPRESSIBILITY +IMPRESSIBLE +IMPRESSING +IMPRESSION +IMPRESSIONABLE +IMPRESSIONISM +IMPRESSIONISMS +IMPRESSIONIST +IMPRESSIONISTIC +IMPRESSIONISTS +IMPRESSIONS +IMPRESSIVE +IMPRESSIVELY +IMPRESSIVENESS +IMPRESSMENT +IMPRESSMENTS +IMPRESSURE +IMPRESSURES +IMPREST +IMPRESTS +IMPRIMATUR +IMPRIMATURS +IMPRIMIS +IMPRINT +IMPRINTED +IMPRINTER +IMPRINTERS +IMPRINTING +IMPRINTINGS +IMPRINTS +IMPRISON +IMPRISONED +IMPRISONING +IMPRISONMENT +IMPRISONMENTS +IMPRISONS +IMPROBABILITIES +IMPROBABILITY +IMPROBABLE +IMPROBABLY +IMPROBITIES +IMPROBITY +IMPROMPTU +IMPROMPTUS +IMPROPER +IMPROPERLY +IMPROPERNESS +IMPROPERNESSES +IMPROPRIETIES +IMPROPRIETY +IMPROV +IMPROVABILITIES +IMPROVABILITY +IMPROVABLE +IMPROVE +IMPROVED +IMPROVEMENT +IMPROVEMENTS +IMPROVER +IMPROVERS +IMPROVES +IMPROVIDENCE +IMPROVIDENCES +IMPROVIDENT +IMPROVIDENTLY +IMPROVING +IMPROVISATION +IMPROVISATIONAL +IMPROVISATIONS +IMPROVISATOR +IMPROVISATORE +IMPROVISATORES +IMPROVISATORI +IMPROVISATORIAL +IMPROVISATORS +IMPROVISATORY +IMPROVISE +IMPROVISED +IMPROVISER +IMPROVISERS +IMPROVISES +IMPROVISING +IMPROVISOR +IMPROVISORS +IMPROVS +IMPRUDENCE +IMPRUDENCES +IMPRUDENT +IMPRUDENTLY +IMPS +IMPUDENCE +IMPUDENCES +IMPUDENCIES +IMPUDENCY +IMPUDENT +IMPUDENTLY +IMPUDICITIES +IMPUDICITY +IMPUGN +IMPUGNABLE +IMPUGNED +IMPUGNER +IMPUGNERS +IMPUGNING +IMPUGNS +IMPUISSANCE +IMPUISSANCES +IMPUISSANT +IMPULSE +IMPULSED +IMPULSES +IMPULSING +IMPULSION +IMPULSIONS +IMPULSIVE +IMPULSIVELY +IMPULSIVENESS +IMPULSIVENESSES +IMPULSIVITIES +IMPULSIVITY +IMPUNITIES +IMPUNITY +IMPURE +IMPURELY +IMPURENESS +IMPURENESSES +IMPURER +IMPUREST +IMPURITIES +IMPURITY +IMPUTABILITIES +IMPUTABILITY +IMPUTABLE +IMPUTABLY +IMPUTATION +IMPUTATIONS +IMPUTATIVE +IMPUTATIVELY +IMPUTE +IMPUTED +IMPUTER +IMPUTERS +IMPUTES +IMPUTING +IN +INABILITIES +INABILITY +INACCESSIBILITY +INACCESSIBLE +INACCESSIBLY +INACCURACIES +INACCURACY +INACCURATE +INACCURATELY +INACTION +INACTIONS +INACTIVATE +INACTIVATED +INACTIVATES +INACTIVATING +INACTIVATION +INACTIVATIONS +INACTIVE +INACTIVELY +INACTIVITIES +INACTIVITY +INADEQUACIES +INADEQUACY +INADEQUATE +INADEQUATELY +INADEQUATENESS +INADMISSIBILITY +INADMISSIBLE +INADMISSIBLY +INADVERTENCE +INADVERTENCES +INADVERTENCIES +INADVERTENCY +INADVERTENT +INADVERTENTLY +INADVISABILITY +INADVISABLE +INALIENABILITY +INALIENABLE +INALIENABLY +INALTERABILITY +INALTERABLE +INALTERABLENESS +INALTERABLY +INAMORATA +INAMORATAS +INAMORATO +INAMORATOS +INANE +INANELY +INANENESS +INANENESSES +INANER +INANES +INANEST +INANIMATE +INANIMATELY +INANIMATENESS +INANIMATENESSES +INANITIES +INANITION +INANITIONS +INANITY +INAPPARENT +INAPPARENTLY +INAPPEASABLE +INAPPETENCE +INAPPETENCES +INAPPLICABILITY +INAPPLICABLE +INAPPLICABLY +INAPPOSITE +INAPPOSITELY +INAPPOSITENESS +INAPPRECIABLE +INAPPRECIABLY +INAPPRECIATIVE +INAPPROACHABLE +INAPPROPRIATE +INAPPROPRIATELY +INAPT +INAPTITUDE +INAPTITUDES +INAPTLY +INAPTNESS +INAPTNESSES +INARABLE +INARCH +INARCHED +INARCHES +INARCHING +INARGUABLE +INARGUABLY +INARM +INARMED +INARMING +INARMS +INARTICULACIES +INARTICULACY +INARTICULATE +INARTICULATELY +INARTICULATES +INARTISTIC +INARTISTICALLY +INATTENTION +INATTENTIONS +INATTENTIVE +INATTENTIVELY +INATTENTIVENESS +INAUDIBILITIES +INAUDIBILITY +INAUDIBLE +INAUDIBLY +INAUGURAL +INAUGURALS +INAUGURATE +INAUGURATED +INAUGURATES +INAUGURATING +INAUGURATION +INAUGURATIONS +INAUGURATOR +INAUGURATORS +INAUSPICIOUS +INAUSPICIOUSLY +INAUTHENTIC +INAUTHENTICITY +INBEING +INBEINGS +INBOARD +INBOARDS +INBORN +INBOUND +INBOUNDED +INBOUNDING +INBOUNDS +INBREATHE +INBREATHED +INBREATHES +INBREATHING +INBRED +INBREDS +INBREED +INBREEDER +INBREEDERS +INBREEDING +INBREEDINGS +INBREEDS +INBUILT +INBURST +INBURSTS +INBY +INBYE +INCAGE +INCAGED +INCAGES +INCAGING +INCALCULABILITY +INCALCULABLE +INCALCULABLY +INCALESCENCE +INCALESCENCES +INCALESCENT +INCANDESCE +INCANDESCED +INCANDESCENCE +INCANDESCENCES +INCANDESCENT +INCANDESCENTLY +INCANDESCENTS +INCANDESCES +INCANDESCING +INCANT +INCANTATION +INCANTATIONAL +INCANTATIONS +INCANTATORY +INCANTED +INCANTING +INCANTS +INCAPABILITIES +INCAPABILITY +INCAPABLE +INCAPABLENESS +INCAPABLENESSES +INCAPABLY +INCAPACITATE +INCAPACITATED +INCAPACITATES +INCAPACITATING +INCAPACITATION +INCAPACITATIONS +INCAPACITIES +INCAPACITY +INCARCERATE +INCARCERATED +INCARCERATES +INCARCERATING +INCARCERATION +INCARCERATIONS +INCARDINATION +INCARDINATIONS +INCARNADINE +INCARNADINED +INCARNADINES +INCARNADINING +INCARNATE +INCARNATED +INCARNATES +INCARNATING +INCARNATION +INCARNATIONS +INCASE +INCASED +INCASES +INCASING +INCAUTION +INCAUTIONS +INCAUTIOUS +INCAUTIOUSLY +INCAUTIOUSNESS +INCENDIARIES +INCENDIARISM +INCENDIARISMS +INCENDIARY +INCENSE +INCENSED +INCENSES +INCENSING +INCENT +INCENTED +INCENTER +INCENTERS +INCENTING +INCENTIVE +INCENTIVES +INCENTIVIZE +INCENTIVIZED +INCENTIVIZES +INCENTIVIZING +INCENTS +INCEPT +INCEPTED +INCEPTING +INCEPTION +INCEPTIONS +INCEPTIVE +INCEPTIVELY +INCEPTIVES +INCEPTOR +INCEPTORS +INCEPTS +INCERTITUDE +INCERTITUDES +INCESSANCIES +INCESSANCY +INCESSANT +INCESSANTLY +INCEST +INCESTS +INCESTUOUS +INCESTUOUSLY +INCESTUOUSNESS +INCH +INCHED +INCHER +INCHERS +INCHES +INCHING +INCHMEAL +INCHOATE +INCHOATELY +INCHOATENESS +INCHOATENESSES +INCHOATIVE +INCHOATIVELY +INCHOATIVES +INCHWORM +INCHWORMS +INCIDENCE +INCIDENCES +INCIDENT +INCIDENTAL +INCIDENTALLY +INCIDENTALS +INCIDENTS +INCINERATE +INCINERATED +INCINERATES +INCINERATING +INCINERATION +INCINERATIONS +INCINERATOR +INCINERATORS +INCIPIENCE +INCIPIENCES +INCIPIENCIES +INCIPIENCY +INCIPIENT +INCIPIENTLY +INCIPIT +INCIPITS +INCISAL +INCISE +INCISED +INCISES +INCISING +INCISION +INCISIONS +INCISIVE +INCISIVELY +INCISIVENESS +INCISIVENESSES +INCISOR +INCISORS +INCISORY +INCISURE +INCISURES +INCITABLE +INCITANT +INCITANTS +INCITATION +INCITATIONS +INCITE +INCITED +INCITEMENT +INCITEMENTS +INCITER +INCITERS +INCITES +INCITING +INCIVIL +INCIVILITIES +INCIVILITY +INCLASP +INCLASPED +INCLASPING +INCLASPS +INCLEMENCIES +INCLEMENCY +INCLEMENT +INCLEMENTLY +INCLINABLE +INCLINATION +INCLINATIONAL +INCLINATIONS +INCLINE +INCLINED +INCLINER +INCLINERS +INCLINES +INCLINING +INCLININGS +INCLINOMETER +INCLINOMETERS +INCLIP +INCLIPPED +INCLIPPING +INCLIPS +INCLOSE +INCLOSED +INCLOSER +INCLOSERS +INCLOSES +INCLOSING +INCLOSURE +INCLOSURES +INCLUDABLE +INCLUDE +INCLUDED +INCLUDES +INCLUDIBLE +INCLUDING +INCLUSION +INCLUSIONS +INCLUSIVE +INCLUSIVELY +INCLUSIVENESS +INCLUSIVENESSES +INCOERCIBLE +INCOG +INCOGITANT +INCOGNITA +INCOGNITAS +INCOGNITO +INCOGNITOS +INCOGNIZANCE +INCOGNIZANCES +INCOGNIZANT +INCOGS +INCOHERENCE +INCOHERENCES +INCOHERENT +INCOHERENTLY +INCOMBUSTIBLE +INCOMBUSTIBLES +INCOME +INCOMER +INCOMERS +INCOMES +INCOMING +INCOMINGS +INCOMMENSURABLE +INCOMMENSURABLY +INCOMMENSURATE +INCOMMODE +INCOMMODED +INCOMMODES +INCOMMODING +INCOMMODIOUS +INCOMMODIOUSLY +INCOMMODITIES +INCOMMODITY +INCOMMUNICABLE +INCOMMUNICABLY +INCOMMUNICADO +INCOMMUNICATIVE +INCOMMUTABLE +INCOMMUTABLY +INCOMPACT +INCOMPARABILITY +INCOMPARABLE +INCOMPARABLY +INCOMPATIBILITY +INCOMPATIBLE +INCOMPATIBLES +INCOMPATIBLY +INCOMPETENCE +INCOMPETENCES +INCOMPETENCIES +INCOMPETENCY +INCOMPETENT +INCOMPETENTLY +INCOMPETENTS +INCOMPLETE +INCOMPLETELY +INCOMPLETENESS +INCOMPLIANT +INCOMPREHENSION +INCOMPRESSIBLE +INCOMPUTABLE +INCOMPUTABLY +INCONCEIVABLE +INCONCEIVABLY +INCONCINNITIES +INCONCINNITY +INCONCLUSIVE +INCONCLUSIVELY +INCONDITE +INCONFORMITIES +INCONFORMITY +INCONGRUENCE +INCONGRUENCES +INCONGRUENT +INCONGRUENTLY +INCONGRUITIES +INCONGRUITY +INCONGRUOUS +INCONGRUOUSLY +INCONGRUOUSNESS +INCONNU +INCONNUS +INCONSCIENT +INCONSECUTIVE +INCONSEQUENCE +INCONSEQUENCES +INCONSEQUENT +INCONSEQUENTIAL +INCONSEQUENTLY +INCONSIDERABLE +INCONSIDERABLY +INCONSIDERATE +INCONSIDERATELY +INCONSIDERATION +INCONSISTENCE +INCONSISTENCES +INCONSISTENCIES +INCONSISTENCY +INCONSISTENT +INCONSISTENTLY +INCONSOLABLE +INCONSOLABLY +INCONSONANCE +INCONSONANCES +INCONSONANT +INCONSPICUOUS +INCONSPICUOUSLY +INCONSTANCIES +INCONSTANCY +INCONSTANT +INCONSTANTLY +INCONSUMABLE +INCONSUMABLY +INCONTESTABLE +INCONTESTABLY +INCONTINENCE +INCONTINENCES +INCONTINENCIES +INCONTINENCY +INCONTINENT +INCONTINENTLY +INCONTROLLABLE +INCONVENIENCE +INCONVENIENCED +INCONVENIENCES +INCONVENIENCIES +INCONVENIENCING +INCONVENIENCY +INCONVENIENT +INCONVENIENTLY +INCONVERTIBLE +INCONVERTIBLY +INCONVINCIBLE +INCONY +INCOORDINATION +INCOORDINATIONS +INCORPORABLE +INCORPORATE +INCORPORATED +INCORPORATES +INCORPORATING +INCORPORATION +INCORPORATIONS +INCORPORATIVE +INCORPORATOR +INCORPORATORS +INCORPOREAL +INCORPOREALLY +INCORPOREITIES +INCORPOREITY +INCORPSE +INCORPSED +INCORPSES +INCORPSING +INCORRECT +INCORRECTLY +INCORRECTNESS +INCORRECTNESSES +INCORRIGIBILITY +INCORRIGIBLE +INCORRIGIBLES +INCORRIGIBLY +INCORRUPT +INCORRUPTED +INCORRUPTIBLE +INCORRUPTIBLES +INCORRUPTIBLY +INCORRUPTION +INCORRUPTIONS +INCORRUPTLY +INCORRUPTNESS +INCORRUPTNESSES +INCREASABLE +INCREASE +INCREASED +INCREASER +INCREASERS +INCREASES +INCREASING +INCREASINGLY +INCREATE +INCREDIBILITIES +INCREDIBILITY +INCREDIBLE +INCREDIBLENESS +INCREDIBLY +INCREDULITIES +INCREDULITY +INCREDULOUS +INCREDULOUSLY +INCREMENT +INCREMENTAL +INCREMENTALISM +INCREMENTALISMS +INCREMENTALIST +INCREMENTALISTS +INCREMENTALLY +INCREMENTS +INCRESCENT +INCRETION +INCRETIONS +INCRIMINATE +INCRIMINATED +INCRIMINATES +INCRIMINATING +INCRIMINATION +INCRIMINATIONS +INCRIMINATORY +INCROSS +INCROSSED +INCROSSES +INCROSSING +INCRUST +INCRUSTATION +INCRUSTATIONS +INCRUSTED +INCRUSTING +INCRUSTS +INCUBATE +INCUBATED +INCUBATES +INCUBATING +INCUBATION +INCUBATIONS +INCUBATIVE +INCUBATOR +INCUBATORS +INCUBATORY +INCUBI +INCUBUS +INCUBUSES +INCUDAL +INCUDATE +INCUDES +INCULCATE +INCULCATED +INCULCATES +INCULCATING +INCULCATION +INCULCATIONS +INCULCATOR +INCULCATORS +INCULPABLE +INCULPATE +INCULPATED +INCULPATES +INCULPATING +INCULPATION +INCULPATIONS +INCULPATORY +INCULT +INCUMBENCIES +INCUMBENCY +INCUMBENT +INCUMBENTS +INCUMBER +INCUMBERED +INCUMBERING +INCUMBERS +INCUNABLE +INCUNABLES +INCUNABULA +INCUNABULUM +INCUR +INCURABLE +INCURABLES +INCURABLY +INCURIOSITIES +INCURIOSITY +INCURIOUS +INCURIOUSLY +INCURIOUSNESS +INCURIOUSNESSES +INCURRED +INCURRENCE +INCURRENCES +INCURRENT +INCURRING +INCURS +INCURSION +INCURSIONS +INCURSIVE +INCURVATE +INCURVATED +INCURVATES +INCURVATING +INCURVATION +INCURVATIONS +INCURVATURE +INCURVATURES +INCURVE +INCURVED +INCURVES +INCURVING +INCUS +INCUSE +INCUSED +INCUSES +INCUSING +INDABA +INDABAS +INDAGATE +INDAGATED +INDAGATES +INDAGATING +INDAGATION +INDAGATIONS +INDAGATOR +INDAGATORS +INDAMIN +INDAMINE +INDAMINES +INDAMINS +INDEBTED +INDEBTEDNESS +INDEBTEDNESSES +INDECENCIES +INDECENCY +INDECENT +INDECENTER +INDECENTEST +INDECENTLY +INDECIPHERABLE +INDECISION +INDECISIONS +INDECISIVE +INDECISIVELY +INDECISIVENESS +INDECLINABLE +INDECOMPOSABLE +INDECOROUS +INDECOROUSLY +INDECOROUSNESS +INDECORUM +INDECORUMS +INDEED +INDEFATIGABLE +INDEFATIGABLY +INDEFEASIBILITY +INDEFEASIBLE +INDEFEASIBLY +INDEFECTIBILITY +INDEFECTIBLE +INDEFECTIBLY +INDEFENSIBILITY +INDEFENSIBLE +INDEFENSIBLY +INDEFINABILITY +INDEFINABLE +INDEFINABLENESS +INDEFINABLES +INDEFINABLY +INDEFINITE +INDEFINITELY +INDEFINITENESS +INDEFINITES +INDEHISCENCE +INDEHISCENCES +INDEHISCENT +INDELIBILITIES +INDELIBILITY +INDELIBLE +INDELIBLY +INDELICACIES +INDELICACY +INDELICATE +INDELICATELY +INDELICATENESS +INDEMNIFICATION +INDEMNIFIED +INDEMNIFIER +INDEMNIFIERS +INDEMNIFIES +INDEMNIFY +INDEMNIFYING +INDEMNITIES +INDEMNITY +INDEMONSTRABLE +INDEMONSTRABLY +INDENE +INDENES +INDENT +INDENTATION +INDENTATIONS +INDENTED +INDENTER +INDENTERS +INDENTING +INDENTION +INDENTIONS +INDENTOR +INDENTORS +INDENTS +INDENTURE +INDENTURED +INDENTURES +INDENTURING +INDEPENDENCE +INDEPENDENCES +INDEPENDENCIES +INDEPENDENCY +INDEPENDENT +INDEPENDENTLY +INDEPENDENTS +INDESCRIBABLE +INDESCRIBABLY +INDESTRUCTIBLE +INDESTRUCTIBLY +INDETERMINABLE +INDETERMINABLY +INDETERMINACIES +INDETERMINACY +INDETERMINATE +INDETERMINATELY +INDETERMINATION +INDETERMINISM +INDETERMINISMS +INDETERMINIST +INDETERMINISTIC +INDETERMINISTS +INDEVOUT +INDEX +INDEXABLE +INDEXATION +INDEXATIONS +INDEXED +INDEXER +INDEXERS +INDEXES +INDEXICAL +INDEXICALS +INDEXING +INDEXINGS +INDICAN +INDICANS +INDICANT +INDICANTS +INDICATE +INDICATED +INDICATES +INDICATING +INDICATION +INDICATIONAL +INDICATIONS +INDICATIVE +INDICATIVELY +INDICATIVES +INDICATOR +INDICATORS +INDICATORY +INDICES +INDICIA +INDICIAS +INDICIUM +INDICIUMS +INDICT +INDICTABLE +INDICTED +INDICTEE +INDICTEES +INDICTER +INDICTERS +INDICTING +INDICTION +INDICTIONS +INDICTMENT +INDICTMENTS +INDICTOR +INDICTORS +INDICTS +INDIE +INDIES +INDIFFERENCE +INDIFFERENCES +INDIFFERENCIES +INDIFFERENCY +INDIFFERENT +INDIFFERENTISM +INDIFFERENTISMS +INDIFFERENTIST +INDIFFERENTISTS +INDIFFERENTLY +INDIGEN +INDIGENCE +INDIGENCES +INDIGENCIES +INDIGENCY +INDIGENE +INDIGENES +INDIGENIZATION +INDIGENIZATIONS +INDIGENIZE +INDIGENIZED +INDIGENIZES +INDIGENIZING +INDIGENOUS +INDIGENOUSLY +INDIGENOUSNESS +INDIGENS +INDIGENT +INDIGENTS +INDIGESTED +INDIGESTIBILITY +INDIGESTIBLE +INDIGESTIBLES +INDIGESTION +INDIGESTIONS +INDIGN +INDIGNANT +INDIGNANTLY +INDIGNATION +INDIGNATIONS +INDIGNITIES +INDIGNITY +INDIGNLY +INDIGO +INDIGOES +INDIGOID +INDIGOIDS +INDIGOS +INDIGOTIN +INDIGOTINS +INDINAVIR +INDINAVIRS +INDIRECT +INDIRECTION +INDIRECTIONS +INDIRECTLY +INDIRECTNESS +INDIRECTNESSES +INDISCERNIBLE +INDISCIPLINABLE +INDISCIPLINE +INDISCIPLINED +INDISCIPLINES +INDISCOVERABLE +INDISCREET +INDISCREETLY +INDISCREETNESS +INDISCRETION +INDISCRETIONS +INDISCRIMINATE +INDISPENSABLE +INDISPENSABLES +INDISPENSABLY +INDISPOSE +INDISPOSED +INDISPOSES +INDISPOSING +INDISPOSITION +INDISPOSITIONS +INDISPUTABLE +INDISPUTABLY +INDISSOCIABLE +INDISSOCIABLY +INDISSOLUBILITY +INDISSOLUBLE +INDISSOLUBLY +INDISTINCT +INDISTINCTIVE +INDISTINCTLY +INDISTINCTNESS +INDITE +INDITED +INDITER +INDITERS +INDITES +INDITING +INDIUM +INDIUMS +INDIVIDUAL +INDIVIDUALISE +INDIVIDUALISED +INDIVIDUALISES +INDIVIDUALISING +INDIVIDUALISM +INDIVIDUALISMS +INDIVIDUALIST +INDIVIDUALISTIC +INDIVIDUALISTS +INDIVIDUALITIES +INDIVIDUALITY +INDIVIDUALIZE +INDIVIDUALIZED +INDIVIDUALIZES +INDIVIDUALIZING +INDIVIDUALLY +INDIVIDUALS +INDIVIDUATE +INDIVIDUATED +INDIVIDUATES +INDIVIDUATING +INDIVIDUATION +INDIVIDUATIONS +INDIVISIBILITY +INDIVISIBLE +INDIVISIBLES +INDIVISIBLY +INDOCILE +INDOCILITIES +INDOCILITY +INDOCTRINATE +INDOCTRINATED +INDOCTRINATES +INDOCTRINATING +INDOCTRINATION +INDOCTRINATIONS +INDOCTRINATOR +INDOCTRINATORS +INDOL +INDOLE +INDOLENCE +INDOLENCES +INDOLENT +INDOLENTLY +INDOLES +INDOLS +INDOMETHACIN +INDOMETHACINS +INDOMITABILITY +INDOMITABLE +INDOMITABLENESS +INDOMITABLY +INDOOR +INDOORS +INDOPHENOL +INDOPHENOLS +INDORSE +INDORSED +INDORSEE +INDORSEES +INDORSEMENT +INDORSEMENTS +INDORSER +INDORSERS +INDORSES +INDORSING +INDORSOR +INDORSORS +INDOW +INDOWED +INDOWING +INDOWS +INDOXYL +INDOXYLS +INDRAFT +INDRAFTS +INDRAUGHT +INDRAUGHTS +INDRAWN +INDRI +INDRIS +INDUBITABILITY +INDUBITABLE +INDUBITABLENESS +INDUBITABLY +INDUCE +INDUCED +INDUCEMENT +INDUCEMENTS +INDUCER +INDUCERS +INDUCES +INDUCIBILITIES +INDUCIBILITY +INDUCIBLE +INDUCING +INDUCT +INDUCTANCE +INDUCTANCES +INDUCTED +INDUCTEE +INDUCTEES +INDUCTILE +INDUCTING +INDUCTION +INDUCTIONS +INDUCTIVE +INDUCTIVELY +INDUCTOR +INDUCTORS +INDUCTS +INDUE +INDUED +INDUES +INDUING +INDULGE +INDULGED +INDULGENCE +INDULGENCES +INDULGENT +INDULGENTLY +INDULGER +INDULGERS +INDULGES +INDULGING +INDULIN +INDULINE +INDULINES +INDULINS +INDULT +INDULTS +INDURATE +INDURATED +INDURATES +INDURATING +INDURATION +INDURATIONS +INDURATIVE +INDUSIA +INDUSIAL +INDUSIATE +INDUSIUM +INDUSTRIAL +INDUSTRIALISE +INDUSTRIALISED +INDUSTRIALISES +INDUSTRIALISING +INDUSTRIALISM +INDUSTRIALISMS +INDUSTRIALIST +INDUSTRIALISTS +INDUSTRIALIZE +INDUSTRIALIZED +INDUSTRIALIZES +INDUSTRIALIZING +INDUSTRIALLY +INDUSTRIALS +INDUSTRIES +INDUSTRIOUS +INDUSTRIOUSLY +INDUSTRIOUSNESS +INDUSTRY +INDWELL +INDWELLER +INDWELLERS +INDWELLING +INDWELLS +INDWELT +INEARTH +INEARTHED +INEARTHING +INEARTHS +INEBRIANT +INEBRIANTS +INEBRIATE +INEBRIATED +INEBRIATES +INEBRIATING +INEBRIATION +INEBRIATIONS +INEBRIETIES +INEBRIETY +INEDIBLE +INEDIBLY +INEDITA +INEDITED +INEDUCABILITIES +INEDUCABILITY +INEDUCABLE +INEFFABILITIES +INEFFABILITY +INEFFABLE +INEFFABLENESS +INEFFABLENESSES +INEFFABLY +INEFFACEABILITY +INEFFACEABLE +INEFFACEABLY +INEFFECTIVE +INEFFECTIVELY +INEFFECTIVENESS +INEFFECTUAL +INEFFECTUALITY +INEFFECTUALLY +INEFFECTUALNESS +INEFFICACIES +INEFFICACIOUS +INEFFICACIOUSLY +INEFFICACY +INEFFICIENCIES +INEFFICIENCY +INEFFICIENT +INEFFICIENTLY +INEFFICIENTS +INEGALITARIAN +INELASTIC +INELASTICITIES +INELASTICITY +INELEGANCE +INELEGANCES +INELEGANT +INELEGANTLY +INELIGIBILITIES +INELIGIBILITY +INELIGIBLE +INELIGIBLES +INELOQUENT +INELOQUENTLY +INELUCTABILITY +INELUCTABLE +INELUCTABLY +INELUDIBLE +INENARRABLE +INEPT +INEPTITUDE +INEPTITUDES +INEPTLY +INEPTNESS +INEPTNESSES +INEQUALITIES +INEQUALITY +INEQUITABLE +INEQUITABLY +INEQUITIES +INEQUITY +INEQUIVALVE +INEQUIVALVED +INERADICABILITY +INERADICABLE +INERADICABLY +INERRABLE +INERRANCIES +INERRANCY +INERRANT +INERT +INERTIA +INERTIAE +INERTIAL +INERTIALLY +INERTIAS +INERTLY +INERTNESS +INERTNESSES +INERTS +INESCAPABLE +INESCAPABLY +INESSENTIAL +INESSENTIALS +INESTIMABLE +INESTIMABLY +INEVITABILITIES +INEVITABILITY +INEVITABLE +INEVITABLENESS +INEVITABLY +INEXACT +INEXACTITUDE +INEXACTITUDES +INEXACTLY +INEXACTNESS +INEXACTNESSES +INEXCUSABLE +INEXCUSABLENESS +INEXCUSABLY +INEXHAUSTIBLE +INEXHAUSTIBLY +INEXISTENCE +INEXISTENCES +INEXISTENT +INEXORABILITIES +INEXORABILITY +INEXORABLE +INEXORABLENESS +INEXORABLY +INEXPEDIENCE +INEXPEDIENCES +INEXPEDIENCIES +INEXPEDIENCY +INEXPEDIENT +INEXPEDIENTLY +INEXPENSIVE +INEXPENSIVELY +INEXPENSIVENESS +INEXPERIENCE +INEXPERIENCED +INEXPERIENCES +INEXPERT +INEXPERTLY +INEXPERTNESS +INEXPERTNESSES +INEXPERTS +INEXPIABLE +INEXPIABLY +INEXPLAINABLE +INEXPLICABILITY +INEXPLICABLE +INEXPLICABLY +INEXPLICIT +INEXPRESSIBLE +INEXPRESSIBLY +INEXPRESSIVE +INEXPRESSIVELY +INEXPUGNABLE +INEXPUGNABLY +INEXPUNGIBLE +INEXTRICABILITY +INEXTRICABLE +INEXTRICABLY +INFALL +INFALLIBILITIES +INFALLIBILITY +INFALLIBLE +INFALLIBLY +INFALLING +INFALLS +INFAMIES +INFAMOUS +INFAMOUSLY +INFAMY +INFANCIES +INFANCY +INFANT +INFANTA +INFANTAS +INFANTE +INFANTES +INFANTICIDAL +INFANTICIDE +INFANTICIDES +INFANTILE +INFANTILISM +INFANTILISMS +INFANTILITIES +INFANTILITY +INFANTILIZATION +INFANTILIZE +INFANTILIZED +INFANTILIZES +INFANTILIZING +INFANTINE +INFANTRIES +INFANTRY +INFANTRYMAN +INFANTRYMEN +INFANTS +INFARCT +INFARCTED +INFARCTION +INFARCTIONS +INFARCTS +INFARE +INFARES +INFATUATE +INFATUATED +INFATUATES +INFATUATING +INFATUATION +INFATUATIONS +INFAUNA +INFAUNAE +INFAUNAL +INFAUNAS +INFEASIBILITIES +INFEASIBILITY +INFEASIBLE +INFECT +INFECTANT +INFECTED +INFECTER +INFECTERS +INFECTING +INFECTION +INFECTIONS +INFECTIOUS +INFECTIOUSLY +INFECTIOUSNESS +INFECTIVE +INFECTIVITIES +INFECTIVITY +INFECTOR +INFECTORS +INFECTS +INFECUND +INFELICITIES +INFELICITOUS +INFELICITOUSLY +INFELICITY +INFEOFF +INFEOFFED +INFEOFFING +INFEOFFS +INFER +INFERABLE +INFERABLY +INFERENCE +INFERENCES +INFERENTIAL +INFERENTIALLY +INFERIOR +INFERIORITIES +INFERIORITY +INFERIORLY +INFERIORS +INFERNAL +INFERNALLY +INFERNO +INFERNOS +INFERRED +INFERRER +INFERRERS +INFERRIBLE +INFERRING +INFERS +INFERTILE +INFERTILITIES +INFERTILITY +INFEST +INFESTANT +INFESTANTS +INFESTATION +INFESTATIONS +INFESTED +INFESTER +INFESTERS +INFESTING +INFESTS +INFIDEL +INFIDELIC +INFIDELITIES +INFIDELITY +INFIDELS +INFIELD +INFIELDER +INFIELDERS +INFIELDS +INFIGHT +INFIGHTER +INFIGHTERS +INFIGHTING +INFIGHTINGS +INFIGHTS +INFILL +INFILTRATE +INFILTRATED +INFILTRATES +INFILTRATING +INFILTRATION +INFILTRATIONS +INFILTRATIVE +INFILTRATOR +INFILTRATORS +INFINITE +INFINITELY +INFINITENESS +INFINITENESSES +INFINITES +INFINITESIMAL +INFINITESIMALLY +INFINITESIMALS +INFINITIES +INFINITIVAL +INFINITIVE +INFINITIVELY +INFINITIVES +INFINITUDE +INFINITUDES +INFINITY +INFIRM +INFIRMARIES +INFIRMARY +INFIRMED +INFIRMING +INFIRMITIES +INFIRMITY +INFIRMLY +INFIRMS +INFIX +INFIXATION +INFIXATIONS +INFIXED +INFIXES +INFIXING +INFIXION +INFIXIONS +INFLAME +INFLAMED +INFLAMER +INFLAMERS +INFLAMES +INFLAMING +INFLAMMABILITY +INFLAMMABLE +INFLAMMABLENESS +INFLAMMABLES +INFLAMMABLY +INFLAMMATION +INFLAMMATIONS +INFLAMMATORILY +INFLAMMATORY +INFLATABLE +INFLATABLES +INFLATE +INFLATED +INFLATER +INFLATERS +INFLATES +INFLATING +INFLATION +INFLATIONARY +INFLATIONISM +INFLATIONISMS +INFLATIONIST +INFLATIONISTS +INFLATIONS +INFLATOR +INFLATORS +INFLECT +INFLECTABLE +INFLECTED +INFLECTING +INFLECTION +INFLECTIONAL +INFLECTIONALLY +INFLECTIONS +INFLECTIVE +INFLECTOR +INFLECTORS +INFLECTS +INFLEXED +INFLEXIBILITIES +INFLEXIBILITY +INFLEXIBLE +INFLEXIBLENESS +INFLEXIBLY +INFLEXION +INFLEXIONS +INFLICT +INFLICTED +INFLICTER +INFLICTERS +INFLICTING +INFLICTION +INFLICTIONS +INFLICTIVE +INFLICTOR +INFLICTORS +INFLICTS +INFLIGHT +INFLORESCENCE +INFLORESCENCES +INFLOW +INFLOWS +INFLUENCE +INFLUENCEABLE +INFLUENCED +INFLUENCES +INFLUENCING +INFLUENT +INFLUENTIAL +INFLUENTIALLY +INFLUENTIALS +INFLUENTS +INFLUENZA +INFLUENZAL +INFLUENZAS +INFLUX +INFLUXES +INFO +INFOBAHN +INFOBAHNS +INFOLD +INFOLDED +INFOLDER +INFOLDERS +INFOLDING +INFOLDS +INFOMERCIAL +INFOMERCIALS +INFORM +INFORMAL +INFORMALITIES +INFORMALITY +INFORMALLY +INFORMANT +INFORMANTS +INFORMATICS +INFORMATION +INFORMATIONAL +INFORMATIONALLY +INFORMATIONS +INFORMATIVE +INFORMATIVELY +INFORMATIVENESS +INFORMATORILY +INFORMATORY +INFORMED +INFORMEDLY +INFORMER +INFORMERS +INFORMING +INFORMS +INFOS +INFOTAINMENT +INFOTAINMENTS +INFOUGHT +INFRA +INFRACT +INFRACTED +INFRACTING +INFRACTION +INFRACTIONS +INFRACTOR +INFRACTORS +INFRACTS +INFRAHUMAN +INFRAHUMANS +INFRANGIBILITY +INFRANGIBLE +INFRANGIBLY +INFRARED +INFRAREDS +INFRASONIC +INFRASPECIFIC +INFRASTRUCTURE +INFRASTRUCTURES +INFREQUENCE +INFREQUENCES +INFREQUENCIES +INFREQUENCY +INFREQUENT +INFREQUENTLY +INFRINGE +INFRINGED +INFRINGEMENT +INFRINGEMENTS +INFRINGER +INFRINGERS +INFRINGES +INFRINGING +INFRUGAL +INFUNDIBULA +INFUNDIBULAR +INFUNDIBULIFORM +INFUNDIBULUM +INFURIATE +INFURIATED +INFURIATES +INFURIATING +INFURIATINGLY +INFURIATION +INFURIATIONS +INFUSCATE +INFUSE +INFUSED +INFUSER +INFUSERS +INFUSES +INFUSIBILITIES +INFUSIBILITY +INFUSIBLE +INFUSIBLENESS +INFUSIBLENESSES +INFUSING +INFUSION +INFUSIONS +INFUSIVE +INFUSORIAN +INFUSORIANS +INGATE +INGATES +INGATHER +INGATHERED +INGATHERING +INGATHERINGS +INGATHERS +INGENIOUS +INGENIOUSLY +INGENIOUSNESS +INGENIOUSNESSES +INGENUE +INGENUES +INGENUITIES +INGENUITY +INGENUOUS +INGENUOUSLY +INGENUOUSNESS +INGENUOUSNESSES +INGEST +INGESTA +INGESTED +INGESTIBLE +INGESTING +INGESTION +INGESTIONS +INGESTIVE +INGESTS +INGLE +INGLENOOK +INGLENOOKS +INGLES +INGLORIOUS +INGLORIOUSLY +INGLORIOUSNESS +INGOING +INGOT +INGOTED +INGOTING +INGOTS +INGRAFT +INGRAFTED +INGRAFTING +INGRAFTS +INGRAIN +INGRAINED +INGRAINEDLY +INGRAINING +INGRAINS +INGRATE +INGRATES +INGRATIATE +INGRATIATED +INGRATIATES +INGRATIATING +INGRATIATINGLY +INGRATIATION +INGRATIATIONS +INGRATIATORY +INGRATITUDE +INGRATITUDES +INGREDIENT +INGREDIENTS +INGRESS +INGRESSES +INGRESSION +INGRESSIONS +INGRESSIVE +INGRESSIVENESS +INGRESSIVES +INGROUND +INGROUP +INGROUPS +INGROWING +INGROWN +INGROWNNESS +INGROWNNESSES +INGROWTH +INGROWTHS +INGUINAL +INGULF +INGULFED +INGULFING +INGULFS +INGURGITATE +INGURGITATED +INGURGITATES +INGURGITATING +INGURGITATION +INGURGITATIONS +INHABIT +INHABITABLE +INHABITANCIES +INHABITANCY +INHABITANT +INHABITANTS +INHABITATION +INHABITATIONS +INHABITED +INHABITER +INHABITERS +INHABITING +INHABITS +INHALANT +INHALANTS +INHALATION +INHALATIONAL +INHALATIONS +INHALATOR +INHALATORS +INHALE +INHALED +INHALER +INHALERS +INHALES +INHALING +INHARMONIC +INHARMONIES +INHARMONIOUS +INHARMONIOUSLY +INHARMONY +INHAUL +INHAULER +INHAULERS +INHAULS +INHERE +INHERED +INHERENCE +INHERENCES +INHERENCIES +INHERENCY +INHERENT +INHERENTLY +INHERES +INHERING +INHERIT +INHERITABILITY +INHERITABLE +INHERITABLENESS +INHERITANCE +INHERITANCES +INHERITED +INHERITING +INHERITOR +INHERITORS +INHERITRESS +INHERITRESSES +INHERITRICES +INHERITRIX +INHERITRIXES +INHERITS +INHESION +INHESIONS +INHIBIN +INHIBINS +INHIBIT +INHIBITED +INHIBITER +INHIBITERS +INHIBITING +INHIBITION +INHIBITIONS +INHIBITIVE +INHIBITOR +INHIBITORS +INHIBITORY +INHIBITS +INHOLDER +INHOLDERS +INHOLDING +INHOLDINGS +INHOMOGENEITIES +INHOMOGENEITY +INHOMOGENEOUS +INHOSPITABLE +INHOSPITABLY +INHOSPITALITIES +INHOSPITALITY +INHUMAN +INHUMANE +INHUMANELY +INHUMANITIES +INHUMANITY +INHUMANLY +INHUMANNESS +INHUMANNESSES +INHUMATION +INHUMATIONS +INHUME +INHUMED +INHUMER +INHUMERS +INHUMES +INHUMING +INIA +INIMICAL +INIMICALLY +INIMITABLE +INIMITABLENESS +INIMITABLY +INION +INIONS +INIQUITIES +INIQUITOUS +INIQUITOUSLY +INIQUITOUSNESS +INIQUITY +INITIAL +INITIALED +INITIALER +INITIALERS +INITIALING +INITIALISM +INITIALISMS +INITIALIZATION +INITIALIZATIONS +INITIALIZE +INITIALIZED +INITIALIZES +INITIALIZING +INITIALLED +INITIALLING +INITIALLY +INITIALNESS +INITIALNESSES +INITIALS +INITIATE +INITIATED +INITIATES +INITIATING +INITIATION +INITIATIONS +INITIATIVE +INITIATIVES +INITIATOR +INITIATORS +INITIATORY +INJECT +INJECTABLE +INJECTABLES +INJECTANT +INJECTANTS +INJECTED +INJECTING +INJECTION +INJECTIONS +INJECTIVE +INJECTOR +INJECTORS +INJECTS +INJUDICIOUS +INJUDICIOUSLY +INJUDICIOUSNESS +INJUNCTION +INJUNCTIONS +INJUNCTIVE +INJURABLE +INJURE +INJURED +INJURER +INJURERS +INJURES +INJURIES +INJURING +INJURIOUS +INJURIOUSLY +INJURIOUSNESS +INJURIOUSNESSES +INJURY +INJUSTICE +INJUSTICES +INK +INKBERRIES +INKBERRY +INKBLOT +INKBLOTS +INKED +INKER +INKERS +INKHORN +INKHORNS +INKIER +INKIEST +INKINESS +INKINESSES +INKING +INKJET +INKLE +INKLES +INKLESS +INKLIKE +INKLING +INKLINGS +INKPOT +INKPOTS +INKS +INKSTAND +INKSTANDS +INKSTONE +INKSTONES +INKWELL +INKWELLS +INKWOOD +INKWOODS +INKY +INLACE +INLACED +INLACES +INLACING +INLAID +INLAND +INLANDER +INLANDERS +INLANDS +INLAY +INLAYER +INLAYERS +INLAYING +INLAYS +INLET +INLETS +INLETTING +INLIER +INLIERS +INLY +INLYING +INMATE +INMATES +INMESH +INMESHED +INMESHES +INMESHING +INMOST +INN +INNAGE +INNAGES +INNARDS +INNATE +INNATELY +INNATENESS +INNATENESSES +INNED +INNER +INNERLY +INNERMOST +INNERMOSTS +INNERNESS +INNERNESSES +INNERS +INNERSOLE +INNERSOLES +INNERSPRING +INNERVATE +INNERVATED +INNERVATES +INNERVATING +INNERVATION +INNERVATIONS +INNERVE +INNERVED +INNERVES +INNERVING +INNING +INNINGS +INNKEEPER +INNKEEPERS +INNLESS +INNOCENCE +INNOCENCES +INNOCENCIES +INNOCENCY +INNOCENT +INNOCENTER +INNOCENTEST +INNOCENTLY +INNOCENTS +INNOCUOUS +INNOCUOUSLY +INNOCUOUSNESS +INNOCUOUSNESSES +INNOMINATE +INNOVATE +INNOVATED +INNOVATES +INNOVATING +INNOVATION +INNOVATIONAL +INNOVATIONS +INNOVATIVE +INNOVATIVELY +INNOVATIVENESS +INNOVATOR +INNOVATORS +INNOVATORY +INNOXIOUS +INNS +INNUENDO +INNUENDOED +INNUENDOES +INNUENDOING +INNUENDOS +INNUMERABLE +INNUMERABLY +INNUMERACIES +INNUMERACY +INNUMERATE +INNUMERATES +INNUMEROUS +INOBSERVANCE +INOBSERVANCES +INOBSERVANT +INOCULA +INOCULANT +INOCULANTS +INOCULATE +INOCULATED +INOCULATES +INOCULATING +INOCULATION +INOCULATIONS +INOCULATIVE +INOCULATOR +INOCULATORS +INOCULUM +INOCULUMS +INODOROUS +INOFFENSIVE +INOFFENSIVELY +INOFFENSIVENESS +INOPERABLE +INOPERATIVE +INOPERATIVENESS +INOPERCULATE +INOPERCULATES +INOPPORTUNE +INOPPORTUNELY +INOPPORTUNENESS +INORDINATE +INORDINATELY +INORDINATENESS +INORGANIC +INORGANICALLY +INOSCULATE +INOSCULATED +INOSCULATES +INOSCULATING +INOSCULATION +INOSCULATIONS +INOSINE +INOSINES +INOSITE +INOSITES +INOSITOL +INOSITOLS +INOTROPIC +INPATIENT +INPATIENTS +INPHASE +INPOUR +INPOURED +INPOURING +INPOURINGS +INPOURS +INPUT +INPUTS +INPUTTED +INPUTTER +INPUTTERS +INPUTTING +INQUEST +INQUESTS +INQUIET +INQUIETED +INQUIETING +INQUIETS +INQUIETUDE +INQUIETUDES +INQUILINE +INQUILINES +INQUIRE +INQUIRED +INQUIRER +INQUIRERS +INQUIRES +INQUIRIES +INQUIRING +INQUIRINGLY +INQUIRY +INQUISITION +INQUISITIONAL +INQUISITIONS +INQUISITIVE +INQUISITIVELY +INQUISITIVENESS +INQUISITOR +INQUISITORIAL +INQUISITORIALLY +INQUISITORS +INRO +INROAD +INROADS +INRUN +INRUNS +INRUSH +INRUSHES +INRUSHING +INRUSHINGS +INS +INSALUBRIOUS +INSALUBRITIES +INSALUBRITY +INSANE +INSANELY +INSANENESS +INSANENESSES +INSANER +INSANEST +INSANITARY +INSANITATION +INSANITATIONS +INSANITIES +INSANITY +INSATIABILITIES +INSATIABILITY +INSATIABLE +INSATIABLENESS +INSATIABLY +INSATIATE +INSATIATELY +INSATIATENESS +INSATIATENESSES +INSCAPE +INSCAPES +INSCRIBE +INSCRIBED +INSCRIBER +INSCRIBERS +INSCRIBES +INSCRIBING +INSCRIPTION +INSCRIPTIONAL +INSCRIPTIONS +INSCRIPTIVE +INSCRIPTIVELY +INSCROLL +INSCROLLED +INSCROLLING +INSCROLLS +INSCRUTABILITY +INSCRUTABLE +INSCRUTABLENESS +INSCRUTABLY +INSCULP +INSCULPED +INSCULPING +INSCULPS +INSEAM +INSEAMS +INSECT +INSECTAN +INSECTARIES +INSECTARY +INSECTICIDAL +INSECTICIDALLY +INSECTICIDE +INSECTICIDES +INSECTILE +INSECTIVORE +INSECTIVORES +INSECTIVOROUS +INSECTS +INSECURE +INSECURELY +INSECURENESS +INSECURENESSES +INSECURITIES +INSECURITY +INSELBERG +INSELBERGE +INSELBERGS +INSEMINATE +INSEMINATED +INSEMINATES +INSEMINATING +INSEMINATION +INSEMINATIONS +INSEMINATOR +INSEMINATORS +INSENSATE +INSENSATELY +INSENSIBILITIES +INSENSIBILITY +INSENSIBLE +INSENSIBLENESS +INSENSIBLY +INSENSITIVE +INSENSITIVELY +INSENSITIVENESS +INSENSITIVITIES +INSENSITIVITY +INSENTIENCE +INSENTIENCES +INSENTIENT +INSEPARABILITY +INSEPARABLE +INSEPARABLENESS +INSEPARABLES +INSEPARABLY +INSERT +INSERTED +INSERTER +INSERTERS +INSERTING +INSERTION +INSERTIONAL +INSERTIONS +INSERTS +INSET +INSETS +INSETTED +INSETTER +INSETTERS +INSETTING +INSHEATH +INSHEATHE +INSHEATHED +INSHEATHES +INSHEATHING +INSHEATHS +INSHORE +INSHRINE +INSHRINED +INSHRINES +INSHRINING +INSIDE +INSIDER +INSIDERS +INSIDES +INSIDIOUS +INSIDIOUSLY +INSIDIOUSNESS +INSIDIOUSNESSES +INSIGHT +INSIGHTFUL +INSIGHTFULLY +INSIGHTS +INSIGNE +INSIGNIA +INSIGNIAS +INSIGNIFICANCE +INSIGNIFICANCES +INSIGNIFICANCY +INSIGNIFICANT +INSIGNIFICANTLY +INSINCERE +INSINCERELY +INSINCERITIES +INSINCERITY +INSINUATE +INSINUATED +INSINUATES +INSINUATING +INSINUATINGLY +INSINUATION +INSINUATIONS +INSINUATIVE +INSINUATOR +INSINUATORS +INSIPID +INSIPIDITIES +INSIPIDITY +INSIPIDLY +INSIST +INSISTED +INSISTENCE +INSISTENCES +INSISTENCIES +INSISTENCY +INSISTENT +INSISTENTLY +INSISTER +INSISTERS +INSISTING +INSISTS +INSNARE +INSNARED +INSNARER +INSNARERS +INSNARES +INSNARING +INSOBRIETIES +INSOBRIETY +INSOCIABILITIES +INSOCIABILITY +INSOCIABLE +INSOCIABLY +INSOFAR +INSOLATE +INSOLATED +INSOLATES +INSOLATING +INSOLATION +INSOLATIONS +INSOLE +INSOLENCE +INSOLENCES +INSOLENT +INSOLENTLY +INSOLENTS +INSOLES +INSOLUBILITIES +INSOLUBILITY +INSOLUBILIZE +INSOLUBILIZED +INSOLUBILIZES +INSOLUBILIZING +INSOLUBLE +INSOLUBLENESS +INSOLUBLENESSES +INSOLUBLES +INSOLUBLY +INSOLVABLE +INSOLVABLY +INSOLVENCIES +INSOLVENCY +INSOLVENT +INSOLVENTS +INSOMNIA +INSOMNIAC +INSOMNIACS +INSOMNIAS +INSOMUCH +INSOUCIANCE +INSOUCIANCES +INSOUCIANT +INSOUCIANTLY +INSOUL +INSOULED +INSOULING +INSOULS +INSPAN +INSPANNED +INSPANNING +INSPANS +INSPECT +INSPECTED +INSPECTING +INSPECTION +INSPECTIONS +INSPECTIVE +INSPECTOR +INSPECTORATE +INSPECTORATES +INSPECTORS +INSPECTORSHIP +INSPECTORSHIPS +INSPECTS +INSPHERE +INSPHERED +INSPHERES +INSPHERING +INSPIRATION +INSPIRATIONAL +INSPIRATIONALLY +INSPIRATIONS +INSPIRATOR +INSPIRATORS +INSPIRATORY +INSPIRE +INSPIRED +INSPIRER +INSPIRERS +INSPIRES +INSPIRING +INSPIRIT +INSPIRITED +INSPIRITING +INSPIRITINGLY +INSPIRITS +INSPISSATE +INSPISSATED +INSPISSATES +INSPISSATING +INSPISSATION +INSPISSATIONS +INSPISSATOR +INSPISSATORS +INSTABILITIES +INSTABILITY +INSTABLE +INSTAL +INSTALL +INSTALLATION +INSTALLATIONS +INSTALLED +INSTALLER +INSTALLERS +INSTALLING +INSTALLMENT +INSTALLMENTS +INSTALLS +INSTALMENT +INSTALMENTS +INSTALS +INSTANCE +INSTANCED +INSTANCES +INSTANCIES +INSTANCING +INSTANCY +INSTANT +INSTANTANEITIES +INSTANTANEITY +INSTANTANEOUS +INSTANTANEOUSLY +INSTANTER +INSTANTIATE +INSTANTIATED +INSTANTIATES +INSTANTIATING +INSTANTIATION +INSTANTIATIONS +INSTANTLY +INSTANTNESS +INSTANTNESSES +INSTANTS +INSTAR +INSTARRED +INSTARRING +INSTARS +INSTATE +INSTATED +INSTATES +INSTATING +INSTAURATION +INSTAURATIONS +INSTEAD +INSTEP +INSTEPS +INSTIGATE +INSTIGATED +INSTIGATES +INSTIGATING +INSTIGATION +INSTIGATIONS +INSTIGATIVE +INSTIGATOR +INSTIGATORS +INSTIL +INSTILL +INSTILLATION +INSTILLATIONS +INSTILLED +INSTILLER +INSTILLERS +INSTILLING +INSTILLMENT +INSTILLMENTS +INSTILLS +INSTILS +INSTINCT +INSTINCTIVE +INSTINCTIVELY +INSTINCTS +INSTINCTUAL +INSTINCTUALLY +INSTITUTE +INSTITUTED +INSTITUTER +INSTITUTERS +INSTITUTES +INSTITUTING +INSTITUTION +INSTITUTIONAL +INSTITUTIONALLY +INSTITUTIONS +INSTITUTOR +INSTITUTORS +INSTROKE +INSTROKES +INSTRUCT +INSTRUCTED +INSTRUCTING +INSTRUCTION +INSTRUCTIONAL +INSTRUCTIONS +INSTRUCTIVE +INSTRUCTIVELY +INSTRUCTIVENESS +INSTRUCTOR +INSTRUCTORS +INSTRUCTORSHIP +INSTRUCTORSHIPS +INSTRUCTRESS +INSTRUCTRESSES +INSTRUCTS +INSTRUMENT +INSTRUMENTAL +INSTRUMENTALISM +INSTRUMENTALIST +INSTRUMENTALITY +INSTRUMENTALLY +INSTRUMENTALS +INSTRUMENTATION +INSTRUMENTED +INSTRUMENTING +INSTRUMENTS +INSUBORDINATE +INSUBORDINATELY +INSUBORDINATES +INSUBORDINATION +INSUBSTANTIAL +INSUFFERABLE +INSUFFERABLY +INSUFFICIENCIES +INSUFFICIENCY +INSUFFICIENT +INSUFFICIENTLY +INSUFFLATE +INSUFFLATED +INSUFFLATES +INSUFFLATING +INSUFFLATION +INSUFFLATIONS +INSUFFLATOR +INSUFFLATORS +INSULANT +INSULANTS +INSULAR +INSULARISM +INSULARISMS +INSULARITIES +INSULARITY +INSULARLY +INSULARS +INSULATE +INSULATED +INSULATES +INSULATING +INSULATION +INSULATIONS +INSULATOR +INSULATORS +INSULIN +INSULINS +INSULT +INSULTED +INSULTER +INSULTERS +INSULTING +INSULTINGLY +INSULTS +INSUPERABLE +INSUPERABLY +INSUPPORTABLE +INSUPPORTABLY +INSUPPRESSIBLE +INSURABILITIES +INSURABILITY +INSURABLE +INSURANCE +INSURANCES +INSURANT +INSURANTS +INSURE +INSURED +INSUREDS +INSURER +INSURERS +INSURES +INSURGENCE +INSURGENCES +INSURGENCIES +INSURGENCY +INSURGENT +INSURGENTLY +INSURGENTS +INSURING +INSURMOUNTABLE +INSURMOUNTABLY +INSURRECTION +INSURRECTIONAL +INSURRECTIONARY +INSURRECTIONIST +INSURRECTIONS +INSUSCEPTIBLE +INSUSCEPTIBLY +INSWATHE +INSWATHED +INSWATHES +INSWATHING +INSWEPT +INTACT +INTACTLY +INTACTNESS +INTACTNESSES +INTAGLI +INTAGLIO +INTAGLIOED +INTAGLIOING +INTAGLIOS +INTAKE +INTAKES +INTANGIBILITIES +INTANGIBILITY +INTANGIBLE +INTANGIBLENESS +INTANGIBLES +INTANGIBLY +INTARSIA +INTARSIAS +INTEGER +INTEGERS +INTEGRABILITIES +INTEGRABILITY +INTEGRABLE +INTEGRAL +INTEGRALITIES +INTEGRALITY +INTEGRALLY +INTEGRALS +INTEGRAND +INTEGRANDS +INTEGRANT +INTEGRANTS +INTEGRATE +INTEGRATED +INTEGRATES +INTEGRATING +INTEGRATION +INTEGRATIONIST +INTEGRATIONISTS +INTEGRATIONS +INTEGRATIVE +INTEGRATOR +INTEGRATORS +INTEGRITIES +INTEGRITY +INTEGUMENT +INTEGUMENTARY +INTEGUMENTS +INTELLECT +INTELLECTION +INTELLECTIONS +INTELLECTIVE +INTELLECTIVELY +INTELLECTS +INTELLECTUAL +INTELLECTUALISM +INTELLECTUALIST +INTELLECTUALITY +INTELLECTUALIZE +INTELLECTUALLY +INTELLECTUALS +INTELLIGENCE +INTELLIGENCER +INTELLIGENCERS +INTELLIGENCES +INTELLIGENT +INTELLIGENTIAL +INTELLIGENTLY +INTELLIGENTSIA +INTELLIGENTSIAS +INTELLIGIBILITY +INTELLIGIBLE +INTELLIGIBLY +INTEMPERANCE +INTEMPERANCES +INTEMPERATE +INTEMPERATELY +INTEMPERATENESS +INTEND +INTENDANCE +INTENDANCES +INTENDANT +INTENDANTS +INTENDED +INTENDEDLY +INTENDEDS +INTENDER +INTENDERS +INTENDING +INTENDMENT +INTENDMENTS +INTENDS +INTENERATE +INTENERATED +INTENERATES +INTENERATING +INTENERATION +INTENERATIONS +INTENSE +INTENSELY +INTENSENESS +INTENSENESSES +INTENSER +INTENSEST +INTENSIFICATION +INTENSIFIED +INTENSIFIER +INTENSIFIERS +INTENSIFIES +INTENSIFY +INTENSIFYING +INTENSION +INTENSIONAL +INTENSIONALITY +INTENSIONALLY +INTENSIONS +INTENSITIES +INTENSITY +INTENSIVE +INTENSIVELY +INTENSIVENESS +INTENSIVENESSES +INTENSIVES +INTENT +INTENTION +INTENTIONAL +INTENTIONALITY +INTENTIONALLY +INTENTIONS +INTENTLY +INTENTNESS +INTENTNESSES +INTENTS +INTER +INTERABANG +INTERABANGS +INTERACT +INTERACTANT +INTERACTANTS +INTERACTED +INTERACTING +INTERACTION +INTERACTIONAL +INTERACTIONS +INTERACTIVE +INTERACTIVELY +INTERACTS +INTERAGE +INTERAGENCY +INTERALLELIC +INTERALLIED +INTERANIMATION +INTERANIMATIONS +INTERANNUAL +INTERARCH +INTERARCHED +INTERARCHES +INTERARCHING +INTERATOMIC +INTERBANK +INTERBASIN +INTERBED +INTERBEDDED +INTERBEDDING +INTERBEDS +INTERBEHAVIOR +INTERBEHAVIORAL +INTERBEHAVIORS +INTERBOROUGH +INTERBRANCH +INTERBRED +INTERBREED +INTERBREEDING +INTERBREEDS +INTERCALARY +INTERCALATE +INTERCALATED +INTERCALATES +INTERCALATING +INTERCALATION +INTERCALATIONS +INTERCAMPUS +INTERCASTE +INTERCEDE +INTERCEDED +INTERCEDER +INTERCEDERS +INTERCEDES +INTERCEDING +INTERCELL +INTERCELLULAR +INTERCENSAL +INTERCEPT +INTERCEPTED +INTERCEPTER +INTERCEPTERS +INTERCEPTING +INTERCEPTION +INTERCEPTIONS +INTERCEPTOR +INTERCEPTORS +INTERCEPTS +INTERCESSION +INTERCESSIONAL +INTERCESSIONS +INTERCESSOR +INTERCESSORS +INTERCESSORY +INTERCHAIN +INTERCHANGE +INTERCHANGEABLE +INTERCHANGEABLY +INTERCHANGED +INTERCHANGER +INTERCHANGERS +INTERCHANGES +INTERCHANGING +INTERCHANNEL +INTERCHURCH +INTERCITY +INTERCLAN +INTERCLASS +INTERCLUB +INTERCLUSTER +INTERCOASTAL +INTERCOLLEGIATE +INTERCOLONIAL +INTERCOM +INTERCOMMUNAL +INTERCOMMUNION +INTERCOMMUNIONS +INTERCOMMUNITY +INTERCOMPANY +INTERCOMPARE +INTERCOMPARED +INTERCOMPARES +INTERCOMPARING +INTERCOMPARISON +INTERCOMS +INTERCONNECT +INTERCONNECTED +INTERCONNECTING +INTERCONNECTION +INTERCONNECTS +INTERCONVERSION +INTERCONVERT +INTERCONVERTED +INTERCONVERTING +INTERCONVERTS +INTERCOOLER +INTERCOOLERS +INTERCORPORATE +INTERCORRELATE +INTERCORRELATED +INTERCORRELATES +INTERCORTICAL +INTERCOSTAL +INTERCOSTALS +INTERCOUNTRY +INTERCOUNTY +INTERCOUPLE +INTERCOURSE +INTERCOURSES +INTERCRATER +INTERCROP +INTERCROPPED +INTERCROPPING +INTERCROPS +INTERCROSS +INTERCROSSED +INTERCROSSES +INTERCROSSING +INTERCULTURAL +INTERCULTURALLY +INTERCULTURE +INTERCURRENT +INTERCUT +INTERCUTS +INTERCUTTING +INTERDEALER +INTERDENTAL +INTERDENTALLY +INTERDEPEND +INTERDEPENDED +INTERDEPENDENCE +INTERDEPENDENCY +INTERDEPENDENT +INTERDEPENDING +INTERDEPENDS +INTERDIALECTAL +INTERDICT +INTERDICTED +INTERDICTING +INTERDICTION +INTERDICTIONS +INTERDICTIVE +INTERDICTOR +INTERDICTORS +INTERDICTORY +INTERDICTS +INTERDIFFUSE +INTERDIFFUSED +INTERDIFFUSES +INTERDIFFUSING +INTERDIFFUSION +INTERDIFFUSIONS +INTERDIGITATE +INTERDIGITATED +INTERDIGITATES +INTERDIGITATING +INTERDIGITATION +INTERDISTRICT +INTERDIVISIONAL +INTERDOMINION +INTERELECTRODE +INTERELECTRON +INTERELECTRONIC +INTEREPIDEMIC +INTEREST +INTERESTED +INTERESTEDLY +INTERESTING +INTERESTINGLY +INTERESTINGNESS +INTERESTS +INTERETHNIC +INTERFACE +INTERFACED +INTERFACES +INTERFACIAL +INTERFACING +INTERFACINGS +INTERFACULTY +INTERFAITH +INTERFAMILIAL +INTERFAMILY +INTERFERE +INTERFERED +INTERFERENCE +INTERFERENCES +INTERFERENTIAL +INTERFERER +INTERFERERS +INTERFERES +INTERFERING +INTERFEROGRAM +INTERFEROGRAMS +INTERFEROMETER +INTERFEROMETERS +INTERFEROMETRIC +INTERFEROMETRY +INTERFERON +INTERFERONS +INTERFERTILE +INTERFERTILITY +INTERFIBER +INTERFILE +INTERFILED +INTERFILES +INTERFILING +INTERFIRM +INTERFLOW +INTERFLOWED +INTERFLOWING +INTERFLOWS +INTERFLUVE +INTERFLUVES +INTERFLUVIAL +INTERFOLD +INTERFOLDED +INTERFOLDING +INTERFOLDS +INTERFRATERNITY +INTERFUSE +INTERFUSED +INTERFUSES +INTERFUSING +INTERFUSION +INTERFUSIONS +INTERGALACTIC +INTERGANG +INTERGENERATION +INTERGENERIC +INTERGLACIAL +INTERGLACIALS +INTERGRADATION +INTERGRADATIONS +INTERGRADE +INTERGRADED +INTERGRADES +INTERGRADING +INTERGRAFT +INTERGRAFTED +INTERGRAFTING +INTERGRAFTS +INTERGRANULAR +INTERGROUP +INTERGROWTH +INTERGROWTHS +INTERIM +INTERIMS +INTERINDIVIDUAL +INTERINDUSTRY +INTERINFLUENCE +INTERINFLUENCES +INTERINVOLVE +INTERINVOLVED +INTERINVOLVES +INTERINVOLVING +INTERIONIC +INTERIOR +INTERIORISE +INTERIORISED +INTERIORISES +INTERIORISING +INTERIORITIES +INTERIORITY +INTERIORIZATION +INTERIORIZE +INTERIORIZED +INTERIORIZES +INTERIORIZING +INTERIORLY +INTERIORS +INTERISLAND +INTERJECT +INTERJECTED +INTERJECTING +INTERJECTION +INTERJECTIONAL +INTERJECTIONS +INTERJECTOR +INTERJECTORS +INTERJECTORY +INTERJECTS +INTERJOIN +INTERJOINED +INTERJOINING +INTERJOINS +INTERKNIT +INTERKNITS +INTERKNITTED +INTERKNITTING +INTERKNOT +INTERKNOTS +INTERKNOTTED +INTERKNOTTING +INTERLACE +INTERLACED +INTERLACEMENT +INTERLACEMENTS +INTERLACES +INTERLACING +INTERLACUSTRINE +INTERLAID +INTERLAMINAR +INTERLAP +INTERLAPPED +INTERLAPPING +INTERLAPS +INTERLARD +INTERLARDED +INTERLARDING +INTERLARDS +INTERLAY +INTERLAYER +INTERLAYERED +INTERLAYERING +INTERLAYERS +INTERLAYING +INTERLAYS +INTERLEAF +INTERLEAVE +INTERLEAVED +INTERLEAVES +INTERLEAVING +INTERLEND +INTERLENDING +INTERLENDS +INTERLENT +INTERLEUKIN +INTERLEUKINS +INTERLIBRARY +INTERLINE +INTERLINEAR +INTERLINEARLY +INTERLINEARS +INTERLINEATION +INTERLINEATIONS +INTERLINED +INTERLINER +INTERLINERS +INTERLINES +INTERLINING +INTERLININGS +INTERLINK +INTERLINKED +INTERLINKING +INTERLINKS +INTERLOAN +INTERLOANS +INTERLOBULAR +INTERLOCAL +INTERLOCK +INTERLOCKED +INTERLOCKING +INTERLOCKS +INTERLOCUTOR +INTERLOCUTORS +INTERLOCUTORY +INTERLOOP +INTERLOOPED +INTERLOOPING +INTERLOOPS +INTERLOPE +INTERLOPED +INTERLOPER +INTERLOPERS +INTERLOPES +INTERLOPING +INTERLUDE +INTERLUDES +INTERLUNAR +INTERLUNARY +INTERMALE +INTERMARGINAL +INTERMARRIAGE +INTERMARRIAGES +INTERMARRIED +INTERMARRIES +INTERMARRY +INTERMARRYING +INTERMAT +INTERMATS +INTERMATTED +INTERMATTING +INTERMEDDLE +INTERMEDDLED +INTERMEDDLER +INTERMEDDLERS +INTERMEDDLES +INTERMEDDLING +INTERMEDIACIES +INTERMEDIACY +INTERMEDIARIES +INTERMEDIARY +INTERMEDIATE +INTERMEDIATED +INTERMEDIATELY +INTERMEDIATES +INTERMEDIATING +INTERMEDIATION +INTERMEDIATIONS +INTERMEDIN +INTERMEDINS +INTERMEMBRANE +INTERMENSTRUAL +INTERMENT +INTERMENTS +INTERMESH +INTERMESHED +INTERMESHES +INTERMESHING +INTERMETALLIC +INTERMETALLICS +INTERMEZZI +INTERMEZZO +INTERMEZZOS +INTERMINABLE +INTERMINABLY +INTERMINGLE +INTERMINGLED +INTERMINGLES +INTERMINGLING +INTERMISSION +INTERMISSIONS +INTERMIT +INTERMITOTIC +INTERMITS +INTERMITTED +INTERMITTENCE +INTERMITTENCES +INTERMITTENCIES +INTERMITTENCY +INTERMITTENT +INTERMITTENTLY +INTERMITTER +INTERMITTERS +INTERMITTING +INTERMIX +INTERMIXED +INTERMIXES +INTERMIXING +INTERMIXTURE +INTERMIXTURES +INTERMODAL +INTERMODULATION +INTERMOLECULAR +INTERMONT +INTERMONTANE +INTERMOUNTAIN +INTERN +INTERNAL +INTERNALISE +INTERNALISED +INTERNALISES +INTERNALISING +INTERNALITIES +INTERNALITY +INTERNALIZATION +INTERNALIZE +INTERNALIZED +INTERNALIZES +INTERNALIZING +INTERNALLY +INTERNALS +INTERNATIONAL +INTERNATIONALLY +INTERNATIONALS +INTERNE +INTERNECINE +INTERNED +INTERNEE +INTERNEES +INTERNES +INTERNEURON +INTERNEURONAL +INTERNEURONS +INTERNING +INTERNIST +INTERNISTS +INTERNMENT +INTERNMENTS +INTERNODAL +INTERNODE +INTERNODES +INTERNS +INTERNSHIP +INTERNSHIPS +INTERNUCLEAR +INTERNUCLEON +INTERNUCLEONIC +INTERNUCLEOTIDE +INTERNUNCIAL +INTERNUNCIO +INTERNUNCIOS +INTEROBSERVER +INTEROCEAN +INTEROCEANIC +INTEROCEPTIVE +INTEROCEPTOR +INTEROCEPTORS +INTEROFFICE +INTEROPERABLE +INTEROPERATIVE +INTERORBITAL +INTERORGAN +INTERPANDEMIC +INTERPARISH +INTERPAROCHIAL +INTERPAROXYSMAL +INTERPARTICLE +INTERPARTY +INTERPELLATE +INTERPELLATED +INTERPELLATES +INTERPELLATING +INTERPELLATION +INTERPELLATIONS +INTERPELLATOR +INTERPELLATORS +INTERPENETRATE +INTERPENETRATED +INTERPENETRATES +INTERPERCEPTUAL +INTERPERMEATE +INTERPERMEATED +INTERPERMEATES +INTERPERMEATING +INTERPERSONAL +INTERPERSONALLY +INTERPHALANGEAL +INTERPHASE +INTERPHASES +INTERPLANETARY +INTERPLANT +INTERPLANTED +INTERPLANTING +INTERPLANTS +INTERPLAY +INTERPLAYED +INTERPLAYING +INTERPLAYS +INTERPLEAD +INTERPLEADED +INTERPLEADER +INTERPLEADERS +INTERPLEADING +INTERPLEADS +INTERPLED +INTERPLUVIAL +INTERPOINT +INTERPOLATE +INTERPOLATED +INTERPOLATES +INTERPOLATING +INTERPOLATION +INTERPOLATIONS +INTERPOLATIVE +INTERPOLATOR +INTERPOLATORS +INTERPOPULATION +INTERPOSE +INTERPOSED +INTERPOSER +INTERPOSERS +INTERPOSES +INTERPOSING +INTERPOSITION +INTERPOSITIONS +INTERPRET +INTERPRETABLE +INTERPRETATION +INTERPRETATIONS +INTERPRETATIVE +INTERPRETED +INTERPRETER +INTERPRETERS +INTERPRETING +INTERPRETIVE +INTERPRETIVELY +INTERPRETS +INTERPROVINCIAL +INTERPROXIMAL +INTERPSYCHIC +INTERPUPILLARY +INTERRACE +INTERRACIAL +INTERRACIALLY +INTERRED +INTERREGES +INTERREGIONAL +INTERREGNA +INTERREGNUM +INTERREGNUMS +INTERRELATE +INTERRELATED +INTERRELATEDLY +INTERRELATES +INTERRELATING +INTERRELATION +INTERRELATIONS +INTERRELIGIOUS +INTERRENAL +INTERREX +INTERRING +INTERROBANG +INTERROBANGS +INTERROGATE +INTERROGATED +INTERROGATEE +INTERROGATEES +INTERROGATES +INTERROGATING +INTERROGATION +INTERROGATIONAL +INTERROGATIONS +INTERROGATIVE +INTERROGATIVELY +INTERROGATIVES +INTERROGATOR +INTERROGATORIES +INTERROGATORS +INTERROGATORY +INTERROGEE +INTERROGEES +INTERROW +INTERRUPT +INTERRUPTED +INTERRUPTER +INTERRUPTERS +INTERRUPTIBLE +INTERRUPTING +INTERRUPTION +INTERRUPTIONS +INTERRUPTIVE +INTERRUPTOR +INTERRUPTORS +INTERRUPTS +INTERS +INTERSCHOLASTIC +INTERSCHOOL +INTERSECT +INTERSECTED +INTERSECTING +INTERSECTION +INTERSECTIONAL +INTERSECTIONS +INTERSECTS +INTERSEGMENT +INTERSEGMENTAL +INTERSENSORY +INTERSERVICE +INTERSESSION +INTERSESSIONS +INTERSEX +INTERSEXES +INTERSEXUAL +INTERSEXUALITY +INTERSEXUALLY +INTERSOCIETAL +INTERSOCIETY +INTERSPACE +INTERSPACED +INTERSPACES +INTERSPACING +INTERSPECIES +INTERSPECIFIC +INTERSPERSE +INTERSPERSED +INTERSPERSES +INTERSPERSING +INTERSPERSION +INTERSPERSIONS +INTERSTADIAL +INTERSTADIALS +INTERSTAGE +INTERSTATE +INTERSTATES +INTERSTATION +INTERSTELLAR +INTERSTERILE +INTERSTERILITY +INTERSTICE +INTERSTICES +INTERSTIMULUS +INTERSTITIAL +INTERSTITIALLY +INTERSTRAIN +INTERSTRAND +INTERSTRATIFIED +INTERSTRATIFIES +INTERSTRATIFY +INTERSUBJECTIVE +INTERSYSTEM +INTERTERM +INTERTERMINAL +INTERTEXTUAL +INTERTEXTUALITY +INTERTEXTUALLY +INTERTIDAL +INTERTIDALLY +INTERTIE +INTERTIES +INTERTILL +INTERTILLAGE +INTERTILLAGES +INTERTILLED +INTERTILLING +INTERTILLS +INTERTRIAL +INTERTRIBAL +INTERTROOP +INTERTROPICAL +INTERTWINE +INTERTWINED +INTERTWINEMENT +INTERTWINEMENTS +INTERTWINES +INTERTWINING +INTERTWIST +INTERTWISTED +INTERTWISTING +INTERTWISTS +INTERUNION +INTERUNIT +INTERUNIVERSITY +INTERURBAN +INTERVAL +INTERVALE +INTERVALES +INTERVALLEY +INTERVALLIC +INTERVALOMETER +INTERVALOMETERS +INTERVALS +INTERVENE +INTERVENED +INTERVENER +INTERVENERS +INTERVENES +INTERVENING +INTERVENOR +INTERVENORS +INTERVENTION +INTERVENTIONISM +INTERVENTIONIST +INTERVENTIONS +INTERVERTEBRAL +INTERVIEW +INTERVIEWED +INTERVIEWEE +INTERVIEWEES +INTERVIEWER +INTERVIEWERS +INTERVIEWING +INTERVIEWS +INTERVILLAGE +INTERVISIBILITY +INTERVISIBLE +INTERVISITATION +INTERVOCALIC +INTERWAR +INTERWEAVE +INTERWEAVED +INTERWEAVES +INTERWEAVING +INTERWORK +INTERWORKED +INTERWORKING +INTERWORKINGS +INTERWORKS +INTERWOVE +INTERWOVEN +INTERZONAL +INTERZONE +INTESTACIES +INTESTACY +INTESTATE +INTESTATES +INTESTINAL +INTESTINALLY +INTESTINE +INTESTINES +INTHRAL +INTHRALL +INTHRALLED +INTHRALLING +INTHRALLS +INTHRALS +INTHRONE +INTHRONED +INTHRONES +INTHRONING +INTI +INTIFADA +INTIFADAH +INTIFADAHS +INTIFADAS +INTIFADEH +INTIFADEHS +INTIMA +INTIMACIES +INTIMACY +INTIMAE +INTIMAL +INTIMAS +INTIMATE +INTIMATED +INTIMATELY +INTIMATENESS +INTIMATENESSES +INTIMATER +INTIMATERS +INTIMATES +INTIMATING +INTIMATION +INTIMATIONS +INTIME +INTIMIDATE +INTIMIDATED +INTIMIDATES +INTIMIDATING +INTIMIDATINGLY +INTIMIDATION +INTIMIDATIONS +INTIMIDATOR +INTIMIDATORS +INTIMIDATORY +INTIMIST +INTIMISTS +INTINCTION +INTINCTIONS +INTINE +INTINES +INTIS +INTITLE +INTITLED +INTITLES +INTITLING +INTITULE +INTITULED +INTITULES +INTITULING +INTO +INTOLERABILITY +INTOLERABLE +INTOLERABLENESS +INTOLERABLY +INTOLERANCE +INTOLERANCES +INTOLERANT +INTOLERANTLY +INTOLERANTNESS +INTOMB +INTOMBED +INTOMBING +INTOMBS +INTONATE +INTONATED +INTONATES +INTONATING +INTONATION +INTONATIONAL +INTONATIONS +INTONE +INTONED +INTONER +INTONERS +INTONES +INTONING +INTORT +INTORTED +INTORTING +INTORTS +INTOWN +INTOXICANT +INTOXICANTS +INTOXICATE +INTOXICATED +INTOXICATEDLY +INTOXICATES +INTOXICATING +INTOXICATION +INTOXICATIONS +INTRACARDIAC +INTRACARDIAL +INTRACARDIALLY +INTRACELLULAR +INTRACELLULARLY +INTRACEREBRAL +INTRACEREBRALLY +INTRACITY +INTRACOMPANY +INTRACRANIAL +INTRACRANIALLY +INTRACTABILITY +INTRACTABLE +INTRACTABLY +INTRACUTANEOUS +INTRADAY +INTRADERMAL +INTRADERMALLY +INTRADOS +INTRADOSES +INTRAGALACTIC +INTRAGENIC +INTRAMOLECULAR +INTRAMURAL +INTRAMURALLY +INTRAMUSCULAR +INTRAMUSCULARLY +INTRANASAL +INTRANASALLY +INTRANET +INTRANETS +INTRANSIGEANCE +INTRANSIGEANCES +INTRANSIGEANT +INTRANSIGEANTLY +INTRANSIGEANTS +INTRANSIGENCE +INTRANSIGENCES +INTRANSIGENT +INTRANSIGENTLY +INTRANSIGENTS +INTRANSITIVE +INTRANSITIVELY +INTRANSITIVITY +INTRANT +INTRANTS +INTRAOCULAR +INTRAOCULARLY +INTRAPERITONEAL +INTRAPERSONAL +INTRAPLATE +INTRAPOPULATION +INTRAPRENEUR +INTRAPRENEURIAL +INTRAPRENEURS +INTRAPSYCHIC +INTRASPECIES +INTRASPECIFIC +INTRASTATE +INTRATHECAL +INTRATHECALLY +INTRATHORACIC +INTRAUTERINE +INTRAVASCULAR +INTRAVASCULARLY +INTRAVENOUS +INTRAVENOUSLY +INTRAVITAL +INTRAVITALLY +INTRAVITAM +INTRAZONAL +INTREAT +INTREATED +INTREATING +INTREATS +INTRENCH +INTRENCHED +INTRENCHES +INTRENCHING +INTREPID +INTREPIDITIES +INTREPIDITY +INTREPIDLY +INTREPIDNESS +INTREPIDNESSES +INTRICACIES +INTRICACY +INTRICATE +INTRICATELY +INTRICATENESS +INTRICATENESSES +INTRIGANT +INTRIGANTS +INTRIGUANT +INTRIGUANTS +INTRIGUE +INTRIGUED +INTRIGUER +INTRIGUERS +INTRIGUES +INTRIGUING +INTRIGUINGLY +INTRINSIC +INTRINSICAL +INTRINSICALLY +INTRO +INTRODUCE +INTRODUCED +INTRODUCER +INTRODUCERS +INTRODUCES +INTRODUCING +INTRODUCTION +INTRODUCTIONS +INTRODUCTORILY +INTRODUCTORY +INTROFIED +INTROFIES +INTROFY +INTROFYING +INTROGRESSANT +INTROGRESSANTS +INTROGRESSION +INTROGRESSIONS +INTROGRESSIVE +INTROIT +INTROITS +INTROJECT +INTROJECTED +INTROJECTING +INTROJECTION +INTROJECTIONS +INTROJECTS +INTROMISSION +INTROMISSIONS +INTROMIT +INTROMITS +INTROMITTED +INTROMITTENT +INTROMITTER +INTROMITTERS +INTROMITTING +INTRON +INTRONS +INTRORSE +INTROS +INTROSPECT +INTROSPECTED +INTROSPECTING +INTROSPECTION +INTROSPECTIONAL +INTROSPECTIONS +INTROSPECTIVE +INTROSPECTIVELY +INTROSPECTS +INTROVERSION +INTROVERSIONS +INTROVERSIVE +INTROVERSIVELY +INTROVERT +INTROVERTED +INTROVERTING +INTROVERTS +INTRUDE +INTRUDED +INTRUDER +INTRUDERS +INTRUDES +INTRUDING +INTRUSION +INTRUSIONS +INTRUSIVE +INTRUSIVELY +INTRUSIVENESS +INTRUSIVENESSES +INTRUSIVES +INTRUST +INTRUSTED +INTRUSTING +INTRUSTS +INTUBATE +INTUBATED +INTUBATES +INTUBATING +INTUBATION +INTUBATIONS +INTUIT +INTUITABLE +INTUITED +INTUITING +INTUITION +INTUITIONAL +INTUITIONISM +INTUITIONISMS +INTUITIONIST +INTUITIONISTS +INTUITIONS +INTUITIVE +INTUITIVELY +INTUITIVENESS +INTUITIVENESSES +INTUITS +INTUMESCE +INTUMESCED +INTUMESCENCE +INTUMESCENCES +INTUMESCENT +INTUMESCES +INTUMESCING +INTURN +INTURNED +INTURNS +INTUSSUSCEPT +INTUSSUSCEPTED +INTUSSUSCEPTING +INTUSSUSCEPTION +INTUSSUSCEPTIVE +INTUSSUSCEPTS +INTWINE +INTWINED +INTWINES +INTWINING +INTWIST +INTWISTED +INTWISTING +INTWISTS +INULASE +INULASES +INULIN +INULINS +INUNCTION +INUNCTIONS +INUNDANT +INUNDATE +INUNDATED +INUNDATES +INUNDATING +INUNDATION +INUNDATIONS +INUNDATOR +INUNDATORS +INUNDATORY +INURBANE +INURE +INURED +INUREMENT +INUREMENTS +INURES +INURING +INURN +INURNED +INURNING +INURNMENT +INURNMENTS +INURNS +INUTILE +INUTILELY +INUTILITIES +INUTILITY +INVADE +INVADED +INVADER +INVADERS +INVADES +INVADING +INVAGINATE +INVAGINATED +INVAGINATES +INVAGINATING +INVAGINATION +INVAGINATIONS +INVALID +INVALIDATE +INVALIDATED +INVALIDATES +INVALIDATING +INVALIDATION +INVALIDATIONS +INVALIDATOR +INVALIDATORS +INVALIDED +INVALIDING +INVALIDISM +INVALIDISMS +INVALIDITIES +INVALIDITY +INVALIDLY +INVALIDS +INVALUABLE +INVALUABLENESS +INVALUABLY +INVAR +INVARIABILITIES +INVARIABILITY +INVARIABLE +INVARIABLES +INVARIABLY +INVARIANCE +INVARIANCES +INVARIANT +INVARIANTS +INVARS +INVASION +INVASIONS +INVASIVE +INVASIVENESS +INVASIVENESSES +INVECTED +INVECTIVE +INVECTIVELY +INVECTIVENESS +INVECTIVENESSES +INVECTIVES +INVEIGH +INVEIGHED +INVEIGHER +INVEIGHERS +INVEIGHING +INVEIGHS +INVEIGLE +INVEIGLED +INVEIGLEMENT +INVEIGLEMENTS +INVEIGLER +INVEIGLERS +INVEIGLES +INVEIGLING +INVENT +INVENTED +INVENTER +INVENTERS +INVENTING +INVENTION +INVENTIONS +INVENTIVE +INVENTIVELY +INVENTIVENESS +INVENTIVENESSES +INVENTOR +INVENTORIAL +INVENTORIALLY +INVENTORIED +INVENTORIES +INVENTORS +INVENTORY +INVENTORYING +INVENTRESS +INVENTRESSES +INVENTS +INVERITIES +INVERITY +INVERNESS +INVERNESSES +INVERSE +INVERSED +INVERSELY +INVERSES +INVERSING +INVERSION +INVERSIONS +INVERSIVE +INVERT +INVERTASE +INVERTASES +INVERTEBRATE +INVERTEBRATES +INVERTED +INVERTER +INVERTERS +INVERTIBLE +INVERTIN +INVERTING +INVERTINS +INVERTOR +INVERTORS +INVERTS +INVEST +INVESTABLE +INVESTED +INVESTIGATE +INVESTIGATED +INVESTIGATES +INVESTIGATING +INVESTIGATION +INVESTIGATIONAL +INVESTIGATIONS +INVESTIGATIVE +INVESTIGATOR +INVESTIGATORS +INVESTIGATORY +INVESTING +INVESTITURE +INVESTITURES +INVESTMENT +INVESTMENTS +INVESTOR +INVESTORS +INVESTS +INVETERACIES +INVETERACY +INVETERATE +INVETERATELY +INVIABILITIES +INVIABILITY +INVIABLE +INVIABLY +INVIDIOUS +INVIDIOUSLY +INVIDIOUSNESS +INVIDIOUSNESSES +INVIGILATE +INVIGILATED +INVIGILATES +INVIGILATING +INVIGILATION +INVIGILATIONS +INVIGILATOR +INVIGILATORS +INVIGORATE +INVIGORATED +INVIGORATES +INVIGORATING +INVIGORATINGLY +INVIGORATION +INVIGORATIONS +INVIGORATOR +INVIGORATORS +INVINCIBILITIES +INVINCIBILITY +INVINCIBLE +INVINCIBLENESS +INVINCIBLY +INVIOLABILITIES +INVIOLABILITY +INVIOLABLE +INVIOLABLENESS +INVIOLABLY +INVIOLACIES +INVIOLACY +INVIOLATE +INVIOLATELY +INVIOLATENESS +INVIOLATENESSES +INVIRILE +INVISCID +INVISIBILITIES +INVISIBILITY +INVISIBLE +INVISIBLENESS +INVISIBLENESSES +INVISIBLES +INVISIBLY +INVITAL +INVITATION +INVITATIONAL +INVITATIONALS +INVITATIONS +INVITATORIES +INVITATORY +INVITE +INVITED +INVITEE +INVITEES +INVITER +INVITERS +INVITES +INVITING +INVITINGLY +INVOCATE +INVOCATED +INVOCATES +INVOCATING +INVOCATION +INVOCATIONAL +INVOCATIONS +INVOCATORY +INVOICE +INVOICED +INVOICES +INVOICING +INVOKE +INVOKED +INVOKER +INVOKERS +INVOKES +INVOKING +INVOLUCEL +INVOLUCELS +INVOLUCRA +INVOLUCRAL +INVOLUCRATE +INVOLUCRE +INVOLUCRES +INVOLUCRUM +INVOLUNTARILY +INVOLUNTARINESS +INVOLUNTARY +INVOLUTE +INVOLUTED +INVOLUTES +INVOLUTING +INVOLUTION +INVOLUTIONAL +INVOLUTIONS +INVOLVE +INVOLVED +INVOLVEDLY +INVOLVEMENT +INVOLVEMENTS +INVOLVER +INVOLVERS +INVOLVES +INVOLVING +INVULNERABILITY +INVULNERABLE +INVULNERABLY +INWALL +INWALLED +INWALLING +INWALLS +INWARD +INWARDLY +INWARDNESS +INWARDNESSES +INWARDS +INWEAVE +INWEAVED +INWEAVES +INWEAVING +INWIND +INWINDING +INWINDS +INWOUND +INWOVE +INWOVEN +INWRAP +INWRAPPED +INWRAPPING +INWRAPS +INWROUGHT +IODATE +IODATED +IODATES +IODATING +IODATION +IODATIONS +IODIC +IODID +IODIDE +IODIDES +IODIDS +IODIN +IODINATE +IODINATED +IODINATES +IODINATING +IODINATION +IODINATIONS +IODINE +IODINES +IODINS +IODISE +IODISED +IODISES +IODISING +IODISM +IODISMS +IODIZE +IODIZED +IODIZER +IODIZERS +IODIZES +IODIZING +IODOFORM +IODOFORMS +IODOMETRIES +IODOMETRY +IODOPHOR +IODOPHORS +IODOPSIN +IODOPSINS +IODOUS +IOLITE +IOLITES +ION +IONIC +IONICITIES +IONICITY +IONICS +IONISE +IONISED +IONISES +IONISING +IONIUM +IONIUMS +IONIZABLE +IONIZATION +IONIZATIONS +IONIZE +IONIZED +IONIZER +IONIZERS +IONIZES +IONIZING +IONOGEN +IONOGENIC +IONOGENS +IONOMER +IONOMERS +IONONE +IONONES +IONOPHORE +IONOPHORES +IONOSONDE +IONOSONDES +IONOSPHERE +IONOSPHERES +IONOSPHERIC +IONOSPHERICALLY +IONS +IONTOPHORESES +IONTOPHORESIS +IONTOPHORETIC +IOTA +IOTACISM +IOTACISMS +IOTAS +IPECAC +IPECACS +IPECACUANHA +IPECACUANHAS +IPOMOEA +IPOMOEAS +IPRONIAZID +IPRONIAZIDS +IPSILATERAL +IPSILATERALLY +IRACUND +IRADE +IRADES +IRASCIBILITIES +IRASCIBILITY +IRASCIBLE +IRASCIBLENESS +IRASCIBLENESSES +IRASCIBLY +IRATE +IRATELY +IRATENESS +IRATENESSES +IRATER +IRATEST +IRE +IRED +IREFUL +IREFULLY +IRELESS +IRENIC +IRENICAL +IRENICALLY +IRENICS +IRES +IRID +IRIDES +IRIDESCENCE +IRIDESCENCES +IRIDESCENT +IRIDESCENTLY +IRIDIC +IRIDIUM +IRIDIUMS +IRIDOLOGIES +IRIDOLOGIST +IRIDOLOGISTS +IRIDOLOGY +IRIDOSMINE +IRIDOSMINES +IRIDS +IRING +IRIS +IRISED +IRISES +IRISING +IRITIC +IRITIS +IRITISES +IRK +IRKED +IRKING +IRKS +IRKSOME +IRKSOMELY +IRKSOMENESS +IRKSOMENESSES +IROKO +IROKOS +IRON +IRONBARK +IRONBARKS +IRONBOUND +IRONCLAD +IRONCLADS +IRONE +IRONED +IRONER +IRONERS +IRONES +IRONFISTED +IRONHANDED +IRONHEARTED +IRONIC +IRONICAL +IRONICALLY +IRONICALNESS +IRONICALNESSES +IRONIES +IRONING +IRONINGS +IRONIST +IRONISTS +IRONIZE +IRONIZED +IRONIZES +IRONIZING +IRONLIKE +IRONMAN +IRONMASTER +IRONMASTERS +IRONMEN +IRONMONGER +IRONMONGERIES +IRONMONGERS +IRONMONGERY +IRONNESS +IRONNESSES +IRONS +IRONSIDE +IRONSIDES +IRONSMITH +IRONSMITHS +IRONSTONE +IRONSTONES +IRONWARE +IRONWARES +IRONWEED +IRONWEEDS +IRONWOMAN +IRONWOMEN +IRONWOOD +IRONWOODS +IRONWORK +IRONWORKER +IRONWORKERS +IRONWORKS +IRONY +IRRADIANCE +IRRADIANCES +IRRADIANT +IRRADIATE +IRRADIATED +IRRADIATES +IRRADIATING +IRRADIATION +IRRADIATIONS +IRRADIATIVE +IRRADIATOR +IRRADIATORS +IRRADICABLE +IRRADICABLY +IRRATIONAL +IRRATIONALISM +IRRATIONALISMS +IRRATIONALIST +IRRATIONALISTIC +IRRATIONALISTS +IRRATIONALITIES +IRRATIONALITY +IRRATIONALLY +IRRATIONALS +IRREAL +IRREALITIES +IRREALITY +IRRECLAIMABLE +IRRECLAIMABLY +IRRECONCILABLE +IRRECONCILABLES +IRRECONCILABLY +IRRECOVERABLE +IRRECOVERABLY +IRRECUSABLE +IRRECUSABLY +IRREDEEMABLE +IRREDEEMABLY +IRREDENTA +IRREDENTAS +IRREDENTISM +IRREDENTISMS +IRREDENTIST +IRREDENTISTS +IRREDUCIBILITY +IRREDUCIBLE +IRREDUCIBLY +IRREFLEXIVE +IRREFORMABILITY +IRREFORMABLE +IRREFRAGABILITY +IRREFRAGABLE +IRREFRAGABLY +IRREFUTABILITY +IRREFUTABLE +IRREFUTABLY +IRREGARDLESS +IRREGULAR +IRREGULARITIES +IRREGULARITY +IRREGULARLY +IRREGULARS +IRRELATIVE +IRRELATIVELY +IRRELEVANCE +IRRELEVANCES +IRRELEVANCIES +IRRELEVANCY +IRRELEVANT +IRRELEVANTLY +IRRELIGION +IRRELIGIONIST +IRRELIGIONISTS +IRRELIGIONS +IRRELIGIOUS +IRRELIGIOUSLY +IRREMEABLE +IRREMEDIABLE +IRREMEDIABLY +IRREMOVABILITY +IRREMOVABLE +IRREMOVABLY +IRREPARABLE +IRREPARABLENESS +IRREPARABLY +IRREPEALABILITY +IRREPEALABLE +IRREPLACEABLE +IRREPLACEABLY +IRREPRESSIBLE +IRREPRESSIBLY +IRREPROACHABLE +IRREPROACHABLY +IRREPRODUCIBLE +IRRESISTIBILITY +IRRESISTIBLE +IRRESISTIBLY +IRRESOLUBLE +IRRESOLUTE +IRRESOLUTELY +IRRESOLUTENESS +IRRESOLUTION +IRRESOLUTIONS +IRRESOLVABLE +IRRESPONSIBLE +IRRESPONSIBLES +IRRESPONSIBLY +IRRESPONSIVE +IRRETRIEVABLE +IRRETRIEVABLY +IRREVERENCE +IRREVERENCES +IRREVERENT +IRREVERENTLY +IRREVERSIBILITY +IRREVERSIBLE +IRREVERSIBLY +IRREVOCABILITY +IRREVOCABLE +IRREVOCABLENESS +IRREVOCABLY +IRRIDENTA +IRRIDENTAS +IRRIGABLE +IRRIGABLY +IRRIGATE +IRRIGATED +IRRIGATES +IRRIGATING +IRRIGATION +IRRIGATIONS +IRRIGATOR +IRRIGATORS +IRRIGUOUS +IRRITABILITIES +IRRITABILITY +IRRITABLE +IRRITABLENESS +IRRITABLENESSES +IRRITABLY +IRRITANCIES +IRRITANCY +IRRITANT +IRRITANTS +IRRITATE +IRRITATED +IRRITATES +IRRITATING +IRRITATINGLY +IRRITATION +IRRITATIONS +IRRITATIVE +IRRITATOR +IRRITATORS +IRROTATIONAL +IRRUPT +IRRUPTED +IRRUPTING +IRRUPTION +IRRUPTIONS +IRRUPTIVE +IRRUPTIVELY +IRRUPTS +IS +ISAGOGE +ISAGOGES +ISAGOGIC +ISAGOGICS +ISALLOBAR +ISALLOBARIC +ISALLOBARS +ISARITHM +ISARITHMS +ISATIN +ISATINE +ISATINES +ISATINIC +ISATINS +ISBA +ISBAS +ISCHAEMIA +ISCHAEMIAS +ISCHEMIA +ISCHEMIAS +ISCHEMIC +ISCHIA +ISCHIADIC +ISCHIAL +ISCHIATIC +ISCHIUM +ISEIKONIA +ISEIKONIAS +ISEIKONIC +ISENTROPIC +ISENTROPICALLY +ISINGLASS +ISINGLASSES +ISLAND +ISLANDED +ISLANDER +ISLANDERS +ISLANDING +ISLANDS +ISLE +ISLED +ISLELESS +ISLES +ISLET +ISLETED +ISLETS +ISLING +ISM +ISMS +ISOAGGLUTININ +ISOAGGLUTININS +ISOALLOXAZINE +ISOALLOXAZINES +ISOANTIBODIES +ISOANTIBODY +ISOANTIGEN +ISOANTIGENIC +ISOANTIGENS +ISOBAR +ISOBARE +ISOBARES +ISOBARIC +ISOBARISM +ISOBARISMS +ISOBARS +ISOBATH +ISOBATHIC +ISOBATHS +ISOBUTANE +ISOBUTANES +ISOBUTENE +ISOBUTENES +ISOBUTYL +ISOBUTYLENE +ISOBUTYLENES +ISOBUTYLS +ISOCALORIC +ISOCARBOXAZID +ISOCARBOXAZIDS +ISOCHEIM +ISOCHEIMS +ISOCHIME +ISOCHIMES +ISOCHOR +ISOCHORE +ISOCHORES +ISOCHORIC +ISOCHORS +ISOCHROMOSOME +ISOCHROMOSOMES +ISOCHRON +ISOCHRONAL +ISOCHRONALLY +ISOCHRONE +ISOCHRONES +ISOCHRONISM +ISOCHRONISMS +ISOCHRONOUS +ISOCHRONOUSLY +ISOCHRONS +ISOCLINAL +ISOCLINALS +ISOCLINE +ISOCLINES +ISOCLINIC +ISOCLINICS +ISOCRACIES +ISOCRACY +ISOCYANATE +ISOCYANATES +ISOCYCLIC +ISODIAMETRIC +ISODOSE +ISOELECTRIC +ISOELECTRONIC +ISOENZYMATIC +ISOENZYME +ISOENZYMES +ISOENZYMIC +ISOFORM +ISOFORMS +ISOGAMETE +ISOGAMETES +ISOGAMETIC +ISOGAMIES +ISOGAMOUS +ISOGAMY +ISOGENEIC +ISOGENIC +ISOGENIES +ISOGENOUS +ISOGENY +ISOGLOSS +ISOGLOSSAL +ISOGLOSSES +ISOGLOSSIC +ISOGON +ISOGONAL +ISOGONALS +ISOGONE +ISOGONES +ISOGONIC +ISOGONICS +ISOGONIES +ISOGONS +ISOGONY +ISOGRAFT +ISOGRAFTED +ISOGRAFTING +ISOGRAFTS +ISOGRAM +ISOGRAMS +ISOGRAPH +ISOGRAPHS +ISOGRIV +ISOGRIVS +ISOHEL +ISOHELS +ISOHYET +ISOHYETAL +ISOHYETS +ISOLABLE +ISOLATABLE +ISOLATE +ISOLATED +ISOLATES +ISOLATING +ISOLATION +ISOLATIONISM +ISOLATIONISMS +ISOLATIONIST +ISOLATIONISTS +ISOLATIONS +ISOLATOR +ISOLATORS +ISOLEAD +ISOLEADS +ISOLEUCINE +ISOLEUCINES +ISOLINE +ISOLINES +ISOLOG +ISOLOGOUS +ISOLOGS +ISOLOGUE +ISOLOGUES +ISOMER +ISOMERASE +ISOMERASES +ISOMERIC +ISOMERISM +ISOMERISMS +ISOMERIZATION +ISOMERIZATIONS +ISOMERIZE +ISOMERIZED +ISOMERIZES +ISOMERIZING +ISOMEROUS +ISOMERS +ISOMETRIC +ISOMETRICALLY +ISOMETRICS +ISOMETRIES +ISOMETRY +ISOMORPH +ISOMORPHIC +ISOMORPHICALLY +ISOMORPHISM +ISOMORPHISMS +ISOMORPHOUS +ISOMORPHS +ISONIAZID +ISONIAZIDS +ISONOMIC +ISONOMIES +ISONOMY +ISOOCTANE +ISOOCTANES +ISOPACH +ISOPACHS +ISOPHOTAL +ISOPHOTE +ISOPHOTES +ISOPIESTIC +ISOPLETH +ISOPLETHIC +ISOPLETHS +ISOPOD +ISOPODAN +ISOPODANS +ISOPODS +ISOPRENALINE +ISOPRENALINES +ISOPRENE +ISOPRENES +ISOPRENOID +ISOPROPYL +ISOPROPYLS +ISOPROTERENOL +ISOPROTERENOLS +ISOPYCNIC +ISOSCELES +ISOSMOTIC +ISOSMOTICALLY +ISOSPIN +ISOSPINS +ISOSPORIES +ISOSPORY +ISOSTACIES +ISOSTACY +ISOSTASIES +ISOSTASY +ISOSTATIC +ISOSTATICALLY +ISOSTERIC +ISOTACH +ISOTACHS +ISOTACTIC +ISOTHERAL +ISOTHERE +ISOTHERES +ISOTHERM +ISOTHERMAL +ISOTHERMALLY +ISOTHERMS +ISOTONE +ISOTONES +ISOTONIC +ISOTONICALLY +ISOTONICITIES +ISOTONICITY +ISOTOPE +ISOTOPES +ISOTOPIC +ISOTOPICALLY +ISOTOPIES +ISOTOPY +ISOTROPIC +ISOTROPIES +ISOTROPY +ISOTYPE +ISOTYPES +ISOTYPIC +ISOZYME +ISOZYMES +ISOZYMIC +ISSEI +ISSEIS +ISSUABLE +ISSUABLY +ISSUANCE +ISSUANCES +ISSUANT +ISSUE +ISSUED +ISSUELESS +ISSUER +ISSUERS +ISSUES +ISSUING +ISTHMI +ISTHMIAN +ISTHMIANS +ISTHMIC +ISTHMOID +ISTHMUS +ISTHMUSES +ISTLE +ISTLES +IT +ITALIANATE +ITALIANATED +ITALIANATES +ITALIANATING +ITALIANISE +ITALIANISED +ITALIANISES +ITALIANISING +ITALIANIZE +ITALIANIZED +ITALIANIZES +ITALIANIZING +ITALIC +ITALICISE +ITALICISED +ITALICISES +ITALICISING +ITALICIZATION +ITALICIZATIONS +ITALICIZE +ITALICIZED +ITALICIZES +ITALICIZING +ITALICS +ITCH +ITCHED +ITCHES +ITCHIER +ITCHIEST +ITCHILY +ITCHINESS +ITCHINESSES +ITCHING +ITCHINGS +ITCHY +ITEM +ITEMED +ITEMING +ITEMISE +ITEMISED +ITEMISES +ITEMISING +ITEMIZATION +ITEMIZATIONS +ITEMIZE +ITEMIZED +ITEMIZER +ITEMIZERS +ITEMIZES +ITEMIZING +ITEMS +ITERANCE +ITERANCES +ITERANT +ITERATE +ITERATED +ITERATES +ITERATING +ITERATION +ITERATIONS +ITERATIVE +ITERATIVELY +ITERUM +ITHER +ITHYPHALLIC +ITINERACIES +ITINERACY +ITINERANCIES +ITINERANCY +ITINERANT +ITINERANTLY +ITINERANTS +ITINERARIES +ITINERARY +ITINERATE +ITINERATED +ITINERATES +ITINERATING +ITINERATION +ITINERATIONS +ITS +ITSELF +IVERMECTIN +IVERMECTINS +IVIED +IVIES +IVORIES +IVORY +IVORYBILL +IVORYBILLS +IVORYLIKE +IVY +IVYLIKE +IWIS +IXIA +IXIAS +IXODID +IXODIDS +IXORA +IXORAS +IXTLE +IXTLES +IZAR +IZARS +IZZARD +IZZARDS +JAB +JABBED +JABBER +JABBERED +JABBERER +JABBERERS +JABBERING +JABBERS +JABBERWOCKIES +JABBERWOCKY +JABBING +JABIRU +JABIRUS +JABORANDI +JABORANDIS +JABOT +JABOTICABA +JABOTICABAS +JABOTS +JABS +JACAL +JACALES +JACALS +JACAMAR +JACAMARS +JACANA +JACANAS +JACARANDA +JACARANDAS +JACINTH +JACINTHE +JACINTHES +JACINTHS +JACK +JACKAL +JACKALS +JACKANAPES +JACKANAPESES +JACKAROO +JACKAROOS +JACKASS +JACKASSERIES +JACKASSERY +JACKASSES +JACKBOOT +JACKBOOTED +JACKBOOTS +JACKDAW +JACKDAWS +JACKED +JACKER +JACKEROO +JACKEROOS +JACKERS +JACKET +JACKETED +JACKETING +JACKETLESS +JACKETS +JACKFISH +JACKFISHES +JACKFRUIT +JACKFRUITS +JACKHAMMER +JACKHAMMERED +JACKHAMMERING +JACKHAMMERS +JACKIES +JACKING +JACKKNIFE +JACKKNIFED +JACKKNIFES +JACKKNIFING +JACKKNIVES +JACKLEG +JACKLEGS +JACKLIGHT +JACKLIGHTED +JACKLIGHTING +JACKLIGHTS +JACKPLANE +JACKPLANES +JACKPOT +JACKPOTS +JACKRABBIT +JACKRABBITS +JACKROLL +JACKROLLED +JACKROLLING +JACKROLLS +JACKS +JACKSCREW +JACKSCREWS +JACKSHAFT +JACKSHAFTS +JACKSMELT +JACKSMELTS +JACKSNIPE +JACKSNIPES +JACKSTAY +JACKSTAYS +JACKSTONE +JACKSTONES +JACKSTRAW +JACKSTRAWS +JACKY +JACOBIN +JACOBINS +JACOBUS +JACOBUSES +JACONET +JACONETS +JACQUARD +JACQUARDS +JACQUERIE +JACQUERIES +JACTATION +JACTATIONS +JACTITATION +JACTITATIONS +JACULATE +JACULATED +JACULATES +JACULATING +JACUZZI +JACUZZIS +JADE +JADED +JADEDLY +JADEDNESS +JADEDNESSES +JADEITE +JADEITES +JADELIKE +JADES +JADING +JADISH +JADISHLY +JADITIC +JAEGER +JAEGERS +JAG +JAGER +JAGERS +JAGG +JAGGARIES +JAGGARY +JAGGED +JAGGEDER +JAGGEDEST +JAGGEDLY +JAGGEDNESS +JAGGEDNESSES +JAGGER +JAGGERIES +JAGGERS +JAGGERY +JAGGHERIES +JAGGHERY +JAGGIER +JAGGIES +JAGGIEST +JAGGING +JAGGS +JAGGY +JAGLESS +JAGRA +JAGRAS +JAGS +JAGUAR +JAGUARONDI +JAGUARONDIS +JAGUARS +JAGUARUNDI +JAGUARUNDIS +JAIL +JAILABLE +JAILBAIT +JAILBIRD +JAILBIRDS +JAILBREAK +JAILBREAKS +JAILED +JAILER +JAILERS +JAILHOUSE +JAILHOUSES +JAILING +JAILOR +JAILORS +JAILS +JAKE +JAKES +JALAP +JALAPENO +JALAPENOS +JALAPIC +JALAPIN +JALAPINS +JALAPS +JALOP +JALOPIES +JALOPPIES +JALOPPY +JALOPS +JALOPY +JALOUSIE +JALOUSIED +JALOUSIES +JAM +JAMB +JAMBALAYA +JAMBALAYAS +JAMBE +JAMBEAU +JAMBEAUX +JAMBED +JAMBES +JAMBING +JAMBOREE +JAMBOREES +JAMBS +JAMLIKE +JAMMABLE +JAMMED +JAMMER +JAMMERS +JAMMIER +JAMMIES +JAMMIEST +JAMMING +JAMMY +JAMPACKED +JAMS +JANE +JANES +JANGLE +JANGLED +JANGLER +JANGLERS +JANGLES +JANGLIER +JANGLIEST +JANGLING +JANGLY +JANIFORM +JANISARIES +JANISARY +JANISSARIES +JANISSARY +JANITOR +JANITORIAL +JANITORS +JANIZARIES +JANIZARY +JANTY +JAPAN +JAPANIZE +JAPANIZED +JAPANIZES +JAPANIZING +JAPANNED +JAPANNER +JAPANNERS +JAPANNING +JAPANS +JAPE +JAPED +JAPER +JAPERIES +JAPERS +JAPERY +JAPES +JAPING +JAPINGLY +JAPONAISERIE +JAPONAISERIES +JAPONICA +JAPONICAS +JAR +JARDINIERE +JARDINIERES +JARFUL +JARFULS +JARGON +JARGONED +JARGONEER +JARGONEERS +JARGONEL +JARGONELS +JARGONING +JARGONISH +JARGONIST +JARGONISTIC +JARGONISTS +JARGONIZE +JARGONIZED +JARGONIZES +JARGONIZING +JARGONS +JARGONY +JARGOON +JARGOONS +JARHEAD +JARHEADS +JARINA +JARINAS +JARL +JARLDOM +JARLDOMS +JARLS +JARLSBERG +JARLSBERGS +JAROSITE +JAROSITES +JAROVIZE +JAROVIZED +JAROVIZES +JAROVIZING +JARRAH +JARRAHS +JARRED +JARRING +JARRINGLY +JARS +JARSFUL +JARVEY +JARVEYS +JASMIN +JASMINE +JASMINES +JASMINS +JASPER +JASPERS +JASPERWARE +JASPERWARES +JASPERY +JASPILITE +JASPILITES +JASSID +JASSIDS +JATO +JATOS +JAUK +JAUKED +JAUKING +JAUKS +JAUNCE +JAUNCED +JAUNCES +JAUNCING +JAUNDICE +JAUNDICED +JAUNDICES +JAUNDICING +JAUNT +JAUNTED +JAUNTIER +JAUNTIEST +JAUNTILY +JAUNTINESS +JAUNTINESSES +JAUNTING +JAUNTS +JAUNTY +JAUP +JAUPED +JAUPING +JAUPS +JAVA +JAVAS +JAVELIN +JAVELINA +JAVELINAS +JAVELINED +JAVELINING +JAVELINS +JAW +JAWAN +JAWANS +JAWBONE +JAWBONED +JAWBONER +JAWBONERS +JAWBONES +JAWBONING +JAWBONINGS +JAWBREAKER +JAWBREAKERS +JAWED +JAWING +JAWLESS +JAWLIKE +JAWLINE +JAWLINES +JAWS +JAY +JAYBIRD +JAYBIRDS +JAYGEE +JAYGEES +JAYHAWKER +JAYHAWKERS +JAYS +JAYVEE +JAYVEES +JAYWALK +JAYWALKED +JAYWALKER +JAYWALKERS +JAYWALKING +JAYWALKS +JAZZ +JAZZBO +JAZZBOS +JAZZED +JAZZER +JAZZERS +JAZZES +JAZZIER +JAZZIEST +JAZZILY +JAZZINESS +JAZZINESSES +JAZZING +JAZZLIKE +JAZZMAN +JAZZMEN +JAZZY +JEALOUS +JEALOUSIES +JEALOUSLY +JEALOUSNESS +JEALOUSNESSES +JEALOUSY +JEAN +JEANED +JEANS +JEBEL +JEBELS +JEE +JEED +JEEING +JEEP +JEEPED +JEEPERS +JEEPING +JEEPNEY +JEEPNEYS +JEEPS +JEER +JEERED +JEERER +JEERERS +JEERING +JEERINGLY +JEERS +JEES +JEEZ +JEFE +JEFES +JEHAD +JEHADS +JEHU +JEHUS +JEJUNA +JEJUNAL +JEJUNE +JEJUNELY +JEJUNENESS +JEJUNENESSES +JEJUNITIES +JEJUNITY +JEJUNUM +JELL +JELLABA +JELLABAS +JELLED +JELLIED +JELLIES +JELLIFIED +JELLIFIES +JELLIFY +JELLIFYING +JELLING +JELLO +JELLOS +JELLS +JELLY +JELLYBEAN +JELLYBEANS +JELLYFISH +JELLYFISHES +JELLYING +JELLYLIKE +JELLYROLL +JELLYROLLS +JELUTONG +JELUTONGS +JEMADAR +JEMADARS +JEMIDAR +JEMIDARS +JEMMIED +JEMMIES +JEMMY +JEMMYING +JENNET +JENNETS +JENNIES +JENNY +JEON +JEOPARD +JEOPARDED +JEOPARDIES +JEOPARDING +JEOPARDISE +JEOPARDISED +JEOPARDISES +JEOPARDISING +JEOPARDIZE +JEOPARDIZED +JEOPARDIZES +JEOPARDIZING +JEOPARDS +JEOPARDY +JEQUIRITIES +JEQUIRITY +JERBOA +JERBOAS +JEREED +JEREEDS +JEREMIAD +JEREMIADS +JERID +JERIDS +JERK +JERKED +JERKER +JERKERS +JERKIER +JERKIES +JERKIEST +JERKILY +JERKIN +JERKINESS +JERKINESSES +JERKING +JERKINGLY +JERKINS +JERKS +JERKWATER +JERKWATERS +JERKY +JEROBOAM +JEROBOAMS +JERREED +JERREEDS +JERRICAN +JERRICANS +JERRID +JERRIDS +JERRIES +JERRY +JERRYCAN +JERRYCANS +JERSEY +JERSEYED +JERSEYS +JESS +JESSAMINE +JESSAMINES +JESSANT +JESSE +JESSED +JESSES +JESSING +JEST +JESTED +JESTER +JESTERS +JESTFUL +JESTING +JESTINGLY +JESTINGS +JESTS +JESUIT +JESUITIC +JESUITICAL +JESUITICALLY +JESUITISM +JESUITISMS +JESUITRIES +JESUITRY +JESUITS +JET +JETBEAD +JETBEADS +JETE +JETES +JETFOIL +JETFOILS +JETLAG +JETLAGS +JETLIKE +JETLINER +JETLINERS +JETON +JETONS +JETPORT +JETPORTS +JETS +JETSAM +JETSAMS +JETSOM +JETSOMS +JETSTREAM +JETSTREAMS +JETTED +JETTIED +JETTIER +JETTIES +JETTIEST +JETTINESS +JETTINESSES +JETTING +JETTISON +JETTISONABLE +JETTISONED +JETTISONING +JETTISONS +JETTON +JETTONS +JETTY +JETTYING +JETWAY +JETWAYS +JEU +JEUX +JEW +JEWED +JEWEL +JEWELED +JEWELER +JEWELERS +JEWELFISH +JEWELFISHES +JEWELING +JEWELLED +JEWELLER +JEWELLERIES +JEWELLERS +JEWELLERY +JEWELLIKE +JEWELLING +JEWELRIES +JEWELRY +JEWELS +JEWELWEED +JEWELWEEDS +JEWFISH +JEWFISHES +JEWING +JEWS +JEZAIL +JEZAILS +JEZEBEL +JEZEBELS +JIAO +JIB +JIBB +JIBBED +JIBBER +JIBBERS +JIBBING +JIBBOOM +JIBBOOMS +JIBBS +JIBE +JIBED +JIBER +JIBERS +JIBES +JIBING +JIBINGLY +JIBS +JICAMA +JICAMAS +JIFF +JIFFIES +JIFFS +JIFFY +JIG +JIGABOO +JIGABOOS +JIGGED +JIGGER +JIGGERED +JIGGERING +JIGGERS +JIGGIER +JIGGIEST +JIGGING +JIGGISH +JIGGLE +JIGGLED +JIGGLES +JIGGLIER +JIGGLIEST +JIGGLING +JIGGLY +JIGGY +JIGLIKE +JIGS +JIGSAW +JIGSAWED +JIGSAWING +JIGSAWN +JIGSAWS +JIHAD +JIHADS +JILL +JILLION +JILLIONS +JILLS +JILT +JILTED +JILTER +JILTERS +JILTING +JILTS +JIMINY +JIMJAMS +JIMMIE +JIMMIED +JIMMIES +JIMMINY +JIMMY +JIMMYING +JIMP +JIMPER +JIMPEST +JIMPLY +JIMPY +JIMSONWEED +JIMSONWEEDS +JIN +JINGAL +JINGALL +JINGALLS +JINGALS +JINGKO +JINGKOES +JINGLE +JINGLED +JINGLER +JINGLERS +JINGLES +JINGLIER +JINGLIEST +JINGLING +JINGLY +JINGO +JINGOES +JINGOISH +JINGOISM +JINGOISMS +JINGOIST +JINGOISTIC +JINGOISTICALLY +JINGOISTS +JINK +JINKED +JINKER +JINKERS +JINKING +JINKS +JINN +JINNEE +JINNI +JINNIS +JINNS +JINRICKSHA +JINRICKSHAS +JINRIKISHA +JINRIKISHAS +JINRIKSHA +JINRIKSHAS +JINS +JINX +JINXED +JINXES +JINXING +JIPIJAPA +JIPIJAPAS +JISM +JISMS +JITNEY +JITNEYS +JITTER +JITTERBUG +JITTERBUGGED +JITTERBUGGING +JITTERBUGS +JITTERED +JITTERIER +JITTERIEST +JITTERINESS +JITTERINESSES +JITTERING +JITTERS +JITTERY +JIUJITSU +JIUJITSUS +JIUJUTSU +JIUJUTSUS +JIVE +JIVEASS +JIVED +JIVER +JIVERS +JIVES +JIVEY +JIVIER +JIVIEST +JIVING +JIVY +JNANA +JNANAS +JO +JOANNES +JOB +JOBBED +JOBBER +JOBBERIES +JOBBERS +JOBBERY +JOBBING +JOBHOLDER +JOBHOLDERS +JOBLESS +JOBLESSNESS +JOBLESSNESSES +JOBNAME +JOBNAMES +JOBS +JOCK +JOCKETTE +JOCKETTES +JOCKEY +JOCKEYED +JOCKEYING +JOCKEYISH +JOCKEYS +JOCKO +JOCKOS +JOCKS +JOCKSTRAP +JOCKSTRAPS +JOCOSE +JOCOSELY +JOCOSENESS +JOCOSENESSES +JOCOSITIES +JOCOSITY +JOCULAR +JOCULARITIES +JOCULARITY +JOCULARLY +JOCUND +JOCUNDITIES +JOCUNDITY +JOCUNDLY +JODHPUR +JODHPURS +JOE +JOES +JOEY +JOEYS +JOG +JOGGED +JOGGER +JOGGERS +JOGGING +JOGGINGS +JOGGLE +JOGGLED +JOGGLER +JOGGLERS +JOGGLES +JOGGLING +JOGS +JOHANNES +JOHN +JOHNBOAT +JOHNBOATS +JOHNNIE +JOHNNIES +JOHNNY +JOHNNYCAKE +JOHNNYCAKES +JOHNS +JOHNSON +JOHNSONGRASS +JOHNSONGRASSES +JOHNSONS +JOIN +JOINABLE +JOINDER +JOINDERS +JOINED +JOINER +JOINERIES +JOINERS +JOINERY +JOINING +JOININGS +JOINS +JOINT +JOINTED +JOINTEDLY +JOINTEDNESS +JOINTEDNESSES +JOINTER +JOINTERS +JOINTING +JOINTLESS +JOINTLY +JOINTRESS +JOINTRESSES +JOINTS +JOINTURE +JOINTURED +JOINTURES +JOINTURING +JOINTWEED +JOINTWEEDS +JOINTWORM +JOINTWORMS +JOIST +JOISTED +JOISTING +JOISTS +JOJOBA +JOJOBAS +JOKE +JOKED +JOKER +JOKERS +JOKES +JOKESTER +JOKESTERS +JOKEY +JOKIER +JOKIEST +JOKILY +JOKINESS +JOKINESSES +JOKING +JOKINGLY +JOKY +JOLE +JOLES +JOLLIED +JOLLIER +JOLLIERS +JOLLIES +JOLLIEST +JOLLIFICATION +JOLLIFICATIONS +JOLLIFIED +JOLLIFIES +JOLLIFY +JOLLIFYING +JOLLILY +JOLLINESS +JOLLINESSES +JOLLITIES +JOLLITY +JOLLY +JOLLYBOAT +JOLLYBOATS +JOLLYING +JOLT +JOLTED +JOLTER +JOLTERS +JOLTIER +JOLTIEST +JOLTILY +JOLTING +JOLTINGLY +JOLTS +JOLTY +JOMON +JONES +JONESED +JONESES +JONESING +JONGLEUR +JONGLEURS +JONNYCAKE +JONNYCAKES +JONQUIL +JONQUILS +JORAM +JORAMS +JORDAN +JORDANS +JORUM +JORUMS +JOSEPH +JOSEPHS +JOSH +JOSHED +JOSHER +JOSHERS +JOSHES +JOSHING +JOSHINGLY +JOSS +JOSSES +JOSTLE +JOSTLED +JOSTLER +JOSTLERS +JOSTLES +JOSTLING +JOT +JOTA +JOTAS +JOTS +JOTTED +JOTTER +JOTTERS +JOTTING +JOTTINGS +JOTTY +JOUAL +JOUALS +JOUK +JOUKED +JOUKING +JOUKS +JOULE +JOULES +JOUNCE +JOUNCED +JOUNCES +JOUNCIER +JOUNCIEST +JOUNCING +JOUNCY +JOURNAL +JOURNALED +JOURNALESE +JOURNALESES +JOURNALING +JOURNALISM +JOURNALISMS +JOURNALIST +JOURNALISTIC +JOURNALISTS +JOURNALIZE +JOURNALIZED +JOURNALIZER +JOURNALIZERS +JOURNALIZES +JOURNALIZING +JOURNALS +JOURNEY +JOURNEYED +JOURNEYER +JOURNEYERS +JOURNEYING +JOURNEYMAN +JOURNEYMEN +JOURNEYS +JOURNEYWORK +JOURNEYWORKS +JOURNO +JOURNOS +JOUST +JOUSTED +JOUSTER +JOUSTERS +JOUSTING +JOUSTS +JOVIAL +JOVIALITIES +JOVIALITY +JOVIALLY +JOVIALTIES +JOVIALTY +JOW +JOWAR +JOWARS +JOWED +JOWING +JOWL +JOWLED +JOWLIER +JOWLIEST +JOWLINESS +JOWLINESSES +JOWLS +JOWLY +JOWS +JOY +JOYANCE +JOYANCES +JOYED +JOYFUL +JOYFULLER +JOYFULLEST +JOYFULLY +JOYFULNESS +JOYFULNESSES +JOYING +JOYLESS +JOYLESSLY +JOYLESSNESS +JOYLESSNESSES +JOYOUS +JOYOUSLY +JOYOUSNESS +JOYOUSNESSES +JOYPOP +JOYPOPPED +JOYPOPPER +JOYPOPPERS +JOYPOPPING +JOYPOPS +JOYRIDDEN +JOYRIDE +JOYRIDER +JOYRIDERS +JOYRIDES +JOYRIDING +JOYRIDINGS +JOYRODE +JOYS +JOYSTICK +JOYSTICKS +JUBA +JUBAS +JUBBAH +JUBBAHS +JUBE +JUBES +JUBHAH +JUBHAHS +JUBILANCE +JUBILANCES +JUBILANT +JUBILANTLY +JUBILARIAN +JUBILARIANS +JUBILATE +JUBILATED +JUBILATES +JUBILATING +JUBILATION +JUBILATIONS +JUBILE +JUBILEE +JUBILEES +JUBILES +JUCO +JUCOS +JUDAS +JUDASES +JUDDER +JUDDERED +JUDDERING +JUDDERS +JUDGE +JUDGED +JUDGEMENT +JUDGEMENTS +JUDGER +JUDGERS +JUDGES +JUDGESHIP +JUDGESHIPS +JUDGING +JUDGMATIC +JUDGMATICAL +JUDGMATICALLY +JUDGMENT +JUDGMENTAL +JUDGMENTALLY +JUDGMENTS +JUDICABLE +JUDICATORIES +JUDICATORY +JUDICATURE +JUDICATURES +JUDICIAL +JUDICIALLY +JUDICIARIES +JUDICIARY +JUDICIOUS +JUDICIOUSLY +JUDICIOUSNESS +JUDICIOUSNESSES +JUDO +JUDOIST +JUDOISTS +JUDOKA +JUDOKAS +JUDOS +JUG +JUGA +JUGAL +JUGATE +JUGFUL +JUGFULS +JUGGED +JUGGERNAUT +JUGGERNAUTS +JUGGING +JUGGLE +JUGGLED +JUGGLER +JUGGLERIES +JUGGLERS +JUGGLERY +JUGGLES +JUGGLING +JUGGLINGS +JUGHEAD +JUGHEADS +JUGS +JUGSFUL +JUGULA +JUGULAR +JUGULARS +JUGULATE +JUGULATED +JUGULATES +JUGULATING +JUGULUM +JUGUM +JUGUMS +JUICE +JUICED +JUICEHEAD +JUICEHEADS +JUICELESS +JUICER +JUICERS +JUICES +JUICIER +JUICIEST +JUICILY +JUICINESS +JUICINESSES +JUICING +JUICY +JUJITSU +JUJITSUS +JUJU +JUJUBE +JUJUBES +JUJUISM +JUJUISMS +JUJUIST +JUJUISTS +JUJUS +JUJUTSU +JUJUTSUS +JUKE +JUKEBOX +JUKEBOXES +JUKED +JUKES +JUKING +JUKU +JUKUS +JULEP +JULEPS +JULIENNE +JULIENNED +JULIENNES +JULIENNING +JUMBAL +JUMBALS +JUMBLE +JUMBLED +JUMBLER +JUMBLERS +JUMBLES +JUMBLING +JUMBO +JUMBOS +JUMBUCK +JUMBUCKS +JUMP +JUMPABLE +JUMPED +JUMPER +JUMPERS +JUMPIER +JUMPIEST +JUMPILY +JUMPINESS +JUMPINESSES +JUMPING +JUMPINGLY +JUMPOFF +JUMPOFFS +JUMPS +JUMPSUIT +JUMPSUITS +JUMPY +JUN +JUNCO +JUNCOES +JUNCOS +JUNCTION +JUNCTIONAL +JUNCTIONS +JUNCTURAL +JUNCTURE +JUNCTURES +JUNGLE +JUNGLED +JUNGLEGYM +JUNGLEGYMS +JUNGLELIKE +JUNGLES +JUNGLIER +JUNGLIEST +JUNGLY +JUNIOR +JUNIORATE +JUNIORATES +JUNIORITIES +JUNIORITY +JUNIORS +JUNIPER +JUNIPERS +JUNK +JUNKED +JUNKER +JUNKERS +JUNKET +JUNKETED +JUNKETEER +JUNKETEERED +JUNKETEERING +JUNKETEERS +JUNKETER +JUNKETERS +JUNKETING +JUNKETS +JUNKIE +JUNKIER +JUNKIES +JUNKIEST +JUNKING +JUNKMAN +JUNKMEN +JUNKS +JUNKY +JUNKYARD +JUNKYARDS +JUNTA +JUNTAS +JUNTO +JUNTOS +JUPE +JUPES +JUPON +JUPONS +JURA +JURAL +JURALLY +JURANT +JURANTS +JURASSIC +JURAT +JURATORY +JURATS +JUREL +JURELS +JURIDIC +JURIDICAL +JURIDICALLY +JURIED +JURIES +JURISCONSULT +JURISCONSULTS +JURISDICTION +JURISDICTIONAL +JURISDICTIONS +JURISPRUDENCE +JURISPRUDENCES +JURISPRUDENT +JURISPRUDENTIAL +JURISPRUDENTS +JURIST +JURISTIC +JURISTICALLY +JURISTS +JUROR +JURORS +JURY +JURYING +JURYLESS +JURYMAN +JURYMEN +JURYWOMAN +JURYWOMEN +JUS +JUSSIVE +JUSSIVES +JUST +JUSTED +JUSTER +JUSTERS +JUSTEST +JUSTICE +JUSTICES +JUSTICIABILITY +JUSTICIABLE +JUSTICIAR +JUSTICIARS +JUSTIFIABILITY +JUSTIFIABLE +JUSTIFIABLY +JUSTIFICATION +JUSTIFICATIONS +JUSTIFICATIVE +JUSTIFICATORY +JUSTIFIED +JUSTIFIER +JUSTIFIERS +JUSTIFIES +JUSTIFY +JUSTIFYING +JUSTING +JUSTLE +JUSTLED +JUSTLES +JUSTLING +JUSTLY +JUSTNESS +JUSTNESSES +JUSTS +JUT +JUTE +JUTELIKE +JUTES +JUTS +JUTTED +JUTTIED +JUTTIES +JUTTING +JUTTINGLY +JUTTY +JUTTYING +JUVENAL +JUVENALS +JUVENESCENCE +JUVENESCENCES +JUVENESCENT +JUVENILE +JUVENILES +JUVENILIA +JUVENILITIES +JUVENILITY +JUXTAPOSE +JUXTAPOSED +JUXTAPOSES +JUXTAPOSING +JUXTAPOSITION +JUXTAPOSITIONAL +JUXTAPOSITIONS +KA +KAAS +KAB +KABAB +KABABS +KABAKA +KABAKAS +KABALA +KABALAS +KABALISM +KABALISMS +KABALIST +KABALISTS +KABAR +KABARS +KABAYA +KABAYAS +KABBALA +KABBALAH +KABBALAHS +KABBALAS +KABBALISM +KABBALISMS +KABBALIST +KABBALISTS +KABELJOU +KABELJOUS +KABIKI +KABIKIS +KABOB +KABOBS +KABS +KABUKI +KABUKIS +KACHINA +KACHINAS +KADDISH +KADDISHES +KADDISHIM +KADI +KADIS +KAE +KAES +KAF +KAFFEEKLATSCH +KAFFEEKLATSCHES +KAFFIR +KAFFIRS +KAFFIYAH +KAFFIYAHS +KAFFIYEH +KAFFIYEHS +KAFIR +KAFIRS +KAFS +KAFTAN +KAFTANS +KAGU +KAGUS +KAHUNA +KAHUNAS +KAIAK +KAIAKS +KAIF +KAIFS +KAIL +KAILS +KAILYARD +KAILYARDS +KAIN +KAINIT +KAINITE +KAINITES +KAINITS +KAINS +KAIROMONE +KAIROMONES +KAISER +KAISERDOM +KAISERDOMS +KAISERIN +KAISERINS +KAISERISM +KAISERISMS +KAISERS +KAJEPUT +KAJEPUTS +KAKA +KAKAPO +KAKAPOS +KAKAS +KAKEMONO +KAKEMONOS +KAKI +KAKIEMON +KAKIEMONS +KAKIS +KALAM +KALAMATA +KALAMATAS +KALAMS +KALANCHOE +KALANCHOES +KALE +KALEIDOSCOPE +KALEIDOSCOPES +KALEIDOSCOPIC +KALENDS +KALES +KALEWIFE +KALEWIVES +KALEYARD +KALEYARDS +KALIAN +KALIANS +KALIF +KALIFATE +KALIFATES +KALIFS +KALIMBA +KALIMBAS +KALIPH +KALIPHATE +KALIPHATES +KALIPHS +KALIUM +KALIUMS +KALLIDIN +KALLIDINS +KALLIKREIN +KALLIKREINS +KALMIA +KALMIAS +KALONG +KALONGS +KALPA +KALPAC +KALPACS +KALPAK +KALPAKS +KALPAS +KALSOMINE +KALSOMINED +KALSOMINES +KALSOMINING +KALYPTRA +KALYPTRAS +KAMAAINA +KAMAAINAS +KAMACITE +KAMACITES +KAMALA +KAMALAS +KAME +KAMES +KAMI +KAMIK +KAMIKAZE +KAMIKAZES +KAMIKS +KAMPONG +KAMPONGS +KAMSEEN +KAMSEENS +KAMSIN +KAMSINS +KANA +KANAKA +KANAKAS +KANAMYCIN +KANAMYCINS +KANAS +KANBAN +KANBANS +KANE +KANES +KANGAROO +KANGAROOS +KANJI +KANJIS +KANTAR +KANTARS +KANTELE +KANTELES +KANZU +KANZUS +KAOLIANG +KAOLIANGS +KAOLIN +KAOLINE +KAOLINES +KAOLINIC +KAOLINITE +KAOLINITES +KAOLINITIC +KAOLINS +KAON +KAONIC +KAONS +KAPA +KAPAS +KAPELLMEISTER +KAPELLMEISTERS +KAPH +KAPHS +KAPOK +KAPOKS +KAPPA +KAPPAS +KAPUT +KAPUTT +KARABINER +KARABINERS +KARAKUL +KARAKULS +KARAOKE +KARAOKES +KARAT +KARATE +KARATEIST +KARATEISTS +KARATES +KARATS +KARMA +KARMAS +KARMIC +KARN +KARNS +KAROO +KAROOS +KAROSS +KAROSSES +KARROO +KARROOS +KARST +KARSTIC +KARSTS +KART +KARTING +KARTINGS +KARTS +KARYOGAMIES +KARYOGAMY +KARYOKINESES +KARYOKINESIS +KARYOKINETIC +KARYOLOGIC +KARYOLOGICAL +KARYOLOGIES +KARYOLOGY +KARYOLYMPH +KARYOLYMPHS +KARYOSOME +KARYOSOMES +KARYOTIN +KARYOTINS +KARYOTYPE +KARYOTYPED +KARYOTYPES +KARYOTYPIC +KARYOTYPICALLY +KARYOTYPING +KAS +KASBAH +KASBAHS +KASHA +KASHAS +KASHER +KASHERED +KASHERING +KASHERS +KASHMIR +KASHMIRS +KASHRUT +KASHRUTH +KASHRUTHS +KASHRUTS +KAT +KATA +KATABATIC +KATAKANA +KATAKANAS +KATAS +KATCHINA +KATCHINAS +KATCINA +KATCINAS +KATHARSES +KATHARSIS +KATHODAL +KATHODE +KATHODES +KATHODIC +KATION +KATIONS +KATS +KATSURA +KATSURAS +KATYDID +KATYDIDS +KATZENJAMMER +KATZENJAMMERS +KAURI +KAURIES +KAURIS +KAURY +KAVA +KAVAKAVA +KAVAKAVAS +KAVAS +KAVASS +KAVASSES +KAY +KAYAK +KAYAKED +KAYAKER +KAYAKERS +KAYAKING +KAYAKINGS +KAYAKS +KAYLES +KAYO +KAYOED +KAYOES +KAYOING +KAYOS +KAYS +KAZACHKI +KAZACHOK +KAZATSKI +KAZATSKIES +KAZATSKY +KAZILLION +KAZILLIONS +KAZOO +KAZOOS +KBAR +KBARS +KEA +KEAS +KEBAB +KEBABS +KEBAR +KEBARS +KEBBIE +KEBBIES +KEBBOCK +KEBBOCKS +KEBBUCK +KEBBUCKS +KEBLAH +KEBLAHS +KEBOB +KEBOBS +KECK +KECKED +KECKING +KECKLE +KECKLED +KECKLES +KECKLING +KECKS +KEDDAH +KEDDAHS +KEDGE +KEDGED +KEDGEREE +KEDGEREES +KEDGES +KEDGING +KEEF +KEEFS +KEEK +KEEKED +KEEKING +KEEKS +KEEL +KEELAGE +KEELAGES +KEELBOAT +KEELBOATS +KEELED +KEELHALE +KEELHALED +KEELHALES +KEELHALING +KEELHAUL +KEELHAULED +KEELHAULING +KEELHAULS +KEELING +KEELLESS +KEELS +KEELSON +KEELSONS +KEEN +KEENED +KEENER +KEENERS +KEENEST +KEENING +KEENLY +KEENNESS +KEENNESSES +KEENS +KEEP +KEEPABLE +KEEPER +KEEPERS +KEEPING +KEEPINGS +KEEPS +KEEPSAKE +KEEPSAKES +KEESHOND +KEESHONDEN +KEESHONDS +KEESTER +KEESTERS +KEET +KEETS +KEEVE +KEEVES +KEF +KEFFIYAH +KEFFIYAHS +KEFFIYEH +KEFFIYEHS +KEFIR +KEFIRS +KEFS +KEG +KEGELER +KEGELERS +KEGGED +KEGGER +KEGGERS +KEGGING +KEGLER +KEGLERS +KEGLING +KEGLINGS +KEGS +KEIR +KEIRETSU +KEIRETSUS +KEIRS +KEISTER +KEISTERS +KEITLOA +KEITLOAS +KELEP +KELEPS +KELIM +KELIMS +KELLIES +KELLY +KELOID +KELOIDAL +KELOIDS +KELP +KELPED +KELPIE +KELPIES +KELPING +KELPS +KELPY +KELSON +KELSONS +KELT +KELTER +KELTERS +KELTS +KELVIN +KELVINS +KEMP +KEMPS +KEMPT +KEN +KENAF +KENAFS +KENCH +KENCHES +KENDO +KENDOS +KENNED +KENNEL +KENNELED +KENNELING +KENNELLED +KENNELLING +KENNELS +KENNING +KENNINGS +KENO +KENOS +KENOSIS +KENOSISES +KENOTIC +KENOTRON +KENOTRONS +KENS +KENSPECKLE +KENT +KENTE +KENTES +KENTLEDGE +KENTLEDGES +KEP +KEPHALIN +KEPHALINS +KEPI +KEPIS +KEPPED +KEPPEN +KEPPING +KEPS +KEPT +KERAMIC +KERAMICS +KERATIN +KERATINIZATION +KERATINIZATIONS +KERATINIZE +KERATINIZED +KERATINIZES +KERATINIZING +KERATINOPHILIC +KERATINOUS +KERATINS +KERATITIDES +KERATITIS +KERATITISES +KERATOID +KERATOMA +KERATOMAS +KERATOMATA +KERATOPLASTIES +KERATOPLASTY +KERATOSE +KERATOSES +KERATOSIC +KERATOSIS +KERATOTIC +KERB +KERBED +KERBING +KERBS +KERCHIEF +KERCHIEFED +KERCHIEFS +KERCHIEVES +KERCHOO +KERF +KERFED +KERFING +KERFLOOEY +KERFS +KERFUFFLE +KERFUFFLES +KERMES +KERMESS +KERMESSE +KERMESSES +KERMIS +KERMISES +KERN +KERNE +KERNED +KERNEL +KERNELED +KERNELING +KERNELLED +KERNELLING +KERNELLY +KERNELS +KERNES +KERNING +KERNITE +KERNITES +KERNS +KEROGEN +KEROGENS +KEROSENE +KEROSENES +KEROSINE +KEROSINES +KERPLUNK +KERPLUNKED +KERPLUNKING +KERPLUNKS +KERRIA +KERRIAS +KERRIES +KERRY +KERSEY +KERSEYMERE +KERSEYMERES +KERSEYS +KERYGMA +KERYGMAS +KERYGMATA +KERYGMATIC +KESTREL +KESTRELS +KETAMINE +KETAMINES +KETCH +KETCHES +KETCHUP +KETCHUPS +KETENE +KETENES +KETO +KETOGENESES +KETOGENESIS +KETOGENIC +KETOL +KETOLS +KETONE +KETONEMIA +KETONEMIAS +KETONES +KETONIC +KETONURIA +KETONURIAS +KETOSE +KETOSES +KETOSIS +KETOSTEROID +KETOSTEROIDS +KETOTIC +KETTLE +KETTLEDRUM +KETTLEDRUMS +KETTLES +KEVEL +KEVELS +KEVIL +KEVILS +KEWPIE +KEWPIES +KEX +KEXES +KEY +KEYBOARD +KEYBOARDED +KEYBOARDER +KEYBOARDERS +KEYBOARDING +KEYBOARDIST +KEYBOARDISTS +KEYBOARDS +KEYBUTTON +KEYBUTTONS +KEYCARD +KEYCARDS +KEYED +KEYHOLE +KEYHOLES +KEYING +KEYLESS +KEYNOTE +KEYNOTED +KEYNOTER +KEYNOTERS +KEYNOTES +KEYNOTING +KEYPAD +KEYPADS +KEYPAL +KEYPALS +KEYPUNCH +KEYPUNCHED +KEYPUNCHER +KEYPUNCHERS +KEYPUNCHES +KEYPUNCHING +KEYS +KEYSET +KEYSETS +KEYSTER +KEYSTERS +KEYSTONE +KEYSTONES +KEYSTROKE +KEYSTROKED +KEYSTROKES +KEYSTROKING +KEYWAY +KEYWAYS +KEYWORD +KEYWORDS +KHADDAR +KHADDARS +KHADI +KHADIS +KHAF +KHAFS +KHAKI +KHAKILIKE +KHAKIS +KHALIF +KHALIFA +KHALIFAS +KHALIFATE +KHALIFATES +KHALIFS +KHAMSEEN +KHAMSEENS +KHAMSIN +KHAMSINS +KHAN +KHANATE +KHANATES +KHANS +KHAPH +KHAPHS +KHAT +KHATS +KHAZEN +KHAZENIM +KHAZENS +KHEDA +KHEDAH +KHEDAHS +KHEDAS +KHEDIVAL +KHEDIVE +KHEDIVES +KHEDIVIAL +KHET +KHETH +KHETHS +KHETS +KHI +KHIRKAH +KHIRKAHS +KHIS +KHOUM +KHOUMS +KI +KIANG +KIANGS +KIAUGH +KIAUGHS +KIBBE +KIBBEH +KIBBEHS +KIBBES +KIBBI +KIBBIS +KIBBITZ +KIBBITZED +KIBBITZER +KIBBITZERS +KIBBITZES +KIBBITZING +KIBBLE +KIBBLED +KIBBLES +KIBBLING +KIBBUTZ +KIBBUTZIM +KIBBUTZNIK +KIBBUTZNIKS +KIBE +KIBEI +KIBEIS +KIBES +KIBITZ +KIBITZED +KIBITZER +KIBITZERS +KIBITZES +KIBITZING +KIBLA +KIBLAH +KIBLAHS +KIBLAS +KIBOSH +KIBOSHED +KIBOSHES +KIBOSHING +KICK +KICKABLE +KICKBACK +KICKBACKS +KICKBALL +KICKBALLS +KICKBOARD +KICKBOARDS +KICKBOX +KICKBOXED +KICKBOXER +KICKBOXERS +KICKBOXES +KICKBOXING +KICKBOXINGS +KICKED +KICKER +KICKERS +KICKIER +KICKIEST +KICKING +KICKOFF +KICKOFFS +KICKS +KICKSHAW +KICKSHAWS +KICKSTAND +KICKSTANDS +KICKSTART +KICKSTARTED +KICKSTARTING +KICKSTARTS +KICKUP +KICKUPS +KICKY +KID +KIDDED +KIDDER +KIDDERS +KIDDIE +KIDDIES +KIDDING +KIDDINGLY +KIDDISH +KIDDO +KIDDOES +KIDDOS +KIDDUSH +KIDDUSHES +KIDDY +KIDLIKE +KIDNAP +KIDNAPED +KIDNAPEE +KIDNAPEES +KIDNAPER +KIDNAPERS +KIDNAPING +KIDNAPPED +KIDNAPPEE +KIDNAPPEES +KIDNAPPER +KIDNAPPERS +KIDNAPPING +KIDNAPS +KIDNEY +KIDNEYS +KIDS +KIDSKIN +KIDSKINS +KIDVID +KIDVIDS +KIEF +KIEFS +KIELBASA +KIELBASAS +KIELBASI +KIELBASY +KIER +KIERS +KIESELGUHR +KIESELGUHRS +KIESELGUR +KIESELGURS +KIESERITE +KIESERITES +KIESTER +KIESTERS +KIF +KIFS +KIKE +KIKES +KILDERKIN +KILDERKINS +KILIM +KILIMS +KILL +KILLABLE +KILLDEE +KILLDEER +KILLDEERS +KILLDEES +KILLED +KILLER +KILLERS +KILLICK +KILLICKS +KILLIE +KILLIES +KILLIFISH +KILLIFISHES +KILLING +KILLINGLY +KILLINGS +KILLJOY +KILLJOYS +KILLOCK +KILLOCKS +KILLS +KILN +KILNED +KILNING +KILNS +KILO +KILOBAR +KILOBARS +KILOBASE +KILOBASES +KILOBAUD +KILOBAUDS +KILOBIT +KILOBITS +KILOBYTE +KILOBYTES +KILOCALORIE +KILOCALORIES +KILOCURIE +KILOCURIES +KILOCYCLE +KILOCYCLES +KILOGAUSS +KILOGAUSSES +KILOGRAM +KILOGRAMS +KILOHERTZ +KILOHERTZES +KILOJOULE +KILOJOULES +KILOLITER +KILOLITERS +KILOLITRE +KILOLITRES +KILOMETER +KILOMETERS +KILOMETRE +KILOMETRES +KILOMOLE +KILOMOLES +KILOPARSEC +KILOPARSECS +KILOPASCAL +KILOPASCALS +KILORAD +KILORADS +KILOS +KILOTON +KILOTONS +KILOVOLT +KILOVOLTS +KILOWATT +KILOWATTS +KILT +KILTED +KILTER +KILTERS +KILTIE +KILTIES +KILTING +KILTINGS +KILTLIKE +KILTS +KILTY +KIMBERLITE +KIMBERLITES +KIMCHEE +KIMCHEES +KIMCHI +KIMCHIS +KIMONO +KIMONOED +KIMONOS +KIN +KINA +KINARA +KINARAS +KINAS +KINASE +KINASES +KIND +KINDER +KINDERGARTEN +KINDERGARTENER +KINDERGARTENERS +KINDERGARTENS +KINDERGARTNER +KINDERGARTNERS +KINDEST +KINDHEARTED +KINDHEARTEDLY +KINDHEARTEDNESS +KINDLE +KINDLED +KINDLER +KINDLERS +KINDLES +KINDLESS +KINDLESSLY +KINDLIER +KINDLIEST +KINDLINESS +KINDLINESSES +KINDLING +KINDLINGS +KINDLY +KINDNESS +KINDNESSES +KINDRED +KINDREDS +KINDS +KINE +KINEMA +KINEMAS +KINEMATIC +KINEMATICAL +KINEMATICALLY +KINEMATICS +KINES +KINESCOPE +KINESCOPED +KINESCOPES +KINESCOPING +KINESES +KINESIC +KINESICS +KINESIOLOGIES +KINESIOLOGY +KINESIS +KINESTHESES +KINESTHESIA +KINESTHESIAS +KINESTHESIS +KINESTHETIC +KINESTHETICALLY +KINETIC +KINETICALLY +KINETICIST +KINETICISTS +KINETICS +KINETIN +KINETINS +KINETOCHORE +KINETOCHORES +KINETOPLAST +KINETOPLASTS +KINETOSCOPE +KINETOSCOPES +KINETOSOME +KINETOSOMES +KINFOLK +KINFOLKS +KING +KINGBIRD +KINGBIRDS +KINGBOLT +KINGBOLTS +KINGCRAFT +KINGCRAFTS +KINGCUP +KINGCUPS +KINGDOM +KINGDOMS +KINGED +KINGFISH +KINGFISHER +KINGFISHERS +KINGFISHES +KINGHOOD +KINGHOODS +KINGING +KINGLESS +KINGLET +KINGLETS +KINGLIER +KINGLIEST +KINGLIKE +KINGLINESS +KINGLINESSES +KINGLY +KINGMAKER +KINGMAKERS +KINGPIN +KINGPINS +KINGPOST +KINGPOSTS +KINGS +KINGSHIP +KINGSHIPS +KINGSIDE +KINGSIDES +KINGSNAKE +KINGSNAKES +KINGWOOD +KINGWOODS +KININ +KININS +KINK +KINKAJOU +KINKAJOUS +KINKED +KINKIER +KINKIEST +KINKILY +KINKINESS +KINKINESSES +KINKING +KINKS +KINKY +KINLESS +KINNIKINNICK +KINNIKINNICKS +KINO +KINOS +KINS +KINSFOLK +KINSHIP +KINSHIPS +KINSMAN +KINSMEN +KINSWOMAN +KINSWOMEN +KIOSK +KIOSKS +KIP +KIPPED +KIPPEN +KIPPER +KIPPERED +KIPPERER +KIPPERERS +KIPPERING +KIPPERS +KIPPING +KIPS +KIPSKIN +KIPSKINS +KIR +KIRIGAMI +KIRIGAMIS +KIRK +KIRKMAN +KIRKMEN +KIRKS +KIRMESS +KIRMESSES +KIRN +KIRNED +KIRNING +KIRNS +KIRS +KIRSCH +KIRSCHES +KIRTLE +KIRTLED +KIRTLES +KIS +KISHKA +KISHKAS +KISHKE +KISHKES +KISMAT +KISMATS +KISMET +KISMETIC +KISMETS +KISS +KISSABLE +KISSABLY +KISSED +KISSER +KISSERS +KISSES +KISSING +KISSY +KIST +KISTFUL +KISTFULS +KISTS +KIT +KITBAG +KITBAGS +KITCHEN +KITCHENET +KITCHENETS +KITCHENETTE +KITCHENETTES +KITCHENS +KITCHENWARE +KITCHENWARES +KITE +KITED +KITELIKE +KITER +KITERS +KITES +KITH +KITHARA +KITHARAS +KITHE +KITHED +KITHES +KITHING +KITHS +KITING +KITLING +KITLINGS +KITS +KITSCH +KITSCHES +KITSCHIFIED +KITSCHIFIES +KITSCHIFY +KITSCHIFYING +KITSCHY +KITTED +KITTEL +KITTEN +KITTENED +KITTENING +KITTENISH +KITTENISHLY +KITTENISHNESS +KITTENISHNESSES +KITTENS +KITTIES +KITTING +KITTIWAKE +KITTIWAKES +KITTLE +KITTLED +KITTLER +KITTLES +KITTLEST +KITTLING +KITTY +KIVA +KIVAS +KIWI +KIWIFRUIT +KIWIFRUITS +KIWIS +KLATCH +KLATCHES +KLATSCH +KLATSCHES +KLAVERN +KLAVERNS +KLAXON +KLAXONS +KLEAGLE +KLEAGLES +KLEBSIELLA +KLEBSIELLAS +KLEENEX +KLEENEXES +KLEPHT +KLEPHTIC +KLEPHTS +KLEPTO +KLEPTOMANIA +KLEPTOMANIAC +KLEPTOMANIACS +KLEPTOMANIAS +KLEPTOS +KLEZMER +KLEZMERS +KLEZMORIM +KLICK +KLICKS +KLIK +KLIKS +KLISTER +KLISTERS +KLONDIKE +KLONDIKES +KLONG +KLONGS +KLOOF +KLOOFS +KLUDGE +KLUDGED +KLUDGES +KLUDGEY +KLUDGIER +KLUDGIEST +KLUDGING +KLUDGY +KLUGE +KLUGED +KLUGES +KLUGING +KLUTZ +KLUTZES +KLUTZIER +KLUTZIEST +KLUTZINESS +KLUTZINESSES +KLUTZY +KLYSTRON +KLYSTRONS +KNACK +KNACKED +KNACKER +KNACKERED +KNACKERIES +KNACKERS +KNACKERY +KNACKING +KNACKS +KNACKWURST +KNACKWURSTS +KNAP +KNAPPED +KNAPPER +KNAPPERS +KNAPPING +KNAPS +KNAPSACK +KNAPSACKED +KNAPSACKS +KNAPWEED +KNAPWEEDS +KNAR +KNARRED +KNARRY +KNARS +KNAUR +KNAURS +KNAVE +KNAVERIES +KNAVERY +KNAVES +KNAVISH +KNAVISHLY +KNAWE +KNAWEL +KNAWELS +KNAWES +KNEAD +KNEADABLE +KNEADED +KNEADER +KNEADERS +KNEADING +KNEADS +KNEE +KNEECAP +KNEECAPPED +KNEECAPPING +KNEECAPPINGS +KNEECAPS +KNEED +KNEEHOLE +KNEEHOLES +KNEEING +KNEEL +KNEELED +KNEELER +KNEELERS +KNEELING +KNEELS +KNEEPAD +KNEEPADS +KNEEPAN +KNEEPANS +KNEEPIECE +KNEEPIECES +KNEES +KNEESIES +KNEESOCK +KNEESOCKS +KNELL +KNELLED +KNELLING +KNELLS +KNELT +KNESSET +KNESSETS +KNEW +KNICKERBOCKER +KNICKERBOCKERS +KNICKERS +KNICKKNACK +KNICKKNACKS +KNIFE +KNIFED +KNIFELIKE +KNIFEPOINT +KNIFEPOINTS +KNIFER +KNIFERS +KNIFES +KNIFING +KNIGHT +KNIGHTED +KNIGHTHOOD +KNIGHTHOODS +KNIGHTING +KNIGHTLINESS +KNIGHTLINESSES +KNIGHTLY +KNIGHTS +KNISH +KNISHES +KNIT +KNITS +KNITTABLE +KNITTED +KNITTER +KNITTERS +KNITTING +KNITTINGS +KNITWEAR +KNIVES +KNOB +KNOBBED +KNOBBIER +KNOBBIEST +KNOBBLIER +KNOBBLIEST +KNOBBLY +KNOBBY +KNOBKERRIE +KNOBKERRIES +KNOBLIKE +KNOBS +KNOCK +KNOCKABOUT +KNOCKABOUTS +KNOCKDOWN +KNOCKDOWNS +KNOCKED +KNOCKER +KNOCKERS +KNOCKING +KNOCKLESS +KNOCKOFF +KNOCKOFFS +KNOCKOUT +KNOCKOUTS +KNOCKS +KNOCKWURST +KNOCKWURSTS +KNOLL +KNOLLED +KNOLLER +KNOLLERS +KNOLLING +KNOLLS +KNOLLY +KNOP +KNOPPED +KNOPS +KNOSP +KNOSPS +KNOT +KNOTGRASS +KNOTGRASSES +KNOTHOLE +KNOTHOLES +KNOTLESS +KNOTLIKE +KNOTS +KNOTTED +KNOTTER +KNOTTERS +KNOTTIER +KNOTTIEST +KNOTTILY +KNOTTINESS +KNOTTINESSES +KNOTTING +KNOTTINGS +KNOTTY +KNOTWEED +KNOTWEEDS +KNOUT +KNOUTED +KNOUTING +KNOUTS +KNOW +KNOWABLE +KNOWER +KNOWERS +KNOWING +KNOWINGER +KNOWINGEST +KNOWINGLY +KNOWINGNESS +KNOWINGNESSES +KNOWINGS +KNOWLEDGE +KNOWLEDGEABLE +KNOWLEDGEABLY +KNOWLEDGES +KNOWN +KNOWNS +KNOWS +KNUBBIER +KNUBBIEST +KNUBBY +KNUCKLE +KNUCKLEBALL +KNUCKLEBALLER +KNUCKLEBALLERS +KNUCKLEBALLS +KNUCKLEBONE +KNUCKLEBONES +KNUCKLED +KNUCKLEHEAD +KNUCKLEHEADED +KNUCKLEHEADS +KNUCKLER +KNUCKLERS +KNUCKLES +KNUCKLIER +KNUCKLIEST +KNUCKLING +KNUCKLY +KNUR +KNURL +KNURLED +KNURLIER +KNURLIEST +KNURLING +KNURLS +KNURLY +KNURS +KOA +KOALA +KOALAS +KOAN +KOANS +KOAS +KOB +KOBO +KOBOLD +KOBOLDS +KOBOS +KOBS +KOEL +KOELS +KOHL +KOHLRABI +KOHLRABIES +KOHLS +KOI +KOINE +KOINES +KOIS +KOJI +KOJIS +KOKANEE +KOKANEES +KOLA +KOLACKY +KOLAS +KOLBASI +KOLBASIS +KOLBASSI +KOLBASSIS +KOLHOZ +KOLHOZES +KOLHOZY +KOLINSKI +KOLINSKIES +KOLINSKY +KOLKHOS +KOLKHOSES +KOLKHOSY +KOLKHOZ +KOLKHOZES +KOLKHOZNIK +KOLKHOZNIKI +KOLKHOZNIKS +KOLKHOZY +KOLKOZ +KOLKOZES +KOLKOZY +KOLO +KOLOS +KOMATIK +KOMATIKS +KOMBU +KOMBUS +KOMONDOR +KOMONDOROCK +KOMONDOROK +KOMONDORS +KONK +KONKED +KONKING +KONKS +KOODOO +KOODOOS +KOOK +KOOKABURRA +KOOKABURRAS +KOOKIE +KOOKIER +KOOKIEST +KOOKINESS +KOOKINESSES +KOOKS +KOOKY +KOP +KOPECK +KOPECKS +KOPEK +KOPEKS +KOPH +KOPHS +KOPIYKA +KOPIYKAS +KOPJE +KOPJES +KOPPA +KOPPAS +KOPPIE +KOPPIES +KOPS +KOR +KORA +KORAI +KORAS +KORAT +KORATS +KORE +KORMA +KORMAS +KORS +KORUN +KORUNA +KORUNAS +KORUNY +KOS +KOSHER +KOSHERED +KOSHERING +KOSHERS +KOSS +KOTO +KOTOS +KOTOW +KOTOWED +KOTOWER +KOTOWERS +KOTOWING +KOTOWS +KOUMIS +KOUMISES +KOUMISS +KOUMISSES +KOUMYS +KOUMYSES +KOUMYSS +KOUMYSSES +KOUPREY +KOUPREYS +KOUROI +KOUROS +KOUSSO +KOUSSOS +KOWTOW +KOWTOWED +KOWTOWER +KOWTOWERS +KOWTOWING +KOWTOWS +KRAAL +KRAALED +KRAALING +KRAALS +KRAFT +KRAFTS +KRAIT +KRAITS +KRAKEN +KRAKENS +KRATER +KRATERS +KRAUT +KRAUTS +KREEP +KREEPS +KREMLIN +KREMLINOLOGIES +KREMLINOLOGIST +KREMLINOLOGISTS +KREMLINOLOGY +KREMLINS +KREPLACH +KREPLECH +KREUTZER +KREUTZERS +KREUZER +KREUZERS +KREWE +KREWES +KRILL +KRILLS +KRIMMER +KRIMMERS +KRIS +KRISES +KRONA +KRONE +KRONEN +KRONER +KRONOR +KRONUR +KROON +KROONI +KROONS +KRUBI +KRUBIS +KRUBUT +KRUBUTS +KRULLER +KRULLERS +KRUMHORN +KRUMHORNS +KRUMKAKE +KRUMKAKES +KRUMMHOLZ +KRUMMHORN +KRUMMHORNS +KRYOLITE +KRYOLITES +KRYOLITH +KRYOLITHS +KRYPTON +KRYPTONS +KUCHEN +KUCHENS +KUDO +KUDOS +KUDU +KUDUS +KUDZU +KUDZUS +KUE +KUES +KUFI +KUFIS +KUGEL +KUGELS +KUKRI +KUKRIS +KULAK +KULAKI +KULAKS +KULTUR +KULTURS +KUMISS +KUMISSES +KUMMEL +KUMMELS +KUMQUAT +KUMQUATS +KUMYS +KUMYSES +KUNA +KUNDALINI +KUNDALINIS +KUNE +KUNZITE +KUNZITES +KURBASH +KURBASHED +KURBASHES +KURBASHING +KURGAN +KURGANS +KURRAJONG +KURRAJONGS +KURTA +KURTAS +KURTOSES +KURTOSIS +KURTOSISES +KURU +KURUS +KUSSO +KUSSOS +KUVASZ +KUVASZOK +KVAS +KVASES +KVASS +KVASSES +KVELL +KVELLED +KVELLING +KVELLS +KVETCH +KVETCHED +KVETCHER +KVETCHERS +KVETCHES +KVETCHIER +KVETCHIEST +KVETCHING +KVETCHY +KWACHA +KWACHAS +KWANZA +KWANZAS +KWASHIORKOR +KWASHIORKORS +KYACK +KYACKS +KYAK +KYAKS +KYANISE +KYANISED +KYANISES +KYANISING +KYANITE +KYANITES +KYANIZE +KYANIZED +KYANIZES +KYANIZING +KYAR +KYARS +KYAT +KYATS +KYBOSH +KYBOSHED +KYBOSHES +KYBOSHING +KYE +KYES +KYLIKES +KYLIX +KYMOGRAM +KYMOGRAMS +KYMOGRAPH +KYMOGRAPHIC +KYMOGRAPHIES +KYMOGRAPHS +KYMOGRAPHY +KYPHOSES +KYPHOSIS +KYPHOTIC +KYRIE +KYRIES +KYTE +KYTES +KYTHE +KYTHED +KYTHES +KYTHING +LA +LAAGER +LAAGERED +LAAGERING +LAAGERS +LAARI +LAB +LABANOTATION +LABANOTATIONS +LABARA +LABARUM +LABARUMS +LABDANUM +LABDANUMS +LABEL +LABELABLE +LABELED +LABELER +LABELERS +LABELING +LABELLA +LABELLATE +LABELLED +LABELLER +LABELLERS +LABELLING +LABELLOID +LABELLUM +LABELS +LABIA +LABIAL +LABIALITIES +LABIALITY +LABIALIZATION +LABIALIZATIONS +LABIALIZE +LABIALIZED +LABIALIZES +LABIALIZING +LABIALLY +LABIALS +LABIATE +LABIATED +LABIATES +LABILE +LABILITIES +LABILITY +LABIODENTAL +LABIODENTALS +LABIOVELAR +LABIOVELARS +LABIUM +LABOR +LABORATORIES +LABORATORY +LABORED +LABOREDLY +LABORER +LABORERS +LABORING +LABORIOUS +LABORIOUSLY +LABORIOUSNESS +LABORIOUSNESSES +LABORITE +LABORITES +LABORS +LABORSAVING +LABOUR +LABOURED +LABOURER +LABOURERS +LABOURING +LABOURS +LABRA +LABRADOR +LABRADORITE +LABRADORITES +LABRADORS +LABRET +LABRETS +LABROID +LABROIDS +LABRUM +LABRUMS +LABRUSCA +LABS +LABURNUM +LABURNUMS +LABYRINTH +LABYRINTHIAN +LABYRINTHINE +LABYRINTHODONT +LABYRINTHODONTS +LABYRINTHS +LAC +LACCOLITH +LACCOLITHIC +LACCOLITHS +LACE +LACED +LACELESS +LACELIKE +LACER +LACERABLE +LACERATE +LACERATED +LACERATES +LACERATING +LACERATION +LACERATIONS +LACERATIVE +LACERS +LACERTID +LACERTIDS +LACES +LACEWING +LACEWINGS +LACEWOOD +LACEWOODS +LACEWORK +LACEWORKS +LACEY +LACHES +LACHRYMAL +LACHRYMALS +LACHRYMATOR +LACHRYMATORS +LACHRYMOSE +LACHRYMOSELY +LACHRYMOSITIES +LACHRYMOSITY +LACIER +LACIEST +LACILY +LACINESS +LACINESSES +LACING +LACINGS +LACINIATE +LACINIATION +LACINIATIONS +LACK +LACKADAISICAL +LACKADAISICALLY +LACKADAY +LACKED +LACKER +LACKERED +LACKERING +LACKERS +LACKEY +LACKEYED +LACKEYING +LACKEYS +LACKING +LACKLUSTER +LACKLUSTERS +LACKS +LACONIC +LACONICALLY +LACONISM +LACONISMS +LACQUER +LACQUERED +LACQUERER +LACQUERERS +LACQUERING +LACQUERS +LACQUERWARE +LACQUERWARES +LACQUERWORK +LACQUERWORKS +LACQUEY +LACQUEYED +LACQUEYING +LACQUEYS +LACRIMAL +LACRIMALS +LACRIMATION +LACRIMATIONS +LACRIMATOR +LACRIMATORS +LACROSSE +LACROSSES +LACS +LACTALBUMIN +LACTALBUMINS +LACTAM +LACTAMS +LACTARY +LACTASE +LACTASES +LACTATE +LACTATED +LACTATES +LACTATING +LACTATION +LACTATIONAL +LACTATIONS +LACTEAL +LACTEALLY +LACTEALS +LACTEAN +LACTEOUS +LACTIC +LACTIFEROUS +LACTOBACILLI +LACTOBACILLUS +LACTOGENIC +LACTOGLOBULIN +LACTOGLOBULINS +LACTONE +LACTONES +LACTONIC +LACTOSE +LACTOSES +LACUNA +LACUNAE +LACUNAL +LACUNAR +LACUNARIA +LACUNARS +LACUNARY +LACUNAS +LACUNATE +LACUNE +LACUNES +LACUNOSE +LACUSTRINE +LACY +LAD +LADANUM +LADANUMS +LADDER +LADDERED +LADDERING +LADDERLIKE +LADDERS +LADDIE +LADDIES +LADDISH +LADE +LADED +LADEN +LADENED +LADENING +LADENS +LADER +LADERS +LADES +LADHOOD +LADHOODS +LADIES +LADING +LADINGS +LADINO +LADINOS +LADLE +LADLED +LADLEFUL +LADLEFULS +LADLER +LADLERS +LADLES +LADLING +LADRON +LADRONE +LADRONES +LADRONS +LADS +LADY +LADYBIRD +LADYBIRDS +LADYBUG +LADYBUGS +LADYFINGER +LADYFINGERS +LADYFISH +LADYFISHES +LADYHOOD +LADYHOODS +LADYISH +LADYKIN +LADYKINS +LADYLIKE +LADYLOVE +LADYLOVES +LADYPALM +LADYPALMS +LADYSHIP +LADYSHIPS +LAETRILE +LAETRILES +LAEVO +LAG +LAGAN +LAGANS +LAGEND +LAGENDS +LAGER +LAGERED +LAGERING +LAGERS +LAGGARD +LAGGARDLY +LAGGARDNESS +LAGGARDNESSES +LAGGARDS +LAGGED +LAGGER +LAGGERS +LAGGING +LAGGINGS +LAGNAPPE +LAGNAPPES +LAGNIAPPE +LAGNIAPPES +LAGOMORPH +LAGOMORPHS +LAGOON +LAGOONAL +LAGOONS +LAGS +LAGUNA +LAGUNAS +LAGUNE +LAGUNES +LAHAR +LAHARS +LAIC +LAICAL +LAICALLY +LAICH +LAICHS +LAICISE +LAICISED +LAICISES +LAICISING +LAICISM +LAICISMS +LAICIZATION +LAICIZATIONS +LAICIZE +LAICIZED +LAICIZES +LAICIZING +LAICS +LAID +LAIGH +LAIGHS +LAIN +LAIR +LAIRD +LAIRDLY +LAIRDS +LAIRDSHIP +LAIRDSHIPS +LAIRED +LAIRING +LAIRS +LAITANCE +LAITANCES +LAITH +LAITHLY +LAITIES +LAITY +LAKE +LAKEBED +LAKEBEDS +LAKED +LAKEFRONT +LAKEFRONTS +LAKELIKE +LAKEPORT +LAKEPORTS +LAKER +LAKERS +LAKES +LAKESHORE +LAKESHORES +LAKESIDE +LAKESIDES +LAKH +LAKHS +LAKIER +LAKIEST +LAKING +LAKINGS +LAKY +LALIQUE +LALIQUES +LALL +LALLAN +LALLAND +LALLANDS +LALLANS +LALLATION +LALLATIONS +LALLED +LALLING +LALLS +LALLYGAG +LALLYGAGGED +LALLYGAGGING +LALLYGAGS +LAM +LAMA +LAMAS +LAMASERIES +LAMASERY +LAMB +LAMBADA +LAMBADAS +LAMBAST +LAMBASTE +LAMBASTED +LAMBASTES +LAMBASTING +LAMBASTS +LAMBDA +LAMBDAS +LAMBDOID +LAMBED +LAMBENCIES +LAMBENCY +LAMBENT +LAMBENTLY +LAMBER +LAMBERS +LAMBERT +LAMBERTS +LAMBIE +LAMBIER +LAMBIES +LAMBIEST +LAMBING +LAMBKILL +LAMBKILLS +LAMBKIN +LAMBKINS +LAMBLIKE +LAMBREQUIN +LAMBREQUINS +LAMBRUSCO +LAMBRUSCOS +LAMBS +LAMBSKIN +LAMBSKINS +LAMBY +LAME +LAMEBRAIN +LAMEBRAINED +LAMEBRAINS +LAMED +LAMEDH +LAMEDHS +LAMEDS +LAMELLA +LAMELLAE +LAMELLAR +LAMELLAS +LAMELLATE +LAMELLATELY +LAMELLIBRANCH +LAMELLIBRANCHS +LAMELLICORN +LAMELLICORNS +LAMELLIFORM +LAMELLOSE +LAMELY +LAMENESS +LAMENESSES +LAMENT +LAMENTABLE +LAMENTABLENESS +LAMENTABLY +LAMENTATION +LAMENTATIONS +LAMENTED +LAMENTEDLY +LAMENTER +LAMENTERS +LAMENTING +LAMENTS +LAMER +LAMES +LAMEST +LAMIA +LAMIAE +LAMIAS +LAMINA +LAMINABLE +LAMINAE +LAMINAL +LAMINALS +LAMINAR +LAMINARIA +LAMINARIAN +LAMINARIANS +LAMINARIAS +LAMINARIN +LAMINARINS +LAMINARY +LAMINAS +LAMINATE +LAMINATED +LAMINATES +LAMINATING +LAMINATION +LAMINATIONS +LAMINATOR +LAMINATORS +LAMING +LAMININ +LAMININS +LAMINITIS +LAMINITISES +LAMINOSE +LAMINOUS +LAMISTER +LAMISTERS +LAMMED +LAMMERGEIER +LAMMERGEIERS +LAMMERGEYER +LAMMERGEYERS +LAMMING +LAMP +LAMPAD +LAMPADS +LAMPAS +LAMPASES +LAMPBLACK +LAMPBLACKS +LAMPED +LAMPERS +LAMPERSES +LAMPING +LAMPION +LAMPIONS +LAMPLIGHT +LAMPLIGHTER +LAMPLIGHTERS +LAMPLIGHTS +LAMPOON +LAMPOONED +LAMPOONER +LAMPOONERIES +LAMPOONERS +LAMPOONERY +LAMPOONING +LAMPOONS +LAMPPOST +LAMPPOSTS +LAMPREY +LAMPREYS +LAMPS +LAMPSHADE +LAMPSHADES +LAMPSHELL +LAMPSHELLS +LAMPYRID +LAMPYRIDS +LAMS +LAMSTER +LAMSTERS +LANAI +LANAIS +LANATE +LANATED +LANCE +LANCED +LANCELET +LANCELETS +LANCEOLATE +LANCER +LANCERS +LANCES +LANCET +LANCETED +LANCETS +LANCEWOOD +LANCEWOODS +LANCIERS +LANCIFORM +LANCINATE +LANCINATED +LANCINATES +LANCINATING +LANCING +LAND +LANDAU +LANDAULET +LANDAULETS +LANDAUS +LANDED +LANDER +LANDERS +LANDFALL +LANDFALLS +LANDFILL +LANDFILLED +LANDFILLING +LANDFILLS +LANDFORM +LANDFORMS +LANDGRAB +LANDGRABS +LANDGRAVE +LANDGRAVES +LANDHOLDER +LANDHOLDERS +LANDHOLDING +LANDHOLDINGS +LANDING +LANDINGS +LANDLADIES +LANDLADY +LANDLER +LANDLERS +LANDLESS +LANDLESSNESS +LANDLESSNESSES +LANDLINE +LANDLINES +LANDLOCKED +LANDLOPER +LANDLOPERS +LANDLORD +LANDLORDISM +LANDLORDISMS +LANDLORDS +LANDLUBBER +LANDLUBBERLY +LANDLUBBERS +LANDLUBBING +LANDMAN +LANDMARK +LANDMARKED +LANDMARKING +LANDMARKS +LANDMASS +LANDMASSES +LANDMEN +LANDOWNER +LANDOWNERS +LANDOWNERSHIP +LANDOWNERSHIPS +LANDOWNING +LANDOWNINGS +LANDS +LANDSCAPE +LANDSCAPED +LANDSCAPER +LANDSCAPERS +LANDSCAPES +LANDSCAPING +LANDSCAPIST +LANDSCAPISTS +LANDSIDE +LANDSIDES +LANDSKIP +LANDSKIPS +LANDSLEIT +LANDSLID +LANDSLIDDEN +LANDSLIDE +LANDSLIDES +LANDSLIDING +LANDSLIP +LANDSLIPS +LANDSMAN +LANDSMEN +LANDWARD +LANDWARDS +LANE +LANELY +LANES +LANEWAY +LANEWAYS +LANG +LANGBEINITE +LANGBEINITES +LANGLAUF +LANGLAUFER +LANGLAUFERS +LANGLAUFS +LANGLEY +LANGLEYS +LANGOSTINO +LANGOSTINOS +LANGOUSTE +LANGOUSTES +LANGOUSTINE +LANGOUSTINES +LANGRAGE +LANGRAGES +LANGREL +LANGRELS +LANGRIDGE +LANGRIDGES +LANGSHAN +LANGSHANS +LANGSYNE +LANGSYNES +LANGUAGE +LANGUAGES +LANGUE +LANGUES +LANGUET +LANGUETS +LANGUETTE +LANGUETTES +LANGUID +LANGUIDLY +LANGUIDNESS +LANGUIDNESSES +LANGUISH +LANGUISHED +LANGUISHER +LANGUISHERS +LANGUISHES +LANGUISHING +LANGUISHINGLY +LANGUISHMENT +LANGUISHMENTS +LANGUOR +LANGUOROUS +LANGUOROUSLY +LANGUORS +LANGUR +LANGURS +LANIARD +LANIARDS +LANIARIES +LANIARY +LANITAL +LANITALS +LANK +LANKER +LANKEST +LANKIER +LANKIEST +LANKILY +LANKINESS +LANKINESSES +LANKLY +LANKNESS +LANKNESSES +LANKY +LANNER +LANNERET +LANNERETS +LANNERS +LANOLIN +LANOLINE +LANOLINES +LANOLINS +LANOSE +LANOSITIES +LANOSITY +LANTANA +LANTANAS +LANTERN +LANTERNS +LANTHANIDE +LANTHANIDES +LANTHANON +LANTHANONS +LANTHANUM +LANTHANUMS +LANTHORN +LANTHORNS +LANUGINOUS +LANUGO +LANUGOS +LANYARD +LANYARDS +LAOGAI +LAOGAIS +LAP +LAPAROSCOPE +LAPAROSCOPES +LAPAROSCOPIC +LAPAROSCOPIES +LAPAROSCOPIST +LAPAROSCOPISTS +LAPAROSCOPY +LAPAROTOMIES +LAPAROTOMY +LAPBOARD +LAPBOARDS +LAPDOG +LAPDOGS +LAPEL +LAPELED +LAPELLED +LAPELS +LAPFUL +LAPFULS +LAPIDARIAN +LAPIDARIES +LAPIDARY +LAPIDATE +LAPIDATED +LAPIDATES +LAPIDATING +LAPIDES +LAPIDIFIED +LAPIDIFIES +LAPIDIFY +LAPIDIFYING +LAPIDIST +LAPIDISTS +LAPILLI +LAPILLUS +LAPIN +LAPINS +LAPIS +LAPISES +LAPPED +LAPPER +LAPPERED +LAPPERING +LAPPERS +LAPPET +LAPPETED +LAPPETS +LAPPING +LAPS +LAPSABLE +LAPSE +LAPSED +LAPSER +LAPSERS +LAPSES +LAPSIBLE +LAPSING +LAPSTRAKE +LAPSTREAK +LAPSUS +LAPTOP +LAPTOPS +LAPWING +LAPWINGS +LAR +LARBOARD +LARBOARDS +LARCENER +LARCENERS +LARCENIES +LARCENIST +LARCENISTS +LARCENOUS +LARCENOUSLY +LARCENY +LARCH +LARCHEN +LARCHES +LARD +LARDED +LARDER +LARDERS +LARDIER +LARDIEST +LARDING +LARDLIKE +LARDON +LARDONS +LARDOON +LARDOONS +LARDS +LARDY +LAREE +LAREES +LARES +LARGANDO +LARGE +LARGEHEARTED +LARGELY +LARGEMOUTH +LARGEMOUTHS +LARGENESS +LARGENESSES +LARGER +LARGES +LARGESS +LARGESSE +LARGESSES +LARGEST +LARGHETTO +LARGHETTOS +LARGISH +LARGO +LARGOS +LARI +LARIAT +LARIATED +LARIATING +LARIATS +LARINE +LARIS +LARK +LARKED +LARKER +LARKERS +LARKIER +LARKIEST +LARKINESS +LARKINESSES +LARKING +LARKISH +LARKS +LARKSOME +LARKSPUR +LARKSPURS +LARKY +LARRIGAN +LARRIGANS +LARRIKIN +LARRIKINS +LARRUP +LARRUPED +LARRUPER +LARRUPERS +LARRUPING +LARRUPS +LARS +LARUM +LARUMS +LARVA +LARVAE +LARVAL +LARVAS +LARVICIDAL +LARVICIDE +LARVICIDES +LARYNGAL +LARYNGALS +LARYNGEAL +LARYNGEALS +LARYNGECTOMEE +LARYNGECTOMEES +LARYNGECTOMIES +LARYNGECTOMIZED +LARYNGECTOMY +LARYNGES +LARYNGITIC +LARYNGITIS +LARYNGITISES +LARYNGOLOGIES +LARYNGOLOGY +LARYNGOSCOPE +LARYNGOSCOPES +LARYNGOSCOPIES +LARYNGOSCOPY +LARYNX +LARYNXES +LAS +LASAGNA +LASAGNAS +LASAGNE +LASAGNES +LASCAR +LASCARS +LASCIVIOUS +LASCIVIOUSLY +LASCIVIOUSNESS +LASE +LASED +LASER +LASERDISC +LASERDISCS +LASERDISK +LASERDISKS +LASERS +LASES +LASH +LASHED +LASHER +LASHERS +LASHES +LASHING +LASHINGS +LASHINS +LASHKAR +LASHKARS +LASING +LASS +LASSES +LASSI +LASSIE +LASSIES +LASSIS +LASSITUDE +LASSITUDES +LASSO +LASSOED +LASSOER +LASSOERS +LASSOES +LASSOING +LASSOS +LAST +LASTBORN +LASTBORNS +LASTED +LASTER +LASTERS +LASTING +LASTINGLY +LASTINGNESS +LASTINGNESSES +LASTINGS +LASTLY +LASTS +LAT +LATAKIA +LATAKIAS +LATCH +LATCHED +LATCHES +LATCHET +LATCHETS +LATCHING +LATCHKEY +LATCHKEYS +LATCHSTRING +LATCHSTRINGS +LATE +LATECOMER +LATECOMERS +LATED +LATEEN +LATEENER +LATEENERS +LATEENS +LATELY +LATEN +LATENCIES +LATENCY +LATENED +LATENESS +LATENESSES +LATENING +LATENS +LATENSIFICATION +LATENT +LATENTLY +LATENTS +LATER +LATERAD +LATERAL +LATERALED +LATERALING +LATERALIZATION +LATERALIZATIONS +LATERALIZE +LATERALIZED +LATERALIZES +LATERALIZING +LATERALLED +LATERALLING +LATERALLY +LATERALS +LATERBORN +LATERBORNS +LATERITE +LATERITES +LATERITIC +LATERIZATION +LATERIZATIONS +LATERIZE +LATERIZED +LATERIZES +LATERIZING +LATEST +LATESTS +LATEWOOD +LATEWOODS +LATEX +LATEXES +LATH +LATHE +LATHED +LATHER +LATHERED +LATHERER +LATHERERS +LATHERING +LATHERS +LATHERY +LATHES +LATHI +LATHIER +LATHIEST +LATHING +LATHINGS +LATHIS +LATHS +LATHWORK +LATHWORKS +LATHY +LATHYRISM +LATHYRISMS +LATHYRITIC +LATI +LATICES +LATICIFER +LATICIFERS +LATIFUNDIA +LATIFUNDIO +LATIFUNDIOS +LATIFUNDIUM +LATIGO +LATIGOES +LATIGOS +LATILLA +LATILLAS +LATIMERIA +LATIMERIAS +LATINA +LATINAS +LATINITIES +LATINITY +LATINIZATION +LATINIZATIONS +LATINIZE +LATINIZED +LATINIZES +LATINIZING +LATINO +LATINOS +LATISH +LATITUDE +LATITUDES +LATITUDINAL +LATITUDINALLY +LATITUDINARIAN +LATITUDINARIANS +LATKE +LATKES +LATOSOL +LATOSOLIC +LATOSOLS +LATRIA +LATRIAS +LATRINE +LATRINES +LATS +LATTE +LATTEN +LATTENS +LATTER +LATTERLY +LATTES +LATTICE +LATTICED +LATTICES +LATTICEWORK +LATTICEWORKS +LATTICING +LATTICINGS +LATTIN +LATTINS +LATU +LAUAN +LAUANS +LAUD +LAUDABLE +LAUDABLENESS +LAUDABLENESSES +LAUDABLY +LAUDANUM +LAUDANUMS +LAUDATION +LAUDATIONS +LAUDATIVE +LAUDATOR +LAUDATORS +LAUDATORY +LAUDED +LAUDER +LAUDERS +LAUDING +LAUDS +LAUGH +LAUGHABLE +LAUGHABLENESS +LAUGHABLENESSES +LAUGHABLY +LAUGHED +LAUGHER +LAUGHERS +LAUGHING +LAUGHINGLY +LAUGHINGS +LAUGHINGSTOCK +LAUGHINGSTOCKS +LAUGHLINE +LAUGHLINES +LAUGHS +LAUGHTER +LAUGHTERS +LAUNCE +LAUNCES +LAUNCH +LAUNCHED +LAUNCHER +LAUNCHERS +LAUNCHES +LAUNCHING +LAUNCHPAD +LAUNCHPADS +LAUNDER +LAUNDERED +LAUNDERER +LAUNDERERS +LAUNDERETTE +LAUNDERETTES +LAUNDERING +LAUNDERS +LAUNDRESS +LAUNDRESSES +LAUNDRETTE +LAUNDRETTES +LAUNDRIES +LAUNDRY +LAUNDRYMAN +LAUNDRYMEN +LAURA +LAURAE +LAURAS +LAUREATE +LAUREATED +LAUREATES +LAUREATESHIP +LAUREATESHIPS +LAUREATING +LAUREATION +LAUREATIONS +LAUREL +LAURELED +LAURELING +LAURELLED +LAURELLING +LAURELS +LAUWINE +LAUWINES +LAV +LAVA +LAVABO +LAVABOES +LAVABOS +LAVAGE +LAVAGES +LAVALAVA +LAVALAVAS +LAVALIER +LAVALIERE +LAVALIERES +LAVALIERS +LAVALIKE +LAVALLIERE +LAVALLIERES +LAVAS +LAVASH +LAVASHES +LAVATION +LAVATIONS +LAVATORIES +LAVATORY +LAVE +LAVED +LAVEER +LAVEERED +LAVEERING +LAVEERS +LAVENDER +LAVENDERED +LAVENDERING +LAVENDERS +LAVER +LAVEROCK +LAVEROCKS +LAVERS +LAVES +LAVING +LAVISH +LAVISHED +LAVISHER +LAVISHERS +LAVISHES +LAVISHEST +LAVISHING +LAVISHLY +LAVISHNESS +LAVISHNESSES +LAVROCK +LAVROCKS +LAVS +LAW +LAWBOOK +LAWBOOKS +LAWBREAKER +LAWBREAKERS +LAWBREAKING +LAWBREAKINGS +LAWED +LAWFUL +LAWFULLY +LAWFULNESS +LAWFULNESSES +LAWGIVER +LAWGIVERS +LAWGIVING +LAWGIVINGS +LAWINE +LAWINES +LAWING +LAWINGS +LAWLESS +LAWLESSLY +LAWLESSNESS +LAWLESSNESSES +LAWLIKE +LAWMAKER +LAWMAKERS +LAWMAKING +LAWMAKINGS +LAWMAN +LAWMEN +LAWN +LAWNMOWER +LAWNMOWERS +LAWNS +LAWNY +LAWRENCIUM +LAWRENCIUMS +LAWS +LAWSUIT +LAWSUITS +LAWYER +LAWYERED +LAWYERING +LAWYERINGS +LAWYERLIKE +LAWYERLY +LAWYERS +LAX +LAXATION +LAXATIONS +LAXATIVE +LAXATIVES +LAXER +LAXES +LAXEST +LAXITIES +LAXITY +LAXLY +LAXNESS +LAXNESSES +LAY +LAYABOUT +LAYABOUTS +LAYAWAY +LAYAWAYS +LAYED +LAYER +LAYERAGE +LAYERAGES +LAYERED +LAYERING +LAYERINGS +LAYERS +LAYETTE +LAYETTES +LAYIN +LAYING +LAYINS +LAYMAN +LAYMEN +LAYOFF +LAYOFFS +LAYOUT +LAYOUTS +LAYOVER +LAYOVERS +LAYPEOPLE +LAYPERSON +LAYPERSONS +LAYS +LAYUP +LAYUPS +LAYWOMAN +LAYWOMEN +LAZAR +LAZARET +LAZARETS +LAZARETTE +LAZARETTES +LAZARETTO +LAZARETTOS +LAZARS +LAZE +LAZED +LAZES +LAZIED +LAZIER +LAZIES +LAZIEST +LAZILY +LAZINESS +LAZINESSES +LAZING +LAZULI +LAZULIS +LAZULITE +LAZULITES +LAZURITE +LAZURITES +LAZY +LAZYBONES +LAZYING +LAZYISH +LAZZARONE +LAZZARONI +LEA +LEACH +LEACHABILITIES +LEACHABILITY +LEACHABLE +LEACHATE +LEACHATES +LEACHED +LEACHER +LEACHERS +LEACHES +LEACHIER +LEACHIEST +LEACHING +LEACHY +LEAD +LEADED +LEADEN +LEADENED +LEADENING +LEADENLY +LEADENNESS +LEADENNESSES +LEADENS +LEADER +LEADERBOARD +LEADERBOARDS +LEADERLESS +LEADERS +LEADERSHIP +LEADERSHIPS +LEADIER +LEADIEST +LEADING +LEADINGS +LEADLESS +LEADMAN +LEADMEN +LEADOFF +LEADOFFS +LEADPLANT +LEADPLANTS +LEADS +LEADSCREW +LEADSCREWS +LEADSMAN +LEADSMEN +LEADWORK +LEADWORKS +LEADWORT +LEADWORTS +LEADY +LEAF +LEAFAGE +LEAFAGES +LEAFED +LEAFHOPPER +LEAFHOPPERS +LEAFIER +LEAFIEST +LEAFINESS +LEAFINESSES +LEAFING +LEAFLESS +LEAFLET +LEAFLETED +LEAFLETEER +LEAFLETEERS +LEAFLETER +LEAFLETERS +LEAFLETING +LEAFLETS +LEAFLETTED +LEAFLETTING +LEAFLIKE +LEAFS +LEAFSTALK +LEAFSTALKS +LEAFWORM +LEAFWORMS +LEAFY +LEAGUE +LEAGUED +LEAGUER +LEAGUERED +LEAGUERING +LEAGUERS +LEAGUES +LEAGUING +LEAK +LEAKAGE +LEAKAGES +LEAKED +LEAKER +LEAKERS +LEAKIER +LEAKIEST +LEAKILY +LEAKINESS +LEAKINESSES +LEAKING +LEAKLESS +LEAKPROOF +LEAKS +LEAKY +LEAL +LEALLY +LEALTIES +LEALTY +LEAN +LEANED +LEANER +LEANERS +LEANEST +LEANING +LEANINGS +LEANLY +LEANNESS +LEANNESSES +LEANS +LEANT +LEAP +LEAPED +LEAPER +LEAPERS +LEAPFROG +LEAPFROGGED +LEAPFROGGING +LEAPFROGS +LEAPING +LEAPS +LEAPT +LEAR +LEARIER +LEARIEST +LEARN +LEARNABLE +LEARNED +LEARNEDLY +LEARNEDNESS +LEARNEDNESSES +LEARNER +LEARNERS +LEARNING +LEARNINGS +LEARNS +LEARNT +LEARS +LEARY +LEAS +LEASABLE +LEASE +LEASEBACK +LEASEBACKS +LEASED +LEASEHOLD +LEASEHOLDER +LEASEHOLDERS +LEASEHOLDS +LEASER +LEASERS +LEASES +LEASH +LEASHED +LEASHES +LEASHING +LEASING +LEASINGS +LEAST +LEASTS +LEASTWAYS +LEASTWISE +LEATHER +LEATHERBACK +LEATHERBACKS +LEATHERED +LEATHERETTE +LEATHERETTES +LEATHERING +LEATHERLEAF +LEATHERLEAVES +LEATHERLIKE +LEATHERN +LEATHERNECK +LEATHERNECKS +LEATHERS +LEATHERWOOD +LEATHERWOODS +LEATHERY +LEAVE +LEAVED +LEAVEN +LEAVENED +LEAVENING +LEAVENINGS +LEAVENS +LEAVER +LEAVERS +LEAVES +LEAVIER +LEAVIEST +LEAVING +LEAVINGS +LEAVY +LEBEN +LEBENS +LEBENSRAUM +LEBENSRAUMS +LEBKUCHEN +LECH +LECHAYIM +LECHAYIMS +LECHED +LECHER +LECHERED +LECHERIES +LECHERING +LECHEROUS +LECHEROUSLY +LECHEROUSNESS +LECHEROUSNESSES +LECHERS +LECHERY +LECHES +LECHING +LECHWE +LECHWES +LECITHIN +LECITHINASE +LECITHINASES +LECITHINS +LECTERN +LECTERNS +LECTIN +LECTINS +LECTION +LECTIONARIES +LECTIONARY +LECTIONS +LECTOR +LECTORS +LECTOTYPE +LECTOTYPES +LECTURE +LECTURED +LECTURER +LECTURERS +LECTURES +LECTURESHIP +LECTURESHIPS +LECTURING +LECYTHI +LECYTHIS +LECYTHUS +LED +LEDERHOSEN +LEDGE +LEDGER +LEDGERS +LEDGES +LEDGIER +LEDGIEST +LEDGY +LEE +LEEBOARD +LEEBOARDS +LEECH +LEECHED +LEECHES +LEECHING +LEECHLIKE +LEEK +LEEKS +LEER +LEERED +LEERIER +LEERIEST +LEERILY +LEERINESS +LEERINESSES +LEERING +LEERINGLY +LEERS +LEERY +LEES +LEET +LEETS +LEEWARD +LEEWARDLY +LEEWARDS +LEEWAY +LEEWAYS +LEFT +LEFTER +LEFTEST +LEFTIES +LEFTISH +LEFTISM +LEFTISMS +LEFTIST +LEFTISTS +LEFTMOST +LEFTMOSTS +LEFTOVER +LEFTOVERS +LEFTS +LEFTWARD +LEFTWARDS +LEFTWING +LEFTY +LEG +LEGACIES +LEGACY +LEGAL +LEGALESE +LEGALESES +LEGALISE +LEGALISED +LEGALISES +LEGALISING +LEGALISM +LEGALISMS +LEGALIST +LEGALISTIC +LEGALISTICALLY +LEGALISTS +LEGALITIES +LEGALITY +LEGALIZATION +LEGALIZATIONS +LEGALIZE +LEGALIZED +LEGALIZER +LEGALIZERS +LEGALIZES +LEGALIZING +LEGALLY +LEGALS +LEGATE +LEGATED +LEGATEE +LEGATEES +LEGATES +LEGATESHIP +LEGATESHIPS +LEGATINE +LEGATING +LEGATION +LEGATIONS +LEGATO +LEGATOR +LEGATORS +LEGATOS +LEGEND +LEGENDARIES +LEGENDARILY +LEGENDARY +LEGENDIZE +LEGENDIZED +LEGENDIZES +LEGENDIZING +LEGENDRIES +LEGENDRY +LEGENDS +LEGER +LEGERDEMAIN +LEGERDEMAINS +LEGERITIES +LEGERITY +LEGERS +LEGES +LEGGED +LEGGIER +LEGGIERO +LEGGIEST +LEGGIN +LEGGINESS +LEGGINESSES +LEGGING +LEGGINGS +LEGGINS +LEGGY +LEGHORN +LEGHORNS +LEGIBILITIES +LEGIBILITY +LEGIBLE +LEGIBLY +LEGION +LEGIONARIES +LEGIONARY +LEGIONNAIRE +LEGIONNAIRES +LEGIONS +LEGISLATE +LEGISLATED +LEGISLATES +LEGISLATING +LEGISLATION +LEGISLATIONS +LEGISLATIVE +LEGISLATIVELY +LEGISLATIVES +LEGISLATOR +LEGISLATORIAL +LEGISLATORS +LEGISLATORSHIP +LEGISLATORSHIPS +LEGISLATURE +LEGISLATURES +LEGIST +LEGISTS +LEGIT +LEGITIMACIES +LEGITIMACY +LEGITIMATE +LEGITIMATED +LEGITIMATELY +LEGITIMATES +LEGITIMATING +LEGITIMATION +LEGITIMATIONS +LEGITIMATIZE +LEGITIMATIZED +LEGITIMATIZES +LEGITIMATIZING +LEGITIMATOR +LEGITIMATORS +LEGITIMISE +LEGITIMISED +LEGITIMISES +LEGITIMISING +LEGITIMISM +LEGITIMISMS +LEGITIMIST +LEGITIMISTS +LEGITIMIZATION +LEGITIMIZATIONS +LEGITIMIZE +LEGITIMIZED +LEGITIMIZER +LEGITIMIZERS +LEGITIMIZES +LEGITIMIZING +LEGITS +LEGLESS +LEGLIKE +LEGMAN +LEGMEN +LEGONG +LEGONGS +LEGROOM +LEGROOMS +LEGS +LEGUME +LEGUMES +LEGUMIN +LEGUMINOUS +LEGUMINS +LEGWARMER +LEGWARMERS +LEGWORK +LEGWORKS +LEHAYIM +LEHAYIMS +LEHR +LEHRS +LEHUA +LEHUAS +LEI +LEIOMYOMA +LEIOMYOMAS +LEIOMYOMATA +LEIS +LEISHMANIA +LEISHMANIAL +LEISHMANIAS +LEISHMANIASES +LEISHMANIASIS +LEISTER +LEISTERED +LEISTERING +LEISTERS +LEISURE +LEISURED +LEISURELINESS +LEISURELINESSES +LEISURELY +LEISURES +LEITMOTIF +LEITMOTIFS +LEITMOTIV +LEITMOTIVS +LEK +LEKE +LEKKED +LEKKING +LEKS +LEKU +LEKVAR +LEKVARS +LEKYTHI +LEKYTHOI +LEKYTHOS +LEKYTHUS +LEMAN +LEMANS +LEMMA +LEMMAS +LEMMATA +LEMMATIZE +LEMMATIZED +LEMMATIZES +LEMMATIZING +LEMMING +LEMMINGLIKE +LEMMINGS +LEMNISCAL +LEMNISCATE +LEMNISCATES +LEMNISCI +LEMNISCUS +LEMON +LEMONADE +LEMONADES +LEMONGRASS +LEMONGRASSES +LEMONISH +LEMONLIKE +LEMONS +LEMONY +LEMPIRA +LEMPIRAS +LEMUR +LEMURES +LEMURINE +LEMURLIKE +LEMUROID +LEMUROIDS +LEMURS +LEND +LENDABLE +LENDER +LENDERS +LENDING +LENDS +LENES +LENGTH +LENGTHEN +LENGTHENED +LENGTHENER +LENGTHENERS +LENGTHENING +LENGTHENS +LENGTHIER +LENGTHIEST +LENGTHILY +LENGTHINESS +LENGTHINESSES +LENGTHS +LENGTHWAYS +LENGTHWISE +LENGTHY +LENIENCE +LENIENCES +LENIENCIES +LENIENCY +LENIENT +LENIENTLY +LENIS +LENITE +LENITED +LENITES +LENITIES +LENITING +LENITION +LENITIONS +LENITIVE +LENITIVELY +LENITIVES +LENITY +LENO +LENOS +LENS +LENSE +LENSED +LENSES +LENSING +LENSLESS +LENSMAN +LENSMEN +LENT +LENTAMENTE +LENTANDO +LENTEN +LENTIC +LENTICEL +LENTICELS +LENTICULAR +LENTICULE +LENTICULES +LENTIGINES +LENTIGO +LENTIL +LENTILS +LENTISK +LENTISKS +LENTISSIMO +LENTIVIRUS +LENTIVIRUSES +LENTO +LENTOID +LENTOIDS +LENTOS +LEONE +LEONES +LEONINE +LEOPARD +LEOPARDESS +LEOPARDESSES +LEOPARDS +LEOTARD +LEOTARDED +LEOTARDS +LEPER +LEPERS +LEPIDOLITE +LEPIDOLITES +LEPIDOPTERA +LEPIDOPTERAN +LEPIDOPTERANS +LEPIDOPTERIST +LEPIDOPTERISTS +LEPIDOPTEROLOGY +LEPIDOPTEROUS +LEPIDOTE +LEPIDOTES +LEPORID +LEPORIDAE +LEPORIDS +LEPORINE +LEPRECHAUN +LEPRECHAUNISH +LEPRECHAUNS +LEPROMATOUS +LEPROSARIA +LEPROSARIUM +LEPROSARIUMS +LEPROSE +LEPROSIES +LEPROSY +LEPROTIC +LEPROUS +LEPROUSLY +LEPT +LEPTA +LEPTIN +LEPTINS +LEPTOCEPHALI +LEPTOCEPHALUS +LEPTON +LEPTONIC +LEPTONS +LEPTOPHOS +LEPTOPHOSES +LEPTOSOME +LEPTOSOMES +LEPTOSPIRAL +LEPTOSPIRE +LEPTOSPIRES +LEPTOSPIROSES +LEPTOSPIROSIS +LEPTOTENE +LEPTOTENES +LES +LESBIAN +LESBIANISM +LESBIANISMS +LESBIANS +LESBO +LESBOS +LESES +LESION +LESIONED +LESIONING +LESIONS +LESPEDEZA +LESPEDEZAS +LESS +LESSEE +LESSEES +LESSEN +LESSENED +LESSENING +LESSENS +LESSER +LESSON +LESSONED +LESSONING +LESSONS +LESSOR +LESSORS +LEST +LET +LETCH +LETCHED +LETCHES +LETCHING +LETDOWN +LETDOWNS +LETHAL +LETHALITIES +LETHALITY +LETHALLY +LETHALS +LETHARGIC +LETHARGICALLY +LETHARGIES +LETHARGY +LETHE +LETHEAN +LETHES +LETS +LETTED +LETTER +LETTERBOX +LETTERBOXED +LETTERBOXES +LETTERBOXING +LETTERBOXINGS +LETTERED +LETTERER +LETTERERS +LETTERFORM +LETTERFORMS +LETTERHEAD +LETTERHEADS +LETTERING +LETTERINGS +LETTERMAN +LETTERMEN +LETTERPRESS +LETTERPRESSES +LETTERS +LETTERSPACING +LETTERSPACINGS +LETTING +LETTUCE +LETTUCES +LETUP +LETUPS +LEU +LEUCEMIA +LEUCEMIAS +LEUCEMIC +LEUCIN +LEUCINE +LEUCINES +LEUCINS +LEUCITE +LEUCITES +LEUCITIC +LEUCOCIDIN +LEUCOCIDINS +LEUCOCYTE +LEUCOCYTES +LEUCOMA +LEUCOMAS +LEUCOPLAST +LEUCOPLASTS +LEUD +LEUDES +LEUDS +LEUKAEMIA +LEUKAEMIAS +LEUKAEMOGENESES +LEUKAEMOGENESIS +LEUKEMIA +LEUKEMIAS +LEUKEMIC +LEUKEMICS +LEUKEMOGENESES +LEUKEMOGENESIS +LEUKEMOGENIC +LEUKEMOID +LEUKOCYTE +LEUKOCYTES +LEUKOCYTIC +LEUKOCYTOSES +LEUKOCYTOSIS +LEUKODYSTROPHY +LEUKOMA +LEUKOMAS +LEUKON +LEUKONS +LEUKOPENIA +LEUKOPENIAS +LEUKOPENIC +LEUKOPLAKIA +LEUKOPLAKIAS +LEUKOPLAKIC +LEUKOPOIESES +LEUKOPOIESIS +LEUKOPOIETIC +LEUKORRHEA +LEUKORRHEAL +LEUKORRHEAS +LEUKOSES +LEUKOSIS +LEUKOTIC +LEUKOTOMIES +LEUKOTOMY +LEUKOTRIENE +LEUKOTRIENES +LEV +LEVA +LEVANT +LEVANTED +LEVANTER +LEVANTERS +LEVANTINE +LEVANTINES +LEVANTING +LEVANTS +LEVATOR +LEVATORES +LEVATORS +LEVEE +LEVEED +LEVEEING +LEVEES +LEVEL +LEVELED +LEVELER +LEVELERS +LEVELHEADED +LEVELHEADEDNESS +LEVELING +LEVELLED +LEVELLER +LEVELLERS +LEVELLING +LEVELLY +LEVELNESS +LEVELNESSES +LEVELS +LEVER +LEVERAGE +LEVERAGED +LEVERAGES +LEVERAGING +LEVERED +LEVERET +LEVERETS +LEVERING +LEVERS +LEVIABLE +LEVIATHAN +LEVIATHANS +LEVIED +LEVIER +LEVIERS +LEVIES +LEVIGATE +LEVIGATED +LEVIGATES +LEVIGATING +LEVIGATION +LEVIGATIONS +LEVIN +LEVINS +LEVIRATE +LEVIRATES +LEVIRATIC +LEVIS +LEVITATE +LEVITATED +LEVITATES +LEVITATING +LEVITATION +LEVITATIONAL +LEVITATIONS +LEVITATOR +LEVITATORS +LEVITIES +LEVITY +LEVO +LEVODOPA +LEVODOPAS +LEVOGYRE +LEVOROTARY +LEVOROTATORY +LEVULIN +LEVULINS +LEVULOSE +LEVULOSES +LEVY +LEVYING +LEWD +LEWDER +LEWDEST +LEWDLY +LEWDNESS +LEWDNESSES +LEWIS +LEWISES +LEWISITE +LEWISITES +LEWISSON +LEWISSONS +LEX +LEXEME +LEXEMES +LEXEMIC +LEXES +LEXICA +LEXICAL +LEXICALISATION +LEXICALISATIONS +LEXICALITIES +LEXICALITY +LEXICALIZATION +LEXICALIZATIONS +LEXICALIZE +LEXICALIZED +LEXICALIZES +LEXICALIZING +LEXICALLY +LEXICOGRAPHER +LEXICOGRAPHERS +LEXICOGRAPHIC +LEXICOGRAPHICAL +LEXICOGRAPHIES +LEXICOGRAPHY +LEXICOLOGIES +LEXICOLOGIST +LEXICOLOGISTS +LEXICOLOGY +LEXICON +LEXICONS +LEXIS +LEY +LEYS +LEZ +LEZZES +LEZZIE +LEZZIES +LEZZY +LI +LIABILITIES +LIABILITY +LIABLE +LIAISE +LIAISED +LIAISES +LIAISING +LIAISON +LIAISONS +LIANA +LIANAS +LIANE +LIANES +LIANG +LIANGS +LIANOID +LIAR +LIARD +LIARDS +LIARS +LIB +LIBATION +LIBATIONARY +LIBATIONS +LIBBER +LIBBERS +LIBECCHIO +LIBECCHIOS +LIBECCIO +LIBECCIOS +LIBEL +LIBELANT +LIBELANTS +LIBELED +LIBELEE +LIBELEES +LIBELER +LIBELERS +LIBELING +LIBELIST +LIBELISTS +LIBELLANT +LIBELLANTS +LIBELLED +LIBELLEE +LIBELLEES +LIBELLER +LIBELLERS +LIBELLING +LIBELLOUS +LIBELOUS +LIBELS +LIBER +LIBERAL +LIBERALISE +LIBERALISED +LIBERALISES +LIBERALISING +LIBERALISM +LIBERALISMS +LIBERALIST +LIBERALISTIC +LIBERALISTS +LIBERALITIES +LIBERALITY +LIBERALIZATION +LIBERALIZATIONS +LIBERALIZE +LIBERALIZED +LIBERALIZER +LIBERALIZERS +LIBERALIZES +LIBERALIZING +LIBERALLY +LIBERALNESS +LIBERALNESSES +LIBERALS +LIBERATE +LIBERATED +LIBERATES +LIBERATING +LIBERATION +LIBERATIONIST +LIBERATIONISTS +LIBERATIONS +LIBERATOR +LIBERATORS +LIBERS +LIBERTARIAN +LIBERTARIANISM +LIBERTARIANISMS +LIBERTARIANS +LIBERTIES +LIBERTINAGE +LIBERTINAGES +LIBERTINE +LIBERTINES +LIBERTINISM +LIBERTINISMS +LIBERTY +LIBIDINAL +LIBIDINALLY +LIBIDINOUS +LIBIDINOUSLY +LIBIDINOUSNESS +LIBIDO +LIBIDOS +LIBLAB +LIBLABS +LIBRA +LIBRAE +LIBRARIAN +LIBRARIANS +LIBRARIANSHIP +LIBRARIANSHIPS +LIBRARIES +LIBRARY +LIBRAS +LIBRATE +LIBRATED +LIBRATES +LIBRATING +LIBRATION +LIBRATIONAL +LIBRATIONS +LIBRATORY +LIBRETTI +LIBRETTIST +LIBRETTISTS +LIBRETTO +LIBRETTOS +LIBRI +LIBRIFORM +LIBS +LICE +LICENCE +LICENCED +LICENCEE +LICENCEES +LICENCER +LICENCERS +LICENCES +LICENCING +LICENSABLE +LICENSE +LICENSED +LICENSEE +LICENSEES +LICENSER +LICENSERS +LICENSES +LICENSING +LICENSOR +LICENSORS +LICENSURE +LICENSURES +LICENTE +LICENTIATE +LICENTIATES +LICENTIOUS +LICENTIOUSLY +LICENTIOUSNESS +LICH +LICHEE +LICHEES +LICHEN +LICHENED +LICHENIN +LICHENING +LICHENINS +LICHENOLOGICAL +LICHENOLOGIES +LICHENOLOGIST +LICHENOLOGISTS +LICHENOLOGY +LICHENOSE +LICHENOUS +LICHENS +LICHES +LICHI +LICHIS +LICHT +LICHTED +LICHTING +LICHTLY +LICHTS +LICIT +LICITLY +LICITNESS +LICITNESSES +LICK +LICKED +LICKER +LICKERISH +LICKERISHLY +LICKERISHNESS +LICKERISHNESSES +LICKERS +LICKING +LICKINGS +LICKS +LICKSPIT +LICKSPITS +LICKSPITTLE +LICKSPITTLES +LICORICE +LICORICES +LICTOR +LICTORIAN +LICTORS +LID +LIDAR +LIDARS +LIDDED +LIDDING +LIDLESS +LIDO +LIDOCAINE +LIDOCAINES +LIDOS +LIDS +LIE +LIEBFRAUMILCH +LIEBFRAUMILCHS +LIED +LIEDER +LIEF +LIEFER +LIEFEST +LIEFLY +LIEGE +LIEGEMAN +LIEGEMEN +LIEGES +LIEN +LIENABLE +LIENAL +LIENS +LIENTERIES +LIENTERY +LIER +LIERNE +LIERNES +LIERS +LIES +LIEU +LIEUS +LIEUTENANCIES +LIEUTENANCY +LIEUTENANT +LIEUTENANTS +LIEVE +LIEVER +LIEVEST +LIFE +LIFEBLOOD +LIFEBLOODS +LIFEBOAT +LIFEBOATS +LIFECARE +LIFECARES +LIFEFUL +LIFEGUARD +LIFEGUARDED +LIFEGUARDING +LIFEGUARDS +LIFELESS +LIFELESSLY +LIFELESSNESS +LIFELESSNESSES +LIFELIKE +LIFELIKENESS +LIFELIKENESSES +LIFELINE +LIFELINES +LIFELONG +LIFEMANSHIP +LIFEMANSHIPS +LIFER +LIFERS +LIFESAVER +LIFESAVERS +LIFESAVING +LIFESAVINGS +LIFESPAN +LIFESPANS +LIFESTYLE +LIFESTYLES +LIFETIME +LIFETIMES +LIFEWAY +LIFEWAYS +LIFEWORK +LIFEWORKS +LIFEWORLD +LIFEWORLDS +LIFT +LIFTABLE +LIFTED +LIFTER +LIFTERS +LIFTGATE +LIFTGATES +LIFTING +LIFTMAN +LIFTMEN +LIFTOFF +LIFTOFFS +LIFTS +LIGAMENT +LIGAMENTOUS +LIGAMENTS +LIGAN +LIGAND +LIGANDS +LIGANS +LIGASE +LIGASES +LIGATE +LIGATED +LIGATES +LIGATING +LIGATION +LIGATIONS +LIGATIVE +LIGATURE +LIGATURED +LIGATURES +LIGATURING +LIGER +LIGERS +LIGHT +LIGHTBULB +LIGHTBULBS +LIGHTED +LIGHTEN +LIGHTENED +LIGHTENER +LIGHTENERS +LIGHTENING +LIGHTENS +LIGHTER +LIGHTERAGE +LIGHTERAGES +LIGHTERED +LIGHTERING +LIGHTERS +LIGHTEST +LIGHTFACE +LIGHTFACED +LIGHTFACES +LIGHTFAST +LIGHTFASTNESS +LIGHTFASTNESSES +LIGHTFUL +LIGHTHEARTED +LIGHTHEARTEDLY +LIGHTHOUSE +LIGHTHOUSES +LIGHTING +LIGHTINGS +LIGHTISH +LIGHTLESS +LIGHTLY +LIGHTNESS +LIGHTNESSES +LIGHTNING +LIGHTNINGED +LIGHTNINGS +LIGHTPLANE +LIGHTPLANES +LIGHTPROOF +LIGHTS +LIGHTSHIP +LIGHTSHIPS +LIGHTSOME +LIGHTSOMELY +LIGHTSOMENESS +LIGHTSOMENESSES +LIGHTTIGHT +LIGHTWAVE +LIGHTWEIGHT +LIGHTWEIGHTS +LIGHTWOOD +LIGHTWOODS +LIGNALOES +LIGNAN +LIGNANS +LIGNEOUS +LIGNIFICATION +LIGNIFICATIONS +LIGNIFIED +LIGNIFIES +LIGNIFY +LIGNIFYING +LIGNIN +LIGNINS +LIGNITE +LIGNITES +LIGNITIC +LIGNOCELLULOSE +LIGNOCELLULOSES +LIGNOCELLULOSIC +LIGNOSULFONATE +LIGNOSULFONATES +LIGROIN +LIGROINE +LIGROINES +LIGROINS +LIGULA +LIGULAE +LIGULAR +LIGULAS +LIGULATE +LIGULATED +LIGULE +LIGULES +LIGULOID +LIGURE +LIGURES +LIKABILITIES +LIKABILITY +LIKABLE +LIKABLENESS +LIKABLENESSES +LIKE +LIKEABLE +LIKED +LIKELIER +LIKELIEST +LIKELIHOOD +LIKELIHOODS +LIKELY +LIKEN +LIKENED +LIKENESS +LIKENESSES +LIKENING +LIKENS +LIKER +LIKERS +LIKES +LIKEST +LIKEWISE +LIKING +LIKINGS +LIKUTA +LILAC +LILACS +LILANGENI +LILIED +LILIES +LILLIPUT +LILLIPUTIAN +LILLIPUTIANS +LILLIPUTS +LILO +LILOS +LILT +LILTED +LILTING +LILTINGLY +LILTINGNESS +LILTINGNESSES +LILTS +LILY +LILYLIKE +LIMA +LIMACINE +LIMACON +LIMACONS +LIMAN +LIMANS +LIMAS +LIMB +LIMBA +LIMBAS +LIMBATE +LIMBECK +LIMBECKS +LIMBED +LIMBER +LIMBERED +LIMBERER +LIMBEREST +LIMBERING +LIMBERLY +LIMBERNESS +LIMBERNESSES +LIMBERS +LIMBI +LIMBIC +LIMBIER +LIMBIEST +LIMBING +LIMBLESS +LIMBO +LIMBOS +LIMBS +LIMBUS +LIMBUSES +LIMBY +LIME +LIMEADE +LIMEADES +LIMED +LIMEKILN +LIMEKILNS +LIMELESS +LIMELIGHT +LIMELIGHTED +LIMELIGHTING +LIMELIGHTS +LIMEN +LIMENS +LIMERICK +LIMERICKS +LIMES +LIMESTONE +LIMESTONES +LIMEWATER +LIMEWATERS +LIMEY +LIMEYS +LIMIER +LIMIEST +LIMINA +LIMINAL +LIMINESS +LIMINESSES +LIMING +LIMIT +LIMITABLE +LIMITARY +LIMITATION +LIMITATIONAL +LIMITATIONS +LIMITATIVE +LIMITED +LIMITEDLY +LIMITEDNESS +LIMITEDNESSES +LIMITEDS +LIMITER +LIMITERS +LIMITES +LIMITING +LIMITINGLY +LIMITLESS +LIMITLESSLY +LIMITLESSNESS +LIMITLESSNESSES +LIMITROPHE +LIMITS +LIMMER +LIMMERS +LIMN +LIMNED +LIMNER +LIMNERS +LIMNETIC +LIMNIC +LIMNING +LIMNOLOGIC +LIMNOLOGICAL +LIMNOLOGIES +LIMNOLOGIST +LIMNOLOGISTS +LIMNOLOGY +LIMNS +LIMO +LIMONENE +LIMONENES +LIMONITE +LIMONITES +LIMONITIC +LIMOS +LIMOUSINE +LIMOUSINES +LIMP +LIMPA +LIMPAS +LIMPED +LIMPER +LIMPERS +LIMPEST +LIMPET +LIMPETS +LIMPID +LIMPIDITIES +LIMPIDITY +LIMPIDLY +LIMPIDNESS +LIMPIDNESSES +LIMPING +LIMPINGLY +LIMPKIN +LIMPKINS +LIMPLY +LIMPNESS +LIMPNESSES +LIMPS +LIMPSEY +LIMPSIER +LIMPSIEST +LIMPSY +LIMULI +LIMULOID +LIMULOIDS +LIMULUS +LIMY +LIN +LINABLE +LINAC +LINACS +LINAGE +LINAGES +LINALOL +LINALOLS +LINALOOL +LINALOOLS +LINCHPIN +LINCHPINS +LINCOMYCIN +LINCOMYCINS +LINDANE +LINDANES +LINDEN +LINDENS +LINDIES +LINDY +LINE +LINEABLE +LINEAGE +LINEAGES +LINEAL +LINEALITIES +LINEALITY +LINEALLY +LINEAMENT +LINEAMENTAL +LINEAMENTS +LINEAR +LINEARISE +LINEARISED +LINEARISES +LINEARISING +LINEARITIES +LINEARITY +LINEARIZATION +LINEARIZATIONS +LINEARIZE +LINEARIZED +LINEARIZES +LINEARIZING +LINEARLY +LINEATE +LINEATED +LINEATION +LINEATIONS +LINEBACKER +LINEBACKERS +LINEBACKING +LINEBACKINGS +LINEBRED +LINEBREEDING +LINEBREEDINGS +LINECASTER +LINECASTERS +LINECASTING +LINECASTINGS +LINECUT +LINECUTS +LINED +LINELESS +LINELIKE +LINEMAN +LINEMEN +LINEN +LINENS +LINENY +LINEOLATE +LINER +LINERBOARD +LINERBOARDS +LINERLESS +LINERS +LINES +LINESMAN +LINESMEN +LINEUP +LINEUPS +LINEY +LING +LINGA +LINGAM +LINGAMS +LINGAS +LINGBERRIES +LINGBERRY +LINGCOD +LINGCODS +LINGER +LINGERED +LINGERER +LINGERERS +LINGERIE +LINGERIES +LINGERING +LINGERINGLY +LINGERS +LINGIER +LINGIEST +LINGO +LINGOES +LINGONBERRIES +LINGONBERRY +LINGS +LINGUA +LINGUAE +LINGUAL +LINGUALLY +LINGUALS +LINGUICA +LINGUICAS +LINGUINE +LINGUINES +LINGUINI +LINGUINIS +LINGUISA +LINGUISAS +LINGUIST +LINGUISTIC +LINGUISTICAL +LINGUISTICALLY +LINGUISTICIAN +LINGUISTICIANS +LINGUISTICS +LINGUISTS +LINGULA +LINGULAE +LINGULAR +LINGULATE +LINGY +LINIER +LINIEST +LINIMENT +LINIMENTS +LININ +LINING +LININGS +LININS +LINK +LINKABLE +LINKAGE +LINKAGES +LINKBOY +LINKBOYS +LINKED +LINKER +LINKERS +LINKING +LINKMAN +LINKMEN +LINKS +LINKSLAND +LINKSLANDS +LINKSMAN +LINKSMEN +LINKUP +LINKUPS +LINKWORK +LINKWORKS +LINKY +LINN +LINNET +LINNETS +LINNS +LINO +LINOCUT +LINOCUTS +LINOLEATE +LINOLEATES +LINOLEUM +LINOLEUMS +LINOS +LINOTYPE +LINOTYPED +LINOTYPER +LINOTYPERS +LINOTYPES +LINOTYPING +LINS +LINSANG +LINSANGS +LINSEED +LINSEEDS +LINSEY +LINSEYS +LINSTOCK +LINSTOCKS +LINT +LINTED +LINTEL +LINTELS +LINTER +LINTERS +LINTIER +LINTIEST +LINTING +LINTLESS +LINTOL +LINTOLS +LINTS +LINTWHITE +LINTWHITES +LINTY +LINUM +LINUMS +LINURON +LINURONS +LINY +LION +LIONESS +LIONESSES +LIONFISH +LIONFISHES +LIONHEARTED +LIONISE +LIONISED +LIONISER +LIONISERS +LIONISES +LIONISING +LIONIZATION +LIONIZATIONS +LIONIZE +LIONIZED +LIONIZER +LIONIZERS +LIONIZES +LIONIZING +LIONLIKE +LIONS +LIP +LIPA +LIPASE +LIPASES +LIPE +LIPECTOMIES +LIPECTOMY +LIPID +LIPIDE +LIPIDES +LIPIDIC +LIPIDS +LIPIN +LIPINS +LIPLESS +LIPLIKE +LIPOCYTE +LIPOCYTES +LIPOGENESES +LIPOGENESIS +LIPOID +LIPOIDAL +LIPOIDS +LIPOLITIC +LIPOLYSES +LIPOLYSIS +LIPOLYTIC +LIPOMA +LIPOMAS +LIPOMATA +LIPOMATOUS +LIPOPHILIC +LIPOPROTEIN +LIPOPROTEINS +LIPOSOMAL +LIPOSOME +LIPOSOMES +LIPOSUCTION +LIPOSUCTIONS +LIPOTROPIC +LIPOTROPIES +LIPOTROPIN +LIPOTROPINS +LIPOTROPY +LIPPED +LIPPEN +LIPPENED +LIPPENING +LIPPENS +LIPPER +LIPPERED +LIPPERING +LIPPERS +LIPPIER +LIPPIEST +LIPPINESS +LIPPINESSES +LIPPING +LIPPINGS +LIPPY +LIPREAD +LIPREADER +LIPREADERS +LIPREADING +LIPREADINGS +LIPREADS +LIPS +LIPSTICK +LIPSTICKED +LIPSTICKS +LIQUATE +LIQUATED +LIQUATES +LIQUATING +LIQUATION +LIQUATIONS +LIQUEFACTION +LIQUEFACTIONS +LIQUEFIED +LIQUEFIER +LIQUEFIERS +LIQUEFIES +LIQUEFY +LIQUEFYING +LIQUESCENT +LIQUEUR +LIQUEURS +LIQUID +LIQUIDAMBAR +LIQUIDAMBARS +LIQUIDATE +LIQUIDATED +LIQUIDATES +LIQUIDATING +LIQUIDATION +LIQUIDATIONS +LIQUIDATOR +LIQUIDATORS +LIQUIDITIES +LIQUIDITY +LIQUIDIZE +LIQUIDIZED +LIQUIDIZES +LIQUIDIZING +LIQUIDLY +LIQUIDNESS +LIQUIDNESSES +LIQUIDS +LIQUIFIED +LIQUIFIES +LIQUIFY +LIQUIFYING +LIQUOR +LIQUORED +LIQUORICE +LIQUORICES +LIQUORING +LIQUORISH +LIQUORS +LIRA +LIRAS +LIRE +LIRI +LIRIOPE +LIRIOPES +LIRIPIPE +LIRIPIPES +LIROT +LIROTH +LIS +LISENTE +LISLE +LISLES +LISP +LISPED +LISPER +LISPERS +LISPING +LISPINGLY +LISPS +LISSOM +LISSOME +LISSOMELY +LISSOMENESS +LISSOMENESSES +LISSOMLY +LIST +LISTABLE +LISTED +LISTEE +LISTEES +LISTEL +LISTELS +LISTEN +LISTENABLE +LISTENED +LISTENER +LISTENERS +LISTENERSHIP +LISTENERSHIPS +LISTENING +LISTENS +LISTER +LISTERIA +LISTERIAS +LISTERIOSES +LISTERIOSIS +LISTERS +LISTING +LISTINGS +LISTLESS +LISTLESSLY +LISTLESSNESS +LISTLESSNESSES +LISTS +LIT +LITAI +LITANIES +LITANY +LITAS +LITCHI +LITCHIS +LITE +LITENESS +LITENESSES +LITER +LITERACIES +LITERACY +LITERAL +LITERALISM +LITERALISMS +LITERALIST +LITERALISTIC +LITERALISTS +LITERALITIES +LITERALITY +LITERALIZATION +LITERALIZATIONS +LITERALIZE +LITERALIZED +LITERALIZES +LITERALIZING +LITERALLY +LITERALNESS +LITERALNESSES +LITERALS +LITERARILY +LITERARINESS +LITERARINESSES +LITERARY +LITERATE +LITERATELY +LITERATENESS +LITERATENESSES +LITERATES +LITERATI +LITERATIM +LITERATION +LITERATIONS +LITERATOR +LITERATORS +LITERATURE +LITERATURES +LITERATUS +LITERS +LITHARGE +LITHARGES +LITHE +LITHELY +LITHEMIA +LITHEMIAS +LITHEMIC +LITHENESS +LITHENESSES +LITHER +LITHESOME +LITHEST +LITHIA +LITHIAS +LITHIASES +LITHIASIS +LITHIC +LITHIFICATION +LITHIFICATIONS +LITHIFIED +LITHIFIES +LITHIFY +LITHIFYING +LITHIUM +LITHIUMS +LITHO +LITHOED +LITHOGRAPH +LITHOGRAPHED +LITHOGRAPHER +LITHOGRAPHERS +LITHOGRAPHIC +LITHOGRAPHIES +LITHOGRAPHING +LITHOGRAPHS +LITHOGRAPHY +LITHOID +LITHOIDAL +LITHOING +LITHOLOGIC +LITHOLOGICAL +LITHOLOGICALLY +LITHOLOGIES +LITHOLOGY +LITHOPHANE +LITHOPHANES +LITHOPHYTE +LITHOPHYTES +LITHOPONE +LITHOPONES +LITHOPS +LITHOS +LITHOSOL +LITHOSOLS +LITHOSPHERE +LITHOSPHERES +LITHOSPHERIC +LITHOTOMIES +LITHOTOMY +LITHOTRIPSIES +LITHOTRIPSY +LITHOTRIPTER +LITHOTRIPTERS +LITHOTRIPTOR +LITHOTRIPTORS +LITIGABLE +LITIGANT +LITIGANTS +LITIGATE +LITIGATED +LITIGATES +LITIGATING +LITIGATION +LITIGATIONS +LITIGATOR +LITIGATORS +LITIGIOUS +LITIGIOUSLY +LITIGIOUSNESS +LITIGIOUSNESSES +LITMUS +LITMUSES +LITORAL +LITOTES +LITOTIC +LITRE +LITRES +LITS +LITTEN +LITTER +LITTERATEUR +LITTERATEURS +LITTERBAG +LITTERBAGS +LITTERBUG +LITTERBUGS +LITTERED +LITTERER +LITTERERS +LITTERING +LITTERMATE +LITTERMATES +LITTERS +LITTERY +LITTLE +LITTLENECK +LITTLENECKS +LITTLENESS +LITTLENESSES +LITTLER +LITTLES +LITTLEST +LITTLISH +LITTORAL +LITTORALS +LITU +LITURGIC +LITURGICAL +LITURGICALLY +LITURGICS +LITURGIES +LITURGIOLOGIES +LITURGIOLOGIST +LITURGIOLOGISTS +LITURGIOLOGY +LITURGISM +LITURGISMS +LITURGIST +LITURGISTS +LITURGY +LIVABILITIES +LIVABILITY +LIVABLE +LIVABLENESS +LIVABLENESSES +LIVE +LIVEABILITIES +LIVEABILITY +LIVEABLE +LIVED +LIVELIER +LIVELIEST +LIVELIHOOD +LIVELIHOODS +LIVELILY +LIVELINESS +LIVELINESSES +LIVELONG +LIVELY +LIVEN +LIVENED +LIVENER +LIVENERS +LIVENESS +LIVENESSES +LIVENING +LIVENS +LIVER +LIVERED +LIVERIED +LIVERIES +LIVERING +LIVERISH +LIVERISHNESS +LIVERISHNESSES +LIVERLEAF +LIVERLEAVES +LIVERS +LIVERWORT +LIVERWORTS +LIVERWURST +LIVERWURSTS +LIVERY +LIVERYMAN +LIVERYMEN +LIVES +LIVEST +LIVESTOCK +LIVESTOCKS +LIVETRAP +LIVETRAPPED +LIVETRAPPING +LIVETRAPS +LIVID +LIVIDITIES +LIVIDITY +LIVIDLY +LIVIDNESS +LIVIDNESSES +LIVIER +LIVIERS +LIVING +LIVINGLY +LIVINGNESS +LIVINGNESSES +LIVINGS +LIVRE +LIVRES +LIVYER +LIVYERS +LIXIVIA +LIXIVIAL +LIXIVIATE +LIXIVIATED +LIXIVIATES +LIXIVIATING +LIXIVIATION +LIXIVIATIONS +LIXIVIUM +LIXIVIUMS +LIZARD +LIZARDS +LLAMA +LLAMAS +LLANO +LLANOS +LO +LOACH +LOACHES +LOAD +LOADED +LOADER +LOADERS +LOADING +LOADINGS +LOADMASTER +LOADMASTERS +LOADS +LOADSTAR +LOADSTARS +LOADSTONE +LOADSTONES +LOAF +LOAFED +LOAFER +LOAFERS +LOAFING +LOAFS +LOAM +LOAMED +LOAMIER +LOAMIEST +LOAMINESS +LOAMINESSES +LOAMING +LOAMLESS +LOAMS +LOAMY +LOAN +LOANABLE +LOANED +LOANER +LOANERS +LOANING +LOANINGS +LOANS +LOANSHIFT +LOANSHIFTS +LOANWORD +LOANWORDS +LOATH +LOATHE +LOATHED +LOATHER +LOATHERS +LOATHES +LOATHFUL +LOATHING +LOATHINGS +LOATHLY +LOATHNESS +LOATHNESSES +LOATHSOME +LOATHSOMELY +LOATHSOMENESS +LOATHSOMENESSES +LOAVES +LOB +LOBAR +LOBATE +LOBATED +LOBATELY +LOBATION +LOBATIONS +LOBBED +LOBBER +LOBBERS +LOBBIED +LOBBIES +LOBBING +LOBBY +LOBBYER +LOBBYERS +LOBBYGOW +LOBBYGOWS +LOBBYING +LOBBYISM +LOBBYISMS +LOBBYIST +LOBBYISTS +LOBE +LOBECTOMIES +LOBECTOMY +LOBED +LOBEFIN +LOBEFINS +LOBELIA +LOBELIAS +LOBELINE +LOBELINES +LOBES +LOBLOLLIES +LOBLOLLY +LOBO +LOBOS +LOBOTOMIES +LOBOTOMISE +LOBOTOMISED +LOBOTOMISES +LOBOTOMISING +LOBOTOMIZE +LOBOTOMIZED +LOBOTOMIZES +LOBOTOMIZING +LOBOTOMY +LOBS +LOBSCOUSE +LOBSCOUSES +LOBSTER +LOBSTERED +LOBSTERER +LOBSTERERS +LOBSTERING +LOBSTERINGS +LOBSTERLIKE +LOBSTERMAN +LOBSTERMEN +LOBSTERS +LOBSTICK +LOBSTICKS +LOBULAR +LOBULARLY +LOBULATE +LOBULATED +LOBULATION +LOBULATIONS +LOBULE +LOBULES +LOBULOSE +LOBWORM +LOBWORMS +LOCA +LOCAL +LOCALE +LOCALES +LOCALISE +LOCALISED +LOCALISES +LOCALISING +LOCALISM +LOCALISMS +LOCALIST +LOCALISTS +LOCALITE +LOCALITES +LOCALITIES +LOCALITY +LOCALIZABILITY +LOCALIZABLE +LOCALIZATION +LOCALIZATIONS +LOCALIZE +LOCALIZED +LOCALIZER +LOCALIZERS +LOCALIZES +LOCALIZING +LOCALLY +LOCALNESS +LOCALNESSES +LOCALS +LOCATABLE +LOCATE +LOCATED +LOCATER +LOCATERS +LOCATES +LOCATING +LOCATION +LOCATIONAL +LOCATIONALLY +LOCATIONS +LOCATIVE +LOCATIVES +LOCATOR +LOCATORS +LOCH +LOCHAN +LOCHANS +LOCHIA +LOCHIAL +LOCHS +LOCI +LOCK +LOCKABLE +LOCKAGE +LOCKAGES +LOCKBOX +LOCKBOXES +LOCKDOWN +LOCKDOWNS +LOCKED +LOCKER +LOCKERS +LOCKET +LOCKETS +LOCKING +LOCKJAW +LOCKJAWS +LOCKKEEPER +LOCKKEEPERS +LOCKMAKER +LOCKMAKERS +LOCKNUT +LOCKNUTS +LOCKOUT +LOCKOUTS +LOCKRAM +LOCKRAMS +LOCKS +LOCKSET +LOCKSETS +LOCKSMITH +LOCKSMITHING +LOCKSMITHINGS +LOCKSMITHS +LOCKSTEP +LOCKSTEPS +LOCKSTITCH +LOCKSTITCHED +LOCKSTITCHES +LOCKSTITCHING +LOCKUP +LOCKUPS +LOCO +LOCOED +LOCOES +LOCOFOCO +LOCOFOCOS +LOCOING +LOCOISM +LOCOISMS +LOCOMOTE +LOCOMOTED +LOCOMOTES +LOCOMOTING +LOCOMOTION +LOCOMOTIONS +LOCOMOTIVE +LOCOMOTIVES +LOCOMOTOR +LOCOMOTORS +LOCOMOTORY +LOCOS +LOCOWEED +LOCOWEEDS +LOCULAR +LOCULATE +LOCULATED +LOCULE +LOCULED +LOCULES +LOCULI +LOCULICIDAL +LOCULUS +LOCUM +LOCUMS +LOCUS +LOCUST +LOCUSTA +LOCUSTAE +LOCUSTAL +LOCUSTS +LOCUTION +LOCUTIONS +LOCUTORIES +LOCUTORY +LODE +LODEN +LODENS +LODES +LODESTAR +LODESTARS +LODESTONE +LODESTONES +LODGE +LODGED +LODGEMENT +LODGEMENTS +LODGER +LODGERS +LODGES +LODGING +LODGINGS +LODGMENT +LODGMENTS +LODICULE +LODICULES +LOESS +LOESSAL +LOESSES +LOESSIAL +LOFT +LOFTED +LOFTER +LOFTERS +LOFTIER +LOFTIEST +LOFTILY +LOFTINESS +LOFTINESSES +LOFTING +LOFTLESS +LOFTLIKE +LOFTS +LOFTY +LOG +LOGAN +LOGANBERRIES +LOGANBERRY +LOGANIA +LOGANS +LOGAOEDIC +LOGAOEDICS +LOGARITHM +LOGARITHMIC +LOGARITHMICALLY +LOGARITHMS +LOGBOOK +LOGBOOKS +LOGE +LOGES +LOGGATS +LOGGED +LOGGER +LOGGERHEAD +LOGGERHEADS +LOGGERS +LOGGETS +LOGGIA +LOGGIAS +LOGGIE +LOGGIER +LOGGIEST +LOGGING +LOGGINGS +LOGGISH +LOGGY +LOGIA +LOGIC +LOGICAL +LOGICALITIES +LOGICALITY +LOGICALLY +LOGICALNESS +LOGICALNESSES +LOGICIAN +LOGICIANS +LOGICISE +LOGICISED +LOGICISES +LOGICISING +LOGICIZE +LOGICIZED +LOGICIZES +LOGICIZING +LOGICLESS +LOGICS +LOGIER +LOGIEST +LOGILY +LOGIN +LOGINESS +LOGINESSES +LOGINS +LOGION +LOGIONS +LOGISTIC +LOGISTICAL +LOGISTICALLY +LOGISTICIAN +LOGISTICIANS +LOGISTICS +LOGJAM +LOGJAMMED +LOGJAMMING +LOGJAMS +LOGNORMAL +LOGNORMALITIES +LOGNORMALITY +LOGNORMALLY +LOGO +LOGOGRAM +LOGOGRAMMATIC +LOGOGRAMS +LOGOGRAPH +LOGOGRAPHIC +LOGOGRAPHICALLY +LOGOGRAPHS +LOGOGRIPH +LOGOGRIPHS +LOGOI +LOGOMACH +LOGOMACHIES +LOGOMACHS +LOGOMACHY +LOGON +LOGONS +LOGOPHILE +LOGOPHILES +LOGORRHEA +LOGORRHEAS +LOGORRHEIC +LOGOS +LOGOTYPE +LOGOTYPES +LOGOTYPIES +LOGOTYPY +LOGROLL +LOGROLLED +LOGROLLER +LOGROLLERS +LOGROLLING +LOGROLLINGS +LOGROLLS +LOGS +LOGWAY +LOGWAYS +LOGWOOD +LOGWOODS +LOGY +LOID +LOIDED +LOIDING +LOIDS +LOIN +LOINCLOTH +LOINCLOTHS +LOINS +LOITER +LOITERED +LOITERER +LOITERERS +LOITERING +LOITERS +LOLL +LOLLED +LOLLER +LOLLERS +LOLLIES +LOLLING +LOLLINGLY +LOLLIPOP +LOLLIPOPS +LOLLOP +LOLLOPED +LOLLOPING +LOLLOPS +LOLLOPY +LOLLS +LOLLY +LOLLYGAG +LOLLYGAGGED +LOLLYGAGGING +LOLLYGAGS +LOLLYPOP +LOLLYPOPS +LOMEIN +LOMEINS +LOMENT +LOMENTA +LOMENTS +LOMENTUM +LOMENTUMS +LONE +LONELIER +LONELIEST +LONELILY +LONELINESS +LONELINESSES +LONELY +LONENESS +LONENESSES +LONER +LONERS +LONESOME +LONESOMELY +LONESOMENESS +LONESOMENESSES +LONESOMES +LONG +LONGAN +LONGANIMITIES +LONGANIMITY +LONGANS +LONGBOAT +LONGBOATS +LONGBOW +LONGBOWMAN +LONGBOWMEN +LONGBOWS +LONGCLOTH +LONGCLOTHS +LONGE +LONGED +LONGEING +LONGER +LONGERON +LONGERONS +LONGERS +LONGES +LONGEST +LONGEVITIES +LONGEVITY +LONGEVOUS +LONGHAIR +LONGHAIRED +LONGHAIRS +LONGHAND +LONGHANDS +LONGHEAD +LONGHEADED +LONGHEADEDNESS +LONGHEADS +LONGHORN +LONGHORNS +LONGHOUSE +LONGHOUSES +LONGICORN +LONGICORNS +LONGIES +LONGING +LONGINGLY +LONGINGS +LONGISH +LONGITUDE +LONGITUDES +LONGITUDINAL +LONGITUDINALLY +LONGJUMP +LONGJUMPED +LONGJUMPING +LONGJUMPS +LONGLEAF +LONGLEAVES +LONGLINE +LONGLINES +LONGLY +LONGNECK +LONGNECKS +LONGNESS +LONGNESSES +LONGS +LONGSHIP +LONGSHIPS +LONGSHORE +LONGSHOREMAN +LONGSHOREMEN +LONGSHORING +LONGSHORINGS +LONGSIGHTED +LONGSIGHTEDNESS +LONGSOME +LONGSOMELY +LONGSOMENESS +LONGSOMENESSES +LONGSPUR +LONGSPURS +LONGTIME +LONGUEUR +LONGUEURS +LONGWAYS +LONGWISE +LOO +LOOBIES +LOOBY +LOOED +LOOEY +LOOEYS +LOOF +LOOFA +LOOFAH +LOOFAHS +LOOFAS +LOOFS +LOOIE +LOOIES +LOOING +LOOK +LOOKALIKE +LOOKALIKES +LOOKDOWN +LOOKDOWNS +LOOKED +LOOKER +LOOKERS +LOOKING +LOOKISM +LOOKISMS +LOOKIST +LOOKISTS +LOOKOUT +LOOKOUTS +LOOKS +LOOKSISM +LOOKSISMS +LOOKUP +LOOKUPS +LOOM +LOOMED +LOOMING +LOOMS +LOON +LOONEY +LOONEYS +LOONIE +LOONIER +LOONIES +LOONIEST +LOONILY +LOONINESS +LOONINESSES +LOONS +LOONY +LOOP +LOOPED +LOOPER +LOOPERS +LOOPHOLE +LOOPHOLED +LOOPHOLES +LOOPHOLING +LOOPIER +LOOPIEST +LOOPILY +LOOPINESS +LOOPINESSES +LOOPING +LOOPS +LOOPY +LOOS +LOOSE +LOOSED +LOOSELY +LOOSEN +LOOSENED +LOOSENER +LOOSENERS +LOOSENESS +LOOSENESSES +LOOSENING +LOOSENS +LOOSER +LOOSES +LOOSEST +LOOSESTRIFE +LOOSESTRIFES +LOOSING +LOOT +LOOTED +LOOTER +LOOTERS +LOOTING +LOOTS +LOP +LOPE +LOPED +LOPER +LOPERS +LOPES +LOPHOPHORE +LOPHOPHORES +LOPING +LOPPED +LOPPER +LOPPERED +LOPPERING +LOPPERS +LOPPIER +LOPPIEST +LOPPING +LOPPY +LOPS +LOPSIDED +LOPSIDEDLY +LOPSIDEDNESS +LOPSIDEDNESSES +LOPSTICK +LOPSTICKS +LOQUACIOUS +LOQUACIOUSLY +LOQUACIOUSNESS +LOQUACITIES +LOQUACITY +LOQUAT +LOQUATS +LORAL +LORAN +LORANS +LORAZEPAM +LORAZEPAMS +LORD +LORDED +LORDING +LORDINGS +LORDLESS +LORDLIER +LORDLIEST +LORDLIKE +LORDLINESS +LORDLINESSES +LORDLING +LORDLINGS +LORDLY +LORDOMA +LORDOMAS +LORDOSES +LORDOSIS +LORDOTIC +LORDS +LORDSHIP +LORDSHIPS +LORE +LOREAL +LORES +LORGNETTE +LORGNETTES +LORGNON +LORGNONS +LORICA +LORICAE +LORICATE +LORICATED +LORICATES +LORIES +LORIKEET +LORIKEETS +LORIMER +LORIMERS +LORINER +LORINERS +LORIS +LORISES +LORN +LORNNESS +LORNNESSES +LORRIES +LORRY +LORY +LOSABLE +LOSABLENESS +LOSABLENESSES +LOSE +LOSEL +LOSELS +LOSER +LOSERS +LOSES +LOSING +LOSINGLY +LOSINGS +LOSS +LOSSES +LOSSLESS +LOSSY +LOST +LOSTNESS +LOSTNESSES +LOT +LOTA +LOTAH +LOTAHS +LOTAS +LOTH +LOTHARIO +LOTHARIOS +LOTHSOME +LOTI +LOTIC +LOTION +LOTIONS +LOTOS +LOTOSES +LOTS +LOTTE +LOTTED +LOTTER +LOTTERIES +LOTTERS +LOTTERY +LOTTES +LOTTING +LOTTO +LOTTOS +LOTUS +LOTUSES +LOTUSLAND +LOTUSLANDS +LOUCHE +LOUD +LOUDEN +LOUDENED +LOUDENING +LOUDENS +LOUDER +LOUDEST +LOUDISH +LOUDLIER +LOUDLIEST +LOUDLY +LOUDMOUTH +LOUDMOUTHED +LOUDMOUTHS +LOUDNESS +LOUDNESSES +LOUDSPEAKER +LOUDSPEAKERS +LOUGH +LOUGHS +LOUIE +LOUIES +LOUIS +LOUMA +LOUMAS +LOUNGE +LOUNGED +LOUNGER +LOUNGERS +LOUNGES +LOUNGEWEAR +LOUNGEWEARS +LOUNGING +LOUNGY +LOUP +LOUPE +LOUPED +LOUPEN +LOUPES +LOUPING +LOUPS +LOUR +LOURED +LOURING +LOURS +LOURY +LOUSE +LOUSED +LOUSES +LOUSEWORT +LOUSEWORTS +LOUSIER +LOUSIEST +LOUSILY +LOUSINESS +LOUSINESSES +LOUSING +LOUSY +LOUT +LOUTED +LOUTING +LOUTISH +LOUTISHLY +LOUTISHNESS +LOUTISHNESSES +LOUTS +LOUVER +LOUVERED +LOUVERS +LOUVRE +LOUVRED +LOUVRES +LOVABILITIES +LOVABILITY +LOVABLE +LOVABLENESS +LOVABLENESSES +LOVABLY +LOVAGE +LOVAGES +LOVASTATIN +LOVASTATINS +LOVAT +LOVATS +LOVE +LOVEABLE +LOVEABLY +LOVEBIRD +LOVEBIRDS +LOVEBUG +LOVEBUGS +LOVED +LOVEFEST +LOVEFESTS +LOVELESS +LOVELESSLY +LOVELESSNESS +LOVELESSNESSES +LOVELIER +LOVELIES +LOVELIEST +LOVELILY +LOVELINESS +LOVELINESSES +LOVELOCK +LOVELOCKS +LOVELORN +LOVELORNNESS +LOVELORNNESSES +LOVELY +LOVEMAKER +LOVEMAKERS +LOVEMAKING +LOVEMAKINGS +LOVER +LOVERLY +LOVERS +LOVES +LOVESEAT +LOVESEATS +LOVESICK +LOVESICKNESS +LOVESICKNESSES +LOVESOME +LOVEVINE +LOVEVINES +LOVING +LOVINGLY +LOVINGNESS +LOVINGNESSES +LOW +LOWBALL +LOWBALLED +LOWBALLING +LOWBALLS +LOWBORN +LOWBOY +LOWBOYS +LOWBRED +LOWBROW +LOWBROWED +LOWBROWS +LOWDOWN +LOWDOWNS +LOWE +LOWED +LOWER +LOWERCASE +LOWERCASED +LOWERCASES +LOWERCASING +LOWERED +LOWERING +LOWERMOST +LOWERS +LOWERY +LOWES +LOWEST +LOWING +LOWINGS +LOWISH +LOWLAND +LOWLANDER +LOWLANDERS +LOWLANDS +LOWLIER +LOWLIEST +LOWLIFE +LOWLIFER +LOWLIFERS +LOWLIFES +LOWLIGHT +LOWLIGHTS +LOWLIHEAD +LOWLIHEADS +LOWLILY +LOWLINESS +LOWLINESSES +LOWLIVES +LOWLY +LOWN +LOWNESS +LOWNESSES +LOWRIDER +LOWRIDERS +LOWS +LOWSE +LOX +LOXED +LOXES +LOXING +LOXODROME +LOXODROMES +LOYAL +LOYALER +LOYALEST +LOYALISM +LOYALISMS +LOYALIST +LOYALISTS +LOYALLY +LOYALTIES +LOYALTY +LOZENGE +LOZENGES +LUAU +LUAUS +LUBBER +LUBBERLINESS +LUBBERLINESSES +LUBBERLY +LUBBERS +LUBE +LUBED +LUBES +LUBING +LUBRIC +LUBRICAL +LUBRICANT +LUBRICANTS +LUBRICATE +LUBRICATED +LUBRICATES +LUBRICATING +LUBRICATION +LUBRICATIONS +LUBRICATIVE +LUBRICATOR +LUBRICATORS +LUBRICIOUS +LUBRICIOUSLY +LUBRICITIES +LUBRICITY +LUBRICOUS +LUCARNE +LUCARNES +LUCE +LUCENCE +LUCENCES +LUCENCIES +LUCENCY +LUCENT +LUCENTLY +LUCERN +LUCERNE +LUCERNES +LUCERNS +LUCES +LUCID +LUCIDITIES +LUCIDITY +LUCIDLY +LUCIDNESS +LUCIDNESSES +LUCIFER +LUCIFERASE +LUCIFERASES +LUCIFERIN +LUCIFERINS +LUCIFEROUS +LUCIFERS +LUCITE +LUCITES +LUCK +LUCKED +LUCKIE +LUCKIER +LUCKIES +LUCKIEST +LUCKILY +LUCKINESS +LUCKINESSES +LUCKING +LUCKLESS +LUCKS +LUCKY +LUCRATIVE +LUCRATIVELY +LUCRATIVENESS +LUCRATIVENESSES +LUCRE +LUCRES +LUCUBRATE +LUCUBRATED +LUCUBRATES +LUCUBRATING +LUCUBRATION +LUCUBRATIONS +LUCULENT +LUCULENTLY +LUDE +LUDES +LUDIC +LUDICROUS +LUDICROUSLY +LUDICROUSNESS +LUDICROUSNESSES +LUES +LUETIC +LUETICS +LUFF +LUFFA +LUFFAS +LUFFED +LUFFING +LUFFS +LUFTMENSCH +LUFTMENSCHEN +LUG +LUGE +LUGED +LUGEING +LUGER +LUGERS +LUGES +LUGGAGE +LUGGAGES +LUGGED +LUGGER +LUGGERS +LUGGIE +LUGGIES +LUGGING +LUGING +LUGS +LUGSAIL +LUGSAILS +LUGUBRIOUS +LUGUBRIOUSLY +LUGUBRIOUSNESS +LUGWORM +LUGWORMS +LUKEWARM +LUKEWARMLY +LUKEWARMNESS +LUKEWARMNESSES +LULL +LULLABIED +LULLABIES +LULLABY +LULLABYING +LULLED +LULLER +LULLERS +LULLING +LULLS +LULU +LULUS +LUM +LUMA +LUMAS +LUMBAGO +LUMBAGOS +LUMBAR +LUMBARS +LUMBER +LUMBERED +LUMBERER +LUMBERERS +LUMBERING +LUMBERINGS +LUMBERJACK +LUMBERJACKS +LUMBERLY +LUMBERMAN +LUMBERMEN +LUMBERS +LUMBERYARD +LUMBERYARDS +LUMBOSACRAL +LUMBRICAL +LUMBRICALS +LUMEN +LUMENAL +LUMENS +LUMINA +LUMINAIRE +LUMINAIRES +LUMINAL +LUMINANCE +LUMINANCES +LUMINARIA +LUMINARIAS +LUMINARIES +LUMINARY +LUMINESCE +LUMINESCED +LUMINESCENCE +LUMINESCENCES +LUMINESCENT +LUMINESCES +LUMINESCING +LUMINIFEROUS +LUMINISM +LUMINISMS +LUMINIST +LUMINISTS +LUMINOSITIES +LUMINOSITY +LUMINOUS +LUMINOUSLY +LUMINOUSNESS +LUMINOUSNESSES +LUMMOX +LUMMOXES +LUMP +LUMPECTOMIES +LUMPECTOMY +LUMPED +LUMPEN +LUMPENS +LUMPER +LUMPERS +LUMPFISH +LUMPFISHES +LUMPIER +LUMPIEST +LUMPILY +LUMPINESS +LUMPINESSES +LUMPING +LUMPINGLY +LUMPISH +LUMPISHLY +LUMPISHNESS +LUMPISHNESSES +LUMPS +LUMPY +LUMS +LUNA +LUNACIES +LUNACY +LUNAR +LUNARIAN +LUNARIANS +LUNARS +LUNAS +LUNATE +LUNATED +LUNATELY +LUNATIC +LUNATICS +LUNATION +LUNATIONS +LUNCH +LUNCHBOX +LUNCHBOXES +LUNCHED +LUNCHEON +LUNCHEONETTE +LUNCHEONETTES +LUNCHEONS +LUNCHER +LUNCHERS +LUNCHES +LUNCHING +LUNCHMEAT +LUNCHMEATS +LUNCHROOM +LUNCHROOMS +LUNCHTIME +LUNCHTIMES +LUNE +LUNES +LUNET +LUNETS +LUNETTE +LUNETTES +LUNG +LUNGAN +LUNGANS +LUNGE +LUNGED +LUNGEE +LUNGEES +LUNGER +LUNGERS +LUNGES +LUNGFISH +LUNGFISHES +LUNGFUL +LUNGFULS +LUNGI +LUNGING +LUNGIS +LUNGS +LUNGWORM +LUNGWORMS +LUNGWORT +LUNGWORTS +LUNGYI +LUNGYIS +LUNIER +LUNIES +LUNIEST +LUNISOLAR +LUNITIDAL +LUNK +LUNKER +LUNKERS +LUNKHEAD +LUNKHEADED +LUNKHEADS +LUNKS +LUNT +LUNTED +LUNTING +LUNTS +LUNULA +LUNULAE +LUNULAR +LUNULATE +LUNULATED +LUNULE +LUNULES +LUNY +LUPANAR +LUPANARS +LUPIN +LUPINE +LUPINES +LUPINS +LUPOUS +LUPULIN +LUPULINS +LUPUS +LUPUSES +LURCH +LURCHED +LURCHER +LURCHERS +LURCHES +LURCHING +LURDAN +LURDANE +LURDANES +LURDANS +LURE +LURED +LURER +LURERS +LURES +LUREX +LUREXES +LURID +LURIDLY +LURIDNESS +LURIDNESSES +LURING +LURINGLY +LURK +LURKED +LURKER +LURKERS +LURKING +LURKINGLY +LURKS +LUSCIOUS +LUSCIOUSLY +LUSCIOUSNESS +LUSCIOUSNESSES +LUSH +LUSHED +LUSHER +LUSHES +LUSHEST +LUSHING +LUSHLY +LUSHNESS +LUSHNESSES +LUST +LUSTED +LUSTER +LUSTERED +LUSTERING +LUSTERLESS +LUSTERS +LUSTERWARE +LUSTERWARES +LUSTFUL +LUSTFULLY +LUSTFULNESS +LUSTFULNESSES +LUSTIER +LUSTIEST +LUSTIHOOD +LUSTIHOODS +LUSTILY +LUSTINESS +LUSTINESSES +LUSTING +LUSTRA +LUSTRAL +LUSTRATE +LUSTRATED +LUSTRATES +LUSTRATING +LUSTRATION +LUSTRATIONS +LUSTRE +LUSTRED +LUSTRES +LUSTRING +LUSTRINGS +LUSTROUS +LUSTROUSLY +LUSTROUSNESS +LUSTROUSNESSES +LUSTRUM +LUSTRUMS +LUSTS +LUSTY +LUSUS +LUSUSES +LUTANIST +LUTANISTS +LUTE +LUTEA +LUTEAL +LUTECIUM +LUTECIUMS +LUTED +LUTEFISK +LUTEFISKS +LUTEIN +LUTEINIZATION +LUTEINIZATIONS +LUTEINIZE +LUTEINIZED +LUTEINIZES +LUTEINIZING +LUTEINS +LUTENIST +LUTENISTS +LUTEOLIN +LUTEOLINS +LUTEOTROPHIC +LUTEOTROPHIN +LUTEOTROPHINS +LUTEOTROPIC +LUTEOTROPIN +LUTEOTROPINS +LUTEOUS +LUTES +LUTESTRING +LUTESTRINGS +LUTETIUM +LUTETIUMS +LUTEUM +LUTFISK +LUTFISKS +LUTHERN +LUTHERNS +LUTHIER +LUTHIERS +LUTING +LUTINGS +LUTIST +LUTISTS +LUTZ +LUTZES +LUV +LUVS +LUX +LUXATE +LUXATED +LUXATES +LUXATING +LUXATION +LUXATIONS +LUXE +LUXES +LUXURIANCE +LUXURIANCES +LUXURIANT +LUXURIANTLY +LUXURIATE +LUXURIATED +LUXURIATES +LUXURIATING +LUXURIES +LUXURIOUS +LUXURIOUSLY +LUXURIOUSNESS +LUXURIOUSNESSES +LUXURY +LWEI +LWEIS +LYARD +LYART +LYASE +LYASES +LYCANTHROPIES +LYCANTHROPY +LYCEA +LYCEE +LYCEES +LYCEUM +LYCEUMS +LYCH +LYCHEE +LYCHEES +LYCHES +LYCHNIS +LYCHNISES +LYCOPENE +LYCOPENES +LYCOPOD +LYCOPODIUM +LYCOPODIUMS +LYCOPODS +LYCRA +LYCRAS +LYDDITE +LYDDITES +LYE +LYES +LYING +LYINGLY +LYINGS +LYMPH +LYMPHADENITIS +LYMPHADENITISES +LYMPHADENOPATHY +LYMPHANGIOGRAM +LYMPHANGIOGRAMS +LYMPHATIC +LYMPHATICALLY +LYMPHATICS +LYMPHOBLAST +LYMPHOBLASTIC +LYMPHOBLASTS +LYMPHOCYTE +LYMPHOCYTES +LYMPHOCYTIC +LYMPHOCYTOSES +LYMPHOCYTOSIS +LYMPHOGRAM +LYMPHOGRAMS +LYMPHOGRANULOMA +LYMPHOGRAPHIC +LYMPHOGRAPHIES +LYMPHOGRAPHY +LYMPHOID +LYMPHOKINE +LYMPHOKINES +LYMPHOMA +LYMPHOMAS +LYMPHOMATA +LYMPHOMATOSES +LYMPHOMATOSIS +LYMPHOMATOUS +LYMPHOSARCOMA +LYMPHOSARCOMAS +LYMPHOSARCOMATA +LYMPHS +LYNCEAN +LYNCH +LYNCHED +LYNCHER +LYNCHERS +LYNCHES +LYNCHING +LYNCHINGS +LYNCHPIN +LYNCHPINS +LYNX +LYNXES +LYONNAISE +LYOPHILE +LYOPHILED +LYOPHILIC +LYOPHILISE +LYOPHILISED +LYOPHILISES +LYOPHILISING +LYOPHILIZATION +LYOPHILIZATIONS +LYOPHILIZE +LYOPHILIZED +LYOPHILIZER +LYOPHILIZERS +LYOPHILIZES +LYOPHILIZING +LYOPHOBIC +LYRATE +LYRATED +LYRATELY +LYRE +LYREBIRD +LYREBIRDS +LYRES +LYRIC +LYRICAL +LYRICALLY +LYRICALNESS +LYRICALNESSES +LYRICISE +LYRICISED +LYRICISES +LYRICISING +LYRICISM +LYRICISMS +LYRICIST +LYRICISTS +LYRICIZE +LYRICIZED +LYRICIZES +LYRICIZING +LYRICON +LYRICONS +LYRICS +LYRIFORM +LYRISM +LYRISMS +LYRIST +LYRISTS +LYSATE +LYSATES +LYSE +LYSED +LYSES +LYSIMETER +LYSIMETERS +LYSIMETRIC +LYSIN +LYSINE +LYSINES +LYSING +LYSINS +LYSIS +LYSOGEN +LYSOGENIC +LYSOGENICITIES +LYSOGENICITY +LYSOGENIES +LYSOGENISE +LYSOGENISED +LYSOGENISES +LYSOGENISING +LYSOGENIZATION +LYSOGENIZATIONS +LYSOGENIZE +LYSOGENIZED +LYSOGENIZES +LYSOGENIZING +LYSOGENS +LYSOGENY +LYSOLECITHIN +LYSOLECITHINS +LYSOSOMAL +LYSOSOME +LYSOSOMES +LYSOZYME +LYSOZYMES +LYSSA +LYSSAS +LYTIC +LYTICALLY +LYTTA +LYTTAE +LYTTAS +MA +MAAR +MAARS +MABE +MABES +MAC +MACABER +MACABRE +MACABRELY +MACACO +MACACOS +MACADAM +MACADAMIA +MACADAMIAS +MACADAMIZE +MACADAMIZED +MACADAMIZES +MACADAMIZING +MACADAMS +MACAQUE +MACAQUES +MACARONI +MACARONIC +MACARONICS +MACARONIES +MACARONIS +MACAROON +MACAROONS +MACAW +MACAWS +MACCABAW +MACCABAWS +MACCABOY +MACCABOYS +MACCHIA +MACCHIE +MACCOBOY +MACCOBOYS +MACE +MACED +MACEDOINE +MACEDOINES +MACER +MACERATE +MACERATED +MACERATER +MACERATERS +MACERATES +MACERATING +MACERATION +MACERATIONS +MACERATOR +MACERATORS +MACERS +MACES +MACH +MACHE +MACHES +MACHETE +MACHETES +MACHICOLATED +MACHICOLATION +MACHICOLATIONS +MACHINABILITIES +MACHINABILITY +MACHINABLE +MACHINATE +MACHINATED +MACHINATES +MACHINATING +MACHINATION +MACHINATIONS +MACHINATOR +MACHINATORS +MACHINE +MACHINEABILITY +MACHINEABLE +MACHINED +MACHINELIKE +MACHINERIES +MACHINERY +MACHINES +MACHINING +MACHINIST +MACHINISTS +MACHISMO +MACHISMOS +MACHO +MACHOISM +MACHOISMS +MACHOS +MACHREE +MACHREES +MACHS +MACHZOR +MACHZORIM +MACHZORS +MACING +MACINTOSH +MACINTOSHES +MACK +MACKEREL +MACKERELS +MACKINAW +MACKINAWS +MACKINTOSH +MACKINTOSHES +MACKLE +MACKLED +MACKLES +MACKLING +MACKS +MACLE +MACLED +MACLES +MACON +MACONS +MACRAME +MACRAMES +MACRO +MACROAGGREGATE +MACROAGGREGATED +MACROAGGREGATES +MACROBIOTIC +MACROCOSM +MACROCOSMIC +MACROCOSMICALLY +MACROCOSMS +MACROCYCLIC +MACROCYST +MACROCYSTS +MACROCYTE +MACROCYTES +MACROCYTIC +MACROCYTOSES +MACROCYTOSIS +MACRODONT +MACROECONOMIC +MACROECONOMICS +MACROEVOLUTION +MACROEVOLUTIONS +MACROFOSSIL +MACROFOSSILS +MACROGAMETE +MACROGAMETES +MACROGLOBULIN +MACROGLOBULINS +MACROMERE +MACROMERES +MACROMOLE +MACROMOLECULAR +MACROMOLECULE +MACROMOLECULES +MACROMOLES +MACRON +MACRONS +MACRONUCLEAR +MACRONUCLEI +MACRONUCLEUS +MACRONUTRIENT +MACRONUTRIENTS +MACROPHAGE +MACROPHAGES +MACROPHAGIC +MACROPHOTOGRAPH +MACROPHYTE +MACROPHYTES +MACROPHYTIC +MACROPTEROUS +MACROS +MACROSCALE +MACROSCALES +MACROSCOPIC +MACROSCOPICALLY +MACROSTRUCTURAL +MACROSTRUCTURE +MACROSTRUCTURES +MACRURAL +MACRURAN +MACRURANS +MACRUROUS +MACS +MACULA +MACULAE +MACULAR +MACULAS +MACULATE +MACULATED +MACULATES +MACULATING +MACULATION +MACULATIONS +MACULE +MACULED +MACULES +MACULING +MACUMBA +MACUMBAS +MAD +MADAM +MADAME +MADAMES +MADAMS +MADCAP +MADCAPS +MADDED +MADDEN +MADDENED +MADDENING +MADDENINGLY +MADDENS +MADDER +MADDERS +MADDEST +MADDING +MADDISH +MADE +MADEIRA +MADEIRAS +MADELEINE +MADELEINES +MADEMOISELLE +MADEMOISELLES +MADERIZE +MADERIZED +MADERIZES +MADERIZING +MADHOUSE +MADHOUSES +MADLY +MADMAN +MADMEN +MADNESS +MADNESSES +MADONNA +MADONNAS +MADRAS +MADRASA +MADRASAH +MADRASAHS +MADRASAS +MADRASES +MADRASSA +MADRASSAH +MADRASSAHS +MADRASSAS +MADRE +MADREPORE +MADREPORES +MADREPORIAN +MADREPORIANS +MADREPORIC +MADREPORITE +MADREPORITES +MADRES +MADRIGAL +MADRIGALIAN +MADRIGALIST +MADRIGALISTS +MADRIGALS +MADRILENE +MADRILENES +MADRONA +MADRONAS +MADRONE +MADRONES +MADRONO +MADRONOS +MADS +MADTOM +MADTOMS +MADURO +MADUROS +MADWOMAN +MADWOMEN +MADWORT +MADWORTS +MADZOON +MADZOONS +MAE +MAELSTROM +MAELSTROMS +MAENAD +MAENADES +MAENADIC +MAENADISM +MAENADISMS +MAENADS +MAES +MAESTOSO +MAESTOSOS +MAESTRI +MAESTRO +MAESTROS +MAFFIA +MAFFIAS +MAFFICK +MAFFICKED +MAFFICKER +MAFFICKERS +MAFFICKING +MAFFICKS +MAFIA +MAFIAS +MAFIC +MAFIOSI +MAFIOSO +MAFIOSOS +MAFTIR +MAFTIRS +MAG +MAGALOG +MAGALOGS +MAGALOGUE +MAGALOGUES +MAGAZINE +MAGAZINES +MAGAZINIST +MAGAZINISTS +MAGDALEN +MAGDALENE +MAGDALENES +MAGDALENS +MAGE +MAGENTA +MAGENTAS +MAGES +MAGGOT +MAGGOTS +MAGGOTY +MAGI +MAGIAN +MAGIANS +MAGIC +MAGICAL +MAGICALLY +MAGICIAN +MAGICIANS +MAGICKED +MAGICKING +MAGICS +MAGILP +MAGILPS +MAGISTER +MAGISTERIAL +MAGISTERIALLY +MAGISTERIUM +MAGISTERIUMS +MAGISTERS +MAGISTRACIES +MAGISTRACY +MAGISTRAL +MAGISTRALLY +MAGISTRATE +MAGISTRATES +MAGISTRATICAL +MAGISTRATICALLY +MAGISTRATURE +MAGISTRATURES +MAGLEV +MAGLEVS +MAGMA +MAGMAS +MAGMATA +MAGMATIC +MAGNANIMITIES +MAGNANIMITY +MAGNANIMOUS +MAGNANIMOUSLY +MAGNANIMOUSNESS +MAGNATE +MAGNATES +MAGNESIA +MAGNESIAN +MAGNESIAS +MAGNESIC +MAGNESITE +MAGNESITES +MAGNESIUM +MAGNESIUMS +MAGNET +MAGNETIC +MAGNETICALLY +MAGNETICS +MAGNETISE +MAGNETISED +MAGNETISES +MAGNETISING +MAGNETISM +MAGNETISMS +MAGNETITE +MAGNETITES +MAGNETIZABLE +MAGNETIZATION +MAGNETIZATIONS +MAGNETIZE +MAGNETIZED +MAGNETIZER +MAGNETIZERS +MAGNETIZES +MAGNETIZING +MAGNETO +MAGNETOELECTRIC +MAGNETOGRAPH +MAGNETOGRAPHS +MAGNETOMETER +MAGNETOMETERS +MAGNETOMETRIC +MAGNETOMETRIES +MAGNETOMETRY +MAGNETON +MAGNETONS +MAGNETOPAUSE +MAGNETOPAUSES +MAGNETOS +MAGNETOSPHERE +MAGNETOSPHERES +MAGNETOSPHERIC +MAGNETOSTATIC +MAGNETRON +MAGNETRONS +MAGNETS +MAGNIFIC +MAGNIFICAL +MAGNIFICALLY +MAGNIFICAT +MAGNIFICATION +MAGNIFICATIONS +MAGNIFICATS +MAGNIFICENCE +MAGNIFICENCES +MAGNIFICENT +MAGNIFICENTLY +MAGNIFICO +MAGNIFICOES +MAGNIFICOS +MAGNIFIED +MAGNIFIER +MAGNIFIERS +MAGNIFIES +MAGNIFY +MAGNIFYING +MAGNILOQUENCE +MAGNILOQUENCES +MAGNILOQUENT +MAGNILOQUENTLY +MAGNITUDE +MAGNITUDES +MAGNOLIA +MAGNOLIAS +MAGNUM +MAGNUMS +MAGOT +MAGOTS +MAGPIE +MAGPIES +MAGS +MAGUEY +MAGUEYS +MAGUS +MAHARAJA +MAHARAJAH +MAHARAJAHS +MAHARAJAS +MAHARANEE +MAHARANEES +MAHARANI +MAHARANIS +MAHARISHI +MAHARISHIS +MAHATMA +MAHATMAS +MAHIMAHI +MAHIMAHIS +MAHJONG +MAHJONGG +MAHJONGGS +MAHJONGS +MAHLSTICK +MAHLSTICKS +MAHOE +MAHOES +MAHOGANIES +MAHOGANY +MAHONIA +MAHONIAS +MAHOUT +MAHOUTS +MAHUANG +MAHUANGS +MAHZOR +MAHZORIM +MAHZORS +MAIASAUR +MAIASAURA +MAIASAURAS +MAIASAURS +MAID +MAIDEN +MAIDENHAIR +MAIDENHAIRS +MAIDENHEAD +MAIDENHEADS +MAIDENHOOD +MAIDENHOODS +MAIDENLINESS +MAIDENLINESSES +MAIDENLY +MAIDENS +MAIDHOOD +MAIDHOODS +MAIDISH +MAIDS +MAIDSERVANT +MAIDSERVANTS +MAIEUTIC +MAIGRE +MAIHEM +MAIHEMS +MAIL +MAILABILITIES +MAILABILITY +MAILABLE +MAILBAG +MAILBAGS +MAILBOX +MAILBOXES +MAILE +MAILED +MAILER +MAILERS +MAILES +MAILGRAM +MAILGRAMS +MAILING +MAILINGS +MAILL +MAILLESS +MAILLOT +MAILLOTS +MAILLS +MAILMAN +MAILMEN +MAILROOM +MAILROOMS +MAILS +MAIM +MAIMED +MAIMER +MAIMERS +MAIMING +MAIMS +MAIN +MAINFRAME +MAINFRAMES +MAINLAND +MAINLANDER +MAINLANDERS +MAINLANDS +MAINLINE +MAINLINED +MAINLINER +MAINLINERS +MAINLINES +MAINLINING +MAINLY +MAINMAST +MAINMASTS +MAINS +MAINSAIL +MAINSAILS +MAINSHEET +MAINSHEETS +MAINSPRING +MAINSPRINGS +MAINSTAY +MAINSTAYS +MAINSTREAM +MAINSTREAMED +MAINSTREAMING +MAINSTREAMS +MAINTAIN +MAINTAINABILITY +MAINTAINABLE +MAINTAINED +MAINTAINER +MAINTAINERS +MAINTAINING +MAINTAINS +MAINTENANCE +MAINTENANCES +MAINTOP +MAINTOPS +MAIOLICA +MAIOLICAS +MAIR +MAIRS +MAISONETTE +MAISONETTES +MAIST +MAISTS +MAIZE +MAIZES +MAJAGUA +MAJAGUAS +MAJESTIC +MAJESTICALLY +MAJESTIES +MAJESTY +MAJOLICA +MAJOLICAS +MAJOR +MAJORDOMO +MAJORDOMOS +MAJORED +MAJORETTE +MAJORETTES +MAJORING +MAJORITARIAN +MAJORITARIANISM +MAJORITARIANS +MAJORITIES +MAJORITY +MAJORLY +MAJORS +MAJUSCULAR +MAJUSCULE +MAJUSCULES +MAKABLE +MAKAR +MAKARS +MAKE +MAKEABLE +MAKEBATE +MAKEBATES +MAKEFAST +MAKEFASTS +MAKEOVER +MAKEOVERS +MAKER +MAKEREADIES +MAKEREADY +MAKERS +MAKES +MAKESHIFT +MAKESHIFTS +MAKEUP +MAKEUPS +MAKEWEIGHT +MAKEWEIGHTS +MAKIMONO +MAKIMONOS +MAKING +MAKINGS +MAKO +MAKOS +MAKUTA +MALABSORPTION +MALABSORPTIONS +MALACCA +MALACCAS +MALACHITE +MALACHITES +MALACOLOGICAL +MALACOLOGIES +MALACOLOGIST +MALACOLOGISTS +MALACOLOGY +MALACOSTRACAN +MALACOSTRACANS +MALADAPTATION +MALADAPTATIONS +MALADAPTED +MALADAPTIVE +MALADIES +MALADJUSTED +MALADJUSTIVE +MALADJUSTMENT +MALADJUSTMENTS +MALADMINISTER +MALADMINISTERED +MALADMINISTERS +MALADROIT +MALADROITLY +MALADROITNESS +MALADROITNESSES +MALADROITS +MALADY +MALAGUENA +MALAGUENAS +MALAISE +MALAISES +MALAMUTE +MALAMUTES +MALANDERS +MALANGA +MALANGAS +MALAPERT +MALAPERTLY +MALAPERTNESS +MALAPERTNESSES +MALAPERTS +MALAPPORTIONED +MALAPROP +MALAPROPIAN +MALAPROPISM +MALAPROPISMS +MALAPROPIST +MALAPROPISTS +MALAPROPOS +MALAPROPS +MALAR +MALARIA +MALARIAL +MALARIAN +MALARIAS +MALARIOLOGIES +MALARIOLOGIST +MALARIOLOGISTS +MALARIOLOGY +MALARIOUS +MALARKEY +MALARKEYS +MALARKIES +MALARKY +MALAROMA +MALAROMAS +MALARS +MALATE +MALATES +MALATHION +MALATHIONS +MALCONTENT +MALCONTENTED +MALCONTENTEDLY +MALCONTENTS +MALDISTRIBUTION +MALE +MALEATE +MALEATES +MALEDICT +MALEDICTED +MALEDICTING +MALEDICTION +MALEDICTIONS +MALEDICTORY +MALEDICTS +MALEFACTION +MALEFACTIONS +MALEFACTOR +MALEFACTORS +MALEFIC +MALEFICENCE +MALEFICENCES +MALEFICENT +MALEMIUT +MALEMIUTS +MALEMUTE +MALEMUTES +MALENESS +MALENESSES +MALES +MALEVOLENCE +MALEVOLENCES +MALEVOLENT +MALEVOLENTLY +MALFEASANCE +MALFEASANCES +MALFED +MALFORMATION +MALFORMATIONS +MALFORMED +MALFUNCTION +MALFUNCTIONED +MALFUNCTIONING +MALFUNCTIONS +MALGRE +MALIC +MALICE +MALICES +MALICIOUS +MALICIOUSLY +MALICIOUSNESS +MALICIOUSNESSES +MALIGN +MALIGNANCE +MALIGNANCES +MALIGNANCIES +MALIGNANCY +MALIGNANT +MALIGNANTLY +MALIGNED +MALIGNER +MALIGNERS +MALIGNING +MALIGNITIES +MALIGNITY +MALIGNLY +MALIGNS +MALIHINI +MALIHINIS +MALINE +MALINES +MALINGER +MALINGERED +MALINGERER +MALINGERERS +MALINGERING +MALINGERS +MALISON +MALISONS +MALKIN +MALKINS +MALL +MALLARD +MALLARDS +MALLEABILITIES +MALLEABILITY +MALLEABLE +MALLEABLY +MALLED +MALLEE +MALLEES +MALLEI +MALLEMUCK +MALLEMUCKS +MALLEOLAR +MALLEOLI +MALLEOLUS +MALLET +MALLETS +MALLEUS +MALLING +MALLINGS +MALLOW +MALLOWS +MALLS +MALM +MALMIER +MALMIEST +MALMS +MALMSEY +MALMSEYS +MALMY +MALNOURISHED +MALNUTRITION +MALNUTRITIONS +MALOCCLUSION +MALOCCLUSIONS +MALODOR +MALODOROUS +MALODOROUSLY +MALODOROUSNESS +MALODORS +MALOLACTIC +MALOTI +MALPIGHIA +MALPOSED +MALPOSITION +MALPOSITIONS +MALPRACTICE +MALPRACTICES +MALPRACTITIONER +MALT +MALTASE +MALTASES +MALTED +MALTEDS +MALTHA +MALTHAS +MALTIER +MALTIEST +MALTINESS +MALTINESSES +MALTING +MALTOL +MALTOLS +MALTOSE +MALTOSES +MALTREAT +MALTREATED +MALTREATER +MALTREATERS +MALTREATING +MALTREATMENT +MALTREATMENTS +MALTREATS +MALTS +MALTSTER +MALTSTERS +MALTY +MALVASIA +MALVASIAN +MALVASIAS +MALVERSATION +MALVERSATIONS +MAMA +MAMALIGA +MAMALIGAS +MAMAS +MAMBA +MAMBAS +MAMBO +MAMBOED +MAMBOES +MAMBOING +MAMBOS +MAMELUKE +MAMELUKES +MAMEY +MAMEYES +MAMEYS +MAMIE +MAMIES +MAMLUK +MAMLUKS +MAMMA +MAMMAE +MAMMAL +MAMMALIAN +MAMMALIANS +MAMMALITIES +MAMMALITY +MAMMALOGIES +MAMMALOGIST +MAMMALOGISTS +MAMMALOGY +MAMMALS +MAMMARY +MAMMAS +MAMMATE +MAMMATI +MAMMATUS +MAMMEE +MAMMEES +MAMMER +MAMMERED +MAMMERING +MAMMERS +MAMMET +MAMMETS +MAMMEY +MAMMEYS +MAMMIE +MAMMIES +MAMMILLA +MAMMILLAE +MAMMILLARY +MAMMILLATED +MAMMITIDES +MAMMITIS +MAMMOCK +MAMMOCKED +MAMMOCKING +MAMMOCKS +MAMMOGRAM +MAMMOGRAMS +MAMMOGRAPHIC +MAMMOGRAPHIES +MAMMOGRAPHY +MAMMON +MAMMONISM +MAMMONISMS +MAMMONIST +MAMMONISTS +MAMMONS +MAMMOTH +MAMMOTHS +MAMMY +MAMZER +MAMZERS +MAN +MANA +MANACLE +MANACLED +MANACLES +MANACLING +MANAGE +MANAGEABILITIES +MANAGEABILITY +MANAGEABLE +MANAGEABLENESS +MANAGEABLY +MANAGED +MANAGEMENT +MANAGEMENTAL +MANAGEMENTS +MANAGER +MANAGERESS +MANAGERESSES +MANAGERIAL +MANAGERIALLY +MANAGERS +MANAGERSHIP +MANAGERSHIPS +MANAGES +MANAGING +MANAKIN +MANAKINS +MANANA +MANANAS +MANAS +MANAT +MANATEE +MANATEES +MANATOID +MANATS +MANCHE +MANCHES +MANCHET +MANCHETS +MANCHINEEL +MANCHINEELS +MANCIPLE +MANCIPLES +MANDALA +MANDALAS +MANDALIC +MANDAMUS +MANDAMUSED +MANDAMUSES +MANDAMUSING +MANDARIN +MANDARINATE +MANDARINATES +MANDARINIC +MANDARINISM +MANDARINISMS +MANDARINS +MANDATARIES +MANDATARY +MANDATE +MANDATED +MANDATES +MANDATING +MANDATOR +MANDATORIES +MANDATORILY +MANDATORS +MANDATORY +MANDIBLE +MANDIBLES +MANDIBULAR +MANDIBULATE +MANDIOCA +MANDIOCAS +MANDOLA +MANDOLAS +MANDOLIN +MANDOLINE +MANDOLINES +MANDOLINIST +MANDOLINISTS +MANDOLINS +MANDRAGORA +MANDRAGORAS +MANDRAKE +MANDRAKES +MANDREL +MANDRELS +MANDRIL +MANDRILL +MANDRILLS +MANDRILS +MANDUCATE +MANDUCATED +MANDUCATES +MANDUCATING +MANE +MANED +MANEGE +MANEGES +MANELESS +MANES +MANEUVER +MANEUVERABILITY +MANEUVERABLE +MANEUVERED +MANEUVERER +MANEUVERERS +MANEUVERING +MANEUVERS +MANFUL +MANFULLY +MANFULNESS +MANFULNESSES +MANGA +MANGABEY +MANGABEYS +MANGABIES +MANGABY +MANGANATE +MANGANATES +MANGANESE +MANGANESES +MANGANESIAN +MANGANIC +MANGANIN +MANGANINS +MANGANITE +MANGANITES +MANGANOUS +MANGAS +MANGE +MANGEL +MANGELS +MANGER +MANGERS +MANGES +MANGEY +MANGIER +MANGIEST +MANGILY +MANGINESS +MANGINESSES +MANGLE +MANGLED +MANGLER +MANGLERS +MANGLES +MANGLING +MANGO +MANGOES +MANGOLD +MANGOLDS +MANGONEL +MANGONELS +MANGOS +MANGOSTEEN +MANGOSTEENS +MANGROVE +MANGROVES +MANGY +MANHANDLE +MANHANDLED +MANHANDLES +MANHANDLING +MANHATTAN +MANHATTANS +MANHOLE +MANHOLES +MANHOOD +MANHOODS +MANHUNT +MANHUNTS +MANIA +MANIAC +MANIACAL +MANIACALLY +MANIACS +MANIAS +MANIC +MANICALLY +MANICOTTI +MANICOTTIS +MANICS +MANICURE +MANICURED +MANICURES +MANICURING +MANICURIST +MANICURISTS +MANIFEST +MANIFESTANT +MANIFESTANTS +MANIFESTATION +MANIFESTATIONS +MANIFESTED +MANIFESTER +MANIFESTERS +MANIFESTING +MANIFESTLY +MANIFESTO +MANIFESTOED +MANIFESTOES +MANIFESTOING +MANIFESTOS +MANIFESTS +MANIFOLD +MANIFOLDED +MANIFOLDING +MANIFOLDLY +MANIFOLDNESS +MANIFOLDNESSES +MANIFOLDS +MANIHOT +MANIHOTS +MANIKIN +MANIKINS +MANILA +MANILAS +MANILLA +MANILLAS +MANILLE +MANILLES +MANIOC +MANIOCA +MANIOCAS +MANIOCS +MANIPLE +MANIPLES +MANIPULABILITY +MANIPULABLE +MANIPULAR +MANIPULARS +MANIPULATABLE +MANIPULATE +MANIPULATED +MANIPULATES +MANIPULATING +MANIPULATION +MANIPULATIONS +MANIPULATIVE +MANIPULATIVELY +MANIPULATOR +MANIPULATORS +MANIPULATORY +MANITO +MANITOS +MANITOU +MANITOUS +MANITU +MANITUS +MANKIND +MANLESS +MANLIER +MANLIEST +MANLIKE +MANLIKELY +MANLILY +MANLINESS +MANLINESSES +MANLY +MANMADE +MANNA +MANNAN +MANNANS +MANNAS +MANNED +MANNEQUIN +MANNEQUINS +MANNER +MANNERED +MANNERISM +MANNERISMS +MANNERIST +MANNERISTIC +MANNERISTS +MANNERLESS +MANNERLINESS +MANNERLINESSES +MANNERLY +MANNERS +MANNIKIN +MANNIKINS +MANNING +MANNISH +MANNISHLY +MANNISHNESS +MANNISHNESSES +MANNITE +MANNITES +MANNITIC +MANNITOL +MANNITOLS +MANNOSE +MANNOSES +MANO +MANOEUVRE +MANOEUVRED +MANOEUVRES +MANOEUVRING +MANOMETER +MANOMETERS +MANOMETRIC +MANOMETRICALLY +MANOMETRIES +MANOMETRY +MANOR +MANORIAL +MANORIALISM +MANORIALISMS +MANORS +MANOS +MANPACK +MANPOWER +MANPOWERS +MANQUE +MANROPE +MANROPES +MANS +MANSARD +MANSARDED +MANSARDS +MANSE +MANSERVANT +MANSES +MANSION +MANSIONS +MANSLAUGHTER +MANSLAUGHTERS +MANSLAYER +MANSLAYERS +MANSUETUDE +MANSUETUDES +MANTA +MANTAS +MANTEAU +MANTEAUS +MANTEAUX +MANTEL +MANTELET +MANTELETS +MANTELPIECE +MANTELPIECES +MANTELS +MANTELSHELF +MANTELSHELVES +MANTES +MANTIC +MANTICORE +MANTICORES +MANTID +MANTIDS +MANTILLA +MANTILLAS +MANTIS +MANTISES +MANTISSA +MANTISSAS +MANTLE +MANTLED +MANTLES +MANTLET +MANTLETS +MANTLING +MANTLINGS +MANTRA +MANTRAM +MANTRAMS +MANTRAP +MANTRAPS +MANTRAS +MANTRIC +MANTUA +MANTUAS +MANUAL +MANUALLY +MANUALS +MANUARY +MANUBRIA +MANUBRIAL +MANUBRIUM +MANUBRIUMS +MANUFACTORIES +MANUFACTORY +MANUFACTURE +MANUFACTURED +MANUFACTURER +MANUFACTURERS +MANUFACTURES +MANUFACTURING +MANUFACTURINGS +MANUMISSION +MANUMISSIONS +MANUMIT +MANUMITS +MANUMITTED +MANUMITTING +MANURE +MANURED +MANURER +MANURERS +MANURES +MANURIAL +MANURING +MANUS +MANUSCRIPT +MANUSCRIPTS +MANWARD +MANWARDS +MANWISE +MANY +MANYFOLD +MANYPLIES +MANZANITA +MANZANITAS +MAP +MAPLE +MAPLELIKE +MAPLES +MAPLIKE +MAPMAKER +MAPMAKERS +MAPMAKING +MAPMAKINGS +MAPPABLE +MAPPED +MAPPER +MAPPERS +MAPPING +MAPPINGS +MAPS +MAQUETTE +MAQUETTES +MAQUI +MAQUILA +MAQUILADORA +MAQUILADORAS +MAQUILAS +MAQUILLAGE +MAQUILLAGES +MAQUIS +MAR +MARA +MARABOU +MARABOUS +MARABOUT +MARABOUTS +MARACA +MARACAS +MARANATHA +MARANATHAS +MARANTA +MARANTAS +MARAS +MARASCA +MARASCAS +MARASCHINO +MARASCHINOS +MARASMIC +MARASMOID +MARASMUS +MARASMUSES +MARATHON +MARATHONER +MARATHONERS +MARATHONING +MARATHONINGS +MARATHONS +MARAUD +MARAUDED +MARAUDER +MARAUDERS +MARAUDING +MARAUDS +MARAVEDI +MARAVEDIS +MARBELIZE +MARBELIZED +MARBELIZES +MARBELIZING +MARBLE +MARBLED +MARBLEISE +MARBLEISED +MARBLEISES +MARBLEISING +MARBLEIZE +MARBLEIZED +MARBLEIZES +MARBLEIZING +MARBLER +MARBLERS +MARBLES +MARBLIER +MARBLIEST +MARBLING +MARBLINGS +MARBLY +MARC +MARCASITE +MARCASITES +MARCATO +MARCATOS +MARCEL +MARCELLED +MARCELLER +MARCELLERS +MARCELLING +MARCELS +MARCH +MARCHED +MARCHEN +MARCHER +MARCHERS +MARCHES +MARCHESA +MARCHESE +MARCHESI +MARCHING +MARCHIONESS +MARCHIONESSES +MARCHLAND +MARCHLANDS +MARCHLIKE +MARCHPANE +MARCHPANES +MARCS +MARE +MAREMMA +MAREMME +MARENGO +MARES +MARGARIC +MARGARIN +MARGARINE +MARGARINES +MARGARINS +MARGARITA +MARGARITAS +MARGARITE +MARGARITES +MARGAY +MARGAYS +MARGE +MARGENT +MARGENTED +MARGENTING +MARGENTS +MARGES +MARGIN +MARGINAL +MARGINALIA +MARGINALITIES +MARGINALITY +MARGINALIZATION +MARGINALIZE +MARGINALIZED +MARGINALIZES +MARGINALIZING +MARGINALLY +MARGINALS +MARGINATE +MARGINATED +MARGINATES +MARGINATING +MARGINATION +MARGINATIONS +MARGINED +MARGINING +MARGINS +MARGRAVATE +MARGRAVATES +MARGRAVE +MARGRAVES +MARGRAVIAL +MARGRAVIATE +MARGRAVIATES +MARGRAVINE +MARGRAVINES +MARGUERITE +MARGUERITES +MARIA +MARIACHI +MARIACHIS +MARICULTURE +MARICULTURES +MARICULTURIST +MARICULTURISTS +MARIGOLD +MARIGOLDS +MARIHUANA +MARIHUANAS +MARIJUANA +MARIJUANAS +MARIMBA +MARIMBAS +MARIMBIST +MARIMBISTS +MARINA +MARINADE +MARINADED +MARINADES +MARINADING +MARINARA +MARINARAS +MARINAS +MARINATE +MARINATED +MARINATES +MARINATING +MARINATION +MARINATIONS +MARINE +MARINER +MARINERS +MARINES +MARIONETTE +MARIONETTES +MARIPOSA +MARIPOSAS +MARISH +MARISHES +MARITAL +MARITALLY +MARITIME +MARJORAM +MARJORAMS +MARK +MARKA +MARKAS +MARKDOWN +MARKDOWNS +MARKED +MARKEDLY +MARKEDNESS +MARKEDNESSES +MARKER +MARKERS +MARKET +MARKETABILITIES +MARKETABILITY +MARKETABLE +MARKETED +MARKETEER +MARKETEERS +MARKETER +MARKETERS +MARKETING +MARKETINGS +MARKETPLACE +MARKETPLACES +MARKETS +MARKHOOR +MARKHOORS +MARKHOR +MARKHORS +MARKING +MARKINGS +MARKKA +MARKKAA +MARKKAS +MARKS +MARKSMAN +MARKSMANSHIP +MARKSMANSHIPS +MARKSMEN +MARKSWOMAN +MARKSWOMEN +MARKUP +MARKUPS +MARL +MARLED +MARLIER +MARLIEST +MARLIN +MARLINE +MARLINES +MARLINESPIKE +MARLINESPIKES +MARLING +MARLINGS +MARLINS +MARLINSPIKE +MARLINSPIKES +MARLITE +MARLITES +MARLITIC +MARLS +MARLSTONE +MARLSTONES +MARLY +MARMALADE +MARMALADES +MARMITE +MARMITES +MARMOREAL +MARMOREALLY +MARMOREAN +MARMOSET +MARMOSETS +MARMOT +MARMOTS +MAROCAIN +MAROCAINS +MAROON +MAROONED +MAROONING +MAROONS +MARPLOT +MARPLOTS +MARQUE +MARQUEE +MARQUEES +MARQUES +MARQUESS +MARQUESSATE +MARQUESSATES +MARQUESSES +MARQUETERIE +MARQUETERIES +MARQUETRIES +MARQUETRY +MARQUIS +MARQUISATE +MARQUISATES +MARQUISE +MARQUISES +MARQUISETTE +MARQUISETTES +MARRAM +MARRAMS +MARRANO +MARRANOS +MARRED +MARRER +MARRERS +MARRIAGE +MARRIAGEABILITY +MARRIAGEABLE +MARRIAGES +MARRIED +MARRIEDS +MARRIER +MARRIERS +MARRIES +MARRING +MARRON +MARRONS +MARROW +MARROWBONE +MARROWBONES +MARROWED +MARROWFAT +MARROWFATS +MARROWING +MARROWS +MARROWY +MARRY +MARRYING +MARS +MARSALA +MARSALAS +MARSE +MARSEILLE +MARSEILLES +MARSES +MARSH +MARSHAL +MARSHALCIES +MARSHALCY +MARSHALED +MARSHALING +MARSHALL +MARSHALLED +MARSHALLING +MARSHALLS +MARSHALS +MARSHALSHIP +MARSHALSHIPS +MARSHES +MARSHIER +MARSHIEST +MARSHINESS +MARSHINESSES +MARSHLAND +MARSHLANDS +MARSHLIKE +MARSHMALLOW +MARSHMALLOWS +MARSHMALLOWY +MARSHY +MARSUPIA +MARSUPIAL +MARSUPIALS +MARSUPIUM +MART +MARTAGON +MARTAGONS +MARTED +MARTELLO +MARTELLOS +MARTEN +MARTENS +MARTENSITE +MARTENSITES +MARTENSITIC +MARTENSITICALLY +MARTIAL +MARTIALLY +MARTIAN +MARTIANS +MARTIN +MARTINET +MARTINETS +MARTING +MARTINGAL +MARTINGALE +MARTINGALES +MARTINGALS +MARTINI +MARTINIS +MARTINS +MARTLET +MARTLETS +MARTS +MARTYR +MARTYRDOM +MARTYRDOMS +MARTYRED +MARTYRIES +MARTYRING +MARTYRIZATION +MARTYRIZATIONS +MARTYRIZE +MARTYRIZED +MARTYRIZES +MARTYRIZING +MARTYRLY +MARTYROLOGIES +MARTYROLOGIST +MARTYROLOGISTS +MARTYROLOGY +MARTYRS +MARTYRY +MARVEL +MARVELED +MARVELING +MARVELLED +MARVELLING +MARVELLOUS +MARVELOUS +MARVELOUSLY +MARVELOUSNESS +MARVELOUSNESSES +MARVELS +MARVY +MARYJANE +MARYJANES +MARZIPAN +MARZIPANS +MAS +MASA +MASALA +MASALAS +MASAS +MASCARA +MASCARAED +MASCARAING +MASCARAS +MASCARPONE +MASCARPONES +MASCON +MASCONS +MASCOT +MASCOTS +MASCULINE +MASCULINELY +MASCULINES +MASCULINISE +MASCULINISED +MASCULINISES +MASCULINISING +MASCULINIST +MASCULINISTS +MASCULINITIES +MASCULINITY +MASCULINIZATION +MASCULINIZE +MASCULINIZED +MASCULINIZES +MASCULINIZING +MASER +MASERS +MASH +MASHED +MASHER +MASHERS +MASHES +MASHGIACH +MASHGIAH +MASHGICHIM +MASHGIHIM +MASHIE +MASHIES +MASHING +MASHY +MASJID +MASJIDS +MASK +MASKABLE +MASKED +MASKEG +MASKEGS +MASKER +MASKERS +MASKING +MASKINGS +MASKLIKE +MASKS +MASOCHISM +MASOCHISMS +MASOCHIST +MASOCHISTIC +MASOCHISTICALLY +MASOCHISTS +MASON +MASONED +MASONIC +MASONING +MASONITE +MASONITES +MASONRIES +MASONRY +MASONS +MASQUE +MASQUER +MASQUERADE +MASQUERADED +MASQUERADER +MASQUERADERS +MASQUERADES +MASQUERADING +MASQUERS +MASQUES +MASS +MASSA +MASSACRE +MASSACRED +MASSACRER +MASSACRERS +MASSACRES +MASSACRING +MASSAGE +MASSAGED +MASSAGER +MASSAGERS +MASSAGES +MASSAGING +MASSAS +MASSASAUGA +MASSASAUGAS +MASSCULT +MASSCULTS +MASSE +MASSED +MASSEDLY +MASSES +MASSETER +MASSETERIC +MASSETERS +MASSEUR +MASSEURS +MASSEUSE +MASSEUSES +MASSICOT +MASSICOTS +MASSIER +MASSIEST +MASSIF +MASSIFS +MASSINESS +MASSINESSES +MASSING +MASSIVE +MASSIVELY +MASSIVENESS +MASSIVENESSES +MASSLESS +MASSY +MAST +MASTABA +MASTABAH +MASTABAHS +MASTABAS +MASTECTOMIES +MASTECTOMY +MASTED +MASTER +MASTERDOM +MASTERDOMS +MASTERED +MASTERFUL +MASTERFULLY +MASTERFULNESS +MASTERFULNESSES +MASTERIES +MASTERING +MASTERLINESS +MASTERLINESSES +MASTERLY +MASTERMIND +MASTERMINDED +MASTERMINDING +MASTERMINDS +MASTERPIECE +MASTERPIECES +MASTERS +MASTERSHIP +MASTERSHIPS +MASTERSINGER +MASTERSINGERS +MASTERSTROKE +MASTERSTROKES +MASTERWORK +MASTERWORKS +MASTERY +MASTHEAD +MASTHEADED +MASTHEADING +MASTHEADS +MASTIC +MASTICATE +MASTICATED +MASTICATES +MASTICATING +MASTICATION +MASTICATIONS +MASTICATOR +MASTICATORIES +MASTICATORS +MASTICATORY +MASTICHE +MASTICHES +MASTICS +MASTIFF +MASTIFFS +MASTIGOPHORAN +MASTIGOPHORANS +MASTING +MASTITIC +MASTITIDES +MASTITIS +MASTIX +MASTIXES +MASTLESS +MASTLIKE +MASTODON +MASTODONIC +MASTODONS +MASTODONT +MASTODONTS +MASTOID +MASTOIDECTOMIES +MASTOIDECTOMY +MASTOIDITIS +MASTOIDITISES +MASTOIDS +MASTOPEXIES +MASTOPEXY +MASTS +MASTURBATE +MASTURBATED +MASTURBATES +MASTURBATING +MASTURBATION +MASTURBATIONS +MASTURBATOR +MASTURBATORS +MASTURBATORY +MASURIUM +MASURIUMS +MAT +MATADOR +MATADORS +MATAMBALA +MATCH +MATCHABLE +MATCHBOARD +MATCHBOARDS +MATCHBOOK +MATCHBOOKS +MATCHBOX +MATCHBOXES +MATCHED +MATCHER +MATCHERS +MATCHES +MATCHING +MATCHLESS +MATCHLESSLY +MATCHLOCK +MATCHLOCKS +MATCHMADE +MATCHMAKE +MATCHMAKER +MATCHMAKERS +MATCHMAKES +MATCHMAKING +MATCHMAKINGS +MATCHMARK +MATCHMARKED +MATCHMARKING +MATCHMARKS +MATCHSTICK +MATCHSTICKS +MATCHUP +MATCHUPS +MATCHWOOD +MATCHWOODS +MATE +MATED +MATELASSE +MATELASSES +MATELESS +MATELOT +MATELOTE +MATELOTES +MATELOTS +MATER +MATERFAMILIAS +MATERFAMILIASES +MATERIAL +MATERIALISE +MATERIALISED +MATERIALISES +MATERIALISING +MATERIALISM +MATERIALISMS +MATERIALIST +MATERIALISTIC +MATERIALISTS +MATERIALITIES +MATERIALITY +MATERIALIZATION +MATERIALIZE +MATERIALIZED +MATERIALIZER +MATERIALIZERS +MATERIALIZES +MATERIALIZING +MATERIALLY +MATERIALNESS +MATERIALNESSES +MATERIALS +MATERIEL +MATERIELS +MATERNAL +MATERNALLY +MATERNITIES +MATERNITY +MATERS +MATES +MATESHIP +MATESHIPS +MATEY +MATEYNESS +MATEYNESSES +MATEYS +MATH +MATHEMATIC +MATHEMATICAL +MATHEMATICALLY +MATHEMATICIAN +MATHEMATICIANS +MATHEMATICS +MATHEMATIZATION +MATHEMATIZE +MATHEMATIZED +MATHEMATIZES +MATHEMATIZING +MATHS +MATIER +MATIEST +MATILDA +MATILDAS +MATIN +MATINAL +MATINEE +MATINEES +MATINESS +MATINESSES +MATING +MATINGS +MATINS +MATLESS +MATRASS +MATRASSES +MATRES +MATRIARCH +MATRIARCHAL +MATRIARCHATE +MATRIARCHATES +MATRIARCHIES +MATRIARCHS +MATRIARCHY +MATRICES +MATRICIDAL +MATRICIDE +MATRICIDES +MATRICULANT +MATRICULANTS +MATRICULATE +MATRICULATED +MATRICULATES +MATRICULATING +MATRICULATION +MATRICULATIONS +MATRILINEAL +MATRILINEALLY +MATRIMONIAL +MATRIMONIALLY +MATRIMONIES +MATRIMONY +MATRIX +MATRIXES +MATRON +MATRONAL +MATRONIZE +MATRONIZED +MATRONIZES +MATRONIZING +MATRONLY +MATRONS +MATRONYMIC +MATRONYMICS +MATS +MATSAH +MATSAHS +MATSUTAKE +MATSUTAKES +MATT +MATTE +MATTED +MATTEDLY +MATTER +MATTERED +MATTERFUL +MATTERING +MATTERS +MATTERY +MATTES +MATTIN +MATTING +MATTINGS +MATTINS +MATTOCK +MATTOCKS +MATTOID +MATTOIDS +MATTRASS +MATTRASSES +MATTRESS +MATTRESSES +MATTS +MATURATE +MATURATED +MATURATES +MATURATING +MATURATION +MATURATIONAL +MATURATIONS +MATURE +MATURED +MATURELY +MATURER +MATURERS +MATURES +MATUREST +MATURING +MATURITIES +MATURITY +MATUTINAL +MATUTINALLY +MATZA +MATZAH +MATZAHS +MATZAS +MATZO +MATZOH +MATZOHS +MATZOON +MATZOONS +MATZOS +MATZOT +MATZOTH +MAUD +MAUDLIN +MAUDLINLY +MAUDS +MAUGER +MAUGRE +MAUL +MAULED +MAULER +MAULERS +MAULING +MAULS +MAULSTICK +MAULSTICKS +MAUMET +MAUMETRIES +MAUMETRY +MAUMETS +MAUN +MAUND +MAUNDER +MAUNDERED +MAUNDERER +MAUNDERERS +MAUNDERING +MAUNDERS +MAUNDIES +MAUNDS +MAUNDY +MAUSOLEA +MAUSOLEAN +MAUSOLEUM +MAUSOLEUMS +MAUT +MAUTS +MAUVE +MAUVES +MAVEN +MAVENS +MAVERICK +MAVERICKS +MAVIE +MAVIES +MAVIN +MAVINS +MAVIS +MAVISES +MAVOURNEEN +MAVOURNEENS +MAVOURNIN +MAVOURNINS +MAW +MAWED +MAWING +MAWKISH +MAWKISHLY +MAWKISHNESS +MAWKISHNESSES +MAWN +MAWS +MAX +MAXED +MAXES +MAXI +MAXICOAT +MAXICOATS +MAXILLA +MAXILLAE +MAXILLARIES +MAXILLARY +MAXILLAS +MAXILLIPED +MAXILLIPEDS +MAXILLOFACIAL +MAXIM +MAXIMA +MAXIMAL +MAXIMALIST +MAXIMALISTS +MAXIMALLY +MAXIMALS +MAXIMIN +MAXIMINS +MAXIMISE +MAXIMISED +MAXIMISES +MAXIMISING +MAXIMITE +MAXIMITES +MAXIMIZATION +MAXIMIZATIONS +MAXIMIZE +MAXIMIZED +MAXIMIZER +MAXIMIZERS +MAXIMIZES +MAXIMIZING +MAXIMS +MAXIMUM +MAXIMUMLY +MAXIMUMS +MAXING +MAXIS +MAXIXE +MAXIXES +MAXWELL +MAXWELLS +MAY +MAYA +MAYAN +MAYAPPLE +MAYAPPLES +MAYAS +MAYBE +MAYBES +MAYBIRD +MAYBIRDS +MAYBUSH +MAYBUSHES +MAYDAY +MAYDAYS +MAYED +MAYEST +MAYFLIES +MAYFLOWER +MAYFLOWERS +MAYFLY +MAYHAP +MAYHAPPEN +MAYHEM +MAYHEMS +MAYING +MAYINGS +MAYO +MAYONNAISE +MAYONNAISES +MAYOR +MAYORAL +MAYORALTIES +MAYORALTY +MAYORESS +MAYORESSES +MAYORS +MAYORSHIP +MAYORSHIPS +MAYOS +MAYPOLE +MAYPOLES +MAYPOP +MAYPOPS +MAYS +MAYST +MAYVIN +MAYVINS +MAYWEED +MAYWEEDS +MAZAEDIA +MAZAEDIUM +MAZARD +MAZARDS +MAZE +MAZED +MAZEDLY +MAZEDNESS +MAZEDNESSES +MAZELIKE +MAZELTOV +MAZER +MAZERS +MAZES +MAZIER +MAZIEST +MAZILY +MAZINESS +MAZINESSES +MAZING +MAZOURKA +MAZOURKAS +MAZUMA +MAZUMAS +MAZURKA +MAZURKAS +MAZY +MAZZARD +MAZZARDS +MBAQANGA +MBAQANGAS +MBIRA +MBIRAS +ME +MEAD +MEADOW +MEADOWLAND +MEADOWLANDS +MEADOWLARK +MEADOWLARKS +MEADOWS +MEADOWSWEET +MEADOWSWEETS +MEADOWY +MEADS +MEAGER +MEAGERLY +MEAGERNESS +MEAGERNESSES +MEAGRE +MEAGRELY +MEAL +MEALIE +MEALIER +MEALIES +MEALIEST +MEALINESS +MEALINESSES +MEALLESS +MEALS +MEALTIME +MEALTIMES +MEALWORM +MEALWORMS +MEALY +MEALYBUG +MEALYBUGS +MEALYMOUTHED +MEAN +MEANDER +MEANDERED +MEANDERER +MEANDERERS +MEANDERING +MEANDERS +MEANDROUS +MEANER +MEANERS +MEANEST +MEANIE +MEANIES +MEANING +MEANINGFUL +MEANINGFULLY +MEANINGFULNESS +MEANINGLESS +MEANINGLESSLY +MEANINGLESSNESS +MEANINGLY +MEANINGS +MEANLY +MEANNESS +MEANNESSES +MEANS +MEANT +MEANTIME +MEANTIMES +MEANWHILE +MEANWHILES +MEANY +MEASLE +MEASLED +MEASLES +MEASLIER +MEASLIEST +MEASLY +MEASURABILITIES +MEASURABILITY +MEASURABLE +MEASURABLY +MEASURE +MEASURED +MEASUREDLY +MEASURELESS +MEASUREMENT +MEASUREMENTS +MEASURER +MEASURERS +MEASURES +MEASURING +MEAT +MEATAL +MEATBALL +MEATBALLS +MEATED +MEATHEAD +MEATHEADS +MEATIER +MEATIEST +MEATILY +MEATINESS +MEATINESSES +MEATLESS +MEATLOAF +MEATLOAVES +MEATMAN +MEATMEN +MEATPACKING +MEATPACKINGS +MEATS +MEATUS +MEATUSES +MEATY +MECAMYLAMINE +MECAMYLAMINES +MECCA +MECCAS +MECHANIC +MECHANICAL +MECHANICALLY +MECHANICALS +MECHANICIAN +MECHANICIANS +MECHANICS +MECHANISM +MECHANISMS +MECHANIST +MECHANISTIC +MECHANISTICALLY +MECHANISTS +MECHANIZABLE +MECHANIZATION +MECHANIZATIONS +MECHANIZE +MECHANIZED +MECHANIZER +MECHANIZERS +MECHANIZES +MECHANIZING +MECHANOCHEMICAL +MECHANORECEPTOR +MECHITZA +MECHITZAS +MECHITZOT +MECLIZINE +MECLIZINES +MECONIUM +MECONIUMS +MED +MEDAILLON +MEDAILLONS +MEDAKA +MEDAKAS +MEDAL +MEDALED +MEDALING +MEDALIST +MEDALISTS +MEDALLED +MEDALLIC +MEDALLING +MEDALLION +MEDALLIONS +MEDALLIST +MEDALLISTS +MEDALS +MEDDLE +MEDDLED +MEDDLER +MEDDLERS +MEDDLES +MEDDLESOME +MEDDLESOMENESS +MEDDLING +MEDEVAC +MEDEVACED +MEDEVACING +MEDEVACKED +MEDEVACKING +MEDEVACS +MEDFLIES +MEDFLY +MEDIA +MEDIACIES +MEDIACY +MEDIAD +MEDIAE +MEDIAEVAL +MEDIAEVALS +MEDIAGENIC +MEDIAL +MEDIALLY +MEDIALS +MEDIAN +MEDIANLY +MEDIANS +MEDIANT +MEDIANTS +MEDIAS +MEDIASTINA +MEDIASTINAL +MEDIASTINUM +MEDIATE +MEDIATED +MEDIATELY +MEDIATES +MEDIATING +MEDIATION +MEDIATIONAL +MEDIATIONS +MEDIATIVE +MEDIATIZE +MEDIATIZED +MEDIATIZES +MEDIATIZING +MEDIATOR +MEDIATORS +MEDIATORY +MEDIATRICES +MEDIATRIX +MEDIATRIXES +MEDIC +MEDICABLE +MEDICAID +MEDICAIDS +MEDICAL +MEDICALLY +MEDICALS +MEDICAMENT +MEDICAMENTOUS +MEDICAMENTS +MEDICANT +MEDICANTS +MEDICARE +MEDICARES +MEDICATE +MEDICATED +MEDICATES +MEDICATING +MEDICATION +MEDICATIONS +MEDICIDE +MEDICIDES +MEDICINABLE +MEDICINAL +MEDICINALLY +MEDICINALS +MEDICINE +MEDICINED +MEDICINES +MEDICINING +MEDICK +MEDICKS +MEDICO +MEDICOLEGAL +MEDICOS +MEDICS +MEDIEVAL +MEDIEVALISM +MEDIEVALISMS +MEDIEVALIST +MEDIEVALISTS +MEDIEVALLY +MEDIEVALS +MEDIGAP +MEDIGAPS +MEDII +MEDINA +MEDINAS +MEDIOCRE +MEDIOCRITIES +MEDIOCRITY +MEDITATE +MEDITATED +MEDITATES +MEDITATING +MEDITATION +MEDITATIONS +MEDITATIVE +MEDITATIVELY +MEDITATIVENESS +MEDITATOR +MEDITATORS +MEDITERRANEAN +MEDIUM +MEDIUMISTIC +MEDIUMS +MEDIUMSHIP +MEDIUMSHIPS +MEDIUS +MEDIVAC +MEDIVACED +MEDIVACING +MEDIVACKED +MEDIVACKING +MEDIVACS +MEDLAR +MEDLARS +MEDLEY +MEDLEYS +MEDS +MEDULLA +MEDULLAE +MEDULLAR +MEDULLARY +MEDULLAS +MEDULLATED +MEDULLOBLASTOMA +MEDUSA +MEDUSAE +MEDUSAL +MEDUSAN +MEDUSANS +MEDUSAS +MEDUSOID +MEDUSOIDS +MEED +MEEDS +MEEK +MEEKER +MEEKEST +MEEKLY +MEEKNESS +MEEKNESSES +MEERKAT +MEERKATS +MEERSCHAUM +MEERSCHAUMS +MEET +MEETER +MEETERS +MEETING +MEETINGHOUSE +MEETINGHOUSES +MEETINGS +MEETLY +MEETNESS +MEETNESSES +MEETS +MEG +MEGA +MEGABAR +MEGABARS +MEGABIT +MEGABITS +MEGABUCK +MEGABUCKS +MEGABYTE +MEGABYTES +MEGACITIES +MEGACITY +MEGACORPORATION +MEGACYCLE +MEGACYCLES +MEGADEAL +MEGADEALS +MEGADEATH +MEGADEATHS +MEGADOSE +MEGADOSES +MEGADYNE +MEGADYNES +MEGAFAUNA +MEGAFAUNAE +MEGAFAUNAL +MEGAFAUNAS +MEGAFLOP +MEGAFLOPS +MEGAGAMETE +MEGAGAMETES +MEGAGAMETOPHYTE +MEGAHERTZ +MEGAHERTZES +MEGAHIT +MEGAHITS +MEGAKARYOCYTE +MEGAKARYOCYTES +MEGAKARYOCYTIC +MEGALITH +MEGALITHIC +MEGALITHS +MEGALOBLAST +MEGALOBLASTIC +MEGALOBLASTS +MEGALOMANIA +MEGALOMANIAC +MEGALOMANIACAL +MEGALOMANIACS +MEGALOMANIAS +MEGALOMANIC +MEGALOPIC +MEGALOPOLIS +MEGALOPOLISES +MEGALOPOLITAN +MEGALOPOLITANS +MEGALOPS +MEGALOPSES +MEGAPARSEC +MEGAPARSECS +MEGAPHONE +MEGAPHONED +MEGAPHONES +MEGAPHONIC +MEGAPHONING +MEGAPIXEL +MEGAPIXELS +MEGAPLEX +MEGAPLEXES +MEGAPOD +MEGAPODE +MEGAPODES +MEGAPODS +MEGAPROJECT +MEGAPROJECTS +MEGARA +MEGARON +MEGASCOPIC +MEGASCOPICALLY +MEGASPORANGIA +MEGASPORANGIUM +MEGASPORE +MEGASPORES +MEGASPORIC +MEGASPOROPHYLL +MEGASPOROPHYLLS +MEGASS +MEGASSE +MEGASSES +MEGASTAR +MEGASTARS +MEGATHERE +MEGATHERES +MEGATON +MEGATONNAGE +MEGATONNAGES +MEGATONS +MEGAVITAMIN +MEGAVITAMINS +MEGAVOLT +MEGAVOLTS +MEGAWATT +MEGAWATTS +MEGILLA +MEGILLAH +MEGILLAHS +MEGILLAS +MEGILP +MEGILPH +MEGILPHS +MEGILPS +MEGOHM +MEGOHMS +MEGRIM +MEGRIMS +MEGS +MEHNDI +MEHNDIS +MEIKLE +MEINIE +MEINIES +MEINY +MEIOSES +MEIOSIS +MEIOTIC +MEIOTICALLY +MEISTER +MEISTERS +MEITNERIUM +MEITNERIUMS +MEL +MELALEUCA +MELALEUCAS +MELAMDIM +MELAMED +MELAMINE +MELAMINES +MELANCHOLIA +MELANCHOLIAC +MELANCHOLIACS +MELANCHOLIAS +MELANCHOLIC +MELANCHOLICS +MELANCHOLIES +MELANCHOLY +MELANGE +MELANGES +MELANIAN +MELANIC +MELANICS +MELANIN +MELANINS +MELANISM +MELANISMS +MELANIST +MELANISTIC +MELANISTS +MELANITE +MELANITES +MELANITIC +MELANIZATION +MELANIZATIONS +MELANIZE +MELANIZED +MELANIZES +MELANIZING +MELANOBLAST +MELANOBLASTS +MELANOCYTE +MELANOCYTES +MELANOGENESES +MELANOGENESIS +MELANOID +MELANOIDS +MELANOMA +MELANOMAS +MELANOMATA +MELANOPHORE +MELANOPHORES +MELANOSES +MELANOSIS +MELANOSOME +MELANOSOMES +MELANOTIC +MELANOUS +MELAPHYRE +MELAPHYRES +MELASTOME +MELATONIN +MELATONINS +MELD +MELDED +MELDER +MELDERS +MELDING +MELDS +MELEE +MELEES +MELENA +MELENAS +MELIC +MELILITE +MELILITES +MELILOT +MELILOTS +MELINITE +MELINITES +MELIORATE +MELIORATED +MELIORATES +MELIORATING +MELIORATION +MELIORATIONS +MELIORATIVE +MELIORATOR +MELIORATORS +MELIORISM +MELIORISMS +MELIORIST +MELIORISTIC +MELIORISTS +MELISMA +MELISMAS +MELISMATA +MELISMATIC +MELL +MELLED +MELLIFIC +MELLIFLUENT +MELLIFLUENTLY +MELLIFLUOUS +MELLIFLUOUSLY +MELLIFLUOUSNESS +MELLING +MELLOPHONE +MELLOPHONES +MELLOTRON +MELLOTRONS +MELLOW +MELLOWED +MELLOWER +MELLOWEST +MELLOWING +MELLOWLY +MELLOWNESS +MELLOWNESSES +MELLOWS +MELLS +MELODEON +MELODEONS +MELODIA +MELODIAS +MELODIC +MELODICA +MELODICALLY +MELODICAS +MELODIES +MELODIOUS +MELODIOUSLY +MELODIOUSNESS +MELODIOUSNESSES +MELODISE +MELODISED +MELODISES +MELODISING +MELODIST +MELODISTS +MELODIZE +MELODIZED +MELODIZER +MELODIZERS +MELODIZES +MELODIZING +MELODRAMA +MELODRAMAS +MELODRAMATIC +MELODRAMATICS +MELODRAMATISE +MELODRAMATISED +MELODRAMATISES +MELODRAMATISING +MELODRAMATIST +MELODRAMATISTS +MELODRAMATIZE +MELODRAMATIZED +MELODRAMATIZES +MELODRAMATIZING +MELODY +MELOID +MELOIDS +MELON +MELONGENE +MELONGENES +MELONS +MELPHALAN +MELPHALANS +MELS +MELT +MELTABILITIES +MELTABILITY +MELTABLE +MELTAGE +MELTAGES +MELTDOWN +MELTDOWNS +MELTED +MELTER +MELTERS +MELTING +MELTINGLY +MELTON +MELTONS +MELTS +MELTWATER +MELTWATERS +MELTY +MEM +MEMBER +MEMBERED +MEMBERS +MEMBERSHIP +MEMBERSHIPS +MEMBRANAL +MEMBRANE +MEMBRANED +MEMBRANES +MEMBRANOUS +MEMBRANOUSLY +MEME +MEMENTO +MEMENTOES +MEMENTOS +MEMES +MEMETICS +MEMO +MEMOIR +MEMOIRIST +MEMOIRISTS +MEMOIRS +MEMORABILIA +MEMORABILITIES +MEMORABILITY +MEMORABLE +MEMORABLENESS +MEMORABLENESSES +MEMORABLY +MEMORANDA +MEMORANDUM +MEMORANDUMS +MEMORIAL +MEMORIALISE +MEMORIALISED +MEMORIALISES +MEMORIALISING +MEMORIALIST +MEMORIALISTS +MEMORIALIZE +MEMORIALIZED +MEMORIALIZES +MEMORIALIZING +MEMORIALLY +MEMORIALS +MEMORIES +MEMORISE +MEMORISED +MEMORISES +MEMORISING +MEMORITER +MEMORIZABLE +MEMORIZATION +MEMORIZATIONS +MEMORIZE +MEMORIZED +MEMORIZER +MEMORIZERS +MEMORIZES +MEMORIZING +MEMORY +MEMOS +MEMS +MEMSAHIB +MEMSAHIBS +MEN +MENACE +MENACED +MENACER +MENACERS +MENACES +MENACING +MENACINGLY +MENAD +MENADIONE +MENADIONES +MENADS +MENAGE +MENAGERIE +MENAGERIES +MENAGES +MENARCHE +MENARCHEAL +MENARCHES +MENAZON +MENAZONS +MEND +MENDABLE +MENDACIOUS +MENDACIOUSLY +MENDACIOUSNESS +MENDACITIES +MENDACITY +MENDED +MENDELEVIUM +MENDELEVIUMS +MENDER +MENDERS +MENDICANCIES +MENDICANCY +MENDICANT +MENDICANTS +MENDICITIES +MENDICITY +MENDIGO +MENDIGOS +MENDING +MENDINGS +MENDS +MENFOLK +MENFOLKS +MENHADEN +MENHADENS +MENHIR +MENHIRS +MENIAL +MENIALLY +MENIALS +MENINGEAL +MENINGES +MENINGIOMA +MENINGIOMAS +MENINGIOMATA +MENINGITIC +MENINGITIDES +MENINGITIS +MENINGOCOCCAL +MENINGOCOCCI +MENINGOCOCCIC +MENINGOCOCCUS +MENINX +MENISCAL +MENISCATE +MENISCI +MENISCOID +MENISCUS +MENISCUSES +MENO +MENOLOGIES +MENOLOGY +MENOPAUSAL +MENOPAUSE +MENOPAUSES +MENORAH +MENORAHS +MENORRHAGIA +MENORRHAGIAS +MENORRHEA +MENORRHEAS +MENSA +MENSAE +MENSAL +MENSAS +MENSCH +MENSCHEN +MENSCHES +MENSCHY +MENSE +MENSED +MENSEFUL +MENSELESS +MENSERVANTS +MENSES +MENSH +MENSHEN +MENSHES +MENSING +MENSTRUA +MENSTRUAL +MENSTRUALLY +MENSTRUATE +MENSTRUATED +MENSTRUATES +MENSTRUATING +MENSTRUATION +MENSTRUATIONS +MENSTRUUM +MENSTRUUMS +MENSURABILITIES +MENSURABILITY +MENSURABLE +MENSURAL +MENSURATION +MENSURATIONS +MENSWEAR +MENTA +MENTAL +MENTALESE +MENTALESES +MENTALISM +MENTALISMS +MENTALIST +MENTALISTIC +MENTALISTS +MENTALITIES +MENTALITY +MENTALLY +MENTATION +MENTATIONS +MENTEE +MENTEES +MENTHENE +MENTHENES +MENTHOL +MENTHOLATED +MENTHOLS +MENTION +MENTIONABLE +MENTIONED +MENTIONER +MENTIONERS +MENTIONING +MENTIONS +MENTOR +MENTORED +MENTORING +MENTORS +MENTORSHIP +MENTORSHIPS +MENTUM +MENU +MENUDO +MENUDOS +MENUS +MEOU +MEOUED +MEOUING +MEOUS +MEOW +MEOWED +MEOWING +MEOWS +MEPERIDINE +MEPERIDINES +MEPHITIC +MEPHITIS +MEPHITISES +MEPROBAMATE +MEPROBAMATES +MERBROMIN +MERBROMINS +MERC +MERCANTILE +MERCANTILISM +MERCANTILISMS +MERCANTILIST +MERCANTILISTIC +MERCANTILISTS +MERCAPTAN +MERCAPTANS +MERCAPTO +MERCAPTOPURINE +MERCAPTOPURINES +MERCENARIES +MERCENARILY +MERCENARINESS +MERCENARINESSES +MERCENARY +MERCER +MERCERIES +MERCERISE +MERCERISED +MERCERISES +MERCERISING +MERCERIZATION +MERCERIZATIONS +MERCERIZE +MERCERIZED +MERCERIZES +MERCERIZING +MERCERS +MERCERY +MERCES +MERCH +MERCHANDISE +MERCHANDISED +MERCHANDISER +MERCHANDISERS +MERCHANDISES +MERCHANDISING +MERCHANDISINGS +MERCHANDIZE +MERCHANDIZED +MERCHANDIZES +MERCHANDIZING +MERCHANDIZINGS +MERCHANT +MERCHANTABILITY +MERCHANTABLE +MERCHANTED +MERCHANTING +MERCHANTMAN +MERCHANTMEN +MERCHANTS +MERCHES +MERCIES +MERCIFUL +MERCIFULLY +MERCIFULNESS +MERCIFULNESSES +MERCILESS +MERCILESSLY +MERCILESSNESS +MERCILESSNESSES +MERCS +MERCURATE +MERCURATED +MERCURATES +MERCURATING +MERCURATION +MERCURATIONS +MERCURIAL +MERCURIALLY +MERCURIALNESS +MERCURIALNESSES +MERCURIALS +MERCURIC +MERCURIES +MERCUROUS +MERCURY +MERCY +MERDE +MERDES +MERE +MERELY +MERENGUE +MERENGUES +MERER +MERES +MEREST +MERETRICIOUS +MERETRICIOUSLY +MERGANSER +MERGANSERS +MERGE +MERGED +MERGEE +MERGEES +MERGENCE +MERGENCES +MERGER +MERGERS +MERGES +MERGING +MERIDIAN +MERIDIANS +MERIDIONAL +MERIDIONALLY +MERIDIONALS +MERINGUE +MERINGUES +MERINO +MERINOS +MERISES +MERISIS +MERISTEM +MERISTEMATIC +MERISTEMS +MERISTIC +MERISTICALLY +MERIT +MERITED +MERITING +MERITLESS +MERITOCRACIES +MERITOCRACY +MERITOCRAT +MERITOCRATIC +MERITOCRATS +MERITORIOUS +MERITORIOUSLY +MERITORIOUSNESS +MERITS +MERK +MERKS +MERL +MERLE +MERLES +MERLIN +MERLINS +MERLON +MERLONS +MERLOT +MERLOTS +MERLS +MERMAID +MERMAIDS +MERMAN +MERMEN +MEROBLASTIC +MEROBLASTICALLY +MEROCRINE +MEROMORPHIC +MEROMYOSIN +MEROMYOSINS +MEROPIA +MEROPIAS +MEROPIC +MEROZOITE +MEROZOITES +MERRIER +MERRIEST +MERRILY +MERRIMENT +MERRIMENTS +MERRINESS +MERRINESSES +MERRY +MERRYMAKER +MERRYMAKERS +MERRYMAKING +MERRYMAKINGS +MERRYTHOUGHT +MERRYTHOUGHTS +MESA +MESALLIANCE +MESALLIANCES +MESALLY +MESARCH +MESAS +MESCAL +MESCALINE +MESCALINES +MESCALS +MESCLUN +MESCLUNS +MESDAMES +MESDEMOISELLES +MESEEMED +MESEEMETH +MESEEMS +MESENCEPHALA +MESENCEPHALIC +MESENCEPHALON +MESENCHYMAL +MESENCHYME +MESENCHYMES +MESENTERA +MESENTERIC +MESENTERIES +MESENTERON +MESENTERY +MESH +MESHED +MESHES +MESHIER +MESHIEST +MESHING +MESHUGA +MESHUGAAS +MESHUGAH +MESHUGGA +MESHUGGAH +MESHUGGE +MESHUGGENER +MESHUGGENERS +MESHWORK +MESHWORKS +MESHY +MESIAL +MESIALLY +MESIAN +MESIC +MESICALLY +MESMERIC +MESMERICALLY +MESMERISE +MESMERISED +MESMERISES +MESMERISING +MESMERISM +MESMERISMS +MESMERIST +MESMERISTS +MESMERIZE +MESMERIZED +MESMERIZER +MESMERIZERS +MESMERIZES +MESMERIZING +MESNALTIES +MESNALTY +MESNE +MESNES +MESOBLAST +MESOBLASTS +MESOCARP +MESOCARPS +MESOCRANIES +MESOCRANY +MESOCYCLONE +MESOCYCLONES +MESODERM +MESODERMAL +MESODERMS +MESOGLEA +MESOGLEAL +MESOGLEAS +MESOGLOEA +MESOGLOEAS +MESOMERE +MESOMERES +MESOMORPH +MESOMORPHIC +MESOMORPHIES +MESOMORPHS +MESOMORPHY +MESON +MESONEPHRIC +MESONEPHROI +MESONEPHROS +MESONIC +MESONS +MESOPAUSE +MESOPAUSES +MESOPELAGIC +MESOPHYL +MESOPHYLL +MESOPHYLLIC +MESOPHYLLOUS +MESOPHYLLS +MESOPHYLS +MESOPHYTE +MESOPHYTES +MESOPHYTIC +MESOSCALE +MESOSOME +MESOSOMES +MESOSPHERE +MESOSPHERES +MESOSPHERIC +MESOTHELIA +MESOTHELIAL +MESOTHELIOMA +MESOTHELIOMAS +MESOTHELIOMATA +MESOTHELIUM +MESOTHORACES +MESOTHORACIC +MESOTHORAX +MESOTHORAXES +MESOTRON +MESOTRONS +MESOTROPHIC +MESOZOAN +MESOZOANS +MESOZOIC +MESQUIT +MESQUITE +MESQUITES +MESQUITS +MESS +MESSAGE +MESSAGED +MESSAGES +MESSAGING +MESSALINE +MESSALINES +MESSAN +MESSANS +MESSED +MESSEIGNEURS +MESSENGER +MESSENGERED +MESSENGERING +MESSENGERS +MESSES +MESSIAH +MESSIAHS +MESSIAHSHIP +MESSIAHSHIPS +MESSIANIC +MESSIANISM +MESSIANISMS +MESSIER +MESSIEST +MESSIEURS +MESSILY +MESSINESS +MESSINESSES +MESSING +MESSMAN +MESSMATE +MESSMATES +MESSMEN +MESSUAGE +MESSUAGES +MESSY +MESTEE +MESTEES +MESTESO +MESTESOES +MESTESOS +MESTINO +MESTINOES +MESTINOS +MESTIZA +MESTIZAS +MESTIZO +MESTIZOES +MESTIZOS +MESTRANOL +MESTRANOLS +MET +META +METABOLIC +METABOLICALLY +METABOLISM +METABOLISMS +METABOLITE +METABOLITES +METABOLIZABLE +METABOLIZE +METABOLIZED +METABOLIZES +METABOLIZING +METACARPAL +METACARPALS +METACARPI +METACARPUS +METACENTER +METACENTERS +METACENTRIC +METACENTRICS +METACERCARIA +METACERCARIAE +METACERCARIAL +METACHROMATIC +METAETHICAL +METAETHICS +METAFICTION +METAFICTIONAL +METAFICTIONIST +METAFICTIONISTS +METAFICTIONS +METAGALACTIC +METAGALAXIES +METAGALAXY +METAGE +METAGENESES +METAGENESIS +METAGENETIC +METAGENIC +METAGES +METAL +METALANGUAGE +METALANGUAGES +METALED +METALHEAD +METALHEADS +METALING +METALINGUISTIC +METALINGUISTICS +METALISE +METALISED +METALISES +METALISING +METALIST +METALISTS +METALIZE +METALIZED +METALIZES +METALIZING +METALLED +METALLIC +METALLICALLY +METALLICS +METALLIFEROUS +METALLIKE +METALLINE +METALLING +METALLIST +METALLISTS +METALLIZATION +METALLIZATIONS +METALLIZE +METALLIZED +METALLIZES +METALLIZING +METALLOGRAPHER +METALLOGRAPHERS +METALLOGRAPHIC +METALLOGRAPHIES +METALLOGRAPHY +METALLOID +METALLOIDAL +METALLOIDS +METALLOPHONE +METALLOPHONES +METALLURGICAL +METALLURGICALLY +METALLURGIES +METALLURGIST +METALLURGISTS +METALLURGY +METALMARK +METALMARKS +METALS +METALSMITH +METALSMITHS +METALWARE +METALWARES +METALWORK +METALWORKER +METALWORKERS +METALWORKING +METALWORKINGS +METALWORKS +METAMATHEMATICS +METAMER +METAMERE +METAMERES +METAMERIC +METAMERICALLY +METAMERISM +METAMERISMS +METAMERS +METAMORPHIC +METAMORPHICALLY +METAMORPHISM +METAMORPHISMS +METAMORPHOSE +METAMORPHOSED +METAMORPHOSES +METAMORPHOSING +METAMORPHOSIS +METANALYSES +METANALYSIS +METANEPHRIC +METANEPHROI +METANEPHROS +METAPHASE +METAPHASES +METAPHOR +METAPHORIC +METAPHORICAL +METAPHORICALLY +METAPHORS +METAPHOSPHATE +METAPHOSPHATES +METAPHRASE +METAPHRASES +METAPHYSIC +METAPHYSICAL +METAPHYSICALLY +METAPHYSICIAN +METAPHYSICIANS +METAPHYSICS +METAPLASIA +METAPLASIAS +METAPLASM +METAPLASMS +METAPLASTIC +METAPSYCHOLOGY +METASEQUOIA +METASEQUOIAS +METASOMATIC +METASOMATISM +METASOMATISMS +METASTABILITIES +METASTABILITY +METASTABLE +METASTABLY +METASTASES +METASTASIS +METASTASIZE +METASTASIZED +METASTASIZES +METASTASIZING +METASTATIC +METASTATICALLY +METATAG +METATAGS +METATARSAL +METATARSALS +METATARSI +METATARSUS +METATE +METATES +METATHESES +METATHESIS +METATHETIC +METATHETICAL +METATHETICALLY +METATHORACES +METATHORACIC +METATHORAX +METATHORAXES +METAXYLEM +METAXYLEMS +METAZOA +METAZOAL +METAZOAN +METAZOANS +METAZOIC +METAZOON +METE +METED +METEMPSYCHOSES +METEMPSYCHOSIS +METENCEPHALA +METENCEPHALIC +METENCEPHALON +METEOR +METEORIC +METEORICALLY +METEORITE +METEORITES +METEORITIC +METEORITICAL +METEORITICIST +METEORITICISTS +METEORITICS +METEOROID +METEOROIDAL +METEOROIDS +METEOROLOGIC +METEOROLOGICAL +METEOROLOGIES +METEOROLOGIST +METEOROLOGISTS +METEOROLOGY +METEORS +METEPA +METEPAS +METER +METERAGE +METERAGES +METERED +METERING +METERS +METERSTICK +METERSTICKS +METES +METESTRUS +METESTRUSES +METFORMIN +METFORMINS +METH +METHACRYLATE +METHACRYLATES +METHADON +METHADONE +METHADONES +METHADONS +METHAMPHETAMINE +METHANATION +METHANATIONS +METHANE +METHANES +METHANOL +METHANOLS +METHAQUALONE +METHAQUALONES +METHEDRINE +METHEDRINES +METHEGLIN +METHEGLINS +METHEMOGLOBIN +METHEMOGLOBINS +METHENAMINE +METHENAMINES +METHICILLIN +METHICILLINS +METHINKS +METHIONINE +METHIONINES +METHOD +METHODIC +METHODICAL +METHODICALLY +METHODICALNESS +METHODISE +METHODISED +METHODISES +METHODISING +METHODISM +METHODISMS +METHODIST +METHODISTIC +METHODISTS +METHODIZE +METHODIZED +METHODIZES +METHODIZING +METHODOLOGICAL +METHODOLOGIES +METHODOLOGIST +METHODOLOGISTS +METHODOLOGY +METHODS +METHOTREXATE +METHOTREXATES +METHOUGHT +METHOXIDE +METHOXIDES +METHOXY +METHOXYCHLOR +METHOXYCHLORS +METHOXYFLURANE +METHOXYFLURANES +METHOXYL +METHS +METHYL +METHYLAL +METHYLALS +METHYLAMINE +METHYLAMINES +METHYLASE +METHYLASES +METHYLATE +METHYLATED +METHYLATES +METHYLATING +METHYLATION +METHYLATIONS +METHYLATOR +METHYLATORS +METHYLCELLULOSE +METHYLDOPA +METHYLDOPAS +METHYLENE +METHYLENES +METHYLIC +METHYLMERCURIES +METHYLMERCURY +METHYLPHENIDATE +METHYLS +METHYLXANTHINE +METHYLXANTHINES +METHYSERGIDE +METHYSERGIDES +METICAIS +METICAL +METICALS +METICULOSITIES +METICULOSITY +METICULOUS +METICULOUSLY +METICULOUSNESS +METIER +METIERS +METING +METIS +METISSE +METISSES +METOL +METOLS +METONYM +METONYMIC +METONYMICAL +METONYMIES +METONYMS +METONYMY +METOPAE +METOPE +METOPES +METOPIC +METOPON +METOPONS +METRALGIA +METRALGIAS +METRAZOL +METRAZOLS +METRE +METRED +METRES +METRIC +METRICAL +METRICALLY +METRICATE +METRICATED +METRICATES +METRICATING +METRICATION +METRICATIONS +METRICISM +METRICISMS +METRICIZE +METRICIZED +METRICIZES +METRICIZING +METRICS +METRIFIED +METRIFIES +METRIFY +METRIFYING +METRING +METRIST +METRISTS +METRITIS +METRITISES +METRO +METROLOGICAL +METROLOGIES +METROLOGIST +METROLOGISTS +METROLOGY +METRONIDAZOLE +METRONIDAZOLES +METRONOME +METRONOMES +METRONOMIC +METRONOMICAL +METRONOMICALLY +METROPLEX +METROPLEXES +METROPOLIS +METROPOLISES +METROPOLITAN +METROPOLITANS +METRORRHAGIA +METRORRHAGIAS +METROS +METTLE +METTLED +METTLES +METTLESOME +METUMP +METUMPS +MEUNIERE +MEW +MEWED +MEWING +MEWL +MEWLED +MEWLER +MEWLERS +MEWLING +MEWLS +MEWS +MEZCAL +MEZCALS +MEZE +MEZEREON +MEZEREONS +MEZEREUM +MEZEREUMS +MEZES +MEZQUIT +MEZQUITE +MEZQUITES +MEZQUITS +MEZUZA +MEZUZAH +MEZUZAHS +MEZUZAS +MEZUZOT +MEZUZOTH +MEZZALUNA +MEZZALUNAS +MEZZANINE +MEZZANINES +MEZZO +MEZZOS +MEZZOTINT +MEZZOTINTED +MEZZOTINTING +MEZZOTINTS +MHO +MHOS +MI +MIAOU +MIAOUED +MIAOUING +MIAOUS +MIAOW +MIAOWED +MIAOWING +MIAOWS +MIASM +MIASMA +MIASMAL +MIASMAS +MIASMATA +MIASMATIC +MIASMIC +MIASMICALLY +MIASMS +MIAUL +MIAULED +MIAULING +MIAULS +MIB +MIBS +MIC +MICA +MICACEOUS +MICAS +MICAWBER +MICAWBERS +MICE +MICELL +MICELLA +MICELLAE +MICELLAR +MICELLE +MICELLES +MICELLS +MICHE +MICHED +MICHES +MICHING +MICK +MICKEY +MICKEYS +MICKLE +MICKLER +MICKLES +MICKLEST +MICKS +MICRA +MICRIFIED +MICRIFIES +MICRIFY +MICRIFYING +MICRO +MICROAMPERE +MICROAMPERES +MICROANALYSES +MICROANALYSIS +MICROANALYST +MICROANALYSTS +MICROANALYTIC +MICROANALYTICAL +MICROANATOMICAL +MICROANATOMIES +MICROANATOMY +MICROBALANCE +MICROBALANCES +MICROBAR +MICROBAROGRAPH +MICROBAROGRAPHS +MICROBARS +MICROBE +MICROBEAM +MICROBEAMS +MICROBES +MICROBIAL +MICROBIAN +MICROBIC +MICROBIOLOGIC +MICROBIOLOGICAL +MICROBIOLOGIES +MICROBIOLOGIST +MICROBIOLOGISTS +MICROBIOLOGY +MICROBREW +MICROBREWER +MICROBREWERIES +MICROBREWERS +MICROBREWERY +MICROBREWING +MICROBREWINGS +MICROBREWS +MICROBURST +MICROBURSTS +MICROBUS +MICROBUSES +MICROBUSSES +MICROCAP +MICROCAPSULE +MICROCAPSULES +MICROCASSETTE +MICROCASSETTES +MICROCEPHALIC +MICROCEPHALICS +MICROCEPHALIES +MICROCEPHALY +MICROCHIP +MICROCHIPS +MICROCIRCUIT +MICROCIRCUITRY +MICROCIRCUITS +MICROCLIMATE +MICROCLIMATES +MICROCLIMATIC +MICROCLINE +MICROCLINES +MICROCOCCAL +MICROCOCCI +MICROCOCCUS +MICROCODE +MICROCODES +MICROCOMPUTER +MICROCOMPUTERS +MICROCOPIES +MICROCOPY +MICROCOSM +MICROCOSMIC +MICROCOSMICALLY +MICROCOSMOS +MICROCOSMOSES +MICROCOSMS +MICROCRYSTAL +MICROCRYSTALS +MICROCULTURAL +MICROCULTURE +MICROCULTURES +MICROCURIE +MICROCURIES +MICROCYTE +MICROCYTES +MICROCYTIC +MICRODISSECTION +MICRODONT +MICRODOT +MICRODOTS +MICROEARTHQUAKE +MICROECONOMIC +MICROECONOMICS +MICROELECTRODE +MICROELECTRODES +MICROELECTRONIC +MICROELEMENT +MICROELEMENTS +MICROEVOLUTION +MICROEVOLUTIONS +MICROFARAD +MICROFARADS +MICROFAUNA +MICROFAUNAE +MICROFAUNAL +MICROFAUNAS +MICROFIBRIL +MICROFIBRILLAR +MICROFIBRILS +MICROFICHE +MICROFICHES +MICROFILAMENT +MICROFILAMENTS +MICROFILARIA +MICROFILARIAE +MICROFILARIAL +MICROFILM +MICROFILMABLE +MICROFILMED +MICROFILMER +MICROFILMERS +MICROFILMING +MICROFILMS +MICROFLORA +MICROFLORAE +MICROFLORAL +MICROFLORAS +MICROFORM +MICROFORMS +MICROFOSSIL +MICROFOSSILS +MICROFUNGI +MICROFUNGUS +MICROGAMETE +MICROGAMETES +MICROGAMETOCYTE +MICROGRAM +MICROGRAMS +MICROGRAPH +MICROGRAPHED +MICROGRAPHIC +MICROGRAPHICS +MICROGRAPHING +MICROGRAPHS +MICROGRAVITIES +MICROGRAVITY +MICROGROOVE +MICROGROOVES +MICROHABITAT +MICROHABITATS +MICROHM +MICROHMS +MICROIMAGE +MICROIMAGES +MICROINCH +MICROINCHES +MICROINJECT +MICROINJECTED +MICROINJECTING +MICROINJECTION +MICROINJECTIONS +MICROINJECTS +MICROLITER +MICROLITERS +MICROLITH +MICROLITHIC +MICROLITHS +MICROLOAN +MICROLOANS +MICROLUCES +MICROLUX +MICROLUXES +MICROMANAGE +MICROMANAGED +MICROMANAGEMENT +MICROMANAGER +MICROMANAGERS +MICROMANAGES +MICROMANAGING +MICROMERE +MICROMERES +MICROMETEORITE +MICROMETEORITES +MICROMETEORITIC +MICROMETEOROID +MICROMETEOROIDS +MICROMETER +MICROMETERS +MICROMETHOD +MICROMETHODS +MICROMHO +MICROMHOS +MICROMINI +MICROMINIATURE +MICROMINIS +MICROMOLAR +MICROMOLE +MICROMOLES +MICROMORPHOLOGY +MICRON +MICRONIZE +MICRONIZED +MICRONIZES +MICRONIZING +MICRONS +MICRONUCLEI +MICRONUCLEUS +MICRONUTRIENT +MICRONUTRIENTS +MICROORGANISM +MICROORGANISMS +MICROPARTICLE +MICROPARTICLES +MICROPHAGE +MICROPHAGES +MICROPHONE +MICROPHONES +MICROPHONIC +MICROPHONICS +MICROPHOTOGRAPH +MICROPHOTOMETER +MICROPHOTOMETRY +MICROPHYLL +MICROPHYLLOUS +MICROPHYLLS +MICROPHYSICAL +MICROPHYSICALLY +MICROPHYSICS +MICROPIPET +MICROPIPETS +MICROPIPETTE +MICROPIPETTES +MICROPLANKTON +MICROPLANKTONS +MICROPORE +MICROPORES +MICROPOROSITIES +MICROPOROSITY +MICROPOROUS +MICROPRISM +MICROPRISMS +MICROPROBE +MICROPROBES +MICROPROCESSOR +MICROPROCESSORS +MICROPROGRAM +MICROPROGRAMS +MICROPROJECTION +MICROPROJECTOR +MICROPROJECTORS +MICROPUBLISHER +MICROPUBLISHERS +MICROPUBLISHING +MICROPULSATION +MICROPULSATIONS +MICROPUNCTURE +MICROPUNCTURES +MICROPYLAR +MICROPYLE +MICROPYLES +MICROQUAKE +MICROQUAKES +MICRORADIOGRAPH +MICROREADER +MICROREADERS +MICROS +MICROSCALE +MICROSCALES +MICROSCOPE +MICROSCOPES +MICROSCOPIC +MICROSCOPICAL +MICROSCOPICALLY +MICROSCOPIES +MICROSCOPIST +MICROSCOPISTS +MICROSCOPY +MICROSECOND +MICROSECONDS +MICROSEISM +MICROSEISMIC +MICROSEISMICITY +MICROSEISMS +MICROSOMAL +MICROSOME +MICROSOMES +MICROSPHERE +MICROSPHERES +MICROSPHERICAL +MICROSPORANGIA +MICROSPORANGIUM +MICROSPORE +MICROSPORES +MICROSPOROCYTE +MICROSPOROCYTES +MICROSPOROPHYLL +MICROSPOROUS +MICROSTATE +MICROSTATES +MICROSTRUCTURAL +MICROSTRUCTURE +MICROSTRUCTURES +MICROSURGERIES +MICROSURGERY +MICROSURGICAL +MICROSWITCH +MICROSWITCHES +MICROTECHNIC +MICROTECHNICS +MICROTECHNIQUE +MICROTECHNIQUES +MICROTOME +MICROTOMES +MICROTOMIES +MICROTOMY +MICROTONAL +MICROTONALITIES +MICROTONALITY +MICROTONALLY +MICROTONE +MICROTONES +MICROTUBULAR +MICROTUBULE +MICROTUBULES +MICROVASCULAR +MICROVILLAR +MICROVILLI +MICROVILLOUS +MICROVILLUS +MICROVOLT +MICROVOLTS +MICROWATT +MICROWATTS +MICROWAVABLE +MICROWAVE +MICROWAVEABLE +MICROWAVED +MICROWAVES +MICROWAVING +MICROWORLD +MICROWORLDS +MICRURGIES +MICRURGY +MICS +MICTURATE +MICTURATED +MICTURATES +MICTURATING +MICTURITION +MICTURITIONS +MID +MIDAIR +MIDAIRS +MIDBRAIN +MIDBRAINS +MIDCAP +MIDCOURSE +MIDCULT +MIDCULTS +MIDDAY +MIDDAYS +MIDDEN +MIDDENS +MIDDIES +MIDDLE +MIDDLEBROW +MIDDLEBROWS +MIDDLED +MIDDLEMAN +MIDDLEMEN +MIDDLER +MIDDLERS +MIDDLES +MIDDLEWEIGHT +MIDDLEWEIGHTS +MIDDLING +MIDDLINGLY +MIDDLINGS +MIDDORSAL +MIDDY +MIDFIELD +MIDFIELDER +MIDFIELDERS +MIDFIELDS +MIDGE +MIDGES +MIDGET +MIDGETS +MIDGUT +MIDGUTS +MIDI +MIDINETTE +MIDINETTES +MIDIRON +MIDIRONS +MIDIS +MIDISKIRT +MIDISKIRTS +MIDLAND +MIDLANDS +MIDLATITUDE +MIDLATITUDES +MIDLEG +MIDLEGS +MIDLIFE +MIDLIFER +MIDLIFERS +MIDLINE +MIDLINES +MIDLIST +MIDLISTS +MIDLIVES +MIDMONTH +MIDMONTHS +MIDMOST +MIDMOSTS +MIDNIGHT +MIDNIGHTLY +MIDNIGHTS +MIDNOON +MIDNOONS +MIDPOINT +MIDPOINTS +MIDRANGE +MIDRANGES +MIDRASH +MIDRASHIC +MIDRASHIM +MIDRASHOT +MIDRASHOTH +MIDRIB +MIDRIBS +MIDRIFF +MIDRIFFS +MIDS +MIDSAGITTAL +MIDSECTION +MIDSECTIONS +MIDSHIP +MIDSHIPMAN +MIDSHIPMEN +MIDSHIPS +MIDSIZE +MIDSIZED +MIDSOLE +MIDSOLES +MIDSPACE +MIDSPACES +MIDST +MIDSTORIES +MIDSTORY +MIDSTREAM +MIDSTREAMS +MIDSTS +MIDSUMMER +MIDSUMMERS +MIDTERM +MIDTERMS +MIDTOWN +MIDTOWNS +MIDWATCH +MIDWATCHES +MIDWAY +MIDWAYS +MIDWEEK +MIDWEEKLY +MIDWEEKS +MIDWIFE +MIDWIFED +MIDWIFERIES +MIDWIFERY +MIDWIFES +MIDWIFING +MIDWINTER +MIDWINTERS +MIDWIVED +MIDWIVES +MIDWIVING +MIDYEAR +MIDYEARS +MIEN +MIENS +MIFEPRISTONE +MIFEPRISTONES +MIFF +MIFFED +MIFFIER +MIFFIEST +MIFFINESS +MIFFINESSES +MIFFING +MIFFS +MIFFY +MIG +MIGG +MIGGLE +MIGGLES +MIGGS +MIGHT +MIGHTIER +MIGHTIEST +MIGHTILY +MIGHTINESS +MIGHTINESSES +MIGHTS +MIGHTY +MIGNON +MIGNONETTE +MIGNONETTES +MIGNONNE +MIGNONS +MIGRAINE +MIGRAINES +MIGRAINOUS +MIGRANT +MIGRANTS +MIGRATE +MIGRATED +MIGRATES +MIGRATING +MIGRATION +MIGRATIONAL +MIGRATIONS +MIGRATOR +MIGRATORS +MIGRATORY +MIGS +MIHRAB +MIHRABS +MIJNHEER +MIJNHEERS +MIKADO +MIKADOS +MIKE +MIKED +MIKES +MIKING +MIKRA +MIKRON +MIKRONS +MIKVAH +MIKVAHS +MIKVEH +MIKVEHS +MIKVOS +MIKVOT +MIKVOTH +MIL +MILADI +MILADIES +MILADIS +MILADY +MILAGE +MILAGES +MILCH +MILCHIG +MILD +MILDED +MILDEN +MILDENED +MILDENING +MILDENS +MILDER +MILDEST +MILDEW +MILDEWED +MILDEWING +MILDEWS +MILDEWY +MILDING +MILDLY +MILDNESS +MILDNESSES +MILDS +MILE +MILEAGE +MILEAGES +MILEPOST +MILEPOSTS +MILER +MILERS +MILES +MILESIAN +MILESIMO +MILESIMOS +MILESTONE +MILESTONES +MILFOIL +MILFOILS +MILIA +MILIARIA +MILIARIAL +MILIARIAS +MILIARY +MILIEU +MILIEUS +MILIEUX +MILITANCE +MILITANCES +MILITANCIES +MILITANCY +MILITANT +MILITANTLY +MILITANTNESS +MILITANTNESSES +MILITANTS +MILITARIA +MILITARIES +MILITARILY +MILITARISE +MILITARISED +MILITARISES +MILITARISING +MILITARISM +MILITARISMS +MILITARIST +MILITARISTIC +MILITARISTS +MILITARIZATION +MILITARIZATIONS +MILITARIZE +MILITARIZED +MILITARIZES +MILITARIZING +MILITARY +MILITATE +MILITATED +MILITATES +MILITATING +MILITIA +MILITIAMAN +MILITIAMEN +MILITIAS +MILIUM +MILK +MILKED +MILKER +MILKERS +MILKFISH +MILKFISHES +MILKIER +MILKIEST +MILKILY +MILKINESS +MILKINESSES +MILKING +MILKLESS +MILKMAID +MILKMAIDS +MILKMAN +MILKMEN +MILKS +MILKSHAKE +MILKSHAKES +MILKSHED +MILKSHEDS +MILKSOP +MILKSOPPY +MILKSOPS +MILKWEED +MILKWEEDS +MILKWOOD +MILKWOODS +MILKWORT +MILKWORTS +MILKY +MILL +MILLABLE +MILLAGE +MILLAGES +MILLBOARD +MILLBOARDS +MILLCAKE +MILLCAKES +MILLDAM +MILLDAMS +MILLE +MILLED +MILLEFIORI +MILLEFIORIS +MILLEFLEUR +MILLEFLEURS +MILLENARIAN +MILLENARIANISM +MILLENARIANISMS +MILLENARIANS +MILLENARIES +MILLENARY +MILLENNIA +MILLENNIAL +MILLENNIALISM +MILLENNIALISMS +MILLENNIALIST +MILLENNIALISTS +MILLENNIUM +MILLENNIUMS +MILLEPED +MILLEPEDE +MILLEPEDES +MILLEPEDS +MILLEPORE +MILLEPORES +MILLER +MILLERITE +MILLERITES +MILLERS +MILLES +MILLESIMAL +MILLESIMALLY +MILLESIMALS +MILLET +MILLETS +MILLHOUSE +MILLHOUSES +MILLIAMPERE +MILLIAMPERES +MILLIARD +MILLIARDS +MILLIARE +MILLIARES +MILLIARIES +MILLIARY +MILLIBAR +MILLIBARS +MILLICURIE +MILLICURIES +MILLIDEGREE +MILLIDEGREES +MILLIEME +MILLIEMES +MILLIER +MILLIERS +MILLIGAL +MILLIGALS +MILLIGRAM +MILLIGRAMS +MILLIHENRIES +MILLIHENRY +MILLIHENRYS +MILLILAMBERT +MILLILAMBERTS +MILLILITER +MILLILITERS +MILLILUCES +MILLILUX +MILLILUXES +MILLIME +MILLIMES +MILLIMETER +MILLIMETERS +MILLIMHO +MILLIMHOS +MILLIMICRON +MILLIMICRONS +MILLIMOLAR +MILLIMOLE +MILLIMOLES +MILLINE +MILLINER +MILLINERIES +MILLINERS +MILLINERY +MILLINES +MILLING +MILLINGS +MILLIOHM +MILLIOHMS +MILLION +MILLIONAIRE +MILLIONAIRES +MILLIONAIRESS +MILLIONAIRESSES +MILLIONFOLD +MILLIONS +MILLIONTH +MILLIONTHS +MILLIOSMOL +MILLIOSMOLS +MILLIPED +MILLIPEDE +MILLIPEDES +MILLIPEDS +MILLIRADIAN +MILLIRADIANS +MILLIREM +MILLIREMS +MILLIROENTGEN +MILLIROENTGENS +MILLISECOND +MILLISECONDS +MILLIVOLT +MILLIVOLTS +MILLIWATT +MILLIWATTS +MILLPOND +MILLPONDS +MILLRACE +MILLRACES +MILLRUN +MILLRUNS +MILLS +MILLSTONE +MILLSTONES +MILLSTREAM +MILLSTREAMS +MILLWORK +MILLWORKS +MILLWRIGHT +MILLWRIGHTS +MILNEB +MILNEBS +MILO +MILORD +MILORDS +MILOS +MILPA +MILPAS +MILREIS +MILS +MILT +MILTED +MILTER +MILTERS +MILTIER +MILTIEST +MILTING +MILTS +MILTY +MIM +MIMBAR +MIMBARS +MIME +MIMED +MIMEO +MIMEOED +MIMEOGRAPH +MIMEOGRAPHED +MIMEOGRAPHING +MIMEOGRAPHS +MIMEOING +MIMEOS +MIMER +MIMERS +MIMES +MIMESES +MIMESIS +MIMESISES +MIMETIC +MIMETICALLY +MIMETITE +MIMETITES +MIMIC +MIMICAL +MIMICKED +MIMICKER +MIMICKERS +MIMICKING +MIMICRIES +MIMICRY +MIMICS +MIMING +MIMOSA +MIMOSAS +MINA +MINABLE +MINACIOUS +MINACITIES +MINACITY +MINAE +MINARET +MINARETED +MINARETS +MINAS +MINATORY +MINAUDIERE +MINAUDIERES +MINCE +MINCED +MINCEMEAT +MINCEMEATS +MINCER +MINCERS +MINCES +MINCIER +MINCIEST +MINCING +MINCINGLY +MINCY +MIND +MINDBLOWER +MINDBLOWERS +MINDED +MINDEDNESS +MINDEDNESSES +MINDER +MINDERS +MINDFUL +MINDFULLY +MINDFULNESS +MINDFULNESSES +MINDING +MINDLESS +MINDLESSLY +MINDLESSNESS +MINDLESSNESSES +MINDS +MINDSET +MINDSETS +MINE +MINEABLE +MINED +MINEFIELD +MINEFIELDS +MINELAYER +MINELAYERS +MINER +MINERAL +MINERALISE +MINERALISED +MINERALISES +MINERALISING +MINERALIZABLE +MINERALIZATION +MINERALIZATIONS +MINERALIZE +MINERALIZED +MINERALIZER +MINERALIZERS +MINERALIZES +MINERALIZING +MINERALOGIC +MINERALOGICAL +MINERALOGICALLY +MINERALOGIES +MINERALOGIST +MINERALOGISTS +MINERALOGY +MINERALS +MINERS +MINES +MINESHAFT +MINESHAFTS +MINESTRONE +MINESTRONES +MINESWEEPER +MINESWEEPERS +MINESWEEPING +MINESWEEPINGS +MINGIER +MINGIEST +MINGLE +MINGLED +MINGLER +MINGLERS +MINGLES +MINGLING +MINGY +MINI +MINIATURE +MINIATURES +MINIATURIST +MINIATURISTIC +MINIATURISTS +MINIATURIZATION +MINIATURIZE +MINIATURIZED +MINIATURIZES +MINIATURIZING +MINIBAR +MINIBARS +MINIBIKE +MINIBIKER +MINIBIKERS +MINIBIKES +MINIBUS +MINIBUSES +MINIBUSSES +MINICAB +MINICABS +MINICAM +MINICAMP +MINICAMPS +MINICAMS +MINICAR +MINICARS +MINICOMPUTER +MINICOMPUTERS +MINICOURSE +MINICOURSES +MINIDISC +MINIDISCS +MINIDRESS +MINIDRESSES +MINIFIED +MINIFIES +MINIFY +MINIFYING +MINIKIN +MINIKINS +MINILAB +MINILABS +MINIM +MINIMA +MINIMAL +MINIMALISM +MINIMALISMS +MINIMALIST +MINIMALISTS +MINIMALLY +MINIMALS +MINIMAX +MINIMAXES +MINIMILL +MINIMILLS +MINIMISE +MINIMISED +MINIMISES +MINIMISING +MINIMIZATION +MINIMIZATIONS +MINIMIZE +MINIMIZED +MINIMIZER +MINIMIZERS +MINIMIZES +MINIMIZING +MINIMS +MINIMUM +MINIMUMS +MINING +MININGS +MINION +MINIONS +MINIPARK +MINIPARKS +MINIPILL +MINIPILLS +MINIS +MINISCHOOL +MINISCHOOLS +MINISCULE +MINISCULES +MINISERIES +MINISH +MINISHED +MINISHES +MINISHING +MINISKI +MINISKIRT +MINISKIRTED +MINISKIRTS +MINISKIS +MINISTATE +MINISTATES +MINISTER +MINISTERED +MINISTERIAL +MINISTERIALLY +MINISTERING +MINISTERS +MINISTRANT +MINISTRANTS +MINISTRATION +MINISTRATIONS +MINISTRIES +MINISTRY +MINITOWER +MINITOWERS +MINITRACK +MINITRACKS +MINIUM +MINIUMS +MINIVAN +MINIVANS +MINIVER +MINIVERS +MINK +MINKE +MINKES +MINKS +MINNESINGER +MINNESINGERS +MINNIES +MINNOW +MINNOWS +MINNY +MINOR +MINORCA +MINORCAS +MINORED +MINORING +MINORITIES +MINORITY +MINORS +MINOXIDIL +MINOXIDILS +MINSTER +MINSTERS +MINSTREL +MINSTRELS +MINSTRELSIES +MINSTRELSY +MINT +MINTAGE +MINTAGES +MINTED +MINTER +MINTERS +MINTIER +MINTIEST +MINTING +MINTS +MINTY +MINUEND +MINUENDS +MINUET +MINUETS +MINUS +MINUSCULE +MINUSCULES +MINUSES +MINUTE +MINUTED +MINUTELY +MINUTEMAN +MINUTEMEN +MINUTENESS +MINUTENESSES +MINUTER +MINUTES +MINUTEST +MINUTIA +MINUTIAE +MINUTIAL +MINUTING +MINX +MINXES +MINXISH +MINYAN +MINYANIM +MINYANS +MIOCENE +MIOSES +MIOSIS +MIOTIC +MIOTICS +MIPS +MIQUELET +MIQUELETS +MIR +MIRABELLE +MIRABELLES +MIRACIDIA +MIRACIDIAL +MIRACIDIUM +MIRACLE +MIRACLES +MIRACULOUS +MIRACULOUSLY +MIRACULOUSNESS +MIRADOR +MIRADORS +MIRAGE +MIRAGES +MIRANDIZE +MIRANDIZED +MIRANDIZES +MIRANDIZING +MIRE +MIRED +MIREPOIX +MIRES +MIREX +MIREXES +MIRI +MIRIER +MIRIEST +MIRIN +MIRINESS +MIRINESSES +MIRING +MIRINS +MIRK +MIRKER +MIRKEST +MIRKIER +MIRKIEST +MIRKILY +MIRKS +MIRKY +MIRLITON +MIRLITONS +MIRROR +MIRRORED +MIRRORING +MIRRORLIKE +MIRRORS +MIRS +MIRTH +MIRTHFUL +MIRTHFULLY +MIRTHFULNESS +MIRTHFULNESSES +MIRTHLESS +MIRTHLESSLY +MIRTHS +MIRY +MIRZA +MIRZAS +MIS +MISACT +MISACTED +MISACTING +MISACTS +MISADAPT +MISADAPTED +MISADAPTING +MISADAPTS +MISADD +MISADDED +MISADDING +MISADDRESS +MISADDRESSED +MISADDRESSES +MISADDRESSING +MISADDS +MISADJUST +MISADJUSTED +MISADJUSTING +MISADJUSTS +MISADVENTURE +MISADVENTURES +MISADVICE +MISADVICES +MISADVISE +MISADVISED +MISADVISES +MISADVISING +MISAGENT +MISAGENTS +MISAIM +MISAIMED +MISAIMING +MISAIMS +MISALIGN +MISALIGNED +MISALIGNING +MISALIGNMENT +MISALIGNMENTS +MISALIGNS +MISALLIANCE +MISALLIANCES +MISALLIED +MISALLIES +MISALLOCATE +MISALLOCATED +MISALLOCATES +MISALLOCATING +MISALLOCATION +MISALLOCATIONS +MISALLOT +MISALLOTS +MISALLOTTED +MISALLOTTING +MISALLY +MISALLYING +MISALTER +MISALTERED +MISALTERING +MISALTERS +MISANALYSES +MISANALYSIS +MISANDRIES +MISANDRY +MISANTHROPE +MISANTHROPES +MISANTHROPIC +MISANTHROPIES +MISANTHROPY +MISAPPLICATION +MISAPPLICATIONS +MISAPPLIED +MISAPPLIES +MISAPPLY +MISAPPLYING +MISAPPRAISAL +MISAPPRAISALS +MISAPPREHEND +MISAPPREHENDED +MISAPPREHENDING +MISAPPREHENDS +MISAPPREHENSION +MISAPPROPRIATE +MISAPPROPRIATED +MISAPPROPRIATES +MISARTICULATE +MISARTICULATED +MISARTICULATES +MISARTICULATING +MISASSAY +MISASSAYED +MISASSAYING +MISASSAYS +MISASSEMBLE +MISASSEMBLED +MISASSEMBLES +MISASSEMBLING +MISASSIGN +MISASSIGNED +MISASSIGNING +MISASSIGNS +MISASSUMPTION +MISASSUMPTIONS +MISATE +MISATONE +MISATONED +MISATONES +MISATONING +MISATTRIBUTE +MISATTRIBUTED +MISATTRIBUTES +MISATTRIBUTING +MISATTRIBUTION +MISATTRIBUTIONS +MISAVER +MISAVERRED +MISAVERRING +MISAVERS +MISAWARD +MISAWARDED +MISAWARDING +MISAWARDS +MISBALANCE +MISBALANCED +MISBALANCES +MISBALANCING +MISBECAME +MISBECOME +MISBECOMES +MISBECOMING +MISBEGAN +MISBEGIN +MISBEGINNING +MISBEGINS +MISBEGOT +MISBEGOTTEN +MISBEGUN +MISBEHAVE +MISBEHAVED +MISBEHAVER +MISBEHAVERS +MISBEHAVES +MISBEHAVING +MISBEHAVIOR +MISBEHAVIORS +MISBELIEF +MISBELIEFS +MISBELIEVE +MISBELIEVED +MISBELIEVER +MISBELIEVERS +MISBELIEVES +MISBELIEVING +MISBIAS +MISBIASED +MISBIASES +MISBIASING +MISBIASSED +MISBIASSES +MISBIASSING +MISBILL +MISBILLED +MISBILLING +MISBILLS +MISBIND +MISBINDING +MISBINDS +MISBOUND +MISBRAND +MISBRANDED +MISBRANDING +MISBRANDS +MISBUILD +MISBUILDING +MISBUILDS +MISBUILT +MISBUTTON +MISBUTTONED +MISBUTTONING +MISBUTTONS +MISCALCULATE +MISCALCULATED +MISCALCULATES +MISCALCULATING +MISCALCULATION +MISCALCULATIONS +MISCALL +MISCALLED +MISCALLER +MISCALLERS +MISCALLING +MISCALLS +MISCAPTION +MISCAPTIONED +MISCAPTIONING +MISCAPTIONS +MISCARRIAGE +MISCARRIAGES +MISCARRIED +MISCARRIES +MISCARRY +MISCARRYING +MISCAST +MISCASTING +MISCASTS +MISCATALOG +MISCATALOGED +MISCATALOGING +MISCATALOGS +MISCEGENATION +MISCEGENATIONAL +MISCEGENATIONS +MISCELLANEA +MISCELLANEOUS +MISCELLANEOUSLY +MISCELLANIES +MISCELLANIST +MISCELLANISTS +MISCELLANY +MISCHANCE +MISCHANCES +MISCHANNEL +MISCHANNELED +MISCHANNELING +MISCHANNELLED +MISCHANNELLING +MISCHANNELS +MISCHARACTERIZE +MISCHARGE +MISCHARGED +MISCHARGES +MISCHARGING +MISCHIEF +MISCHIEFS +MISCHIEVOUS +MISCHIEVOUSLY +MISCHIEVOUSNESS +MISCHOICE +MISCHOICES +MISCHOOSE +MISCHOOSES +MISCHOOSING +MISCHOSE +MISCHOSEN +MISCIBILITIES +MISCIBILITY +MISCIBLE +MISCITATION +MISCITATIONS +MISCITE +MISCITED +MISCITES +MISCITING +MISCLAIM +MISCLAIMED +MISCLAIMING +MISCLAIMS +MISCLASS +MISCLASSED +MISCLASSES +MISCLASSIFIED +MISCLASSIFIES +MISCLASSIFY +MISCLASSIFYING +MISCLASSING +MISCODE +MISCODED +MISCODES +MISCODING +MISCOIN +MISCOINED +MISCOINING +MISCOINS +MISCOLOR +MISCOLORED +MISCOLORING +MISCOLORS +MISCOMPUTATION +MISCOMPUTATIONS +MISCOMPUTE +MISCOMPUTED +MISCOMPUTES +MISCOMPUTING +MISCONCEIVE +MISCONCEIVED +MISCONCEIVER +MISCONCEIVERS +MISCONCEIVES +MISCONCEIVING +MISCONCEPTION +MISCONCEPTIONS +MISCONDUCT +MISCONDUCTED +MISCONDUCTING +MISCONDUCTS +MISCONNECT +MISCONNECTED +MISCONNECTING +MISCONNECTION +MISCONNECTIONS +MISCONNECTS +MISCONSTRUCTION +MISCONSTRUE +MISCONSTRUED +MISCONSTRUES +MISCONSTRUING +MISCOOK +MISCOOKED +MISCOOKING +MISCOOKS +MISCOPIED +MISCOPIES +MISCOPY +MISCOPYING +MISCORRELATION +MISCORRELATIONS +MISCOUNT +MISCOUNTED +MISCOUNTING +MISCOUNTS +MISCREANT +MISCREANTS +MISCREATE +MISCREATED +MISCREATES +MISCREATING +MISCREATION +MISCREATIONS +MISCUE +MISCUED +MISCUES +MISCUING +MISCUT +MISCUTS +MISCUTTING +MISDATE +MISDATED +MISDATES +MISDATING +MISDEAL +MISDEALER +MISDEALERS +MISDEALING +MISDEALS +MISDEALT +MISDEED +MISDEEDS +MISDEEM +MISDEEMED +MISDEEMING +MISDEEMS +MISDEFINE +MISDEFINED +MISDEFINES +MISDEFINING +MISDEMEANANT +MISDEMEANANTS +MISDEMEANOR +MISDEMEANORS +MISDESCRIBE +MISDESCRIBED +MISDESCRIBES +MISDESCRIBING +MISDESCRIPTION +MISDESCRIPTIONS +MISDEVELOP +MISDEVELOPED +MISDEVELOPING +MISDEVELOPS +MISDIAGNOSE +MISDIAGNOSED +MISDIAGNOSES +MISDIAGNOSING +MISDIAGNOSIS +MISDIAL +MISDIALED +MISDIALING +MISDIALLED +MISDIALLING +MISDIALS +MISDID +MISDIRECT +MISDIRECTED +MISDIRECTING +MISDIRECTION +MISDIRECTIONS +MISDIRECTS +MISDISTRIBUTION +MISDIVIDE +MISDIVIDED +MISDIVIDES +MISDIVIDING +MISDIVISION +MISDIVISIONS +MISDO +MISDOER +MISDOERS +MISDOES +MISDOING +MISDOINGS +MISDONE +MISDOUBT +MISDOUBTED +MISDOUBTING +MISDOUBTS +MISDRAW +MISDRAWING +MISDRAWN +MISDRAWS +MISDREW +MISDRIVE +MISDRIVEN +MISDRIVES +MISDRIVING +MISDROVE +MISE +MISEASE +MISEASES +MISEAT +MISEATEN +MISEATING +MISEATS +MISEDIT +MISEDITED +MISEDITING +MISEDITS +MISEDUCATE +MISEDUCATED +MISEDUCATES +MISEDUCATING +MISEDUCATION +MISEDUCATIONS +MISEMPHASES +MISEMPHASIS +MISEMPHASIZE +MISEMPHASIZED +MISEMPHASIZES +MISEMPHASIZING +MISEMPLOY +MISEMPLOYED +MISEMPLOYING +MISEMPLOYMENT +MISEMPLOYMENTS +MISEMPLOYS +MISENROL +MISENROLL +MISENROLLED +MISENROLLING +MISENROLLS +MISENROLS +MISENTER +MISENTERED +MISENTERING +MISENTERS +MISENTRIES +MISENTRY +MISER +MISERABLE +MISERABLENESS +MISERABLENESSES +MISERABLES +MISERABLY +MISERERE +MISERERES +MISERICORD +MISERICORDE +MISERICORDES +MISERICORDS +MISERIES +MISERLINESS +MISERLINESSES +MISERLY +MISERS +MISERY +MISES +MISESTEEM +MISESTEEMED +MISESTEEMING +MISESTEEMS +MISESTIMATE +MISESTIMATED +MISESTIMATES +MISESTIMATING +MISESTIMATION +MISESTIMATIONS +MISEVALUATE +MISEVALUATED +MISEVALUATES +MISEVALUATING +MISEVALUATION +MISEVALUATIONS +MISEVENT +MISEVENTS +MISFAITH +MISFAITHS +MISFEASANCE +MISFEASANCES +MISFEASOR +MISFEASORS +MISFED +MISFEED +MISFEEDING +MISFEEDS +MISFIELD +MISFIELDED +MISFIELDING +MISFIELDS +MISFILE +MISFILED +MISFILES +MISFILING +MISFIRE +MISFIRED +MISFIRES +MISFIRING +MISFIT +MISFITS +MISFITTED +MISFITTING +MISFOCUS +MISFOCUSED +MISFOCUSES +MISFOCUSING +MISFOCUSSED +MISFOCUSSES +MISFOCUSSING +MISFORM +MISFORMED +MISFORMING +MISFORMS +MISFORTUNE +MISFORTUNES +MISFRAME +MISFRAMED +MISFRAMES +MISFRAMING +MISFUNCTION +MISFUNCTIONED +MISFUNCTIONING +MISFUNCTIONS +MISGAUGE +MISGAUGED +MISGAUGES +MISGAUGING +MISGAVE +MISGIVE +MISGIVEN +MISGIVES +MISGIVING +MISGIVINGS +MISGOVERN +MISGOVERNED +MISGOVERNING +MISGOVERNMENT +MISGOVERNMENTS +MISGOVERNS +MISGRADE +MISGRADED +MISGRADES +MISGRADING +MISGRAFT +MISGRAFTED +MISGRAFTING +MISGRAFTS +MISGREW +MISGROW +MISGROWING +MISGROWN +MISGROWS +MISGUESS +MISGUESSED +MISGUESSES +MISGUESSING +MISGUIDANCE +MISGUIDANCES +MISGUIDE +MISGUIDED +MISGUIDEDLY +MISGUIDEDNESS +MISGUIDEDNESSES +MISGUIDER +MISGUIDERS +MISGUIDES +MISGUIDING +MISHANDLE +MISHANDLED +MISHANDLES +MISHANDLING +MISHANTER +MISHANTERS +MISHAP +MISHAPS +MISHEAR +MISHEARD +MISHEARING +MISHEARS +MISHEGAAS +MISHEGOSS +MISHIT +MISHITS +MISHITTING +MISHMASH +MISHMASHES +MISHMOSH +MISHMOSHES +MISIDENTIFIED +MISIDENTIFIES +MISIDENTIFY +MISIDENTIFYING +MISIMPRESSION +MISIMPRESSIONS +MISINFER +MISINFERRED +MISINFERRING +MISINFERS +MISINFORM +MISINFORMATION +MISINFORMATIONS +MISINFORMED +MISINFORMING +MISINFORMS +MISINTER +MISINTERPRET +MISINTERPRETED +MISINTERPRETING +MISINTERPRETS +MISINTERRED +MISINTERRING +MISINTERS +MISJOIN +MISJOINDER +MISJOINDERS +MISJOINED +MISJOINING +MISJOINS +MISJUDGE +MISJUDGED +MISJUDGES +MISJUDGING +MISJUDGMENT +MISJUDGMENTS +MISKAL +MISKALS +MISKEEP +MISKEEPING +MISKEEPS +MISKEPT +MISKICK +MISKICKED +MISKICKING +MISKICKS +MISKNEW +MISKNOW +MISKNOWING +MISKNOWLEDGE +MISKNOWLEDGES +MISKNOWN +MISKNOWS +MISLABEL +MISLABELED +MISLABELING +MISLABELLED +MISLABELLING +MISLABELS +MISLABOR +MISLABORED +MISLABORING +MISLABORS +MISLAID +MISLAIN +MISLAY +MISLAYER +MISLAYERS +MISLAYING +MISLAYS +MISLEAD +MISLEADER +MISLEADERS +MISLEADING +MISLEADINGLY +MISLEADS +MISLEARED +MISLEARN +MISLEARNED +MISLEARNING +MISLEARNS +MISLEARNT +MISLED +MISLIE +MISLIES +MISLIGHT +MISLIGHTED +MISLIGHTING +MISLIGHTS +MISLIKE +MISLIKED +MISLIKER +MISLIKERS +MISLIKES +MISLIKING +MISLIT +MISLIVE +MISLIVED +MISLIVES +MISLIVING +MISLOCATE +MISLOCATED +MISLOCATES +MISLOCATING +MISLOCATION +MISLOCATIONS +MISLODGE +MISLODGED +MISLODGES +MISLODGING +MISLYING +MISMADE +MISMAKE +MISMAKES +MISMAKING +MISMANAGE +MISMANAGED +MISMANAGEMENT +MISMANAGEMENTS +MISMANAGES +MISMANAGING +MISMARK +MISMARKED +MISMARKING +MISMARKS +MISMARRIAGE +MISMARRIAGES +MISMATCH +MISMATCHED +MISMATCHES +MISMATCHING +MISMATE +MISMATED +MISMATES +MISMATING +MISMEET +MISMEETING +MISMEETS +MISMET +MISMOVE +MISMOVED +MISMOVES +MISMOVING +MISNAME +MISNAMED +MISNAMES +MISNAMING +MISNOMER +MISNOMERED +MISNOMERS +MISNUMBER +MISNUMBERED +MISNUMBERING +MISNUMBERS +MISO +MISOGAMIC +MISOGAMIES +MISOGAMIST +MISOGAMISTS +MISOGAMY +MISOGYNIC +MISOGYNIES +MISOGYNIST +MISOGYNISTIC +MISOGYNISTS +MISOGYNY +MISOLOGIES +MISOLOGY +MISONEISM +MISONEISMS +MISONEIST +MISONEISTS +MISORDER +MISORDERED +MISORDERING +MISORDERS +MISORIENT +MISORIENTATION +MISORIENTATIONS +MISORIENTED +MISORIENTING +MISORIENTS +MISOS +MISPACKAGE +MISPACKAGED +MISPACKAGES +MISPACKAGING +MISPAGE +MISPAGED +MISPAGES +MISPAGING +MISPAINT +MISPAINTED +MISPAINTING +MISPAINTS +MISPARSE +MISPARSED +MISPARSES +MISPARSING +MISPART +MISPARTED +MISPARTING +MISPARTS +MISPATCH +MISPATCHED +MISPATCHES +MISPATCHING +MISPEN +MISPENNED +MISPENNING +MISPENS +MISPERCEIVE +MISPERCEIVED +MISPERCEIVES +MISPERCEIVING +MISPERCEPTION +MISPERCEPTIONS +MISPHRASE +MISPHRASED +MISPHRASES +MISPHRASING +MISPICKEL +MISPICKELS +MISPLACE +MISPLACED +MISPLACEMENT +MISPLACEMENTS +MISPLACES +MISPLACING +MISPLAN +MISPLANNED +MISPLANNING +MISPLANS +MISPLANT +MISPLANTED +MISPLANTING +MISPLANTS +MISPLAY +MISPLAYED +MISPLAYING +MISPLAYS +MISPLEAD +MISPLEADED +MISPLEADING +MISPLEADS +MISPLED +MISPOINT +MISPOINTED +MISPOINTING +MISPOINTS +MISPOISE +MISPOISED +MISPOISES +MISPOISING +MISPOSITION +MISPOSITIONED +MISPOSITIONING +MISPOSITIONS +MISPRICE +MISPRICED +MISPRICES +MISPRICING +MISPRINT +MISPRINTED +MISPRINTING +MISPRINTS +MISPRISION +MISPRISIONS +MISPRIZE +MISPRIZED +MISPRIZER +MISPRIZERS +MISPRIZES +MISPRIZING +MISPROGRAM +MISPROGRAMED +MISPROGRAMING +MISPROGRAMMED +MISPROGRAMMING +MISPROGRAMS +MISPRONOUNCE +MISPRONOUNCED +MISPRONOUNCES +MISPRONOUNCING +MISQUOTATION +MISQUOTATIONS +MISQUOTE +MISQUOTED +MISQUOTER +MISQUOTERS +MISQUOTES +MISQUOTING +MISRAISE +MISRAISED +MISRAISES +MISRAISING +MISRATE +MISRATED +MISRATES +MISRATING +MISREAD +MISREADING +MISREADS +MISRECKON +MISRECKONED +MISRECKONING +MISRECKONS +MISRECOLLECTION +MISRECORD +MISRECORDED +MISRECORDING +MISRECORDS +MISREFER +MISREFERENCE +MISREFERENCES +MISREFERRED +MISREFERRING +MISREFERS +MISREGISTER +MISREGISTERED +MISREGISTERING +MISREGISTERS +MISREGISTRATION +MISRELATE +MISRELATED +MISRELATES +MISRELATING +MISRELIED +MISRELIES +MISRELY +MISRELYING +MISREMEMBER +MISREMEMBERED +MISREMEMBERING +MISREMEMBERS +MISRENDER +MISRENDERED +MISRENDERING +MISRENDERS +MISREPORT +MISREPORTED +MISREPORTING +MISREPORTS +MISREPRESENT +MISREPRESENTED +MISREPRESENTING +MISREPRESENTS +MISRHYMED +MISROUTE +MISROUTED +MISROUTES +MISROUTING +MISRULE +MISRULED +MISRULES +MISRULING +MISS +MISSABLE +MISSAID +MISSAL +MISSALS +MISSAY +MISSAYING +MISSAYS +MISSEAT +MISSEATED +MISSEATING +MISSEATS +MISSED +MISSEL +MISSELS +MISSEND +MISSENDING +MISSENDS +MISSENSE +MISSENSES +MISSENT +MISSES +MISSET +MISSETS +MISSETTING +MISSHAPE +MISSHAPED +MISSHAPEN +MISSHAPENLY +MISSHAPER +MISSHAPERS +MISSHAPES +MISSHAPING +MISSHOD +MISSIES +MISSILE +MISSILEER +MISSILEERS +MISSILEMAN +MISSILEMEN +MISSILERIES +MISSILERY +MISSILES +MISSILRIES +MISSILRY +MISSING +MISSIOLOGIES +MISSIOLOGY +MISSION +MISSIONAL +MISSIONARIES +MISSIONARY +MISSIONED +MISSIONER +MISSIONERS +MISSIONING +MISSIONIZATION +MISSIONIZATIONS +MISSIONIZE +MISSIONIZED +MISSIONIZER +MISSIONIZERS +MISSIONIZES +MISSIONIZING +MISSIONS +MISSIS +MISSISES +MISSIVE +MISSIVES +MISSORT +MISSORTED +MISSORTING +MISSORTS +MISSOUND +MISSOUNDED +MISSOUNDING +MISSOUNDS +MISSOUT +MISSOUTS +MISSPACE +MISSPACED +MISSPACES +MISSPACING +MISSPEAK +MISSPEAKING +MISSPEAKS +MISSPELL +MISSPELLED +MISSPELLING +MISSPELLINGS +MISSPELLS +MISSPELT +MISSPEND +MISSPENDING +MISSPENDS +MISSPENT +MISSPOKE +MISSPOKEN +MISSTAMP +MISSTAMPED +MISSTAMPING +MISSTAMPS +MISSTART +MISSTARTED +MISSTARTING +MISSTARTS +MISSTATE +MISSTATED +MISSTATEMENT +MISSTATEMENTS +MISSTATES +MISSTATING +MISSTEER +MISSTEERED +MISSTEERING +MISSTEERS +MISSTEP +MISSTEPPED +MISSTEPPING +MISSTEPS +MISSTOP +MISSTOPPED +MISSTOPPING +MISSTOPS +MISSTRICKEN +MISSTRIKE +MISSTRIKES +MISSTRIKING +MISSTRUCK +MISSTYLE +MISSTYLED +MISSTYLES +MISSTYLING +MISSUIT +MISSUITED +MISSUITING +MISSUITS +MISSUS +MISSUSES +MISSY +MIST +MISTAKABLE +MISTAKE +MISTAKEN +MISTAKENLY +MISTAKER +MISTAKERS +MISTAKES +MISTAKING +MISTAUGHT +MISTBOW +MISTBOWS +MISTEACH +MISTEACHES +MISTEACHING +MISTED +MISTEND +MISTENDED +MISTENDING +MISTENDS +MISTER +MISTERM +MISTERMED +MISTERMING +MISTERMS +MISTERS +MISTEUK +MISTHINK +MISTHINKING +MISTHINKS +MISTHOUGHT +MISTHREW +MISTHROW +MISTHROWING +MISTHROWN +MISTHROWS +MISTIER +MISTIEST +MISTILY +MISTIME +MISTIMED +MISTIMES +MISTIMING +MISTINESS +MISTINESSES +MISTING +MISTITLE +MISTITLED +MISTITLES +MISTITLING +MISTLETOE +MISTLETOES +MISTOOK +MISTOUCH +MISTOUCHED +MISTOUCHES +MISTOUCHING +MISTRACE +MISTRACED +MISTRACES +MISTRACING +MISTRAIN +MISTRAINED +MISTRAINING +MISTRAINS +MISTRAL +MISTRALS +MISTRANSCRIBE +MISTRANSCRIBED +MISTRANSCRIBES +MISTRANSCRIBING +MISTRANSLATE +MISTRANSLATED +MISTRANSLATES +MISTRANSLATING +MISTRANSLATION +MISTRANSLATIONS +MISTREAT +MISTREATED +MISTREATING +MISTREATMENT +MISTREATMENTS +MISTREATS +MISTRESS +MISTRESSES +MISTRIAL +MISTRIALS +MISTRUST +MISTRUSTED +MISTRUSTFUL +MISTRUSTFULLY +MISTRUSTFULNESS +MISTRUSTING +MISTRUSTS +MISTRUTH +MISTRUTHS +MISTRYST +MISTRYSTED +MISTRYSTING +MISTRYSTS +MISTS +MISTUNE +MISTUNED +MISTUNES +MISTUNING +MISTUTOR +MISTUTORED +MISTUTORING +MISTUTORS +MISTY +MISTYPE +MISTYPED +MISTYPES +MISTYPING +MISUNDERSTAND +MISUNDERSTANDS +MISUNDERSTOOD +MISUNION +MISUNIONS +MISUSAGE +MISUSAGES +MISUSE +MISUSED +MISUSER +MISUSERS +MISUSES +MISUSING +MISUTILIZATION +MISUTILIZATIONS +MISVALUE +MISVALUED +MISVALUES +MISVALUING +MISVOCALIZATION +MISWORD +MISWORDED +MISWORDING +MISWORDS +MISWRIT +MISWRITE +MISWRITES +MISWRITING +MISWRITTEN +MISWROTE +MISYOKE +MISYOKED +MISYOKES +MISYOKING +MITE +MITER +MITERED +MITERER +MITERERS +MITERING +MITERS +MITERWORT +MITERWORTS +MITES +MITHER +MITHERS +MITHRIDATE +MITHRIDATES +MITICIDAL +MITICIDE +MITICIDES +MITIER +MITIEST +MITIGABLE +MITIGATE +MITIGATED +MITIGATES +MITIGATING +MITIGATION +MITIGATIONS +MITIGATIVE +MITIGATOR +MITIGATORS +MITIGATORY +MITIS +MITISES +MITOCHONDRIA +MITOCHONDRIAL +MITOCHONDRION +MITOGEN +MITOGENIC +MITOGENICITIES +MITOGENICITY +MITOGENS +MITOMYCIN +MITOMYCINS +MITOSES +MITOSIS +MITOTIC +MITOTICALLY +MITRAL +MITRE +MITRED +MITRES +MITREWORT +MITREWORTS +MITRING +MITSVAH +MITSVAHS +MITSVOTH +MITT +MITTEN +MITTENED +MITTENS +MITTIMUS +MITTIMUSES +MITTS +MITY +MITZVAH +MITZVAHS +MITZVOTH +MIX +MIXABLE +MIXED +MIXEDLY +MIXER +MIXERS +MIXES +MIXIBLE +MIXING +MIXOLOGIES +MIXOLOGIST +MIXOLOGISTS +MIXOLOGY +MIXT +MIXTURE +MIXTURES +MIXUP +MIXUPS +MIZEN +MIZENMAST +MIZENMASTS +MIZENS +MIZUNA +MIZUNAS +MIZZEN +MIZZENMAST +MIZZENMASTS +MIZZENS +MIZZLE +MIZZLED +MIZZLES +MIZZLING +MIZZLY +MM +MNEMONIC +MNEMONICALLY +MNEMONICS +MO +MOA +MOAN +MOANED +MOANER +MOANERS +MOANFUL +MOANING +MOANINGLY +MOANS +MOAS +MOAT +MOATED +MOATING +MOATLIKE +MOATS +MOB +MOBBED +MOBBER +MOBBERS +MOBBING +MOBBISH +MOBBISHLY +MOBBISM +MOBBISMS +MOBCAP +MOBCAPS +MOBILE +MOBILES +MOBILISE +MOBILISED +MOBILISES +MOBILISING +MOBILITIES +MOBILITY +MOBILIZATION +MOBILIZATIONS +MOBILIZE +MOBILIZED +MOBILIZER +MOBILIZERS +MOBILIZES +MOBILIZING +MOBLED +MOBOCRACIES +MOBOCRACY +MOBOCRAT +MOBOCRATIC +MOBOCRATS +MOBS +MOBSTER +MOBSTERS +MOC +MOCCASIN +MOCCASINS +MOCHA +MOCHAS +MOCHILA +MOCHILAS +MOCK +MOCKABLE +MOCKED +MOCKER +MOCKERIES +MOCKERS +MOCKERY +MOCKING +MOCKINGBIRD +MOCKINGBIRDS +MOCKINGLY +MOCKS +MOCKTAIL +MOCKTAILS +MOCKUP +MOCKUPS +MOCS +MOD +MODAL +MODALITIES +MODALITY +MODALLY +MODALS +MODE +MODEL +MODELED +MODELER +MODELERS +MODELING +MODELINGS +MODELIST +MODELISTS +MODELLED +MODELLER +MODELLERS +MODELLING +MODELS +MODEM +MODEMED +MODEMING +MODEMS +MODERATE +MODERATED +MODERATELY +MODERATENESS +MODERATENESSES +MODERATES +MODERATING +MODERATION +MODERATIONS +MODERATO +MODERATOR +MODERATORS +MODERATORSHIP +MODERATORSHIPS +MODERATOS +MODERN +MODERNE +MODERNER +MODERNES +MODERNEST +MODERNISATION +MODERNISATIONS +MODERNISE +MODERNISED +MODERNISES +MODERNISING +MODERNISM +MODERNISMS +MODERNIST +MODERNISTIC +MODERNISTS +MODERNITIES +MODERNITY +MODERNIZATION +MODERNIZATIONS +MODERNIZE +MODERNIZED +MODERNIZER +MODERNIZERS +MODERNIZES +MODERNIZING +MODERNLY +MODERNNESS +MODERNNESSES +MODERNS +MODES +MODEST +MODESTER +MODESTEST +MODESTIES +MODESTLY +MODESTY +MODI +MODICA +MODICUM +MODICUMS +MODIFIABILITIES +MODIFIABILITY +MODIFIABLE +MODIFICATION +MODIFICATIONS +MODIFIED +MODIFIER +MODIFIERS +MODIFIES +MODIFY +MODIFYING +MODILLION +MODILLIONS +MODIOLI +MODIOLUS +MODISH +MODISHLY +MODISHNESS +MODISHNESSES +MODISTE +MODISTES +MODS +MODULABILITIES +MODULABILITY +MODULAR +MODULARITIES +MODULARITY +MODULARIZED +MODULARLY +MODULARS +MODULATE +MODULATED +MODULATES +MODULATING +MODULATION +MODULATIONS +MODULATOR +MODULATORS +MODULATORY +MODULE +MODULES +MODULI +MODULO +MODULUS +MODUS +MOFETTE +MOFETTES +MOFFETTE +MOFFETTES +MOG +MOGGED +MOGGIE +MOGGIES +MOGGING +MOGGY +MOGHUL +MOGHULS +MOGS +MOGUL +MOGULED +MOGULS +MOHAIR +MOHAIRS +MOHALIM +MOHAWK +MOHAWKS +MOHEL +MOHELIM +MOHELS +MOHUR +MOHURS +MOIDORE +MOIDORES +MOIETIES +MOIETY +MOIL +MOILED +MOILER +MOILERS +MOILING +MOILINGLY +MOILS +MOIRA +MOIRAI +MOIRE +MOIRES +MOIST +MOISTEN +MOISTENED +MOISTENER +MOISTENERS +MOISTENING +MOISTENS +MOISTER +MOISTEST +MOISTFUL +MOISTLY +MOISTNESS +MOISTNESSES +MOISTURE +MOISTURES +MOISTURISE +MOISTURISED +MOISTURISES +MOISTURISING +MOISTURIZE +MOISTURIZED +MOISTURIZER +MOISTURIZERS +MOISTURIZES +MOISTURIZING +MOJARRA +MOJARRAS +MOJO +MOJOES +MOJOS +MOKE +MOKES +MOL +MOLA +MOLAL +MOLALITIES +MOLALITY +MOLAR +MOLARITIES +MOLARITY +MOLARS +MOLAS +MOLASSES +MOLASSESES +MOLD +MOLDABLE +MOLDBOARD +MOLDBOARDS +MOLDED +MOLDER +MOLDERED +MOLDERING +MOLDERS +MOLDIER +MOLDIEST +MOLDINESS +MOLDINESSES +MOLDING +MOLDINGS +MOLDS +MOLDWARP +MOLDWARPS +MOLDY +MOLE +MOLECULAR +MOLECULARLY +MOLECULE +MOLECULES +MOLEHILL +MOLEHILLS +MOLES +MOLESKIN +MOLESKINS +MOLEST +MOLESTATION +MOLESTATIONS +MOLESTED +MOLESTER +MOLESTERS +MOLESTING +MOLESTS +MOLIES +MOLINE +MOLL +MOLLAH +MOLLAHS +MOLLIE +MOLLIES +MOLLIFICATION +MOLLIFICATIONS +MOLLIFIED +MOLLIFIER +MOLLIFIERS +MOLLIFIES +MOLLIFY +MOLLIFYING +MOLLS +MOLLUSC +MOLLUSCA +MOLLUSCAN +MOLLUSCANS +MOLLUSCICIDAL +MOLLUSCICIDE +MOLLUSCICIDES +MOLLUSCS +MOLLUSCUM +MOLLUSK +MOLLUSKAN +MOLLUSKANS +MOLLUSKS +MOLLY +MOLLYCODDLE +MOLLYCODDLED +MOLLYCODDLER +MOLLYCODDLERS +MOLLYCODDLES +MOLLYCODDLING +MOLLYMAWK +MOLLYMAWKS +MOLOCH +MOLOCHS +MOLS +MOLT +MOLTED +MOLTEN +MOLTENLY +MOLTER +MOLTERS +MOLTING +MOLTO +MOLTS +MOLY +MOLYBDATE +MOLYBDATES +MOLYBDENITE +MOLYBDENITES +MOLYBDENUM +MOLYBDENUMS +MOLYBDIC +MOLYBDOUS +MOM +MOME +MOMENT +MOMENTA +MOMENTARILY +MOMENTARINESS +MOMENTARINESSES +MOMENTARY +MOMENTLY +MOMENTO +MOMENTOES +MOMENTOS +MOMENTOUS +MOMENTOUSLY +MOMENTOUSNESS +MOMENTOUSNESSES +MOMENTS +MOMENTUM +MOMENTUMS +MOMES +MOMI +MOMISM +MOMISMS +MOMMA +MOMMAS +MOMMIES +MOMMY +MOMS +MOMSER +MOMSERS +MOMUS +MOMUSES +MOMZER +MOMZERS +MON +MONACHAL +MONACHISM +MONACHISMS +MONACID +MONACIDIC +MONACIDS +MONAD +MONADAL +MONADELPHOUS +MONADES +MONADIC +MONADICAL +MONADISM +MONADISMS +MONADNOCK +MONADNOCKS +MONADS +MONANDRIES +MONANDRY +MONARCH +MONARCHAL +MONARCHIAL +MONARCHIC +MONARCHICAL +MONARCHICALLY +MONARCHIES +MONARCHISM +MONARCHISMS +MONARCHIST +MONARCHISTS +MONARCHS +MONARCHY +MONARDA +MONARDAS +MONAS +MONASTERIES +MONASTERY +MONASTIC +MONASTICALLY +MONASTICISM +MONASTICISMS +MONASTICS +MONATOMIC +MONAURAL +MONAURALLY +MONAXIAL +MONAXON +MONAXONS +MONAZITE +MONAZITES +MONDE +MONDES +MONDO +MONDOS +MONECIAN +MONECIOUS +MONELLIN +MONELLINS +MONERAN +MONERANS +MONESTROUS +MONETARILY +MONETARISM +MONETARISMS +MONETARIST +MONETARISTS +MONETARY +MONETISE +MONETISED +MONETISES +MONETISING +MONETIZATION +MONETIZATIONS +MONETIZE +MONETIZED +MONETIZES +MONETIZING +MONEY +MONEYBAG +MONEYBAGS +MONEYED +MONEYER +MONEYERS +MONEYGRUBBING +MONEYGRUBBINGS +MONEYLENDER +MONEYLENDERS +MONEYLESS +MONEYMAKER +MONEYMAKERS +MONEYMAKING +MONEYMAKINGS +MONEYMAN +MONEYMEN +MONEYS +MONEYWORT +MONEYWORTS +MONGEESE +MONGER +MONGERED +MONGERING +MONGERS +MONGO +MONGOE +MONGOES +MONGOL +MONGOLIAN +MONGOLISM +MONGOLISMS +MONGOLOID +MONGOLOIDS +MONGOLS +MONGOOSE +MONGOOSES +MONGOS +MONGREL +MONGRELIZATION +MONGRELIZATIONS +MONGRELIZE +MONGRELIZED +MONGRELIZES +MONGRELIZING +MONGRELLY +MONGRELS +MONGST +MONICKER +MONICKERS +MONIE +MONIED +MONIES +MONIKER +MONIKERS +MONILIASES +MONILIASIS +MONILIFORM +MONISH +MONISHED +MONISHES +MONISHING +MONISM +MONISMS +MONIST +MONISTIC +MONISTS +MONITION +MONITIONS +MONITIVE +MONITOR +MONITORED +MONITORIAL +MONITORIES +MONITORING +MONITORS +MONITORSHIP +MONITORSHIPS +MONITORY +MONK +MONKERIES +MONKERY +MONKEY +MONKEYED +MONKEYING +MONKEYISH +MONKEYPOD +MONKEYPODS +MONKEYPOT +MONKEYPOTS +MONKEYS +MONKEYSHINE +MONKEYSHINES +MONKFISH +MONKFISHES +MONKHOOD +MONKHOODS +MONKISH +MONKISHLY +MONKS +MONKSHOOD +MONKSHOODS +MONO +MONOACID +MONOACIDIC +MONOACIDS +MONOAMINE +MONOAMINERGIC +MONOAMINES +MONOBASIC +MONOCARBOXYLIC +MONOCARP +MONOCARPIC +MONOCARPS +MONOCHASIA +MONOCHASIAL +MONOCHASIUM +MONOCHORD +MONOCHORDS +MONOCHROMAT +MONOCHROMATIC +MONOCHROMATISM +MONOCHROMATISMS +MONOCHROMATOR +MONOCHROMATORS +MONOCHROMATS +MONOCHROME +MONOCHROMES +MONOCHROMIC +MONOCHROMIST +MONOCHROMISTS +MONOCLE +MONOCLED +MONOCLES +MONOCLINE +MONOCLINES +MONOCLINIC +MONOCLONAL +MONOCLONALS +MONOCOQUE +MONOCOQUES +MONOCOT +MONOCOTS +MONOCOTYL +MONOCOTYLEDON +MONOCOTYLEDONS +MONOCOTYLS +MONOCRACIES +MONOCRACY +MONOCRAT +MONOCRATIC +MONOCRATS +MONOCRYSTAL +MONOCRYSTALLINE +MONOCRYSTALS +MONOCULAR +MONOCULARLY +MONOCULARS +MONOCULTURAL +MONOCULTURE +MONOCULTURES +MONOCYCLE +MONOCYCLES +MONOCYCLIC +MONOCYTE +MONOCYTES +MONOCYTIC +MONODIC +MONODICAL +MONODICALLY +MONODIES +MONODISPERSE +MONODIST +MONODISTS +MONODRAMA +MONODRAMAS +MONODRAMATIC +MONODY +MONOECIES +MONOECIOUS +MONOECISM +MONOECISMS +MONOECY +MONOESTER +MONOESTERS +MONOFIL +MONOFILAMENT +MONOFILAMENTS +MONOFILS +MONOFUEL +MONOFUELS +MONOGAMIC +MONOGAMIES +MONOGAMIST +MONOGAMISTS +MONOGAMOUS +MONOGAMOUSLY +MONOGAMY +MONOGASTRIC +MONOGENEAN +MONOGENEANS +MONOGENESES +MONOGENESIS +MONOGENETIC +MONOGENIC +MONOGENICALLY +MONOGENIES +MONOGENY +MONOGERM +MONOGLOT +MONOGLOTS +MONOGLYCERIDE +MONOGLYCERIDES +MONOGRAM +MONOGRAMED +MONOGRAMING +MONOGRAMMATIC +MONOGRAMMED +MONOGRAMMER +MONOGRAMMERS +MONOGRAMMING +MONOGRAMS +MONOGRAPH +MONOGRAPHED +MONOGRAPHIC +MONOGRAPHING +MONOGRAPHS +MONOGYNIES +MONOGYNOUS +MONOGYNY +MONOHULL +MONOHULLS +MONOHYBRID +MONOHYBRIDS +MONOHYDRIC +MONOHYDROXY +MONOICOUS +MONOKINE +MONOKINES +MONOLAYER +MONOLAYERS +MONOLINGUAL +MONOLINGUALS +MONOLITH +MONOLITHIC +MONOLITHICALLY +MONOLITHS +MONOLOG +MONOLOGGED +MONOLOGGING +MONOLOGIC +MONOLOGIES +MONOLOGIST +MONOLOGISTS +MONOLOGS +MONOLOGUE +MONOLOGUED +MONOLOGUES +MONOLOGUING +MONOLOGUIST +MONOLOGUISTS +MONOLOGY +MONOMANIA +MONOMANIAC +MONOMANIACAL +MONOMANIACALLY +MONOMANIACS +MONOMANIAS +MONOMER +MONOMERIC +MONOMERS +MONOMETALLIC +MONOMETALLISM +MONOMETALLISMS +MONOMETALLIST +MONOMETALLISTS +MONOMETER +MONOMETERS +MONOMIAL +MONOMIALS +MONOMOLECULAR +MONOMOLECULARLY +MONOMORPHEMIC +MONOMORPHIC +MONOMORPHISM +MONOMORPHISMS +MONONUCLEAR +MONONUCLEARS +MONONUCLEATE +MONONUCLEATED +MONONUCLEOSES +MONONUCLEOSIS +MONONUCLEOTIDE +MONONUCLEOTIDES +MONOPHAGIES +MONOPHAGOUS +MONOPHAGY +MONOPHONIC +MONOPHONICALLY +MONOPHONIES +MONOPHONY +MONOPHTHONG +MONOPHTHONGAL +MONOPHTHONGS +MONOPHYLETIC +MONOPHYLIES +MONOPHYLY +MONOPLANE +MONOPLANES +MONOPLOID +MONOPLOIDS +MONOPOD +MONOPODE +MONOPODES +MONOPODIA +MONOPODIAL +MONOPODIALLY +MONOPODIES +MONOPODIUM +MONOPODS +MONOPODY +MONOPOLE +MONOPOLES +MONOPOLIES +MONOPOLISE +MONOPOLISED +MONOPOLISES +MONOPOLISING +MONOPOLIST +MONOPOLISTIC +MONOPOLISTS +MONOPOLIZATION +MONOPOLIZATIONS +MONOPOLIZE +MONOPOLIZED +MONOPOLIZER +MONOPOLIZERS +MONOPOLIZES +MONOPOLIZING +MONOPOLY +MONOPROPELLANT +MONOPROPELLANTS +MONOPSONIES +MONOPSONISTIC +MONOPSONY +MONORAIL +MONORAILS +MONORCHID +MONORCHIDISM +MONORCHIDISMS +MONORCHIDS +MONORHYME +MONORHYMED +MONORHYMES +MONOS +MONOSACCHARIDE +MONOSACCHARIDES +MONOSOME +MONOSOMES +MONOSOMIC +MONOSOMICS +MONOSOMIES +MONOSOMY +MONOSPECIFIC +MONOSPECIFICITY +MONOSTELE +MONOSTELES +MONOSTELIC +MONOSTELIES +MONOSTELY +MONOSTICH +MONOSTICHS +MONOSTOME +MONOSYLLABIC +MONOSYLLABICITY +MONOSYLLABLE +MONOSYLLABLES +MONOSYNAPTIC +MONOTERPENE +MONOTERPENES +MONOTHEISM +MONOTHEISMS +MONOTHEIST +MONOTHEISTIC +MONOTHEISTICAL +MONOTHEISTS +MONOTINT +MONOTINTS +MONOTONE +MONOTONES +MONOTONIC +MONOTONICALLY +MONOTONICITIES +MONOTONICITY +MONOTONIES +MONOTONOUS +MONOTONOUSLY +MONOTONOUSNESS +MONOTONY +MONOTREME +MONOTREMES +MONOTYPE +MONOTYPES +MONOTYPIC +MONOUNSATURATE +MONOUNSATURATED +MONOUNSATURATES +MONOVALENT +MONOVULAR +MONOXIDE +MONOXIDES +MONOZYGOTIC +MONS +MONSEIGNEUR +MONSIEUR +MONSIGNOR +MONSIGNORI +MONSIGNORIAL +MONSIGNORS +MONSOON +MONSOONAL +MONSOONS +MONSTER +MONSTERA +MONSTERAS +MONSTERS +MONSTRANCE +MONSTRANCES +MONSTROSITIES +MONSTROSITY +MONSTROUS +MONSTROUSLY +MONSTROUSNESS +MONSTROUSNESSES +MONTADALE +MONTADALES +MONTAGE +MONTAGED +MONTAGES +MONTAGING +MONTAGNARD +MONTAGNARDS +MONTANE +MONTANES +MONTE +MONTEITH +MONTEITHS +MONTERO +MONTEROS +MONTES +MONTH +MONTHLIES +MONTHLONG +MONTHLY +MONTHS +MONTICULE +MONTICULES +MONTMORILLONITE +MONUMENT +MONUMENTAL +MONUMENTALITIES +MONUMENTALITY +MONUMENTALIZE +MONUMENTALIZED +MONUMENTALIZES +MONUMENTALIZING +MONUMENTALLY +MONUMENTS +MONURON +MONURONS +MONY +MONZONITE +MONZONITES +MOO +MOOCH +MOOCHED +MOOCHER +MOOCHERS +MOOCHES +MOOCHING +MOOD +MOODIER +MOODIEST +MOODILY +MOODINESS +MOODINESSES +MOODS +MOODY +MOOED +MOOING +MOOL +MOOLA +MOOLAH +MOOLAHS +MOOLAS +MOOLEY +MOOLEYS +MOOLS +MOON +MOONBEAM +MOONBEAMS +MOONBLIND +MOONBOW +MOONBOWS +MOONCALF +MOONCALVES +MOONCHILD +MOONCHILDREN +MOONDUST +MOONDUSTS +MOONED +MOONER +MOONERS +MOONEYE +MOONEYES +MOONFACED +MOONFISH +MOONFISHES +MOONFLOWER +MOONFLOWERS +MOONIER +MOONIEST +MOONILY +MOONINESS +MOONINESSES +MOONING +MOONISH +MOONISHLY +MOONLESS +MOONLET +MOONLETS +MOONLIGHT +MOONLIGHTED +MOONLIGHTER +MOONLIGHTERS +MOONLIGHTING +MOONLIGHTS +MOONLIKE +MOONLIT +MOONPORT +MOONPORTS +MOONQUAKE +MOONQUAKES +MOONRISE +MOONRISES +MOONROOF +MOONROOFS +MOONS +MOONSAIL +MOONSAILS +MOONSCAPE +MOONSCAPES +MOONSEED +MOONSEEDS +MOONSET +MOONSETS +MOONSHINE +MOONSHINED +MOONSHINER +MOONSHINERS +MOONSHINES +MOONSHINING +MOONSHINY +MOONSHOT +MOONSHOTS +MOONSTONE +MOONSTONES +MOONSTRUCK +MOONWALK +MOONWALKED +MOONWALKING +MOONWALKS +MOONWARD +MOONWARDS +MOONWORT +MOONWORTS +MOONY +MOOR +MOORAGE +MOORAGES +MOORCOCK +MOORCOCKS +MOORED +MOORFOWL +MOORFOWLS +MOORHEN +MOORHENS +MOORIER +MOORIEST +MOORING +MOORINGS +MOORISH +MOORLAND +MOORLANDS +MOORS +MOORWORT +MOORWORTS +MOORY +MOOS +MOOSE +MOOSEBIRD +MOOSEBIRDS +MOOSEWOOD +MOOSEWOODS +MOOT +MOOTED +MOOTER +MOOTERS +MOOTING +MOOTNESS +MOOTNESSES +MOOTS +MOP +MOPBOARD +MOPBOARDS +MOPE +MOPED +MOPEDS +MOPER +MOPERIES +MOPERS +MOPERY +MOPES +MOPEY +MOPIER +MOPIEST +MOPINESS +MOPINESSES +MOPING +MOPINGLY +MOPISH +MOPISHLY +MOPOKE +MOPOKES +MOPPED +MOPPER +MOPPERS +MOPPET +MOPPETS +MOPPING +MOPS +MOPY +MOQUETTE +MOQUETTES +MOR +MORA +MORAE +MORAINAL +MORAINE +MORAINES +MORAINIC +MORAL +MORALE +MORALES +MORALISE +MORALISED +MORALISES +MORALISING +MORALISM +MORALISMS +MORALIST +MORALISTIC +MORALISTICALLY +MORALISTS +MORALITIES +MORALITY +MORALIZATION +MORALIZATIONS +MORALIZE +MORALIZED +MORALIZER +MORALIZERS +MORALIZES +MORALIZING +MORALLY +MORALS +MORAS +MORASS +MORASSES +MORASSY +MORATORIA +MORATORIUM +MORATORIUMS +MORATORY +MORAY +MORAYS +MORBID +MORBIDITIES +MORBIDITY +MORBIDLY +MORBIDNESS +MORBIDNESSES +MORBIFIC +MORBILLI +MORCEAU +MORCEAUX +MORDACITIES +MORDACITY +MORDANCIES +MORDANCY +MORDANT +MORDANTED +MORDANTING +MORDANTLY +MORDANTS +MORDENT +MORDENTS +MORE +MOREEN +MOREENS +MOREL +MORELLE +MORELLES +MORELLO +MORELLOS +MORELS +MORENESS +MORENESSES +MOREOVER +MORES +MORESQUE +MORESQUES +MORGAN +MORGANATIC +MORGANATICALLY +MORGANITE +MORGANITES +MORGANS +MORGEN +MORGENS +MORGUE +MORGUES +MORIBUND +MORIBUNDITIES +MORIBUNDITY +MORION +MORIONS +MORN +MORNING +MORNINGS +MORNS +MOROCCO +MOROCCOS +MORON +MORONIC +MORONICALLY +MORONISM +MORONISMS +MORONITIES +MORONITY +MORONS +MOROSE +MOROSELY +MOROSENESS +MOROSENESSES +MOROSITIES +MOROSITY +MORPH +MORPHACTIN +MORPHACTINS +MORPHALLAXES +MORPHALLAXIS +MORPHED +MORPHEME +MORPHEMES +MORPHEMIC +MORPHEMICALLY +MORPHEMICS +MORPHIA +MORPHIAS +MORPHIC +MORPHIN +MORPHINE +MORPHINES +MORPHING +MORPHINGS +MORPHINIC +MORPHINISM +MORPHINISMS +MORPHINS +MORPHO +MORPHOGEN +MORPHOGENESES +MORPHOGENESIS +MORPHOGENETIC +MORPHOGENIC +MORPHOGENS +MORPHOLOGIC +MORPHOLOGICAL +MORPHOLOGICALLY +MORPHOLOGIES +MORPHOLOGIST +MORPHOLOGISTS +MORPHOLOGY +MORPHOMETRIC +MORPHOMETRIES +MORPHOMETRY +MORPHOPHONEMICS +MORPHOS +MORPHOSES +MORPHOSIS +MORPHS +MORRION +MORRIONS +MORRIS +MORRISES +MORRO +MORROS +MORROW +MORROWS +MORS +MORSE +MORSEL +MORSELED +MORSELING +MORSELLED +MORSELLING +MORSELS +MORT +MORTADELLA +MORTADELLAS +MORTAL +MORTALITIES +MORTALITY +MORTALLY +MORTALS +MORTAR +MORTARBOARD +MORTARBOARDS +MORTARED +MORTARING +MORTARLESS +MORTARMAN +MORTARMEN +MORTARS +MORTARY +MORTGAGE +MORTGAGED +MORTGAGEE +MORTGAGEES +MORTGAGER +MORTGAGERS +MORTGAGES +MORTGAGING +MORTGAGOR +MORTGAGORS +MORTICE +MORTICED +MORTICES +MORTICIAN +MORTICIANS +MORTICING +MORTIFICATION +MORTIFICATIONS +MORTIFIED +MORTIFIER +MORTIFIERS +MORTIFIES +MORTIFY +MORTIFYING +MORTISE +MORTISED +MORTISER +MORTISERS +MORTISES +MORTISING +MORTMAIN +MORTMAINS +MORTS +MORTUARIES +MORTUARY +MORULA +MORULAE +MORULAR +MORULAS +MORULATION +MORULATIONS +MOS +MOSAIC +MOSAICALLY +MOSAICISM +MOSAICISMS +MOSAICIST +MOSAICISTS +MOSAICKED +MOSAICKING +MOSAICLIKE +MOSAICS +MOSASAUR +MOSASAURS +MOSCHATE +MOSCHATEL +MOSCHATELS +MOSEY +MOSEYED +MOSEYING +MOSEYS +MOSH +MOSHAV +MOSHAVIM +MOSHED +MOSHER +MOSHERS +MOSHES +MOSHING +MOSHINGS +MOSK +MOSKS +MOSQUE +MOSQUES +MOSQUITO +MOSQUITOES +MOSQUITOEY +MOSQUITOS +MOSS +MOSSBACK +MOSSBACKED +MOSSBACKS +MOSSED +MOSSER +MOSSERS +MOSSES +MOSSGROWN +MOSSIER +MOSSIEST +MOSSINESS +MOSSINESSES +MOSSING +MOSSLIKE +MOSSO +MOSSY +MOST +MOSTE +MOSTEST +MOSTESTS +MOSTLY +MOSTS +MOT +MOTE +MOTEL +MOTELS +MOTES +MOTET +MOTETS +MOTEY +MOTH +MOTHBALL +MOTHBALLED +MOTHBALLING +MOTHBALLS +MOTHER +MOTHERBOARD +MOTHERBOARDS +MOTHERED +MOTHERFUCKER +MOTHERFUCKERS +MOTHERFUCKING +MOTHERHOOD +MOTHERHOODS +MOTHERHOUSE +MOTHERHOUSES +MOTHERING +MOTHERINGS +MOTHERLAND +MOTHERLANDS +MOTHERLESS +MOTHERLESSNESS +MOTHERLINESS +MOTHERLINESSES +MOTHERLY +MOTHERS +MOTHERY +MOTHIER +MOTHIEST +MOTHLIKE +MOTHPROOF +MOTHPROOFED +MOTHPROOFER +MOTHPROOFERS +MOTHPROOFING +MOTHPROOFS +MOTHS +MOTHY +MOTIF +MOTIFIC +MOTIFS +MOTILE +MOTILES +MOTILITIES +MOTILITY +MOTION +MOTIONAL +MOTIONED +MOTIONER +MOTIONERS +MOTIONING +MOTIONLESS +MOTIONLESSLY +MOTIONLESSNESS +MOTIONS +MOTIVATE +MOTIVATED +MOTIVATES +MOTIVATING +MOTIVATION +MOTIVATIONAL +MOTIVATIONALLY +MOTIVATIONS +MOTIVATIVE +MOTIVATOR +MOTIVATORS +MOTIVE +MOTIVED +MOTIVELESS +MOTIVELESSLY +MOTIVES +MOTIVIC +MOTIVING +MOTIVITIES +MOTIVITY +MOTLEY +MOTLEYER +MOTLEYEST +MOTLEYS +MOTLIER +MOTLIEST +MOTMOT +MOTMOTS +MOTOCROSS +MOTOCROSSES +MOTONEURON +MOTONEURONAL +MOTONEURONS +MOTOR +MOTORBIKE +MOTORBIKED +MOTORBIKES +MOTORBIKING +MOTORBOAT +MOTORBOATED +MOTORBOATER +MOTORBOATERS +MOTORBOATING +MOTORBOATINGS +MOTORBOATS +MOTORBUS +MOTORBUSES +MOTORBUSSES +MOTORCADE +MOTORCADED +MOTORCADES +MOTORCADING +MOTORCAR +MOTORCARS +MOTORCYCLE +MOTORCYCLED +MOTORCYCLES +MOTORCYCLING +MOTORCYCLIST +MOTORCYCLISTS +MOTORDOM +MOTORDOMS +MOTORED +MOTORIC +MOTORICALLY +MOTORING +MOTORINGS +MOTORISE +MOTORISED +MOTORISES +MOTORISING +MOTORIST +MOTORISTS +MOTORIZATION +MOTORIZATIONS +MOTORIZE +MOTORIZED +MOTORIZES +MOTORIZING +MOTORLESS +MOTORMAN +MOTORMEN +MOTORMOUTH +MOTORMOUTHS +MOTORS +MOTORSHIP +MOTORSHIPS +MOTORTRUCK +MOTORTRUCKS +MOTORWAY +MOTORWAYS +MOTS +MOTT +MOTTE +MOTTES +MOTTLE +MOTTLED +MOTTLER +MOTTLERS +MOTTLES +MOTTLING +MOTTO +MOTTOES +MOTTOS +MOTTS +MOUCH +MOUCHED +MOUCHES +MOUCHING +MOUCHOIR +MOUCHOIRS +MOUE +MOUES +MOUFFLON +MOUFFLONS +MOUFLON +MOUFLONS +MOUILLE +MOUJIK +MOUJIKS +MOULAGE +MOULAGES +MOULD +MOULDED +MOULDER +MOULDERED +MOULDERING +MOULDERS +MOULDIER +MOULDIEST +MOULDING +MOULDINGS +MOULDS +MOULDY +MOULIN +MOULINS +MOULT +MOULTED +MOULTER +MOULTERS +MOULTING +MOULTS +MOUND +MOUNDBIRD +MOUNDBIRDS +MOUNDED +MOUNDING +MOUNDS +MOUNT +MOUNTABLE +MOUNTAIN +MOUNTAINEER +MOUNTAINEERING +MOUNTAINEERINGS +MOUNTAINEERS +MOUNTAINOUS +MOUNTAINOUSLY +MOUNTAINOUSNESS +MOUNTAINS +MOUNTAINSIDE +MOUNTAINSIDES +MOUNTAINTOP +MOUNTAINTOPS +MOUNTAINY +MOUNTEBANK +MOUNTEBANKED +MOUNTEBANKERIES +MOUNTEBANKERY +MOUNTEBANKING +MOUNTEBANKS +MOUNTED +MOUNTER +MOUNTERS +MOUNTING +MOUNTINGS +MOUNTS +MOURN +MOURNED +MOURNER +MOURNERS +MOURNFUL +MOURNFULLER +MOURNFULLEST +MOURNFULLY +MOURNFULNESS +MOURNFULNESSES +MOURNING +MOURNINGLY +MOURNINGS +MOURNS +MOUSAKA +MOUSAKAS +MOUSE +MOUSEBIRD +MOUSEBIRDS +MOUSED +MOUSELIKE +MOUSEPAD +MOUSEPADS +MOUSER +MOUSERS +MOUSES +MOUSETAIL +MOUSETAILS +MOUSETRAP +MOUSETRAPPED +MOUSETRAPPING +MOUSETRAPS +MOUSEY +MOUSIER +MOUSIEST +MOUSILY +MOUSINESS +MOUSINESSES +MOUSING +MOUSINGS +MOUSSAKA +MOUSSAKAS +MOUSSE +MOUSSED +MOUSSELINE +MOUSSELINES +MOUSSES +MOUSSING +MOUSTACHE +MOUSTACHES +MOUSTACHIO +MOUSTACHIOS +MOUSY +MOUTH +MOUTHBREEDER +MOUTHBREEDERS +MOUTHED +MOUTHER +MOUTHERS +MOUTHFEEL +MOUTHFEELS +MOUTHFUL +MOUTHFULS +MOUTHIER +MOUTHIEST +MOUTHILY +MOUTHING +MOUTHLESS +MOUTHLIKE +MOUTHPART +MOUTHPARTS +MOUTHPIECE +MOUTHPIECES +MOUTHS +MOUTHWASH +MOUTHWASHES +MOUTHWATERING +MOUTHWATERINGLY +MOUTHY +MOUTON +MOUTONNEE +MOUTONS +MOVABILITIES +MOVABILITY +MOVABLE +MOVABLENESS +MOVABLENESSES +MOVABLES +MOVABLY +MOVE +MOVEABLE +MOVEABLES +MOVEABLY +MOVED +MOVELESS +MOVELESSLY +MOVELESSNESS +MOVELESSNESSES +MOVEMENT +MOVEMENTS +MOVER +MOVERS +MOVES +MOVIE +MOVIEDOM +MOVIEDOMS +MOVIEGOER +MOVIEGOERS +MOVIEGOING +MOVIEGOINGS +MOVIEMAKER +MOVIEMAKERS +MOVIEMAKING +MOVIEMAKINGS +MOVIEOLA +MOVIEOLAS +MOVIES +MOVING +MOVINGLY +MOVIOLA +MOVIOLAS +MOW +MOWED +MOWER +MOWERS +MOWING +MOWINGS +MOWN +MOWS +MOXA +MOXAS +MOXIE +MOXIES +MOZETTA +MOZETTAS +MOZETTE +MOZO +MOZOS +MOZZARELLA +MOZZARELLAS +MOZZETTA +MOZZETTAS +MOZZETTE +MRIDANGA +MRIDANGAM +MRIDANGAMS +MRIDANGAS +MU +MUCH +MUCHACHO +MUCHACHOS +MUCHES +MUCHLY +MUCHNESS +MUCHNESSES +MUCHO +MUCID +MUCIDITIES +MUCIDITY +MUCILAGE +MUCILAGES +MUCILAGINOUS +MUCILAGINOUSLY +MUCIN +MUCINOGEN +MUCINOGENS +MUCINOID +MUCINOUS +MUCINS +MUCK +MUCKAMUCK +MUCKAMUCKS +MUCKED +MUCKER +MUCKERS +MUCKIER +MUCKIEST +MUCKILY +MUCKING +MUCKLE +MUCKLES +MUCKLUCK +MUCKLUCKS +MUCKRAKE +MUCKRAKED +MUCKRAKER +MUCKRAKERS +MUCKRAKES +MUCKRAKING +MUCKS +MUCKWORM +MUCKWORMS +MUCKY +MUCLUC +MUCLUCS +MUCOCUTANEOUS +MUCOID +MUCOIDAL +MUCOIDS +MUCOLYTIC +MUCOPEPTIDE +MUCOPEPTIDES +MUCOPROTEIN +MUCOPROTEINS +MUCOR +MUCORS +MUCOSA +MUCOSAE +MUCOSAL +MUCOSAS +MUCOSE +MUCOSITIES +MUCOSITY +MUCOUS +MUCRO +MUCRONATE +MUCRONES +MUCUS +MUCUSES +MUD +MUDBUG +MUDBUGS +MUDCAP +MUDCAPPED +MUDCAPPING +MUDCAPS +MUDCAT +MUDCATS +MUDDED +MUDDER +MUDDERS +MUDDIED +MUDDIER +MUDDIES +MUDDIEST +MUDDILY +MUDDINESS +MUDDINESSES +MUDDING +MUDDLE +MUDDLED +MUDDLEHEADED +MUDDLEHEADEDLY +MUDDLER +MUDDLERS +MUDDLES +MUDDLING +MUDDLY +MUDDY +MUDDYING +MUDFISH +MUDFISHES +MUDFLAP +MUDFLAPS +MUDFLAT +MUDFLATS +MUDFLOW +MUDFLOWS +MUDGUARD +MUDGUARDS +MUDHEN +MUDHENS +MUDHOLE +MUDHOLES +MUDLARK +MUDLARKS +MUDPACK +MUDPACKS +MUDPUPPIES +MUDPUPPY +MUDRA +MUDRAS +MUDROCK +MUDROCKS +MUDROOM +MUDROOMS +MUDS +MUDSILL +MUDSILLS +MUDSKIPPER +MUDSKIPPERS +MUDSLIDE +MUDSLIDES +MUDSLINGER +MUDSLINGERS +MUDSLINGING +MUDSLINGINGS +MUDSTONE +MUDSTONES +MUEDDIN +MUEDDINS +MUENSTER +MUENSTERS +MUESLI +MUESLIS +MUEZZIN +MUEZZINS +MUFF +MUFFED +MUFFIN +MUFFINEER +MUFFINEERS +MUFFING +MUFFINS +MUFFLE +MUFFLED +MUFFLER +MUFFLERED +MUFFLERS +MUFFLES +MUFFLING +MUFFS +MUFTI +MUFTIS +MUG +MUGFUL +MUGFULS +MUGG +MUGGAR +MUGGARS +MUGGED +MUGGEE +MUGGEES +MUGGER +MUGGERS +MUGGIER +MUGGIEST +MUGGILY +MUGGINESS +MUGGINESSES +MUGGING +MUGGINGS +MUGGINS +MUGGS +MUGGUR +MUGGURS +MUGGY +MUGHAL +MUGHALS +MUGS +MUGWORT +MUGWORTS +MUGWUMP +MUGWUMPS +MUHLIES +MUHLY +MUJAHEDEEN +MUJAHEDIN +MUJAHIDEEN +MUJAHIDIN +MUJIK +MUJIKS +MUKLUK +MUKLUKS +MUKTUK +MUKTUKS +MULATTO +MULATTOES +MULATTOS +MULBERRIES +MULBERRY +MULCH +MULCHED +MULCHES +MULCHING +MULCT +MULCTED +MULCTING +MULCTS +MULE +MULED +MULES +MULETA +MULETAS +MULETEER +MULETEERS +MULEY +MULEYS +MULIEBRITIES +MULIEBRITY +MULING +MULISH +MULISHLY +MULISHNESS +MULISHNESSES +MULL +MULLA +MULLAH +MULLAHISM +MULLAHISMS +MULLAHS +MULLAS +MULLED +MULLEIN +MULLEINS +MULLEN +MULLENS +MULLER +MULLERS +MULLET +MULLETS +MULLEY +MULLEYS +MULLIGAN +MULLIGANS +MULLIGATAWNIES +MULLIGATAWNY +MULLING +MULLION +MULLIONED +MULLIONING +MULLIONS +MULLITE +MULLITES +MULLOCK +MULLOCKS +MULLOCKY +MULLS +MULTIAGE +MULTIAGENCY +MULTIARMED +MULTIATOM +MULTIAUTHOR +MULTIAXIAL +MULTIBAND +MULTIBANK +MULTIBARREL +MULTIBARRELED +MULTIBILLION +MULTIBLADED +MULTIBRANCHED +MULTIBUILDING +MULTICAMPUS +MULTICAR +MULTICARBON +MULTICAUSAL +MULTICELL +MULTICELLED +MULTICELLULAR +MULTICENTER +MULTICHAIN +MULTICHAMBERED +MULTICHANNEL +MULTICHARACTER +MULTICITY +MULTICLIENT +MULTICOATED +MULTICOLOR +MULTICOLORED +MULTICOLORS +MULTICOLUMN +MULTICOMPONENT +MULTICONDUCTOR +MULTICOPY +MULTICOUNTY +MULTICOURSE +MULTICULTURAL +MULTICURIE +MULTICURRENCIES +MULTICURRENCY +MULTIDAY +MULTIDIALECTAL +MULTIDISC +MULTIDISCIPLINE +MULTIDIVISIONAL +MULTIDOMAIN +MULTIDRUG +MULTIELECTRODE +MULTIELEMENT +MULTIEMPLOYER +MULTIEMPLOYERS +MULTIENGINE +MULTIENZYME +MULTIETHNIC +MULTIETHNICS +MULTIFACETED +MULTIFACTOR +MULTIFACTORIAL +MULTIFAMILY +MULTIFARIOUS +MULTIFID +MULTIFILAMENT +MULTIFLASH +MULTIFOCAL +MULTIFOIL +MULTIFOILS +MULTIFOLD +MULTIFORM +MULTIFORMITIES +MULTIFORMITY +MULTIFREQUENCY +MULTIFUNCTION +MULTIFUNCTIONAL +MULTIGENIC +MULTIGERM +MULTIGRADE +MULTIGRAIN +MULTIGRID +MULTIGROUP +MULTIHEADED +MULTIHOSPITAL +MULTIHUED +MULTIHULL +MULTIHULLS +MULTIJET +MULTILANE +MULTILANES +MULTILATERAL +MULTILATERALISM +MULTILATERALIST +MULTILATERALLY +MULTILAYER +MULTILAYERED +MULTILEVEL +MULTILEVELED +MULTILINE +MULTILINGUAL +MULTILINGUALISM +MULTILINGUALLY +MULTILOBE +MULTILOBED +MULTILOBES +MULTIMANNED +MULTIMEDIA +MULTIMEDIAS +MULTIMEGATON +MULTIMEGAWATT +MULTIMEGAWATTS +MULTIMEMBER +MULTIMETALLIC +MULTIMILLENNIAL +MULTIMILLION +MULTIMODAL +MULTIMODE +MULTIMOLECULAR +MULTINATION +MULTINATIONAL +MULTINATIONALS +MULTINOMIAL +MULTINOMIALS +MULTINUCLEAR +MULTINUCLEATE +MULTINUCLEATED +MULTIORGASMIC +MULTIPACK +MULTIPACKS +MULTIPAGE +MULTIPANED +MULTIPARA +MULTIPARAE +MULTIPARAMETER +MULTIPARAS +MULTIPAROUS +MULTIPART +MULTIPARTICLE +MULTIPARTITE +MULTIPARTY +MULTIPATH +MULTIPED +MULTIPEDE +MULTIPEDES +MULTIPEDS +MULTIPHASE +MULTIPHASIC +MULTIPHOTON +MULTIPICTURE +MULTIPIECE +MULTIPION +MULTIPISTON +MULTIPLANT +MULTIPLAYER +MULTIPLE +MULTIPLES +MULTIPLET +MULTIPLETS +MULTIPLEX +MULTIPLEXED +MULTIPLEXER +MULTIPLEXERS +MULTIPLEXES +MULTIPLEXING +MULTIPLEXOR +MULTIPLEXORS +MULTIPLICAND +MULTIPLICANDS +MULTIPLICATION +MULTIPLICATIONS +MULTIPLICATIVE +MULTIPLICITIES +MULTIPLICITY +MULTIPLIED +MULTIPLIER +MULTIPLIERS +MULTIPLIES +MULTIPLY +MULTIPLYING +MULTIPOLAR +MULTIPOLARITIES +MULTIPOLARITY +MULTIPOLE +MULTIPOLES +MULTIPORT +MULTIPOTENTIAL +MULTIPOWER +MULTIPROBLEM +MULTIPROCESSING +MULTIPROCESSOR +MULTIPROCESSORS +MULTIPRODUCT +MULTIPRONGED +MULTIPURPOSE +MULTIRACIAL +MULTIRACIALISM +MULTIRACIALISMS +MULTIRANGE +MULTIREGIONAL +MULTIRELIGIOUS +MULTIROOM +MULTISCREEN +MULTISENSE +MULTISENSORY +MULTISERVICE +MULTISIDED +MULTISITE +MULTISIZE +MULTISKILLED +MULTISOURCE +MULTISPECIES +MULTISPECTRAL +MULTISPEED +MULTISPORT +MULTISTAGE +MULTISTATE +MULTISTEMMED +MULTISTEP +MULTISTORIED +MULTISTORY +MULTISTRANDED +MULTISYLLABIC +MULTISYSTEM +MULTITALENTED +MULTITASK +MULTITASKED +MULTITASKING +MULTITASKINGS +MULTITASKS +MULTITERMINAL +MULTITIERED +MULTITON +MULTITONE +MULTITONES +MULTITOWERED +MULTITRACK +MULTITRILLION +MULTITUDE +MULTITUDES +MULTITUDINOUS +MULTITUDINOUSLY +MULTIUNION +MULTIUNIT +MULTIUSE +MULTIUSER +MULTIVALENCE +MULTIVALENCES +MULTIVALENT +MULTIVALENTS +MULTIVARIABLE +MULTIVARIATE +MULTIVERSITIES +MULTIVERSITY +MULTIVITAMIN +MULTIVITAMINS +MULTIVOLTINE +MULTIVOLUME +MULTIWALL +MULTIWARHEAD +MULTIWAVELENGTH +MULTIYEAR +MULTURE +MULTURES +MUM +MUMBLE +MUMBLED +MUMBLER +MUMBLERS +MUMBLES +MUMBLING +MUMBLY +MUMM +MUMMED +MUMMER +MUMMERIES +MUMMERS +MUMMERY +MUMMICHOG +MUMMICHOGS +MUMMIED +MUMMIES +MUMMIFICATION +MUMMIFICATIONS +MUMMIFIED +MUMMIFIES +MUMMIFY +MUMMIFYING +MUMMING +MUMMS +MUMMY +MUMMYING +MUMP +MUMPED +MUMPER +MUMPERS +MUMPING +MUMPS +MUMS +MUMU +MUMUS +MUN +MUNCH +MUNCHABLE +MUNCHABLES +MUNCHED +MUNCHER +MUNCHERS +MUNCHES +MUNCHIES +MUNCHING +MUNCHKIN +MUNCHKINS +MUNDANE +MUNDANELY +MUNDANENESS +MUNDANENESSES +MUNDANITIES +MUNDANITY +MUNDUNGO +MUNDUNGOS +MUNDUNGUS +MUNDUNGUSES +MUNGO +MUNGOES +MUNGOOSE +MUNGOOSES +MUNGOS +MUNI +MUNICIPAL +MUNICIPALITIES +MUNICIPALITY +MUNICIPALIZE +MUNICIPALIZED +MUNICIPALIZES +MUNICIPALIZING +MUNICIPALLY +MUNICIPALS +MUNIFICENCE +MUNIFICENCES +MUNIFICENT +MUNIFICENTLY +MUNIMENT +MUNIMENTS +MUNIS +MUNITION +MUNITIONED +MUNITIONING +MUNITIONS +MUNNION +MUNNIONS +MUNS +MUNSTER +MUNSTERS +MUNTIN +MUNTING +MUNTINGS +MUNTINS +MUNTJAC +MUNTJACS +MUNTJAK +MUNTJAKS +MUON +MUONIC +MUONIUM +MUONIUMS +MUONS +MURA +MURAENID +MURAENIDS +MURAL +MURALED +MURALIST +MURALISTS +MURALLED +MURALS +MURAS +MURDER +MURDERED +MURDEREE +MURDEREES +MURDERER +MURDERERS +MURDERESS +MURDERESSES +MURDERING +MURDEROUS +MURDEROUSLY +MURDEROUSNESS +MURDEROUSNESSES +MURDERS +MURE +MURED +MUREIN +MUREINS +MURES +MUREX +MUREXES +MURIATE +MURIATED +MURIATES +MURICATE +MURICATED +MURICES +MURID +MURIDS +MURINE +MURINES +MURING +MURK +MURKER +MURKEST +MURKIER +MURKIEST +MURKILY +MURKINESS +MURKINESSES +MURKLY +MURKS +MURKY +MURMUR +MURMURED +MURMURER +MURMURERS +MURMURING +MURMUROUS +MURMUROUSLY +MURMURS +MURPHIES +MURPHY +MURR +MURRA +MURRAIN +MURRAINS +MURRAS +MURRE +MURRELET +MURRELETS +MURRES +MURREY +MURREYS +MURRHA +MURRHAS +MURRHINE +MURRIES +MURRINE +MURRS +MURRY +MURTHER +MURTHERED +MURTHERING +MURTHERS +MUS +MUSCA +MUSCADEL +MUSCADELS +MUSCADET +MUSCADETS +MUSCADINE +MUSCADINES +MUSCAE +MUSCARINE +MUSCARINES +MUSCARINIC +MUSCAT +MUSCATEL +MUSCATELS +MUSCATS +MUSCID +MUSCIDS +MUSCLE +MUSCLED +MUSCLEMAN +MUSCLEMEN +MUSCLES +MUSCLING +MUSCLY +MUSCOVADO +MUSCOVADOS +MUSCOVITE +MUSCOVITES +MUSCULAR +MUSCULARITIES +MUSCULARITY +MUSCULARLY +MUSCULATURE +MUSCULATURES +MUSCULOSKELETAL +MUSE +MUSED +MUSEFUL +MUSEOLOGICAL +MUSEOLOGIES +MUSEOLOGIST +MUSEOLOGISTS +MUSEOLOGY +MUSER +MUSERS +MUSES +MUSETTE +MUSETTES +MUSEUM +MUSEUMS +MUSH +MUSHED +MUSHER +MUSHERS +MUSHES +MUSHIER +MUSHIEST +MUSHILY +MUSHINESS +MUSHINESSES +MUSHING +MUSHROOM +MUSHROOMED +MUSHROOMING +MUSHROOMS +MUSHY +MUSIC +MUSICAL +MUSICALE +MUSICALES +MUSICALISE +MUSICALISED +MUSICALISES +MUSICALISING +MUSICALITIES +MUSICALITY +MUSICALIZATION +MUSICALIZATIONS +MUSICALIZE +MUSICALIZED +MUSICALIZES +MUSICALIZING +MUSICALLY +MUSICALS +MUSICIAN +MUSICIANLY +MUSICIANS +MUSICIANSHIP +MUSICIANSHIPS +MUSICK +MUSICKED +MUSICKING +MUSICKS +MUSICLESS +MUSICOLOGICAL +MUSICOLOGIES +MUSICOLOGIST +MUSICOLOGISTS +MUSICOLOGY +MUSICS +MUSING +MUSINGLY +MUSINGS +MUSJID +MUSJIDS +MUSK +MUSKEG +MUSKEGS +MUSKELLUNGE +MUSKET +MUSKETEER +MUSKETEERS +MUSKETRIES +MUSKETRY +MUSKETS +MUSKIE +MUSKIER +MUSKIES +MUSKIEST +MUSKILY +MUSKINESS +MUSKINESSES +MUSKIT +MUSKITS +MUSKMELON +MUSKMELONS +MUSKOX +MUSKOXEN +MUSKRAT +MUSKRATS +MUSKROOT +MUSKROOTS +MUSKS +MUSKY +MUSLIN +MUSLINS +MUSPIKE +MUSPIKES +MUSQUASH +MUSQUASHES +MUSS +MUSSED +MUSSEL +MUSSELS +MUSSES +MUSSIER +MUSSIEST +MUSSILY +MUSSINESS +MUSSINESSES +MUSSING +MUSSY +MUST +MUSTACHE +MUSTACHED +MUSTACHES +MUSTACHIO +MUSTACHIOED +MUSTACHIOS +MUSTANG +MUSTANGS +MUSTARD +MUSTARDS +MUSTARDY +MUSTED +MUSTEE +MUSTEES +MUSTELID +MUSTELIDS +MUSTELINE +MUSTER +MUSTERED +MUSTERING +MUSTERS +MUSTH +MUSTHS +MUSTIER +MUSTIEST +MUSTILY +MUSTINESS +MUSTINESSES +MUSTING +MUSTS +MUSTY +MUT +MUTABILITIES +MUTABILITY +MUTABLE +MUTABLY +MUTAGEN +MUTAGENESES +MUTAGENESIS +MUTAGENIC +MUTAGENICALLY +MUTAGENICITIES +MUTAGENICITY +MUTAGENS +MUTANT +MUTANTS +MUTASE +MUTASES +MUTATE +MUTATED +MUTATES +MUTATING +MUTATION +MUTATIONAL +MUTATIONALLY +MUTATIONS +MUTATIVE +MUTCH +MUTCHES +MUTCHKIN +MUTCHKINS +MUTE +MUTED +MUTEDLY +MUTELY +MUTENESS +MUTENESSES +MUTER +MUTES +MUTEST +MUTICOUS +MUTILATE +MUTILATED +MUTILATES +MUTILATING +MUTILATION +MUTILATIONS +MUTILATOR +MUTILATORS +MUTINE +MUTINED +MUTINEER +MUTINEERED +MUTINEERING +MUTINEERS +MUTINES +MUTING +MUTINIED +MUTINIES +MUTINING +MUTINOUS +MUTINOUSLY +MUTINOUSNESS +MUTINOUSNESSES +MUTINY +MUTINYING +MUTISM +MUTISMS +MUTON +MUTONS +MUTS +MUTT +MUTTER +MUTTERED +MUTTERER +MUTTERERS +MUTTERING +MUTTERS +MUTTON +MUTTONCHOPS +MUTTONFISH +MUTTONFISHES +MUTTONS +MUTTONY +MUTTS +MUTUAL +MUTUALISM +MUTUALISMS +MUTUALIST +MUTUALISTIC +MUTUALISTS +MUTUALITIES +MUTUALITY +MUTUALIZATION +MUTUALIZATIONS +MUTUALIZE +MUTUALIZED +MUTUALIZES +MUTUALIZING +MUTUALLY +MUTUALS +MUTUEL +MUTUELS +MUTULAR +MUTULE +MUTULES +MUUMUU +MUUMUUS +MUZHIK +MUZHIKS +MUZJIK +MUZJIKS +MUZZIER +MUZZIEST +MUZZILY +MUZZINESS +MUZZINESSES +MUZZLE +MUZZLED +MUZZLER +MUZZLERS +MUZZLES +MUZZLING +MUZZY +MY +MYALGIA +MYALGIAS +MYALGIC +MYASES +MYASIS +MYASTHENIA +MYASTHENIAS +MYASTHENIC +MYASTHENICS +MYC +MYCELE +MYCELES +MYCELIA +MYCELIAL +MYCELIAN +MYCELIUM +MYCELOID +MYCETOMA +MYCETOMAS +MYCETOMATA +MYCETOMATOUS +MYCETOPHAGOUS +MYCETOZOAN +MYCETOZOANS +MYCOBACTERIA +MYCOBACTERIAL +MYCOBACTERIUM +MYCOFLORA +MYCOFLORAE +MYCOFLORAS +MYCOLOGIC +MYCOLOGICAL +MYCOLOGICALLY +MYCOLOGIES +MYCOLOGIST +MYCOLOGISTS +MYCOLOGY +MYCOPHAGIES +MYCOPHAGIST +MYCOPHAGISTS +MYCOPHAGOUS +MYCOPHAGY +MYCOPHILE +MYCOPHILES +MYCOPLASMA +MYCOPLASMAL +MYCOPLASMAS +MYCOPLASMATA +MYCORHIZA +MYCORHIZAE +MYCORHIZAS +MYCORRHIZA +MYCORRHIZAE +MYCORRHIZAL +MYCORRHIZAS +MYCOSES +MYCOSIS +MYCOTIC +MYCOTOXIN +MYCOTOXINS +MYCOVIRUS +MYCOVIRUSES +MYCS +MYDRIASES +MYDRIASIS +MYDRIATIC +MYDRIATICS +MYELENCEPHALA +MYELENCEPHALIC +MYELENCEPHALON +MYELIN +MYELINATED +MYELINE +MYELINES +MYELINIC +MYELINS +MYELITIDES +MYELITIS +MYELOBLAST +MYELOBLASTIC +MYELOBLASTS +MYELOCYTE +MYELOCYTES +MYELOCYTIC +MYELOFIBROSES +MYELOFIBROSIS +MYELOFIBROTIC +MYELOGENOUS +MYELOGRAM +MYELOGRAMS +MYELOID +MYELOMA +MYELOMAS +MYELOMATA +MYELOMATOUS +MYELOPATHIC +MYELOPATHIES +MYELOPATHY +MYIASES +MYIASIS +MYLAR +MYLARS +MYLONITE +MYLONITES +MYNA +MYNAH +MYNAHS +MYNAS +MYNHEER +MYNHEERS +MYOBLAST +MYOBLASTS +MYOCARDIA +MYOCARDIAL +MYOCARDITIS +MYOCARDITISES +MYOCARDIUM +MYOCLONIC +MYOCLONUS +MYOCLONUSES +MYOELECTRIC +MYOELECTRICAL +MYOFIBRIL +MYOFIBRILLAR +MYOFIBRILS +MYOFILAMENT +MYOFILAMENTS +MYOGENIC +MYOGLOBIN +MYOGLOBINS +MYOGRAPH +MYOGRAPHS +MYOID +MYOINOSITOL +MYOINOSITOLS +MYOLOGIC +MYOLOGIES +MYOLOGIST +MYOLOGISTS +MYOLOGY +MYOMA +MYOMAS +MYOMATA +MYOMATOUS +MYONEURAL +MYOPATHIC +MYOPATHIES +MYOPATHY +MYOPE +MYOPES +MYOPIA +MYOPIAS +MYOPIC +MYOPICALLY +MYOPIES +MYOPY +MYOSCOPE +MYOSCOPES +MYOSES +MYOSIN +MYOSINS +MYOSIS +MYOSITIS +MYOSITISES +MYOSOTE +MYOSOTES +MYOSOTIS +MYOSOTISES +MYOTIC +MYOTICS +MYOTOME +MYOTOMES +MYOTONIA +MYOTONIAS +MYOTONIC +MYRIAD +MYRIADS +MYRIAPOD +MYRIAPODS +MYRICA +MYRICAS +MYRIOPOD +MYRIOPODS +MYRMECOLOGICAL +MYRMECOLOGIES +MYRMECOLOGIST +MYRMECOLOGISTS +MYRMECOLOGY +MYRMECOPHILE +MYRMECOPHILES +MYRMECOPHILOUS +MYRMIDON +MYRMIDONES +MYRMIDONS +MYROBALAN +MYROBALANS +MYRRH +MYRRHIC +MYRRHS +MYRTLE +MYRTLES +MYSELF +MYSID +MYSIDS +MYSOST +MYSOSTS +MYSTAGOG +MYSTAGOGIES +MYSTAGOGS +MYSTAGOGUE +MYSTAGOGUES +MYSTAGOGY +MYSTERIES +MYSTERIOUS +MYSTERIOUSLY +MYSTERIOUSNESS +MYSTERY +MYSTIC +MYSTICAL +MYSTICALLY +MYSTICETE +MYSTICETES +MYSTICISM +MYSTICISMS +MYSTICLY +MYSTICS +MYSTIFICATION +MYSTIFICATIONS +MYSTIFIED +MYSTIFIER +MYSTIFIERS +MYSTIFIES +MYSTIFY +MYSTIFYING +MYSTIFYINGLY +MYSTIQUE +MYSTIQUES +MYTH +MYTHIC +MYTHICAL +MYTHICALLY +MYTHICIZE +MYTHICIZED +MYTHICIZER +MYTHICIZERS +MYTHICIZES +MYTHICIZING +MYTHIER +MYTHIEST +MYTHMAKER +MYTHMAKERS +MYTHMAKING +MYTHMAKINGS +MYTHOGRAPHER +MYTHOGRAPHERS +MYTHOGRAPHIES +MYTHOGRAPHY +MYTHOI +MYTHOLOGER +MYTHOLOGERS +MYTHOLOGIC +MYTHOLOGICAL +MYTHOLOGICALLY +MYTHOLOGIES +MYTHOLOGIST +MYTHOLOGISTS +MYTHOLOGIZE +MYTHOLOGIZED +MYTHOLOGIZER +MYTHOLOGIZERS +MYTHOLOGIZES +MYTHOLOGIZING +MYTHOLOGY +MYTHOMANIA +MYTHOMANIAC +MYTHOMANIACS +MYTHOMANIAS +MYTHOPEIC +MYTHOPOEIA +MYTHOPOEIAS +MYTHOPOEIC +MYTHOPOETIC +MYTHOPOETICAL +MYTHOS +MYTHS +MYTHY +MYXAMEBA +MYXAMEBAE +MYXAMEBAS +MYXAMOEBA +MYXAMOEBAE +MYXAMOEBAS +MYXEDEMA +MYXEDEMAS +MYXEDEMATOUS +MYXEDEMIC +MYXOCYTE +MYXOCYTES +MYXOEDEMA +MYXOEDEMAS +MYXOID +MYXOMA +MYXOMAS +MYXOMATA +MYXOMATOSES +MYXOMATOSIS +MYXOMATOUS +MYXOMYCETE +MYXOMYCETES +MYXOVIRAL +MYXOVIRUS +MYXOVIRUSES +NA +NAAN +NAANS +NAB +NABBED +NABBER +NABBERS +NABBING +NABE +NABES +NABIS +NABOB +NABOBERIES +NABOBERY +NABOBESS +NABOBESSES +NABOBISH +NABOBISM +NABOBISMS +NABOBS +NABS +NACELLE +NACELLES +NACHAS +NACHES +NACHO +NACHOS +NACRE +NACRED +NACREOUS +NACRES +NADA +NADAS +NADIR +NADIRAL +NADIRS +NAE +NAETHING +NAETHINGS +NAEVI +NAEVOID +NAEVUS +NAFF +NAFFED +NAFFING +NAFFS +NAG +NAGANA +NAGANAS +NAGGED +NAGGER +NAGGERS +NAGGIER +NAGGIEST +NAGGING +NAGGINGLY +NAGGY +NAGS +NAH +NAIAD +NAIADES +NAIADS +NAIF +NAIFS +NAIL +NAILBITER +NAILBITERS +NAILBRUSH +NAILBRUSHES +NAILED +NAILER +NAILERS +NAILFOLD +NAILFOLDS +NAILHEAD +NAILHEADS +NAILING +NAILS +NAILSET +NAILSETS +NAINSOOK +NAINSOOKS +NAIRA +NAIRAS +NAIRU +NAIRUS +NAISSANCE +NAISSANCES +NAIVE +NAIVELY +NAIVENESS +NAIVENESSES +NAIVER +NAIVES +NAIVEST +NAIVETE +NAIVETES +NAIVETIES +NAIVETY +NAKED +NAKEDER +NAKEDEST +NAKEDLY +NAKEDNESS +NAKEDNESSES +NAKFA +NAKFAS +NALA +NALAS +NALED +NALEDS +NALORPHINE +NALORPHINES +NALOXONE +NALOXONES +NALTREXONE +NALTREXONES +NAM +NAMABLE +NAMAYCUSH +NAMAYCUSHES +NAME +NAMEABLE +NAMED +NAMELESS +NAMELESSLY +NAMELESSNESS +NAMELESSNESSES +NAMELY +NAMEPLATE +NAMEPLATES +NAMER +NAMERS +NAMES +NAMESAKE +NAMESAKES +NAMETAG +NAMETAGS +NAMING +NAN +NANA +NANAS +NANCE +NANCES +NANCIES +NANCIFIED +NANCY +NANDIN +NANDINA +NANDINAS +NANDINS +NANISM +NANISMS +NANKEEN +NANKEENS +NANKIN +NANKINS +NANNIE +NANNIES +NANNOPLANKTON +NANNOPLANKTONS +NANNY +NANNYISH +NANOGRAM +NANOGRAMS +NANOMETER +NANOMETERS +NANOMETRE +NANOMETRES +NANOSCALE +NANOSECOND +NANOSECONDS +NANOTECH +NANOTECHNOLOGY +NANOTECHS +NANOTESLA +NANOTESLAS +NANOTUBE +NANOTUBES +NANOWATT +NANOWATTS +NANS +NAOI +NAOS +NAP +NAPA +NAPALM +NAPALMED +NAPALMING +NAPALMS +NAPAS +NAPE +NAPERIES +NAPERY +NAPES +NAPHTHA +NAPHTHALENE +NAPHTHALENES +NAPHTHAS +NAPHTHENE +NAPHTHENES +NAPHTHENIC +NAPHTHOL +NAPHTHOLS +NAPHTHOUS +NAPHTHYL +NAPHTHYLAMINE +NAPHTHYLAMINES +NAPHTHYLS +NAPHTOL +NAPHTOLS +NAPIFORM +NAPKIN +NAPKINS +NAPLESS +NAPOLEON +NAPOLEONS +NAPPA +NAPPAS +NAPPE +NAPPED +NAPPER +NAPPERS +NAPPES +NAPPIE +NAPPIER +NAPPIES +NAPPIEST +NAPPINESS +NAPPINESSES +NAPPING +NAPPY +NAPRAPATHIES +NAPRAPATHY +NAPROXEN +NAPROXENS +NAPS +NARC +NARCEIN +NARCEINE +NARCEINES +NARCEINS +NARCISM +NARCISMS +NARCISSI +NARCISSISM +NARCISSISMS +NARCISSIST +NARCISSISTIC +NARCISSISTS +NARCISSUS +NARCISSUSES +NARCIST +NARCISTIC +NARCISTS +NARCO +NARCOLEPSIES +NARCOLEPSY +NARCOLEPTIC +NARCOLEPTICS +NARCOMA +NARCOMAS +NARCOMATA +NARCOS +NARCOSE +NARCOSES +NARCOSIS +NARCOTIC +NARCOTICALLY +NARCOTICS +NARCOTISM +NARCOTISMS +NARCOTIZE +NARCOTIZED +NARCOTIZES +NARCOTIZING +NARCS +NARD +NARDINE +NARDS +NARES +NARGHILE +NARGHILES +NARGILE +NARGILEH +NARGILEHS +NARGILES +NARIAL +NARIC +NARINE +NARIS +NARK +NARKED +NARKING +NARKS +NARKY +NARRATE +NARRATED +NARRATER +NARRATERS +NARRATES +NARRATING +NARRATION +NARRATIONAL +NARRATIONS +NARRATIVE +NARRATIVELY +NARRATIVES +NARRATOLOGICAL +NARRATOLOGIES +NARRATOLOGIST +NARRATOLOGISTS +NARRATOLOGY +NARRATOR +NARRATORS +NARROW +NARROWBAND +NARROWCASTING +NARROWCASTINGS +NARROWED +NARROWER +NARROWEST +NARROWING +NARROWISH +NARROWLY +NARROWNESS +NARROWNESSES +NARROWS +NARTHEX +NARTHEXES +NARWAL +NARWALS +NARWHAL +NARWHALE +NARWHALES +NARWHALS +NARY +NASAL +NASALISE +NASALISED +NASALISES +NASALISING +NASALISM +NASALISMS +NASALITIES +NASALITY +NASALIZATION +NASALIZATIONS +NASALIZE +NASALIZED +NASALIZES +NASALIZING +NASALLY +NASALS +NASCENCE +NASCENCES +NASCENCIES +NASCENCY +NASCENT +NASEBERRIES +NASEBERRY +NASIAL +NASION +NASIONS +NASOGASTRIC +NASOPHARYNGEAL +NASOPHARYNGES +NASOPHARYNX +NASOPHARYNXES +NASTIC +NASTIER +NASTIES +NASTIEST +NASTILY +NASTINESS +NASTINESSES +NASTURTIUM +NASTURTIUMS +NASTY +NATAL +NATALITIES +NATALITY +NATANT +NATANTLY +NATATION +NATATIONS +NATATORIA +NATATORIAL +NATATORIUM +NATATORIUMS +NATATORY +NATCH +NATES +NATHELESS +NATHLESS +NATION +NATIONAL +NATIONALISE +NATIONALISED +NATIONALISES +NATIONALISING +NATIONALISM +NATIONALISMS +NATIONALIST +NATIONALISTIC +NATIONALISTS +NATIONALITIES +NATIONALITY +NATIONALIZATION +NATIONALIZE +NATIONALIZED +NATIONALIZER +NATIONALIZERS +NATIONALIZES +NATIONALIZING +NATIONALLY +NATIONALS +NATIONHOOD +NATIONHOODS +NATIONS +NATIONWIDE +NATIVE +NATIVELY +NATIVENESS +NATIVENESSES +NATIVES +NATIVISM +NATIVISMS +NATIVIST +NATIVISTIC +NATIVISTS +NATIVITIES +NATIVITY +NATRIUM +NATRIUMS +NATRIURESES +NATRIURESIS +NATRIURETIC +NATRIURETICS +NATROLITE +NATROLITES +NATRON +NATRONS +NATTER +NATTERED +NATTERING +NATTERS +NATTIER +NATTIEST +NATTILY +NATTINESS +NATTINESSES +NATTY +NATURAL +NATURALISE +NATURALISED +NATURALISES +NATURALISING +NATURALISM +NATURALISMS +NATURALIST +NATURALISTIC +NATURALISTS +NATURALIZATION +NATURALIZATIONS +NATURALIZE +NATURALIZED +NATURALIZES +NATURALIZING +NATURALLY +NATURALNESS +NATURALNESSES +NATURALS +NATURE +NATURED +NATURES +NATURISM +NATURISMS +NATURIST +NATURISTS +NATUROPATH +NATUROPATHIC +NATUROPATHIES +NATUROPATHS +NATUROPATHY +NAUGAHYDE +NAUGAHYDES +NAUGHT +NAUGHTIER +NAUGHTIES +NAUGHTIEST +NAUGHTILY +NAUGHTINESS +NAUGHTINESSES +NAUGHTS +NAUGHTY +NAUMACHIA +NAUMACHIAE +NAUMACHIAS +NAUMACHIES +NAUMACHY +NAUPLIAL +NAUPLII +NAUPLIUS +NAUSEA +NAUSEANT +NAUSEANTS +NAUSEAS +NAUSEATE +NAUSEATED +NAUSEATES +NAUSEATING +NAUSEATINGLY +NAUSEOUS +NAUSEOUSLY +NAUSEOUSNESS +NAUSEOUSNESSES +NAUTCH +NAUTCHES +NAUTICAL +NAUTICALLY +NAUTILI +NAUTILOID +NAUTILOIDS +NAUTILUS +NAUTILUSES +NAVAID +NAVAIDS +NAVAL +NAVALLY +NAVAR +NAVARS +NAVE +NAVEL +NAVELS +NAVELWORT +NAVELWORTS +NAVES +NAVETTE +NAVETTES +NAVICERT +NAVICERTS +NAVICULAR +NAVICULARS +NAVIES +NAVIGABILITIES +NAVIGABILITY +NAVIGABLE +NAVIGABLY +NAVIGATE +NAVIGATED +NAVIGATES +NAVIGATING +NAVIGATION +NAVIGATIONAL +NAVIGATIONALLY +NAVIGATIONS +NAVIGATOR +NAVIGATORS +NAVVIES +NAVVY +NAVY +NAW +NAWAB +NAWABS +NAY +NAYS +NAYSAID +NAYSAY +NAYSAYER +NAYSAYERS +NAYSAYING +NAYSAYINGS +NAYSAYS +NAZI +NAZIFICATION +NAZIFICATIONS +NAZIFIED +NAZIFIES +NAZIFY +NAZIFYING +NAZIS +NE +NEAP +NEAPS +NEAR +NEARBY +NEARED +NEARER +NEAREST +NEARING +NEARLIER +NEARLIEST +NEARLY +NEARNESS +NEARNESSES +NEARS +NEARSHORE +NEARSIDE +NEARSIDES +NEARSIGHTED +NEARSIGHTEDLY +NEARSIGHTEDNESS +NEAT +NEATEN +NEATENED +NEATENING +NEATENS +NEATER +NEATEST +NEATH +NEATHERD +NEATHERDS +NEATLY +NEATNESS +NEATNESSES +NEATNIK +NEATNIKS +NEATS +NEB +NEBBISH +NEBBISHES +NEBBISHY +NEBENKERN +NEBENKERNS +NEBS +NEBULA +NEBULAE +NEBULAR +NEBULAS +NEBULE +NEBULISE +NEBULISED +NEBULISES +NEBULISING +NEBULIZATION +NEBULIZATIONS +NEBULIZE +NEBULIZED +NEBULIZER +NEBULIZERS +NEBULIZES +NEBULIZING +NEBULOSE +NEBULOSITIES +NEBULOSITY +NEBULOUS +NEBULOUSLY +NEBULOUSNESS +NEBULOUSNESSES +NEBULY +NECESSARIES +NECESSARILY +NECESSARY +NECESSITARIAN +NECESSITARIANS +NECESSITATE +NECESSITATED +NECESSITATES +NECESSITATING +NECESSITATION +NECESSITATIONS +NECESSITIES +NECESSITOUS +NECESSITOUSLY +NECESSITOUSNESS +NECESSITY +NECK +NECKBAND +NECKBANDS +NECKCLOTH +NECKCLOTHS +NECKED +NECKER +NECKERCHIEF +NECKERCHIEFS +NECKERCHIEVES +NECKERS +NECKING +NECKINGS +NECKLACE +NECKLACED +NECKLACES +NECKLACING +NECKLESS +NECKLIKE +NECKLINE +NECKLINES +NECKPIECE +NECKPIECES +NECKS +NECKTIE +NECKTIES +NECKWEAR +NECROLOGICAL +NECROLOGIES +NECROLOGIST +NECROLOGISTS +NECROLOGY +NECROMANCER +NECROMANCERS +NECROMANCIES +NECROMANCY +NECROMANTIC +NECROMANTICALLY +NECROPHAGOUS +NECROPHILIA +NECROPHILIAC +NECROPHILIACS +NECROPHILIAS +NECROPHILIC +NECROPHILISM +NECROPHILISMS +NECROPOLEIS +NECROPOLES +NECROPOLI +NECROPOLIS +NECROPOLISES +NECROPSIED +NECROPSIES +NECROPSY +NECROPSYING +NECROSE +NECROSED +NECROSES +NECROSING +NECROSIS +NECROTIC +NECROTIZE +NECROTIZED +NECROTIZES +NECROTIZING +NECROTOMIES +NECROTOMY +NECTAR +NECTAREAN +NECTARIAL +NECTARIED +NECTARIES +NECTARINE +NECTARINES +NECTAROUS +NECTARS +NECTARY +NEDDIES +NEDDY +NEE +NEED +NEEDED +NEEDER +NEEDERS +NEEDFUL +NEEDFULLY +NEEDFULNESS +NEEDFULNESSES +NEEDFULS +NEEDIER +NEEDIEST +NEEDILY +NEEDINESS +NEEDINESSES +NEEDING +NEEDLE +NEEDLED +NEEDLEFISH +NEEDLEFISHES +NEEDLELIKE +NEEDLEPOINT +NEEDLEPOINTS +NEEDLER +NEEDLERS +NEEDLES +NEEDLESS +NEEDLESSLY +NEEDLESSNESS +NEEDLESSNESSES +NEEDLEWOMAN +NEEDLEWOMEN +NEEDLEWORK +NEEDLEWORKER +NEEDLEWORKERS +NEEDLEWORKS +NEEDLING +NEEDLINGS +NEEDS +NEEDY +NEEM +NEEMS +NEEP +NEEPS +NEFARIOUS +NEFARIOUSLY +NEG +NEGATE +NEGATED +NEGATER +NEGATERS +NEGATES +NEGATING +NEGATION +NEGATIONAL +NEGATIONS +NEGATIVE +NEGATIVED +NEGATIVELY +NEGATIVENESS +NEGATIVENESSES +NEGATIVES +NEGATIVING +NEGATIVISM +NEGATIVISMS +NEGATIVIST +NEGATIVISTIC +NEGATIVISTS +NEGATIVITIES +NEGATIVITY +NEGATON +NEGATONS +NEGATOR +NEGATORS +NEGATRON +NEGATRONS +NEGLECT +NEGLECTED +NEGLECTER +NEGLECTERS +NEGLECTFUL +NEGLECTFULLY +NEGLECTFULNESS +NEGLECTING +NEGLECTOR +NEGLECTORS +NEGLECTS +NEGLIGE +NEGLIGEE +NEGLIGEES +NEGLIGENCE +NEGLIGENCES +NEGLIGENT +NEGLIGENTLY +NEGLIGES +NEGLIGIBILITIES +NEGLIGIBILITY +NEGLIGIBLE +NEGLIGIBLY +NEGOTIABILITIES +NEGOTIABILITY +NEGOTIABLE +NEGOTIANT +NEGOTIANTS +NEGOTIATE +NEGOTIATED +NEGOTIATES +NEGOTIATING +NEGOTIATION +NEGOTIATIONS +NEGOTIATOR +NEGOTIATORS +NEGOTIATORY +NEGRITUDE +NEGRITUDES +NEGROID +NEGROIDS +NEGRONI +NEGRONIS +NEGROPHIL +NEGROPHILS +NEGROPHOBE +NEGROPHOBES +NEGROPHOBIA +NEGROPHOBIAS +NEGS +NEGUS +NEGUSES +NEIF +NEIFS +NEIGH +NEIGHBOR +NEIGHBORED +NEIGHBORHOOD +NEIGHBORHOODS +NEIGHBORING +NEIGHBORLINESS +NEIGHBORLY +NEIGHBORS +NEIGHBOUR +NEIGHBOURED +NEIGHBOURING +NEIGHBOURS +NEIGHED +NEIGHING +NEIGHS +NEIST +NEITHER +NEKTON +NEKTONIC +NEKTONS +NELLIE +NELLIES +NELLY +NELSON +NELSONS +NELUMBIUM +NELUMBIUMS +NELUMBO +NELUMBOS +NEMA +NEMAS +NEMATIC +NEMATICIDAL +NEMATICIDE +NEMATICIDES +NEMATOCIDAL +NEMATOCIDE +NEMATOCIDES +NEMATOCYST +NEMATOCYSTS +NEMATODE +NEMATODES +NEMATOLOGICAL +NEMATOLOGIES +NEMATOLOGIST +NEMATOLOGISTS +NEMATOLOGY +NEMERTEAN +NEMERTEANS +NEMERTINE +NEMERTINES +NEMESES +NEMESIS +NEMOPHILA +NEMOPHILAS +NENE +NENES +NEOCLASSIC +NEOCLASSICAL +NEOCLASSICISM +NEOCLASSICISMS +NEOCLASSICIST +NEOCLASSICISTS +NEOCOLONIAL +NEOCOLONIALISM +NEOCOLONIALISMS +NEOCOLONIALIST +NEOCOLONIALISTS +NEOCON +NEOCONS +NEOCONSERVATISM +NEOCONSERVATIVE +NEOCORTEX +NEOCORTEXES +NEOCORTICAL +NEOCORTICES +NEODYMIUM +NEODYMIUMS +NEOGENE +NEOLIBERAL +NEOLIBERALISM +NEOLIBERALISMS +NEOLIBERALS +NEOLITH +NEOLITHIC +NEOLITHS +NEOLOGIC +NEOLOGIES +NEOLOGISM +NEOLOGISMS +NEOLOGIST +NEOLOGISTIC +NEOLOGISTS +NEOLOGIZE +NEOLOGIZED +NEOLOGIZES +NEOLOGIZING +NEOLOGY +NEOMORPH +NEOMORPHS +NEOMYCIN +NEOMYCINS +NEON +NEONATAL +NEONATALLY +NEONATE +NEONATES +NEONATOLOGIES +NEONATOLOGIST +NEONATOLOGISTS +NEONATOLOGY +NEONED +NEONS +NEOORTHODOX +NEOORTHODOXIES +NEOORTHODOXY +NEOPHILIA +NEOPHILIAC +NEOPHILIACS +NEOPHILIAS +NEOPHYTE +NEOPHYTES +NEOPHYTIC +NEOPLASIA +NEOPLASIAS +NEOPLASM +NEOPLASMS +NEOPLASTIC +NEOPLASTICISM +NEOPLASTICISMS +NEOPLASTICIST +NEOPLASTICISTS +NEOPLASTIES +NEOPLASTY +NEOPRENE +NEOPRENES +NEOREALISM +NEOREALISMS +NEOREALIST +NEOREALISTIC +NEOREALISTS +NEOSTIGMINE +NEOSTIGMINES +NEOTENIC +NEOTENIES +NEOTENOUS +NEOTENY +NEOTERIC +NEOTERICS +NEOTROPIC +NEOTROPICS +NEOTYPE +NEOTYPES +NEPENTHE +NEPENTHEAN +NEPENTHES +NEPETA +NEPETAS +NEPHELINE +NEPHELINES +NEPHELINIC +NEPHELINITE +NEPHELINITES +NEPHELINITIC +NEPHELITE +NEPHELITES +NEPHELOMETER +NEPHELOMETERS +NEPHELOMETRIC +NEPHELOMETRIES +NEPHELOMETRY +NEPHEW +NEPHEWS +NEPHOGRAM +NEPHOGRAMS +NEPHOLOGIES +NEPHOLOGY +NEPHOSCOPE +NEPHOSCOPES +NEPHRECTOMIES +NEPHRECTOMIZE +NEPHRECTOMIZED +NEPHRECTOMIZES +NEPHRECTOMIZING +NEPHRECTOMY +NEPHRIC +NEPHRIDIA +NEPHRIDIAL +NEPHRIDIUM +NEPHRISM +NEPHRISMS +NEPHRITE +NEPHRITES +NEPHRITIC +NEPHRITIDES +NEPHRITIS +NEPHRITISES +NEPHROLOGIES +NEPHROLOGIST +NEPHROLOGISTS +NEPHROLOGY +NEPHRON +NEPHRONS +NEPHROPATHIC +NEPHROPATHIES +NEPHROPATHY +NEPHROSES +NEPHROSIS +NEPHROSTOME +NEPHROSTOMES +NEPHROTIC +NEPHROTICS +NEPHROTOXIC +NEPHROTOXICITY +NEPOTIC +NEPOTISM +NEPOTISMS +NEPOTIST +NEPOTISTIC +NEPOTISTS +NEPTUNIUM +NEPTUNIUMS +NERD +NERDIER +NERDIEST +NERDINESS +NERDINESSES +NERDISH +NERDS +NERDY +NEREID +NEREIDES +NEREIDS +NEREIS +NERITIC +NEROL +NEROLI +NEROLIS +NEROLS +NERTS +NERTZ +NERVATE +NERVATION +NERVATIONS +NERVATURE +NERVATURES +NERVE +NERVED +NERVELESS +NERVELESSLY +NERVELESSNESS +NERVELESSNESSES +NERVES +NERVIER +NERVIEST +NERVILY +NERVINE +NERVINES +NERVINESS +NERVINESSES +NERVING +NERVINGS +NERVOSITIES +NERVOSITY +NERVOUS +NERVOUSLY +NERVOUSNESS +NERVOUSNESSES +NERVULE +NERVULES +NERVURE +NERVURES +NERVY +NESCIENCE +NESCIENCES +NESCIENT +NESCIENTS +NESS +NESSES +NEST +NESTABLE +NESTED +NESTER +NESTERS +NESTING +NESTLE +NESTLED +NESTLER +NESTLERS +NESTLES +NESTLIKE +NESTLING +NESTLINGS +NESTOR +NESTORS +NESTS +NET +NETHER +NETHERMOST +NETHERWORLD +NETHERWORLDS +NETIQUETTE +NETIQUETTES +NETIZEN +NETIZENS +NETLESS +NETLIKE +NETMINDER +NETMINDERS +NETOP +NETOPS +NETS +NETSUKE +NETSUKES +NETT +NETTABLE +NETTED +NETTER +NETTERS +NETTIER +NETTIEST +NETTING +NETTINGS +NETTLE +NETTLED +NETTLER +NETTLERS +NETTLES +NETTLESOME +NETTLIER +NETTLIEST +NETTLING +NETTLY +NETTS +NETTY +NETWORK +NETWORKED +NETWORKER +NETWORKERS +NETWORKING +NETWORKINGS +NETWORKS +NEUK +NEUKS +NEUM +NEUMATIC +NEUME +NEUMES +NEUMIC +NEUMS +NEURAL +NEURALGIA +NEURALGIAS +NEURALGIC +NEURALLY +NEURAMINIDASE +NEURAMINIDASES +NEURASTHENIA +NEURASTHENIAS +NEURASTHENIC +NEURASTHENICS +NEURAXON +NEURAXONS +NEURILEMMA +NEURILEMMAL +NEURILEMMAS +NEURINE +NEURINES +NEURITIC +NEURITICS +NEURITIDES +NEURITIS +NEURITISES +NEUROACTIVE +NEUROANATOMIC +NEUROANATOMICAL +NEUROANATOMIES +NEUROANATOMIST +NEUROANATOMISTS +NEUROANATOMY +NEUROBIOLOGICAL +NEUROBIOLOGIES +NEUROBIOLOGIST +NEUROBIOLOGISTS +NEUROBIOLOGY +NEUROBLASTOMA +NEUROBLASTOMAS +NEUROBLASTOMATA +NEUROCHEMICAL +NEUROCHEMICALS +NEUROCHEMIST +NEUROCHEMISTRY +NEUROCHEMISTS +NEUROCOEL +NEUROCOELS +NEUROENDOCRINE +NEUROFIBRIL +NEUROFIBRILLARY +NEUROFIBRILS +NEUROFIBROMA +NEUROFIBROMAS +NEUROFIBROMATA +NEUROGENIC +NEUROGENICALLY +NEUROGLIA +NEUROGLIAL +NEUROGLIAS +NEUROHORMONAL +NEUROHORMONE +NEUROHORMONES +NEUROHUMOR +NEUROHUMORAL +NEUROHUMORS +NEUROHYPOPHYSES +NEUROHYPOPHYSIS +NEUROID +NEUROLEPTIC +NEUROLEPTICS +NEUROLOGIC +NEUROLOGICAL +NEUROLOGICALLY +NEUROLOGIES +NEUROLOGIST +NEUROLOGISTS +NEUROLOGY +NEUROMA +NEUROMAS +NEUROMAST +NEUROMASTS +NEUROMATA +NEUROMUSCULAR +NEURON +NEURONAL +NEURONE +NEURONES +NEURONIC +NEURONS +NEUROPATH +NEUROPATHIC +NEUROPATHICALLY +NEUROPATHIES +NEUROPATHOLOGIC +NEUROPATHOLOGY +NEUROPATHS +NEUROPATHY +NEUROPEPTIDE +NEUROPEPTIDES +NEUROPHYSIOLOGY +NEUROPSYCHIATRY +NEUROPSYCHOLOGY +NEUROPTERAN +NEUROPTERANS +NEUROPTEROUS +NEURORADIOLOGY +NEUROSAL +NEUROSCIENCE +NEUROSCIENCES +NEUROSCIENTIFIC +NEUROSCIENTIST +NEUROSCIENTISTS +NEUROSECRETION +NEUROSECRETIONS +NEUROSECRETORY +NEUROSENSORY +NEUROSES +NEUROSIS +NEUROSPORA +NEUROSPORAS +NEUROSURGEON +NEUROSURGEONS +NEUROSURGERIES +NEUROSURGERY +NEUROSURGICAL +NEUROTIC +NEUROTICALLY +NEUROTICISM +NEUROTICISMS +NEUROTICS +NEUROTOMIES +NEUROTOMY +NEUROTOXIC +NEUROTOXICITIES +NEUROTOXICITY +NEUROTOXIN +NEUROTOXINS +NEUROTROPIC +NEURULA +NEURULAE +NEURULAR +NEURULAS +NEURULATION +NEURULATIONS +NEUSTIC +NEUSTON +NEUSTONIC +NEUSTONS +NEUTER +NEUTERED +NEUTERING +NEUTERS +NEUTRAL +NEUTRALISE +NEUTRALISED +NEUTRALISES +NEUTRALISING +NEUTRALISM +NEUTRALISMS +NEUTRALIST +NEUTRALISTIC +NEUTRALISTS +NEUTRALITIES +NEUTRALITY +NEUTRALIZATION +NEUTRALIZATIONS +NEUTRALIZE +NEUTRALIZED +NEUTRALIZER +NEUTRALIZERS +NEUTRALIZES +NEUTRALIZING +NEUTRALLY +NEUTRALNESS +NEUTRALNESSES +NEUTRALS +NEUTRINO +NEUTRINOLESS +NEUTRINOS +NEUTRON +NEUTRONIC +NEUTRONS +NEUTROPHIL +NEUTROPHILIC +NEUTROPHILS +NEVE +NEVER +NEVERMIND +NEVERMINDS +NEVERMORE +NEVERTHELESS +NEVES +NEVI +NEVOID +NEVUS +NEW +NEWBIE +NEWBIES +NEWBORN +NEWBORNS +NEWCOMER +NEWCOMERS +NEWEL +NEWELS +NEWER +NEWEST +NEWFANGLED +NEWFANGLEDNESS +NEWFOUND +NEWIE +NEWIES +NEWISH +NEWLY +NEWLYWED +NEWLYWEDS +NEWMARKET +NEWMARKETS +NEWMOWN +NEWNESS +NEWNESSES +NEWS +NEWSAGENT +NEWSAGENTS +NEWSBEAT +NEWSBEATS +NEWSBOY +NEWSBOYS +NEWSBREAK +NEWSBREAKS +NEWSCAST +NEWSCASTER +NEWSCASTERS +NEWSCASTS +NEWSDEALER +NEWSDEALERS +NEWSDESK +NEWSDESKS +NEWSGIRL +NEWSGIRLS +NEWSGROUP +NEWSGROUPS +NEWSHAWK +NEWSHAWKS +NEWSHOUND +NEWSHOUNDS +NEWSIE +NEWSIER +NEWSIES +NEWSIEST +NEWSINESS +NEWSINESSES +NEWSLESS +NEWSLETTER +NEWSLETTERS +NEWSMAGAZINE +NEWSMAGAZINES +NEWSMAKER +NEWSMAKERS +NEWSMAN +NEWSMEN +NEWSMONGER +NEWSMONGERS +NEWSPAPER +NEWSPAPERED +NEWSPAPERING +NEWSPAPERMAN +NEWSPAPERMEN +NEWSPAPERS +NEWSPAPERWOMAN +NEWSPAPERWOMEN +NEWSPEAK +NEWSPEAKS +NEWSPEOPLE +NEWSPERSON +NEWSPERSONS +NEWSPRINT +NEWSPRINTS +NEWSREADER +NEWSREADERS +NEWSREEL +NEWSREELS +NEWSROOM +NEWSROOMS +NEWSSTAND +NEWSSTANDS +NEWSWEEKLIES +NEWSWEEKLY +NEWSWIRE +NEWSWIRES +NEWSWOMAN +NEWSWOMEN +NEWSWORTHINESS +NEWSWORTHY +NEWSWRITING +NEWSWRITINGS +NEWSY +NEWT +NEWTON +NEWTONS +NEWTS +NEWWAVER +NEWWAVERS +NEXT +NEXTDOOR +NEXUS +NEXUSES +NGULTRUM +NGULTRUMS +NGWEE +NIACIN +NIACINAMIDE +NIACINAMIDES +NIACINS +NIALAMIDE +NIALAMIDES +NIB +NIBBED +NIBBING +NIBBLE +NIBBLED +NIBBLER +NIBBLERS +NIBBLES +NIBBLING +NIBLICK +NIBLICKS +NIBLIKE +NIBS +NICAD +NICADS +NICCOLITE +NICCOLITES +NICE +NICELY +NICENESS +NICENESSES +NICER +NICEST +NICETIES +NICETY +NICHE +NICHED +NICHES +NICHING +NICK +NICKED +NICKEL +NICKELED +NICKELIC +NICKELIFEROUS +NICKELING +NICKELLED +NICKELLING +NICKELODEON +NICKELODEONS +NICKELOUS +NICKELS +NICKER +NICKERED +NICKERING +NICKERS +NICKING +NICKLE +NICKLED +NICKLES +NICKLING +NICKNACK +NICKNACKS +NICKNAME +NICKNAMED +NICKNAMER +NICKNAMERS +NICKNAMES +NICKNAMING +NICKS +NICOISE +NICOL +NICOLS +NICOTIANA +NICOTIANAS +NICOTIN +NICOTINAMIDE +NICOTINAMIDES +NICOTINE +NICOTINES +NICOTINIC +NICOTINS +NICTATE +NICTATED +NICTATES +NICTATING +NICTATION +NICTATIONS +NICTITANT +NICTITATE +NICTITATED +NICTITATES +NICTITATING +NIDAL +NIDATE +NIDATED +NIDATES +NIDATING +NIDATION +NIDATIONS +NIDDERING +NIDDERINGS +NIDE +NIDED +NIDERING +NIDERINGS +NIDES +NIDGET +NIDGETS +NIDI +NIDICOLOUS +NIDIFICATION +NIDIFICATIONS +NIDIFIED +NIDIFIES +NIDIFUGOUS +NIDIFY +NIDIFYING +NIDING +NIDUS +NIDUSES +NIECE +NIECES +NIELLI +NIELLIST +NIELLISTS +NIELLO +NIELLOED +NIELLOING +NIELLOS +NIEVE +NIEVES +NIFEDIPINE +NIFEDIPINES +NIFFER +NIFFERED +NIFFERING +NIFFERS +NIFTIER +NIFTIES +NIFTIEST +NIFTILY +NIFTINESS +NIFTINESSES +NIFTY +NIGELLA +NIGELLAS +NIGGARD +NIGGARDED +NIGGARDING +NIGGARDLINESS +NIGGARDLINESSES +NIGGARDLY +NIGGARDS +NIGGER +NIGGERS +NIGGLE +NIGGLED +NIGGLER +NIGGLERS +NIGGLES +NIGGLIER +NIGGLIEST +NIGGLING +NIGGLINGLY +NIGGLINGS +NIGGLY +NIGH +NIGHED +NIGHER +NIGHEST +NIGHING +NIGHNESS +NIGHNESSES +NIGHS +NIGHT +NIGHTCAP +NIGHTCAPS +NIGHTCLOTHES +NIGHTCLUB +NIGHTCLUBBED +NIGHTCLUBBER +NIGHTCLUBBERS +NIGHTCLUBBING +NIGHTCLUBS +NIGHTDRESS +NIGHTDRESSES +NIGHTFALL +NIGHTFALLS +NIGHTGLOW +NIGHTGLOWS +NIGHTGOWN +NIGHTGOWNS +NIGHTHAWK +NIGHTHAWKS +NIGHTIE +NIGHTIES +NIGHTINGALE +NIGHTINGALES +NIGHTJAR +NIGHTJARS +NIGHTLESS +NIGHTLIFE +NIGHTLIFES +NIGHTLIVES +NIGHTLONG +NIGHTLY +NIGHTMARE +NIGHTMARES +NIGHTMARISH +NIGHTMARISHLY +NIGHTS +NIGHTSCOPE +NIGHTSCOPES +NIGHTSHADE +NIGHTSHADES +NIGHTSHIRT +NIGHTSHIRTS +NIGHTSIDE +NIGHTSIDES +NIGHTSPOT +NIGHTSPOTS +NIGHTSTAND +NIGHTSTANDS +NIGHTSTICK +NIGHTSTICKS +NIGHTTIDE +NIGHTTIDES +NIGHTTIME +NIGHTTIMES +NIGHTWALKER +NIGHTWALKERS +NIGHTWEAR +NIGHTY +NIGRIFIED +NIGRIFIES +NIGRIFY +NIGRIFYING +NIGRITUDE +NIGRITUDES +NIGROSIN +NIGROSINE +NIGROSINES +NIGROSINS +NIHIL +NIHILISM +NIHILISMS +NIHILIST +NIHILISTIC +NIHILISTS +NIHILITIES +NIHILITY +NIHILS +NIL +NILGAI +NILGAIS +NILGAU +NILGAUS +NILGHAI +NILGHAIS +NILGHAU +NILGHAUS +NILL +NILLED +NILLING +NILLS +NILPOTENT +NILPOTENTS +NILS +NIM +NIMBI +NIMBLE +NIMBLENESS +NIMBLENESSES +NIMBLER +NIMBLEST +NIMBLY +NIMBOSTRATI +NIMBOSTRATUS +NIMBUS +NIMBUSED +NIMBUSES +NIMBYNESS +NIMBYNESSES +NIMIETIES +NIMIETY +NIMIOUS +NIMMED +NIMMING +NIMROD +NIMRODS +NIMS +NINCOMPOOP +NINCOMPOOPERIES +NINCOMPOOPERY +NINCOMPOOPS +NINE +NINEBARK +NINEBARKS +NINEFOLD +NINEPIN +NINEPINS +NINES +NINETEEN +NINETEENS +NINETEENTH +NINETEENTHS +NINETIES +NINETIETH +NINETIETHS +NINETY +NINHYDRIN +NINHYDRINS +NINJA +NINJAS +NINNIES +NINNY +NINNYHAMMER +NINNYHAMMERS +NINNYISH +NINON +NINONS +NINTH +NINTHLY +NINTHS +NIOBATE +NIOBATES +NIOBIC +NIOBITE +NIOBITES +NIOBIUM +NIOBIUMS +NIOBOUS +NIP +NIPA +NIPAS +NIPPED +NIPPER +NIPPERS +NIPPIER +NIPPIEST +NIPPILY +NIPPINESS +NIPPINESSES +NIPPING +NIPPINGLY +NIPPLE +NIPPLED +NIPPLES +NIPPY +NIPS +NIRVANA +NIRVANAS +NIRVANIC +NISEI +NISEIS +NISI +NISUS +NIT +NITCHIE +NITCHIES +NITE +NITER +NITERIE +NITERIES +NITERS +NITERY +NITES +NITID +NITINOL +NITINOLS +NITON +NITONS +NITPICK +NITPICKED +NITPICKER +NITPICKERS +NITPICKIER +NITPICKIEST +NITPICKING +NITPICKS +NITPICKY +NITRATE +NITRATED +NITRATES +NITRATING +NITRATION +NITRATIONS +NITRATOR +NITRATORS +NITRE +NITRES +NITRIC +NITRID +NITRIDE +NITRIDED +NITRIDES +NITRIDING +NITRIDS +NITRIFICATION +NITRIFICATIONS +NITRIFIED +NITRIFIER +NITRIFIERS +NITRIFIES +NITRIFY +NITRIFYING +NITRIL +NITRILE +NITRILES +NITRILS +NITRITE +NITRITES +NITRO +NITROBENZENE +NITROBENZENES +NITROCELLULOSE +NITROCELLULOSES +NITROFURAN +NITROFURANS +NITROGEN +NITROGENASE +NITROGENASES +NITROGENOUS +NITROGENS +NITROGLYCERIN +NITROGLYCERINE +NITROGLYCERINES +NITROGLYCERINS +NITROLIC +NITROMETHANE +NITROMETHANES +NITROPARAFFIN +NITROPARAFFINS +NITROS +NITROSAMINE +NITROSAMINES +NITROSO +NITROSYL +NITROSYLS +NITROUS +NITS +NITTIER +NITTIEST +NITTY +NITWIT +NITWITS +NIVAL +NIVEOUS +NIX +NIXE +NIXED +NIXES +NIXIE +NIXIES +NIXING +NIXY +NIZAM +NIZAMATE +NIZAMATES +NIZAMS +NO +NOB +NOBBIER +NOBBIEST +NOBBILY +NOBBLE +NOBBLED +NOBBLER +NOBBLERS +NOBBLES +NOBBLING +NOBBY +NOBELIUM +NOBELIUMS +NOBILIARY +NOBILITIES +NOBILITY +NOBLE +NOBLEMAN +NOBLEMEN +NOBLENESS +NOBLENESSES +NOBLER +NOBLES +NOBLESSE +NOBLESSES +NOBLEST +NOBLEWOMAN +NOBLEWOMEN +NOBLY +NOBODIES +NOBODY +NOBS +NOCENT +NOCICEPTIVE +NOCK +NOCKED +NOCKING +NOCKS +NOCTAMBULIST +NOCTAMBULISTS +NOCTILUCA +NOCTILUCAS +NOCTUID +NOCTUIDS +NOCTULE +NOCTULES +NOCTUOID +NOCTURN +NOCTURNAL +NOCTURNALLY +NOCTURNE +NOCTURNES +NOCTURNS +NOCUOUS +NOCUOUSLY +NOD +NODAL +NODALITIES +NODALITY +NODALLY +NODDED +NODDER +NODDERS +NODDIES +NODDING +NODDINGLY +NODDLE +NODDLED +NODDLES +NODDLING +NODDY +NODE +NODES +NODI +NODICAL +NODOSE +NODOSITIES +NODOSITY +NODOUS +NODS +NODULAR +NODULATION +NODULATIONS +NODULE +NODULES +NODULOSE +NODULOUS +NODUS +NOEL +NOELS +NOES +NOESIS +NOESISES +NOETIC +NOG +NOGG +NOGGED +NOGGIN +NOGGING +NOGGINGS +NOGGINS +NOGGS +NOGS +NOH +NOHOW +NOIL +NOILS +NOILY +NOIR +NOIRISH +NOIRS +NOISE +NOISED +NOISELESS +NOISELESSLY +NOISEMAKER +NOISEMAKERS +NOISEMAKING +NOISEMAKINGS +NOISES +NOISETTE +NOISETTES +NOISIER +NOISIEST +NOISILY +NOISINESS +NOISINESSES +NOISING +NOISOME +NOISOMELY +NOISOMENESS +NOISOMENESSES +NOISY +NOLO +NOLOS +NOM +NOMA +NOMAD +NOMADIC +NOMADISM +NOMADISMS +NOMADS +NOMARCH +NOMARCHIES +NOMARCHS +NOMARCHY +NOMAS +NOMBLES +NOMBRIL +NOMBRILS +NOME +NOMEN +NOMENCLATOR +NOMENCLATORIAL +NOMENCLATORS +NOMENCLATURAL +NOMENCLATURE +NOMENCLATURES +NOMES +NOMINA +NOMINAL +NOMINALISM +NOMINALISMS +NOMINALIST +NOMINALISTIC +NOMINALISTS +NOMINALLY +NOMINALS +NOMINATE +NOMINATED +NOMINATES +NOMINATING +NOMINATION +NOMINATIONS +NOMINATIVE +NOMINATIVES +NOMINATOR +NOMINATORS +NOMINEE +NOMINEES +NOMISM +NOMISMS +NOMISTIC +NOMOGRAM +NOMOGRAMS +NOMOGRAPH +NOMOGRAPHIC +NOMOGRAPHIES +NOMOGRAPHS +NOMOGRAPHY +NOMOI +NOMOLOGIC +NOMOLOGICAL +NOMOLOGIES +NOMOLOGY +NOMOS +NOMOTHETIC +NOMS +NONA +NONABRASIVE +NONABSORBABLE +NONABSORBENT +NONABSORPTIVE +NONABSTRACT +NONACADEMIC +NONACADEMICS +NONACCEPTANCE +NONACCEPTANCES +NONACCOUNTABLE +NONACCREDITED +NONACCRUAL +NONACHIEVEMENT +NONACHIEVEMENTS +NONACID +NONACIDIC +NONACIDS +NONACQUISITIVE +NONACTING +NONACTION +NONACTIONS +NONACTIVATED +NONACTIVE +NONACTOR +NONACTORS +NONADAPTIVE +NONADDICT +NONADDICTIVE +NONADDICTS +NONADDITIVE +NONADDITIVITIES +NONADDITIVITY +NONADHESIVE +NONADIABATIC +NONADJACENT +NONADMIRER +NONADMIRERS +NONADMISSION +NONADMISSIONS +NONADULT +NONADULTS +NONAESTHETIC +NONAFFILIATED +NONAFFLUENT +NONAGE +NONAGENARIAN +NONAGENARIANS +NONAGES +NONAGGRESSION +NONAGGRESSIONS +NONAGGRESSIVE +NONAGON +NONAGONAL +NONAGONS +NONAGRICULTURAL +NONALCOHOLIC +NONALIGNED +NONALIGNMENT +NONALIGNMENTS +NONALLELIC +NONALLERGENIC +NONALLERGIC +NONALPHABETIC +NONALUMINUM +NONAMBIGUOUS +NONANALYTIC +NONANATOMIC +NONANIMAL +NONANSWER +NONANSWERS +NONANTAGONISTIC +NONANTIBIOTIC +NONANTIBIOTICS +NONANTIGENIC +NONAPPEARANCE +NONAPPEARANCES +NONAQUATIC +NONAQUEOUS +NONARABLE +NONARBITRARY +NONARCHITECT +NONARCHITECTS +NONARCHITECTURE +NONARGUMENT +NONARGUMENTS +NONARISTOCRATIC +NONAROMATIC +NONAROMATICS +NONART +NONARTIST +NONARTISTIC +NONARTISTS +NONARTS +NONAS +NONASCETIC +NONASPIRIN +NONASSERTIVE +NONASSOCIATED +NONASTRONOMICAL +NONATHLETE +NONATHLETES +NONATHLETIC +NONATOMIC +NONATTACHED +NONATTACHMENT +NONATTACHMENTS +NONATTENDANCE +NONATTENDANCES +NONATTENDER +NONATTENDERS +NONAUDITORY +NONAUTHOR +NONAUTHORS +NONAUTOMATED +NONAUTOMATIC +NONAUTOMOTIVE +NONAUTONOMOUS +NONAVAILABILITY +NONBACTERIAL +NONBANK +NONBANKING +NONBANKS +NONBARBITURATE +NONBARBITURATES +NONBASIC +NONBEARING +NONBEHAVIORAL +NONBEING +NONBEINGS +NONBELIEF +NONBELIEFS +NONBELIEVER +NONBELIEVERS +NONBELLIGERENCY +NONBELLIGERENT +NONBELLIGERENTS +NONBETTING +NONBINARY +NONBINDING +NONBIOGRAPHICAL +NONBIOLOGICAL +NONBIOLOGICALLY +NONBIOLOGIST +NONBIOLOGISTS +NONBITING +NONBLACK +NONBLACKS +NONBODIES +NONBODY +NONBONDED +NONBONDING +NONBOOK +NONBOOKS +NONBOTANIST +NONBOTANISTS +NONBRAND +NONBREAKABLE +NONBREATHING +NONBREEDER +NONBREEDERS +NONBREEDING +NONBROADCAST +NONBUILDING +NONBURNABLE +NONBUSINESS +NONBUYING +NONCABINET +NONCAKING +NONCALLABLE +NONCALORIC +NONCAMPUS +NONCANCELABLE +NONCANCEROUS +NONCANDIDACIES +NONCANDIDACY +NONCANDIDATE +NONCANDIDATES +NONCAPITAL +NONCAPITALIST +NONCAPITALISTS +NONCARCINOGEN +NONCARCINOGENIC +NONCARCINOGENS +NONCARDIAC +NONCAREER +NONCARRIER +NONCARRIERS +NONCASH +NONCASUAL +NONCAUSAL +NONCE +NONCELEBRATION +NONCELEBRATIONS +NONCELEBRITIES +NONCELEBRITY +NONCELLULAR +NONCELLULOSIC +NONCENTRAL +NONCEREAL +NONCERTIFICATED +NONCERTIFIED +NONCES +NONCHALANCE +NONCHALANCES +NONCHALANT +NONCHALANTLY +NONCHARACTER +NONCHARACTERS +NONCHARISMATIC +NONCHARISMATICS +NONCHAUVINIST +NONCHEMICAL +NONCHEMICALS +NONCHROMOSOMAL +NONCHURCH +NONCHURCHGOER +NONCHURCHGOERS +NONCIRCULAR +NONCIRCULATING +NONCITIZEN +NONCITIZENS +NONCLANDESTINE +NONCLASS +NONCLASSES +NONCLASSICAL +NONCLASSIFIED +NONCLASSROOM +NONCLERICAL +NONCLING +NONCLINICAL +NONCLOGGING +NONCODING +NONCOERCIVE +NONCOGNITIVE +NONCOHERENT +NONCOINCIDENCE +NONCOINCIDENCES +NONCOITAL +NONCOKING +NONCOLA +NONCOLAS +NONCOLLECTOR +NONCOLLECTORS +NONCOLLEGE +NONCOLLEGIATE +NONCOLLINEAR +NONCOLOR +NONCOLORED +NONCOLORFAST +NONCOLORS +NONCOM +NONCOMBAT +NONCOMBATANT +NONCOMBATANTS +NONCOMBATIVE +NONCOMBUSTIBLE +NONCOMMERCIAL +NONCOMMITMENT +NONCOMMITMENTS +NONCOMMITTAL +NONCOMMITTALLY +NONCOMMITTED +NONCOMMUNIST +NONCOMMUNISTS +NONCOMMUNITY +NONCOMMUTATIVE +NONCOMPARABLE +NONCOMPATIBLE +NONCOMPETITION +NONCOMPETITIVE +NONCOMPETITOR +NONCOMPETITORS +NONCOMPLEX +NONCOMPLIANCE +NONCOMPLIANCES +NONCOMPLICATED +NONCOMPLYING +NONCOMPOSER +NONCOMPOSERS +NONCOMPOUND +NONCOMPRESSIBLE +NONCOMPUTER +NONCOMPUTERIZED +NONCOMS +NONCONCEPTUAL +NONCONCERN +NONCONCERNS +NONCONCLUSION +NONCONCLUSIONS +NONCONCUR +NONCONCURRED +NONCONCURRENCE +NONCONCURRENCES +NONCONCURRENT +NONCONCURRING +NONCONCURS +NONCONDENSABLE +NONCONDITIONED +NONCONDUCTING +NONCONDUCTION +NONCONDUCTIVE +NONCONDUCTOR +NONCONDUCTORS +NONCONFERENCE +NONCONFIDENCE +NONCONFIDENCES +NONCONFIDENTIAL +NONCONFLICTING +NONCONFORM +NONCONFORMANCE +NONCONFORMANCES +NONCONFORMED +NONCONFORMER +NONCONFORMERS +NONCONFORMING +NONCONFORMISM +NONCONFORMISMS +NONCONFORMIST +NONCONFORMISTS +NONCONFORMITIES +NONCONFORMITY +NONCONFORMS +NONCONGRUENT +NONCONJUGATED +NONCONNECTION +NONCONNECTIONS +NONCONSCIOUS +NONCONSECUTIVE +NONCONSENSUAL +NONCONSERVATION +NONCONSERVATIVE +NONCONSOLIDATED +NONCONSTANT +NONCONSTRUCTION +NONCONSTRUCTIVE +NONCONSUMER +NONCONSUMERS +NONCONSUMING +NONCONSUMPTION +NONCONSUMPTIONS +NONCONSUMPTIVE +NONCONTACT +NONCONTAGIOUS +NONCONTEMPORARY +NONCONTIGUOUS +NONCONTINGENT +NONCONTINUOUS +NONCONTRACT +NONCONTRACTUAL +NONCONTRIBUTORY +NONCONTROLLABLE +NONCONTROLLED +NONCONTROLLING +NONCONVENTIONAL +NONCONVERTIBLE +NONCOOPERATION +NONCOOPERATIONS +NONCOOPERATIVE +NONCOOPERATOR +NONCOOPERATORS +NONCOPLANAR +NONCORE +NONCORPORATE +NONCORRELATION +NONCORRELATIONS +NONCORRODIBLE +NONCORRODING +NONCORROSIVE +NONCOUNTRY +NONCOUNTY +NONCOVERAGE +NONCOVERAGES +NONCREATIVE +NONCREATIVITIES +NONCREATIVITY +NONCREDENTIALED +NONCREDIT +NONCRIME +NONCRIMES +NONCRIMINAL +NONCRIMINALS +NONCRISES +NONCRISIS +NONCRITICAL +NONCROSSOVER +NONCRUSHABLE +NONCRYSTALLINE +NONCULINARY +NONCULTIVATED +NONCULTIVATION +NONCULTIVATIONS +NONCULTURAL +NONCUMULATIVE +NONCURRENT +NONCUSTODIAL +NONCUSTOMER +NONCUSTOMERS +NONCYCLIC +NONCYCLICAL +NONDAIRY +NONDANCE +NONDANCER +NONDANCERS +NONDANCES +NONDECEPTIVE +NONDECISION +NONDECISIONS +NONDECREASING +NONDEDUCTIBLE +NONDEDUCTIVE +NONDEFENSE +NONDEFERRABLE +NONDEFORMING +NONDEGENERATE +NONDEGRADABLE +NONDEGREE +NONDELEGATE +NONDELEGATES +NONDELIBERATE +NONDELINQUENT +NONDELINQUENTS +NONDELIVERIES +NONDELIVERY +NONDEMAND +NONDEMANDING +NONDEMANDS +NONDEMOCRATIC +NONDEPARTMENTAL +NONDEPENDENT +NONDEPENDENTS +NONDEPLETABLE +NONDEPLETING +NONDEPOSITION +NONDEPOSITIONS +NONDEPRESSED +NONDERIVATIVE +NONDESCRIPT +NONDESCRIPTIVE +NONDESCRIPTS +NONDESERT +NONDESTRUCTIVE +NONDETACHABLE +NONDEVELOPMENT +NONDEVELOPMENTS +NONDEVIANT +NONDIABETIC +NONDIABETICS +NONDIALYZABLE +NONDIAPAUSING +NONDIDACTIC +NONDIFFUSIBLE +NONDIMENSIONAL +NONDIPLOMATIC +NONDIRECTED +NONDIRECTIONAL +NONDIRECTIVE +NONDISABLED +NONDISCLOSURE +NONDISCLOSURES +NONDISCOUNT +NONDISCURSIVE +NONDISJUNCTION +NONDISJUNCTIONS +NONDISPERSIVE +NONDISRUPTIVE +NONDISTINCTIVE +NONDIVERSIFIED +NONDIVIDING +NONDOCTOR +NONDOCTORS +NONDOCTRINAIRE +NONDOCUMENTARY +NONDOGMATIC +NONDOLLAR +NONDOMESTIC +NONDOMINANT +NONDORMANT +NONDRAMATIC +NONDRINKER +NONDRINKERS +NONDRINKING +NONDRIP +NONDRIVER +NONDRIVERS +NONDRUG +NONDRYING +NONDURABLE +NONE +NONEARNING +NONECONOMIC +NONECONOMIST +NONECONOMISTS +NONEDIBLE +NONEDIBLES +NONEDITORIAL +NONEDUCATION +NONEDUCATIONAL +NONEFFECTIVE +NONEGO +NONEGOS +NONELASTIC +NONELECT +NONELECTED +NONELECTION +NONELECTIONS +NONELECTIVE +NONELECTRIC +NONELECTRICAL +NONELECTROLYTE +NONELECTROLYTES +NONELECTRONIC +NONELEMENTARY +NONELITE +NONEMERGENCIES +NONEMERGENCY +NONEMOTIONAL +NONEMPHATIC +NONEMPIRICAL +NONEMPLOYEE +NONEMPLOYEES +NONEMPLOYMENT +NONEMPLOYMENTS +NONEMPTY +NONENCAPSULATED +NONENDING +NONENERGY +NONENFORCEMENT +NONENFORCEMENTS +NONENGAGEMENT +NONENGAGEMENTS +NONENGINEERING +NONENTITIES +NONENTITY +NONENTRIES +NONENTRY +NONENZYMATIC +NONENZYMIC +NONEQUAL +NONEQUALS +NONEQUILIBRIA +NONEQUILIBRIUM +NONEQUILIBRIUMS +NONEQUIVALENCE +NONEQUIVALENCES +NONEQUIVALENT +NONEROTIC +NONES +NONESSENTIAL +NONESSENTIALS +NONESTABLISHED +NONESTERIFIED +NONESUCH +NONESUCHES +NONET +NONETHELESS +NONETHICAL +NONETHNIC +NONETHNICS +NONETS +NONEVALUATIVE +NONEVENT +NONEVENTS +NONEVIDENCE +NONEVIDENCES +NONEXCLUSIVE +NONEXECUTIVE +NONEXECUTIVES +NONEXEMPT +NONEXEMPTS +NONEXISTENCE +NONEXISTENCES +NONEXISTENT +NONEXISTENTIAL +NONEXOTIC +NONEXPENDABLE +NONEXPERIMENTAL +NONEXPERT +NONEXPERTS +NONEXPLANATORY +NONEXPLOITATION +NONEXPLOITATIVE +NONEXPLOITIVE +NONEXPLOSIVE +NONEXPOSED +NONEXTANT +NONFACT +NONFACTOR +NONFACTORS +NONFACTS +NONFACTUAL +NONFACULTY +NONFADING +NONFAMILIAL +NONFAMILIES +NONFAMILY +NONFAN +NONFANS +NONFARM +NONFARMER +NONFARMERS +NONFAT +NONFATAL +NONFATTENING +NONFATTY +NONFEASANCE +NONFEASANCES +NONFEDERAL +NONFEDERATED +NONFEMINIST +NONFEMINISTS +NONFERROUS +NONFEUDAL +NONFICTION +NONFICTIONAL +NONFICTIONS +NONFIGURATIVE +NONFILAMENTOUS +NONFILIAL +NONFILTERABLE +NONFINAL +NONFINANCIAL +NONFINITE +NONFISCAL +NONFISSIONABLE +NONFLAMMABILITY +NONFLAMMABLE +NONFLOWERING +NONFLUENCIES +NONFLUENCY +NONFLUID +NONFLUIDS +NONFLUORESCENT +NONFLYING +NONFOCAL +NONFOOD +NONFORFEITABLE +NONFORFEITURE +NONFORFEITURES +NONFORMAL +NONFOSSIL +NONFREEZING +NONFRIVOLOUS +NONFROZEN +NONFUEL +NONFULFILLMENT +NONFULFILLMENTS +NONFUNCTIONAL +NONFUNCTIONING +NONFUNDED +NONGAME +NONGASEOUS +NONGAY +NONGAYS +NONGENETIC +NONGENITAL +NONGEOMETRICAL +NONGHETTO +NONGLAMOROUS +NONGLARE +NONGLARES +NONGLAZED +NONGLOSSY +NONGOLFER +NONGOLFERS +NONGONOCOCCAL +NONGOVERNMENT +NONGOVERNMENTAL +NONGRADED +NONGRADUATE +NONGRADUATES +NONGRAMMATICAL +NONGRANULAR +NONGREASY +NONGREEN +NONGREGARIOUS +NONGROWING +NONGROWTH +NONGUEST +NONGUESTS +NONGUILT +NONGUILTS +NONHALOGENATED +NONHANDICAPPED +NONHAPPENING +NONHAPPENINGS +NONHARDY +NONHARMONIC +NONHAZARDOUS +NONHEME +NONHEMOLYTIC +NONHEREDITARY +NONHERO +NONHEROES +NONHEROIC +NONHIERARCHICAL +NONHISTONE +NONHISTORICAL +NONHOME +NONHOMOGENEOUS +NONHOMOLOGOUS +NONHOMOSEXUAL +NONHOMOSEXUALS +NONHORMONAL +NONHOSPITAL +NONHOSPITALIZED +NONHOSTILE +NONHOUSING +NONHUMAN +NONHUMANS +NONHUNTER +NONHUNTERS +NONHUNTING +NONHYGROSCOPIC +NONHYSTERICAL +NONIDEAL +NONIDENTICAL +NONIDENTITIES +NONIDENTITY +NONIDEOLOGICAL +NONILLION +NONILLIONS +NONIMAGE +NONIMAGES +NONIMITATIVE +NONIMMIGRANT +NONIMMIGRANTS +NONIMMUNE +NONIMPACT +NONIMPLICATION +NONIMPLICATIONS +NONIMPORTATION +NONIMPORTATIONS +NONINCLUSION +NONINCLUSIONS +NONINCREASING +NONINCUMBENT +NONINCUMBENTS +NONINDEPENDENCE +NONINDIGENOUS +NONINDIVIDUAL +NONINDUCTIVE +NONINDUSTRIAL +NONINDUSTRY +NONINERT +NONINFECTED +NONINFECTIOUS +NONINFECTIVE +NONINFESTED +NONINFLAMMABLE +NONINFLAMMATORY +NONINFLATIONARY +NONINFLECTIONAL +NONINFLUENCE +NONINFLUENCES +NONINFORMATION +NONINFORMATIONS +NONINFRINGEMENT +NONINITIAL +NONINITIATE +NONINITIATES +NONINJURY +NONINSECT +NONINSECTICIDAL +NONINSECTS +NONINSTALLMENT +NONINSTALLMENTS +NONINSTRUMENTAL +NONINSURANCE +NONINSURED +NONINTEGRAL +NONINTEGRATED +NONINTELLECTUAL +NONINTERACTING +NONINTERACTIVE +NONINTERCOURSE +NONINTERCOURSES +NONINTEREST +NONINTERFERENCE +NONINTERSECTING +NONINTERVENTION +NONINTIMIDATING +NONINTOXICANT +NONINTOXICANTS +NONINTOXICATING +NONINTRUSIVE +NONINTUITIVE +NONINVASIVE +NONINVOLVED +NONINVOLVEMENT +NONINVOLVEMENTS +NONIONIC +NONIONIZING +NONIRON +NONIRRADIATED +NONIRRIGATED +NONIRRITANT +NONIRRITANTS +NONIRRITATING +NONISSUE +NONISSUES +NONJOINDER +NONJOINDERS +NONJOINER +NONJOINERS +NONJUDGMENTAL +NONJUDICIAL +NONJURIES +NONJURING +NONJUROR +NONJURORS +NONJURY +NONJUSTICIABLE +NONKOSHER +NONKOSHERS +NONLABOR +NONLANDOWNER +NONLANDOWNERS +NONLANGUAGE +NONLANGUAGES +NONLAWYER +NONLAWYERS +NONLEADED +NONLEAFY +NONLEAGUE +NONLEGAL +NONLEGUME +NONLEGUMES +NONLEGUMINOUS +NONLETHAL +NONLEVEL +NONLEXICAL +NONLIABLE +NONLIBRARIAN +NONLIBRARIANS +NONLIBRARY +NONLIFE +NONLINEAL +NONLINEAR +NONLINEARITIES +NONLINEARITY +NONLINGUISTIC +NONLIQUID +NONLIQUIDS +NONLITERAL +NONLITERARY +NONLITERATE +NONLITERATES +NONLIVES +NONLIVING +NONLIVINGS +NONLOCAL +NONLOCALS +NONLOGICAL +NONLOVING +NONLOYAL +NONLUMINOUS +NONLYRIC +NONMAGNETIC +NONMAINSTREAM +NONMAJOR +NONMAJORS +NONMALIGNANT +NONMALLEABLE +NONMAN +NONMANAGEMENT +NONMANAGERIAL +NONMANUAL +NONMARITAL +NONMARKET +NONMARKETS +NONMATERIAL +NONMATHEMATICAL +NONMATRICULATED +NONMATURE +NONMEANINGFUL +NONMEASURABLE +NONMEAT +NONMECHANICAL +NONMECHANISTIC +NONMEDICAL +NONMEETING +NONMEETINGS +NONMEMBER +NONMEMBERS +NONMEMBERSHIP +NONMEMBERSHIPS +NONMEN +NONMENTAL +NONMERCURIAL +NONMETAL +NONMETALLIC +NONMETALS +NONMETAMERIC +NONMETAPHORICAL +NONMETRIC +NONMETRICAL +NONMETRO +NONMETROPOLITAN +NONMICROBIAL +NONMIGRANT +NONMIGRATORY +NONMILITANT +NONMILITANTS +NONMILITARY +NONMIMETIC +NONMINORITIES +NONMINORITY +NONMOBILE +NONMODAL +NONMODERN +NONMODERNS +NONMOLECULAR +NONMONETARIST +NONMONETARISTS +NONMONETARY +NONMONEY +NONMONOGAMOUS +NONMORAL +NONMORTAL +NONMORTALS +NONMOTILE +NONMOTILITIES +NONMOTILITY +NONMOTORIZED +NONMOVING +NONMUNICIPAL +NONMUSIC +NONMUSICAL +NONMUSICALS +NONMUSICIAN +NONMUSICIANS +NONMUSICS +NONMUTANT +NONMUTANTS +NONMUTUAL +NONMYELINATED +NONMYSTICAL +NONNARRATIVE +NONNASAL +NONNATIONAL +NONNATIONALS +NONNATIVE +NONNATIVES +NONNATURAL +NONNAVAL +NONNECESSITIES +NONNECESSITY +NONNEGATIVE +NONNEGLIGENT +NONNEGOTIABLE +NONNEGOTIABLES +NONNETWORK +NONNEURAL +NONNEWS +NONNITROGENOUS +NONNOBLE +NONNORMAL +NONNORMATIVE +NONNOVEL +NONNOVELS +NONNUCLEAR +NONNUCLEATED +NONNUMERICAL +NONNUTRITIOUS +NONNUTRITIVE +NONOBESE +NONOBJECTIVE +NONOBJECTIVISM +NONOBJECTIVISMS +NONOBJECTIVIST +NONOBJECTIVISTS +NONOBJECTIVITY +NONOBSCENE +NONOBSERVANCE +NONOBSERVANCES +NONOBSERVANT +NONOBVIOUS +NONOCCUPATIONAL +NONOCCURRENCE +NONOCCURRENCES +NONOFFICIAL +NONOFFICIALS +NONOHMIC +NONOILY +NONOPERATIC +NONOPERATING +NONOPERATIONAL +NONOPERATIVE +NONOPTIMAL +NONORAL +NONORALLY +NONORGANIC +NONORGASMIC +NONORTHODOX +NONOVERLAPPING +NONOWNER +NONOWNERS +NONOXIDIZING +NONPAGAN +NONPAGANS +NONPAID +NONPAPAL +NONPAPIST +NONPAPISTS +NONPAR +NONPARALLEL +NONPARAMETRIC +NONPARASITIC +NONPAREIL +NONPAREILS +NONPARENT +NONPARENTS +NONPARITIES +NONPARITY +NONPARTICIPANT +NONPARTICIPANTS +NONPARTIES +NONPARTISAN +NONPARTISANSHIP +NONPARTY +NONPASSERINE +NONPASSIVE +NONPAST +NONPASTS +NONPATHOGENIC +NONPAYING +NONPAYMENT +NONPAYMENTS +NONPEAK +NONPERFORMANCE +NONPERFORMANCES +NONPERFORMER +NONPERFORMERS +NONPERFORMING +NONPERISHABLE +NONPERISHABLES +NONPERMISSIVE +NONPERSISTENT +NONPERSON +NONPERSONAL +NONPERSONS +NONPETROLEUM +NONPHILOSOPHER +NONPHILOSOPHERS +NONPHONEMIC +NONPHONETIC +NONPHOSPHATE +NONPHOTOGRAPHIC +NONPHYSICAL +NONPHYSICIAN +NONPHYSICIANS +NONPLANAR +NONPLASTIC +NONPLASTICS +NONPLAY +NONPLAYER +NONPLAYERS +NONPLAYING +NONPLAYS +NONPLIANT +NONPLUS +NONPLUSED +NONPLUSES +NONPLUSING +NONPLUSSED +NONPLUSSES +NONPLUSSING +NONPOETIC +NONPOINT +NONPOISONOUS +NONPOLAR +NONPOLARIZABLE +NONPOLICE +NONPOLITICAL +NONPOLITICALLY +NONPOLITICIAN +NONPOLITICIANS +NONPOLLUTING +NONPOOR +NONPOROUS +NONPOSSESSION +NONPOSSESSIONS +NONPOSTAL +NONPRACTICAL +NONPRACTICING +NONPREGNANT +NONPRESCRIPTION +NONPRINT +NONPROBLEM +NONPROBLEMS +NONPRODUCING +NONPRODUCTIVE +NONPROFESSIONAL +NONPROFESSORIAL +NONPROFIT +NONPROFITS +NONPROGRAM +NONPROGRAMMER +NONPROGRAMMERS +NONPROGRESSIVE +NONPROPRIETARY +NONPROS +NONPROSSED +NONPROSSES +NONPROSSING +NONPROTEIN +NONPROVEN +NONPSYCHIATRIC +NONPSYCHIATRIST +NONPSYCHOTIC +NONPUBLIC +NONPUNITIVE +NONPURPOSIVE +NONQUANTIFIABLE +NONQUANTITATIVE +NONQUOTA +NONRACIAL +NONRACIALLY +NONRADIOACTIVE +NONRAILROAD +NONRANDOM +NONRANDOMNESS +NONRANDOMNESSES +NONRATED +NONRATIONAL +NONREACTIVE +NONREACTOR +NONREACTORS +NONREADER +NONREADERS +NONREADING +NONREALISTIC +NONRECEIPT +NONRECEIPTS +NONRECIPROCAL +NONRECOGNITION +NONRECOGNITIONS +NONRECOMBINANT +NONRECOMBINANTS +NONRECOURSE +NONRECURRENT +NONRECURRING +NONRECYCLABLE +NONRECYCLABLES +NONREDUCING +NONREDUNDANT +NONREFILLABLE +NONREFLECTING +NONREFUNDABLE +NONREGULATED +NONREGULATION +NONRELATIVE +NONRELATIVES +NONRELATIVISTIC +NONRELEVANT +NONRELIGIOUS +NONRENEWABLE +NONRENEWAL +NONREPAYABLE +NONREPRODUCTIVE +NONRESIDENCE +NONRESIDENCES +NONRESIDENCIES +NONRESIDENCY +NONRESIDENT +NONRESIDENTIAL +NONRESIDENTS +NONRESISTANCE +NONRESISTANCES +NONRESISTANT +NONRESISTANTS +NONRESONANT +NONRESPONDENT +NONRESPONDENTS +NONRESPONDER +NONRESPONDERS +NONRESPONSE +NONRESPONSES +NONRESPONSIVE +NONRESTRICTED +NONRESTRICTIVE +NONRETRACTILE +NONRETROACTIVE +NONRETURNABLE +NONRETURNABLES +NONREUSABLE +NONREVERSIBLE +NONRHOTIC +NONRIGID +NONRIOTER +NONRIOTERS +NONRIOTING +NONRIVAL +NONRIVALS +NONROTATING +NONROUTINE +NONROYAL +NONRUBBER +NONRULING +NONRUMINANT +NONRUMINANTS +NONRURAL +NONSACRED +NONSALABLE +NONSALINE +NONSAPONIFIABLE +NONSCHEDULED +NONSCHOOL +NONSCIENCE +NONSCIENCES +NONSCIENTIFIC +NONSCIENTIST +NONSCIENTISTS +NONSEASONAL +NONSECRET +NONSECRETOR +NONSECRETORS +NONSECRETORY +NONSECRETS +NONSECTARIAN +NONSECURE +NONSEDIMENTABLE +NONSEGREGATED +NONSEGREGATION +NONSEGREGATIONS +NONSELECTED +NONSELECTIVE +NONSELF +NONSELVES +NONSENSATIONAL +NONSENSE +NONSENSES +NONSENSICAL +NONSENSICALLY +NONSENSICALNESS +NONSENSITIVE +NONSENSUOUS +NONSENTENCE +NONSENTENCES +NONSEPTATE +NONSEQUENTIAL +NONSERIAL +NONSERIALS +NONSERIOUS +NONSEXIST +NONSEXUAL +NONSHRINK +NONSHRINKABLE +NONSIGNER +NONSIGNERS +NONSIGNIFICANT +NONSIMULTANEOUS +NONSINKABLE +NONSKATER +NONSKATERS +NONSKED +NONSKEDS +NONSKELETAL +NONSKID +NONSKIER +NONSKIERS +NONSLIP +NONSMOKER +NONSMOKERS +NONSMOKING +NONSOCIAL +NONSOCIALIST +NONSOCIALISTS +NONSOLAR +NONSOLID +NONSOLIDS +NONSOLUTION +NONSOLUTIONS +NONSPATIAL +NONSPEAKER +NONSPEAKERS +NONSPEAKING +NONSPECIALIST +NONSPECIALISTS +NONSPECIFIC +NONSPECIFICALLY +NONSPECTACULAR +NONSPECULATIVE +NONSPEECH +NONSPHERICAL +NONSPORTING +NONSTANDARD +NONSTAPLE +NONSTAPLES +NONSTARTER +NONSTARTERS +NONSTATIC +NONSTATIONARY +NONSTATISTICAL +NONSTEADY +NONSTEROID +NONSTEROIDAL +NONSTEROIDS +NONSTICK +NONSTICKY +NONSTOP +NONSTOPS +NONSTORIES +NONSTORY +NONSTRATEGIC +NONSTRUCTURAL +NONSTRUCTURED +NONSTUDENT +NONSTUDENTS +NONSTYLE +NONSTYLES +NONSUBJECT +NONSUBJECTIVE +NONSUBJECTS +NONSUBSIDIZED +NONSUCCESS +NONSUCCESSES +NONSUCH +NONSUCHES +NONSUGAR +NONSUGARS +NONSUIT +NONSUITED +NONSUITING +NONSUITS +NONSUPERVISORY +NONSUPPORT +NONSUPPORTS +NONSURGICAL +NONSWIMMER +NONSWIMMERS +NONSYLLABIC +NONSYMBOLIC +NONSYMMETRIC +NONSYMMETRICAL +NONSYNCHRONOUS +NONSYSTEM +NONSYSTEMATIC +NONSYSTEMIC +NONSYSTEMS +NONTALKER +NONTALKERS +NONTARGET +NONTARIFF +NONTAX +NONTAXABLE +NONTAXES +NONTEACHING +NONTECHNICAL +NONTEMPORAL +NONTENURED +NONTERMINAL +NONTERMINALS +NONTERMINATING +NONTHEATRICAL +NONTHEIST +NONTHEISTIC +NONTHEISTS +NONTHEOLOGICAL +NONTHEORETICAL +NONTHERAPEUTIC +NONTHERMAL +NONTHINKING +NONTHREATENING +NONTIDAL +NONTITLE +NONTOBACCO +NONTONAL +NONTONIC +NONTOTALITARIAN +NONTOXIC +NONTRADITIONAL +NONTRAGIC +NONTRANSFERABLE +NONTREATMENT +NONTREATMENTS +NONTRIBAL +NONTRIVIAL +NONTROPICAL +NONTRUMP +NONTRUTH +NONTRUTHS +NONTURBULENT +NONTYPICAL +NONUNANIMOUS +NONUNIFORM +NONUNIFORMITIES +NONUNIFORMITY +NONUNION +NONUNIONIZED +NONUNIONS +NONUNIQUE +NONUNIQUENESS +NONUNIQUENESSES +NONUNIVERSAL +NONUNIVERSITY +NONUPLE +NONUPLES +NONURBAN +NONURGENT +NONUSABLE +NONUSE +NONUSER +NONUSERS +NONUSES +NONUSING +NONUTILITARIAN +NONUTILITIES +NONUTILITY +NONUTOPIAN +NONVACANT +NONVALID +NONVALIDITIES +NONVALIDITY +NONVANISHING +NONVASCULAR +NONVECTOR +NONVECTORS +NONVEGETARIAN +NONVEGETARIANS +NONVENOMOUS +NONVENOUS +NONVERBAL +NONVERBALLY +NONVESTED +NONVETERAN +NONVETERANS +NONVIABLE +NONVIEWER +NONVIEWERS +NONVINTAGE +NONVIOLENCE +NONVIOLENCES +NONVIOLENT +NONVIOLENTLY +NONVIRAL +NONVIRGIN +NONVIRGINS +NONVIRILE +NONVISCOUS +NONVISUAL +NONVITAL +NONVOCAL +NONVOCALS +NONVOCATIONAL +NONVOLATILE +NONVOLCANIC +NONVOLUNTARY +NONVOTER +NONVOTERS +NONVOTING +NONWAGE +NONWAR +NONWARS +NONWHITE +NONWHITES +NONWINGED +NONWINNING +NONWOODY +NONWOOL +NONWORD +NONWORDS +NONWORK +NONWORKER +NONWORKERS +NONWORKING +NONWOVEN +NONWOVENS +NONWRITER +NONWRITERS +NONYELLOWING +NONYL +NONYLS +NONZERO +NOO +NOODGE +NOODGED +NOODGES +NOODGING +NOODLE +NOODLED +NOODLES +NOODLING +NOOGIE +NOOGIES +NOOK +NOOKIE +NOOKIES +NOOKLIKE +NOOKS +NOOKY +NOON +NOONDAY +NOONDAYS +NOONING +NOONINGS +NOONS +NOONTIDE +NOONTIDES +NOONTIME +NOONTIMES +NOOSE +NOOSED +NOOSER +NOOSERS +NOOSES +NOOSING +NOOSPHERE +NOOSPHERES +NOOTROPIC +NOOTROPICS +NOPAL +NOPALES +NOPALITO +NOPALITOS +NOPALS +NOPE +NOPLACE +NOR +NORADRENALIN +NORADRENALINE +NORADRENALINES +NORADRENALINS +NORADRENERGIC +NORDIC +NOREPINEPHRINE +NOREPINEPHRINES +NORETHINDRONE +NORETHINDRONES +NORI +NORIA +NORIAS +NORIS +NORITE +NORITES +NORITIC +NORLAND +NORLANDS +NORM +NORMAL +NORMALCIES +NORMALCY +NORMALISE +NORMALISED +NORMALISES +NORMALISING +NORMALITIES +NORMALITY +NORMALIZABLE +NORMALIZATION +NORMALIZATIONS +NORMALIZE +NORMALIZED +NORMALIZER +NORMALIZERS +NORMALIZES +NORMALIZING +NORMALLY +NORMALS +NORMANDE +NORMATIVE +NORMATIVELY +NORMATIVENESS +NORMATIVENESSES +NORMED +NORMLESS +NORMOTENSIVE +NORMOTENSIVES +NORMOTHERMIA +NORMOTHERMIAS +NORMOTHERMIC +NORMS +NORTH +NORTHBOUND +NORTHEAST +NORTHEASTER +NORTHEASTERLY +NORTHEASTERN +NORTHEASTERS +NORTHEASTS +NORTHEASTWARD +NORTHEASTWARDS +NORTHER +NORTHERLIES +NORTHERLY +NORTHERN +NORTHERNMOST +NORTHERNS +NORTHERS +NORTHING +NORTHINGS +NORTHLAND +NORTHLANDS +NORTHMOST +NORTHS +NORTHWARD +NORTHWARDS +NORTHWEST +NORTHWESTER +NORTHWESTERLY +NORTHWESTERN +NORTHWESTERS +NORTHWESTS +NORTHWESTWARD +NORTHWESTWARDS +NORTRIPTYLINE +NORTRIPTYLINES +NOS +NOSE +NOSEBAG +NOSEBAGS +NOSEBAND +NOSEBANDS +NOSEBLEED +NOSEBLEEDS +NOSED +NOSEDIVE +NOSEDIVED +NOSEDIVES +NOSEDIVING +NOSEDOVE +NOSEGAY +NOSEGAYS +NOSEGUARD +NOSEGUARDS +NOSELESS +NOSELIKE +NOSEPIECE +NOSEPIECES +NOSES +NOSEWHEEL +NOSEWHEELS +NOSEY +NOSH +NOSHED +NOSHER +NOSHERS +NOSHES +NOSHING +NOSIER +NOSIEST +NOSILY +NOSINESS +NOSINESSES +NOSING +NOSINGS +NOSOCOMIAL +NOSOLOGIC +NOSOLOGICAL +NOSOLOGICALLY +NOSOLOGIES +NOSOLOGY +NOSTALGIA +NOSTALGIAS +NOSTALGIC +NOSTALGICALLY +NOSTALGICS +NOSTALGIST +NOSTALGISTS +NOSTOC +NOSTOCS +NOSTOLOGIES +NOSTOLOGY +NOSTRIL +NOSTRILS +NOSTRUM +NOSTRUMS +NOSY +NOT +NOTA +NOTABILIA +NOTABILITIES +NOTABILITY +NOTABLE +NOTABLENESS +NOTABLENESSES +NOTABLES +NOTABLY +NOTAL +NOTARIAL +NOTARIALLY +NOTARIES +NOTARIZATION +NOTARIZATIONS +NOTARIZE +NOTARIZED +NOTARIZES +NOTARIZING +NOTARY +NOTATE +NOTATED +NOTATES +NOTATING +NOTATION +NOTATIONAL +NOTATIONS +NOTCH +NOTCHBACK +NOTCHBACKS +NOTCHED +NOTCHER +NOTCHERS +NOTCHES +NOTCHING +NOTE +NOTEBOOK +NOTEBOOKS +NOTECARD +NOTECARDS +NOTECASE +NOTECASES +NOTED +NOTEDLY +NOTEDNESS +NOTEDNESSES +NOTELESS +NOTEPAD +NOTEPADS +NOTEPAPER +NOTEPAPERS +NOTER +NOTERS +NOTES +NOTEWORTHILY +NOTEWORTHINESS +NOTEWORTHY +NOTHER +NOTHING +NOTHINGNESS +NOTHINGNESSES +NOTHINGS +NOTICE +NOTICEABLE +NOTICEABLY +NOTICED +NOTICER +NOTICERS +NOTICES +NOTICING +NOTIFIABLE +NOTIFICATION +NOTIFICATIONS +NOTIFIED +NOTIFIER +NOTIFIERS +NOTIFIES +NOTIFY +NOTIFYING +NOTING +NOTION +NOTIONAL +NOTIONALITIES +NOTIONALITY +NOTIONALLY +NOTIONS +NOTOCHORD +NOTOCHORDAL +NOTOCHORDS +NOTORIETIES +NOTORIETY +NOTORIOUS +NOTORIOUSLY +NOTORNIS +NOTTURNI +NOTTURNO +NOTUM +NOTWITHSTANDING +NOUGAT +NOUGATS +NOUGHT +NOUGHTS +NOUMENA +NOUMENAL +NOUMENON +NOUN +NOUNAL +NOUNALLY +NOUNLESS +NOUNS +NOURISH +NOURISHED +NOURISHER +NOURISHERS +NOURISHES +NOURISHING +NOURISHMENT +NOURISHMENTS +NOUS +NOUSES +NOUVEAU +NOUVELLE +NOUVELLES +NOVA +NOVACULITE +NOVACULITES +NOVAE +NOVALIKE +NOVAS +NOVATION +NOVATIONS +NOVEL +NOVELETTE +NOVELETTES +NOVELETTISH +NOVELISE +NOVELISED +NOVELISES +NOVELISING +NOVELIST +NOVELISTIC +NOVELISTICALLY +NOVELISTS +NOVELIZATION +NOVELIZATIONS +NOVELIZE +NOVELIZED +NOVELIZER +NOVELIZERS +NOVELIZES +NOVELIZING +NOVELLA +NOVELLAS +NOVELLE +NOVELLY +NOVELS +NOVELTIES +NOVELTY +NOVEMDECILLION +NOVEMDECILLIONS +NOVENA +NOVENAE +NOVENAS +NOVERCAL +NOVICE +NOVICES +NOVICIATE +NOVICIATES +NOVITIATE +NOVITIATES +NOVOBIOCIN +NOVOBIOCINS +NOVOCAINE +NOVOCAINES +NOW +NOWADAYS +NOWAY +NOWAYS +NOWHERE +NOWHERES +NOWHITHER +NOWISE +NOWNESS +NOWNESSES +NOWS +NOWT +NOWTS +NOXIOUS +NOXIOUSLY +NOXIOUSNESS +NOXIOUSNESSES +NOYADE +NOYADES +NOZZLE +NOZZLES +NTH +NU +NUANCE +NUANCED +NUANCES +NUB +NUBBIER +NUBBIEST +NUBBIN +NUBBINESS +NUBBINESSES +NUBBINS +NUBBLE +NUBBLES +NUBBLIER +NUBBLIEST +NUBBLY +NUBBY +NUBIA +NUBIAS +NUBILE +NUBILITIES +NUBILITY +NUBILOSE +NUBILOUS +NUBS +NUBUCK +NUBUCKS +NUCELLAR +NUCELLI +NUCELLUS +NUCHA +NUCHAE +NUCHAL +NUCHALS +NUCLEAL +NUCLEAR +NUCLEASE +NUCLEASES +NUCLEATE +NUCLEATED +NUCLEATES +NUCLEATING +NUCLEATION +NUCLEATIONS +NUCLEATOR +NUCLEATORS +NUCLEI +NUCLEIN +NUCLEINIC +NUCLEINS +NUCLEOCAPSID +NUCLEOCAPSIDS +NUCLEOID +NUCLEOIDS +NUCLEOLAR +NUCLEOLE +NUCLEOLES +NUCLEOLI +NUCLEOLUS +NUCLEON +NUCLEONIC +NUCLEONICS +NUCLEONS +NUCLEOPHILE +NUCLEOPHILES +NUCLEOPHILIC +NUCLEOPHILICITY +NUCLEOPLASM +NUCLEOPLASMIC +NUCLEOPLASMS +NUCLEOPROTEIN +NUCLEOPROTEINS +NUCLEOSIDE +NUCLEOSIDES +NUCLEOSOMAL +NUCLEOSOME +NUCLEOSOMES +NUCLEOSYNTHESES +NUCLEOSYNTHESIS +NUCLEOSYNTHETIC +NUCLEOTIDASE +NUCLEOTIDASES +NUCLEOTIDE +NUCLEOTIDES +NUCLEUS +NUCLEUSES +NUCLIDE +NUCLIDES +NUCLIDIC +NUDE +NUDELY +NUDENESS +NUDENESSES +NUDER +NUDES +NUDEST +NUDGE +NUDGED +NUDGER +NUDGERS +NUDGES +NUDGING +NUDIBRANCH +NUDIBRANCHS +NUDICAUL +NUDIE +NUDIES +NUDISM +NUDISMS +NUDIST +NUDISTS +NUDITIES +NUDITY +NUDNICK +NUDNICKS +NUDNIK +NUDNIKS +NUDZH +NUDZHED +NUDZHES +NUDZHING +NUGATORY +NUGGET +NUGGETS +NUGGETY +NUISANCE +NUISANCES +NUKE +NUKED +NUKES +NUKING +NULL +NULLAH +NULLAHS +NULLED +NULLIFICATION +NULLIFICATIONS +NULLIFIED +NULLIFIER +NULLIFIERS +NULLIFIES +NULLIFY +NULLIFYING +NULLING +NULLIPARA +NULLIPARAE +NULLIPARAS +NULLIPAROUS +NULLIPORE +NULLIPORES +NULLITIES +NULLITY +NULLS +NUMB +NUMBAT +NUMBATS +NUMBED +NUMBER +NUMBERABLE +NUMBERED +NUMBERER +NUMBERERS +NUMBERING +NUMBERLESS +NUMBERS +NUMBEST +NUMBFISH +NUMBFISHES +NUMBING +NUMBINGLY +NUMBLES +NUMBLY +NUMBNESS +NUMBNESSES +NUMBS +NUMBSKULL +NUMBSKULLS +NUMCHUCK +NUMCHUCKS +NUMEN +NUMERABLE +NUMERABLY +NUMERACIES +NUMERACY +NUMERAL +NUMERALLY +NUMERALS +NUMERARY +NUMERATE +NUMERATED +NUMERATES +NUMERATING +NUMERATION +NUMERATIONS +NUMERATOR +NUMERATORS +NUMERIC +NUMERICAL +NUMERICALLY +NUMERICS +NUMEROLOGICAL +NUMEROLOGIES +NUMEROLOGIST +NUMEROLOGISTS +NUMEROLOGY +NUMEROUS +NUMEROUSLY +NUMEROUSNESS +NUMEROUSNESSES +NUMINA +NUMINOUS +NUMINOUSNESS +NUMINOUSNESSES +NUMISMATIC +NUMISMATICALLY +NUMISMATICS +NUMISMATIST +NUMISMATISTS +NUMMARY +NUMMULAR +NUMMULITE +NUMMULITES +NUMSKULL +NUMSKULLS +NUN +NUNATAK +NUNATAKS +NUNCHAKU +NUNCHAKUS +NUNCIATURE +NUNCIATURES +NUNCIO +NUNCIOS +NUNCLE +NUNCLES +NUNCUPATIVE +NUNLIKE +NUNNATION +NUNNATIONS +NUNNERIES +NUNNERY +NUNNISH +NUNS +NUPTIAL +NUPTIALITIES +NUPTIALITY +NUPTIALLY +NUPTIALS +NURD +NURDS +NURL +NURLED +NURLING +NURLS +NURSE +NURSED +NURSEMAID +NURSEMAIDS +NURSER +NURSERIES +NURSERS +NURSERY +NURSERYMAN +NURSERYMEN +NURSES +NURSING +NURSINGS +NURSLING +NURSLINGS +NURTURAL +NURTURANCE +NURTURANCES +NURTURANT +NURTURE +NURTURED +NURTURER +NURTURERS +NURTURES +NURTURING +NUS +NUT +NUTANT +NUTATE +NUTATED +NUTATES +NUTATING +NUTATION +NUTATIONAL +NUTATIONS +NUTBROWN +NUTCASE +NUTCASES +NUTCRACKER +NUTCRACKERS +NUTGALL +NUTGALLS +NUTGRASS +NUTGRASSES +NUTHATCH +NUTHATCHES +NUTHOUSE +NUTHOUSES +NUTLET +NUTLETS +NUTLIKE +NUTMEAT +NUTMEATS +NUTMEG +NUTMEGS +NUTPICK +NUTPICKS +NUTRACEUTICAL +NUTRACEUTICALS +NUTRIA +NUTRIAS +NUTRIENT +NUTRIENTS +NUTRIMENT +NUTRIMENTS +NUTRITION +NUTRITIONAL +NUTRITIONALLY +NUTRITIONIST +NUTRITIONISTS +NUTRITIONS +NUTRITIOUS +NUTRITIOUSLY +NUTRITIOUSNESS +NUTRITIVE +NUTRITIVELY +NUTRITIVES +NUTS +NUTSEDGE +NUTSEDGES +NUTSHELL +NUTSHELLS +NUTSIER +NUTSIEST +NUTSY +NUTTED +NUTTER +NUTTERS +NUTTIER +NUTTIEST +NUTTILY +NUTTINESS +NUTTINESSES +NUTTING +NUTTINGS +NUTTY +NUTWOOD +NUTWOODS +NUZZLE +NUZZLED +NUZZLER +NUZZLERS +NUZZLES +NUZZLING +NYALA +NYALAS +NYCTALOPIA +NYCTALOPIAS +NYLGHAI +NYLGHAIS +NYLGHAU +NYLGHAUS +NYLON +NYLONS +NYMPH +NYMPHA +NYMPHAE +NYMPHAL +NYMPHALID +NYMPHALIDS +NYMPHEAN +NYMPHET +NYMPHETIC +NYMPHETS +NYMPHETTE +NYMPHETTES +NYMPHO +NYMPHOLEPSIES +NYMPHOLEPSY +NYMPHOLEPT +NYMPHOLEPTIC +NYMPHOLEPTS +NYMPHOMANIA +NYMPHOMANIAC +NYMPHOMANIACAL +NYMPHOMANIACS +NYMPHOMANIAS +NYMPHOS +NYMPHS +NYSTAGMIC +NYSTAGMUS +NYSTAGMUSES +NYSTATIN +NYSTATINS +OAF +OAFISH +OAFISHLY +OAFISHNESS +OAFISHNESSES +OAFS +OAK +OAKEN +OAKIER +OAKIEST +OAKLIKE +OAKMOSS +OAKMOSSES +OAKS +OAKUM +OAKUMS +OAKY +OAR +OARED +OARFISH +OARFISHES +OARING +OARLESS +OARLIKE +OARLOCK +OARLOCKS +OARS +OARSMAN +OARSMANSHIP +OARSMANSHIPS +OARSMEN +OARSWOMAN +OARSWOMEN +OASES +OASIS +OAST +OASTHOUSE +OASTHOUSES +OASTS +OAT +OATCAKE +OATCAKES +OATEN +OATER +OATERS +OATH +OATHS +OATLIKE +OATMEAL +OATMEALS +OATS +OAVES +OBA +OBAS +OBBLIGATI +OBBLIGATO +OBBLIGATOS +OBCONIC +OBCONICAL +OBCORDATE +OBDURACIES +OBDURACY +OBDURATE +OBDURATELY +OBDURATENESS +OBDURATENESSES +OBE +OBEAH +OBEAHISM +OBEAHISMS +OBEAHS +OBEDIENCE +OBEDIENCES +OBEDIENT +OBEDIENTLY +OBEISANCE +OBEISANCES +OBEISANT +OBEISANTLY +OBELI +OBELIA +OBELIAS +OBELISCAL +OBELISE +OBELISED +OBELISES +OBELISING +OBELISK +OBELISKS +OBELISM +OBELISMS +OBELIZE +OBELIZED +OBELIZES +OBELIZING +OBELUS +OBENTO +OBENTOS +OBES +OBESE +OBESELY +OBESENESS +OBESENESSES +OBESITIES +OBESITY +OBEY +OBEYABLE +OBEYED +OBEYER +OBEYERS +OBEYING +OBEYS +OBFUSCATE +OBFUSCATED +OBFUSCATES +OBFUSCATING +OBFUSCATION +OBFUSCATIONS +OBFUSCATORY +OBI +OBIA +OBIAS +OBIISM +OBIISMS +OBIS +OBIT +OBITS +OBITUARIES +OBITUARIST +OBITUARISTS +OBITUARY +OBJECT +OBJECTED +OBJECTIFICATION +OBJECTIFIED +OBJECTIFIES +OBJECTIFY +OBJECTIFYING +OBJECTING +OBJECTION +OBJECTIONABLE +OBJECTIONABLY +OBJECTIONS +OBJECTIVE +OBJECTIVELY +OBJECTIVENESS +OBJECTIVENESSES +OBJECTIVES +OBJECTIVISM +OBJECTIVISMS +OBJECTIVIST +OBJECTIVISTIC +OBJECTIVISTS +OBJECTIVITIES +OBJECTIVITY +OBJECTLESS +OBJECTLESSNESS +OBJECTOR +OBJECTORS +OBJECTS +OBJET +OBJETS +OBJURGATE +OBJURGATED +OBJURGATES +OBJURGATING +OBJURGATION +OBJURGATIONS +OBJURGATORY +OBLANCEOLATE +OBLAST +OBLASTI +OBLASTS +OBLATE +OBLATELY +OBLATENESS +OBLATENESSES +OBLATES +OBLATION +OBLATIONS +OBLATORY +OBLIGABLE +OBLIGATE +OBLIGATED +OBLIGATELY +OBLIGATES +OBLIGATI +OBLIGATING +OBLIGATION +OBLIGATIONS +OBLIGATO +OBLIGATOR +OBLIGATORILY +OBLIGATORS +OBLIGATORY +OBLIGATOS +OBLIGE +OBLIGED +OBLIGEE +OBLIGEES +OBLIGER +OBLIGERS +OBLIGES +OBLIGING +OBLIGINGLY +OBLIGINGNESS +OBLIGINGNESSES +OBLIGOR +OBLIGORS +OBLIQUE +OBLIQUED +OBLIQUELY +OBLIQUENESS +OBLIQUENESSES +OBLIQUES +OBLIQUING +OBLIQUITIES +OBLIQUITY +OBLITERATE +OBLITERATED +OBLITERATES +OBLITERATING +OBLITERATION +OBLITERATIONS +OBLITERATIVE +OBLITERATOR +OBLITERATORS +OBLIVION +OBLIVIONS +OBLIVIOUS +OBLIVIOUSLY +OBLIVIOUSNESS +OBLIVIOUSNESSES +OBLONG +OBLONGLY +OBLONGS +OBLOQUIAL +OBLOQUIES +OBLOQUY +OBNOXIOUS +OBNOXIOUSLY +OBNOXIOUSNESS +OBNOXIOUSNESSES +OBNUBILATE +OBNUBILATED +OBNUBILATES +OBNUBILATING +OBNUBILATION +OBNUBILATIONS +OBOE +OBOES +OBOIST +OBOISTS +OBOL +OBOLE +OBOLES +OBOLI +OBOLS +OBOLUS +OBOVATE +OBOVOID +OBSCENE +OBSCENELY +OBSCENER +OBSCENEST +OBSCENITIES +OBSCENITY +OBSCURANT +OBSCURANTIC +OBSCURANTISM +OBSCURANTISMS +OBSCURANTIST +OBSCURANTISTS +OBSCURANTS +OBSCURATION +OBSCURATIONS +OBSCURE +OBSCURED +OBSCURELY +OBSCURENESS +OBSCURENESSES +OBSCURER +OBSCURES +OBSCUREST +OBSCURING +OBSCURITIES +OBSCURITY +OBSECRATE +OBSECRATED +OBSECRATES +OBSECRATING +OBSEQUIES +OBSEQUIOUS +OBSEQUIOUSLY +OBSEQUIOUSNESS +OBSEQUY +OBSERVABILITIES +OBSERVABILITY +OBSERVABLE +OBSERVABLES +OBSERVABLY +OBSERVANCE +OBSERVANCES +OBSERVANT +OBSERVANTLY +OBSERVANTS +OBSERVATION +OBSERVATIONAL +OBSERVATIONALLY +OBSERVATIONS +OBSERVATORIES +OBSERVATORY +OBSERVE +OBSERVED +OBSERVER +OBSERVERS +OBSERVES +OBSERVING +OBSERVINGLY +OBSESS +OBSESSED +OBSESSES +OBSESSING +OBSESSION +OBSESSIONAL +OBSESSIONALLY +OBSESSIONS +OBSESSIVE +OBSESSIVELY +OBSESSIVENESS +OBSESSIVENESSES +OBSESSIVES +OBSESSOR +OBSESSORS +OBSIDIAN +OBSIDIANS +OBSOLESCE +OBSOLESCED +OBSOLESCENCE +OBSOLESCENCES +OBSOLESCENT +OBSOLESCENTLY +OBSOLESCES +OBSOLESCING +OBSOLETE +OBSOLETED +OBSOLETELY +OBSOLETENESS +OBSOLETENESSES +OBSOLETES +OBSOLETING +OBSTACLE +OBSTACLES +OBSTETRIC +OBSTETRICAL +OBSTETRICALLY +OBSTETRICIAN +OBSTETRICIANS +OBSTETRICS +OBSTINACIES +OBSTINACY +OBSTINATE +OBSTINATELY +OBSTINATENESS +OBSTINATENESSES +OBSTREPEROUS +OBSTREPEROUSLY +OBSTRUCT +OBSTRUCTED +OBSTRUCTING +OBSTRUCTION +OBSTRUCTIONISM +OBSTRUCTIONISMS +OBSTRUCTIONIST +OBSTRUCTIONISTS +OBSTRUCTIONS +OBSTRUCTIVE +OBSTRUCTIVENESS +OBSTRUCTIVES +OBSTRUCTOR +OBSTRUCTORS +OBSTRUCTS +OBSTRUENT +OBSTRUENTS +OBTAIN +OBTAINABILITIES +OBTAINABILITY +OBTAINABLE +OBTAINED +OBTAINER +OBTAINERS +OBTAINING +OBTAINMENT +OBTAINMENTS +OBTAINS +OBTECT +OBTECTED +OBTEST +OBTESTED +OBTESTING +OBTESTS +OBTRUDE +OBTRUDED +OBTRUDER +OBTRUDERS +OBTRUDES +OBTRUDING +OBTRUSION +OBTRUSIONS +OBTRUSIVE +OBTRUSIVELY +OBTRUSIVENESS +OBTRUSIVENESSES +OBTUND +OBTUNDED +OBTUNDENT +OBTUNDENTS +OBTUNDING +OBTUNDITIES +OBTUNDITY +OBTUNDS +OBTURATE +OBTURATED +OBTURATES +OBTURATING +OBTURATION +OBTURATIONS +OBTURATOR +OBTURATORS +OBTUSE +OBTUSELY +OBTUSENESS +OBTUSENESSES +OBTUSER +OBTUSEST +OBTUSITIES +OBTUSITY +OBVERSE +OBVERSELY +OBVERSES +OBVERSION +OBVERSIONS +OBVERT +OBVERTED +OBVERTING +OBVERTS +OBVIABLE +OBVIATE +OBVIATED +OBVIATES +OBVIATING +OBVIATION +OBVIATIONS +OBVIATOR +OBVIATORS +OBVIOUS +OBVIOUSLY +OBVIOUSNESS +OBVIOUSNESSES +OBVOLUTE +OCA +OCARINA +OCARINAS +OCAS +OCCASION +OCCASIONAL +OCCASIONALLY +OCCASIONED +OCCASIONING +OCCASIONS +OCCIDENT +OCCIDENTAL +OCCIDENTALIZE +OCCIDENTALIZED +OCCIDENTALIZES +OCCIDENTALIZING +OCCIDENTALLY +OCCIDENTS +OCCIPITA +OCCIPITAL +OCCIPITALLY +OCCIPITALS +OCCIPUT +OCCIPUTS +OCCLUDE +OCCLUDED +OCCLUDENT +OCCLUDES +OCCLUDING +OCCLUSAL +OCCLUSION +OCCLUSIONS +OCCLUSIVE +OCCLUSIVES +OCCULT +OCCULTATION +OCCULTATIONS +OCCULTED +OCCULTER +OCCULTERS +OCCULTING +OCCULTISM +OCCULTISMS +OCCULTIST +OCCULTISTS +OCCULTLY +OCCULTS +OCCUPANCIES +OCCUPANCY +OCCUPANT +OCCUPANTS +OCCUPATION +OCCUPATIONAL +OCCUPATIONALLY +OCCUPATIONS +OCCUPIED +OCCUPIER +OCCUPIERS +OCCUPIES +OCCUPY +OCCUPYING +OCCUR +OCCURRED +OCCURRENCE +OCCURRENCES +OCCURRENT +OCCURRENTS +OCCURRING +OCCURS +OCEAN +OCEANARIA +OCEANARIUM +OCEANARIUMS +OCEANAUT +OCEANAUTS +OCEANFRONT +OCEANFRONTS +OCEANGOING +OCEANIC +OCEANOGRAPHER +OCEANOGRAPHERS +OCEANOGRAPHIC +OCEANOGRAPHICAL +OCEANOGRAPHIES +OCEANOGRAPHY +OCEANOLOGIES +OCEANOLOGIST +OCEANOLOGISTS +OCEANOLOGY +OCEANS +OCELLAR +OCELLATE +OCELLATED +OCELLI +OCELLUS +OCELOID +OCELOT +OCELOTS +OCHER +OCHERED +OCHERING +OCHEROUS +OCHERS +OCHERY +OCHLOCRACIES +OCHLOCRACY +OCHLOCRAT +OCHLOCRATIC +OCHLOCRATICAL +OCHLOCRATS +OCHONE +OCHRE +OCHREA +OCHREAE +OCHRED +OCHREOUS +OCHRES +OCHRING +OCHROID +OCHROUS +OCHRY +OCICAT +OCICATS +OCKER +OCKERS +OCOTILLO +OCOTILLOS +OCREA +OCREAE +OCREATE +OCTACHORD +OCTACHORDS +OCTAD +OCTADIC +OCTADS +OCTAGON +OCTAGONAL +OCTAGONALLY +OCTAGONS +OCTAHEDRA +OCTAHEDRAL +OCTAHEDRALLY +OCTAHEDRON +OCTAHEDRONS +OCTAL +OCTAMETER +OCTAMETERS +OCTAN +OCTANE +OCTANES +OCTANGLE +OCTANGLES +OCTANOL +OCTANOLS +OCTANS +OCTANT +OCTANTAL +OCTANTS +OCTAPEPTIDE +OCTAPEPTIDES +OCTARCHIES +OCTARCHY +OCTAVAL +OCTAVE +OCTAVES +OCTAVO +OCTAVOS +OCTENNIAL +OCTET +OCTETS +OCTETTE +OCTETTES +OCTILLION +OCTILLIONS +OCTODECILLION +OCTODECILLIONS +OCTOGENARIAN +OCTOGENARIANS +OCTONARIES +OCTONARY +OCTOPI +OCTOPLOID +OCTOPLOIDS +OCTOPOD +OCTOPODAN +OCTOPODANS +OCTOPODES +OCTOPODS +OCTOPUS +OCTOPUSES +OCTOROON +OCTOROONS +OCTOSYLLABIC +OCTOSYLLABICS +OCTOSYLLABLE +OCTOSYLLABLES +OCTOTHORP +OCTOTHORPS +OCTROI +OCTROIS +OCTUPLE +OCTUPLED +OCTUPLES +OCTUPLET +OCTUPLETS +OCTUPLEX +OCTUPLING +OCTUPLY +OCTYL +OCTYLS +OCULAR +OCULARIST +OCULARISTS +OCULARLY +OCULARS +OCULI +OCULIST +OCULISTS +OCULOMOTOR +OCULUS +OD +ODA +ODAH +ODAHS +ODALISK +ODALISKS +ODALISQUE +ODALISQUES +ODAS +ODD +ODDBALL +ODDBALLS +ODDER +ODDEST +ODDISH +ODDITIES +ODDITY +ODDLY +ODDMENT +ODDMENTS +ODDNESS +ODDNESSES +ODDS +ODDSMAKER +ODDSMAKERS +ODE +ODEA +ODEON +ODEONS +ODES +ODEUM +ODEUMS +ODIC +ODIFEROUS +ODIOUS +ODIOUSLY +ODIOUSNESS +ODIOUSNESSES +ODIST +ODISTS +ODIUM +ODIUMS +ODOGRAPH +ODOGRAPHS +ODOMETER +ODOMETERS +ODOMETRIES +ODOMETRY +ODONATE +ODONATES +ODONTOBLAST +ODONTOBLASTIC +ODONTOBLASTS +ODONTOGLOSSUM +ODONTOGLOSSUMS +ODONTOID +ODONTOIDS +ODOR +ODORANT +ODORANTS +ODORED +ODORFUL +ODORIFEROUS +ODORIFEROUSLY +ODORIFEROUSNESS +ODORIZE +ODORIZED +ODORIZES +ODORIZING +ODORLESS +ODOROUS +ODOROUSLY +ODOROUSNESS +ODOROUSNESSES +ODORS +ODOUR +ODOURFUL +ODOURS +ODS +ODYL +ODYLE +ODYLES +ODYLS +ODYSSEY +ODYSSEYS +OE +OECOLOGIES +OECOLOGY +OECUMENICAL +OEDEMA +OEDEMAS +OEDEMATA +OEDIPAL +OEDIPALLY +OEDIPEAN +OEILLADE +OEILLADES +OENOLOGIES +OENOLOGY +OENOMEL +OENOMELS +OENOPHILE +OENOPHILES +OERSTED +OERSTEDS +OES +OESOPHAGI +OESOPHAGUS +OESTRIN +OESTRINS +OESTRIOL +OESTRIOLS +OESTROGEN +OESTROGENS +OESTRONE +OESTRONES +OESTROUS +OESTRUM +OESTRUMS +OESTRUS +OESTRUSES +OEUVRE +OEUVRES +OF +OFAY +OFAYS +OFF +OFFAL +OFFALS +OFFBEAT +OFFBEATS +OFFCAST +OFFCASTS +OFFCUT +OFFCUTS +OFFED +OFFENCE +OFFENCES +OFFEND +OFFENDED +OFFENDER +OFFENDERS +OFFENDING +OFFENDS +OFFENSE +OFFENSELESS +OFFENSES +OFFENSIVE +OFFENSIVELY +OFFENSIVENESS +OFFENSIVENESSES +OFFENSIVES +OFFER +OFFERED +OFFERER +OFFERERS +OFFERING +OFFERINGS +OFFEROR +OFFERORS +OFFERS +OFFERTORIES +OFFERTORY +OFFHAND +OFFHANDED +OFFHANDEDLY +OFFHANDEDNESS +OFFHANDEDNESSES +OFFICE +OFFICEHOLDER +OFFICEHOLDERS +OFFICER +OFFICERED +OFFICERING +OFFICERS +OFFICES +OFFICIAL +OFFICIALDOM +OFFICIALDOMS +OFFICIALESE +OFFICIALESES +OFFICIALISM +OFFICIALISMS +OFFICIALLY +OFFICIALS +OFFICIANT +OFFICIANTS +OFFICIARIES +OFFICIARY +OFFICIATE +OFFICIATED +OFFICIATES +OFFICIATING +OFFICIATION +OFFICIATIONS +OFFICINAL +OFFICINALS +OFFICIOUS +OFFICIOUSLY +OFFICIOUSNESS +OFFICIOUSNESSES +OFFING +OFFINGS +OFFISH +OFFISHLY +OFFISHNESS +OFFISHNESSES +OFFKEY +OFFLINE +OFFLOAD +OFFLOADED +OFFLOADING +OFFLOADS +OFFPRINT +OFFPRINTED +OFFPRINTING +OFFPRINTS +OFFRAMP +OFFRAMPS +OFFS +OFFSCOURING +OFFSCOURINGS +OFFSCREEN +OFFSET +OFFSETS +OFFSETTING +OFFSHOOT +OFFSHOOTS +OFFSHORE +OFFSHORES +OFFSIDE +OFFSIDES +OFFSPRING +OFFSPRINGS +OFFSTAGE +OFFSTAGES +OFFTRACK +OFT +OFTEN +OFTENER +OFTENEST +OFTENTIMES +OFTER +OFTEST +OFTTIMES +OGAM +OGAMS +OGDOAD +OGDOADS +OGEE +OGEES +OGHAM +OGHAMIC +OGHAMIST +OGHAMISTS +OGHAMS +OGIVAL +OGIVE +OGIVES +OGLE +OGLED +OGLER +OGLERS +OGLES +OGLING +OGRE +OGREISH +OGREISHLY +OGREISM +OGREISMS +OGRES +OGRESS +OGRESSES +OGRISH +OGRISHLY +OGRISM +OGRISMS +OH +OHED +OHIA +OHIAS +OHING +OHM +OHMAGE +OHMAGES +OHMIC +OHMICALLY +OHMMETER +OHMMETERS +OHMS +OHO +OHS +OI +OIDIA +OIDIOID +OIDIUM +OIL +OILBIRD +OILBIRDS +OILCAMP +OILCAMPS +OILCAN +OILCANS +OILCLOTH +OILCLOTHS +OILCUP +OILCUPS +OILED +OILER +OILERS +OILHOLE +OILHOLES +OILIER +OILIEST +OILILY +OILINESS +OILINESSES +OILING +OILMAN +OILMEN +OILPAPER +OILPAPERS +OILPROOF +OILS +OILSEED +OILSEEDS +OILSKIN +OILSKINS +OILSTONE +OILSTONES +OILTIGHT +OILWAY +OILWAYS +OILY +OINK +OINKED +OINKING +OINKS +OINOLOGIES +OINOLOGY +OINOMEL +OINOMELS +OINTMENT +OINTMENTS +OITICICA +OITICICAS +OKA +OKAPI +OKAPIS +OKAS +OKAY +OKAYED +OKAYING +OKAYS +OKE +OKEH +OKEHS +OKES +OKEYDOKE +OKEYDOKEY +OKRA +OKRAS +OLD +OLDEN +OLDER +OLDEST +OLDFANGLED +OLDIE +OLDIES +OLDISH +OLDNESS +OLDNESSES +OLDS +OLDSQUAW +OLDSQUAWS +OLDSTER +OLDSTERS +OLDSTYLE +OLDSTYLES +OLDWIFE +OLDWIVES +OLDY +OLE +OLEA +OLEAGINOUS +OLEAGINOUSLY +OLEAGINOUSNESS +OLEANDER +OLEANDERS +OLEANDOMYCIN +OLEANDOMYCINS +OLEASTER +OLEASTERS +OLEATE +OLEATES +OLECRANAL +OLECRANON +OLECRANONS +OLEFIN +OLEFINE +OLEFINES +OLEFINIC +OLEFINS +OLEIC +OLEIN +OLEINE +OLEINES +OLEINS +OLEO +OLEOGRAPH +OLEOGRAPHS +OLEOMARGARINE +OLEOMARGARINES +OLEORESIN +OLEORESINOUS +OLEORESINS +OLEOS +OLES +OLESTRA +OLESTRAS +OLEUM +OLEUMS +OLFACTION +OLFACTIONS +OLFACTIVE +OLFACTOMETER +OLFACTOMETERS +OLFACTORIES +OLFACTORY +OLIBANUM +OLIBANUMS +OLICOOK +OLICOOKS +OLIGARCH +OLIGARCHIC +OLIGARCHICAL +OLIGARCHIES +OLIGARCHS +OLIGARCHY +OLIGOCENE +OLIGOCHAETE +OLIGOCHAETES +OLIGOCLASE +OLIGOCLASES +OLIGODENDROCYTE +OLIGODENDROGLIA +OLIGOGENE +OLIGOGENES +OLIGOMER +OLIGOMERIC +OLIGOMERIZATION +OLIGOMERS +OLIGONUCLEOTIDE +OLIGOPHAGIES +OLIGOPHAGOUS +OLIGOPHAGY +OLIGOPOLIES +OLIGOPOLISTIC +OLIGOPOLY +OLIGOPSONIES +OLIGOPSONISTIC +OLIGOPSONY +OLIGOSACCHARIDE +OLIGOTROPHIC +OLIGURIA +OLIGURIAS +OLINGO +OLINGOS +OLIO +OLIOS +OLIVACEOUS +OLIVARY +OLIVE +OLIVENITE +OLIVENITES +OLIVES +OLIVINE +OLIVINES +OLIVINIC +OLIVINITIC +OLLA +OLLAS +OLOGIES +OLOGIST +OLOGISTS +OLOGY +OLOLIUQUI +OLOLIUQUIS +OLOROSO +OLOROSOS +OLYMPIAD +OLYMPIADS +OM +OMASA +OMASUM +OMBER +OMBERS +OMBRE +OMBRES +OMBUDSMAN +OMBUDSMANSHIP +OMBUDSMANSHIPS +OMBUDSMEN +OMEGA +OMEGAS +OMELET +OMELETS +OMELETTE +OMELETTES +OMEN +OMENED +OMENING +OMENS +OMENTA +OMENTAL +OMENTUM +OMENTUMS +OMER +OMERS +OMICRON +OMICRONS +OMIKRON +OMIKRONS +OMINOUS +OMINOUSLY +OMINOUSNESS +OMINOUSNESSES +OMISSIBLE +OMISSION +OMISSIONS +OMISSIVE +OMIT +OMITS +OMITTED +OMITTER +OMITTERS +OMITTING +OMMATIDIA +OMMATIDIAL +OMMATIDIUM +OMNIARCH +OMNIARCHS +OMNIBUS +OMNIBUSES +OMNIBUSSES +OMNICOMPETENCE +OMNICOMPETENCES +OMNICOMPETENT +OMNIDIRECTIONAL +OMNIFARIOUS +OMNIFIC +OMNIFICENT +OMNIFORM +OMNIMODE +OMNIPOTENCE +OMNIPOTENCES +OMNIPOTENT +OMNIPOTENTLY +OMNIPOTENTS +OMNIPRESENCE +OMNIPRESENCES +OMNIPRESENT +OMNIRANGE +OMNIRANGES +OMNISCIENCE +OMNISCIENCES +OMNISCIENT +OMNISCIENTLY +OMNIVORA +OMNIVORE +OMNIVORES +OMNIVOROUS +OMNIVOROUSLY +OMOPHAGIA +OMOPHAGIAS +OMOPHAGIC +OMOPHAGIES +OMOPHAGY +OMPHALI +OMPHALOS +OMPHALOSKEPSES +OMPHALOSKEPSIS +OMS +ON +ONAGER +ONAGERS +ONAGRI +ONANISM +ONANISMS +ONANIST +ONANISTIC +ONANISTS +ONBOARD +ONCE +ONCET +ONCHOCERCIASES +ONCHOCERCIASIS +ONCIDIUM +ONCIDIUMS +ONCOGENE +ONCOGENES +ONCOGENESES +ONCOGENESIS +ONCOGENIC +ONCOGENICITIES +ONCOGENICITY +ONCOLOGIC +ONCOLOGICAL +ONCOLOGIES +ONCOLOGIST +ONCOLOGISTS +ONCOLOGY +ONCOMING +ONCOMINGS +ONCORNAVIRUS +ONCORNAVIRUSES +ONCOVIRUS +ONCOVIRUSES +ONDOGRAM +ONDOGRAMS +ONE +ONEFOLD +ONEIRIC +ONEIRICALLY +ONEIROMANCIES +ONEIROMANCY +ONENESS +ONENESSES +ONERIER +ONERIEST +ONEROUS +ONEROUSLY +ONEROUSNESS +ONEROUSNESSES +ONERY +ONES +ONESELF +ONETIME +ONGOING +ONGOINGNESS +ONGOINGNESSES +ONION +ONIONS +ONIONSKIN +ONIONSKINS +ONIONY +ONIUM +ONLAY +ONLAYS +ONLINE +ONLOAD +ONLOADED +ONLOADING +ONLOADS +ONLOOKER +ONLOOKERS +ONLOOKING +ONLY +ONO +ONOMASTIC +ONOMASTICALLY +ONOMASTICIAN +ONOMASTICIANS +ONOMASTICS +ONOMATOLOGIES +ONOMATOLOGIST +ONOMATOLOGISTS +ONOMATOLOGY +ONOMATOPOEIA +ONOMATOPOEIAS +ONOMATOPOEIC +ONOMATOPOETIC +ONOS +ONRUSH +ONRUSHES +ONRUSHING +ONS +ONSCREEN +ONSET +ONSETS +ONSHORE +ONSIDE +ONSLAUGHT +ONSLAUGHTS +ONSTAGE +ONSTREAM +ONTIC +ONTICALLY +ONTO +ONTOGENESES +ONTOGENESIS +ONTOGENETIC +ONTOGENETICALLY +ONTOGENIC +ONTOGENIES +ONTOGENY +ONTOLOGIC +ONTOLOGICAL +ONTOLOGICALLY +ONTOLOGIES +ONTOLOGIST +ONTOLOGISTS +ONTOLOGY +ONUS +ONUSES +ONWARD +ONWARDS +ONYCHOPHORAN +ONYCHOPHORANS +ONYX +ONYXES +OOCYST +OOCYSTS +OOCYTE +OOCYTES +OODLES +OODLINS +OOGAMETE +OOGAMETES +OOGAMIES +OOGAMOUS +OOGAMY +OOGENESES +OOGENESIS +OOGENETIC +OOGENIES +OOGENY +OOGONIA +OOGONIAL +OOGONIUM +OOGONIUMS +OOH +OOHED +OOHING +OOHS +OOLACHAN +OOLACHANS +OOLITE +OOLITES +OOLITH +OOLITHS +OOLITIC +OOLOGIC +OOLOGICAL +OOLOGIES +OOLOGIST +OOLOGISTS +OOLOGY +OOLONG +OOLONGS +OOMIAC +OOMIACK +OOMIACKS +OOMIACS +OOMIAK +OOMIAKS +OOMPAH +OOMPAHED +OOMPAHING +OOMPAHS +OOMPH +OOMPHS +OOPHORECTOMIES +OOPHORECTOMY +OOPHYTE +OOPHYTES +OOPHYTIC +OOPS +OORALI +OORALIS +OORIE +OOSPERM +OOSPERMS +OOSPHERE +OOSPHERES +OOSPORE +OOSPORES +OOSPORIC +OOT +OOTHECA +OOTHECAE +OOTHECAL +OOTID +OOTIDS +OOTS +OOZE +OOZED +OOZES +OOZIER +OOZIEST +OOZILY +OOZINESS +OOZINESSES +OOZING +OOZY +OP +OPACIFIED +OPACIFIER +OPACIFIERS +OPACIFIES +OPACIFY +OPACIFYING +OPACITIES +OPACITY +OPAH +OPAHS +OPAL +OPALESCE +OPALESCED +OPALESCENCE +OPALESCENCES +OPALESCENT +OPALESCENTLY +OPALESCES +OPALESCING +OPALINE +OPALINES +OPALS +OPAQUE +OPAQUED +OPAQUELY +OPAQUENESS +OPAQUENESSES +OPAQUER +OPAQUES +OPAQUEST +OPAQUING +OPE +OPED +OPEN +OPENABILITIES +OPENABILITY +OPENABLE +OPENCAST +OPENED +OPENER +OPENERS +OPENEST +OPENHANDED +OPENHANDEDLY +OPENHANDEDNESS +OPENHEARTED +OPENHEARTEDLY +OPENHEARTEDNESS +OPENING +OPENINGS +OPENLY +OPENMOUTHED +OPENMOUTHEDLY +OPENMOUTHEDNESS +OPENNESS +OPENNESSES +OPENS +OPENWORK +OPENWORKS +OPERA +OPERABILITIES +OPERABILITY +OPERABLE +OPERABLY +OPERAGOER +OPERAGOERS +OPERAGOING +OPERAGOINGS +OPERAND +OPERANDS +OPERANT +OPERANTLY +OPERANTS +OPERAS +OPERATE +OPERATED +OPERATES +OPERATIC +OPERATICALLY +OPERATICS +OPERATING +OPERATION +OPERATIONAL +OPERATIONALISM +OPERATIONALISMS +OPERATIONALIST +OPERATIONALISTS +OPERATIONALLY +OPERATIONISM +OPERATIONISMS +OPERATIONIST +OPERATIONISTS +OPERATIONS +OPERATIVE +OPERATIVELY +OPERATIVENESS +OPERATIVENESSES +OPERATIVES +OPERATOR +OPERATORLESS +OPERATORS +OPERCELE +OPERCELES +OPERCULA +OPERCULAR +OPERCULARS +OPERCULATE +OPERCULATED +OPERCULE +OPERCULES +OPERCULUM +OPERCULUMS +OPERETTA +OPERETTAS +OPERETTIST +OPERETTISTS +OPERON +OPERONS +OPEROSE +OPEROSELY +OPEROSENESS +OPEROSENESSES +OPES +OPHIDIAN +OPHIDIANS +OPHIOLITE +OPHIOLITES +OPHIOLOGIES +OPHIOLOGY +OPHITE +OPHITES +OPHITIC +OPHIUROID +OPHIUROIDS +OPHTHALMIA +OPHTHALMIAS +OPHTHALMIC +OPHTHALMOLOGIC +OPHTHALMOLOGIES +OPHTHALMOLOGIST +OPHTHALMOLOGY +OPHTHALMOSCOPE +OPHTHALMOSCOPES +OPHTHALMOSCOPIC +OPHTHALMOSCOPY +OPIATE +OPIATED +OPIATES +OPIATING +OPINE +OPINED +OPINES +OPING +OPINING +OPINION +OPINIONATED +OPINIONATEDLY +OPINIONATEDNESS +OPINIONATIVE +OPINIONATIVELY +OPINIONED +OPINIONS +OPIOID +OPIOIDS +OPISTHOBRANCH +OPISTHOBRANCHS +OPIUM +OPIUMISM +OPIUMISMS +OPIUMS +OPOSSUM +OPOSSUMS +OPPIDAN +OPPIDANS +OPPILANT +OPPILATE +OPPILATED +OPPILATES +OPPILATING +OPPONENCIES +OPPONENCY +OPPONENT +OPPONENTS +OPPORTUNE +OPPORTUNELY +OPPORTUNENESS +OPPORTUNENESSES +OPPORTUNISM +OPPORTUNISMS +OPPORTUNIST +OPPORTUNISTIC +OPPORTUNISTS +OPPORTUNITIES +OPPORTUNITY +OPPOSABILITIES +OPPOSABILITY +OPPOSABLE +OPPOSE +OPPOSED +OPPOSELESS +OPPOSER +OPPOSERS +OPPOSES +OPPOSING +OPPOSITE +OPPOSITELY +OPPOSITENESS +OPPOSITENESSES +OPPOSITES +OPPOSITION +OPPOSITIONAL +OPPOSITIONIST +OPPOSITIONISTS +OPPOSITIONS +OPPRESS +OPPRESSED +OPPRESSES +OPPRESSING +OPPRESSION +OPPRESSIONS +OPPRESSIVE +OPPRESSIVELY +OPPRESSIVENESS +OPPRESSOR +OPPRESSORS +OPPROBRIOUS +OPPROBRIOUSLY +OPPROBRIOUSNESS +OPPROBRIUM +OPPROBRIUMS +OPPUGN +OPPUGNANT +OPPUGNED +OPPUGNER +OPPUGNERS +OPPUGNING +OPPUGNS +OPS +OPSIN +OPSINS +OPSONIC +OPSONIFIED +OPSONIFIES +OPSONIFY +OPSONIFYING +OPSONIN +OPSONINS +OPSONIZE +OPSONIZED +OPSONIZES +OPSONIZING +OPT +OPTATIVE +OPTATIVELY +OPTATIVES +OPTED +OPTIC +OPTICAL +OPTICALLY +OPTICIAN +OPTICIANS +OPTICIST +OPTICISTS +OPTICS +OPTIMA +OPTIMAL +OPTIMALITIES +OPTIMALITY +OPTIMALLY +OPTIME +OPTIMES +OPTIMISATION +OPTIMISATIONS +OPTIMISE +OPTIMISED +OPTIMISES +OPTIMISING +OPTIMISM +OPTIMISMS +OPTIMIST +OPTIMISTIC +OPTIMISTICALLY +OPTIMISTS +OPTIMIZATION +OPTIMIZATIONS +OPTIMIZE +OPTIMIZED +OPTIMIZER +OPTIMIZERS +OPTIMIZES +OPTIMIZING +OPTIMUM +OPTIMUMS +OPTING +OPTION +OPTIONAL +OPTIONALITIES +OPTIONALITY +OPTIONALLY +OPTIONALS +OPTIONED +OPTIONEE +OPTIONEES +OPTIONING +OPTIONS +OPTOELECTRONIC +OPTOELECTRONICS +OPTOKINETIC +OPTOMETER +OPTOMETERS +OPTOMETRIC +OPTOMETRIES +OPTOMETRIST +OPTOMETRISTS +OPTOMETRY +OPTS +OPULENCE +OPULENCES +OPULENCIES +OPULENCY +OPULENT +OPULENTLY +OPUNTIA +OPUNTIAS +OPUS +OPUSCULA +OPUSCULAR +OPUSCULE +OPUSCULES +OPUSCULUM +OPUSES +OQUASSA +OQUASSAS +OR +ORA +ORACH +ORACHE +ORACHES +ORACLE +ORACLES +ORACULAR +ORACULARITIES +ORACULARITY +ORACULARLY +ORAD +ORAL +ORALISM +ORALISMS +ORALIST +ORALISTS +ORALITIES +ORALITY +ORALLY +ORALS +ORANG +ORANGE +ORANGEADE +ORANGEADES +ORANGERIE +ORANGERIES +ORANGERY +ORANGES +ORANGEWOOD +ORANGEWOODS +ORANGEY +ORANGIER +ORANGIEST +ORANGISH +ORANGS +ORANGUTAN +ORANGUTANS +ORANGY +ORATE +ORATED +ORATES +ORATING +ORATION +ORATIONS +ORATOR +ORATORICAL +ORATORICALLY +ORATORIES +ORATORIO +ORATORIOS +ORATORS +ORATORY +ORATRESS +ORATRESSES +ORATRICES +ORATRIX +ORB +ORBED +ORBICULAR +ORBICULARLY +ORBICULATE +ORBIER +ORBIEST +ORBING +ORBIT +ORBITAL +ORBITALS +ORBITED +ORBITER +ORBITERS +ORBITING +ORBITS +ORBLESS +ORBS +ORBY +ORC +ORCA +ORCAS +ORCEIN +ORCEINS +ORCHARD +ORCHARDIST +ORCHARDISTS +ORCHARDS +ORCHESTRA +ORCHESTRAL +ORCHESTRALLY +ORCHESTRAS +ORCHESTRATE +ORCHESTRATED +ORCHESTRATER +ORCHESTRATERS +ORCHESTRATES +ORCHESTRATING +ORCHESTRATION +ORCHESTRATIONAL +ORCHESTRATIONS +ORCHESTRATOR +ORCHESTRATORS +ORCHID +ORCHIDACEOUS +ORCHIDLIKE +ORCHIDS +ORCHIL +ORCHILS +ORCHIS +ORCHISES +ORCHITIC +ORCHITIS +ORCHITISES +ORCIN +ORCINOL +ORCINOLS +ORCINS +ORCS +ORDAIN +ORDAINED +ORDAINER +ORDAINERS +ORDAINING +ORDAINMENT +ORDAINMENTS +ORDAINS +ORDEAL +ORDEALS +ORDER +ORDERABLE +ORDERED +ORDERER +ORDERERS +ORDERING +ORDERLESS +ORDERLIES +ORDERLINESS +ORDERLINESSES +ORDERLY +ORDERS +ORDINAL +ORDINALLY +ORDINALS +ORDINANCE +ORDINANCES +ORDINAND +ORDINANDS +ORDINARIER +ORDINARIES +ORDINARIEST +ORDINARILY +ORDINARINESS +ORDINARINESSES +ORDINARY +ORDINATE +ORDINATES +ORDINATION +ORDINATIONS +ORDINES +ORDNANCE +ORDNANCES +ORDO +ORDONNANCE +ORDONNANCES +ORDOS +ORDURE +ORDURES +ORDUROUS +ORE +OREAD +OREADS +ORECTIC +ORECTIVE +OREGANO +OREGANOS +OREIDE +OREIDES +OREODONT +OREODONTS +ORES +ORFRAY +ORFRAYS +ORGAN +ORGANA +ORGANDIE +ORGANDIES +ORGANDY +ORGANELLE +ORGANELLES +ORGANIC +ORGANICALLY +ORGANICISM +ORGANICISMS +ORGANICIST +ORGANICISTS +ORGANICITIES +ORGANICITY +ORGANICS +ORGANISATION +ORGANISATIONS +ORGANISE +ORGANISED +ORGANISER +ORGANISERS +ORGANISES +ORGANISING +ORGANISM +ORGANISMAL +ORGANISMIC +ORGANISMICALLY +ORGANISMS +ORGANIST +ORGANISTS +ORGANIZABLE +ORGANIZATION +ORGANIZATIONAL +ORGANIZATIONS +ORGANIZE +ORGANIZED +ORGANIZER +ORGANIZERS +ORGANIZES +ORGANIZING +ORGANOCHLORINE +ORGANOCHLORINES +ORGANOGENESES +ORGANOGENESIS +ORGANOGENETIC +ORGANOLEPTIC +ORGANOLOGIES +ORGANOLOGY +ORGANOMERCURIAL +ORGANOMETALLIC +ORGANOMETALLICS +ORGANON +ORGANONS +ORGANOPHOSPHATE +ORGANOSOL +ORGANOSOLS +ORGANS +ORGANUM +ORGANUMS +ORGANZA +ORGANZAS +ORGANZINE +ORGANZINES +ORGASM +ORGASMED +ORGASMIC +ORGASMING +ORGASMS +ORGASTIC +ORGEAT +ORGEATS +ORGIAC +ORGIAST +ORGIASTIC +ORGIASTICALLY +ORGIASTS +ORGIC +ORGIES +ORGONE +ORGONES +ORGULOUS +ORGY +ORIBATID +ORIBATIDS +ORIBI +ORIBIS +ORIEL +ORIELS +ORIENT +ORIENTAL +ORIENTALISM +ORIENTALISMS +ORIENTALIST +ORIENTALISTS +ORIENTALIZE +ORIENTALIZED +ORIENTALIZES +ORIENTALIZING +ORIENTALLY +ORIENTALS +ORIENTATE +ORIENTATED +ORIENTATES +ORIENTATING +ORIENTATION +ORIENTATIONAL +ORIENTATIONALLY +ORIENTATIONS +ORIENTED +ORIENTEER +ORIENTEERING +ORIENTEERINGS +ORIENTEERS +ORIENTER +ORIENTERS +ORIENTING +ORIENTS +ORIFICE +ORIFICES +ORIFICIAL +ORIFLAMME +ORIFLAMMES +ORIGAMI +ORIGAMIS +ORIGAN +ORIGANS +ORIGANUM +ORIGANUMS +ORIGIN +ORIGINAL +ORIGINALITIES +ORIGINALITY +ORIGINALLY +ORIGINALS +ORIGINATE +ORIGINATED +ORIGINATES +ORIGINATING +ORIGINATION +ORIGINATIONS +ORIGINATIVE +ORIGINATIVELY +ORIGINATOR +ORIGINATORS +ORIGINS +ORINASAL +ORINASALS +ORIOLE +ORIOLES +ORISHA +ORISHAS +ORISMOLOGICAL +ORISMOLOGIES +ORISMOLOGY +ORISON +ORISONS +ORLE +ORLES +ORLON +ORLONS +ORLOP +ORLOPS +ORMER +ORMERS +ORMOLU +ORMOLUS +ORNAMENT +ORNAMENTAL +ORNAMENTALLY +ORNAMENTALS +ORNAMENTATION +ORNAMENTATIONS +ORNAMENTED +ORNAMENTING +ORNAMENTS +ORNATE +ORNATELY +ORNATENESS +ORNATENESSES +ORNERIER +ORNERIEST +ORNERINESS +ORNERINESSES +ORNERY +ORNIS +ORNITHES +ORNITHIC +ORNITHINE +ORNITHINES +ORNITHISCHIAN +ORNITHISCHIANS +ORNITHOID +ORNITHOLOGIC +ORNITHOLOGICAL +ORNITHOLOGIES +ORNITHOLOGIST +ORNITHOLOGISTS +ORNITHOLOGY +ORNITHOPOD +ORNITHOPODS +ORNITHOPTER +ORNITHOPTERS +ORNITHOSES +ORNITHOSIS +OROGENESES +OROGENESIS +OROGENETIC +OROGENIC +OROGENIES +OROGENY +OROGRAPHIC +OROGRAPHICAL +OROGRAPHIES +OROGRAPHY +OROIDE +OROIDES +OROLOGIES +OROLOGIST +OROLOGISTS +OROLOGY +OROMETER +OROMETERS +OROPHARYNGEAL +OROPHARYNGES +OROPHARYNX +OROPHARYNXES +OROTUND +OROTUNDITIES +OROTUNDITY +ORPHAN +ORPHANAGE +ORPHANAGES +ORPHANED +ORPHANHOOD +ORPHANHOODS +ORPHANING +ORPHANS +ORPHIC +ORPHICAL +ORPHICALLY +ORPHISM +ORPHISMS +ORPHREY +ORPHREYED +ORPHREYS +ORPIMENT +ORPIMENTS +ORPIN +ORPINE +ORPINES +ORPINS +ORRA +ORRERIES +ORRERY +ORRICE +ORRICES +ORRIS +ORRISES +ORRISROOT +ORRISROOTS +ORS +ORT +ORTHICON +ORTHICONS +ORTHO +ORTHOCENTER +ORTHOCENTERS +ORTHOCHROMATIC +ORTHOCLASE +ORTHOCLASES +ORTHODONTIA +ORTHODONTIAS +ORTHODONTIC +ORTHODONTICALLY +ORTHODONTICS +ORTHODONTIST +ORTHODONTISTS +ORTHODOX +ORTHODOXES +ORTHODOXIES +ORTHODOXLY +ORTHODOXY +ORTHOEPIC +ORTHOEPICALLY +ORTHOEPIES +ORTHOEPIST +ORTHOEPISTS +ORTHOEPY +ORTHOGENESES +ORTHOGENESIS +ORTHOGENETIC +ORTHOGONAL +ORTHOGONALITIES +ORTHOGONALITY +ORTHOGONALIZE +ORTHOGONALIZED +ORTHOGONALIZES +ORTHOGONALIZING +ORTHOGONALLY +ORTHOGRADE +ORTHOGRAPHIC +ORTHOGRAPHICAL +ORTHOGRAPHIES +ORTHOGRAPHY +ORTHOMOLECULAR +ORTHONORMAL +ORTHOPAEDIC +ORTHOPAEDICS +ORTHOPEDIC +ORTHOPEDICALLY +ORTHOPEDICS +ORTHOPEDIST +ORTHOPEDISTS +ORTHOPHOSPHATE +ORTHOPHOSPHATES +ORTHOPSYCHIATRY +ORTHOPTER +ORTHOPTERA +ORTHOPTERAN +ORTHOPTERANS +ORTHOPTERIST +ORTHOPTERISTS +ORTHOPTEROID +ORTHOPTEROIDS +ORTHOPTERS +ORTHOPTIC +ORTHORHOMBIC +ORTHOSCOPIC +ORTHOSES +ORTHOSIS +ORTHOSTATIC +ORTHOTIC +ORTHOTICS +ORTHOTIST +ORTHOTISTS +ORTHOTROPOUS +ORTOLAN +ORTOLANS +ORTS +ORYX +ORYXES +ORZO +ORZOS +OS +OSAR +OSCILLATE +OSCILLATED +OSCILLATES +OSCILLATING +OSCILLATION +OSCILLATIONAL +OSCILLATIONS +OSCILLATOR +OSCILLATORS +OSCILLATORY +OSCILLOGRAM +OSCILLOGRAMS +OSCILLOGRAPH +OSCILLOGRAPHIC +OSCILLOGRAPHIES +OSCILLOGRAPHS +OSCILLOGRAPHY +OSCILLOSCOPE +OSCILLOSCOPES +OSCILLOSCOPIC +OSCINE +OSCINES +OSCININE +OSCITANCE +OSCITANCES +OSCITANCIES +OSCITANCY +OSCITANT +OSCULA +OSCULANT +OSCULAR +OSCULATE +OSCULATED +OSCULATES +OSCULATING +OSCULATION +OSCULATIONS +OSCULATORY +OSCULE +OSCULES +OSCULUM +OSE +OSES +OSETRA +OSETRAS +OSIER +OSIERED +OSIERS +OSMATIC +OSMETERIA +OSMETERIUM +OSMIC +OSMICALLY +OSMICS +OSMIOUS +OSMIRIDIUM +OSMIRIDIUMS +OSMIUM +OSMIUMS +OSMOL +OSMOLAL +OSMOLALITIES +OSMOLALITY +OSMOLAR +OSMOLARITIES +OSMOLARITY +OSMOLE +OSMOLES +OSMOLS +OSMOMETER +OSMOMETERS +OSMOMETRIC +OSMOMETRIES +OSMOMETRY +OSMOREGULATION +OSMOREGULATIONS +OSMOREGULATORY +OSMOSE +OSMOSED +OSMOSES +OSMOSING +OSMOSIS +OSMOTIC +OSMOTICALLY +OSMOUS +OSMUND +OSMUNDA +OSMUNDAS +OSMUNDINE +OSMUNDINES +OSMUNDS +OSNABURG +OSNABURGS +OSPREY +OSPREYS +OSSA +OSSATURE +OSSATURES +OSSEIN +OSSEINS +OSSEOUS +OSSEOUSLY +OSSETRA +OSSETRAS +OSSIA +OSSICLE +OSSICLES +OSSICULAR +OSSIFIC +OSSIFICATION +OSSIFICATIONS +OSSIFIED +OSSIFIER +OSSIFIERS +OSSIFIES +OSSIFRAGE +OSSIFRAGES +OSSIFY +OSSIFYING +OSSUARIES +OSSUARY +OSTEAL +OSTEITIC +OSTEITIDES +OSTEITIS +OSTENSIBLE +OSTENSIBLY +OSTENSIVE +OSTENSIVELY +OSTENSORIA +OSTENSORIES +OSTENSORIUM +OSTENSORY +OSTENTATION +OSTENTATIONS +OSTENTATIOUS +OSTENTATIOUSLY +OSTEOARTHRITIC +OSTEOARTHRITIS +OSTEOBLAST +OSTEOBLASTIC +OSTEOBLASTS +OSTEOCLAST +OSTEOCLASTIC +OSTEOCLASTS +OSTEOCYTE +OSTEOCYTES +OSTEOGENESES +OSTEOGENESIS +OSTEOGENIC +OSTEOID +OSTEOIDS +OSTEOLOGICAL +OSTEOLOGIES +OSTEOLOGIST +OSTEOLOGISTS +OSTEOLOGY +OSTEOMA +OSTEOMALACIA +OSTEOMALACIAS +OSTEOMAS +OSTEOMATA +OSTEOMYELITIS +OSTEOMYELITISES +OSTEOPATH +OSTEOPATHIC +OSTEOPATHICALLY +OSTEOPATHIES +OSTEOPATHS +OSTEOPATHY +OSTEOPLASTIC +OSTEOPLASTIES +OSTEOPLASTY +OSTEOPOROSES +OSTEOPOROSIS +OSTEOPOROTIC +OSTEOSARCOMA +OSTEOSARCOMAS +OSTEOSARCOMATA +OSTEOSES +OSTEOSIS +OSTEOSISES +OSTEOTOME +OSTEOTOMES +OSTEOTOMIES +OSTEOTOMY +OSTIA +OSTIARIES +OSTIARY +OSTINATI +OSTINATO +OSTINATOS +OSTIOLAR +OSTIOLE +OSTIOLES +OSTIUM +OSTLER +OSTLERS +OSTMARK +OSTMARKS +OSTOMATE +OSTOMATES +OSTOMIES +OSTOMY +OSTOSES +OSTOSIS +OSTOSISES +OSTRACA +OSTRACISE +OSTRACISED +OSTRACISES +OSTRACISING +OSTRACISM +OSTRACISMS +OSTRACIZE +OSTRACIZED +OSTRACIZES +OSTRACIZING +OSTRACOD +OSTRACODE +OSTRACODERM +OSTRACODERMS +OSTRACODES +OSTRACODS +OSTRACON +OSTRAKA +OSTRAKON +OSTRICH +OSTRICHES +OSTRICHLIKE +OTALGIA +OTALGIAS +OTALGIC +OTALGIES +OTALGY +OTHER +OTHERGUESS +OTHERNESS +OTHERNESSES +OTHERS +OTHERWHERE +OTHERWHILE +OTHERWHILES +OTHERWISE +OTHERWORLD +OTHERWORLDLY +OTHERWORLDS +OTIC +OTIOSE +OTIOSELY +OTIOSENESS +OTIOSENESSES +OTIOSITIES +OTIOSITY +OTITIC +OTITIDES +OTITIS +OTITISES +OTOCYST +OTOCYSTIC +OTOCYSTS +OTOLARYNGOLOGY +OTOLITH +OTOLITHIC +OTOLITHS +OTOLOGIES +OTOLOGIST +OTOLOGISTS +OTOLOGY +OTOPLASTIES +OTOPLASTY +OTOSCLEROSES +OTOSCLEROSIS +OTOSCOPE +OTOSCOPES +OTOSCOPIES +OTOSCOPY +OTOTOXIC +OTOTOXICITIES +OTOTOXICITY +OTTAR +OTTARS +OTTAVA +OTTAVAS +OTTER +OTTERS +OTTO +OTTOMAN +OTTOMANS +OTTOS +OUABAIN +OUABAINS +OUBLIETTE +OUBLIETTES +OUCH +OUCHED +OUCHES +OUCHING +OUD +OUDS +OUGHT +OUGHTED +OUGHTING +OUGHTS +OUGUIYA +OUGUIYAS +OUISTITI +OUISTITIS +OUNCE +OUNCES +OUPH +OUPHE +OUPHES +OUPHS +OUR +OURANG +OURANGS +OURARI +OURARIS +OUREBI +OUREBIS +OURIE +OURS +OURSELF +OURSELVES +OUSEL +OUSELS +OUST +OUSTED +OUSTER +OUSTERS +OUSTING +OUSTS +OUT +OUTACHIEVE +OUTACHIEVED +OUTACHIEVES +OUTACHIEVING +OUTACT +OUTACTED +OUTACTING +OUTACTS +OUTADD +OUTADDED +OUTADDING +OUTADDS +OUTAGE +OUTAGES +OUTARGUE +OUTARGUED +OUTARGUES +OUTARGUING +OUTASK +OUTASKED +OUTASKING +OUTASKS +OUTATE +OUTBACK +OUTBACKER +OUTBACKERS +OUTBACKS +OUTBAKE +OUTBAKED +OUTBAKES +OUTBAKING +OUTBALANCE +OUTBALANCED +OUTBALANCES +OUTBALANCING +OUTBARGAIN +OUTBARGAINED +OUTBARGAINING +OUTBARGAINS +OUTBARK +OUTBARKED +OUTBARKING +OUTBARKS +OUTBAWL +OUTBAWLED +OUTBAWLING +OUTBAWLS +OUTBEAM +OUTBEAMED +OUTBEAMING +OUTBEAMS +OUTBEG +OUTBEGGED +OUTBEGGING +OUTBEGS +OUTBID +OUTBIDDEN +OUTBIDDER +OUTBIDDERS +OUTBIDDING +OUTBIDS +OUTBITCH +OUTBITCHED +OUTBITCHES +OUTBITCHING +OUTBLAZE +OUTBLAZED +OUTBLAZES +OUTBLAZING +OUTBLEAT +OUTBLEATED +OUTBLEATING +OUTBLEATS +OUTBLESS +OUTBLESSED +OUTBLESSES +OUTBLESSING +OUTBLOOM +OUTBLOOMED +OUTBLOOMING +OUTBLOOMS +OUTBLUFF +OUTBLUFFED +OUTBLUFFING +OUTBLUFFS +OUTBLUSH +OUTBLUSHED +OUTBLUSHES +OUTBLUSHING +OUTBOARD +OUTBOARDS +OUTBOAST +OUTBOASTED +OUTBOASTING +OUTBOASTS +OUTBOUGHT +OUTBOUND +OUTBOX +OUTBOXED +OUTBOXES +OUTBOXING +OUTBRAG +OUTBRAGGED +OUTBRAGGING +OUTBRAGS +OUTBRAVE +OUTBRAVED +OUTBRAVES +OUTBRAVING +OUTBRAWL +OUTBRAWLED +OUTBRAWLING +OUTBRAWLS +OUTBRAZEN +OUTBRAZENED +OUTBRAZENING +OUTBRAZENS +OUTBREAK +OUTBREAKS +OUTBRED +OUTBREED +OUTBREEDING +OUTBREEDINGS +OUTBREEDS +OUTBRIBE +OUTBRIBED +OUTBRIBES +OUTBRIBING +OUTBUILD +OUTBUILDING +OUTBUILDINGS +OUTBUILDS +OUTBUILT +OUTBULGE +OUTBULGED +OUTBULGES +OUTBULGING +OUTBULK +OUTBULKED +OUTBULKING +OUTBULKS +OUTBULLIED +OUTBULLIES +OUTBULLY +OUTBULLYING +OUTBURN +OUTBURNED +OUTBURNING +OUTBURNS +OUTBURNT +OUTBURST +OUTBURSTS +OUTBUY +OUTBUYING +OUTBUYS +OUTBY +OUTBYE +OUTCALL +OUTCALLS +OUTCAPER +OUTCAPERED +OUTCAPERING +OUTCAPERS +OUTCAST +OUTCASTE +OUTCASTES +OUTCASTS +OUTCATCH +OUTCATCHES +OUTCATCHING +OUTCAUGHT +OUTCAVIL +OUTCAVILED +OUTCAVILING +OUTCAVILLED +OUTCAVILLING +OUTCAVILS +OUTCHARGE +OUTCHARGED +OUTCHARGES +OUTCHARGING +OUTCHARM +OUTCHARMED +OUTCHARMING +OUTCHARMS +OUTCHEAT +OUTCHEATED +OUTCHEATING +OUTCHEATS +OUTCHID +OUTCHIDDEN +OUTCHIDE +OUTCHIDED +OUTCHIDES +OUTCHIDING +OUTCITIES +OUTCITY +OUTCLASS +OUTCLASSED +OUTCLASSES +OUTCLASSING +OUTCLIMB +OUTCLIMBED +OUTCLIMBING +OUTCLIMBS +OUTCLOMB +OUTCOACH +OUTCOACHED +OUTCOACHES +OUTCOACHING +OUTCOME +OUTCOMES +OUTCOMPETE +OUTCOMPETED +OUTCOMPETES +OUTCOMPETING +OUTCOOK +OUTCOOKED +OUTCOOKING +OUTCOOKS +OUTCOUNT +OUTCOUNTED +OUTCOUNTING +OUTCOUNTS +OUTCRAWL +OUTCRAWLED +OUTCRAWLING +OUTCRAWLS +OUTCRIED +OUTCRIES +OUTCROP +OUTCROPPED +OUTCROPPING +OUTCROPPINGS +OUTCROPS +OUTCROSS +OUTCROSSED +OUTCROSSES +OUTCROSSING +OUTCROW +OUTCROWD +OUTCROWDED +OUTCROWDING +OUTCROWDS +OUTCROWED +OUTCROWING +OUTCROWS +OUTCRY +OUTCRYING +OUTCURSE +OUTCURSED +OUTCURSES +OUTCURSING +OUTCURVE +OUTCURVES +OUTDANCE +OUTDANCED +OUTDANCES +OUTDANCING +OUTDARE +OUTDARED +OUTDARES +OUTDARING +OUTDATE +OUTDATED +OUTDATEDLY +OUTDATEDNESS +OUTDATEDNESSES +OUTDATES +OUTDATING +OUTDAZZLE +OUTDAZZLED +OUTDAZZLES +OUTDAZZLING +OUTDEBATE +OUTDEBATED +OUTDEBATES +OUTDEBATING +OUTDELIVER +OUTDELIVERED +OUTDELIVERING +OUTDELIVERS +OUTDESIGN +OUTDESIGNED +OUTDESIGNING +OUTDESIGNS +OUTDID +OUTDISTANCE +OUTDISTANCED +OUTDISTANCES +OUTDISTANCING +OUTDO +OUTDODGE +OUTDODGED +OUTDODGES +OUTDODGING +OUTDOER +OUTDOERS +OUTDOES +OUTDOING +OUTDONE +OUTDOOR +OUTDOORS +OUTDOORSMAN +OUTDOORSMANSHIP +OUTDOORSMEN +OUTDOORSY +OUTDRAG +OUTDRAGGED +OUTDRAGGING +OUTDRAGS +OUTDRANK +OUTDRAW +OUTDRAWING +OUTDRAWN +OUTDRAWS +OUTDREAM +OUTDREAMED +OUTDREAMING +OUTDREAMS +OUTDREAMT +OUTDRESS +OUTDRESSED +OUTDRESSES +OUTDRESSING +OUTDREW +OUTDRINK +OUTDRINKING +OUTDRINKS +OUTDRIVE +OUTDRIVEN +OUTDRIVES +OUTDRIVING +OUTDROP +OUTDROPPED +OUTDROPPING +OUTDROPS +OUTDROVE +OUTDRUNK +OUTDUEL +OUTDUELED +OUTDUELING +OUTDUELLED +OUTDUELLING +OUTDUELS +OUTEARN +OUTEARNED +OUTEARNING +OUTEARNS +OUTEAT +OUTEATEN +OUTEATING +OUTEATS +OUTECHO +OUTECHOED +OUTECHOES +OUTECHOING +OUTED +OUTER +OUTERCOAT +OUTERCOATS +OUTERMOST +OUTERS +OUTERWEAR +OUTFABLE +OUTFABLED +OUTFABLES +OUTFABLING +OUTFACE +OUTFACED +OUTFACES +OUTFACING +OUTFALL +OUTFALLS +OUTFAST +OUTFASTED +OUTFASTING +OUTFASTS +OUTFAWN +OUTFAWNED +OUTFAWNING +OUTFAWNS +OUTFEAST +OUTFEASTED +OUTFEASTING +OUTFEASTS +OUTFEEL +OUTFEELING +OUTFEELS +OUTFELT +OUTFENCE +OUTFENCED +OUTFENCES +OUTFENCING +OUTFIELD +OUTFIELDER +OUTFIELDERS +OUTFIELDS +OUTFIGHT +OUTFIGHTING +OUTFIGHTS +OUTFIGURE +OUTFIGURED +OUTFIGURES +OUTFIGURING +OUTFIND +OUTFINDING +OUTFINDS +OUTFIRE +OUTFIRED +OUTFIRES +OUTFIRING +OUTFISH +OUTFISHED +OUTFISHES +OUTFISHING +OUTFIT +OUTFITS +OUTFITTED +OUTFITTER +OUTFITTERS +OUTFITTING +OUTFLANK +OUTFLANKED +OUTFLANKING +OUTFLANKS +OUTFLEW +OUTFLIES +OUTFLOAT +OUTFLOATED +OUTFLOATING +OUTFLOATS +OUTFLOW +OUTFLOWED +OUTFLOWING +OUTFLOWN +OUTFLOWS +OUTFLY +OUTFLYING +OUTFOOL +OUTFOOLED +OUTFOOLING +OUTFOOLS +OUTFOOT +OUTFOOTED +OUTFOOTING +OUTFOOTS +OUTFOUGHT +OUTFOUND +OUTFOX +OUTFOXED +OUTFOXES +OUTFOXING +OUTFROWN +OUTFROWNED +OUTFROWNING +OUTFROWNS +OUTFUMBLE +OUTFUMBLED +OUTFUMBLES +OUTFUMBLING +OUTGAIN +OUTGAINED +OUTGAINING +OUTGAINS +OUTGALLOP +OUTGALLOPED +OUTGALLOPING +OUTGALLOPS +OUTGAMBLE +OUTGAMBLED +OUTGAMBLES +OUTGAMBLING +OUTGAS +OUTGASSED +OUTGASSES +OUTGASSING +OUTGAVE +OUTGAZE +OUTGAZED +OUTGAZES +OUTGAZING +OUTGENERAL +OUTGENERALED +OUTGENERALING +OUTGENERALS +OUTGIVE +OUTGIVEN +OUTGIVES +OUTGIVING +OUTGIVINGS +OUTGLARE +OUTGLARED +OUTGLARES +OUTGLARING +OUTGLEAM +OUTGLEAMED +OUTGLEAMING +OUTGLEAMS +OUTGLITTER +OUTGLITTERED +OUTGLITTERING +OUTGLITTERS +OUTGLOW +OUTGLOWED +OUTGLOWING +OUTGLOWS +OUTGNAW +OUTGNAWED +OUTGNAWING +OUTGNAWN +OUTGNAWS +OUTGO +OUTGOES +OUTGOING +OUTGOINGNESS +OUTGOINGNESSES +OUTGOINGS +OUTGONE +OUTGREW +OUTGRIN +OUTGRINNED +OUTGRINNING +OUTGRINS +OUTGROSS +OUTGROSSED +OUTGROSSES +OUTGROSSING +OUTGROUP +OUTGROUPS +OUTGROW +OUTGROWING +OUTGROWN +OUTGROWS +OUTGROWTH +OUTGROWTHS +OUTGUESS +OUTGUESSED +OUTGUESSES +OUTGUESSING +OUTGUIDE +OUTGUIDED +OUTGUIDES +OUTGUIDING +OUTGUN +OUTGUNNED +OUTGUNNING +OUTGUNS +OUTGUSH +OUTGUSHED +OUTGUSHES +OUTGUSHING +OUTHANDLE +OUTHANDLED +OUTHANDLES +OUTHANDLING +OUTHAUL +OUTHAULS +OUTHEAR +OUTHEARD +OUTHEARING +OUTHEARS +OUTHIT +OUTHITS +OUTHITTING +OUTHOMER +OUTHOMERED +OUTHOMERING +OUTHOMERS +OUTHOUSE +OUTHOUSES +OUTHOWL +OUTHOWLED +OUTHOWLING +OUTHOWLS +OUTHUMOR +OUTHUMORED +OUTHUMORING +OUTHUMORS +OUTHUNT +OUTHUNTED +OUTHUNTING +OUTHUNTS +OUTHUSTLE +OUTHUSTLED +OUTHUSTLES +OUTHUSTLING +OUTING +OUTINGS +OUTINTRIGUE +OUTINTRIGUED +OUTINTRIGUES +OUTINTRIGUING +OUTJINX +OUTJINXED +OUTJINXES +OUTJINXING +OUTJOCKEY +OUTJOCKEYED +OUTJOCKEYING +OUTJOCKEYS +OUTJUGGLE +OUTJUGGLED +OUTJUGGLES +OUTJUGGLING +OUTJUMP +OUTJUMPED +OUTJUMPING +OUTJUMPS +OUTJUT +OUTJUTS +OUTJUTTED +OUTJUTTING +OUTKEEP +OUTKEEPING +OUTKEEPS +OUTKEPT +OUTKICK +OUTKICKED +OUTKICKING +OUTKICKS +OUTKILL +OUTKILLED +OUTKILLING +OUTKILLS +OUTKISS +OUTKISSED +OUTKISSES +OUTKISSING +OUTLAID +OUTLAIN +OUTLAND +OUTLANDER +OUTLANDERS +OUTLANDISH +OUTLANDISHLY +OUTLANDISHNESS +OUTLANDS +OUTLAST +OUTLASTED +OUTLASTING +OUTLASTS +OUTLAUGH +OUTLAUGHED +OUTLAUGHING +OUTLAUGHS +OUTLAW +OUTLAWED +OUTLAWING +OUTLAWRIES +OUTLAWRY +OUTLAWS +OUTLAY +OUTLAYING +OUTLAYS +OUTLEAD +OUTLEADING +OUTLEADS +OUTLEAP +OUTLEAPED +OUTLEAPING +OUTLEAPS +OUTLEAPT +OUTLEARN +OUTLEARNED +OUTLEARNING +OUTLEARNS +OUTLEARNT +OUTLED +OUTLET +OUTLETS +OUTLIE +OUTLIER +OUTLIERS +OUTLIES +OUTLINE +OUTLINED +OUTLINER +OUTLINERS +OUTLINES +OUTLINING +OUTLIVE +OUTLIVED +OUTLIVER +OUTLIVERS +OUTLIVES +OUTLIVING +OUTLOOK +OUTLOOKS +OUTLOVE +OUTLOVED +OUTLOVES +OUTLOVING +OUTLYING +OUTMAN +OUTMANEUVER +OUTMANEUVERED +OUTMANEUVERING +OUTMANEUVERS +OUTMANIPULATE +OUTMANIPULATED +OUTMANIPULATES +OUTMANIPULATING +OUTMANNED +OUTMANNING +OUTMANS +OUTMARCH +OUTMARCHED +OUTMARCHES +OUTMARCHING +OUTMASTER +OUTMASTERED +OUTMASTERING +OUTMASTERS +OUTMATCH +OUTMATCHED +OUTMATCHES +OUTMATCHING +OUTMODE +OUTMODED +OUTMODES +OUTMODING +OUTMOST +OUTMOVE +OUTMOVED +OUTMOVES +OUTMOVING +OUTMUSCLE +OUTMUSCLED +OUTMUSCLES +OUTMUSCLING +OUTNUMBER +OUTNUMBERED +OUTNUMBERING +OUTNUMBERS +OUTOFFICE +OUTOFFICES +OUTORGANIZE +OUTORGANIZED +OUTORGANIZES +OUTORGANIZING +OUTPACE +OUTPACED +OUTPACES +OUTPACING +OUTPAINT +OUTPAINTED +OUTPAINTING +OUTPAINTS +OUTPASS +OUTPASSED +OUTPASSES +OUTPASSING +OUTPATIENT +OUTPATIENTS +OUTPEOPLE +OUTPEOPLED +OUTPEOPLES +OUTPEOPLING +OUTPERFORM +OUTPERFORMED +OUTPERFORMING +OUTPERFORMS +OUTPITCH +OUTPITCHED +OUTPITCHES +OUTPITCHING +OUTPITIED +OUTPITIES +OUTPITY +OUTPITYING +OUTPLACE +OUTPLACED +OUTPLACEMENT +OUTPLACEMENTS +OUTPLACES +OUTPLACING +OUTPLAN +OUTPLANNED +OUTPLANNING +OUTPLANS +OUTPLAY +OUTPLAYED +OUTPLAYING +OUTPLAYS +OUTPLOD +OUTPLODDED +OUTPLODDING +OUTPLODS +OUTPLOT +OUTPLOTS +OUTPLOTTED +OUTPLOTTING +OUTPOINT +OUTPOINTED +OUTPOINTING +OUTPOINTS +OUTPOLITICK +OUTPOLITICKED +OUTPOLITICKING +OUTPOLITICKS +OUTPOLL +OUTPOLLED +OUTPOLLING +OUTPOLLS +OUTPOPULATE +OUTPOPULATED +OUTPOPULATES +OUTPOPULATING +OUTPORT +OUTPORTS +OUTPOST +OUTPOSTS +OUTPOUR +OUTPOURED +OUTPOURER +OUTPOURERS +OUTPOURING +OUTPOURINGS +OUTPOURS +OUTPOWER +OUTPOWERED +OUTPOWERING +OUTPOWERS +OUTPRAY +OUTPRAYED +OUTPRAYING +OUTPRAYS +OUTPREACH +OUTPREACHED +OUTPREACHES +OUTPREACHING +OUTPREEN +OUTPREENED +OUTPREENING +OUTPREENS +OUTPRESS +OUTPRESSED +OUTPRESSES +OUTPRESSING +OUTPRICE +OUTPRICED +OUTPRICES +OUTPRICING +OUTPRODUCE +OUTPRODUCED +OUTPRODUCES +OUTPRODUCING +OUTPROMISE +OUTPROMISED +OUTPROMISES +OUTPROMISING +OUTPULL +OUTPULLED +OUTPULLING +OUTPULLS +OUTPUNCH +OUTPUNCHED +OUTPUNCHES +OUTPUNCHING +OUTPUPIL +OUTPUPILS +OUTPURSUE +OUTPURSUED +OUTPURSUES +OUTPURSUING +OUTPUSH +OUTPUSHED +OUTPUSHES +OUTPUSHING +OUTPUT +OUTPUTS +OUTPUTTED +OUTPUTTING +OUTQUOTE +OUTQUOTED +OUTQUOTES +OUTQUOTING +OUTRACE +OUTRACED +OUTRACES +OUTRACING +OUTRAGE +OUTRAGED +OUTRAGEOUS +OUTRAGEOUSLY +OUTRAGEOUSNESS +OUTRAGES +OUTRAGING +OUTRAISE +OUTRAISED +OUTRAISES +OUTRAISING +OUTRAN +OUTRANCE +OUTRANCES +OUTRANG +OUTRANGE +OUTRANGED +OUTRANGES +OUTRANGING +OUTRANK +OUTRANKED +OUTRANKING +OUTRANKS +OUTRATE +OUTRATED +OUTRATES +OUTRATING +OUTRAVE +OUTRAVED +OUTRAVES +OUTRAVING +OUTRE +OUTREACH +OUTREACHED +OUTREACHES +OUTREACHING +OUTREAD +OUTREADING +OUTREADS +OUTREASON +OUTREASONED +OUTREASONING +OUTREASONS +OUTREBOUND +OUTREBOUNDED +OUTREBOUNDING +OUTREBOUNDS +OUTRECKON +OUTRECKONED +OUTRECKONING +OUTRECKONS +OUTREPRODUCE +OUTREPRODUCED +OUTREPRODUCES +OUTREPRODUCING +OUTRIDDEN +OUTRIDE +OUTRIDER +OUTRIDERS +OUTRIDES +OUTRIDING +OUTRIG +OUTRIGGED +OUTRIGGER +OUTRIGGERS +OUTRIGGING +OUTRIGHT +OUTRIGHTLY +OUTRIGS +OUTRING +OUTRINGING +OUTRINGS +OUTRIVAL +OUTRIVALED +OUTRIVALING +OUTRIVALLED +OUTRIVALLING +OUTRIVALS +OUTROAR +OUTROARED +OUTROARING +OUTROARS +OUTROCK +OUTROCKED +OUTROCKING +OUTROCKS +OUTRODE +OUTROLL +OUTROLLED +OUTROLLING +OUTROLLS +OUTROOT +OUTROOTED +OUTROOTING +OUTROOTS +OUTROW +OUTROWED +OUTROWING +OUTROWS +OUTRUN +OUTRUNG +OUTRUNNER +OUTRUNNERS +OUTRUNNING +OUTRUNS +OUTRUSH +OUTRUSHED +OUTRUSHES +OUTRUSHING +OUTS +OUTSAID +OUTSAIL +OUTSAILED +OUTSAILING +OUTSAILS +OUTSANG +OUTSAT +OUTSAVOR +OUTSAVORED +OUTSAVORING +OUTSAVORS +OUTSAW +OUTSAY +OUTSAYING +OUTSAYS +OUTSCHEME +OUTSCHEMED +OUTSCHEMES +OUTSCHEMING +OUTSCOLD +OUTSCOLDED +OUTSCOLDING +OUTSCOLDS +OUTSCOOP +OUTSCOOPED +OUTSCOOPING +OUTSCOOPS +OUTSCORE +OUTSCORED +OUTSCORES +OUTSCORING +OUTSCORN +OUTSCORNED +OUTSCORNING +OUTSCORNS +OUTSCREAM +OUTSCREAMED +OUTSCREAMING +OUTSCREAMS +OUTSEE +OUTSEEING +OUTSEEN +OUTSEES +OUTSELL +OUTSELLING +OUTSELLS +OUTSERT +OUTSERTS +OUTSERVE +OUTSERVED +OUTSERVES +OUTSERVING +OUTSET +OUTSETS +OUTSHAME +OUTSHAMED +OUTSHAMES +OUTSHAMING +OUTSHINE +OUTSHINED +OUTSHINES +OUTSHINING +OUTSHONE +OUTSHOOT +OUTSHOOTING +OUTSHOOTS +OUTSHOT +OUTSHOUT +OUTSHOUTED +OUTSHOUTING +OUTSHOUTS +OUTSIDE +OUTSIDER +OUTSIDERNESS +OUTSIDERNESSES +OUTSIDERS +OUTSIDES +OUTSIGHT +OUTSIGHTS +OUTSIN +OUTSING +OUTSINGING +OUTSINGS +OUTSINNED +OUTSINNING +OUTSINS +OUTSIT +OUTSITS +OUTSITTING +OUTSIZE +OUTSIZED +OUTSIZES +OUTSKATE +OUTSKATED +OUTSKATES +OUTSKATING +OUTSKIRT +OUTSKIRTS +OUTSLEEP +OUTSLEEPING +OUTSLEEPS +OUTSLEPT +OUTSLICK +OUTSLICKED +OUTSLICKING +OUTSLICKS +OUTSMART +OUTSMARTED +OUTSMARTING +OUTSMARTS +OUTSMELL +OUTSMELLED +OUTSMELLING +OUTSMELLS +OUTSMELT +OUTSMILE +OUTSMILED +OUTSMILES +OUTSMILING +OUTSMOKE +OUTSMOKED +OUTSMOKES +OUTSMOKING +OUTSNORE +OUTSNORED +OUTSNORES +OUTSNORING +OUTSOAR +OUTSOARED +OUTSOARING +OUTSOARS +OUTSOLD +OUTSOLE +OUTSOLES +OUTSOURCE +OUTSOURCED +OUTSOURCES +OUTSOURCING +OUTSOURCINGS +OUTSPAN +OUTSPANNED +OUTSPANNING +OUTSPANS +OUTSPARKLE +OUTSPARKLED +OUTSPARKLES +OUTSPARKLING +OUTSPEAK +OUTSPEAKING +OUTSPEAKS +OUTSPED +OUTSPEED +OUTSPEEDED +OUTSPEEDING +OUTSPEEDS +OUTSPELL +OUTSPELLED +OUTSPELLING +OUTSPELLS +OUTSPELT +OUTSPEND +OUTSPENDING +OUTSPENDS +OUTSPENT +OUTSPOKE +OUTSPOKEN +OUTSPOKENLY +OUTSPOKENNESS +OUTSPOKENNESSES +OUTSPRANG +OUTSPREAD +OUTSPREADING +OUTSPREADS +OUTSPRING +OUTSPRINGING +OUTSPRINGS +OUTSPRINT +OUTSPRINTED +OUTSPRINTING +OUTSPRINTS +OUTSPRUNG +OUTSTAND +OUTSTANDING +OUTSTANDINGLY +OUTSTANDS +OUTSTARE +OUTSTARED +OUTSTARES +OUTSTARING +OUTSTART +OUTSTARTED +OUTSTARTING +OUTSTARTS +OUTSTATE +OUTSTATED +OUTSTATES +OUTSTATING +OUTSTATION +OUTSTATIONS +OUTSTAY +OUTSTAYED +OUTSTAYING +OUTSTAYS +OUTSTEER +OUTSTEERED +OUTSTEERING +OUTSTEERS +OUTSTOOD +OUTSTRETCH +OUTSTRETCHED +OUTSTRETCHES +OUTSTRETCHING +OUTSTRIDDEN +OUTSTRIDE +OUTSTRIDES +OUTSTRIDING +OUTSTRIP +OUTSTRIPPED +OUTSTRIPPING +OUTSTRIPS +OUTSTRIVE +OUTSTRIVEN +OUTSTRIVES +OUTSTRIVING +OUTSTRODE +OUTSTROKE +OUTSTROKES +OUTSTROVE +OUTSTUDIED +OUTSTUDIES +OUTSTUDY +OUTSTUDYING +OUTSTUNT +OUTSTUNTED +OUTSTUNTING +OUTSTUNTS +OUTSULK +OUTSULKED +OUTSULKING +OUTSULKS +OUTSUNG +OUTSWAM +OUTSWARE +OUTSWEAR +OUTSWEARING +OUTSWEARS +OUTSWEEP +OUTSWEEPING +OUTSWEEPS +OUTSWEPT +OUTSWIM +OUTSWIMMING +OUTSWIMS +OUTSWING +OUTSWINGING +OUTSWINGS +OUTSWORE +OUTSWORN +OUTSWUM +OUTSWUNG +OUTTAKE +OUTTAKES +OUTTALK +OUTTALKED +OUTTALKING +OUTTALKS +OUTTASK +OUTTASKED +OUTTASKING +OUTTASKS +OUTTELL +OUTTELLING +OUTTELLS +OUTTHANK +OUTTHANKED +OUTTHANKING +OUTTHANKS +OUTTHIEVE +OUTTHIEVED +OUTTHIEVES +OUTTHIEVING +OUTTHINK +OUTTHINKING +OUTTHINKS +OUTTHOUGHT +OUTTHREW +OUTTHROB +OUTTHROBBED +OUTTHROBBING +OUTTHROBS +OUTTHROW +OUTTHROWING +OUTTHROWN +OUTTHROWS +OUTTHRUST +OUTTHRUSTED +OUTTHRUSTING +OUTTHRUSTS +OUTTOLD +OUTTOWER +OUTTOWERED +OUTTOWERING +OUTTOWERS +OUTTRADE +OUTTRADED +OUTTRADES +OUTTRADING +OUTTRAVEL +OUTTRAVELED +OUTTRAVELING +OUTTRAVELLED +OUTTRAVELLING +OUTTRAVELS +OUTTRICK +OUTTRICKED +OUTTRICKING +OUTTRICKS +OUTTROT +OUTTROTS +OUTTROTTED +OUTTROTTING +OUTTRUMP +OUTTRUMPED +OUTTRUMPING +OUTTRUMPS +OUTTURN +OUTTURNS +OUTVALUE +OUTVALUED +OUTVALUES +OUTVALUING +OUTVAUNT +OUTVAUNTED +OUTVAUNTING +OUTVAUNTS +OUTVIE +OUTVIED +OUTVIES +OUTVOICE +OUTVOICED +OUTVOICES +OUTVOICING +OUTVOTE +OUTVOTED +OUTVOTES +OUTVOTING +OUTVYING +OUTWAIT +OUTWAITED +OUTWAITING +OUTWAITS +OUTWALK +OUTWALKED +OUTWALKING +OUTWALKS +OUTWAR +OUTWARD +OUTWARDLY +OUTWARDNESS +OUTWARDNESSES +OUTWARDS +OUTWARRED +OUTWARRING +OUTWARS +OUTWASH +OUTWASHES +OUTWASTE +OUTWASTED +OUTWASTES +OUTWASTING +OUTWATCH +OUTWATCHED +OUTWATCHES +OUTWATCHING +OUTWEAR +OUTWEARIED +OUTWEARIES +OUTWEARING +OUTWEARS +OUTWEARY +OUTWEARYING +OUTWEEP +OUTWEEPING +OUTWEEPS +OUTWEIGH +OUTWEIGHED +OUTWEIGHING +OUTWEIGHS +OUTWENT +OUTWEPT +OUTWHIRL +OUTWHIRLED +OUTWHIRLING +OUTWHIRLS +OUTWILE +OUTWILED +OUTWILES +OUTWILING +OUTWILL +OUTWILLED +OUTWILLING +OUTWILLS +OUTWIND +OUTWINDED +OUTWINDING +OUTWINDS +OUTWISH +OUTWISHED +OUTWISHES +OUTWISHING +OUTWIT +OUTWITH +OUTWITS +OUTWITTED +OUTWITTING +OUTWORE +OUTWORK +OUTWORKED +OUTWORKER +OUTWORKERS +OUTWORKING +OUTWORKS +OUTWORN +OUTWRESTLE +OUTWRESTLED +OUTWRESTLES +OUTWRESTLING +OUTWRIT +OUTWRITE +OUTWRITES +OUTWRITING +OUTWRITTEN +OUTWROTE +OUTWROUGHT +OUTYELL +OUTYELLED +OUTYELLING +OUTYELLS +OUTYELP +OUTYELPED +OUTYELPING +OUTYELPS +OUTYIELD +OUTYIELDED +OUTYIELDING +OUTYIELDS +OUZEL +OUZELS +OUZO +OUZOS +OVA +OVAL +OVALBUMIN +OVALBUMINS +OVALITIES +OVALITY +OVALLY +OVALNESS +OVALNESSES +OVALS +OVARIAL +OVARIAN +OVARIECTOMIES +OVARIECTOMIZED +OVARIECTOMY +OVARIES +OVARIOLE +OVARIOLES +OVARIOTOMIES +OVARIOTOMY +OVARITIDES +OVARITIS +OVARY +OVATE +OVATELY +OVATION +OVATIONAL +OVATIONS +OVEN +OVENBIRD +OVENBIRDS +OVENLIKE +OVENPROOF +OVENS +OVENWARE +OVENWARES +OVER +OVERABLE +OVERABSTRACT +OVERABUNDANCE +OVERABUNDANCES +OVERABUNDANT +OVERACCENTUATE +OVERACCENTUATED +OVERACCENTUATES +OVERACHIEVE +OVERACHIEVED +OVERACHIEVEMENT +OVERACHIEVER +OVERACHIEVERS +OVERACHIEVES +OVERACHIEVING +OVERACT +OVERACTED +OVERACTING +OVERACTION +OVERACTIONS +OVERACTIVE +OVERACTIVITIES +OVERACTIVITY +OVERACTS +OVERACUTE +OVERADJUSTMENT +OVERADJUSTMENTS +OVERADVERTISE +OVERADVERTISED +OVERADVERTISES +OVERADVERTISING +OVERAGE +OVERAGED +OVERAGES +OVERAGGRESSIVE +OVERALERT +OVERALL +OVERALLED +OVERALLS +OVERAMBITIOUS +OVERAMPLIFIED +OVERANALYSES +OVERANALYSIS +OVERANALYTICAL +OVERANALYZE +OVERANALYZED +OVERANALYZES +OVERANALYZING +OVERANXIETIES +OVERANXIETY +OVERANXIOUS +OVERAPPLICATION +OVERAPT +OVERARCH +OVERARCHED +OVERARCHES +OVERARCHING +OVERARM +OVERARMED +OVERARMING +OVERARMS +OVERAROUSAL +OVERAROUSALS +OVERARRANGE +OVERARRANGED +OVERARRANGES +OVERARRANGING +OVERARTICULATE +OVERARTICULATED +OVERARTICULATES +OVERASSERT +OVERASSERTED +OVERASSERTING +OVERASSERTION +OVERASSERTIONS +OVERASSERTIVE +OVERASSERTS +OVERASSESSMENT +OVERASSESSMENTS +OVERATE +OVERATTENTION +OVERATTENTIONS +OVERAWE +OVERAWED +OVERAWES +OVERAWING +OVERBAKE +OVERBAKED +OVERBAKES +OVERBAKING +OVERBALANCE +OVERBALANCED +OVERBALANCES +OVERBALANCING +OVERBEAR +OVERBEARING +OVERBEARINGLY +OVERBEARS +OVERBEAT +OVERBEATEN +OVERBEATING +OVERBEATS +OVERBED +OVERBEJEWELED +OVERBET +OVERBETS +OVERBETTED +OVERBETTING +OVERBID +OVERBIDDEN +OVERBIDDING +OVERBIDS +OVERBIG +OVERBILL +OVERBILLED +OVERBILLING +OVERBILLS +OVERBITE +OVERBITES +OVERBLEACH +OVERBLEACHED +OVERBLEACHES +OVERBLEACHING +OVERBLEW +OVERBLOUSE +OVERBLOUSES +OVERBLOW +OVERBLOWING +OVERBLOWN +OVERBLOWS +OVERBOARD +OVERBOIL +OVERBOILED +OVERBOILING +OVERBOILS +OVERBOLD +OVERBOOK +OVERBOOKED +OVERBOOKING +OVERBOOKS +OVERBORE +OVERBORN +OVERBORNE +OVERBORROW +OVERBORROWED +OVERBORROWING +OVERBORROWS +OVERBOUGHT +OVERBRAKE +OVERBRAKED +OVERBRAKES +OVERBRAKING +OVERBREATHING +OVERBREATHINGS +OVERBRED +OVERBREED +OVERBREEDING +OVERBREEDS +OVERBRIEF +OVERBRIEFED +OVERBRIEFING +OVERBRIEFS +OVERBRIGHT +OVERBROAD +OVERBROWSE +OVERBROWSED +OVERBROWSES +OVERBROWSING +OVERBRUTAL +OVERBUILD +OVERBUILDING +OVERBUILDS +OVERBUILT +OVERBURDEN +OVERBURDENED +OVERBURDENING +OVERBURDENS +OVERBURN +OVERBURNED +OVERBURNING +OVERBURNS +OVERBURNT +OVERBUSY +OVERBUY +OVERBUYING +OVERBUYS +OVERCALL +OVERCALLED +OVERCALLING +OVERCALLS +OVERCAME +OVERCAPACITIES +OVERCAPACITY +OVERCAPITALIZE +OVERCAPITALIZED +OVERCAPITALIZES +OVERCAREFUL +OVERCAST +OVERCASTED +OVERCASTING +OVERCASTINGS +OVERCASTS +OVERCAUTION +OVERCAUTIONS +OVERCAUTIOUS +OVERCENTRALIZE +OVERCENTRALIZED +OVERCENTRALIZES +OVERCHARGE +OVERCHARGED +OVERCHARGES +OVERCHARGING +OVERCHEAP +OVERCHILL +OVERCHILLED +OVERCHILLING +OVERCHILLS +OVERCIVIL +OVERCIVILIZED +OVERCLAIM +OVERCLAIMED +OVERCLAIMING +OVERCLAIMS +OVERCLASS +OVERCLASSES +OVERCLASSIFIED +OVERCLASSIFIES +OVERCLASSIFY +OVERCLASSIFYING +OVERCLEAN +OVERCLEANED +OVERCLEANING +OVERCLEANS +OVERCLEAR +OVERCLEARED +OVERCLEARING +OVERCLEARS +OVERCLOSE +OVERCLOUD +OVERCLOUDED +OVERCLOUDING +OVERCLOUDS +OVERCOACH +OVERCOACHED +OVERCOACHES +OVERCOACHING +OVERCOAT +OVERCOATS +OVERCOLD +OVERCOLOR +OVERCOLORED +OVERCOLORING +OVERCOLORS +OVERCOME +OVERCOMER +OVERCOMERS +OVERCOMES +OVERCOMING +OVERCOMMIT +OVERCOMMITMENT +OVERCOMMITMENTS +OVERCOMMITS +OVERCOMMITTED +OVERCOMMITTING +OVERCOMMUNICATE +OVERCOMPENSATE +OVERCOMPENSATED +OVERCOMPENSATES +OVERCOMPLEX +OVERCOMPLIANCE +OVERCOMPLIANCES +OVERCOMPLICATE +OVERCOMPLICATED +OVERCOMPLICATES +OVERCOMPRESS +OVERCOMPRESSED +OVERCOMPRESSES +OVERCOMPRESSING +OVERCONCERN +OVERCONCERNED +OVERCONCERNING +OVERCONCERNS +OVERCONFIDENCE +OVERCONFIDENCES +OVERCONFIDENT +OVERCONFIDENTLY +OVERCONSCIOUS +OVERCONSTRUCT +OVERCONSTRUCTED +OVERCONSTRUCTS +OVERCONSUME +OVERCONSUMED +OVERCONSUMES +OVERCONSUMING +OVERCONSUMPTION +OVERCONTROL +OVERCONTROLLED +OVERCONTROLLING +OVERCONTROLS +OVERCOOK +OVERCOOKED +OVERCOOKING +OVERCOOKS +OVERCOOL +OVERCOOLED +OVERCOOLING +OVERCOOLS +OVERCORRECT +OVERCORRECTED +OVERCORRECTING +OVERCORRECTS +OVERCOUNT +OVERCOUNTED +OVERCOUNTING +OVERCOUNTS +OVERCOY +OVERCRAM +OVERCRAMMED +OVERCRAMMING +OVERCRAMS +OVERCREDULOUS +OVERCRITICAL +OVERCROP +OVERCROPPED +OVERCROPPING +OVERCROPS +OVERCROWD +OVERCROWDED +OVERCROWDING +OVERCROWDS +OVERCULTIVATION +OVERCURE +OVERCURED +OVERCURES +OVERCURING +OVERCUT +OVERCUTS +OVERCUTTING +OVERDARE +OVERDARED +OVERDARES +OVERDARING +OVERDEAR +OVERDECK +OVERDECKED +OVERDECKING +OVERDECKS +OVERDECORATE +OVERDECORATED +OVERDECORATES +OVERDECORATING +OVERDECORATION +OVERDECORATIONS +OVERDEMANDING +OVERDEPENDENCE +OVERDEPENDENCES +OVERDEPENDENT +OVERDESIGN +OVERDESIGNED +OVERDESIGNING +OVERDESIGNS +OVERDETERMINED +OVERDEVELOP +OVERDEVELOPED +OVERDEVELOPING +OVERDEVELOPMENT +OVERDEVELOPS +OVERDID +OVERDIRECT +OVERDIRECTED +OVERDIRECTING +OVERDIRECTS +OVERDISCOUNT +OVERDISCOUNTED +OVERDISCOUNTING +OVERDISCOUNTS +OVERDIVERSITIES +OVERDIVERSITY +OVERDO +OVERDOCUMENT +OVERDOCUMENTED +OVERDOCUMENTING +OVERDOCUMENTS +OVERDOER +OVERDOERS +OVERDOES +OVERDOG +OVERDOGS +OVERDOING +OVERDOMINANCE +OVERDOMINANCES +OVERDOMINANT +OVERDONE +OVERDOSAGE +OVERDOSAGES +OVERDOSE +OVERDOSED +OVERDOSES +OVERDOSING +OVERDRAFT +OVERDRAFTS +OVERDRAMATIC +OVERDRAMATIZE +OVERDRAMATIZED +OVERDRAMATIZES +OVERDRAMATIZING +OVERDRANK +OVERDRAW +OVERDRAWING +OVERDRAWN +OVERDRAWS +OVERDRESS +OVERDRESSED +OVERDRESSES +OVERDRESSING +OVERDREW +OVERDRIED +OVERDRIES +OVERDRINK +OVERDRINKING +OVERDRINKS +OVERDRIVE +OVERDRIVEN +OVERDRIVES +OVERDRIVING +OVERDROVE +OVERDRUNK +OVERDRY +OVERDRYING +OVERDUB +OVERDUBBED +OVERDUBBING +OVERDUBS +OVERDUE +OVERDYE +OVERDYED +OVERDYEING +OVERDYER +OVERDYERS +OVERDYES +OVEREAGER +OVEREAGERNESS +OVEREAGERNESSES +OVEREARNEST +OVEREASY +OVEREAT +OVEREATEN +OVEREATER +OVEREATERS +OVEREATING +OVEREATS +OVERED +OVEREDIT +OVEREDITED +OVEREDITING +OVEREDITS +OVEREDUCATE +OVEREDUCATED +OVEREDUCATES +OVEREDUCATING +OVEREDUCATION +OVEREDUCATIONS +OVERELABORATE +OVERELABORATED +OVERELABORATES +OVERELABORATING +OVERELABORATION +OVEREMBELLISH +OVEREMBELLISHED +OVEREMBELLISHES +OVEREMOTE +OVEREMOTED +OVEREMOTES +OVEREMOTING +OVEREMOTIONAL +OVEREMPHASES +OVEREMPHASIS +OVEREMPHASIZE +OVEREMPHASIZED +OVEREMPHASIZES +OVEREMPHASIZING +OVEREMPHATIC +OVERENAMORED +OVERENCOURAGE +OVERENCOURAGED +OVERENCOURAGES +OVERENCOURAGING +OVERENERGETIC +OVERENGINEER +OVERENGINEERED +OVERENGINEERING +OVERENGINEERS +OVERENROLLED +OVERENTERTAINED +OVERENTHUSIASM +OVERENTHUSIASMS +OVEREQUIPPED +OVERESTIMATE +OVERESTIMATED +OVERESTIMATES +OVERESTIMATING +OVERESTIMATION +OVERESTIMATIONS +OVEREVALUATION +OVEREVALUATIONS +OVEREXAGGERATE +OVEREXAGGERATED +OVEREXAGGERATES +OVEREXCITE +OVEREXCITED +OVEREXCITES +OVEREXCITING +OVEREXERCISE +OVEREXERCISED +OVEREXERCISES +OVEREXERCISING +OVEREXERT +OVEREXERTED +OVEREXERTING +OVEREXERTION +OVEREXERTIONS +OVEREXERTS +OVEREXPAND +OVEREXPANDED +OVEREXPANDING +OVEREXPANDS +OVEREXPANSION +OVEREXPANSIONS +OVEREXPECTATION +OVEREXPLAIN +OVEREXPLAINED +OVEREXPLAINING +OVEREXPLAINS +OVEREXPLICIT +OVEREXPLOIT +OVEREXPLOITED +OVEREXPLOITING +OVEREXPLOITS +OVEREXPOSE +OVEREXPOSED +OVEREXPOSES +OVEREXPOSING +OVEREXPOSURE +OVEREXPOSURES +OVEREXTEND +OVEREXTENDED +OVEREXTENDING +OVEREXTENDS +OVEREXTENSION +OVEREXTENSIONS +OVEREXTRACTION +OVEREXTRACTIONS +OVEREXTRAVAGANT +OVEREXUBERANT +OVERFACILE +OVERFAMILIAR +OVERFAMILIARITY +OVERFAR +OVERFAST +OVERFASTIDIOUS +OVERFAT +OVERFATIGUE +OVERFATIGUED +OVERFATIGUES +OVERFAVOR +OVERFAVORED +OVERFAVORING +OVERFAVORS +OVERFEAR +OVERFEARED +OVERFEARING +OVERFEARS +OVERFED +OVERFEED +OVERFEEDING +OVERFEEDS +OVERFERTILIZE +OVERFERTILIZED +OVERFERTILIZES +OVERFERTILIZING +OVERFILL +OVERFILLED +OVERFILLING +OVERFILLS +OVERFISH +OVERFISHED +OVERFISHES +OVERFISHING +OVERFIT +OVERFLEW +OVERFLIES +OVERFLIGHT +OVERFLIGHTS +OVERFLOOD +OVERFLOODED +OVERFLOODING +OVERFLOODS +OVERFLOW +OVERFLOWED +OVERFLOWING +OVERFLOWN +OVERFLOWS +OVERFLY +OVERFLYING +OVERFOCUS +OVERFOCUSED +OVERFOCUSES +OVERFOCUSING +OVERFOCUSSED +OVERFOCUSSES +OVERFOCUSSING +OVERFOND +OVERFOUL +OVERFRANK +OVERFREE +OVERFULFILL +OVERFULFILLED +OVERFULFILLING +OVERFULFILLS +OVERFULL +OVERFUND +OVERFUNDED +OVERFUNDING +OVERFUNDS +OVERFUSSY +OVERGARMENT +OVERGARMENTS +OVERGENERALIZE +OVERGENERALIZED +OVERGENERALIZES +OVERGENEROSITY +OVERGENEROUS +OVERGENEROUSLY +OVERGILD +OVERGILDED +OVERGILDING +OVERGILDS +OVERGILT +OVERGIRD +OVERGIRDED +OVERGIRDING +OVERGIRDS +OVERGIRT +OVERGLAD +OVERGLAMORIZE +OVERGLAMORIZED +OVERGLAMORIZES +OVERGLAMORIZING +OVERGLAZE +OVERGLAZED +OVERGLAZES +OVERGLAZING +OVERGOAD +OVERGOADED +OVERGOADING +OVERGOADS +OVERGOVERN +OVERGOVERNED +OVERGOVERNING +OVERGOVERNS +OVERGRADE +OVERGRADED +OVERGRADES +OVERGRADING +OVERGRAZE +OVERGRAZED +OVERGRAZES +OVERGRAZING +OVERGREAT +OVERGREW +OVERGROW +OVERGROWING +OVERGROWN +OVERGROWS +OVERGROWTH +OVERGROWTHS +OVERHAND +OVERHANDED +OVERHANDING +OVERHANDLE +OVERHANDLED +OVERHANDLES +OVERHANDLING +OVERHANDS +OVERHANG +OVERHANGING +OVERHANGS +OVERHARD +OVERHARVEST +OVERHARVESTED +OVERHARVESTING +OVERHARVESTS +OVERHASTY +OVERHATE +OVERHATED +OVERHATES +OVERHATING +OVERHAUL +OVERHAULED +OVERHAULING +OVERHAULS +OVERHEAD +OVERHEADS +OVERHEAP +OVERHEAPED +OVERHEAPING +OVERHEAPS +OVERHEAR +OVERHEARD +OVERHEARING +OVERHEARS +OVERHEAT +OVERHEATED +OVERHEATING +OVERHEATS +OVERHELD +OVERHIGH +OVERHOLD +OVERHOLDING +OVERHOLDS +OVERHOLY +OVERHOMOGENIZE +OVERHOMOGENIZED +OVERHOMOGENIZES +OVERHONOR +OVERHONORED +OVERHONORING +OVERHONORS +OVERHOPE +OVERHOPED +OVERHOPES +OVERHOPING +OVERHOT +OVERHUNG +OVERHUNT +OVERHUNTED +OVERHUNTING +OVERHUNTINGS +OVERHUNTS +OVERHYPE +OVERHYPED +OVERHYPES +OVERHYPING +OVERIDEALIZE +OVERIDEALIZED +OVERIDEALIZES +OVERIDEALIZING +OVERIDENTIFIED +OVERIDENTIFIES +OVERIDENTIFY +OVERIDENTIFYING +OVERIDLE +OVERIMAGINATIVE +OVERIMPRESS +OVERIMPRESSED +OVERIMPRESSES +OVERIMPRESSING +OVERINDULGE +OVERINDULGED +OVERINDULGENCE +OVERINDULGENCES +OVERINDULGENT +OVERINDULGES +OVERINDULGING +OVERINFLATE +OVERINFLATED +OVERINFLATES +OVERINFLATING +OVERINFLATION +OVERINFLATIONS +OVERINFORM +OVERINFORMED +OVERINFORMING +OVERINFORMS +OVERING +OVERINGENIOUS +OVERINGENUITIES +OVERINGENUITY +OVERINSISTENT +OVERINTENSE +OVERINTENSITIES +OVERINTENSITY +OVERINVESTMENT +OVERINVESTMENTS +OVERISSUANCE +OVERISSUANCES +OVERISSUE +OVERISSUED +OVERISSUES +OVERISSUING +OVERJOY +OVERJOYED +OVERJOYING +OVERJOYS +OVERJUST +OVERKEEN +OVERKILL +OVERKILLED +OVERKILLING +OVERKILLS +OVERKIND +OVERLABOR +OVERLABORED +OVERLABORING +OVERLABORS +OVERLADE +OVERLADED +OVERLADEN +OVERLADES +OVERLADING +OVERLAID +OVERLAIN +OVERLAND +OVERLANDS +OVERLAP +OVERLAPPED +OVERLAPPING +OVERLAPS +OVERLARGE +OVERLATE +OVERLAVISH +OVERLAX +OVERLAY +OVERLAYING +OVERLAYS +OVERLEAF +OVERLEAP +OVERLEAPED +OVERLEAPING +OVERLEAPS +OVERLEAPT +OVERLEARN +OVERLEARNED +OVERLEARNING +OVERLEARNS +OVERLEARNT +OVERLEND +OVERLENDING +OVERLENDS +OVERLENGTH +OVERLENGTHEN +OVERLENGTHENED +OVERLENGTHENING +OVERLENGTHENS +OVERLENGTHS +OVERLENT +OVERLET +OVERLETS +OVERLETTING +OVERLEWD +OVERLIE +OVERLIES +OVERLIGHT +OVERLIGHTED +OVERLIGHTING +OVERLIGHTS +OVERLIT +OVERLITERAL +OVERLITERARY +OVERLIVE +OVERLIVED +OVERLIVES +OVERLIVING +OVERLOAD +OVERLOADED +OVERLOADING +OVERLOADS +OVERLONG +OVERLOOK +OVERLOOKED +OVERLOOKING +OVERLOOKS +OVERLORD +OVERLORDED +OVERLORDING +OVERLORDS +OVERLORDSHIP +OVERLORDSHIPS +OVERLOUD +OVERLOVE +OVERLOVED +OVERLOVES +OVERLOVING +OVERLUSH +OVERLY +OVERLYING +OVERMAN +OVERMANAGE +OVERMANAGED +OVERMANAGES +OVERMANAGING +OVERMANNED +OVERMANNERED +OVERMANNING +OVERMANS +OVERMANTEL +OVERMANTELS +OVERMANY +OVERMASTER +OVERMASTERED +OVERMASTERING +OVERMASTERS +OVERMATCH +OVERMATCHED +OVERMATCHES +OVERMATCHING +OVERMATURE +OVERMATURITIES +OVERMATURITY +OVERMEDICATE +OVERMEDICATED +OVERMEDICATES +OVERMEDICATING +OVERMEDICATION +OVERMEDICATIONS +OVERMEEK +OVERMELT +OVERMELTED +OVERMELTING +OVERMELTS +OVERMEN +OVERMIGHTY +OVERMILD +OVERMILK +OVERMILKED +OVERMILKING +OVERMILKS +OVERMINE +OVERMINED +OVERMINES +OVERMINING +OVERMIX +OVERMIXED +OVERMIXES +OVERMIXING +OVERMODEST +OVERMODESTLY +OVERMUCH +OVERMUCHES +OVERMUSCLED +OVERNEAR +OVERNEAT +OVERNEW +OVERNICE +OVERNIGHT +OVERNIGHTED +OVERNIGHTER +OVERNIGHTERS +OVERNIGHTING +OVERNIGHTS +OVERNOURISH +OVERNOURISHED +OVERNOURISHES +OVERNOURISHING +OVERNUTRITION +OVERNUTRITIONS +OVEROBVIOUS +OVEROPERATE +OVEROPERATED +OVEROPERATES +OVEROPERATING +OVEROPINIONATED +OVEROPTIMISM +OVEROPTIMISMS +OVEROPTIMIST +OVEROPTIMISTIC +OVEROPTIMISTS +OVERORCHESTRATE +OVERORGANIZE +OVERORGANIZED +OVERORGANIZES +OVERORGANIZING +OVERORNAMENT +OVERORNAMENTED +OVERORNAMENTING +OVERORNAMENTS +OVERPACK +OVERPACKAGE +OVERPACKAGED +OVERPACKAGES +OVERPACKAGING +OVERPACKED +OVERPACKING +OVERPACKS +OVERPAID +OVERPARTICULAR +OVERPASS +OVERPASSED +OVERPASSES +OVERPASSING +OVERPAST +OVERPAY +OVERPAYING +OVERPAYMENT +OVERPAYMENTS +OVERPAYS +OVERPEDAL +OVERPEDALED +OVERPEDALING +OVERPEDALLED +OVERPEDALLING +OVERPEDALS +OVERPEOPLE +OVERPEOPLED +OVERPEOPLES +OVERPEOPLING +OVERPERSUADE +OVERPERSUADED +OVERPERSUADES +OVERPERSUADING +OVERPERSUASION +OVERPERSUASIONS +OVERPERT +OVERPLAID +OVERPLAIDED +OVERPLAIDS +OVERPLAN +OVERPLANNED +OVERPLANNING +OVERPLANS +OVERPLANT +OVERPLANTED +OVERPLANTING +OVERPLANTS +OVERPLAY +OVERPLAYED +OVERPLAYING +OVERPLAYS +OVERPLIED +OVERPLIES +OVERPLOT +OVERPLOTS +OVERPLOTTED +OVERPLOTTING +OVERPLUS +OVERPLUSES +OVERPLY +OVERPLYING +OVERPOPULATE +OVERPOPULATED +OVERPOPULATES +OVERPOPULATING +OVERPOPULATION +OVERPOPULATIONS +OVERPOTENT +OVERPOWER +OVERPOWERED +OVERPOWERING +OVERPOWERINGLY +OVERPOWERS +OVERPRAISE +OVERPRAISED +OVERPRAISES +OVERPRAISING +OVERPRECISE +OVERPRESCRIBE +OVERPRESCRIBED +OVERPRESCRIBES +OVERPRESCRIBING +OVERPRESSURE +OVERPRESSURES +OVERPRICE +OVERPRICED +OVERPRICES +OVERPRICING +OVERPRINT +OVERPRINTED +OVERPRINTING +OVERPRINTS +OVERPRIVILEGED +OVERPRIZE +OVERPRIZED +OVERPRIZES +OVERPRIZING +OVERPROCESS +OVERPROCESSED +OVERPROCESSES +OVERPROCESSING +OVERPRODUCE +OVERPRODUCED +OVERPRODUCES +OVERPRODUCING +OVERPRODUCTION +OVERPRODUCTIONS +OVERPROGRAM +OVERPROGRAMED +OVERPROGRAMING +OVERPROGRAMMED +OVERPROGRAMMING +OVERPROGRAMS +OVERPROMISE +OVERPROMISED +OVERPROMISES +OVERPROMISING +OVERPROMOTE +OVERPROMOTED +OVERPROMOTES +OVERPROMOTING +OVERPROOF +OVERPROPORTION +OVERPROPORTIONS +OVERPROTECT +OVERPROTECTED +OVERPROTECTING +OVERPROTECTION +OVERPROTECTIONS +OVERPROTECTIVE +OVERPROTECTS +OVERPROUD +OVERPUMP +OVERPUMPED +OVERPUMPING +OVERPUMPS +OVERQUALIFIED +OVERQUICK +OVERRAN +OVERRANK +OVERRASH +OVERRATE +OVERRATED +OVERRATES +OVERRATING +OVERREACH +OVERREACHED +OVERREACHER +OVERREACHERS +OVERREACHES +OVERREACHING +OVERREACT +OVERREACTED +OVERREACTING +OVERREACTION +OVERREACTIONS +OVERREACTS +OVERREFINED +OVERREFINEMENT +OVERREFINEMENTS +OVERREGULATE +OVERREGULATED +OVERREGULATES +OVERREGULATING +OVERREGULATION +OVERREGULATIONS +OVERRELIANCE +OVERRELIANCES +OVERREPORT +OVERREPORTED +OVERREPORTING +OVERREPORTS +OVERREPRESENTED +OVERRESPOND +OVERRESPONDED +OVERRESPONDING +OVERRESPONDS +OVERRICH +OVERRIDDEN +OVERRIDE +OVERRIDES +OVERRIDING +OVERRIFE +OVERRIGID +OVERRIPE +OVERROAST +OVERROASTED +OVERROASTING +OVERROASTS +OVERRODE +OVERRUDE +OVERRUFF +OVERRUFFED +OVERRUFFING +OVERRUFFS +OVERRULE +OVERRULED +OVERRULES +OVERRULING +OVERRUN +OVERRUNNING +OVERRUNS +OVERS +OVERSAD +OVERSALE +OVERSALES +OVERSALT +OVERSALTED +OVERSALTING +OVERSALTS +OVERSANGUINE +OVERSATURATE +OVERSATURATED +OVERSATURATES +OVERSATURATING +OVERSATURATION +OVERSATURATIONS +OVERSAUCE +OVERSAUCED +OVERSAUCES +OVERSAUCING +OVERSAVE +OVERSAVED +OVERSAVES +OVERSAVING +OVERSAW +OVERSCALE +OVERSCALED +OVERSCORE +OVERSCORED +OVERSCORES +OVERSCORING +OVERSCRUPULOUS +OVERSEA +OVERSEAS +OVERSECRETION +OVERSECRETIONS +OVERSEE +OVERSEED +OVERSEEDED +OVERSEEDING +OVERSEEDS +OVERSEEING +OVERSEEN +OVERSEER +OVERSEERS +OVERSEES +OVERSELL +OVERSELLING +OVERSELLS +OVERSENSITIVE +OVERSENSITIVITY +OVERSERIOUS +OVERSERIOUSLY +OVERSERVICE +OVERSERVICED +OVERSERVICES +OVERSERVICING +OVERSET +OVERSETS +OVERSETTING +OVERSEW +OVERSEWED +OVERSEWING +OVERSEWN +OVERSEWS +OVERSEXED +OVERSHADE +OVERSHADED +OVERSHADES +OVERSHADING +OVERSHADOW +OVERSHADOWED +OVERSHADOWING +OVERSHADOWS +OVERSHARP +OVERSHIRT +OVERSHIRTS +OVERSHOE +OVERSHOES +OVERSHOOT +OVERSHOOTING +OVERSHOOTS +OVERSHOT +OVERSHOTS +OVERSICK +OVERSIDE +OVERSIDES +OVERSIGHT +OVERSIGHTS +OVERSIMPLE +OVERSIMPLIFIED +OVERSIMPLIFIES +OVERSIMPLIFY +OVERSIMPLIFYING +OVERSIMPLISTIC +OVERSIMPLY +OVERSIZE +OVERSIZED +OVERSIZES +OVERSKIRT +OVERSKIRTS +OVERSLAUGH +OVERSLAUGHED +OVERSLAUGHING +OVERSLAUGHS +OVERSLEEP +OVERSLEEPING +OVERSLEEPS +OVERSLEPT +OVERSLIP +OVERSLIPPED +OVERSLIPPING +OVERSLIPS +OVERSLIPT +OVERSLOW +OVERSMOKE +OVERSMOKED +OVERSMOKES +OVERSMOKING +OVERSOAK +OVERSOAKED +OVERSOAKING +OVERSOAKS +OVERSOFT +OVERSOLD +OVERSOLICITOUS +OVERSOON +OVERSOUL +OVERSOULS +OVERSPECIALIZE +OVERSPECIALIZED +OVERSPECIALIZES +OVERSPECULATE +OVERSPECULATED +OVERSPECULATES +OVERSPECULATING +OVERSPECULATION +OVERSPEND +OVERSPENDER +OVERSPENDERS +OVERSPENDING +OVERSPENDS +OVERSPENT +OVERSPICE +OVERSPICED +OVERSPICES +OVERSPICING +OVERSPILL +OVERSPILLED +OVERSPILLING +OVERSPILLS +OVERSPILT +OVERSPIN +OVERSPINS +OVERSPREAD +OVERSPREADING +OVERSPREADS +OVERSTABILITIES +OVERSTABILITY +OVERSTAFF +OVERSTAFFED +OVERSTAFFING +OVERSTAFFS +OVERSTATE +OVERSTATED +OVERSTATEMENT +OVERSTATEMENTS +OVERSTATES +OVERSTATING +OVERSTAY +OVERSTAYED +OVERSTAYING +OVERSTAYS +OVERSTEER +OVERSTEERED +OVERSTEERING +OVERSTEERS +OVERSTEP +OVERSTEPPED +OVERSTEPPING +OVERSTEPS +OVERSTIMULATE +OVERSTIMULATED +OVERSTIMULATES +OVERSTIMULATING +OVERSTIMULATION +OVERSTIR +OVERSTIRRED +OVERSTIRRING +OVERSTIRS +OVERSTOCK +OVERSTOCKED +OVERSTOCKING +OVERSTOCKS +OVERSTORIES +OVERSTORY +OVERSTRAIN +OVERSTRAINED +OVERSTRAINING +OVERSTRAINS +OVERSTRESS +OVERSTRESSED +OVERSTRESSES +OVERSTRESSING +OVERSTRETCH +OVERSTRETCHED +OVERSTRETCHES +OVERSTRETCHING +OVERSTREW +OVERSTREWED +OVERSTREWING +OVERSTREWN +OVERSTREWS +OVERSTRIDDEN +OVERSTRIDE +OVERSTRIDES +OVERSTRIDING +OVERSTRODE +OVERSTRUCTURED +OVERSTRUNG +OVERSTUDIED +OVERSTUDIES +OVERSTUDY +OVERSTUDYING +OVERSTUFF +OVERSTUFFED +OVERSTUFFING +OVERSTUFFS +OVERSUBSCRIBE +OVERSUBSCRIBED +OVERSUBSCRIBES +OVERSUBSCRIBING +OVERSUBTLE +OVERSUDS +OVERSUDSED +OVERSUDSES +OVERSUDSING +OVERSUP +OVERSUPPED +OVERSUPPING +OVERSUPPLIED +OVERSUPPLIES +OVERSUPPLY +OVERSUPPLYING +OVERSUPS +OVERSURE +OVERSUSPICIOUS +OVERSWEET +OVERSWEETEN +OVERSWEETENED +OVERSWEETENING +OVERSWEETENS +OVERSWEETNESS +OVERSWEETNESSES +OVERSWING +OVERSWINGING +OVERSWINGS +OVERSWUNG +OVERT +OVERTAKE +OVERTAKEN +OVERTAKES +OVERTAKING +OVERTALK +OVERTALKATIVE +OVERTALKED +OVERTALKING +OVERTALKS +OVERTAME +OVERTART +OVERTASK +OVERTASKED +OVERTASKING +OVERTASKS +OVERTAUGHT +OVERTAX +OVERTAXATION +OVERTAXATIONS +OVERTAXED +OVERTAXES +OVERTAXING +OVERTEACH +OVERTEACHES +OVERTEACHING +OVERTHICK +OVERTHIN +OVERTHINK +OVERTHINKING +OVERTHINKS +OVERTHOUGHT +OVERTHREW +OVERTHROW +OVERTHROWING +OVERTHROWN +OVERTHROWS +OVERTIGHT +OVERTIGHTEN +OVERTIGHTENED +OVERTIGHTENING +OVERTIGHTENS +OVERTIME +OVERTIMED +OVERTIMES +OVERTIMID +OVERTIMING +OVERTIP +OVERTIPPED +OVERTIPPING +OVERTIPS +OVERTIRE +OVERTIRED +OVERTIRES +OVERTIRING +OVERTLY +OVERTNESS +OVERTNESSES +OVERTOIL +OVERTOILED +OVERTOILING +OVERTOILS +OVERTONE +OVERTONES +OVERTOOK +OVERTOP +OVERTOPPED +OVERTOPPING +OVERTOPS +OVERTRADE +OVERTRADED +OVERTRADES +OVERTRADING +OVERTRAIN +OVERTRAINED +OVERTRAINING +OVERTRAINS +OVERTREAT +OVERTREATED +OVERTREATING +OVERTREATMENT +OVERTREATMENTS +OVERTREATS +OVERTRICK +OVERTRICKS +OVERTRIM +OVERTRIMMED +OVERTRIMMING +OVERTRIMS +OVERTRUMP +OVERTRUMPED +OVERTRUMPING +OVERTRUMPS +OVERTURE +OVERTURED +OVERTURES +OVERTURING +OVERTURN +OVERTURNED +OVERTURNING +OVERTURNS +OVERURGE +OVERURGED +OVERURGES +OVERURGING +OVERUSE +OVERUSED +OVERUSES +OVERUSING +OVERUTILIZATION +OVERUTILIZE +OVERUTILIZED +OVERUTILIZES +OVERUTILIZING +OVERVALUATION +OVERVALUATIONS +OVERVALUE +OVERVALUED +OVERVALUES +OVERVALUING +OVERVIEW +OVERVIEWS +OVERVIOLENT +OVERVIVID +OVERVOLTAGE +OVERVOLTAGES +OVERVOTE +OVERVOTED +OVERVOTES +OVERVOTING +OVERWARM +OVERWARMED +OVERWARMING +OVERWARMS +OVERWARY +OVERWATCH +OVERWATCHED +OVERWATCHES +OVERWATCHING +OVERWATER +OVERWATERED +OVERWATERING +OVERWATERS +OVERWEAK +OVERWEAR +OVERWEARIED +OVERWEARIES +OVERWEARING +OVERWEARS +OVERWEARY +OVERWEARYING +OVERWEEN +OVERWEENED +OVERWEENING +OVERWEENINGLY +OVERWEENS +OVERWEIGH +OVERWEIGHED +OVERWEIGHING +OVERWEIGHS +OVERWEIGHT +OVERWEIGHTED +OVERWEIGHTING +OVERWEIGHTS +OVERWET +OVERWETS +OVERWETTED +OVERWETTING +OVERWHELM +OVERWHELMED +OVERWHELMING +OVERWHELMINGLY +OVERWHELMS +OVERWIDE +OVERWILY +OVERWIND +OVERWINDING +OVERWINDS +OVERWINTER +OVERWINTERED +OVERWINTERING +OVERWINTERS +OVERWISE +OVERWITHHELD +OVERWITHHOLD +OVERWITHHOLDING +OVERWITHHOLDS +OVERWORD +OVERWORDS +OVERWORE +OVERWORK +OVERWORKED +OVERWORKING +OVERWORKS +OVERWORN +OVERWOUND +OVERWRITE +OVERWRITES +OVERWRITING +OVERWRITTEN +OVERWROTE +OVERWROUGHT +OVERZEAL +OVERZEALOUS +OVERZEALOUSNESS +OVERZEALS +OVIBOS +OVICIDAL +OVICIDE +OVICIDES +OVIDUCAL +OVIDUCT +OVIDUCTAL +OVIDUCTS +OVIFEROUS +OVIFORM +OVINE +OVINES +OVIPARA +OVIPARITIES +OVIPARITY +OVIPAROUS +OVIPOSIT +OVIPOSITED +OVIPOSITING +OVIPOSITION +OVIPOSITIONAL +OVIPOSITIONS +OVIPOSITOR +OVIPOSITORS +OVIPOSITS +OVIRAPTOR +OVIRAPTORS +OVISAC +OVISACS +OVOID +OVOIDAL +OVOIDALS +OVOIDS +OVOLI +OVOLO +OVOLOS +OVONIC +OVONICS +OVOTESTES +OVOTESTIS +OVOVIVIPAROUS +OVOVIVIPAROUSLY +OVULAR +OVULARY +OVULATE +OVULATED +OVULATES +OVULATING +OVULATION +OVULATIONS +OVULATORY +OVULE +OVULES +OVUM +OW +OWE +OWED +OWES +OWING +OWL +OWLET +OWLETS +OWLISH +OWLISHLY +OWLISHNESS +OWLISHNESSES +OWLLIKE +OWLS +OWN +OWNABLE +OWNED +OWNER +OWNERS +OWNERSHIP +OWNERSHIPS +OWNING +OWNS +OWSE +OWSEN +OX +OXACILLIN +OXACILLINS +OXALACETATE +OXALACETATES +OXALATE +OXALATED +OXALATES +OXALATING +OXALIC +OXALIS +OXALISES +OXALOACETATE +OXALOACETATES +OXAZEPAM +OXAZEPAMS +OXAZINE +OXAZINES +OXBLOOD +OXBLOODS +OXBOW +OXBOWS +OXCART +OXCARTS +OXEN +OXES +OXEYE +OXEYES +OXFORD +OXFORDS +OXHEART +OXHEARTS +OXID +OXIDABLE +OXIDANT +OXIDANTS +OXIDASE +OXIDASES +OXIDASIC +OXIDATE +OXIDATED +OXIDATES +OXIDATING +OXIDATION +OXIDATIONS +OXIDATIVE +OXIDATIVELY +OXIDE +OXIDES +OXIDIC +OXIDISE +OXIDISED +OXIDISER +OXIDISERS +OXIDISES +OXIDISING +OXIDIZABLE +OXIDIZE +OXIDIZED +OXIDIZER +OXIDIZERS +OXIDIZES +OXIDIZING +OXIDOREDUCTASE +OXIDOREDUCTASES +OXIDS +OXIM +OXIME +OXIMES +OXIMETER +OXIMETERS +OXIMETRIES +OXIMETRY +OXIMS +OXLIKE +OXLIP +OXLIPS +OXO +OXPECKER +OXPECKERS +OXTAIL +OXTAILS +OXTER +OXTERS +OXTONGUE +OXTONGUES +OXY +OXYACETYLENE +OXYACID +OXYACIDS +OXYCODONE +OXYCODONES +OXYGEN +OXYGENASE +OXYGENASES +OXYGENATE +OXYGENATED +OXYGENATES +OXYGENATING +OXYGENATION +OXYGENATIONS +OXYGENATOR +OXYGENATORS +OXYGENIC +OXYGENIZE +OXYGENIZED +OXYGENIZES +OXYGENIZING +OXYGENLESS +OXYGENOUS +OXYGENS +OXYHEMOGLOBIN +OXYHEMOGLOBINS +OXYHYDROGEN +OXYMORA +OXYMORON +OXYMORONIC +OXYMORONICALLY +OXYMORONS +OXYPHENBUTAZONE +OXYPHIL +OXYPHILE +OXYPHILES +OXYPHILIC +OXYPHILS +OXYSALT +OXYSALTS +OXYSOME +OXYSOMES +OXYTETRACYCLINE +OXYTOCIC +OXYTOCICS +OXYTOCIN +OXYTOCINS +OXYTONE +OXYTONES +OXYURIASES +OXYURIASIS +OY +OYER +OYERS +OYES +OYESSES +OYEZ +OYEZES +OYSTER +OYSTERCATCHER +OYSTERCATCHERS +OYSTERED +OYSTERER +OYSTERERS +OYSTERING +OYSTERINGS +OYSTERMAN +OYSTERMEN +OYSTERS +OZALID +OZALIDS +OZOCERITE +OZOCERITES +OZOKERITE +OZOKERITES +OZONATE +OZONATED +OZONATES +OZONATING +OZONATION +OZONATIONS +OZONE +OZONES +OZONIC +OZONIDE +OZONIDES +OZONISE +OZONISED +OZONISES +OZONISING +OZONIZATION +OZONIZATIONS +OZONIZE +OZONIZED +OZONIZER +OZONIZERS +OZONIZES +OZONIZING +OZONOSPHERE +OZONOSPHERES +OZONOUS +PA +PABLUM +PABLUMS +PABULAR +PABULUM +PABULUMS +PAC +PACA +PACAS +PACE +PACED +PACEMAKER +PACEMAKERS +PACEMAKING +PACEMAKINGS +PACER +PACERS +PACES +PACESETTER +PACESETTERS +PACESETTING +PACEY +PACHA +PACHADOM +PACHADOMS +PACHALIC +PACHALICS +PACHAS +PACHINKO +PACHINKOS +PACHISI +PACHISIS +PACHOULI +PACHOULIS +PACHUCO +PACHUCOS +PACHYDERM +PACHYDERMATOUS +PACHYDERMS +PACHYSANDRA +PACHYSANDRAS +PACHYTENE +PACHYTENES +PACIER +PACIEST +PACIFIABLE +PACIFIC +PACIFICAL +PACIFICALLY +PACIFICATION +PACIFICATIONS +PACIFICATOR +PACIFICATORS +PACIFICISM +PACIFICISMS +PACIFICIST +PACIFICISTS +PACIFIED +PACIFIER +PACIFIERS +PACIFIES +PACIFISM +PACIFISMS +PACIFIST +PACIFISTIC +PACIFISTICALLY +PACIFISTS +PACIFY +PACIFYING +PACING +PACK +PACKABILITIES +PACKABILITY +PACKABLE +PACKAGE +PACKAGED +PACKAGER +PACKAGERS +PACKAGES +PACKAGING +PACKAGINGS +PACKBOARD +PACKBOARDS +PACKED +PACKER +PACKERS +PACKET +PACKETED +PACKETING +PACKETS +PACKHORSE +PACKHORSES +PACKING +PACKINGHOUSE +PACKINGHOUSES +PACKINGS +PACKLY +PACKMAN +PACKMEN +PACKNESS +PACKNESSES +PACKS +PACKSACK +PACKSACKS +PACKSADDLE +PACKSADDLES +PACKTHREAD +PACKTHREADS +PACKWAX +PACKWAXES +PACLITAXEL +PACLITAXELS +PACS +PACT +PACTION +PACTIONS +PACTS +PACY +PAD +PADAUK +PADAUKS +PADDED +PADDER +PADDERS +PADDIES +PADDING +PADDINGS +PADDLE +PADDLEBALL +PADDLEBALLS +PADDLEBOARD +PADDLEBOARDS +PADDLEBOAT +PADDLEBOATS +PADDLED +PADDLEFISH +PADDLEFISHES +PADDLER +PADDLERS +PADDLES +PADDLING +PADDLINGS +PADDOCK +PADDOCKED +PADDOCKING +PADDOCKS +PADDY +PADDYWACK +PADDYWACKED +PADDYWACKING +PADDYWACKS +PADI +PADIS +PADISHAH +PADISHAHS +PADLE +PADLES +PADLOCK +PADLOCKED +PADLOCKING +PADLOCKS +PADNAG +PADNAGS +PADOUK +PADOUKS +PADRE +PADRES +PADRI +PADRONE +PADRONES +PADRONI +PADRONISM +PADRONISMS +PADS +PADSHAH +PADSHAHS +PADUASOY +PADUASOYS +PAEAN +PAEANISM +PAEANISMS +PAEANS +PAEDIATRIC +PAEDIATRICIAN +PAEDIATRICIANS +PAEDIATRICS +PAEDOGENESES +PAEDOGENESIS +PAEDOGENETIC +PAEDOGENIC +PAEDOMORPHIC +PAEDOMORPHISM +PAEDOMORPHISMS +PAEDOMORPHOSES +PAEDOMORPHOSIS +PAELLA +PAELLAS +PAEON +PAEONS +PAESAN +PAESANI +PAESANO +PAESANOS +PAESANS +PAGAN +PAGANDOM +PAGANDOMS +PAGANISE +PAGANISED +PAGANISES +PAGANISH +PAGANISING +PAGANISM +PAGANISMS +PAGANIST +PAGANISTS +PAGANIZE +PAGANIZED +PAGANIZER +PAGANIZERS +PAGANIZES +PAGANIZING +PAGANS +PAGE +PAGEANT +PAGEANTRIES +PAGEANTRY +PAGEANTS +PAGEBOY +PAGEBOYS +PAGED +PAGEFUL +PAGEFULS +PAGER +PAGERS +PAGES +PAGINAL +PAGINATE +PAGINATED +PAGINATES +PAGINATING +PAGINATION +PAGINATIONS +PAGING +PAGINGS +PAGOD +PAGODA +PAGODAS +PAGODS +PAGURIAN +PAGURIANS +PAGURID +PAGURIDS +PAH +PAHLAVI +PAHLAVIS +PAHOEHOE +PAHOEHOES +PAID +PAIK +PAIKED +PAIKING +PAIKS +PAIL +PAILFUL +PAILFULS +PAILLARD +PAILLARDS +PAILLASSE +PAILLASSES +PAILLETTE +PAILLETTES +PAILS +PAILSFUL +PAIN +PAINCH +PAINCHES +PAINED +PAINFUL +PAINFULLER +PAINFULLEST +PAINFULLY +PAINFULNESS +PAINFULNESSES +PAINING +PAINKILLER +PAINKILLERS +PAINKILLING +PAINLESS +PAINLESSLY +PAINLESSNESS +PAINLESSNESSES +PAINS +PAINSTAKING +PAINSTAKINGLY +PAINSTAKINGS +PAINT +PAINTABLE +PAINTBALL +PAINTBALLS +PAINTBRUSH +PAINTBRUSHES +PAINTED +PAINTER +PAINTERLINESS +PAINTERLINESSES +PAINTERLY +PAINTERS +PAINTIER +PAINTIEST +PAINTING +PAINTINGS +PAINTS +PAINTWORK +PAINTWORKS +PAINTY +PAIR +PAIRED +PAIRING +PAIRINGS +PAIRS +PAISA +PAISAN +PAISANA +PAISANAS +PAISANO +PAISANOS +PAISANS +PAISAS +PAISE +PAISLEY +PAISLEYS +PAJAMA +PAJAMAED +PAJAMAS +PAKEHA +PAKEHAS +PAKORA +PAKORAS +PAL +PALABRA +PALABRAS +PALACE +PALACED +PALACES +PALADIN +PALADINS +PALAESTRA +PALAESTRAE +PALAESTRAS +PALAIS +PALANKEEN +PALANKEENS +PALANQUIN +PALANQUINS +PALAPA +PALAPAS +PALATABILITIES +PALATABILITY +PALATABLE +PALATABLENESS +PALATABLENESSES +PALATABLY +PALATAL +PALATALIZATION +PALATALIZATIONS +PALATALIZE +PALATALIZED +PALATALIZES +PALATALIZING +PALATALLY +PALATALS +PALATE +PALATES +PALATIAL +PALATIALLY +PALATIALNESS +PALATIALNESSES +PALATINATE +PALATINATES +PALATINE +PALATINES +PALAVER +PALAVERED +PALAVERER +PALAVERERS +PALAVERING +PALAVERS +PALAZZI +PALAZZO +PALAZZOS +PALE +PALEA +PALEAE +PALEAL +PALEATE +PALED +PALEFACE +PALEFACES +PALELY +PALENESS +PALENESSES +PALEOBIOLOGIC +PALEOBIOLOGICAL +PALEOBIOLOGIES +PALEOBIOLOGIST +PALEOBIOLOGISTS +PALEOBIOLOGY +PALEOBOTANIC +PALEOBOTANICAL +PALEOBOTANIES +PALEOBOTANIST +PALEOBOTANISTS +PALEOBOTANY +PALEOCENE +PALEOECOLOGIC +PALEOECOLOGICAL +PALEOECOLOGIES +PALEOECOLOGIST +PALEOECOLOGISTS +PALEOECOLOGY +PALEOGENE +PALEOGEOGRAPHIC +PALEOGEOGRAPHY +PALEOGRAPHER +PALEOGRAPHERS +PALEOGRAPHIC +PALEOGRAPHICAL +PALEOGRAPHIES +PALEOGRAPHY +PALEOLITH +PALEOLITHS +PALEOLOGIES +PALEOLOGY +PALEOMAGNETIC +PALEOMAGNETISM +PALEOMAGNETISMS +PALEOMAGNETIST +PALEOMAGNETISTS +PALEONTOLOGIC +PALEONTOLOGICAL +PALEONTOLOGIES +PALEONTOLOGIST +PALEONTOLOGISTS +PALEONTOLOGY +PALEOPATHOLOGY +PALEOSOL +PALEOSOLS +PALEOZOIC +PALEOZOOLOGICAL +PALEOZOOLOGIES +PALEOZOOLOGIST +PALEOZOOLOGISTS +PALEOZOOLOGY +PALER +PALES +PALEST +PALESTRA +PALESTRAE +PALESTRAL +PALESTRAS +PALET +PALETOT +PALETOTS +PALETS +PALETTE +PALETTES +PALEWAYS +PALEWISE +PALFREY +PALFREYS +PALIER +PALIEST +PALIKAR +PALIKARS +PALIMONIES +PALIMONY +PALIMPSEST +PALIMPSESTS +PALINDROME +PALINDROMES +PALINDROMIC +PALINDROMIST +PALINDROMISTS +PALING +PALINGENESES +PALINGENESIS +PALINGENETIC +PALINGS +PALINODE +PALINODES +PALISADE +PALISADED +PALISADES +PALISADING +PALISH +PALL +PALLADIA +PALLADIC +PALLADIUM +PALLADIUMS +PALLADOUS +PALLBEARER +PALLBEARERS +PALLED +PALLET +PALLETED +PALLETING +PALLETISE +PALLETISED +PALLETISES +PALLETISING +PALLETIZATION +PALLETIZATIONS +PALLETIZE +PALLETIZED +PALLETIZER +PALLETIZERS +PALLETIZES +PALLETIZING +PALLETS +PALLETTE +PALLETTES +PALLIA +PALLIAL +PALLIASSE +PALLIASSES +PALLIATE +PALLIATED +PALLIATES +PALLIATING +PALLIATION +PALLIATIONS +PALLIATIVE +PALLIATIVELY +PALLIATIVES +PALLIATOR +PALLIATORS +PALLID +PALLIDLY +PALLIDNESS +PALLIDNESSES +PALLIER +PALLIEST +PALLING +PALLIUM +PALLIUMS +PALLOR +PALLORS +PALLS +PALLY +PALM +PALMAR +PALMARY +PALMATE +PALMATED +PALMATELY +PALMATION +PALMATIONS +PALMED +PALMER +PALMERS +PALMERWORM +PALMERWORMS +PALMETTE +PALMETTES +PALMETTO +PALMETTOES +PALMETTOS +PALMFUL +PALMFULS +PALMIER +PALMIEST +PALMING +PALMIST +PALMISTER +PALMISTERS +PALMISTRIES +PALMISTRY +PALMISTS +PALMITATE +PALMITATES +PALMITIN +PALMITINS +PALMLIKE +PALMS +PALMTOP +PALMTOPS +PALMY +PALMYRA +PALMYRAS +PALOMINO +PALOMINOS +PALOOKA +PALOOKAS +PALOVERDE +PALOVERDES +PALP +PALPABILITIES +PALPABILITY +PALPABLE +PALPABLY +PALPAL +PALPATE +PALPATED +PALPATES +PALPATING +PALPATION +PALPATIONS +PALPATOR +PALPATORS +PALPATORY +PALPEBRA +PALPEBRAE +PALPEBRAL +PALPEBRAS +PALPED +PALPI +PALPING +PALPITANT +PALPITATE +PALPITATED +PALPITATES +PALPITATING +PALPITATION +PALPITATIONS +PALPS +PALPUS +PALS +PALSGRAVE +PALSGRAVES +PALSHIP +PALSHIPS +PALSIED +PALSIES +PALSY +PALSYING +PALSYLIKE +PALTER +PALTERED +PALTERER +PALTERERS +PALTERING +PALTERS +PALTRIER +PALTRIEST +PALTRILY +PALTRINESS +PALTRINESSES +PALTRY +PALUDAL +PALUDISM +PALUDISMS +PALY +PALYNOLOGIC +PALYNOLOGICAL +PALYNOLOGICALLY +PALYNOLOGIES +PALYNOLOGIST +PALYNOLOGISTS +PALYNOLOGY +PAM +PAMPA +PAMPAS +PAMPEAN +PAMPEANS +PAMPER +PAMPERED +PAMPERER +PAMPERERS +PAMPERING +PAMPERO +PAMPEROS +PAMPERS +PAMPHLET +PAMPHLETEER +PAMPHLETEERED +PAMPHLETEERING +PAMPHLETEERS +PAMPHLETS +PAMS +PAN +PANACEA +PANACEAN +PANACEAS +PANACHE +PANACHES +PANADA +PANADAS +PANAMA +PANAMAS +PANATELA +PANATELAS +PANATELLA +PANATELLAS +PANBROIL +PANBROILED +PANBROILING +PANBROILS +PANCAKE +PANCAKED +PANCAKES +PANCAKING +PANCETTA +PANCETTAS +PANCHAX +PANCHAXES +PANCHROMATIC +PANCRATIA +PANCRATIC +PANCRATIUM +PANCRATIUMS +PANCREAS +PANCREASES +PANCREATECTOMY +PANCREATIC +PANCREATIN +PANCREATINS +PANCREATITIDES +PANCREATITIS +PANCREOZYMIN +PANCREOZYMINS +PANCYTOPENIA +PANCYTOPENIAS +PANDA +PANDANI +PANDANUS +PANDANUSES +PANDAS +PANDECT +PANDECTS +PANDEMIC +PANDEMICS +PANDEMONIUM +PANDEMONIUMS +PANDER +PANDERED +PANDERER +PANDERERS +PANDERING +PANDERS +PANDIED +PANDIES +PANDIT +PANDITS +PANDOOR +PANDOORS +PANDORA +PANDORAS +PANDORE +PANDORES +PANDOUR +PANDOURS +PANDOWDIES +PANDOWDY +PANDURA +PANDURAS +PANDURATE +PANDY +PANDYING +PANE +PANED +PANEGYRIC +PANEGYRICAL +PANEGYRICALLY +PANEGYRICS +PANEGYRIST +PANEGYRISTS +PANEL +PANELED +PANELESS +PANELING +PANELINGS +PANELIST +PANELISTS +PANELIZED +PANELLED +PANELLING +PANELLINGS +PANELS +PANES +PANETELA +PANETELAS +PANETELLA +PANETELLAS +PANETTONE +PANETTONES +PANETTONI +PANFISH +PANFISHES +PANFRIED +PANFRIES +PANFRY +PANFRYING +PANFUL +PANFULS +PANG +PANGA +PANGAS +PANGED +PANGEN +PANGENE +PANGENES +PANGENESES +PANGENESIS +PANGENETIC +PANGENS +PANGING +PANGOLIN +PANGOLINS +PANGRAM +PANGRAMS +PANGS +PANHANDLE +PANHANDLED +PANHANDLER +PANHANDLERS +PANHANDLES +PANHANDLING +PANHUMAN +PANIC +PANICALLY +PANICKED +PANICKIER +PANICKIEST +PANICKING +PANICKY +PANICLE +PANICLED +PANICLES +PANICS +PANICULATE +PANICUM +PANICUMS +PANIER +PANIERS +PANINI +PANINO +PANJANDRA +PANJANDRUM +PANJANDRUMS +PANLEUKOPENIA +PANLEUKOPENIAS +PANMICTIC +PANMIXES +PANMIXIA +PANMIXIAS +PANMIXIS +PANNE +PANNED +PANNER +PANNERS +PANNES +PANNIER +PANNIERED +PANNIERS +PANNIKIN +PANNIKINS +PANNING +PANOCHA +PANOCHAS +PANOCHE +PANOCHES +PANOPLIED +PANOPLIES +PANOPLY +PANOPTIC +PANORAMA +PANORAMAS +PANORAMIC +PANORAMICALLY +PANPIPE +PANPIPES +PANS +PANSEXUAL +PANSEXUALITIES +PANSEXUALITY +PANSEXUALS +PANSIES +PANSOPHIC +PANSOPHIES +PANSOPHY +PANSY +PANT +PANTALET +PANTALETS +PANTALETTES +PANTALONE +PANTALONES +PANTALOON +PANTALOONS +PANTDRESS +PANTDRESSES +PANTECHNICON +PANTECHNICONS +PANTED +PANTHEISM +PANTHEISMS +PANTHEIST +PANTHEISTIC +PANTHEISTICAL +PANTHEISTICALLY +PANTHEISTS +PANTHEON +PANTHEONS +PANTHER +PANTHERS +PANTIE +PANTIES +PANTIHOSE +PANTILE +PANTILED +PANTILES +PANTING +PANTINGLY +PANTISOCRACIES +PANTISOCRACY +PANTISOCRATIC +PANTISOCRATICAL +PANTISOCRATIST +PANTISOCRATISTS +PANTO +PANTOFFLE +PANTOFFLES +PANTOFLE +PANTOFLES +PANTOGRAPH +PANTOGRAPHIC +PANTOGRAPHS +PANTOMIME +PANTOMIMED +PANTOMIMES +PANTOMIMIC +PANTOMIMING +PANTOMIMIST +PANTOMIMISTS +PANTOS +PANTOTHENATE +PANTOTHENATES +PANTOUM +PANTOUMS +PANTRIES +PANTROPIC +PANTROPICAL +PANTRY +PANTRYMAN +PANTRYMEN +PANTS +PANTSUIT +PANTSUITED +PANTSUITS +PANTY +PANTYHOSE +PANTYWAIST +PANTYWAISTS +PANZER +PANZERS +PAP +PAPA +PAPACIES +PAPACY +PAPADAM +PAPADAMS +PAPADOM +PAPADOMS +PAPADUM +PAPADUMS +PAPAIN +PAPAINS +PAPAL +PAPALLY +PAPARAZZI +PAPARAZZO +PAPAS +PAPAVERINE +PAPAVERINES +PAPAW +PAPAWS +PAPAYA +PAPAYAN +PAPAYAS +PAPER +PAPERBACK +PAPERBACKED +PAPERBACKS +PAPERBARK +PAPERBARKS +PAPERBOARD +PAPERBOARDS +PAPERBOUND +PAPERBOUNDS +PAPERBOY +PAPERBOYS +PAPERCLIP +PAPERCLIPS +PAPERED +PAPERER +PAPERERS +PAPERGIRL +PAPERGIRLS +PAPERHANGER +PAPERHANGERS +PAPERHANGING +PAPERHANGINGS +PAPERINESS +PAPERINESSES +PAPERING +PAPERLESS +PAPERMAKER +PAPERMAKERS +PAPERMAKING +PAPERMAKINGS +PAPERS +PAPERWEIGHT +PAPERWEIGHTS +PAPERWORK +PAPERWORKS +PAPERY +PAPETERIE +PAPETERIES +PAPHIAN +PAPHIANS +PAPILIONACEOUS +PAPILLA +PAPILLAE +PAPILLAR +PAPILLARY +PAPILLATE +PAPILLOMA +PAPILLOMAS +PAPILLOMATA +PAPILLOMATOUS +PAPILLOMAVIRUS +PAPILLON +PAPILLONS +PAPILLOSE +PAPILLOTE +PAPILLOTES +PAPISM +PAPISMS +PAPIST +PAPISTIC +PAPISTRIES +PAPISTRY +PAPISTS +PAPOOSE +PAPOOSES +PAPOVAVIRUS +PAPOVAVIRUSES +PAPPADAM +PAPPADAMS +PAPPI +PAPPIER +PAPPIES +PAPPIEST +PAPPOOSE +PAPPOOSES +PAPPOSE +PAPPOUS +PAPPUS +PAPPY +PAPRICA +PAPRICAS +PAPRIKA +PAPRIKAS +PAPS +PAPULA +PAPULAE +PAPULAR +PAPULE +PAPULES +PAPULOSE +PAPYRAL +PAPYRI +PAPYRIAN +PAPYRINE +PAPYROLOGIES +PAPYROLOGIST +PAPYROLOGISTS +PAPYROLOGY +PAPYRUS +PAPYRUSES +PAR +PARA +PARABIOSES +PARABIOSIS +PARABIOTIC +PARABIOTICALLY +PARABLAST +PARABLASTS +PARABLE +PARABLES +PARABOLA +PARABOLAS +PARABOLIC +PARABOLICALLY +PARABOLOID +PARABOLOIDAL +PARABOLOIDS +PARACHOR +PARACHORS +PARACHUTE +PARACHUTED +PARACHUTES +PARACHUTIC +PARACHUTING +PARACHUTIST +PARACHUTISTS +PARACLETE +PARACLETES +PARACRINE +PARADE +PARADED +PARADER +PARADERS +PARADES +PARADIDDLE +PARADIDDLES +PARADIGM +PARADIGMATIC +PARADIGMS +PARADING +PARADISAIC +PARADISAICAL +PARADISAICALLY +PARADISAL +PARADISE +PARADISES +PARADISIAC +PARADISIACAL +PARADISIACALLY +PARADISIAL +PARADISICAL +PARADOR +PARADORES +PARADORS +PARADOS +PARADOSES +PARADOX +PARADOXES +PARADOXICAL +PARADOXICALITY +PARADOXICALLY +PARADOXICALNESS +PARADROP +PARADROPPED +PARADROPPING +PARADROPS +PARAE +PARAESTHESIA +PARAESTHESIAS +PARAFFIN +PARAFFINE +PARAFFINED +PARAFFINES +PARAFFINIC +PARAFFINING +PARAFFINS +PARAFOIL +PARAFOILS +PARAFORM +PARAFORMS +PARAGENESES +PARAGENESIS +PARAGENETIC +PARAGENETICALLY +PARAGLIDE +PARAGLIDED +PARAGLIDES +PARAGLIDING +PARAGOGE +PARAGOGES +PARAGON +PARAGONED +PARAGONING +PARAGONS +PARAGRAPH +PARAGRAPHED +PARAGRAPHER +PARAGRAPHERS +PARAGRAPHIC +PARAGRAPHING +PARAGRAPHS +PARAINFLUENZA +PARAINFLUENZAS +PARAJOURNALISM +PARAJOURNALISMS +PARAKEET +PARAKEETS +PARAKITE +PARAKITES +PARALANGUAGE +PARALANGUAGES +PARALDEHYDE +PARALDEHYDES +PARALEGAL +PARALEGALS +PARALINGUISTIC +PARALINGUISTICS +PARALLACTIC +PARALLAX +PARALLAXES +PARALLEL +PARALLELED +PARALLELEPIPED +PARALLELEPIPEDS +PARALLELING +PARALLELISM +PARALLELISMS +PARALLELLED +PARALLELLING +PARALLELOGRAM +PARALLELOGRAMS +PARALLELS +PARALOGISM +PARALOGISMS +PARALYSE +PARALYSED +PARALYSES +PARALYSING +PARALYSIS +PARALYTIC +PARALYTICALLY +PARALYTICS +PARALYZATION +PARALYZATIONS +PARALYZE +PARALYZED +PARALYZER +PARALYZERS +PARALYZES +PARALYZING +PARALYZINGLY +PARAMAGNET +PARAMAGNETIC +PARAMAGNETISM +PARAMAGNETISMS +PARAMAGNETS +PARAMATTA +PARAMATTAS +PARAMECIA +PARAMECIUM +PARAMECIUMS +PARAMEDIC +PARAMEDICAL +PARAMEDICALS +PARAMEDICS +PARAMENT +PARAMENTA +PARAMENTS +PARAMETER +PARAMETERIZE +PARAMETERIZED +PARAMETERIZES +PARAMETERIZING +PARAMETERS +PARAMETRIC +PARAMETRICALLY +PARAMETRIZATION +PARAMETRIZE +PARAMETRIZED +PARAMETRIZES +PARAMETRIZING +PARAMILITARY +PARAMNESIA +PARAMNESIAS +PARAMO +PARAMORPH +PARAMORPHS +PARAMOS +PARAMOUNT +PARAMOUNTCIES +PARAMOUNTCY +PARAMOUNTLY +PARAMOUNTS +PARAMOUR +PARAMOURS +PARAMYLUM +PARAMYLUMS +PARAMYXOVIRUS +PARAMYXOVIRUSES +PARANG +PARANGS +PARANOEA +PARANOEAS +PARANOIA +PARANOIAC +PARANOIACS +PARANOIAS +PARANOIC +PARANOICALLY +PARANOICS +PARANOID +PARANOIDAL +PARANOIDS +PARANORMAL +PARANORMALITIES +PARANORMALITY +PARANORMALLY +PARANORMALS +PARANYMPH +PARANYMPHS +PARAPET +PARAPETED +PARAPETS +PARAPH +PARAPHERNALIA +PARAPHRASABLE +PARAPHRASE +PARAPHRASED +PARAPHRASER +PARAPHRASERS +PARAPHRASES +PARAPHRASING +PARAPHRASTIC +PARAPHS +PARAPHYSES +PARAPHYSIS +PARAPLEGIA +PARAPLEGIAS +PARAPLEGIC +PARAPLEGICS +PARAPODIA +PARAPODIAL +PARAPODIUM +PARAPSYCHOLOGY +PARAQUAT +PARAQUATS +PARAQUET +PARAQUETS +PARAROSANILINE +PARAROSANILINES +PARAS +PARASAIL +PARASAILED +PARASAILING +PARASAILINGS +PARASAILS +PARASANG +PARASANGS +PARASEXUAL +PARASEXUALITIES +PARASEXUALITY +PARASHAH +PARASHAHS +PARASHIOTH +PARASHOT +PARASHOTH +PARASITE +PARASITES +PARASITIC +PARASITICAL +PARASITICALLY +PARASITICIDAL +PARASITICIDE +PARASITICIDES +PARASITISE +PARASITISED +PARASITISES +PARASITISING +PARASITISM +PARASITISMS +PARASITIZATION +PARASITIZATIONS +PARASITIZE +PARASITIZED +PARASITIZES +PARASITIZING +PARASITOID +PARASITOIDS +PARASITOLOGIC +PARASITOLOGICAL +PARASITOLOGIES +PARASITOLOGIST +PARASITOLOGISTS +PARASITOLOGY +PARASITOSES +PARASITOSIS +PARASOL +PARASOLED +PARASOLS +PARASYMPATHETIC +PARASYNTHESES +PARASYNTHESIS +PARASYNTHETIC +PARATACTIC +PARATACTICAL +PARATACTICALLY +PARATAXES +PARATAXIS +PARATHION +PARATHIONS +PARATHORMONE +PARATHORMONES +PARATHYROID +PARATHYROIDS +PARATROOP +PARATROOPER +PARATROOPERS +PARATROOPS +PARATYPHOID +PARATYPHOIDS +PARAVANE +PARAVANES +PARAWING +PARAWINGS +PARAZOAN +PARAZOANS +PARBAKE +PARBAKED +PARBAKES +PARBAKING +PARBOIL +PARBOILED +PARBOILING +PARBOILS +PARBUCKLE +PARBUCKLED +PARBUCKLES +PARBUCKLING +PARCEL +PARCELED +PARCELING +PARCELLED +PARCELLING +PARCELS +PARCENARIES +PARCENARY +PARCENER +PARCENERS +PARCH +PARCHED +PARCHEESI +PARCHEESIS +PARCHES +PARCHESI +PARCHESIS +PARCHING +PARCHISI +PARCHISIS +PARCHMENT +PARCHMENTS +PARCLOSE +PARCLOSES +PARD +PARDAH +PARDAHS +PARDEE +PARDI +PARDIE +PARDINE +PARDNER +PARDNERS +PARDON +PARDONABLE +PARDONABLENESS +PARDONABLY +PARDONED +PARDONER +PARDONERS +PARDONING +PARDONS +PARDS +PARDY +PARE +PARECISM +PARECISMS +PARED +PAREGORIC +PAREGORICS +PAREIRA +PAREIRAS +PARENCHYMA +PARENCHYMAL +PARENCHYMAS +PARENCHYMATOUS +PARENT +PARENTAGE +PARENTAGES +PARENTAL +PARENTALLY +PARENTED +PARENTERAL +PARENTERALLY +PARENTHESES +PARENTHESIS +PARENTHESIZE +PARENTHESIZED +PARENTHESIZES +PARENTHESIZING +PARENTHETIC +PARENTHETICAL +PARENTHETICALLY +PARENTHOOD +PARENTHOODS +PARENTING +PARENTINGS +PARENTLESS +PARENTS +PAREO +PAREOS +PARER +PARERGA +PARERGON +PARERS +PARES +PARESES +PARESIS +PARESTHESIA +PARESTHESIAS +PARESTHETIC +PARETIC +PARETICS +PAREU +PAREUS +PAREVE +PARFAIT +PARFAITS +PARFLECHE +PARFLECHES +PARFLESH +PARFLESHES +PARFOCAL +PARFOCALITIES +PARFOCALITY +PARFOCALIZE +PARFOCALIZED +PARFOCALIZES +PARFOCALIZING +PARGE +PARGED +PARGES +PARGET +PARGETED +PARGETING +PARGETINGS +PARGETS +PARGETTED +PARGETTING +PARGING +PARGINGS +PARGO +PARGOS +PARGYLINE +PARGYLINES +PARHELIA +PARHELIC +PARHELION +PARIAH +PARIAHS +PARIAN +PARIANS +PARIES +PARIETAL +PARIETALS +PARIETES +PARING +PARINGS +PARIS +PARISES +PARISH +PARISHES +PARISHIONER +PARISHIONERS +PARITIES +PARITY +PARK +PARKA +PARKADE +PARKADES +PARKAS +PARKED +PARKER +PARKERS +PARKETTE +PARKETTES +PARKING +PARKINGS +PARKINSONIAN +PARKINSONISM +PARKINSONISMS +PARKLAND +PARKLANDS +PARKLIKE +PARKS +PARKWAY +PARKWAYS +PARLANCE +PARLANCES +PARLANDO +PARLANTE +PARLAY +PARLAYED +PARLAYING +PARLAYS +PARLE +PARLED +PARLES +PARLEY +PARLEYED +PARLEYER +PARLEYERS +PARLEYING +PARLEYS +PARLIAMENT +PARLIAMENTARIAN +PARLIAMENTARY +PARLIAMENTS +PARLING +PARLOR +PARLORS +PARLOUR +PARLOURS +PARLOUS +PARLOUSLY +PARMESAN +PARMESANS +PARMIGIANA +PARMIGIANO +PAROCHIAL +PAROCHIALISM +PAROCHIALISMS +PAROCHIALLY +PARODIC +PARODICAL +PARODIED +PARODIES +PARODIST +PARODISTIC +PARODISTS +PARODOI +PARODOS +PARODY +PARODYING +PAROL +PAROLABLE +PAROLE +PAROLED +PAROLEE +PAROLEES +PAROLES +PAROLING +PAROLS +PARONOMASIA +PARONOMASIAS +PARONOMASTIC +PARONYM +PARONYMIC +PARONYMOUS +PARONYMS +PAROQUET +PAROQUETS +PAROSMIA +PAROSMIAS +PAROTIC +PAROTID +PAROTIDS +PAROTITIC +PAROTITIS +PAROTITISES +PAROTOID +PAROTOIDS +PAROUS +PAROXYSM +PAROXYSMAL +PAROXYSMS +PARQUET +PARQUETED +PARQUETING +PARQUETRIES +PARQUETRY +PARQUETS +PARR +PARRAKEET +PARRAKEETS +PARRAL +PARRALS +PARRED +PARREL +PARRELS +PARRICIDAL +PARRICIDE +PARRICIDES +PARRIDGE +PARRIDGES +PARRIED +PARRIER +PARRIERS +PARRIES +PARRING +PARRITCH +PARRITCHES +PARROKET +PARROKETS +PARROT +PARROTED +PARROTER +PARROTERS +PARROTING +PARROTS +PARROTY +PARRS +PARRY +PARRYING +PARS +PARSABLE +PARSE +PARSEC +PARSECS +PARSED +PARSER +PARSERS +PARSES +PARSIMONIES +PARSIMONIOUS +PARSIMONIOUSLY +PARSIMONY +PARSING +PARSLEY +PARSLEYED +PARSLEYS +PARSLIED +PARSNIP +PARSNIPS +PARSON +PARSONAGE +PARSONAGES +PARSONIC +PARSONISH +PARSONS +PART +PARTAKE +PARTAKEN +PARTAKER +PARTAKERS +PARTAKES +PARTAKING +PARTAN +PARTANS +PARTED +PARTERRE +PARTERRES +PARTHENOCARPIC +PARTHENOCARPIES +PARTHENOCARPY +PARTHENOGENESES +PARTHENOGENESIS +PARTHENOGENETIC +PARTIAL +PARTIALITIES +PARTIALITY +PARTIALLY +PARTIALS +PARTIBILITIES +PARTIBILITY +PARTIBLE +PARTICIPANT +PARTICIPANTS +PARTICIPATE +PARTICIPATED +PARTICIPATES +PARTICIPATING +PARTICIPATION +PARTICIPATIONAL +PARTICIPATIONS +PARTICIPATIVE +PARTICIPATOR +PARTICIPATORS +PARTICIPATORY +PARTICIPIAL +PARTICIPIALLY +PARTICIPLE +PARTICIPLES +PARTICLE +PARTICLEBOARD +PARTICLEBOARDS +PARTICLES +PARTICULAR +PARTICULARISE +PARTICULARISED +PARTICULARISES +PARTICULARISING +PARTICULARISM +PARTICULARISMS +PARTICULARIST +PARTICULARISTIC +PARTICULARISTS +PARTICULARITIES +PARTICULARITY +PARTICULARIZE +PARTICULARIZED +PARTICULARIZES +PARTICULARIZING +PARTICULARLY +PARTICULARS +PARTICULATE +PARTICULATES +PARTIED +PARTIER +PARTIERS +PARTIES +PARTING +PARTINGS +PARTISAN +PARTISANLY +PARTISANS +PARTISANSHIP +PARTISANSHIPS +PARTITA +PARTITAS +PARTITE +PARTITION +PARTITIONED +PARTITIONER +PARTITIONERS +PARTITIONING +PARTITIONIST +PARTITIONISTS +PARTITIONS +PARTITIVE +PARTITIVELY +PARTITIVES +PARTIZAN +PARTIZANS +PARTLET +PARTLETS +PARTLY +PARTNER +PARTNERED +PARTNERING +PARTNERLESS +PARTNERS +PARTNERSHIP +PARTNERSHIPS +PARTON +PARTONS +PARTOOK +PARTRIDGE +PARTRIDGEBERRY +PARTRIDGES +PARTS +PARTURIENT +PARTURIENTS +PARTURITION +PARTURITIONS +PARTWAY +PARTY +PARTYER +PARTYERS +PARTYGOER +PARTYGOERS +PARTYING +PARURA +PARURAS +PARURE +PARURES +PARVE +PARVENU +PARVENUE +PARVENUES +PARVENUS +PARVIS +PARVISE +PARVISES +PARVO +PARVOLIN +PARVOLINE +PARVOLINES +PARVOLINS +PARVOS +PARVOVIRUS +PARVOVIRUSES +PAS +PASCAL +PASCALS +PASCHAL +PASCHALS +PASE +PASEO +PASEOS +PASES +PASH +PASHA +PASHADOM +PASHADOMS +PASHALIC +PASHALICS +PASHALIK +PASHALIKS +PASHAS +PASHED +PASHES +PASHING +PASHMINA +PASHMINAS +PASODOBLE +PASODOBLES +PASQUEFLOWER +PASQUEFLOWERS +PASQUIL +PASQUILS +PASQUINADE +PASQUINADED +PASQUINADES +PASQUINADING +PASS +PASSABLE +PASSABLY +PASSACAGLIA +PASSACAGLIAS +PASSADE +PASSADES +PASSADO +PASSADOES +PASSADOS +PASSAGE +PASSAGED +PASSAGES +PASSAGEWAY +PASSAGEWAYS +PASSAGEWORK +PASSAGEWORKS +PASSAGING +PASSALONG +PASSALONGS +PASSANT +PASSBAND +PASSBANDS +PASSBOOK +PASSBOOKS +PASSE +PASSED +PASSEE +PASSEL +PASSELS +PASSEMENTERIE +PASSEMENTERIES +PASSENGER +PASSENGERS +PASSEPIED +PASSEPIEDS +PASSER +PASSERBY +PASSERINE +PASSERINES +PASSERS +PASSERSBY +PASSES +PASSIBLE +PASSIM +PASSING +PASSINGLY +PASSINGS +PASSION +PASSIONAL +PASSIONALS +PASSIONATE +PASSIONATELY +PASSIONATENESS +PASSIONFLOWER +PASSIONFLOWERS +PASSIONLESS +PASSIONS +PASSIVATE +PASSIVATED +PASSIVATES +PASSIVATING +PASSIVATION +PASSIVATIONS +PASSIVE +PASSIVELY +PASSIVENESS +PASSIVENESSES +PASSIVES +PASSIVISM +PASSIVISMS +PASSIVIST +PASSIVISTS +PASSIVITIES +PASSIVITY +PASSKEY +PASSKEYS +PASSLESS +PASSOVER +PASSOVERS +PASSPORT +PASSPORTS +PASSUS +PASSUSES +PASSWORD +PASSWORDS +PAST +PASTA +PASTALIKE +PASTAS +PASTE +PASTEBOARD +PASTEBOARDS +PASTED +PASTEDOWN +PASTEDOWNS +PASTEL +PASTELIST +PASTELISTS +PASTELLIST +PASTELLISTS +PASTELS +PASTER +PASTERN +PASTERNS +PASTERS +PASTES +PASTEUP +PASTEUPS +PASTEURISE +PASTEURISED +PASTEURISES +PASTEURISING +PASTEURIZATION +PASTEURIZATIONS +PASTEURIZE +PASTEURIZED +PASTEURIZER +PASTEURIZERS +PASTEURIZES +PASTEURIZING +PASTICCI +PASTICCIO +PASTICCIOS +PASTICHE +PASTICHES +PASTICHEUR +PASTICHEURS +PASTIE +PASTIER +PASTIES +PASTIEST +PASTIL +PASTILLE +PASTILLES +PASTILS +PASTIME +PASTIMES +PASTINA +PASTINAS +PASTINESS +PASTINESSES +PASTING +PASTIS +PASTISES +PASTITSIO +PASTITSIOS +PASTITSO +PASTITSOS +PASTLESS +PASTNESS +PASTNESSES +PASTOR +PASTORAL +PASTORALE +PASTORALES +PASTORALI +PASTORALISM +PASTORALISMS +PASTORALIST +PASTORALISTS +PASTORALLY +PASTORALNESS +PASTORALNESSES +PASTORALS +PASTORATE +PASTORATES +PASTORED +PASTORING +PASTORIUM +PASTORIUMS +PASTORLY +PASTORS +PASTORSHIP +PASTORSHIPS +PASTRAMI +PASTRAMIS +PASTRIES +PASTROMI +PASTROMIS +PASTRY +PASTS +PASTURAGE +PASTURAGES +PASTURAL +PASTURE +PASTURED +PASTURELAND +PASTURELANDS +PASTURER +PASTURERS +PASTURES +PASTURING +PASTY +PAT +PATACA +PATACAS +PATAGIA +PATAGIAL +PATAGIUM +PATAMAR +PATAMARS +PATCH +PATCHABLE +PATCHBOARD +PATCHBOARDS +PATCHED +PATCHER +PATCHERS +PATCHES +PATCHIER +PATCHIEST +PATCHILY +PATCHINESS +PATCHINESSES +PATCHING +PATCHOULI +PATCHOULIES +PATCHOULIS +PATCHOULY +PATCHWORK +PATCHWORKED +PATCHWORKING +PATCHWORKS +PATCHY +PATE +PATED +PATELLA +PATELLAE +PATELLAR +PATELLAS +PATELLATE +PATELLIFORM +PATEN +PATENCIES +PATENCY +PATENS +PATENT +PATENTABILITIES +PATENTABILITY +PATENTABLE +PATENTED +PATENTEE +PATENTEES +PATENTING +PATENTLY +PATENTOR +PATENTORS +PATENTS +PATER +PATERFAMILIAS +PATERNAL +PATERNALISM +PATERNALISMS +PATERNALIST +PATERNALISTIC +PATERNALISTS +PATERNALLY +PATERNITIES +PATERNITY +PATERNOSTER +PATERNOSTERS +PATERS +PATES +PATH +PATHBREAKING +PATHETIC +PATHETICAL +PATHETICALLY +PATHFINDER +PATHFINDERS +PATHFINDING +PATHFINDINGS +PATHLESS +PATHLESSNESS +PATHLESSNESSES +PATHOBIOLOGIES +PATHOBIOLOGY +PATHOGEN +PATHOGENE +PATHOGENES +PATHOGENESES +PATHOGENESIS +PATHOGENETIC +PATHOGENIC +PATHOGENICITIES +PATHOGENICITY +PATHOGENIES +PATHOGENS +PATHOGENY +PATHOGNOMONIC +PATHOLOGIC +PATHOLOGICAL +PATHOLOGICALLY +PATHOLOGIES +PATHOLOGIST +PATHOLOGISTS +PATHOLOGY +PATHOPHYSIOLOGY +PATHOS +PATHOSES +PATHS +PATHWAY +PATHWAYS +PATIENCE +PATIENCES +PATIENT +PATIENTER +PATIENTEST +PATIENTLY +PATIENTS +PATIN +PATINA +PATINAE +PATINAED +PATINAS +PATINATE +PATINATED +PATINATES +PATINATING +PATINATION +PATINATIONS +PATINE +PATINED +PATINES +PATINING +PATINIZE +PATINIZED +PATINIZES +PATINIZING +PATINS +PATIO +PATIOS +PATISSERIE +PATISSERIES +PATISSIER +PATISSIERS +PATLY +PATNESS +PATNESSES +PATOIS +PATOOTIE +PATOOTIES +PATRESFAMILIAS +PATRIARCH +PATRIARCHAL +PATRIARCHATE +PATRIARCHATES +PATRIARCHIES +PATRIARCHS +PATRIARCHY +PATRIATE +PATRIATED +PATRIATES +PATRIATING +PATRICIAN +PATRICIANS +PATRICIATE +PATRICIATES +PATRICIDAL +PATRICIDE +PATRICIDES +PATRILINEAL +PATRILINIES +PATRILINY +PATRIMONIAL +PATRIMONIES +PATRIMONY +PATRIOT +PATRIOTIC +PATRIOTICALLY +PATRIOTISM +PATRIOTISMS +PATRIOTS +PATRISTIC +PATRISTICAL +PATRISTICS +PATROL +PATROLLED +PATROLLER +PATROLLERS +PATROLLING +PATROLMAN +PATROLMEN +PATROLS +PATRON +PATRONAGE +PATRONAGES +PATRONAL +PATRONESS +PATRONESSES +PATRONISE +PATRONISED +PATRONISES +PATRONISING +PATRONIZATION +PATRONIZATIONS +PATRONIZE +PATRONIZED +PATRONIZES +PATRONIZING +PATRONIZINGLY +PATRONLY +PATRONS +PATRONYMIC +PATRONYMICS +PATROON +PATROONS +PATS +PATSIES +PATSY +PATTAMAR +PATTAMARS +PATTED +PATTEE +PATTEN +PATTENED +PATTENS +PATTER +PATTERED +PATTERER +PATTERERS +PATTERING +PATTERN +PATTERNED +PATTERNING +PATTERNINGS +PATTERNLESS +PATTERNS +PATTERS +PATTIE +PATTIES +PATTING +PATTY +PATTYPAN +PATTYPANS +PATULENT +PATULOUS +PATY +PATZER +PATZERS +PAUCITIES +PAUCITY +PAUGHTY +PAULDRON +PAULDRONS +PAULIN +PAULINS +PAULOWNIA +PAULOWNIAS +PAUNCH +PAUNCHED +PAUNCHES +PAUNCHIER +PAUNCHIEST +PAUNCHINESS +PAUNCHINESSES +PAUNCHY +PAUPER +PAUPERED +PAUPERING +PAUPERISM +PAUPERISMS +PAUPERIZE +PAUPERIZED +PAUPERIZES +PAUPERIZING +PAUPERS +PAUPIETTE +PAUPIETTES +PAUSAL +PAUSE +PAUSED +PAUSER +PAUSERS +PAUSES +PAUSING +PAVAN +PAVANE +PAVANES +PAVANS +PAVE +PAVED +PAVEED +PAVEMENT +PAVEMENTS +PAVER +PAVERS +PAVES +PAVID +PAVILION +PAVILIONED +PAVILIONING +PAVILIONS +PAVILLON +PAVILLONS +PAVIN +PAVING +PAVINGS +PAVINS +PAVIOR +PAVIORS +PAVIOUR +PAVIOURS +PAVIS +PAVISE +PAVISER +PAVISERS +PAVISES +PAVISSE +PAVISSES +PAVLOVA +PAVLOVAS +PAVONINE +PAW +PAWED +PAWER +PAWERS +PAWING +PAWKIER +PAWKIEST +PAWKILY +PAWKINESS +PAWKINESSES +PAWKY +PAWL +PAWLS +PAWN +PAWNABLE +PAWNAGE +PAWNAGES +PAWNBROKER +PAWNBROKERS +PAWNBROKING +PAWNBROKINGS +PAWNED +PAWNEE +PAWNEES +PAWNER +PAWNERS +PAWNING +PAWNOR +PAWNORS +PAWNS +PAWNSHOP +PAWNSHOPS +PAWPAW +PAWPAWS +PAWS +PAX +PAXES +PAXWAX +PAXWAXES +PAY +PAYABLE +PAYABLES +PAYABLY +PAYBACK +PAYBACKS +PAYCHECK +PAYCHECKS +PAYDAY +PAYDAYS +PAYED +PAYEE +PAYEES +PAYER +PAYERS +PAYGRADE +PAYGRADES +PAYING +PAYLOAD +PAYLOADS +PAYMASTER +PAYMASTERS +PAYMENT +PAYMENTS +PAYNIM +PAYNIMS +PAYOFF +PAYOFFS +PAYOLA +PAYOLAS +PAYOR +PAYORS +PAYOUT +PAYOUTS +PAYROLL +PAYROLLS +PAYS +PAZAZZ +PAZAZZES +PE +PEA +PEACE +PEACEABLE +PEACEABLENESS +PEACEABLENESSES +PEACEABLY +PEACED +PEACEFUL +PEACEFULLER +PEACEFULLEST +PEACEFULLY +PEACEFULNESS +PEACEFULNESSES +PEACEKEEPER +PEACEKEEPERS +PEACEKEEPING +PEACEKEEPINGS +PEACEMAKER +PEACEMAKERS +PEACEMAKING +PEACEMAKINGS +PEACENIK +PEACENIKS +PEACES +PEACETIME +PEACETIMES +PEACH +PEACHBLOW +PEACHBLOWS +PEACHED +PEACHER +PEACHERS +PEACHES +PEACHIER +PEACHIEST +PEACHING +PEACHY +PEACING +PEACOAT +PEACOATS +PEACOCK +PEACOCKED +PEACOCKIER +PEACOCKIEST +PEACOCKING +PEACOCKISH +PEACOCKS +PEACOCKY +PEAFOWL +PEAFOWLS +PEAG +PEAGE +PEAGES +PEAGS +PEAHEN +PEAHENS +PEAK +PEAKED +PEAKEDNESS +PEAKEDNESSES +PEAKIER +PEAKIEST +PEAKING +PEAKISH +PEAKLESS +PEAKLIKE +PEAKS +PEAKY +PEAL +PEALED +PEALIKE +PEALING +PEALS +PEAN +PEANS +PEANUT +PEANUTS +PEAR +PEARL +PEARLASH +PEARLASHES +PEARLED +PEARLER +PEARLERS +PEARLESCENCE +PEARLESCENCES +PEARLESCENT +PEARLIER +PEARLIEST +PEARLING +PEARLITE +PEARLITES +PEARLITIC +PEARLIZED +PEARLS +PEARLY +PEARMAIN +PEARMAINS +PEARS +PEART +PEARTER +PEARTEST +PEARTLY +PEARTNESS +PEARTNESSES +PEARWOOD +PEARWOODS +PEAS +PEASANT +PEASANTRIES +PEASANTRY +PEASANTS +PEASCOD +PEASCODS +PEASE +PEASECOD +PEASECODS +PEASEN +PEASES +PEASHOOTER +PEASHOOTERS +PEASOUPER +PEASOUPERS +PEAT +PEATIER +PEATIEST +PEATS +PEATY +PEAVEY +PEAVEYS +PEAVIES +PEAVY +PEBBLE +PEBBLED +PEBBLES +PEBBLIER +PEBBLIEST +PEBBLING +PEBBLY +PEC +PECAN +PECANS +PECCABLE +PECCADILLO +PECCADILLOES +PECCADILLOS +PECCANCIES +PECCANCY +PECCANT +PECCANTLY +PECCARIES +PECCARY +PECCAVI +PECCAVIS +PECH +PECHAN +PECHANS +PECHED +PECHING +PECHS +PECK +PECKED +PECKER +PECKERS +PECKERWOOD +PECKERWOODS +PECKIER +PECKIEST +PECKING +PECKISH +PECKISHLY +PECKS +PECKY +PECORINI +PECORINO +PECORINOS +PECS +PECTASE +PECTASES +PECTATE +PECTATES +PECTEN +PECTENS +PECTIC +PECTIN +PECTINACEOUS +PECTINATE +PECTINATION +PECTINATIONS +PECTINES +PECTINESTERASE +PECTINESTERASES +PECTINOUS +PECTINS +PECTIZE +PECTIZED +PECTIZES +PECTIZING +PECTORAL +PECTORALS +PECULATE +PECULATED +PECULATES +PECULATING +PECULATION +PECULATIONS +PECULATOR +PECULATORS +PECULIA +PECULIAR +PECULIARITIES +PECULIARITY +PECULIARLY +PECULIARS +PECULIUM +PECUNIARILY +PECUNIARY +PED +PEDAGOG +PEDAGOGIC +PEDAGOGICAL +PEDAGOGICALLY +PEDAGOGICS +PEDAGOGIES +PEDAGOGS +PEDAGOGUE +PEDAGOGUES +PEDAGOGY +PEDAL +PEDALED +PEDALER +PEDALERS +PEDALFER +PEDALFERS +PEDALIER +PEDALIERS +PEDALING +PEDALLED +PEDALLER +PEDALLERS +PEDALLING +PEDALO +PEDALOS +PEDALS +PEDANT +PEDANTIC +PEDANTICALLY +PEDANTRIES +PEDANTRY +PEDANTS +PEDATE +PEDATELY +PEDDLE +PEDDLED +PEDDLER +PEDDLERIES +PEDDLERS +PEDDLERY +PEDDLES +PEDDLING +PEDERAST +PEDERASTIC +PEDERASTIES +PEDERASTS +PEDERASTY +PEDES +PEDESTAL +PEDESTALED +PEDESTALING +PEDESTALLED +PEDESTALLING +PEDESTALS +PEDESTRIAN +PEDESTRIANISM +PEDESTRIANISMS +PEDESTRIANS +PEDIATRIC +PEDIATRICIAN +PEDIATRICIANS +PEDIATRICS +PEDIATRIST +PEDIATRISTS +PEDICAB +PEDICABS +PEDICEL +PEDICELLATE +PEDICELS +PEDICLE +PEDICLED +PEDICLES +PEDICULAR +PEDICULATE +PEDICULATES +PEDICULOSES +PEDICULOSIS +PEDICULOUS +PEDICURE +PEDICURED +PEDICURES +PEDICURING +PEDICURIST +PEDICURISTS +PEDIFORM +PEDIGREE +PEDIGREED +PEDIGREES +PEDIMENT +PEDIMENTAL +PEDIMENTED +PEDIMENTS +PEDIPALP +PEDIPALPS +PEDLAR +PEDLARIES +PEDLARS +PEDLARY +PEDLER +PEDLERIES +PEDLERS +PEDLERY +PEDOCAL +PEDOCALIC +PEDOCALS +PEDOGENESES +PEDOGENESIS +PEDOGENETIC +PEDOGENIC +PEDOLOGIC +PEDOLOGICAL +PEDOLOGIES +PEDOLOGIST +PEDOLOGISTS +PEDOLOGY +PEDOMETER +PEDOMETERS +PEDOPHILE +PEDOPHILES +PEDOPHILIA +PEDOPHILIAC +PEDOPHILIAS +PEDOPHILIC +PEDORTHIC +PEDRO +PEDROS +PEDS +PEDUNCLE +PEDUNCLED +PEDUNCLES +PEDUNCULAR +PEDUNCULATE +PEDUNCULATED +PEE +PEEBEEN +PEEBEENS +PEED +PEEING +PEEK +PEEKABOO +PEEKABOOS +PEEKAPOO +PEEKAPOOS +PEEKED +PEEKING +PEEKS +PEEL +PEELABLE +PEELED +PEELER +PEELERS +PEELING +PEELINGS +PEELS +PEEN +PEENED +PEENING +PEENS +PEEP +PEEPED +PEEPER +PEEPERS +PEEPHOLE +PEEPHOLES +PEEPING +PEEPS +PEEPSHOW +PEEPSHOWS +PEEPUL +PEEPULS +PEER +PEERAGE +PEERAGES +PEERED +PEERESS +PEERESSES +PEERIE +PEERIES +PEERING +PEERLESS +PEERS +PEERY +PEES +PEESWEEP +PEESWEEPS +PEETWEET +PEETWEETS +PEEVE +PEEVED +PEEVES +PEEVING +PEEVISH +PEEVISHLY +PEEVISHNESS +PEEVISHNESSES +PEEWEE +PEEWEES +PEEWIT +PEEWITS +PEG +PEGBOARD +PEGBOARDS +PEGBOX +PEGBOXES +PEGGED +PEGGING +PEGLEGGED +PEGLESS +PEGLIKE +PEGMATITE +PEGMATITES +PEGMATITIC +PEGS +PEH +PEHS +PEIGNOIR +PEIGNOIRS +PEIN +PEINED +PEINING +PEINS +PEISE +PEISED +PEISES +PEISING +PEJORATIVE +PEJORATIVELY +PEJORATIVES +PEKAN +PEKANS +PEKE +PEKEPOO +PEKEPOOS +PEKES +PEKIN +PEKINS +PEKOE +PEKOES +PELAGE +PELAGES +PELAGIAL +PELAGIC +PELAGICS +PELARGONIUM +PELARGONIUMS +PELE +PELECYPOD +PELECYPODS +PELERINE +PELERINES +PELES +PELF +PELFS +PELICAN +PELICANS +PELISSE +PELISSES +PELITE +PELITES +PELITIC +PELLAGRA +PELLAGRAS +PELLAGRIN +PELLAGRINS +PELLAGROUS +PELLET +PELLETAL +PELLETED +PELLETING +PELLETISE +PELLETISED +PELLETISES +PELLETISING +PELLETIZATION +PELLETIZATIONS +PELLETIZE +PELLETIZED +PELLETIZER +PELLETIZERS +PELLETIZES +PELLETIZING +PELLETS +PELLICLE +PELLICLES +PELLITORIES +PELLITORY +PELLMELL +PELLMELLS +PELLUCID +PELLUCIDLY +PELMET +PELMETS +PELON +PELORIA +PELORIAN +PELORIAS +PELORIC +PELORUS +PELORUSES +PELOTA +PELOTAS +PELOTON +PELOTONS +PELT +PELTAST +PELTASTS +PELTATE +PELTATELY +PELTATION +PELTATIONS +PELTED +PELTER +PELTERED +PELTERING +PELTERS +PELTING +PELTLESS +PELTRIES +PELTRY +PELTS +PELVES +PELVIC +PELVICS +PELVIS +PELVISES +PELYCOSAUR +PELYCOSAURS +PEMBINA +PEMBINAS +PEMICAN +PEMICANS +PEMMICAN +PEMMICANS +PEMOLINE +PEMOLINES +PEMPHIGUS +PEMPHIGUSES +PEMPHIX +PEMPHIXES +PEN +PENAL +PENALISE +PENALISED +PENALISES +PENALISING +PENALITIES +PENALITY +PENALIZATION +PENALIZATIONS +PENALIZE +PENALIZED +PENALIZES +PENALIZING +PENALLY +PENALTIES +PENALTY +PENANCE +PENANCED +PENANCES +PENANCING +PENANG +PENANGS +PENATES +PENCE +PENCEL +PENCELS +PENCHANT +PENCHANTS +PENCIL +PENCILED +PENCILER +PENCILERS +PENCILING +PENCILINGS +PENCILLED +PENCILLER +PENCILLERS +PENCILLING +PENCILLINGS +PENCILS +PEND +PENDANT +PENDANTLY +PENDANTS +PENDED +PENDENCIES +PENDENCY +PENDENT +PENDENTIVE +PENDENTIVES +PENDENTLY +PENDENTS +PENDING +PENDRAGON +PENDRAGONS +PENDS +PENDULAR +PENDULOUS +PENDULOUSNESS +PENDULOUSNESSES +PENDULUM +PENDULUMS +PENEPLAIN +PENEPLAINS +PENEPLANE +PENEPLANES +PENES +PENETRABILITIES +PENETRABILITY +PENETRABLE +PENETRALIA +PENETRANCE +PENETRANCES +PENETRANT +PENETRANTS +PENETRATE +PENETRATED +PENETRATES +PENETRATING +PENETRATINGLY +PENETRATION +PENETRATIONS +PENETRATIVE +PENETROMETER +PENETROMETERS +PENGO +PENGOS +PENGUIN +PENGUINS +PENHOLDER +PENHOLDERS +PENIAL +PENICIL +PENICILLAMINE +PENICILLAMINES +PENICILLATE +PENICILLIA +PENICILLIN +PENICILLINASE +PENICILLINASES +PENICILLINS +PENICILLIUM +PENICILS +PENILE +PENINSULA +PENINSULAR +PENINSULAS +PENIS +PENISES +PENITENCE +PENITENCES +PENITENT +PENITENTIAL +PENITENTIALLY +PENITENTIARIES +PENITENTIARY +PENITENTLY +PENITENTS +PENKNIFE +PENKNIVES +PENLIGHT +PENLIGHTS +PENLITE +PENLITES +PENMAN +PENMANSHIP +PENMANSHIPS +PENMEN +PENNA +PENNAE +PENNAME +PENNAMES +PENNANT +PENNANTS +PENNATE +PENNATED +PENNE +PENNED +PENNER +PENNERS +PENNI +PENNIA +PENNIES +PENNILESS +PENNINE +PENNINES +PENNING +PENNIS +PENNON +PENNONCEL +PENNONCELS +PENNONED +PENNONS +PENNY +PENNYCRESS +PENNYCRESSES +PENNYROYAL +PENNYROYALS +PENNYWEIGHT +PENNYWEIGHTS +PENNYWHISTLE +PENNYWHISTLES +PENNYWISE +PENNYWORT +PENNYWORTH +PENNYWORTHS +PENNYWORTS +PENOCHE +PENOCHES +PENOLOGICAL +PENOLOGIES +PENOLOGIST +PENOLOGISTS +PENOLOGY +PENONCEL +PENONCELS +PENPOINT +PENPOINTS +PENS +PENSEE +PENSEES +PENSIL +PENSILE +PENSILS +PENSION +PENSIONABLE +PENSIONARIES +PENSIONARY +PENSIONE +PENSIONED +PENSIONER +PENSIONERS +PENSIONES +PENSIONING +PENSIONLESS +PENSIONS +PENSIVE +PENSIVELY +PENSIVENESS +PENSIVENESSES +PENSTEMON +PENSTEMONS +PENSTER +PENSTERS +PENSTOCK +PENSTOCKS +PENT +PENTACLE +PENTACLES +PENTAD +PENTADS +PENTAGON +PENTAGONAL +PENTAGONALLY +PENTAGONALS +PENTAGONS +PENTAGRAM +PENTAGRAMS +PENTAHEDRA +PENTAHEDRAL +PENTAHEDRON +PENTAHEDRONS +PENTAMERIES +PENTAMEROUS +PENTAMERY +PENTAMETER +PENTAMETERS +PENTAMIDINE +PENTAMIDINES +PENTANE +PENTANES +PENTANGLE +PENTANGLES +PENTANOL +PENTANOLS +PENTAPEPTIDE +PENTAPEPTIDES +PENTAPLOID +PENTAPLOIDIES +PENTAPLOIDS +PENTAPLOIDY +PENTARCH +PENTARCHIES +PENTARCHS +PENTARCHY +PENTATHLETE +PENTATHLETES +PENTATHLON +PENTATHLONS +PENTATONIC +PENTAVALENT +PENTAZOCINE +PENTAZOCINES +PENTENE +PENTENES +PENTHOUSE +PENTHOUSES +PENTLANDITE +PENTLANDITES +PENTOBARBITAL +PENTOBARBITALS +PENTOBARBITONE +PENTOBARBITONES +PENTODE +PENTODES +PENTOMIC +PENTOSAN +PENTOSANS +PENTOSE +PENTOSES +PENTOSIDE +PENTOSIDES +PENTOXIDE +PENTOXIDES +PENTSTEMON +PENTSTEMONS +PENTYL +PENTYLS +PENUCHE +PENUCHES +PENUCHI +PENUCHIS +PENUCHLE +PENUCHLES +PENUCKLE +PENUCKLES +PENULT +PENULTIMA +PENULTIMAS +PENULTIMATE +PENULTIMATELY +PENULTS +PENUMBRA +PENUMBRAE +PENUMBRAL +PENUMBRAS +PENURIES +PENURIOUS +PENURIOUSLY +PENURIOUSNESS +PENURIOUSNESSES +PENURY +PEON +PEONAGE +PEONAGES +PEONES +PEONIES +PEONISM +PEONISMS +PEONS +PEONY +PEOPLE +PEOPLED +PEOPLEHOOD +PEOPLEHOODS +PEOPLELESS +PEOPLER +PEOPLERS +PEOPLES +PEOPLING +PEP +PEPEROMIA +PEPEROMIAS +PEPERONI +PEPERONIS +PEPINO +PEPINOS +PEPLA +PEPLOS +PEPLOSES +PEPLUM +PEPLUMED +PEPLUMS +PEPLUS +PEPLUSES +PEPO +PEPONIDA +PEPONIDAS +PEPONIUM +PEPONIUMS +PEPOS +PEPPED +PEPPER +PEPPERBOX +PEPPERBOXES +PEPPERCORN +PEPPERCORNS +PEPPERED +PEPPERER +PEPPERERS +PEPPERGRASS +PEPPERGRASSES +PEPPERINESS +PEPPERINESSES +PEPPERING +PEPPERMINT +PEPPERMINTS +PEPPERMINTY +PEPPERONI +PEPPERONIS +PEPPERS +PEPPERTREE +PEPPERTREES +PEPPERY +PEPPIER +PEPPIEST +PEPPILY +PEPPINESS +PEPPINESSES +PEPPING +PEPPY +PEPS +PEPSIN +PEPSINATE +PEPSINATED +PEPSINATES +PEPSINATING +PEPSINE +PEPSINES +PEPSINOGEN +PEPSINOGENS +PEPSINS +PEPTALK +PEPTALKED +PEPTALKING +PEPTALKS +PEPTIC +PEPTICS +PEPTID +PEPTIDASE +PEPTIDASES +PEPTIDE +PEPTIDES +PEPTIDIC +PEPTIDOGLYCAN +PEPTIDOGLYCANS +PEPTIDS +PEPTIZE +PEPTIZED +PEPTIZER +PEPTIZERS +PEPTIZES +PEPTIZING +PEPTONE +PEPTONES +PEPTONIC +PEPTONIZE +PEPTONIZED +PEPTONIZES +PEPTONIZING +PER +PERACID +PERACIDS +PERADVENTURE +PERADVENTURES +PERAMBULATE +PERAMBULATED +PERAMBULATES +PERAMBULATING +PERAMBULATION +PERAMBULATIONS +PERAMBULATOR +PERAMBULATORS +PERAMBULATORY +PERBORATE +PERBORATES +PERCALE +PERCALES +PERCALINE +PERCALINES +PERCEIVABLE +PERCEIVABLY +PERCEIVE +PERCEIVED +PERCEIVER +PERCEIVERS +PERCEIVES +PERCEIVING +PERCENT +PERCENTAGE +PERCENTAGES +PERCENTAL +PERCENTILE +PERCENTILES +PERCENTS +PERCEPT +PERCEPTIBILITY +PERCEPTIBLE +PERCEPTIBLY +PERCEPTION +PERCEPTIONAL +PERCEPTIONS +PERCEPTIVE +PERCEPTIVELY +PERCEPTIVENESS +PERCEPTIVITIES +PERCEPTIVITY +PERCEPTS +PERCEPTUAL +PERCEPTUALLY +PERCH +PERCHANCE +PERCHED +PERCHER +PERCHERS +PERCHES +PERCHING +PERCHLORATE +PERCHLORATES +PERCIPIENCE +PERCIPIENCES +PERCIPIENT +PERCIPIENTLY +PERCIPIENTS +PERCOID +PERCOIDS +PERCOLATE +PERCOLATED +PERCOLATES +PERCOLATING +PERCOLATION +PERCOLATIONS +PERCOLATOR +PERCOLATORS +PERCUSS +PERCUSSED +PERCUSSES +PERCUSSING +PERCUSSION +PERCUSSIONIST +PERCUSSIONISTS +PERCUSSIONS +PERCUSSIVE +PERCUSSIVELY +PERCUSSIVENESS +PERCUSSOR +PERCUSSORS +PERCUTANEOUS +PERCUTANEOUSLY +PERDIE +PERDITION +PERDITIONS +PERDU +PERDUE +PERDUES +PERDURABILITIES +PERDURABILITY +PERDURABLE +PERDURABLY +PERDURE +PERDURED +PERDURES +PERDURING +PERDUS +PERDY +PERE +PEREA +PEREGRIN +PEREGRINATE +PEREGRINATED +PEREGRINATES +PEREGRINATING +PEREGRINATION +PEREGRINATIONS +PEREGRINE +PEREGRINES +PEREGRINS +PEREIA +PEREION +PEREIONS +PEREIOPOD +PEREIOPODS +PEREMPTORILY +PEREMPTORINESS +PEREMPTORY +PERENNATE +PERENNATED +PERENNATES +PERENNATING +PERENNATION +PERENNATIONS +PERENNIAL +PERENNIALLY +PERENNIALS +PEREON +PEREONS +PEREOPOD +PEREOPODS +PERES +PERESTROIKA +PERESTROIKAS +PERFECT +PERFECTA +PERFECTAS +PERFECTED +PERFECTER +PERFECTERS +PERFECTEST +PERFECTIBILITY +PERFECTIBLE +PERFECTING +PERFECTION +PERFECTIONISM +PERFECTIONISMS +PERFECTIONIST +PERFECTIONISTIC +PERFECTIONISTS +PERFECTIONS +PERFECTIVE +PERFECTIVELY +PERFECTIVENESS +PERFECTIVES +PERFECTIVITIES +PERFECTIVITY +PERFECTLY +PERFECTNESS +PERFECTNESSES +PERFECTO +PERFECTOS +PERFECTS +PERFERVID +PERFIDIES +PERFIDIOUS +PERFIDIOUSLY +PERFIDIOUSNESS +PERFIDY +PERFOLIATE +PERFORATE +PERFORATED +PERFORATES +PERFORATING +PERFORATION +PERFORATIONS +PERFORATOR +PERFORATORS +PERFORCE +PERFORM +PERFORMABILITY +PERFORMABLE +PERFORMANCE +PERFORMANCES +PERFORMATIVE +PERFORMATIVES +PERFORMATORY +PERFORMED +PERFORMER +PERFORMERS +PERFORMING +PERFORMS +PERFUME +PERFUMED +PERFUMER +PERFUMERIES +PERFUMERS +PERFUMERY +PERFUMES +PERFUMING +PERFUMY +PERFUNCTORILY +PERFUNCTORINESS +PERFUNCTORY +PERFUSATE +PERFUSATES +PERFUSE +PERFUSED +PERFUSES +PERFUSING +PERFUSION +PERFUSIONIST +PERFUSIONISTS +PERFUSIONS +PERFUSIVE +PERGOLA +PERGOLAS +PERHAPS +PERHAPSES +PERI +PERIANTH +PERIANTHS +PERIAPSES +PERIAPSIS +PERIAPT +PERIAPTS +PERIBLEM +PERIBLEMS +PERICARDIA +PERICARDIAL +PERICARDITIS +PERICARDITISES +PERICARDIUM +PERICARP +PERICARPS +PERICHONDRAL +PERICHONDRIA +PERICHONDRIUM +PERICOPAE +PERICOPAL +PERICOPE +PERICOPES +PERICOPIC +PERICRANIA +PERICRANIAL +PERICRANIUM +PERICYCLE +PERICYCLES +PERICYCLIC +PERIDERM +PERIDERMS +PERIDIA +PERIDIAL +PERIDIUM +PERIDOT +PERIDOTIC +PERIDOTITE +PERIDOTITES +PERIDOTITIC +PERIDOTS +PERIGEAL +PERIGEAN +PERIGEE +PERIGEES +PERIGON +PERIGONS +PERIGYNIES +PERIGYNOUS +PERIGYNY +PERIHELIA +PERIHELIAL +PERIHELION +PERIKARYA +PERIKARYAL +PERIKARYON +PERIL +PERILED +PERILING +PERILLA +PERILLAS +PERILLED +PERILLING +PERILOUS +PERILOUSLY +PERILOUSNESS +PERILOUSNESSES +PERILS +PERILUNE +PERILUNES +PERILYMPH +PERILYMPHS +PERIMETER +PERIMETERS +PERIMETRIES +PERIMETRY +PERIMORPH +PERIMORPHS +PERIMYSIA +PERIMYSIUM +PERINATAL +PERINATALLY +PERINEA +PERINEAL +PERINEUM +PERINEURIA +PERINEURIUM +PERIOD +PERIODATE +PERIODATES +PERIODIC +PERIODICAL +PERIODICALLY +PERIODICALS +PERIODICITIES +PERIODICITY +PERIODID +PERIODIDS +PERIODIZATION +PERIODIZATIONS +PERIODONTAL +PERIODONTALLY +PERIODONTICS +PERIODONTIST +PERIODONTISTS +PERIODONTOLOGY +PERIODS +PERIONYCHIA +PERIONYCHIUM +PERIOSTEA +PERIOSTEAL +PERIOSTEUM +PERIOSTITIS +PERIOSTITISES +PERIOTIC +PERIPATETIC +PERIPATETICALLY +PERIPATETICS +PERIPATUS +PERIPATUSES +PERIPETEIA +PERIPETEIAS +PERIPETIA +PERIPETIAS +PERIPETIES +PERIPETY +PERIPHERAL +PERIPHERALLY +PERIPHERALS +PERIPHERIES +PERIPHERY +PERIPHRASES +PERIPHRASIS +PERIPHRASTIC +PERIPHYTIC +PERIPHYTON +PERIPHYTONS +PERIPLASM +PERIPLASMS +PERIPLAST +PERIPLASTS +PERIPTER +PERIPTERS +PERIQUE +PERIQUES +PERIS +PERISARC +PERISARCS +PERISCOPE +PERISCOPES +PERISCOPIC +PERISH +PERISHABILITIES +PERISHABILITY +PERISHABLE +PERISHABLES +PERISHED +PERISHES +PERISHING +PERISSODACTYL +PERISSODACTYLS +PERISTALSES +PERISTALSIS +PERISTALTIC +PERISTOME +PERISTOMES +PERISTOMIAL +PERISTYLE +PERISTYLES +PERITHECIA +PERITHECIAL +PERITHECIUM +PERITI +PERITONEA +PERITONEAL +PERITONEALLY +PERITONEUM +PERITONEUMS +PERITONITIS +PERITONITISES +PERITRICH +PERITRICHA +PERITRICHOUS +PERITRICHOUSLY +PERITRICHS +PERITUS +PERIWIG +PERIWIGGED +PERIWIGS +PERIWINKLE +PERIWINKLES +PERJURE +PERJURED +PERJURER +PERJURERS +PERJURES +PERJURIES +PERJURING +PERJURIOUS +PERJURIOUSLY +PERJURY +PERK +PERKED +PERKIER +PERKIEST +PERKILY +PERKINESS +PERKINESSES +PERKING +PERKISH +PERKS +PERKY +PERLITE +PERLITES +PERLITIC +PERM +PERMAFROST +PERMAFROSTS +PERMALLOY +PERMALLOYS +PERMANENCE +PERMANENCES +PERMANENCIES +PERMANENCY +PERMANENT +PERMANENTLY +PERMANENTNESS +PERMANENTNESSES +PERMANENTS +PERMANGANATE +PERMANGANATES +PERMEABILITIES +PERMEABILITY +PERMEABLE +PERMEABLY +PERMEANCE +PERMEANCES +PERMEANT +PERMEASE +PERMEASES +PERMEATE +PERMEATED +PERMEATES +PERMEATING +PERMEATION +PERMEATIONS +PERMEATIVE +PERMEATOR +PERMEATORS +PERMED +PERMETHRIN +PERMETHRINS +PERMIAN +PERMILLAGE +PERMILLAGES +PERMING +PERMISSIBILITY +PERMISSIBLE +PERMISSIBLENESS +PERMISSIBLY +PERMISSION +PERMISSIONS +PERMISSIVE +PERMISSIVELY +PERMISSIVENESS +PERMIT +PERMITS +PERMITTED +PERMITTEE +PERMITTEES +PERMITTER +PERMITTERS +PERMITTING +PERMITTIVITIES +PERMITTIVITY +PERMS +PERMUTABLE +PERMUTATION +PERMUTATIONAL +PERMUTATIONS +PERMUTE +PERMUTED +PERMUTES +PERMUTING +PERNICIOUS +PERNICIOUSLY +PERNICIOUSNESS +PERNICKETY +PERNIO +PERNIONES +PERNOD +PERNODS +PERONEAL +PERORAL +PERORALLY +PERORATE +PERORATED +PERORATES +PERORATING +PERORATION +PERORATIONAL +PERORATIONS +PERORATOR +PERORATORS +PEROVSKITE +PEROVSKITES +PEROXID +PEROXIDASE +PEROXIDASES +PEROXIDE +PEROXIDED +PEROXIDES +PEROXIDIC +PEROXIDING +PEROXIDS +PEROXISOMAL +PEROXISOME +PEROXISOMES +PEROXY +PERP +PERPEND +PERPENDED +PERPENDICULAR +PERPENDICULARLY +PERPENDICULARS +PERPENDING +PERPENDS +PERPENT +PERPENTS +PERPETRATE +PERPETRATED +PERPETRATES +PERPETRATING +PERPETRATION +PERPETRATIONS +PERPETRATOR +PERPETRATORS +PERPETUAL +PERPETUALLY +PERPETUALS +PERPETUATE +PERPETUATED +PERPETUATES +PERPETUATING +PERPETUATION +PERPETUATIONS +PERPETUATOR +PERPETUATORS +PERPETUITIES +PERPETUITY +PERPHENAZINE +PERPHENAZINES +PERPLEX +PERPLEXED +PERPLEXEDLY +PERPLEXER +PERPLEXERS +PERPLEXES +PERPLEXING +PERPLEXITIES +PERPLEXITY +PERPS +PERQUISITE +PERQUISITES +PERRIES +PERRON +PERRONS +PERRY +PERSALT +PERSALTS +PERSE +PERSECUTE +PERSECUTED +PERSECUTEE +PERSECUTEES +PERSECUTES +PERSECUTING +PERSECUTION +PERSECUTIONS +PERSECUTIVE +PERSECUTOR +PERSECUTORS +PERSECUTORY +PERSES +PERSEVERANCE +PERSEVERANCES +PERSEVERATE +PERSEVERATED +PERSEVERATES +PERSEVERATING +PERSEVERATION +PERSEVERATIONS +PERSEVERATIVE +PERSEVERE +PERSEVERED +PERSEVERES +PERSEVERING +PERSEVERINGLY +PERSIFLAGE +PERSIFLAGES +PERSIMMON +PERSIMMONS +PERSIST +PERSISTED +PERSISTENCE +PERSISTENCES +PERSISTENCIES +PERSISTENCY +PERSISTENT +PERSISTENTLY +PERSISTER +PERSISTERS +PERSISTING +PERSISTS +PERSNICKETINESS +PERSNICKETY +PERSON +PERSONA +PERSONABLE +PERSONABLENESS +PERSONAE +PERSONAGE +PERSONAGES +PERSONAL +PERSONALISE +PERSONALISED +PERSONALISES +PERSONALISING +PERSONALISM +PERSONALISMS +PERSONALIST +PERSONALISTIC +PERSONALISTS +PERSONALITIES +PERSONALITY +PERSONALIZATION +PERSONALIZE +PERSONALIZED +PERSONALIZES +PERSONALIZING +PERSONALLY +PERSONALS +PERSONALTIES +PERSONALTY +PERSONAS +PERSONATE +PERSONATED +PERSONATES +PERSONATING +PERSONATION +PERSONATIONS +PERSONATIVE +PERSONATOR +PERSONATORS +PERSONHOOD +PERSONHOODS +PERSONIFICATION +PERSONIFIED +PERSONIFIER +PERSONIFIERS +PERSONIFIES +PERSONIFY +PERSONIFYING +PERSONNEL +PERSONNELS +PERSONS +PERSPECTIVAL +PERSPECTIVE +PERSPECTIVELY +PERSPECTIVES +PERSPEX +PERSPEXES +PERSPICACIOUS +PERSPICACIOUSLY +PERSPICACITIES +PERSPICACITY +PERSPICUITIES +PERSPICUITY +PERSPICUOUS +PERSPICUOUSLY +PERSPICUOUSNESS +PERSPIRATION +PERSPIRATIONS +PERSPIRATORY +PERSPIRE +PERSPIRED +PERSPIRES +PERSPIRING +PERSPIRY +PERSUADABLE +PERSUADE +PERSUADED +PERSUADER +PERSUADERS +PERSUADES +PERSUADING +PERSUASIBLE +PERSUASION +PERSUASIONS +PERSUASIVE +PERSUASIVELY +PERSUASIVENESS +PERT +PERTAIN +PERTAINED +PERTAINING +PERTAINS +PERTER +PERTEST +PERTINACIOUS +PERTINACIOUSLY +PERTINACITIES +PERTINACITY +PERTINENCE +PERTINENCES +PERTINENCIES +PERTINENCY +PERTINENT +PERTINENTLY +PERTLY +PERTNESS +PERTNESSES +PERTURB +PERTURBABLE +PERTURBATION +PERTURBATIONAL +PERTURBATIONS +PERTURBED +PERTURBER +PERTURBERS +PERTURBING +PERTURBS +PERTUSSAL +PERTUSSES +PERTUSSIS +PERTUSSISES +PERUKE +PERUKED +PERUKES +PERUSABLE +PERUSAL +PERUSALS +PERUSE +PERUSED +PERUSER +PERUSERS +PERUSES +PERUSING +PERV +PERVADE +PERVADED +PERVADER +PERVADERS +PERVADES +PERVADING +PERVASION +PERVASIONS +PERVASIVE +PERVASIVELY +PERVASIVENESS +PERVASIVENESSES +PERVERSE +PERVERSELY +PERVERSENESS +PERVERSENESSES +PERVERSION +PERVERSIONS +PERVERSITIES +PERVERSITY +PERVERSIVE +PERVERT +PERVERTED +PERVERTEDLY +PERVERTEDNESS +PERVERTEDNESSES +PERVERTER +PERVERTERS +PERVERTING +PERVERTS +PERVIOUS +PERVIOUSNESS +PERVIOUSNESSES +PERVS +PES +PESADE +PESADES +PESETA +PESETAS +PESEWA +PESEWAS +PESKIER +PESKIEST +PESKILY +PESKINESS +PESKINESSES +PESKY +PESO +PESOS +PESSARIES +PESSARY +PESSIMISM +PESSIMISMS +PESSIMIST +PESSIMISTIC +PESSIMISTICALLY +PESSIMISTS +PEST +PESTER +PESTERED +PESTERER +PESTERERS +PESTERING +PESTERS +PESTHOLE +PESTHOLES +PESTHOUSE +PESTHOUSES +PESTICIDE +PESTICIDES +PESTIER +PESTIEST +PESTIFEROUS +PESTIFEROUSLY +PESTIFEROUSNESS +PESTILENCE +PESTILENCES +PESTILENT +PESTILENTIAL +PESTILENTIALLY +PESTILENTLY +PESTLE +PESTLED +PESTLES +PESTLING +PESTO +PESTOS +PESTS +PESTY +PET +PETABYTE +PETABYTES +PETAHERTZ +PETAHERTZES +PETAL +PETALED +PETALINE +PETALLED +PETALLIKE +PETALODIES +PETALODY +PETALOID +PETALOUS +PETALS +PETARD +PETARDS +PETASOS +PETASOSES +PETASUS +PETASUSES +PETCOCK +PETCOCKS +PETECHIA +PETECHIAE +PETECHIAL +PETER +PETERED +PETERING +PETERS +PETIOLAR +PETIOLATE +PETIOLE +PETIOLED +PETIOLES +PETIOLULE +PETIOLULES +PETIT +PETITE +PETITENESS +PETITENESSES +PETITES +PETITION +PETITIONARY +PETITIONED +PETITIONER +PETITIONERS +PETITIONING +PETITIONS +PETNAP +PETNAPER +PETNAPERS +PETNAPING +PETNAPINGS +PETNAPPED +PETNAPPER +PETNAPPERS +PETNAPPING +PETNAPS +PETRALE +PETRALES +PETREL +PETRELS +PETRIFACTION +PETRIFACTIONS +PETRIFICATION +PETRIFICATIONS +PETRIFIED +PETRIFIER +PETRIFIERS +PETRIFIES +PETRIFY +PETRIFYING +PETROCHEMICAL +PETROCHEMICALS +PETROCHEMISTRY +PETRODOLLAR +PETRODOLLARS +PETROGENESES +PETROGENESIS +PETROGENETIC +PETROGENIES +PETROGENY +PETROGLYPH +PETROGLYPHS +PETROGRAPHER +PETROGRAPHERS +PETROGRAPHIC +PETROGRAPHICAL +PETROGRAPHIES +PETROGRAPHY +PETROL +PETROLATUM +PETROLATUMS +PETROLEUM +PETROLEUMS +PETROLIC +PETROLOGIC +PETROLOGICAL +PETROLOGICALLY +PETROLOGIES +PETROLOGIST +PETROLOGISTS +PETROLOGY +PETROLS +PETRONEL +PETRONELS +PETROSAL +PETROUS +PETS +PETSAI +PETSAIS +PETTABLE +PETTED +PETTEDLY +PETTER +PETTERS +PETTI +PETTICOAT +PETTICOATED +PETTICOATS +PETTIER +PETTIEST +PETTIFOG +PETTIFOGGED +PETTIFOGGER +PETTIFOGGERIES +PETTIFOGGERS +PETTIFOGGERY +PETTIFOGGING +PETTIFOGGINGS +PETTIFOGS +PETTILY +PETTINESS +PETTINESSES +PETTING +PETTINGS +PETTISH +PETTISHLY +PETTISHNESS +PETTISHNESSES +PETTITOES +PETTLE +PETTLED +PETTLES +PETTLING +PETTO +PETTY +PETULANCE +PETULANCES +PETULANCIES +PETULANCY +PETULANT +PETULANTLY +PETUNIA +PETUNIAS +PETUNTSE +PETUNTSES +PETUNTZE +PETUNTZES +PEW +PEWEE +PEWEES +PEWHOLDER +PEWHOLDERS +PEWIT +PEWITS +PEWS +PEWTER +PEWTERER +PEWTERERS +PEWTERS +PEYOTE +PEYOTES +PEYOTL +PEYOTLS +PEYTRAL +PEYTRALS +PEYTREL +PEYTRELS +PFENNIG +PFENNIGE +PFENNIGS +PFFT +PFUI +PHAETON +PHAETONS +PHAGE +PHAGEDENA +PHAGEDENAS +PHAGES +PHAGOCYTE +PHAGOCYTES +PHAGOCYTIC +PHAGOCYTIZE +PHAGOCYTIZED +PHAGOCYTIZES +PHAGOCYTIZING +PHAGOCYTOSE +PHAGOCYTOSED +PHAGOCYTOSES +PHAGOCYTOSING +PHAGOCYTOSIS +PHAGOCYTOTIC +PHAGOSOME +PHAGOSOMES +PHALANGAL +PHALANGE +PHALANGEAL +PHALANGER +PHALANGERS +PHALANGES +PHALANSTERIES +PHALANSTERY +PHALANX +PHALANXES +PHALAROPE +PHALAROPES +PHALLI +PHALLIC +PHALLICALLY +PHALLICISM +PHALLICISMS +PHALLISM +PHALLISMS +PHALLIST +PHALLISTS +PHALLOCENTRIC +PHALLUS +PHALLUSES +PHANEROGAM +PHANEROGAMS +PHANEROPHYTE +PHANEROPHYTES +PHANTASIED +PHANTASIES +PHANTASM +PHANTASMA +PHANTASMAGORIA +PHANTASMAGORIAS +PHANTASMAGORIC +PHANTASMAL +PHANTASMATA +PHANTASMIC +PHANTASMS +PHANTAST +PHANTASTS +PHANTASY +PHANTASYING +PHANTOM +PHANTOMLIKE +PHANTOMS +PHARAOH +PHARAOHS +PHARAONIC +PHARISAIC +PHARISAICAL +PHARISAICALLY +PHARISAICALNESS +PHARISAISM +PHARISAISMS +PHARISEE +PHARISEES +PHARMACEUTICAL +PHARMACEUTICALS +PHARMACIES +PHARMACIST +PHARMACISTS +PHARMACODYNAMIC +PHARMACOGNOSIES +PHARMACOGNOSTIC +PHARMACOGNOSY +PHARMACOKINETIC +PHARMACOLOGIC +PHARMACOLOGICAL +PHARMACOLOGIES +PHARMACOLOGIST +PHARMACOLOGISTS +PHARMACOLOGY +PHARMACOPEIA +PHARMACOPEIAL +PHARMACOPEIAS +PHARMACOPOEIA +PHARMACOPOEIAL +PHARMACOPOEIAS +PHARMACOTHERAPY +PHARMACY +PHARMING +PHARMINGS +PHAROS +PHAROSES +PHARYNGAL +PHARYNGALS +PHARYNGEAL +PHARYNGES +PHARYNGITIDES +PHARYNGITIS +PHARYNX +PHARYNXES +PHASE +PHASEAL +PHASED +PHASEDOWN +PHASEDOWNS +PHASEOUT +PHASEOUTS +PHASES +PHASIC +PHASING +PHASIS +PHASMID +PHASMIDS +PHAT +PHATIC +PHATICALLY +PHATTER +PHATTEST +PHEASANT +PHEASANTS +PHELLEM +PHELLEMS +PHELLODERM +PHELLODERMS +PHELLOGEN +PHELLOGENS +PHELONIA +PHELONION +PHELONIONS +PHENACAINE +PHENACAINES +PHENACETIN +PHENACETINS +PHENACITE +PHENACITES +PHENAKITE +PHENAKITES +PHENANTHRENE +PHENANTHRENES +PHENATE +PHENATES +PHENAZIN +PHENAZINE +PHENAZINES +PHENAZINS +PHENCYCLIDINE +PHENCYCLIDINES +PHENETIC +PHENETICIST +PHENETICISTS +PHENETICS +PHENETOL +PHENETOLE +PHENETOLES +PHENETOLS +PHENIX +PHENIXES +PHENMETRAZINE +PHENMETRAZINES +PHENOBARBITAL +PHENOBARBITALS +PHENOBARBITONE +PHENOBARBITONES +PHENOCOPIES +PHENOCOPY +PHENOCRYST +PHENOCRYSTIC +PHENOCRYSTS +PHENOL +PHENOLATE +PHENOLATED +PHENOLATES +PHENOLATING +PHENOLIC +PHENOLICS +PHENOLOGICAL +PHENOLOGICALLY +PHENOLOGIES +PHENOLOGY +PHENOLPHTHALEIN +PHENOLS +PHENOM +PHENOMENA +PHENOMENAL +PHENOMENALISM +PHENOMENALISMS +PHENOMENALIST +PHENOMENALISTIC +PHENOMENALISTS +PHENOMENALLY +PHENOMENAS +PHENOMENOLOGIES +PHENOMENOLOGIST +PHENOMENOLOGY +PHENOMENON +PHENOMENONS +PHENOMS +PHENOTHIAZINE +PHENOTHIAZINES +PHENOTYPE +PHENOTYPES +PHENOTYPIC +PHENOTYPICAL +PHENOTYPICALLY +PHENOXIDE +PHENOXIDES +PHENOXY +PHENTOLAMINE +PHENTOLAMINES +PHENYL +PHENYLALANINE +PHENYLALANINES +PHENYLBUTAZONE +PHENYLBUTAZONES +PHENYLENE +PHENYLENES +PHENYLEPHRINE +PHENYLEPHRINES +PHENYLIC +PHENYLKETONURIA +PHENYLKETONURIC +PHENYLS +PHENYLTHIOUREA +PHENYLTHIOUREAS +PHENYTOIN +PHENYTOINS +PHERESES +PHERESIS +PHEROMONAL +PHEROMONE +PHEROMONES +PHEW +PHI +PHIAL +PHIALS +PHILABEG +PHILABEGS +PHILADELPHUS +PHILADELPHUSES +PHILANDER +PHILANDERED +PHILANDERER +PHILANDERERS +PHILANDERING +PHILANDERS +PHILANTHROPIC +PHILANTHROPICAL +PHILANTHROPIES +PHILANTHROPIST +PHILANTHROPISTS +PHILANTHROPOID +PHILANTHROPOIDS +PHILANTHROPY +PHILATELIC +PHILATELICALLY +PHILATELIES +PHILATELIST +PHILATELISTS +PHILATELY +PHILHARMONIC +PHILHARMONICS +PHILHELLENE +PHILHELLENES +PHILHELLENIC +PHILHELLENISM +PHILHELLENISMS +PHILHELLENIST +PHILHELLENISTS +PHILIBEG +PHILIBEGS +PHILIPPIC +PHILIPPICS +PHILISTIA +PHILISTIAS +PHILISTINE +PHILISTINES +PHILISTINISM +PHILISTINISMS +PHILLUMENIST +PHILLUMENISTS +PHILODENDRA +PHILODENDRON +PHILODENDRONS +PHILOGYNIES +PHILOGYNY +PHILOLOGICAL +PHILOLOGICALLY +PHILOLOGIES +PHILOLOGIST +PHILOLOGISTS +PHILOLOGY +PHILOMEL +PHILOMELA +PHILOMELAS +PHILOMELS +PHILOSOPHE +PHILOSOPHER +PHILOSOPHERS +PHILOSOPHES +PHILOSOPHIC +PHILOSOPHICAL +PHILOSOPHICALLY +PHILOSOPHIES +PHILOSOPHISE +PHILOSOPHISED +PHILOSOPHISES +PHILOSOPHISING +PHILOSOPHIZE +PHILOSOPHIZED +PHILOSOPHIZER +PHILOSOPHIZERS +PHILOSOPHIZES +PHILOSOPHIZING +PHILOSOPHY +PHILTER +PHILTERED +PHILTERING +PHILTERS +PHILTRA +PHILTRE +PHILTRED +PHILTRES +PHILTRING +PHILTRUM +PHIMOSES +PHIMOSIS +PHIMOTIC +PHIS +PHIZ +PHIZES +PHLEBITIC +PHLEBITIDES +PHLEBITIS +PHLEBITISES +PHLEBOGRAM +PHLEBOGRAMS +PHLEBOGRAPHIC +PHLEBOGRAPHIES +PHLEBOGRAPHY +PHLEBOLOGIES +PHLEBOLOGY +PHLEBOTOMIES +PHLEBOTOMIST +PHLEBOTOMISTS +PHLEBOTOMY +PHLEGM +PHLEGMATIC +PHLEGMATICALLY +PHLEGMIER +PHLEGMIEST +PHLEGMS +PHLEGMY +PHLOEM +PHLOEMS +PHLOGISTIC +PHLOGISTON +PHLOGISTONS +PHLOGOPITE +PHLOGOPITES +PHLORIZIN +PHLORIZINS +PHLOX +PHLOXES +PHLYCTENA +PHLYCTENAE +PHOBIA +PHOBIAS +PHOBIC +PHOBICS +PHOCINE +PHOEBE +PHOEBES +PHOEBUS +PHOEBUSES +PHOENIX +PHOENIXES +PHOENIXLIKE +PHON +PHONAL +PHONATE +PHONATED +PHONATES +PHONATHON +PHONATHONS +PHONATING +PHONATION +PHONATIONS +PHONE +PHONED +PHONEMATIC +PHONEME +PHONEMES +PHONEMIC +PHONEMICALLY +PHONEMICIST +PHONEMICISTS +PHONEMICS +PHONES +PHONETIC +PHONETICALLY +PHONETICIAN +PHONETICIANS +PHONETICS +PHONETIST +PHONETISTS +PHONEY +PHONEYED +PHONEYING +PHONEYS +PHONIC +PHONICALLY +PHONICS +PHONIED +PHONIER +PHONIES +PHONIEST +PHONILY +PHONINESS +PHONINESSES +PHONING +PHONO +PHONOCARDIOGRAM +PHONOGRAM +PHONOGRAMIC +PHONOGRAMICALLY +PHONOGRAMMIC +PHONOGRAMS +PHONOGRAPH +PHONOGRAPHER +PHONOGRAPHERS +PHONOGRAPHIC +PHONOGRAPHIES +PHONOGRAPHS +PHONOGRAPHY +PHONOLITE +PHONOLITES +PHONOLOGIC +PHONOLOGICAL +PHONOLOGICALLY +PHONOLOGIES +PHONOLOGIST +PHONOLOGISTS +PHONOLOGY +PHONON +PHONONS +PHONOS +PHONOTACTIC +PHONOTACTICS +PHONOTYPE +PHONOTYPES +PHONOTYPIES +PHONOTYPY +PHONS +PHONY +PHONYING +PHOOEY +PHORATE +PHORATES +PHORESIES +PHORESY +PHORONID +PHORONIDS +PHOSGENE +PHOSGENES +PHOSPHATASE +PHOSPHATASES +PHOSPHATE +PHOSPHATES +PHOSPHATIC +PHOSPHATIDE +PHOSPHATIDES +PHOSPHATIDIC +PHOSPHATIDYL +PHOSPHATIDYLS +PHOSPHATIZATION +PHOSPHATIZE +PHOSPHATIZED +PHOSPHATIZES +PHOSPHATIZING +PHOSPHATURIA +PHOSPHATURIAS +PHOSPHENE +PHOSPHENES +PHOSPHID +PHOSPHIDE +PHOSPHIDES +PHOSPHIDS +PHOSPHIN +PHOSPHINE +PHOSPHINES +PHOSPHINS +PHOSPHITE +PHOSPHITES +PHOSPHOCREATINE +PHOSPHOKINASE +PHOSPHOKINASES +PHOSPHOLIPASE +PHOSPHOLIPASES +PHOSPHOLIPID +PHOSPHOLIPIDS +PHOSPHONIUM +PHOSPHONIUMS +PHOSPHOPROTEIN +PHOSPHOPROTEINS +PHOSPHOR +PHOSPHORE +PHOSPHORES +PHOSPHORESCE +PHOSPHORESCED +PHOSPHORESCENCE +PHOSPHORESCENT +PHOSPHORESCES +PHOSPHORESCING +PHOSPHORI +PHOSPHORIC +PHOSPHORITE +PHOSPHORITES +PHOSPHORITIC +PHOSPHOROLYSES +PHOSPHOROLYSIS +PHOSPHOROLYTIC +PHOSPHOROUS +PHOSPHORS +PHOSPHORUS +PHOSPHORUSES +PHOSPHORYL +PHOSPHORYLASE +PHOSPHORYLASES +PHOSPHORYLATE +PHOSPHORYLATED +PHOSPHORYLATES +PHOSPHORYLATING +PHOSPHORYLATION +PHOSPHORYLATIVE +PHOSPHORYLS +PHOT +PHOTIC +PHOTICALLY +PHOTICS +PHOTO +PHOTOAUTOTROPH +PHOTOAUTOTROPHS +PHOTOBIOLOGIC +PHOTOBIOLOGICAL +PHOTOBIOLOGIES +PHOTOBIOLOGIST +PHOTOBIOLOGISTS +PHOTOBIOLOGY +PHOTOCATHODE +PHOTOCATHODES +PHOTOCELL +PHOTOCELLS +PHOTOCHEMICAL +PHOTOCHEMICALLY +PHOTOCHEMIST +PHOTOCHEMISTRY +PHOTOCHEMISTS +PHOTOCHROMIC +PHOTOCHROMISM +PHOTOCHROMISMS +PHOTOCOMPOSE +PHOTOCOMPOSED +PHOTOCOMPOSER +PHOTOCOMPOSERS +PHOTOCOMPOSES +PHOTOCOMPOSING +PHOTOCONDUCTIVE +PHOTOCOPIED +PHOTOCOPIER +PHOTOCOPIERS +PHOTOCOPIES +PHOTOCOPY +PHOTOCOPYING +PHOTOCURRENT +PHOTOCURRENTS +PHOTODEGRADABLE +PHOTODETECTOR +PHOTODETECTORS +PHOTODIODE +PHOTODIODES +PHOTODISSOCIATE +PHOTODUPLICATE +PHOTODUPLICATED +PHOTODUPLICATES +PHOTODYNAMIC +PHOTOED +PHOTOELECTRIC +PHOTOELECTRON +PHOTOELECTRONIC +PHOTOELECTRONS +PHOTOEMISSION +PHOTOEMISSIONS +PHOTOEMISSIVE +PHOTOENGRAVE +PHOTOENGRAVED +PHOTOENGRAVER +PHOTOENGRAVERS +PHOTOENGRAVES +PHOTOENGRAVING +PHOTOENGRAVINGS +PHOTOEXCITATION +PHOTOEXCITED +PHOTOFINISHER +PHOTOFINISHERS +PHOTOFINISHING +PHOTOFINISHINGS +PHOTOFLASH +PHOTOFLASHES +PHOTOFLOOD +PHOTOFLOODS +PHOTOG +PHOTOGENE +PHOTOGENES +PHOTOGENIC +PHOTOGENICALLY +PHOTOGEOLOGIC +PHOTOGEOLOGICAL +PHOTOGEOLOGIES +PHOTOGEOLOGIST +PHOTOGEOLOGISTS +PHOTOGEOLOGY +PHOTOGRAM +PHOTOGRAMMETRIC +PHOTOGRAMMETRY +PHOTOGRAMS +PHOTOGRAPH +PHOTOGRAPHED +PHOTOGRAPHER +PHOTOGRAPHERS +PHOTOGRAPHIC +PHOTOGRAPHIES +PHOTOGRAPHING +PHOTOGRAPHS +PHOTOGRAPHY +PHOTOGRAVURE +PHOTOGRAVURES +PHOTOGS +PHOTOINDUCED +PHOTOINDUCTION +PHOTOINDUCTIONS +PHOTOINDUCTIVE +PHOTOING +PHOTOIONIZATION +PHOTOIONIZE +PHOTOIONIZED +PHOTOIONIZES +PHOTOIONIZING +PHOTOJOURNALISM +PHOTOJOURNALIST +PHOTOKINESES +PHOTOKINESIS +PHOTOKINETIC +PHOTOLITHOGRAPH +PHOTOLYSES +PHOTOLYSIS +PHOTOLYTIC +PHOTOLYTICALLY +PHOTOLYZABLE +PHOTOLYZE +PHOTOLYZED +PHOTOLYZES +PHOTOLYZING +PHOTOMAP +PHOTOMAPPED +PHOTOMAPPING +PHOTOMAPS +PHOTOMASK +PHOTOMASKS +PHOTOMECHANICAL +PHOTOMETER +PHOTOMETERS +PHOTOMETRIC +PHOTOMETRICALLY +PHOTOMETRIES +PHOTOMETRY +PHOTOMICROGRAPH +PHOTOMONTAGE +PHOTOMONTAGES +PHOTOMOSAIC +PHOTOMOSAICS +PHOTOMULTIPLIER +PHOTOMURAL +PHOTOMURALS +PHOTON +PHOTONEGATIVE +PHOTONIC +PHOTONICS +PHOTONS +PHOTONUCLEAR +PHOTOOXIDATION +PHOTOOXIDATIONS +PHOTOOXIDATIVE +PHOTOOXIDIZE +PHOTOOXIDIZED +PHOTOOXIDIZES +PHOTOOXIDIZING +PHOTOPERIOD +PHOTOPERIODIC +PHOTOPERIODISM +PHOTOPERIODISMS +PHOTOPERIODS +PHOTOPHASE +PHOTOPHASES +PHOTOPHOBIA +PHOTOPHOBIAS +PHOTOPHOBIC +PHOTOPHORE +PHOTOPHORES +PHOTOPIA +PHOTOPIAS +PHOTOPIC +PHOTOPLAY +PHOTOPLAYS +PHOTOPOLYMER +PHOTOPOLYMERS +PHOTOPOSITIVE +PHOTOPRODUCT +PHOTOPRODUCTION +PHOTOPRODUCTS +PHOTOREACTION +PHOTOREACTIONS +PHOTORECEPTION +PHOTORECEPTIONS +PHOTORECEPTIVE +PHOTORECEPTOR +PHOTORECEPTORS +PHOTOREDUCE +PHOTOREDUCED +PHOTOREDUCES +PHOTOREDUCING +PHOTOREDUCTION +PHOTOREDUCTIONS +PHOTORESIST +PHOTORESISTS +PHOTOS +PHOTOSCAN +PHOTOSCANNED +PHOTOSCANNING +PHOTOSCANS +PHOTOSENSITIVE +PHOTOSENSITIZE +PHOTOSENSITIZED +PHOTOSENSITIZER +PHOTOSENSITIZES +PHOTOSET +PHOTOSETS +PHOTOSETTER +PHOTOSETTERS +PHOTOSETTING +PHOTOSPHERE +PHOTOSPHERES +PHOTOSPHERIC +PHOTOSTAT +PHOTOSTATED +PHOTOSTATIC +PHOTOSTATING +PHOTOSTATS +PHOTOSTATTED +PHOTOSTATTING +PHOTOSYNTHATE +PHOTOSYNTHATES +PHOTOSYNTHESES +PHOTOSYNTHESIS +PHOTOSYNTHESIZE +PHOTOSYNTHETIC +PHOTOSYSTEM +PHOTOSYSTEMS +PHOTOTACTIC +PHOTOTACTICALLY +PHOTOTAXES +PHOTOTAXIES +PHOTOTAXIS +PHOTOTAXY +PHOTOTELEGRAPHY +PHOTOTOXIC +PHOTOTOXICITIES +PHOTOTOXICITY +PHOTOTROPIC +PHOTOTROPICALLY +PHOTOTROPISM +PHOTOTROPISMS +PHOTOTUBE +PHOTOTUBES +PHOTOTYPE +PHOTOTYPES +PHOTOTYPESETTER +PHOTOVOLTAIC +PHOTOVOLTAICS +PHOTS +PHPHT +PHRAGMOPLAST +PHRAGMOPLASTS +PHRASAL +PHRASALLY +PHRASE +PHRASED +PHRASEMAKER +PHRASEMAKERS +PHRASEMAKING +PHRASEMAKINGS +PHRASEMONGER +PHRASEMONGERING +PHRASEMONGERS +PHRASEOLOGICAL +PHRASEOLOGIES +PHRASEOLOGIST +PHRASEOLOGISTS +PHRASEOLOGY +PHRASES +PHRASING +PHRASINGS +PHRATRAL +PHRATRIC +PHRATRIES +PHRATRY +PHREAK +PHREAKED +PHREAKER +PHREAKERS +PHREAKING +PHREAKINGS +PHREAKS +PHREATIC +PHREATOPHYTE +PHREATOPHYTES +PHREATOPHYTIC +PHRENETIC +PHRENIC +PHRENITIDES +PHRENITIS +PHRENITISES +PHRENOLOGICAL +PHRENOLOGIES +PHRENOLOGIST +PHRENOLOGISTS +PHRENOLOGY +PHRENSIED +PHRENSIES +PHRENSY +PHRENSYING +PHT +PHTHALATE +PHTHALATES +PHTHALEIN +PHTHALEINS +PHTHALIC +PHTHALIN +PHTHALINS +PHTHALOCYANINE +PHTHALOCYANINES +PHTHISES +PHTHISIC +PHTHISICAL +PHTHISICS +PHTHISIS +PHUT +PHUTS +PHYCOCYANIN +PHYCOCYANINS +PHYCOERYTHRIN +PHYCOERYTHRINS +PHYCOLOGICAL +PHYCOLOGIES +PHYCOLOGIST +PHYCOLOGISTS +PHYCOLOGY +PHYCOMYCETE +PHYCOMYCETES +PHYCOMYCETOUS +PHYLA +PHYLACTERIES +PHYLACTERY +PHYLAE +PHYLAR +PHYLAXIS +PHYLAXISES +PHYLE +PHYLESES +PHYLESIS +PHYLESISES +PHYLETIC +PHYLETICALLY +PHYLETICS +PHYLIC +PHYLLARIES +PHYLLARY +PHYLLITE +PHYLLITES +PHYLLITIC +PHYLLO +PHYLLOCLADE +PHYLLOCLADES +PHYLLODE +PHYLLODES +PHYLLODIA +PHYLLODIUM +PHYLLOID +PHYLLOIDS +PHYLLOME +PHYLLOMES +PHYLLOMIC +PHYLLOPOD +PHYLLOPODS +PHYLLOS +PHYLLOTACTIC +PHYLLOTAXES +PHYLLOTAXIES +PHYLLOTAXIS +PHYLLOTAXY +PHYLLOXERA +PHYLLOXERAS +PHYLOGENETIC +PHYLOGENIES +PHYLOGENY +PHYLON +PHYLUM +PHYSED +PHYSEDS +PHYSES +PHYSIATRIES +PHYSIATRIST +PHYSIATRISTS +PHYSIATRY +PHYSIC +PHYSICAL +PHYSICALISM +PHYSICALISMS +PHYSICALIST +PHYSICALISTIC +PHYSICALISTS +PHYSICALITIES +PHYSICALITY +PHYSICALLY +PHYSICALNESS +PHYSICALNESSES +PHYSICALS +PHYSICIAN +PHYSICIANS +PHYSICIST +PHYSICISTS +PHYSICKED +PHYSICKING +PHYSICOCHEMICAL +PHYSICS +PHYSIOCRATIC +PHYSIOGNOMIC +PHYSIOGNOMICAL +PHYSIOGNOMIES +PHYSIOGNOMY +PHYSIOGRAPHER +PHYSIOGRAPHERS +PHYSIOGRAPHIC +PHYSIOGRAPHICAL +PHYSIOGRAPHIES +PHYSIOGRAPHY +PHYSIOLOGIC +PHYSIOLOGICAL +PHYSIOLOGICALLY +PHYSIOLOGIES +PHYSIOLOGIST +PHYSIOLOGISTS +PHYSIOLOGY +PHYSIOPATHOLOGY +PHYSIOTHERAPIES +PHYSIOTHERAPIST +PHYSIOTHERAPY +PHYSIQUE +PHYSIQUED +PHYSIQUES +PHYSIS +PHYSOSTIGMINE +PHYSOSTIGMINES +PHYTANE +PHYTANES +PHYTIN +PHYTINS +PHYTOALEXIN +PHYTOALEXINS +PHYTOCHEMICAL +PHYTOCHEMICALLY +PHYTOCHEMIST +PHYTOCHEMISTRY +PHYTOCHEMISTS +PHYTOCHROME +PHYTOCHROMES +PHYTOFLAGELLATE +PHYTOGENIES +PHYTOGENY +PHYTOGEOGRAPHER +PHYTOGEOGRAPHIC +PHYTOGEOGRAPHY +PHYTOHORMONE +PHYTOHORMONES +PHYTOID +PHYTOL +PHYTOLITH +PHYTOLITHS +PHYTOLOGIES +PHYTOLOGY +PHYTOLS +PHYTON +PHYTONIC +PHYTONS +PHYTOPATHOGEN +PHYTOPATHOGENIC +PHYTOPATHOGENS +PHYTOPATHOLOGY +PHYTOPHAGOUS +PHYTOPLANKTER +PHYTOPLANKTERS +PHYTOPLANKTON +PHYTOPLANKTONIC +PHYTOPLANKTONS +PHYTOSOCIOLOGY +PHYTOSTEROL +PHYTOSTEROLS +PHYTOTOXIC +PHYTOTOXICITIES +PHYTOTOXICITY +PHYTOTRON +PHYTOTRONS +PI +PIA +PIACULAR +PIAFFE +PIAFFED +PIAFFER +PIAFFERS +PIAFFES +PIAFFING +PIAL +PIAN +PIANIC +PIANISM +PIANISMS +PIANISSIMI +PIANISSIMO +PIANISSIMOS +PIANIST +PIANISTIC +PIANISTICALLY +PIANISTS +PIANO +PIANOFORTE +PIANOFORTES +PIANOS +PIANS +PIAS +PIASABA +PIASABAS +PIASAVA +PIASAVAS +PIASSABA +PIASSABAS +PIASSAVA +PIASSAVAS +PIASTER +PIASTERS +PIASTRE +PIASTRES +PIAZZA +PIAZZAS +PIAZZE +PIBAL +PIBALS +PIBROCH +PIBROCHS +PIC +PICA +PICACHO +PICACHOS +PICADILLO +PICADILLOS +PICADOR +PICADORES +PICADORS +PICAL +PICANINNIES +PICANINNY +PICANTE +PICARA +PICARAS +PICARESQUE +PICARESQUES +PICARO +PICAROON +PICAROONED +PICAROONING +PICAROONS +PICAROS +PICAS +PICAYUNE +PICAYUNES +PICAYUNISH +PICCALILLI +PICCALILLIS +PICCATA +PICCOLO +PICCOLOIST +PICCOLOISTS +PICCOLOS +PICE +PICEOUS +PICHOLINE +PICHOLINES +PICIFORM +PICK +PICKABACK +PICKABACKED +PICKABACKING +PICKABACKS +PICKADIL +PICKADILS +PICKANINNIES +PICKANINNY +PICKAROON +PICKAROONS +PICKAX +PICKAXE +PICKAXED +PICKAXES +PICKAXING +PICKED +PICKEER +PICKEERED +PICKEERING +PICKEERS +PICKER +PICKEREL +PICKERELS +PICKERELWEED +PICKERELWEEDS +PICKERS +PICKET +PICKETBOAT +PICKETBOATS +PICKETED +PICKETER +PICKETERS +PICKETING +PICKETS +PICKIER +PICKIEST +PICKINESS +PICKINESSES +PICKING +PICKINGS +PICKLE +PICKLED +PICKLES +PICKLING +PICKLOCK +PICKLOCKS +PICKOFF +PICKOFFS +PICKPOCKET +PICKPOCKETS +PICKPROOF +PICKS +PICKTHANK +PICKTHANKS +PICKUP +PICKUPS +PICKWICK +PICKWICKS +PICKY +PICLORAM +PICLORAMS +PICNIC +PICNICKED +PICNICKER +PICNICKERS +PICNICKING +PICNICKY +PICNICS +PICOFARAD +PICOFARADS +PICOGRAM +PICOGRAMS +PICOLIN +PICOLINE +PICOLINES +PICOLINS +PICOMETER +PICOMETERS +PICOMETRE +PICOMETRES +PICOMOLE +PICOMOLES +PICORNAVIRUS +PICORNAVIRUSES +PICOSECOND +PICOSECONDS +PICOT +PICOTED +PICOTEE +PICOTEES +PICOTING +PICOTS +PICOWAVE +PICOWAVED +PICOWAVES +PICOWAVING +PICQUET +PICQUETS +PICRATE +PICRATED +PICRATES +PICRIC +PICRITE +PICRITES +PICRITIC +PICROTOXIN +PICROTOXINS +PICS +PICTOGRAM +PICTOGRAMS +PICTOGRAPH +PICTOGRAPHIC +PICTOGRAPHIES +PICTOGRAPHS +PICTOGRAPHY +PICTORIAL +PICTORIALISM +PICTORIALISMS +PICTORIALIST +PICTORIALISTS +PICTORIALIZE +PICTORIALIZED +PICTORIALIZES +PICTORIALIZING +PICTORIALLY +PICTORIALNESS +PICTORIALNESSES +PICTORIALS +PICTURE +PICTURED +PICTUREPHONE +PICTUREPHONES +PICTURES +PICTURESQUE +PICTURESQUELY +PICTURESQUENESS +PICTURING +PICTURIZATION +PICTURIZATIONS +PICTURIZE +PICTURIZED +PICTURIZES +PICTURIZING +PICUL +PICULS +PIDDLE +PIDDLED +PIDDLER +PIDDLERS +PIDDLES +PIDDLING +PIDDLY +PIDDOCK +PIDDOCKS +PIDGIN +PIDGINIZATION +PIDGINIZATIONS +PIDGINIZE +PIDGINIZED +PIDGINIZES +PIDGINIZING +PIDGINS +PIE +PIEBALD +PIEBALDS +PIECE +PIECED +PIECEMEAL +PIECER +PIECERS +PIECES +PIECEWISE +PIECEWORK +PIECEWORKER +PIECEWORKERS +PIECEWORKS +PIECING +PIECINGS +PIECRUST +PIECRUSTS +PIED +PIEDFORT +PIEDFORTS +PIEDMONT +PIEDMONTS +PIEFORT +PIEFORTS +PIEHOLE +PIEHOLES +PIEING +PIEPLANT +PIEPLANTS +PIER +PIERCE +PIERCED +PIERCER +PIERCERS +PIERCES +PIERCING +PIERCINGLY +PIERCINGS +PIERIDINE +PIEROGI +PIEROGIES +PIERROT +PIERROTS +PIERS +PIES +PIETA +PIETAS +PIETIES +PIETISM +PIETISMS +PIETIST +PIETISTIC +PIETISTICALLY +PIETISTS +PIETY +PIEZOELECTRIC +PIEZOMETER +PIEZOMETERS +PIEZOMETRIC +PIFFLE +PIFFLED +PIFFLES +PIFFLING +PIG +PIGBOAT +PIGBOATS +PIGEON +PIGEONHOLE +PIGEONHOLED +PIGEONHOLER +PIGEONHOLERS +PIGEONHOLES +PIGEONHOLING +PIGEONITE +PIGEONITES +PIGEONS +PIGEONWING +PIGEONWINGS +PIGFISH +PIGFISHES +PIGGED +PIGGERIES +PIGGERY +PIGGIE +PIGGIER +PIGGIES +PIGGIEST +PIGGIN +PIGGINESS +PIGGINESSES +PIGGING +PIGGINS +PIGGISH +PIGGISHLY +PIGGISHNESS +PIGGISHNESSES +PIGGY +PIGGYBACK +PIGGYBACKED +PIGGYBACKING +PIGGYBACKS +PIGHEADED +PIGHEADEDLY +PIGHEADEDNESS +PIGHEADEDNESSES +PIGLET +PIGLETS +PIGLIKE +PIGMENT +PIGMENTARY +PIGMENTATION +PIGMENTATIONS +PIGMENTED +PIGMENTING +PIGMENTS +PIGMIES +PIGMY +PIGNOLI +PIGNOLIA +PIGNOLIAS +PIGNOLIS +PIGNORA +PIGNUS +PIGNUT +PIGNUTS +PIGOUT +PIGOUTS +PIGPEN +PIGPENS +PIGS +PIGSKIN +PIGSKINS +PIGSNEY +PIGSNEYS +PIGSTICK +PIGSTICKED +PIGSTICKER +PIGSTICKERS +PIGSTICKING +PIGSTICKS +PIGSTIES +PIGSTY +PIGTAIL +PIGTAILED +PIGTAILS +PIGWEED +PIGWEEDS +PIING +PIKA +PIKAKE +PIKAKES +PIKAS +PIKE +PIKED +PIKEMAN +PIKEMEN +PIKEPERCH +PIKEPERCHES +PIKER +PIKERS +PIKES +PIKESTAFF +PIKESTAFFS +PIKESTAVES +PIKI +PIKING +PIKIS +PILAF +PILAFF +PILAFFS +PILAFS +PILAR +PILASTER +PILASTERS +PILAU +PILAUS +PILAW +PILAWS +PILCHARD +PILCHARDS +PILE +PILEA +PILEATE +PILEATED +PILED +PILEI +PILELESS +PILEOUS +PILES +PILEUM +PILEUP +PILEUPS +PILEUS +PILEWORT +PILEWORTS +PILFER +PILFERABLE +PILFERAGE +PILFERAGES +PILFERED +PILFERER +PILFERERS +PILFERING +PILFERPROOF +PILFERS +PILGARLIC +PILGARLICS +PILGRIM +PILGRIMAGE +PILGRIMAGED +PILGRIMAGES +PILGRIMAGING +PILGRIMS +PILI +PILIFORM +PILING +PILINGS +PILIS +PILL +PILLAGE +PILLAGED +PILLAGER +PILLAGERS +PILLAGES +PILLAGING +PILLAR +PILLARED +PILLARING +PILLARLESS +PILLARS +PILLBOX +PILLBOXES +PILLED +PILLING +PILLION +PILLIONS +PILLORIED +PILLORIES +PILLORY +PILLORYING +PILLOW +PILLOWCASE +PILLOWCASES +PILLOWED +PILLOWING +PILLOWS +PILLOWY +PILLS +PILOCARPINE +PILOCARPINES +PILONIDAL +PILOSE +PILOSITIES +PILOSITY +PILOT +PILOTAGE +PILOTAGES +PILOTED +PILOTFISH +PILOTFISHES +PILOTHOUSE +PILOTHOUSES +PILOTING +PILOTINGS +PILOTLESS +PILOTS +PILOUS +PILSENER +PILSENERS +PILSNER +PILSNERS +PILULAR +PILULE +PILULES +PILUS +PILY +PIMA +PIMAS +PIMENTO +PIMENTOS +PIMIENTO +PIMIENTOS +PIMP +PIMPED +PIMPERNEL +PIMPERNELS +PIMPING +PIMPLE +PIMPLED +PIMPLES +PIMPLIER +PIMPLIEST +PIMPLY +PIMPMOBILE +PIMPMOBILES +PIMPS +PIN +PINA +PINACEOUS +PINAFORE +PINAFORED +PINAFORES +PINANG +PINANGS +PINAS +PINASTER +PINASTERS +PINATA +PINATAS +PINBALL +PINBALLED +PINBALLING +PINBALLS +PINBONE +PINBONES +PINCER +PINCERLIKE +PINCERS +PINCH +PINCHBECK +PINCHBECKS +PINCHBUG +PINCHBUGS +PINCHCOCK +PINCHCOCKS +PINCHECK +PINCHECKS +PINCHED +PINCHER +PINCHERS +PINCHES +PINCHING +PINCHPENNY +PINCUSHION +PINCUSHIONS +PINDER +PINDERS +PINDLING +PINE +PINEAL +PINEALECTOMIES +PINEALECTOMIZE +PINEALECTOMIZED +PINEALECTOMIZES +PINEALECTOMY +PINEALS +PINEAPPLE +PINEAPPLES +PINECONE +PINECONES +PINED +PINEDROPS +PINELAND +PINELANDS +PINELIKE +PINENE +PINENES +PINERIES +PINERY +PINES +PINESAP +PINESAPS +PINETA +PINETUM +PINEWOOD +PINEWOODS +PINEY +PINFEATHER +PINFEATHERS +PINFISH +PINFISHES +PINFOLD +PINFOLDED +PINFOLDING +PINFOLDS +PING +PINGED +PINGER +PINGERS +PINGING +PINGO +PINGOES +PINGOS +PINGRASS +PINGRASSES +PINGS +PINGUID +PINHEAD +PINHEADED +PINHEADEDNESS +PINHEADEDNESSES +PINHEADS +PINHOLE +PINHOLES +PINIER +PINIEST +PINING +PINION +PINIONED +PINIONING +PINIONS +PINITE +PINITES +PINITOL +PINITOLS +PINK +PINKED +PINKEN +PINKENED +PINKENING +PINKENS +PINKER +PINKERS +PINKEST +PINKEY +PINKEYE +PINKEYES +PINKEYS +PINKIE +PINKIES +PINKING +PINKINGS +PINKISH +PINKISHNESS +PINKISHNESSES +PINKLY +PINKNESS +PINKNESSES +PINKO +PINKOES +PINKOS +PINKROOT +PINKROOTS +PINKS +PINKY +PINNA +PINNACE +PINNACES +PINNACLE +PINNACLED +PINNACLES +PINNACLING +PINNAE +PINNAL +PINNAS +PINNATE +PINNATED +PINNATELY +PINNATIFID +PINNATION +PINNATIONS +PINNED +PINNER +PINNERS +PINNIES +PINNING +PINNIPED +PINNIPEDS +PINNULA +PINNULAE +PINNULAR +PINNULATE +PINNULE +PINNULES +PINNY +PINOCHLE +PINOCHLES +PINOCLE +PINOCLES +PINOCYTIC +PINOCYTOSES +PINOCYTOSIS +PINOCYTOTIC +PINOCYTOTICALLY +PINOLE +PINOLES +PINON +PINONES +PINONS +PINOT +PINOTS +PINPOINT +PINPOINTED +PINPOINTING +PINPOINTS +PINPRICK +PINPRICKED +PINPRICKING +PINPRICKS +PINS +PINSCHER +PINSCHERS +PINSETTER +PINSETTERS +PINSPOTTER +PINSPOTTERS +PINSTRIPE +PINSTRIPES +PINT +PINTA +PINTADA +PINTADAS +PINTADO +PINTADOES +PINTADOS +PINTAIL +PINTAILED +PINTAILS +PINTANO +PINTANOS +PINTAS +PINTLE +PINTLES +PINTO +PINTOES +PINTOS +PINTS +PINTSIZE +PINTSIZED +PINUP +PINUPS +PINWALE +PINWALES +PINWEED +PINWEEDS +PINWHEEL +PINWHEELED +PINWHEELING +PINWHEELS +PINWORK +PINWORKS +PINWORM +PINWORMS +PINWRENCH +PINWRENCHES +PINY +PINYIN +PINYON +PINYONS +PIOLET +PIOLETS +PION +PIONEER +PIONEERED +PIONEERING +PIONEERS +PIONIC +PIONS +PIOSITIES +PIOSITY +PIOUS +PIOUSLY +PIOUSNESS +PIOUSNESSES +PIP +PIPAGE +PIPAGES +PIPAL +PIPALS +PIPE +PIPEAGE +PIPEAGES +PIPED +PIPEFISH +PIPEFISHES +PIPEFUL +PIPEFULS +PIPELESS +PIPELIKE +PIPELINE +PIPELINED +PIPELINES +PIPELINING +PIPER +PIPERAZINE +PIPERAZINES +PIPERIDINE +PIPERIDINES +PIPERINE +PIPERINES +PIPERONAL +PIPERONALS +PIPERS +PIPES +PIPESTEM +PIPESTEMS +PIPESTONE +PIPESTONES +PIPET +PIPETS +PIPETTE +PIPETTED +PIPETTES +PIPETTING +PIPIER +PIPIEST +PIPINESS +PIPINESSES +PIPING +PIPINGLY +PIPINGS +PIPISTREL +PIPISTRELS +PIPIT +PIPITS +PIPKIN +PIPKINS +PIPPED +PIPPIN +PIPPING +PIPPINS +PIPS +PIPSISSEWA +PIPSISSEWAS +PIPSQUEAK +PIPSQUEAKS +PIPY +PIQUANCE +PIQUANCES +PIQUANCIES +PIQUANCY +PIQUANT +PIQUANTLY +PIQUANTNESS +PIQUANTNESSES +PIQUE +PIQUED +PIQUES +PIQUET +PIQUETS +PIQUING +PIRACETAM +PIRACETAMS +PIRACIES +PIRACY +PIRAGUA +PIRAGUAS +PIRANA +PIRANAS +PIRANHA +PIRANHAS +PIRARUCU +PIRARUCUS +PIRATE +PIRATED +PIRATES +PIRATIC +PIRATICAL +PIRATICALLY +PIRATING +PIRAYA +PIRAYAS +PIRIFORM +PIRN +PIRNS +PIROG +PIROGEN +PIROGHI +PIROGI +PIROGIES +PIROGUE +PIROGUES +PIROJKI +PIROPLASM +PIROPLASMA +PIROPLASMATA +PIROPLASMS +PIROQUE +PIROQUES +PIROSHKI +PIROUETTE +PIROUETTED +PIROUETTES +PIROUETTING +PIROZHKI +PIROZHOK +PIS +PISCARIES +PISCARY +PISCATOR +PISCATORIAL +PISCATORS +PISCATORY +PISCICULTURE +PISCICULTURES +PISCIFORM +PISCINA +PISCINAE +PISCINAL +PISCINAS +PISCINE +PISCIVORE +PISCIVORES +PISCIVOROUS +PISCO +PISCOS +PISH +PISHED +PISHER +PISHERS +PISHES +PISHING +PISHOGE +PISHOGES +PISHOGUE +PISHOGUES +PISIFORM +PISIFORMS +PISMIRE +PISMIRES +PISO +PISOLITE +PISOLITES +PISOLITH +PISOLITHS +PISOLITIC +PISOS +PISS +PISSANT +PISSANTS +PISSED +PISSER +PISSERS +PISSES +PISSING +PISSOIR +PISSOIRS +PISTACHE +PISTACHES +PISTACHIO +PISTACHIOS +PISTAREEN +PISTAREENS +PISTE +PISTES +PISTIL +PISTILLATE +PISTILS +PISTOL +PISTOLE +PISTOLED +PISTOLEER +PISTOLEERS +PISTOLERO +PISTOLEROS +PISTOLES +PISTOLIER +PISTOLIERS +PISTOLING +PISTOLLED +PISTOLLING +PISTOLS +PISTON +PISTONS +PISTOU +PISTOUS +PIT +PITA +PITAHAYA +PITAHAYAS +PITAPAT +PITAPATS +PITAPATTED +PITAPATTING +PITAS +PITAYA +PITAYAS +PITCH +PITCHBLENDE +PITCHBLENDES +PITCHED +PITCHER +PITCHERFUL +PITCHERFULS +PITCHERS +PITCHERSFUL +PITCHES +PITCHFORK +PITCHFORKED +PITCHFORKING +PITCHFORKS +PITCHIER +PITCHIEST +PITCHILY +PITCHING +PITCHMAN +PITCHMEN +PITCHOUT +PITCHOUTS +PITCHPOLE +PITCHPOLED +PITCHPOLES +PITCHPOLING +PITCHWOMAN +PITCHWOMEN +PITCHY +PITEOUS +PITEOUSLY +PITEOUSNESS +PITEOUSNESSES +PITFALL +PITFALLS +PITH +PITHEAD +PITHEADS +PITHECANTHROPI +PITHECANTHROPUS +PITHECOID +PITHED +PITHIER +PITHIEST +PITHILY +PITHINESS +PITHINESSES +PITHING +PITHLESS +PITHS +PITHY +PITIABLE +PITIABLENESS +PITIABLENESSES +PITIABLY +PITIED +PITIER +PITIERS +PITIES +PITIFUL +PITIFULLER +PITIFULLEST +PITIFULLY +PITIFULNESS +PITIFULNESSES +PITILESS +PITILESSLY +PITILESSNESS +PITILESSNESSES +PITMAN +PITMANS +PITMEN +PITON +PITONS +PITS +PITSAW +PITSAWS +PITTA +PITTANCE +PITTANCES +PITTAS +PITTED +PITTING +PITTINGS +PITTOSPORUM +PITTOSPORUMS +PITUITARIES +PITUITARY +PITY +PITYING +PITYINGLY +PITYRIASES +PITYRIASIS +PIU +PIVOT +PIVOTABLE +PIVOTAL +PIVOTALLY +PIVOTED +PIVOTING +PIVOTMAN +PIVOTMEN +PIVOTS +PIX +PIXEL +PIXELS +PIXES +PIXIE +PIXIEISH +PIXIES +PIXILATED +PIXILATION +PIXILATIONS +PIXILLATED +PIXINESS +PIXINESSES +PIXY +PIXYISH +PIZAZZ +PIZAZZES +PIZAZZY +PIZZA +PIZZALIKE +PIZZAS +PIZZAZ +PIZZAZES +PIZZAZZ +PIZZAZZES +PIZZAZZY +PIZZELLE +PIZZELLES +PIZZERIA +PIZZERIAS +PIZZICATI +PIZZICATO +PIZZLE +PIZZLES +PLACABILITIES +PLACABILITY +PLACABLE +PLACABLY +PLACARD +PLACARDED +PLACARDING +PLACARDS +PLACATE +PLACATED +PLACATER +PLACATERS +PLACATES +PLACATING +PLACATINGLY +PLACATION +PLACATIONS +PLACATIVE +PLACATORY +PLACE +PLACEABLE +PLACEBO +PLACEBOES +PLACEBOS +PLACED +PLACEHOLDER +PLACEHOLDERS +PLACEKICK +PLACEKICKED +PLACEKICKER +PLACEKICKERS +PLACEKICKING +PLACEKICKS +PLACELESS +PLACELESSLY +PLACEMAN +PLACEMEN +PLACEMENT +PLACEMENTS +PLACENTA +PLACENTAE +PLACENTAL +PLACENTALS +PLACENTAS +PLACENTATION +PLACENTATIONS +PLACER +PLACERS +PLACES +PLACET +PLACETS +PLACID +PLACIDITIES +PLACIDITY +PLACIDLY +PLACIDNESS +PLACIDNESSES +PLACING +PLACK +PLACKET +PLACKETS +PLACKS +PLACODERM +PLACODERMS +PLACOID +PLACOIDS +PLAFOND +PLAFONDS +PLAGAL +PLAGE +PLAGES +PLAGIARIES +PLAGIARISE +PLAGIARISED +PLAGIARISES +PLAGIARISING +PLAGIARISM +PLAGIARISMS +PLAGIARIST +PLAGIARISTIC +PLAGIARISTS +PLAGIARIZE +PLAGIARIZED +PLAGIARIZER +PLAGIARIZERS +PLAGIARIZES +PLAGIARIZING +PLAGIARY +PLAGIOCLASE +PLAGIOCLASES +PLAGIOTROPIC +PLAGUE +PLAGUED +PLAGUER +PLAGUERS +PLAGUES +PLAGUEY +PLAGUILY +PLAGUING +PLAGUY +PLAICE +PLAICES +PLAID +PLAIDED +PLAIDS +PLAIN +PLAINCHANT +PLAINCHANTS +PLAINCLOTHES +PLAINCLOTHESMAN +PLAINCLOTHESMEN +PLAINED +PLAINER +PLAINEST +PLAINING +PLAINLY +PLAINNESS +PLAINNESSES +PLAINS +PLAINSMAN +PLAINSMEN +PLAINSONG +PLAINSONGS +PLAINSPOKEN +PLAINSPOKENNESS +PLAINT +PLAINTEXT +PLAINTEXTS +PLAINTFUL +PLAINTIFF +PLAINTIFFS +PLAINTIVE +PLAINTIVELY +PLAINTIVENESS +PLAINTIVENESSES +PLAINTS +PLAISTER +PLAISTERED +PLAISTERING +PLAISTERS +PLAIT +PLAITED +PLAITER +PLAITERS +PLAITING +PLAITINGS +PLAITS +PLAN +PLANAR +PLANARIA +PLANARIAN +PLANARIANS +PLANARIAS +PLANARITIES +PLANARITY +PLANATE +PLANATION +PLANATIONS +PLANCH +PLANCHE +PLANCHES +PLANCHET +PLANCHETS +PLANCHETTE +PLANCHETTES +PLANE +PLANED +PLANELOAD +PLANELOADS +PLANENESS +PLANENESSES +PLANER +PLANERS +PLANES +PLANESIDE +PLANESIDES +PLANET +PLANETARIA +PLANETARIES +PLANETARIUM +PLANETARIUMS +PLANETARY +PLANETESIMAL +PLANETESIMALS +PLANETLIKE +PLANETOID +PLANETOIDAL +PLANETOIDS +PLANETOLOGICAL +PLANETOLOGIES +PLANETOLOGIST +PLANETOLOGISTS +PLANETOLOGY +PLANETS +PLANETWIDE +PLANFORM +PLANFORMS +PLANGENCIES +PLANGENCY +PLANGENT +PLANGENTLY +PLANIMETER +PLANIMETERS +PLANIMETRIC +PLANIMETRICALLY +PLANING +PLANISH +PLANISHED +PLANISHER +PLANISHERS +PLANISHES +PLANISHING +PLANISPHERE +PLANISPHERES +PLANISPHERIC +PLANK +PLANKED +PLANKING +PLANKINGS +PLANKS +PLANKTER +PLANKTERS +PLANKTON +PLANKTONIC +PLANKTONS +PLANLESS +PLANLESSLY +PLANLESSNESS +PLANLESSNESSES +PLANNED +PLANNER +PLANNERS +PLANNING +PLANNINGS +PLANOGRAPHIC +PLANOGRAPHIES +PLANOGRAPHY +PLANOSOL +PLANOSOLS +PLANS +PLANT +PLANTABLE +PLANTAIN +PLANTAINS +PLANTAR +PLANTATION +PLANTATIONS +PLANTED +PLANTER +PLANTERS +PLANTIGRADE +PLANTIGRADES +PLANTING +PLANTINGS +PLANTLET +PLANTLETS +PLANTLIKE +PLANTOCRACIES +PLANTOCRACY +PLANTS +PLANTSMAN +PLANTSMEN +PLANULA +PLANULAE +PLANULAR +PLANULATE +PLANULOID +PLAQUE +PLAQUES +PLASH +PLASHED +PLASHER +PLASHERS +PLASHES +PLASHIER +PLASHIEST +PLASHING +PLASHY +PLASM +PLASMA +PLASMAGEL +PLASMAGELS +PLASMAGENE +PLASMAGENES +PLASMALEMMA +PLASMALEMMAS +PLASMAPHERESES +PLASMAPHERESIS +PLASMAS +PLASMASOL +PLASMASOLS +PLASMATIC +PLASMIC +PLASMID +PLASMIDS +PLASMIN +PLASMINOGEN +PLASMINOGENS +PLASMINS +PLASMODESM +PLASMODESMA +PLASMODESMAS +PLASMODESMATA +PLASMODIA +PLASMODIUM +PLASMOGAMIES +PLASMOGAMY +PLASMOID +PLASMOIDS +PLASMOLYSES +PLASMOLYSIS +PLASMOLYTIC +PLASMOLYZE +PLASMOLYZED +PLASMOLYZES +PLASMOLYZING +PLASMON +PLASMONS +PLASMS +PLASTER +PLASTERBOARD +PLASTERBOARDS +PLASTERED +PLASTERER +PLASTERERS +PLASTERING +PLASTERINGS +PLASTERS +PLASTERWORK +PLASTERWORKS +PLASTERY +PLASTIC +PLASTICALLY +PLASTICENE +PLASTICENES +PLASTICINE +PLASTICINES +PLASTICITIES +PLASTICITY +PLASTICIZATION +PLASTICIZATIONS +PLASTICIZE +PLASTICIZED +PLASTICIZER +PLASTICIZERS +PLASTICIZES +PLASTICIZING +PLASTICKY +PLASTICLY +PLASTICS +PLASTID +PLASTIDIAL +PLASTIDS +PLASTIQUE +PLASTIQUES +PLASTISOL +PLASTISOLS +PLASTOCYANIN +PLASTOCYANINS +PLASTOQUINONE +PLASTOQUINONES +PLASTRAL +PLASTRON +PLASTRONS +PLASTRUM +PLASTRUMS +PLAT +PLATAN +PLATANE +PLATANES +PLATANS +PLATE +PLATEAU +PLATEAUED +PLATEAUING +PLATEAUS +PLATEAUX +PLATED +PLATEFUL +PLATEFULS +PLATEGLASS +PLATELET +PLATELETS +PLATELIKE +PLATEMAKER +PLATEMAKERS +PLATEMAKING +PLATEMAKINGS +PLATEN +PLATENS +PLATER +PLATERESQUE +PLATERS +PLATES +PLATESFUL +PLATFORM +PLATFORMS +PLATIER +PLATIES +PLATIEST +PLATINA +PLATINAS +PLATING +PLATINGS +PLATINIC +PLATINIZE +PLATINIZED +PLATINIZES +PLATINIZING +PLATINOCYANIDE +PLATINOCYANIDES +PLATINOID +PLATINOIDS +PLATINOUS +PLATINUM +PLATINUMS +PLATITUDE +PLATITUDES +PLATITUDINAL +PLATITUDINARIAN +PLATITUDINIZE +PLATITUDINIZED +PLATITUDINIZES +PLATITUDINIZING +PLATITUDINOUS +PLATITUDINOUSLY +PLATONIC +PLATONICALLY +PLATONISM +PLATONISMS +PLATOON +PLATOONED +PLATOONING +PLATOONS +PLATS +PLATTED +PLATTER +PLATTERFUL +PLATTERFULS +PLATTERS +PLATTERSFUL +PLATTING +PLATY +PLATYFISH +PLATYFISHES +PLATYHELMINTH +PLATYHELMINTHIC +PLATYHELMINTHS +PLATYPI +PLATYPUS +PLATYPUSES +PLATYRRHINE +PLATYRRHINES +PLATYS +PLAUDIT +PLAUDITS +PLAUSIBILITIES +PLAUSIBILITY +PLAUSIBLE +PLAUSIBLENESS +PLAUSIBLENESSES +PLAUSIBLY +PLAUSIVE +PLAY +PLAYA +PLAYABILITIES +PLAYABILITY +PLAYABLE +PLAYACT +PLAYACTED +PLAYACTING +PLAYACTINGS +PLAYACTOR +PLAYACTORS +PLAYACTS +PLAYAS +PLAYBACK +PLAYBACKS +PLAYBILL +PLAYBILLS +PLAYBOOK +PLAYBOOKS +PLAYBOY +PLAYBOYS +PLAYDATE +PLAYDATES +PLAYDAY +PLAYDAYS +PLAYDOWN +PLAYDOWNS +PLAYED +PLAYER +PLAYERS +PLAYFELLOW +PLAYFELLOWS +PLAYFIELD +PLAYFIELDS +PLAYFUL +PLAYFULLY +PLAYFULNESS +PLAYFULNESSES +PLAYGIRL +PLAYGIRLS +PLAYGOER +PLAYGOERS +PLAYGOING +PLAYGOINGS +PLAYGROUND +PLAYGROUNDS +PLAYGROUP +PLAYGROUPS +PLAYHOUSE +PLAYHOUSES +PLAYING +PLAYLAND +PLAYLANDS +PLAYLESS +PLAYLET +PLAYLETS +PLAYLIKE +PLAYLIST +PLAYLISTS +PLAYMAKER +PLAYMAKERS +PLAYMAKING +PLAYMAKINGS +PLAYMATE +PLAYMATES +PLAYOFF +PLAYOFFS +PLAYPEN +PLAYPENS +PLAYROOM +PLAYROOMS +PLAYS +PLAYSUIT +PLAYSUITS +PLAYTHING +PLAYTHINGS +PLAYTIME +PLAYTIMES +PLAYWEAR +PLAYWRIGHT +PLAYWRIGHTING +PLAYWRIGHTINGS +PLAYWRIGHTS +PLAYWRITING +PLAYWRITINGS +PLAZA +PLAZAS +PLEA +PLEACH +PLEACHED +PLEACHES +PLEACHING +PLEAD +PLEADABLE +PLEADED +PLEADER +PLEADERS +PLEADING +PLEADINGLY +PLEADINGS +PLEADS +PLEAS +PLEASANCE +PLEASANCES +PLEASANT +PLEASANTER +PLEASANTEST +PLEASANTLY +PLEASANTNESS +PLEASANTNESSES +PLEASANTRIES +PLEASANTRY +PLEASE +PLEASED +PLEASER +PLEASERS +PLEASES +PLEASING +PLEASINGLY +PLEASINGNESS +PLEASINGNESSES +PLEASURABILITY +PLEASURABLE +PLEASURABLENESS +PLEASURABLY +PLEASURE +PLEASURED +PLEASURELESS +PLEASURES +PLEASURING +PLEAT +PLEATED +PLEATER +PLEATERS +PLEATHER +PLEATHERS +PLEATING +PLEATLESS +PLEATS +PLEB +PLEBE +PLEBEIAN +PLEBEIANISM +PLEBEIANISMS +PLEBEIANLY +PLEBEIANS +PLEBES +PLEBISCITARY +PLEBISCITE +PLEBISCITES +PLEBS +PLECOPTERAN +PLECOPTERANS +PLECTRA +PLECTRON +PLECTRONS +PLECTRUM +PLECTRUMS +PLED +PLEDGE +PLEDGED +PLEDGEE +PLEDGEES +PLEDGEOR +PLEDGEORS +PLEDGER +PLEDGERS +PLEDGES +PLEDGET +PLEDGETS +PLEDGING +PLEDGOR +PLEDGORS +PLEIAD +PLEIADES +PLEIADS +PLEINAIRISM +PLEINAIRISMS +PLEINAIRIST +PLEINAIRISTS +PLEIOCENE +PLEIOTAXIES +PLEIOTAXY +PLEIOTROPIC +PLEIOTROPIES +PLEIOTROPY +PLENA +PLENARIES +PLENARILY +PLENARY +PLENCH +PLENCHES +PLENIPOTENT +PLENIPOTENTIARY +PLENISH +PLENISHED +PLENISHES +PLENISHING +PLENISM +PLENISMS +PLENIST +PLENISTS +PLENITUDE +PLENITUDES +PLENITUDINOUS +PLENTEOUS +PLENTEOUSLY +PLENTEOUSNESS +PLENTEOUSNESSES +PLENTIES +PLENTIFUL +PLENTIFULLY +PLENTIFULNESS +PLENTIFULNESSES +PLENTITUDE +PLENTITUDES +PLENTY +PLENUM +PLENUMS +PLEOCHROIC +PLEOCHROISM +PLEOCHROISMS +PLEOMORPHIC +PLEOMORPHISM +PLEOMORPHISMS +PLEON +PLEONAL +PLEONASM +PLEONASMS +PLEONASTIC +PLEONASTICALLY +PLEONIC +PLEONS +PLEOPOD +PLEOPODS +PLEROCERCOID +PLEROCERCOIDS +PLESIOSAUR +PLESIOSAURS +PLESSOR +PLESSORS +PLETHORA +PLETHORAS +PLETHORIC +PLETHYSMOGRAM +PLETHYSMOGRAMS +PLETHYSMOGRAPH +PLETHYSMOGRAPHS +PLETHYSMOGRAPHY +PLEURA +PLEURAE +PLEURAL +PLEURAS +PLEURISIES +PLEURISY +PLEURITIC +PLEURON +PLEUROPNEUMONIA +PLEUSTON +PLEUSTONIC +PLEUSTONS +PLEW +PLEWS +PLEX +PLEXAL +PLEXES +PLEXIFORM +PLEXOR +PLEXORS +PLEXUS +PLEXUSES +PLIABILITIES +PLIABILITY +PLIABLE +PLIABLENESS +PLIABLENESSES +PLIABLY +PLIANCIES +PLIANCY +PLIANT +PLIANTLY +PLIANTNESS +PLIANTNESSES +PLICA +PLICAE +PLICAL +PLICATE +PLICATED +PLICATELY +PLICATION +PLICATIONS +PLICATURE +PLICATURES +PLIE +PLIED +PLIER +PLIERS +PLIES +PLIGHT +PLIGHTED +PLIGHTER +PLIGHTERS +PLIGHTING +PLIGHTS +PLIMSOL +PLIMSOLE +PLIMSOLES +PLIMSOLL +PLIMSOLLS +PLIMSOLS +PLINK +PLINKED +PLINKER +PLINKERS +PLINKING +PLINKS +PLINTH +PLINTHS +PLIOCENE +PLIOFILM +PLIOFILMS +PLIOTRON +PLIOTRONS +PLISKIE +PLISKIES +PLISKY +PLISSE +PLISSES +PLOD +PLODDED +PLODDER +PLODDERS +PLODDING +PLODDINGLY +PLODS +PLOIDIES +PLOIDY +PLONK +PLONKED +PLONKING +PLONKS +PLOP +PLOPPED +PLOPPING +PLOPS +PLOSION +PLOSIONS +PLOSIVE +PLOSIVES +PLOT +PLOTLESS +PLOTLESSNESS +PLOTLESSNESSES +PLOTLINE +PLOTLINES +PLOTS +PLOTTAGE +PLOTTAGES +PLOTTED +PLOTTER +PLOTTERS +PLOTTIER +PLOTTIES +PLOTTIEST +PLOTTING +PLOTTY +PLOTZ +PLOTZED +PLOTZES +PLOTZING +PLOUGH +PLOUGHED +PLOUGHER +PLOUGHERS +PLOUGHING +PLOUGHS +PLOVER +PLOVERS +PLOW +PLOWABLE +PLOWBACK +PLOWBACKS +PLOWBOY +PLOWBOYS +PLOWED +PLOWER +PLOWERS +PLOWHEAD +PLOWHEADS +PLOWING +PLOWLAND +PLOWLANDS +PLOWMAN +PLOWMEN +PLOWS +PLOWSHARE +PLOWSHARES +PLOY +PLOYED +PLOYING +PLOYS +PLUCK +PLUCKED +PLUCKER +PLUCKERS +PLUCKIER +PLUCKIEST +PLUCKILY +PLUCKINESS +PLUCKINESSES +PLUCKING +PLUCKS +PLUCKY +PLUG +PLUGGED +PLUGGER +PLUGGERS +PLUGGING +PLUGLESS +PLUGOLA +PLUGOLAS +PLUGS +PLUGUGLIES +PLUGUGLY +PLUM +PLUMAGE +PLUMAGED +PLUMAGES +PLUMATE +PLUMB +PLUMBABLE +PLUMBAGO +PLUMBAGOS +PLUMBED +PLUMBEOUS +PLUMBER +PLUMBERIES +PLUMBERS +PLUMBERY +PLUMBIC +PLUMBING +PLUMBINGS +PLUMBISM +PLUMBISMS +PLUMBNESS +PLUMBNESSES +PLUMBOUS +PLUMBS +PLUMBUM +PLUMBUMS +PLUME +PLUMED +PLUMELET +PLUMELETS +PLUMERIA +PLUMERIAS +PLUMES +PLUMIER +PLUMIEST +PLUMING +PLUMIPED +PLUMIPEDS +PLUMLIKE +PLUMMER +PLUMMEST +PLUMMET +PLUMMETED +PLUMMETING +PLUMMETS +PLUMMIER +PLUMMIEST +PLUMMY +PLUMOSE +PLUMOSELY +PLUMOSITIES +PLUMOSITY +PLUMP +PLUMPED +PLUMPEN +PLUMPENED +PLUMPENING +PLUMPENS +PLUMPER +PLUMPERS +PLUMPEST +PLUMPING +PLUMPISH +PLUMPLY +PLUMPNESS +PLUMPNESSES +PLUMPS +PLUMS +PLUMULAR +PLUMULE +PLUMULES +PLUMULOSE +PLUMY +PLUNDER +PLUNDERED +PLUNDERER +PLUNDERERS +PLUNDERING +PLUNDEROUS +PLUNDERS +PLUNGE +PLUNGED +PLUNGER +PLUNGERS +PLUNGES +PLUNGING +PLUNK +PLUNKED +PLUNKER +PLUNKERS +PLUNKIER +PLUNKIEST +PLUNKING +PLUNKS +PLUNKY +PLUPERFECT +PLUPERFECTS +PLURAL +PLURALISM +PLURALISMS +PLURALIST +PLURALISTIC +PLURALISTICALLY +PLURALISTS +PLURALITIES +PLURALITY +PLURALIZATION +PLURALIZATIONS +PLURALIZE +PLURALIZED +PLURALIZES +PLURALIZING +PLURALLY +PLURALS +PLURIPOTENT +PLUS +PLUSES +PLUSH +PLUSHER +PLUSHES +PLUSHEST +PLUSHIER +PLUSHIEST +PLUSHILY +PLUSHINESS +PLUSHINESSES +PLUSHLY +PLUSHNESS +PLUSHNESSES +PLUSHY +PLUSSAGE +PLUSSAGES +PLUSSES +PLUTEI +PLUTEUS +PLUTOCRACIES +PLUTOCRACY +PLUTOCRAT +PLUTOCRATIC +PLUTOCRATICALLY +PLUTOCRATS +PLUTON +PLUTONIAN +PLUTONIC +PLUTONISM +PLUTONISMS +PLUTONIUM +PLUTONIUMS +PLUTONS +PLUVIAL +PLUVIALS +PLUVIAN +PLUVIOSE +PLUVIOUS +PLY +PLYER +PLYERS +PLYING +PLYINGLY +PLYOMETRIC +PLYOMETRICS +PLYWOOD +PLYWOODS +PNEUMA +PNEUMAS +PNEUMATIC +PNEUMATICALLY +PNEUMATICITIES +PNEUMATICITY +PNEUMATICS +PNEUMATOLOGIES +PNEUMATOLOGY +PNEUMATOLYTIC +PNEUMATOPHORE +PNEUMATOPHORES +PNEUMOCOCCAL +PNEUMOCOCCI +PNEUMOCOCCUS +PNEUMOCONIOSES +PNEUMOCONIOSIS +PNEUMOGRAPH +PNEUMOGRAPHS +PNEUMONECTOMIES +PNEUMONECTOMY +PNEUMONIA +PNEUMONIAS +PNEUMONIC +PNEUMONITIS +PNEUMONITISES +PNEUMOTHORACES +PNEUMOTHORAX +PNEUMOTHORAXES +POACEOUS +POACH +POACHABLE +POACHED +POACHER +POACHERS +POACHES +POACHIER +POACHIEST +POACHING +POACHY +POBLANO +POBLANOS +POBOY +POBOYS +POCHARD +POCHARDS +POCK +POCKED +POCKET +POCKETABLE +POCKETBOOK +POCKETBOOKS +POCKETED +POCKETER +POCKETERS +POCKETFUL +POCKETFULS +POCKETING +POCKETKNIFE +POCKETKNIVES +POCKETS +POCKETSFUL +POCKIER +POCKIEST +POCKILY +POCKING +POCKMARK +POCKMARKED +POCKMARKING +POCKMARKS +POCKS +POCKY +POCO +POCOCURANTE +POCOCURANTISM +POCOCURANTISMS +POCOSEN +POCOSENS +POCOSIN +POCOSINS +POCOSON +POCOSONS +POD +PODAGRA +PODAGRAL +PODAGRAS +PODAGRIC +PODAGROUS +PODDED +PODDING +PODESTA +PODESTAS +PODGIER +PODGIEST +PODGILY +PODGY +PODIA +PODIATRIC +PODIATRIES +PODIATRIST +PODIATRISTS +PODIATRY +PODITE +PODITES +PODITIC +PODIUM +PODIUMS +PODLIKE +PODOCARP +PODOMERE +PODOMERES +PODOPHYLLI +PODOPHYLLIN +PODOPHYLLINS +PODOPHYLLUM +PODOPHYLLUMS +PODS +PODSOL +PODSOLIC +PODSOLIZATION +PODSOLIZATIONS +PODSOLS +PODZOL +PODZOLIC +PODZOLIZATION +PODZOLIZATIONS +PODZOLIZE +PODZOLIZED +PODZOLIZES +PODZOLIZING +PODZOLS +POECHORE +POECHORES +POEM +POEMS +POENOLOGIES +POENOLOGY +POESIES +POESY +POET +POETASTER +POETASTERS +POETESS +POETESSES +POETIC +POETICAL +POETICALLY +POETICALNESS +POETICALNESSES +POETICISM +POETICISMS +POETICIZE +POETICIZED +POETICIZES +POETICIZING +POETICS +POETISE +POETISED +POETISER +POETISERS +POETISES +POETISING +POETIZE +POETIZED +POETIZER +POETIZERS +POETIZES +POETIZING +POETLESS +POETLIKE +POETRIES +POETRY +POETS +POGEY +POGEYS +POGIES +POGONIA +POGONIAS +POGONIP +POGONIPS +POGONOPHORAN +POGONOPHORANS +POGROM +POGROMED +POGROMING +POGROMIST +POGROMISTS +POGROMS +POGY +POH +POI +POIGNANCE +POIGNANCES +POIGNANCIES +POIGNANCY +POIGNANT +POIGNANTLY +POIKILOTHERM +POIKILOTHERMIC +POIKILOTHERMS +POILU +POILUS +POINCIANA +POINCIANAS +POIND +POINDED +POINDING +POINDS +POINSETTIA +POINSETTIAS +POINT +POINTABLE +POINTE +POINTED +POINTEDLY +POINTEDNESS +POINTEDNESSES +POINTELLE +POINTELLES +POINTER +POINTERS +POINTES +POINTIER +POINTIEST +POINTILLISM +POINTILLISMS +POINTILLIST +POINTILLISTIC +POINTILLISTS +POINTING +POINTLESS +POINTLESSLY +POINTLESSNESS +POINTLESSNESSES +POINTMAN +POINTMEN +POINTS +POINTY +POIS +POISE +POISED +POISER +POISERS +POISES +POISHA +POISING +POISON +POISONED +POISONER +POISONERS +POISONING +POISONOUS +POISONOUSLY +POISONS +POISONWOOD +POISONWOODS +POITREL +POITRELS +POKABLE +POKE +POKEBERRIES +POKEBERRY +POKED +POKER +POKEROOT +POKEROOTS +POKERS +POKES +POKEWEED +POKEWEEDS +POKEY +POKEYS +POKIER +POKIES +POKIEST +POKILY +POKINESS +POKINESSES +POKING +POKY +POL +POLAR +POLARIMETER +POLARIMETERS +POLARIMETRIC +POLARIMETRIES +POLARIMETRY +POLARISCOPE +POLARISCOPES +POLARISCOPIC +POLARISE +POLARISED +POLARISES +POLARISING +POLARITIES +POLARITY +POLARIZABILITY +POLARIZABLE +POLARIZATION +POLARIZATIONS +POLARIZE +POLARIZED +POLARIZER +POLARIZERS +POLARIZES +POLARIZING +POLAROGRAPHIC +POLAROGRAPHIES +POLAROGRAPHY +POLARON +POLARONS +POLARS +POLDER +POLDERS +POLE +POLEAX +POLEAXE +POLEAXED +POLEAXES +POLEAXING +POLECAT +POLECATS +POLED +POLEIS +POLELESS +POLEMIC +POLEMICAL +POLEMICALLY +POLEMICIST +POLEMICISTS +POLEMICIZE +POLEMICIZED +POLEMICIZES +POLEMICIZING +POLEMICS +POLEMIST +POLEMISTS +POLEMIZE +POLEMIZED +POLEMIZES +POLEMIZING +POLEMONIUM +POLEMONIUMS +POLENTA +POLENTAS +POLER +POLERS +POLES +POLESTAR +POLESTARS +POLEWARD +POLEYN +POLEYNS +POLICE +POLICED +POLICEMAN +POLICEMEN +POLICER +POLICERS +POLICES +POLICEWOMAN +POLICEWOMEN +POLICIES +POLICING +POLICY +POLICYHOLDER +POLICYHOLDERS +POLIES +POLING +POLIO +POLIOMYELITIDES +POLIOMYELITIS +POLIOS +POLIOVIRUS +POLIOVIRUSES +POLIS +POLISH +POLISHED +POLISHER +POLISHERS +POLISHES +POLISHING +POLITBURO +POLITBUROS +POLITE +POLITELY +POLITENESS +POLITENESSES +POLITER +POLITESSE +POLITESSES +POLITEST +POLITIC +POLITICAL +POLITICALIZE +POLITICALIZED +POLITICALIZES +POLITICALIZING +POLITICALLY +POLITICIAN +POLITICIANS +POLITICISE +POLITICISED +POLITICISES +POLITICISING +POLITICIZATION +POLITICIZATIONS +POLITICIZE +POLITICIZED +POLITICIZES +POLITICIZING +POLITICK +POLITICKED +POLITICKER +POLITICKERS +POLITICKING +POLITICKS +POLITICLY +POLITICO +POLITICOES +POLITICOS +POLITICS +POLITIES +POLITY +POLKA +POLKAED +POLKAING +POLKAS +POLL +POLLACK +POLLACKS +POLLARD +POLLARDED +POLLARDING +POLLARDS +POLLED +POLLEE +POLLEES +POLLEN +POLLENATE +POLLENATED +POLLENATES +POLLENATING +POLLENED +POLLENING +POLLENIZER +POLLENIZERS +POLLENOSES +POLLENOSIS +POLLENS +POLLER +POLLERS +POLLEX +POLLICAL +POLLICES +POLLINATE +POLLINATED +POLLINATES +POLLINATING +POLLINATION +POLLINATIONS +POLLINATOR +POLLINATORS +POLLING +POLLINIA +POLLINIC +POLLINIUM +POLLINIZE +POLLINIZED +POLLINIZER +POLLINIZERS +POLLINIZES +POLLINIZING +POLLINOSES +POLLINOSIS +POLLIST +POLLISTS +POLLIWOG +POLLIWOGS +POLLOCK +POLLOCKS +POLLS +POLLSTER +POLLSTERS +POLLTAKER +POLLTAKERS +POLLUTANT +POLLUTANTS +POLLUTE +POLLUTED +POLLUTER +POLLUTERS +POLLUTES +POLLUTING +POLLUTION +POLLUTIONS +POLLUTIVE +POLLYWOG +POLLYWOGS +POLO +POLOIST +POLOISTS +POLONAISE +POLONAISES +POLONIUM +POLONIUMS +POLOS +POLS +POLTERGEIST +POLTERGEISTS +POLTROON +POLTROONERIES +POLTROONERY +POLTROONS +POLY +POLYACRYLAMIDE +POLYACRYLAMIDES +POLYALCOHOL +POLYALCOHOLS +POLYAMIDE +POLYAMIDES +POLYAMINE +POLYAMINES +POLYANDRIES +POLYANDROUS +POLYANDRY +POLYANTHA +POLYANTHAS +POLYANTHI +POLYANTHUS +POLYANTHUSES +POLYATOMIC +POLYBASIC +POLYBRID +POLYBRIDS +POLYBUTADIENE +POLYBUTADIENES +POLYCARBONATE +POLYCARBONATES +POLYCARPIES +POLYCARPY +POLYCENTRIC +POLYCENTRISM +POLYCENTRISMS +POLYCHAETE +POLYCHAETES +POLYCHETE +POLYCHETES +POLYCHOTOMIES +POLYCHOTOMOUS +POLYCHOTOMY +POLYCHROMATIC +POLYCHROME +POLYCHROMED +POLYCHROMES +POLYCHROMIES +POLYCHROMING +POLYCHROMY +POLYCISTRONIC +POLYCLINIC +POLYCLINICS +POLYCLONAL +POLYCOT +POLYCOTS +POLYCRYSTAL +POLYCRYSTALLINE +POLYCRYSTALS +POLYCYCLIC +POLYCYSTIC +POLYCYTHEMIA +POLYCYTHEMIAS +POLYCYTHEMIC +POLYDACTYL +POLYDACTYLIES +POLYDACTYLY +POLYDIPSIA +POLYDIPSIAS +POLYDIPSIC +POLYDISPERSE +POLYDISPERSITY +POLYELECTROLYTE +POLYEMBRYONIC +POLYEMBRYONIES +POLYEMBRYONY +POLYENE +POLYENES +POLYENIC +POLYESTER +POLYESTERS +POLYESTROUS +POLYETHYLENE +POLYETHYLENES +POLYGALA +POLYGALAS +POLYGAMIC +POLYGAMIES +POLYGAMIST +POLYGAMISTS +POLYGAMIZE +POLYGAMIZED +POLYGAMIZES +POLYGAMIZING +POLYGAMOUS +POLYGAMY +POLYGENE +POLYGENES +POLYGENESES +POLYGENESIS +POLYGENETIC +POLYGENIC +POLYGLOT +POLYGLOTISM +POLYGLOTISMS +POLYGLOTS +POLYGLOTTISM +POLYGLOTTISMS +POLYGON +POLYGONAL +POLYGONALLY +POLYGONIES +POLYGONS +POLYGONUM +POLYGONUMS +POLYGONY +POLYGRAPH +POLYGRAPHED +POLYGRAPHER +POLYGRAPHERS +POLYGRAPHIC +POLYGRAPHING +POLYGRAPHIST +POLYGRAPHISTS +POLYGRAPHS +POLYGYNIES +POLYGYNOUS +POLYGYNY +POLYHEDRA +POLYHEDRAL +POLYHEDRON +POLYHEDRONS +POLYHEDROSES +POLYHEDROSIS +POLYHISTOR +POLYHISTORIC +POLYHISTORS +POLYHYDROXY +POLYIMIDE +POLYIMIDES +POLYLYSINE +POLYLYSINES +POLYMATH +POLYMATHIC +POLYMATHIES +POLYMATHS +POLYMATHY +POLYMER +POLYMERASE +POLYMERASES +POLYMERIC +POLYMERISATION +POLYMERISATIONS +POLYMERISE +POLYMERISED +POLYMERISES +POLYMERISING +POLYMERISM +POLYMERISMS +POLYMERIZATION +POLYMERIZATIONS +POLYMERIZE +POLYMERIZED +POLYMERIZES +POLYMERIZING +POLYMERS +POLYMORPH +POLYMORPHIC +POLYMORPHICALLY +POLYMORPHISM +POLYMORPHISMS +POLYMORPHOUS +POLYMORPHOUSLY +POLYMORPHS +POLYMYXIN +POLYMYXINS +POLYNEURITIS +POLYNEURITISES +POLYNOMIAL +POLYNOMIALS +POLYNUCLEAR +POLYNUCLEOTIDE +POLYNUCLEOTIDES +POLYNYA +POLYNYAS +POLYNYI +POLYOL +POLYOLEFIN +POLYOLEFINS +POLYOLS +POLYOMA +POLYOMAS +POLYONYMIES +POLYONYMOUS +POLYONYMY +POLYP +POLYPARIA +POLYPARIES +POLYPARIUM +POLYPARY +POLYPED +POLYPEDS +POLYPEPTIDE +POLYPEPTIDES +POLYPEPTIDIC +POLYPETALOUS +POLYPHAGIA +POLYPHAGIAS +POLYPHAGIES +POLYPHAGOUS +POLYPHAGY +POLYPHASE +POLYPHASIC +POLYPHENOL +POLYPHENOLIC +POLYPHENOLS +POLYPHONE +POLYPHONES +POLYPHONIC +POLYPHONICALLY +POLYPHONIES +POLYPHONOUS +POLYPHONOUSLY +POLYPHONY +POLYPHYLETIC +POLYPI +POLYPIDE +POLYPIDES +POLYPLOID +POLYPLOIDIES +POLYPLOIDS +POLYPLOIDY +POLYPNEA +POLYPNEAS +POLYPNEIC +POLYPOD +POLYPODIES +POLYPODS +POLYPODY +POLYPOID +POLYPORE +POLYPORES +POLYPOUS +POLYPROPYLENE +POLYPROPYLENES +POLYPS +POLYPTYCH +POLYPTYCHS +POLYPUS +POLYPUSES +POLYRHYTHM +POLYRHYTHMIC +POLYRHYTHMS +POLYRIBOSOMAL +POLYRIBOSOME +POLYRIBOSOMES +POLYS +POLYSACCHARIDE +POLYSACCHARIDES +POLYSEMIC +POLYSEMIES +POLYSEMOUS +POLYSEMY +POLYSOME +POLYSOMES +POLYSOMIC +POLYSOMICS +POLYSORBATE +POLYSORBATES +POLYSTICHOUS +POLYSTYRENE +POLYSTYRENES +POLYSULFIDE +POLYSULFIDES +POLYSYLLABIC +POLYSYLLABLE +POLYSYLLABLES +POLYSYNAPTIC +POLYSYNDETON +POLYSYNDETONS +POLYTECHNIC +POLYTECHNICS +POLYTENE +POLYTENIES +POLYTENY +POLYTHEISM +POLYTHEISMS +POLYTHEIST +POLYTHEISTIC +POLYTHEISTICAL +POLYTHEISTS +POLYTHENE +POLYTHENES +POLYTONAL +POLYTONALITIES +POLYTONALITY +POLYTONALLY +POLYTYPE +POLYTYPES +POLYTYPIC +POLYUNSATURATED +POLYURETHANE +POLYURETHANES +POLYURIA +POLYURIAS +POLYURIC +POLYVALENCE +POLYVALENCES +POLYVALENT +POLYVINYL +POLYWATER +POLYWATERS +POLYZOAN +POLYZOANS +POLYZOARIES +POLYZOARY +POLYZOIC +POM +POMACE +POMACEOUS +POMACES +POMADE +POMADED +POMADES +POMADING +POMANDER +POMANDERS +POMATUM +POMATUMS +POME +POMEGRANATE +POMEGRANATES +POMELO +POMELOS +POMES +POMFRET +POMFRETS +POMMEE +POMMEL +POMMELED +POMMELING +POMMELLED +POMMELLING +POMMELS +POMMIE +POMMIES +POMMY +POMO +POMOLOGICAL +POMOLOGIES +POMOLOGIST +POMOLOGISTS +POMOLOGY +POMOS +POMP +POMPADOUR +POMPADOURED +POMPADOURS +POMPANO +POMPANOS +POMPOM +POMPOMS +POMPON +POMPONS +POMPOSITIES +POMPOSITY +POMPOUS +POMPOUSLY +POMPOUSNESS +POMPOUSNESSES +POMPS +POMS +PONCE +PONCED +PONCES +PONCHO +PONCHOED +PONCHOS +PONCING +POND +PONDED +PONDER +PONDERABLE +PONDERED +PONDERER +PONDERERS +PONDERING +PONDEROSA +PONDEROSAS +PONDEROUS +PONDEROUSLY +PONDEROUSNESS +PONDEROUSNESSES +PONDERS +PONDING +PONDS +PONDWEED +PONDWEEDS +PONE +PONENT +PONES +PONG +PONGED +PONGEE +PONGEES +PONGID +PONGIDS +PONGING +PONGS +PONIARD +PONIARDED +PONIARDING +PONIARDS +PONIED +PONIES +PONS +PONTES +PONTIFEX +PONTIFF +PONTIFFS +PONTIFIC +PONTIFICAL +PONTIFICALLY +PONTIFICALS +PONTIFICATE +PONTIFICATED +PONTIFICATES +PONTIFICATING +PONTIFICATION +PONTIFICATIONS +PONTIFICATOR +PONTIFICATORS +PONTIFICES +PONTIL +PONTILS +PONTINE +PONTON +PONTONIER +PONTONIERS +PONTONS +PONTOON +PONTOONS +PONY +PONYING +PONYTAIL +PONYTAILED +PONYTAILS +POO +POOCH +POOCHED +POOCHES +POOCHING +POOD +POODLE +POODLES +POODS +POOED +POOF +POOFS +POOFTAH +POOFTAHS +POOFTER +POOFTERS +POOFY +POOH +POOHED +POOHING +POOHS +POOING +POOL +POOLED +POOLER +POOLERS +POOLHALL +POOLHALLS +POOLING +POOLROOM +POOLROOMS +POOLS +POOLSIDE +POOLSIDES +POON +POONS +POONTANG +POONTANGS +POOP +POOPED +POOPING +POOPS +POOR +POORER +POOREST +POORHOUSE +POORHOUSES +POORI +POORIS +POORISH +POORLY +POORMOUTH +POORMOUTHED +POORMOUTHING +POORMOUTHS +POORNESS +POORNESSES +POORTITH +POORTITHS +POOS +POOVE +POOVES +POP +POPCORN +POPCORNS +POPE +POPEDOM +POPEDOMS +POPELESS +POPELIKE +POPERIES +POPERY +POPES +POPEYED +POPGUN +POPGUNS +POPINJAY +POPINJAYS +POPISH +POPISHLY +POPLAR +POPLARS +POPLIN +POPLINS +POPLITEAL +POPLITEI +POPLITEUS +POPLITIC +POPOVER +POPOVERS +POPPA +POPPADOM +POPPADOMS +POPPADUM +POPPADUMS +POPPAS +POPPED +POPPER +POPPERS +POPPET +POPPETS +POPPIED +POPPIES +POPPING +POPPLE +POPPLED +POPPLES +POPPLING +POPPY +POPPYCOCK +POPPYCOCKS +POPPYHEAD +POPPYHEADS +POPS +POPSICLE +POPSICLES +POPSIE +POPSIES +POPSY +POPULACE +POPULACES +POPULAR +POPULARISE +POPULARISED +POPULARISES +POPULARISING +POPULARITIES +POPULARITY +POPULARIZATION +POPULARIZATIONS +POPULARIZE +POPULARIZED +POPULARIZER +POPULARIZERS +POPULARIZES +POPULARIZING +POPULARLY +POPULATE +POPULATED +POPULATES +POPULATING +POPULATION +POPULATIONAL +POPULATIONS +POPULISM +POPULISMS +POPULIST +POPULISTIC +POPULISTS +POPULOUS +POPULOUSLY +POPULOUSNESS +POPULOUSNESSES +PORBEAGLE +PORBEAGLES +PORCELAIN +PORCELAINIZE +PORCELAINIZED +PORCELAINIZES +PORCELAINIZING +PORCELAINLIKE +PORCELAINS +PORCELANEOUS +PORCELLANEOUS +PORCH +PORCHES +PORCINE +PORCINI +PORCINIS +PORCINO +PORCUPINE +PORCUPINES +PORE +PORED +PORES +PORGIES +PORGY +PORIFERAL +PORIFERAN +PORIFERANS +PORING +PORISM +PORISMS +PORK +PORKED +PORKER +PORKERS +PORKIER +PORKIES +PORKIEST +PORKINESS +PORKINESSES +PORKING +PORKPIE +PORKPIES +PORKS +PORKWOOD +PORKWOODS +PORKY +PORN +PORNIER +PORNIEST +PORNO +PORNOGRAPHER +PORNOGRAPHERS +PORNOGRAPHIC +PORNOGRAPHIES +PORNOGRAPHY +PORNOS +PORNS +PORNY +POROMERIC +POROMERICS +POROSE +POROSITIES +POROSITY +POROUS +POROUSLY +POROUSNESS +POROUSNESSES +PORPHYRIA +PORPHYRIAS +PORPHYRIC +PORPHYRIES +PORPHYRIN +PORPHYRINS +PORPHYRITIC +PORPHYROPSIN +PORPHYROPSINS +PORPHYRY +PORPOISE +PORPOISED +PORPOISES +PORPOISING +PORRECT +PORRIDGE +PORRIDGES +PORRIDGY +PORRINGER +PORRINGERS +PORT +PORTABELLA +PORTABELLAS +PORTABELLO +PORTABELLOS +PORTABILITIES +PORTABILITY +PORTABLE +PORTABLES +PORTABLY +PORTAGE +PORTAGED +PORTAGES +PORTAGING +PORTAL +PORTALED +PORTALS +PORTAMENTI +PORTAMENTO +PORTANCE +PORTANCES +PORTAPACK +PORTAPACKS +PORTAPAK +PORTAPAKS +PORTATIVE +PORTCULLIS +PORTCULLISES +PORTED +PORTEND +PORTENDED +PORTENDING +PORTENDS +PORTENT +PORTENTOUS +PORTENTOUSLY +PORTENTOUSNESS +PORTENTS +PORTER +PORTERAGE +PORTERAGES +PORTERED +PORTERESS +PORTERESSES +PORTERHOUSE +PORTERHOUSES +PORTERING +PORTERS +PORTFOLIO +PORTFOLIOS +PORTHOLE +PORTHOLES +PORTICO +PORTICOED +PORTICOES +PORTICOS +PORTIERE +PORTIERES +PORTING +PORTION +PORTIONED +PORTIONER +PORTIONERS +PORTIONING +PORTIONLESS +PORTIONS +PORTLESS +PORTLIER +PORTLIEST +PORTLINESS +PORTLINESSES +PORTLY +PORTMANTEAU +PORTMANTEAUS +PORTMANTEAUX +PORTOBELLO +PORTOBELLOS +PORTRAIT +PORTRAITIST +PORTRAITISTS +PORTRAITS +PORTRAITURE +PORTRAITURES +PORTRAY +PORTRAYAL +PORTRAYALS +PORTRAYED +PORTRAYER +PORTRAYERS +PORTRAYING +PORTRAYS +PORTRESS +PORTRESSES +PORTS +PORTSIDE +PORTULACA +PORTULACAS +POSABLE +POSADA +POSADAS +POSE +POSED +POSER +POSERS +POSES +POSEUR +POSEURS +POSH +POSHER +POSHEST +POSHLY +POSHNESS +POSHNESSES +POSIES +POSING +POSINGLY +POSIT +POSITED +POSITING +POSITION +POSITIONAL +POSITIONALLY +POSITIONED +POSITIONING +POSITIONS +POSITIVE +POSITIVELY +POSITIVENESS +POSITIVENESSES +POSITIVER +POSITIVES +POSITIVEST +POSITIVISM +POSITIVISMS +POSITIVIST +POSITIVISTIC +POSITIVISTS +POSITIVITIES +POSITIVITY +POSITRON +POSITRONIUM +POSITRONIUMS +POSITRONS +POSITS +POSOLE +POSOLES +POSOLOGIC +POSOLOGIES +POSOLOGY +POSSE +POSSES +POSSESS +POSSESSED +POSSESSEDLY +POSSESSEDNESS +POSSESSEDNESSES +POSSESSES +POSSESSING +POSSESSION +POSSESSIONAL +POSSESSIONLESS +POSSESSIONS +POSSESSIVE +POSSESSIVELY +POSSESSIVENESS +POSSESSIVES +POSSESSOR +POSSESSORS +POSSESSORY +POSSET +POSSETS +POSSIBILITIES +POSSIBILITY +POSSIBLE +POSSIBLER +POSSIBLEST +POSSIBLY +POSSUM +POSSUMS +POST +POSTABORTION +POSTACCIDENT +POSTADOLESCENT +POSTAGE +POSTAGES +POSTAL +POSTALLY +POSTALS +POSTAMPUTATION +POSTANAL +POSTAPOCALYPTIC +POSTARREST +POSTATOMIC +POSTATTACK +POSTAXIAL +POSTBAG +POSTBAGS +POSTBASE +POSTBELLUM +POSTBIBLICAL +POSTBOURGEOIS +POSTBOX +POSTBOXES +POSTBOY +POSTBOYS +POSTBURN +POSTCAPITALIST +POSTCARD +POSTCARDLIKE +POSTCARDS +POSTCAVA +POSTCAVAE +POSTCAVAL +POSTCAVAS +POSTCLASSIC +POSTCLASSICAL +POSTCODE +POSTCODES +POSTCOITAL +POSTCOLLEGE +POSTCOLLEGIATE +POSTCOLONIAL +POSTCONCEPTION +POSTCONCERT +POSTCONQUEST +POSTCONSONANTAL +POSTCONVENTION +POSTCOPULATORY +POSTCORONARY +POSTCOUP +POSTCRANIAL +POSTCRANIALLY +POSTCRASH +POSTCRISIS +POSTDATE +POSTDATED +POSTDATES +POSTDATING +POSTDEADLINE +POSTDEBATE +POSTDEBUTANTE +POSTDELIVERY +POSTDEPRESSION +POSTDEVALUATION +POSTDILUVIAN +POSTDILUVIANS +POSTDIVE +POSTDIVESTITURE +POSTDIVORCE +POSTDOC +POSTDOCS +POSTDOCTORAL +POSTDOCTORATE +POSTDRUG +POSTED +POSTEDITING +POSTEEN +POSTEENS +POSTELECTION +POSTEMBRYONAL +POSTEMBRYONIC +POSTEMERGENCE +POSTEMERGENCY +POSTEPILEPTIC +POSTER +POSTERIOR +POSTERIORITIES +POSTERIORITY +POSTERIORLY +POSTERIORS +POSTERITIES +POSTERITY +POSTERN +POSTERNS +POSTEROLATERAL +POSTERS +POSTERUPTIVE +POSTEXERCISE +POSTEXILIC +POSTEXPERIENCE +POSTEXPOSURE +POSTFACE +POSTFACES +POSTFAULT +POSTFEMINIST +POSTFIRE +POSTFIX +POSTFIXAL +POSTFIXED +POSTFIXES +POSTFIXING +POSTFLIGHT +POSTFORM +POSTFORMED +POSTFORMING +POSTFORMS +POSTFRACTURE +POSTFREEZE +POSTGAME +POSTGANGLIONIC +POSTGLACIAL +POSTGRAD +POSTGRADS +POSTGRADUATE +POSTGRADUATES +POSTGRADUATION +POSTHARVEST +POSTHASTE +POSTHASTES +POSTHEAT +POSTHEATS +POSTHEMORRHAGIC +POSTHOLE +POSTHOLES +POSTHOLIDAY +POSTHOLOCAUST +POSTHOSPITAL +POSTHUMOUS +POSTHUMOUSLY +POSTHUMOUSNESS +POSTHYPNOTIC +POSTICHE +POSTICHES +POSTIE +POSTIES +POSTILION +POSTILIONS +POSTILLION +POSTILLIONS +POSTIMPACT +POSTIMPERIAL +POSTIN +POSTINAUGURAL +POSTINDUSTRIAL +POSTINFECTION +POSTING +POSTINGS +POSTINJECTION +POSTINOCULATION +POSTINS +POSTIQUE +POSTIQUES +POSTIRRADIATION +POSTISCHEMIC +POSTISOLATION +POSTLANDING +POSTLAPSARIAN +POSTLAUNCH +POSTLIBERATION +POSTLITERATE +POSTLUDE +POSTLUDES +POSTMAN +POSTMARITAL +POSTMARK +POSTMARKED +POSTMARKING +POSTMARKS +POSTMASTECTOMY +POSTMASTER +POSTMASTERS +POSTMASTERSHIP +POSTMASTERSHIPS +POSTMATING +POSTMEDIEVAL +POSTMEN +POSTMENOPAUSAL +POSTMIDNIGHT +POSTMILLENARIAN +POSTMILLENNIAL +POSTMISTRESS +POSTMISTRESSES +POSTMODERN +POSTMODERNISM +POSTMODERNISMS +POSTMODERNIST +POSTMODERNISTS +POSTMORTEM +POSTMORTEMS +POSTNASAL +POSTNATAL +POSTNATALLY +POSTNEONATAL +POSTNUPTIAL +POSTOP +POSTOPERATIVE +POSTOPERATIVELY +POSTOPS +POSTORAL +POSTORBITAL +POSTORGASMIC +POSTPAID +POSTPARTUM +POSTPOLLINATION +POSTPONABLE +POSTPONE +POSTPONED +POSTPONEMENT +POSTPONEMENTS +POSTPONER +POSTPONERS +POSTPONES +POSTPONING +POSTPOSE +POSTPOSED +POSTPOSES +POSTPOSING +POSTPOSITION +POSTPOSITIONAL +POSTPOSITIONS +POSTPOSITIVE +POSTPOSITIVELY +POSTPRANDIAL +POSTPRIMARY +POSTPRISON +POSTPRODUCTION +POSTPRODUCTIONS +POSTPUBERTY +POSTPUBESCENT +POSTPUNK +POSTRACE +POSTRECESSION +POSTRETIREMENT +POSTRIDER +POSTRIDERS +POSTRIOT +POSTROMANTIC +POSTS +POSTSCRIPT +POSTSCRIPTS +POSTSEASON +POSTSEASONS +POSTSECONDARY +POSTSHOW +POSTSTIMULATION +POSTSTIMULATORY +POSTSTIMULUS +POSTSTRIKE +POSTSURGICAL +POSTSYNAPTIC +POSTSYNC +POSTSYNCED +POSTSYNCING +POSTSYNCS +POSTTAX +POSTTEEN +POSTTEENS +POSTTENSION +POSTTENSIONED +POSTTENSIONING +POSTTENSIONS +POSTTEST +POSTTESTS +POSTTRANSFUSION +POSTTRAUMATIC +POSTTREATMENT +POSTTRIAL +POSTULANCIES +POSTULANCY +POSTULANT +POSTULANTS +POSTULATE +POSTULATED +POSTULATES +POSTULATING +POSTULATION +POSTULATIONAL +POSTULATIONS +POSTULATOR +POSTULATORS +POSTURAL +POSTURE +POSTURED +POSTURER +POSTURERS +POSTURES +POSTURING +POSTURIST +POSTURISTS +POSTVACCINAL +POSTVACCINATION +POSTVAGOTOMY +POSTVASECTOMY +POSTVOCALIC +POSTWAR +POSTWEANING +POSTWORKSHOP +POSY +POT +POTABILITIES +POTABILITY +POTABLE +POTABLENESS +POTABLENESSES +POTABLES +POTAGE +POTAGES +POTAMIC +POTASH +POTASHES +POTASSIC +POTASSIUM +POTASSIUMS +POTATION +POTATIONS +POTATO +POTATOBUG +POTATOBUGS +POTATOES +POTATORY +POTBELLIED +POTBELLIES +POTBELLY +POTBOIL +POTBOILED +POTBOILER +POTBOILERS +POTBOILING +POTBOILS +POTBOUND +POTBOY +POTBOYS +POTEEN +POTEENS +POTENCE +POTENCES +POTENCIES +POTENCY +POTENT +POTENTATE +POTENTATES +POTENTIAL +POTENTIALITIES +POTENTIALITY +POTENTIALLY +POTENTIALS +POTENTIATE +POTENTIATED +POTENTIATES +POTENTIATING +POTENTIATION +POTENTIATIONS +POTENTIATOR +POTENTIATORS +POTENTILLA +POTENTILLAS +POTENTIOMETER +POTENTIOMETERS +POTENTIOMETRIC +POTENTLY +POTFUL +POTFULS +POTHEAD +POTHEADS +POTHEEN +POTHEENS +POTHER +POTHERB +POTHERBS +POTHERED +POTHERING +POTHERS +POTHOLDER +POTHOLDERS +POTHOLE +POTHOLED +POTHOLES +POTHOOK +POTHOOKS +POTHOS +POTHOUSE +POTHOUSES +POTHUNTER +POTHUNTERS +POTHUNTING +POTHUNTINGS +POTICHE +POTICHES +POTION +POTIONS +POTLACH +POTLACHE +POTLACHES +POTLATCH +POTLATCHED +POTLATCHES +POTLATCHING +POTLIKE +POTLINE +POTLINES +POTLUCK +POTLUCKS +POTMAN +POTMEN +POTOMETER +POTOMETERS +POTPIE +POTPIES +POTPOURRI +POTPOURRIS +POTS +POTSHARD +POTSHARDS +POTSHERD +POTSHERDS +POTSHOT +POTSHOTS +POTSHOTTING +POTSIE +POTSIES +POTSTONE +POTSTONES +POTSY +POTTAGE +POTTAGES +POTTED +POTTEEN +POTTEENS +POTTER +POTTERED +POTTERER +POTTERERS +POTTERIES +POTTERING +POTTERINGLY +POTTERS +POTTERY +POTTIER +POTTIES +POTTIEST +POTTINESS +POTTINESSES +POTTING +POTTLE +POTTLES +POTTO +POTTOS +POTTY +POTZER +POTZERS +POUCH +POUCHED +POUCHES +POUCHIER +POUCHIEST +POUCHING +POUCHY +POUF +POUFED +POUFF +POUFFE +POUFFED +POUFFES +POUFFS +POUFFY +POUFS +POULARD +POULARDE +POULARDES +POULARDS +POULT +POULTER +POULTERER +POULTERERS +POULTERS +POULTICE +POULTICED +POULTICES +POULTICING +POULTRIES +POULTRY +POULTRYMAN +POULTRYMEN +POULTS +POUNCE +POUNCED +POUNCER +POUNCERS +POUNCES +POUNCING +POUND +POUNDAGE +POUNDAGES +POUNDAL +POUNDALS +POUNDCAKE +POUNDCAKES +POUNDED +POUNDER +POUNDERS +POUNDING +POUNDS +POUR +POURABLE +POURBOIRE +POURBOIRES +POURED +POURER +POURERS +POURING +POURINGLY +POURPARLER +POURPARLERS +POURPOINT +POURPOINTS +POURS +POUSSETTE +POUSSETTED +POUSSETTES +POUSSETTING +POUSSIE +POUSSIES +POUT +POUTED +POUTER +POUTERS +POUTFUL +POUTIER +POUTIEST +POUTINE +POUTINES +POUTING +POUTINGLY +POUTS +POUTY +POVERTIES +POVERTY +POW +POWDER +POWDERED +POWDERER +POWDERERS +POWDERING +POWDERLESS +POWDERLIKE +POWDERS +POWDERY +POWER +POWERBOAT +POWERBOATS +POWERED +POWERFUL +POWERFULLY +POWERHOUSE +POWERHOUSES +POWERING +POWERLESS +POWERLESSLY +POWERLESSNESS +POWERLESSNESSES +POWERS +POWS +POWTER +POWTERS +POWWOW +POWWOWED +POWWOWING +POWWOWS +POX +POXED +POXES +POXIER +POXIEST +POXING +POXVIRUS +POXVIRUSES +POXY +POYOU +POYOUS +POZOLE +POZOLES +POZZOLAN +POZZOLANA +POZZOLANAS +POZZOLANIC +POZZOLANS +PRAAM +PRAAMS +PRACTIC +PRACTICABILITY +PRACTICABLE +PRACTICABLENESS +PRACTICABLY +PRACTICAL +PRACTICALITIES +PRACTICALITY +PRACTICALLY +PRACTICALNESS +PRACTICALNESSES +PRACTICALS +PRACTICE +PRACTICED +PRACTICER +PRACTICERS +PRACTICES +PRACTICING +PRACTICUM +PRACTICUMS +PRACTISE +PRACTISED +PRACTISES +PRACTISING +PRACTITIONER +PRACTITIONERS +PRAECIPE +PRAECIPES +PRAEDIAL +PRAEFECT +PRAEFECTS +PRAELECT +PRAELECTED +PRAELECTING +PRAELECTS +PRAEMUNIRE +PRAEMUNIRES +PRAENOMEN +PRAENOMENS +PRAENOMINA +PRAESIDIA +PRAESIDIUM +PRAESIDIUMS +PRAETOR +PRAETORIAL +PRAETORIAN +PRAETORIANS +PRAETORS +PRAETORSHIP +PRAETORSHIPS +PRAGMATIC +PRAGMATICAL +PRAGMATICALLY +PRAGMATICISM +PRAGMATICISMS +PRAGMATICIST +PRAGMATICISTS +PRAGMATICS +PRAGMATISM +PRAGMATISMS +PRAGMATIST +PRAGMATISTIC +PRAGMATISTS +PRAHU +PRAHUS +PRAIRIE +PRAIRIES +PRAISE +PRAISED +PRAISER +PRAISERS +PRAISES +PRAISEWORTHILY +PRAISEWORTHY +PRAISING +PRAJNA +PRAJNAS +PRALINE +PRALINES +PRALLTRILLER +PRALLTRILLERS +PRAM +PRAMS +PRANCE +PRANCED +PRANCER +PRANCERS +PRANCES +PRANCING +PRANDIAL +PRANG +PRANGED +PRANGING +PRANGS +PRANK +PRANKED +PRANKING +PRANKISH +PRANKISHLY +PRANKISHNESS +PRANKISHNESSES +PRANKS +PRANKSTER +PRANKSTERS +PRAO +PRAOS +PRASE +PRASEODYMIUM +PRASEODYMIUMS +PRASES +PRAT +PRATE +PRATED +PRATER +PRATERS +PRATES +PRATFALL +PRATFALLS +PRATINCOLE +PRATINCOLES +PRATING +PRATINGLY +PRATIQUE +PRATIQUES +PRATS +PRATTLE +PRATTLED +PRATTLER +PRATTLERS +PRATTLES +PRATTLING +PRATTLINGLY +PRAU +PRAUS +PRAWN +PRAWNED +PRAWNER +PRAWNERS +PRAWNING +PRAWNS +PRAXEOLOGICAL +PRAXEOLOGIES +PRAXEOLOGY +PRAXES +PRAXIS +PRAXISES +PRAY +PRAYED +PRAYER +PRAYERFUL +PRAYERFULLY +PRAYERFULNESS +PRAYERFULNESSES +PRAYERS +PRAYING +PRAYS +PREABSORB +PREABSORBED +PREABSORBING +PREABSORBS +PREACCUSE +PREACCUSED +PREACCUSES +PREACCUSING +PREACH +PREACHED +PREACHER +PREACHERS +PREACHES +PREACHIER +PREACHIEST +PREACHIFIED +PREACHIFIES +PREACHIFY +PREACHIFYING +PREACHILY +PREACHINESS +PREACHINESSES +PREACHING +PREACHINGLY +PREACHMENT +PREACHMENTS +PREACHY +PREACT +PREACTED +PREACTING +PREACTS +PREADAPT +PREADAPTATION +PREADAPTATIONS +PREADAPTED +PREADAPTING +PREADAPTIVE +PREADAPTS +PREADJUST +PREADJUSTED +PREADJUSTING +PREADJUSTS +PREADMISSION +PREADMISSIONS +PREADMIT +PREADMITS +PREADMITTED +PREADMITTING +PREADOLESCENCE +PREADOLESCENCES +PREADOLESCENT +PREADOLESCENTS +PREADOPT +PREADOPTED +PREADOPTING +PREADOPTS +PREADULT +PREADULTS +PREAGED +PREAGRICULTURAL +PREALLOT +PREALLOTS +PREALLOTTED +PREALLOTTING +PREALTER +PREALTERED +PREALTERING +PREALTERS +PREAMBLE +PREAMBLED +PREAMBLES +PREAMP +PREAMPLIFIER +PREAMPLIFIERS +PREAMPS +PREANAL +PREANESTHETIC +PREANNOUNCE +PREANNOUNCED +PREANNOUNCES +PREANNOUNCING +PREAPPLIED +PREAPPLIES +PREAPPLY +PREAPPLYING +PREAPPROVE +PREAPPROVED +PREAPPROVES +PREAPPROVING +PREARM +PREARMED +PREARMING +PREARMS +PREARRANGE +PREARRANGED +PREARRANGEMENT +PREARRANGEMENTS +PREARRANGES +PREARRANGING +PREASSEMBLED +PREASSIGN +PREASSIGNED +PREASSIGNING +PREASSIGNS +PREASSURE +PREASSURED +PREASSURES +PREASSURING +PREATOMIC +PREATTUNE +PREATTUNED +PREATTUNES +PREATTUNING +PREAUDIT +PREAUDITS +PREAVER +PREAVERRED +PREAVERRING +PREAVERS +PREAXIAL +PREBADE +PREBAKE +PREBAKED +PREBAKES +PREBAKING +PREBASAL +PREBATTLE +PREBEND +PREBENDAL +PREBENDARIES +PREBENDARY +PREBENDS +PREBIBLICAL +PREBID +PREBIDDEN +PREBIDDING +PREBIDS +PREBILL +PREBILLED +PREBILLING +PREBILLS +PREBIND +PREBINDING +PREBINDS +PREBIOLOGIC +PREBIOLOGICAL +PREBIOTIC +PREBIRTH +PREBIRTHS +PREBLESS +PREBLESSED +PREBLESSES +PREBLESSING +PREBOARD +PREBOARDED +PREBOARDING +PREBOARDS +PREBOIL +PREBOILED +PREBOILING +PREBOILS +PREBOOK +PREBOOKED +PREBOOKING +PREBOOKS +PREBOOM +PREBOUGHT +PREBOUND +PREBREAKFAST +PREBUDGET +PREBUDGETS +PREBUILD +PREBUILDING +PREBUILDS +PREBUILT +PREBUY +PREBUYING +PREBUYS +PRECALCULI +PRECALCULUS +PRECALCULUSES +PRECANCEL +PRECANCELED +PRECANCELING +PRECANCELLATION +PRECANCELLED +PRECANCELLING +PRECANCELS +PRECANCER +PRECANCEROUS +PRECANCERS +PRECAPITALIST +PRECARIOUS +PRECARIOUSLY +PRECARIOUSNESS +PRECAST +PRECASTING +PRECASTS +PRECATIVE +PRECATORY +PRECAUDAL +PRECAUTION +PRECAUTIONARY +PRECAUTIONS +PRECAVA +PRECAVAE +PRECAVAL +PRECEDE +PRECEDED +PRECEDENCE +PRECEDENCES +PRECEDENCIES +PRECEDENCY +PRECEDENT +PRECEDENTS +PRECEDES +PRECEDING +PRECENSOR +PRECENSORED +PRECENSORING +PRECENSORS +PRECENT +PRECENTED +PRECENTING +PRECENTOR +PRECENTORIAL +PRECENTORS +PRECENTORSHIP +PRECENTORSHIPS +PRECENTS +PRECEPT +PRECEPTIVE +PRECEPTOR +PRECEPTORIAL +PRECEPTORIALS +PRECEPTORIES +PRECEPTORS +PRECEPTORSHIP +PRECEPTORSHIPS +PRECEPTORY +PRECEPTS +PRECESS +PRECESSED +PRECESSES +PRECESSING +PRECESSION +PRECESSIONAL +PRECESSIONS +PRECHARGE +PRECHARGED +PRECHARGES +PRECHARGING +PRECHECK +PRECHECKED +PRECHECKING +PRECHECKS +PRECHILL +PRECHILLED +PRECHILLING +PRECHILLS +PRECHOOSE +PRECHOOSES +PRECHOOSING +PRECHOSE +PRECHOSEN +PRECIEUSE +PRECIEUX +PRECINCT +PRECINCTS +PRECIOSITIES +PRECIOSITY +PRECIOUS +PRECIOUSES +PRECIOUSLY +PRECIOUSNESS +PRECIOUSNESSES +PRECIPE +PRECIPES +PRECIPICE +PRECIPICES +PRECIPITABLE +PRECIPITANCE +PRECIPITANCES +PRECIPITANCIES +PRECIPITANCY +PRECIPITANT +PRECIPITANTLY +PRECIPITANTNESS +PRECIPITANTS +PRECIPITATE +PRECIPITATED +PRECIPITATELY +PRECIPITATENESS +PRECIPITATES +PRECIPITATING +PRECIPITATION +PRECIPITATIONS +PRECIPITATIVE +PRECIPITATOR +PRECIPITATORS +PRECIPITIN +PRECIPITINOGEN +PRECIPITINOGENS +PRECIPITINS +PRECIPITOUS +PRECIPITOUSLY +PRECIPITOUSNESS +PRECIS +PRECISE +PRECISED +PRECISELY +PRECISENESS +PRECISENESSES +PRECISER +PRECISES +PRECISEST +PRECISIAN +PRECISIANS +PRECISING +PRECISION +PRECISIONIST +PRECISIONISTS +PRECISIONS +PRECITED +PRECLEAN +PRECLEANED +PRECLEANING +PRECLEANS +PRECLEAR +PRECLEARANCE +PRECLEARANCES +PRECLEARED +PRECLEARING +PRECLEARS +PRECLINICAL +PRECLUDE +PRECLUDED +PRECLUDES +PRECLUDING +PRECLUSION +PRECLUSIONS +PRECLUSIVE +PRECLUSIVELY +PRECOCIAL +PRECOCIOUS +PRECOCIOUSLY +PRECOCIOUSNESS +PRECOCITIES +PRECOCITY +PRECODE +PRECODED +PRECODES +PRECODING +PRECOGNITION +PRECOGNITIONS +PRECOGNITIVE +PRECOITAL +PRECOLLEGE +PRECOLLEGIATE +PRECOLONIAL +PRECOMBUSTION +PRECOMBUSTIONS +PRECOMMITMENT +PRECOMMITMENTS +PRECOMPUTE +PRECOMPUTED +PRECOMPUTER +PRECOMPUTES +PRECOMPUTING +PRECONCEIVE +PRECONCEIVED +PRECONCEIVES +PRECONCEIVING +PRECONCEPTION +PRECONCEPTIONS +PRECONCERT +PRECONCERTED +PRECONCERTING +PRECONCERTS +PRECONCILIAR +PRECONDITION +PRECONDITIONED +PRECONDITIONING +PRECONDITIONS +PRECONIZE +PRECONIZED +PRECONIZES +PRECONIZING +PRECONQUEST +PRECONSCIOUS +PRECONSCIOUSES +PRECONSCIOUSLY +PRECONSONANTAL +PRECONSTRUCTED +PRECONTACT +PRECONVENTION +PRECONVICTION +PRECONVICTIONS +PRECOOK +PRECOOKED +PRECOOKER +PRECOOKERS +PRECOOKING +PRECOOKS +PRECOOL +PRECOOLED +PRECOOLING +PRECOOLS +PRECOPULATORY +PRECOUP +PRECRASH +PRECREASE +PRECREASED +PRECREASES +PRECREASING +PRECRISIS +PRECRITICAL +PRECURE +PRECURED +PRECURES +PRECURING +PRECURSOR +PRECURSORS +PRECURSORY +PRECUT +PRECUTS +PRECUTTING +PREDACEOUS +PREDACEOUSNESS +PREDACIOUS +PREDACITIES +PREDACITY +PREDATE +PREDATED +PREDATES +PREDATING +PREDATION +PREDATIONS +PREDATISM +PREDATISMS +PREDATOR +PREDATORS +PREDATORY +PREDAWN +PREDAWNS +PREDEATH +PREDEATHS +PREDEBATE +PREDECEASE +PREDECEASED +PREDECEASES +PREDECEASING +PREDECESSOR +PREDECESSORS +PREDEDUCT +PREDEDUCTED +PREDEDUCTING +PREDEDUCTS +PREDEFINE +PREDEFINED +PREDEFINES +PREDEFINING +PREDELIVERY +PREDELLA +PREDELLAS +PREDEPARTURE +PREDESIGNATE +PREDESIGNATED +PREDESIGNATES +PREDESIGNATING +PREDESTINARIAN +PREDESTINARIANS +PREDESTINATE +PREDESTINATED +PREDESTINATES +PREDESTINATING +PREDESTINATION +PREDESTINATIONS +PREDESTINATOR +PREDESTINATORS +PREDESTINE +PREDESTINED +PREDESTINES +PREDESTINING +PREDETERMINE +PREDETERMINED +PREDETERMINER +PREDETERMINERS +PREDETERMINES +PREDETERMINING +PREDEVALUATION +PREDEVELOPMENT +PREDIABETES +PREDIABETESES +PREDIABETIC +PREDIABETICS +PREDIAL +PREDICABLE +PREDICABLES +PREDICAMENT +PREDICAMENTS +PREDICANT +PREDICANTS +PREDICATE +PREDICATED +PREDICATES +PREDICATING +PREDICATION +PREDICATIONS +PREDICATIVE +PREDICATIVELY +PREDICATORY +PREDICT +PREDICTABILITY +PREDICTABLE +PREDICTABLY +PREDICTED +PREDICTING +PREDICTION +PREDICTIONS +PREDICTIVE +PREDICTIVELY +PREDICTOR +PREDICTORS +PREDICTS +PREDIGEST +PREDIGESTED +PREDIGESTING +PREDIGESTION +PREDIGESTIONS +PREDIGESTS +PREDILECTION +PREDILECTIONS +PREDINNER +PREDINNERS +PREDISCHARGE +PREDISCOVERIES +PREDISCOVERY +PREDISPOSE +PREDISPOSED +PREDISPOSES +PREDISPOSING +PREDISPOSITION +PREDISPOSITIONS +PREDIVE +PREDNISOLONE +PREDNISOLONES +PREDNISONE +PREDNISONES +PREDOCTORAL +PREDOMINANCE +PREDOMINANCES +PREDOMINANCIES +PREDOMINANCY +PREDOMINANT +PREDOMINANTLY +PREDOMINATE +PREDOMINATED +PREDOMINATELY +PREDOMINATES +PREDOMINATING +PREDOMINATION +PREDOMINATIONS +PREDRAFT +PREDRIED +PREDRIES +PREDRILL +PREDRILLED +PREDRILLING +PREDRILLS +PREDRY +PREDRYING +PREDUSK +PREDUSKS +PREDYNASTIC +PREE +PREECLAMPSIA +PREECLAMPSIAS +PREECLAMPTIC +PREED +PREEDIT +PREEDITED +PREEDITING +PREEDITS +PREEING +PREELECT +PREELECTED +PREELECTING +PREELECTION +PREELECTRIC +PREELECTS +PREEMBARGO +PREEMERGENCE +PREEMERGENT +PREEMIE +PREEMIES +PREEMINENCE +PREEMINENCES +PREEMINENT +PREEMINENTLY +PREEMPLOYMENT +PREEMPT +PREEMPTED +PREEMPTING +PREEMPTION +PREEMPTIONS +PREEMPTIVE +PREEMPTIVELY +PREEMPTOR +PREEMPTORS +PREEMPTS +PREEN +PREENACT +PREENACTED +PREENACTING +PREENACTS +PREENED +PREENER +PREENERS +PREENING +PREENROLLMENT +PREENS +PREERECT +PREERECTED +PREERECTING +PREERECTS +PREES +PREESTABLISH +PREESTABLISHED +PREESTABLISHES +PREESTABLISHING +PREETHICAL +PREEXCITE +PREEXCITED +PREEXCITES +PREEXCITING +PREEXEMPT +PREEXEMPTED +PREEXEMPTING +PREEXEMPTS +PREEXILIC +PREEXIST +PREEXISTED +PREEXISTENCE +PREEXISTENCES +PREEXISTENT +PREEXISTING +PREEXISTS +PREEXPERIMENT +PREEXPOSE +PREEXPOSED +PREEXPOSES +PREEXPOSING +PREFAB +PREFABBED +PREFABBING +PREFABRICATE +PREFABRICATED +PREFABRICATES +PREFABRICATING +PREFABRICATION +PREFABRICATIONS +PREFABS +PREFACE +PREFACED +PREFACER +PREFACERS +PREFACES +PREFACING +PREFADE +PREFADED +PREFADES +PREFADING +PREFASCIST +PREFATORY +PREFECT +PREFECTS +PREFECTURAL +PREFECTURE +PREFECTURES +PREFER +PREFERABILITIES +PREFERABILITY +PREFERABLE +PREFERABLY +PREFERENCE +PREFERENCES +PREFERENTIAL +PREFERENTIALLY +PREFERMENT +PREFERMENTS +PREFERRED +PREFERRER +PREFERRERS +PREFERRING +PREFERS +PREFEUDAL +PREFIGHT +PREFIGURATION +PREFIGURATIONS +PREFIGURATIVE +PREFIGURATIVELY +PREFIGURE +PREFIGURED +PREFIGUREMENT +PREFIGUREMENTS +PREFIGURES +PREFIGURING +PREFILE +PREFILED +PREFILES +PREFILING +PREFILLED +PREFINANCE +PREFINANCED +PREFINANCES +PREFINANCING +PREFIRE +PREFIRED +PREFIRES +PREFIRING +PREFIX +PREFIXAL +PREFIXED +PREFIXES +PREFIXING +PREFIXION +PREFIXIONS +PREFLAME +PREFLIGHT +PREFLIGHTED +PREFLIGHTING +PREFLIGHTS +PREFOCUS +PREFOCUSED +PREFOCUSES +PREFOCUSING +PREFOCUSSED +PREFOCUSSES +PREFOCUSSING +PREFORM +PREFORMAT +PREFORMATION +PREFORMATIONIST +PREFORMATIONS +PREFORMATS +PREFORMATTED +PREFORMATTING +PREFORMED +PREFORMING +PREFORMS +PREFORMULATE +PREFORMULATED +PREFORMULATES +PREFORMULATING +PREFRANK +PREFRANKED +PREFRANKING +PREFRANKS +PREFREEZE +PREFREEZES +PREFREEZING +PREFRESHMAN +PREFRONTAL +PREFRONTALS +PREFROZE +PREFROZEN +PREFUND +PREFUNDED +PREFUNDING +PREFUNDS +PREGAME +PREGAMES +PREGANGLIONIC +PREGENITAL +PREGGERS +PREGNABILITIES +PREGNABILITY +PREGNABLE +PREGNANCIES +PREGNANCY +PREGNANT +PREGNANTLY +PREGNENOLONE +PREGNENOLONES +PREGROWTH +PREGROWTHS +PREGUIDE +PREGUIDED +PREGUIDES +PREGUIDING +PREHANDLE +PREHANDLED +PREHANDLES +PREHANDLING +PREHARDEN +PREHARDENED +PREHARDENING +PREHARDENS +PREHARVEST +PREHEADACHE +PREHEAT +PREHEATED +PREHEATER +PREHEATERS +PREHEATING +PREHEATS +PREHENSILE +PREHENSILITIES +PREHENSILITY +PREHENSION +PREHENSIONS +PREHIRING +PREHISTORIAN +PREHISTORIANS +PREHISTORIC +PREHISTORICAL +PREHISTORICALLY +PREHISTORIES +PREHISTORY +PREHOLIDAY +PREHOMINID +PREHOMINIDS +PREHUMAN +PREHUMANS +PREIGNITION +PREIGNITIONS +PREIMPLANTATION +PREIMPOSE +PREIMPOSED +PREIMPOSES +PREIMPOSING +PREINAUGURAL +PREINDUCTION +PREINDUSTRIAL +PREINFORM +PREINFORMED +PREINFORMING +PREINFORMS +PREINSERT +PREINSERTED +PREINSERTING +PREINSERTS +PREINTERVIEW +PREINTERVIEWED +PREINTERVIEWING +PREINTERVIEWS +PREINVASION +PREINVITE +PREINVITED +PREINVITES +PREINVITING +PREJUDGE +PREJUDGED +PREJUDGER +PREJUDGERS +PREJUDGES +PREJUDGING +PREJUDGMENT +PREJUDGMENTS +PREJUDICE +PREJUDICED +PREJUDICES +PREJUDICIAL +PREJUDICIALLY +PREJUDICIALNESS +PREJUDICING +PREKINDERGARTEN +PRELACIES +PRELACY +PRELAPSARIAN +PRELATE +PRELATES +PRELATIC +PRELATISM +PRELATISMS +PRELATURE +PRELATURES +PRELAUNCH +PRELAUNCHED +PRELAUNCHES +PRELAUNCHING +PRELAW +PRELECT +PRELECTED +PRELECTING +PRELECTION +PRELECTIONS +PRELECTOR +PRELECTORS +PRELECTS +PRELEGAL +PRELIBATION +PRELIBATIONS +PRELIFE +PRELIM +PRELIMINARIES +PRELIMINARILY +PRELIMINARY +PRELIMIT +PRELIMITED +PRELIMITING +PRELIMITS +PRELIMS +PRELITERARY +PRELITERATE +PRELITERATES +PRELIVES +PRELOAD +PRELOADED +PRELOADING +PRELOADS +PRELOCATE +PRELOCATED +PRELOCATES +PRELOCATING +PRELOGICAL +PRELUDE +PRELUDED +PRELUDER +PRELUDERS +PRELUDES +PRELUDIAL +PRELUDING +PRELUNCH +PRELUNCHEON +PRELUSION +PRELUSIONS +PRELUSIVE +PRELUSIVELY +PRELUSORY +PREMADE +PREMALIGNANT +PREMAN +PREMANUFACTURE +PREMANUFACTURED +PREMANUFACTURES +PREMARITAL +PREMARITALLY +PREMARKET +PREMARKETED +PREMARKETING +PREMARKETS +PREMARRIAGE +PREMATURE +PREMATURELY +PREMATURENESS +PREMATURENESSES +PREMATURES +PREMATURITIES +PREMATURITY +PREMAXILLA +PREMAXILLAE +PREMAXILLARIES +PREMAXILLARY +PREMAXILLAS +PREMEAL +PREMEASURE +PREMEASURED +PREMEASURES +PREMEASURING +PREMED +PREMEDIC +PREMEDICAL +PREMEDICS +PREMEDIEVAL +PREMEDITATE +PREMEDITATED +PREMEDITATEDLY +PREMEDITATES +PREMEDITATING +PREMEDITATION +PREMEDITATIONS +PREMEDITATIVE +PREMEDITATOR +PREMEDITATORS +PREMEDS +PREMEET +PREMEIOTIC +PREMEN +PREMENOPAUSAL +PREMENSTRUAL +PREMENSTRUALLY +PREMERGER +PREMIE +PREMIER +PREMIERE +PREMIERED +PREMIERES +PREMIERING +PREMIERS +PREMIERSHIP +PREMIERSHIPS +PREMIES +PREMIGRATION +PREMILLENARIAN +PREMILLENARIANS +PREMILLENNIAL +PREMILLENNIALLY +PREMISE +PREMISED +PREMISES +PREMISING +PREMISS +PREMISSES +PREMIUM +PREMIUMS +PREMIX +PREMIXED +PREMIXES +PREMIXING +PREMIXT +PREMODERN +PREMODIFICATION +PREMODIFIED +PREMODIFIES +PREMODIFY +PREMODIFYING +PREMOISTEN +PREMOISTENED +PREMOISTENING +PREMOISTENS +PREMOLAR +PREMOLARS +PREMOLD +PREMOLDED +PREMOLDING +PREMOLDS +PREMOLT +PREMONISH +PREMONISHED +PREMONISHES +PREMONISHING +PREMONITION +PREMONITIONS +PREMONITORILY +PREMONITORY +PREMORAL +PREMORSE +PREMUNE +PREMUNITION +PREMUNITIONS +PREMYCOTIC +PRENAME +PRENAMES +PRENATAL +PRENATALLY +PRENOMEN +PRENOMENS +PRENOMINA +PRENOMINATE +PRENOMINATED +PRENOMINATES +PRENOMINATING +PRENOMINATION +PRENOMINATIONS +PRENOON +PRENOTIFICATION +PRENOTIFIED +PRENOTIFIES +PRENOTIFY +PRENOTIFYING +PRENOTION +PRENOTIONS +PRENTICE +PRENTICED +PRENTICES +PRENTICING +PRENUMBER +PRENUMBERED +PRENUMBERING +PRENUMBERS +PRENUPTIAL +PREOBTAIN +PREOBTAINED +PREOBTAINING +PREOBTAINS +PREOCCUPANCIES +PREOCCUPANCY +PREOCCUPATION +PREOCCUPATIONS +PREOCCUPIED +PREOCCUPIES +PREOCCUPY +PREOCCUPYING +PREOP +PREOPENING +PREOPERATIONAL +PREOPERATIVE +PREOPERATIVELY +PREOPS +PREOPTION +PREOPTIONS +PREORAL +PREORDAIN +PREORDAINED +PREORDAINING +PREORDAINMENT +PREORDAINMENTS +PREORDAINS +PREORDER +PREORDERED +PREORDERING +PREORDERS +PREORDINATION +PREORDINATIONS +PREOVULATORY +PREOWNED +PREP +PREPACK +PREPACKAGE +PREPACKAGED +PREPACKAGES +PREPACKAGING +PREPACKED +PREPACKING +PREPACKS +PREPAID +PREPARATION +PREPARATIONS +PREPARATIVE +PREPARATIVELY +PREPARATIVES +PREPARATOR +PREPARATORILY +PREPARATORS +PREPARATORY +PREPARE +PREPARED +PREPAREDLY +PREPAREDNESS +PREPAREDNESSES +PREPARER +PREPARERS +PREPARES +PREPARING +PREPASTE +PREPASTED +PREPASTES +PREPASTING +PREPAVE +PREPAVED +PREPAVES +PREPAVING +PREPAY +PREPAYING +PREPAYMENT +PREPAYMENTS +PREPAYS +PREPENSE +PREPENSELY +PREPERFORMANCE +PREPILL +PREPLACE +PREPLACED +PREPLACES +PREPLACING +PREPLAN +PREPLANNED +PREPLANNING +PREPLANS +PREPLANT +PREPLANTING +PREPONDERANCE +PREPONDERANCES +PREPONDERANCIES +PREPONDERANCY +PREPONDERANT +PREPONDERANTLY +PREPONDERATE +PREPONDERATED +PREPONDERATELY +PREPONDERATES +PREPONDERATING +PREPONDERATION +PREPONDERATIONS +PREPORTION +PREPORTIONED +PREPORTIONING +PREPORTIONS +PREPOSITION +PREPOSITIONAL +PREPOSITIONALLY +PREPOSITIONS +PREPOSITIVE +PREPOSITIVELY +PREPOSSESS +PREPOSSESSED +PREPOSSESSES +PREPOSSESSING +PREPOSSESSION +PREPOSSESSIONS +PREPOSTEROUS +PREPOSTEROUSLY +PREPOTENCIES +PREPOTENCY +PREPOTENT +PREPOTENTLY +PREPPED +PREPPIE +PREPPIER +PREPPIES +PREPPIEST +PREPPILY +PREPPINESS +PREPPINESSES +PREPPING +PREPPY +PREPRANDIAL +PREPREG +PREPREGS +PREPREPARED +PREPRESIDENTIAL +PREPRESS +PREPRICE +PREPRICED +PREPRICES +PREPRICING +PREPRIMARIES +PREPRIMARY +PREPRINT +PREPRINTED +PREPRINTING +PREPRINTS +PREPROCESS +PREPROCESSED +PREPROCESSES +PREPROCESSING +PREPROCESSOR +PREPROCESSORS +PREPRODUCTION +PREPRODUCTIONS +PREPROFESSIONAL +PREPROGRAM +PREPROGRAMED +PREPROGRAMING +PREPROGRAMMED +PREPROGRAMMING +PREPROGRAMS +PREPS +PREPSYCHEDELIC +PREPUBERAL +PREPUBERTAL +PREPUBERTIES +PREPUBERTY +PREPUBES +PREPUBESCENCE +PREPUBESCENCES +PREPUBESCENT +PREPUBESCENTS +PREPUBIS +PREPUBLICATION +PREPUBLICATIONS +PREPUCE +PREPUCES +PREPUEBLO +PREPUNCH +PREPUNCHED +PREPUNCHES +PREPUNCHING +PREPUPA +PREPUPAE +PREPUPAL +PREPUPAS +PREPURCHASE +PREPURCHASED +PREPURCHASES +PREPURCHASING +PREPUTIAL +PREQUALIFIED +PREQUALIFIES +PREQUALIFY +PREQUALIFYING +PREQUEL +PREQUELS +PRERACE +PRERADIO +PRERECESSION +PRERECORD +PRERECORDED +PRERECORDING +PRERECORDS +PRERECTAL +PREREFORM +PREREGISTER +PREREGISTERED +PREREGISTERING +PREREGISTERS +PREREGISTRATION +PREREHEARSAL +PRERELEASE +PRERELEASED +PRERELEASES +PRERELEASING +PRERENAL +PREREQUIRE +PREREQUIRED +PREREQUIRES +PREREQUIRING +PREREQUISITE +PREREQUISITES +PRERETIREMENT +PRERETURN +PREREVIEW +PREREVISIONIST +PREREVOLUTION +PRERINSE +PRERINSED +PRERINSES +PRERINSING +PRERIOT +PREROCK +PREROGATIVE +PREROGATIVED +PREROGATIVES +PREROMANTIC +PRESA +PRESAGE +PRESAGED +PRESAGEFUL +PRESAGER +PRESAGERS +PRESAGES +PRESAGING +PRESALE +PRESALES +PRESANCTIFIED +PRESBYOPE +PRESBYOPES +PRESBYOPIA +PRESBYOPIAS +PRESBYOPIC +PRESBYOPICS +PRESBYTER +PRESBYTERATE +PRESBYTERATES +PRESBYTERIAL +PRESBYTERIALLY +PRESBYTERIALS +PRESBYTERIAN +PRESBYTERIES +PRESBYTERS +PRESBYTERY +PRESCHEDULE +PRESCHEDULED +PRESCHEDULES +PRESCHEDULING +PRESCHOOL +PRESCHOOLER +PRESCHOOLERS +PRESCHOOLS +PRESCIENCE +PRESCIENCES +PRESCIENT +PRESCIENTIFIC +PRESCIENTLY +PRESCIND +PRESCINDED +PRESCINDING +PRESCINDS +PRESCORE +PRESCORED +PRESCORES +PRESCORING +PRESCREEN +PRESCREENED +PRESCREENING +PRESCREENS +PRESCRIBE +PRESCRIBED +PRESCRIBER +PRESCRIBERS +PRESCRIBES +PRESCRIBING +PRESCRIPT +PRESCRIPTION +PRESCRIPTIONS +PRESCRIPTIVE +PRESCRIPTIVELY +PRESCRIPTS +PRESE +PRESEASON +PRESEASONS +PRESELECT +PRESELECTED +PRESELECTING +PRESELECTION +PRESELECTIONS +PRESELECTS +PRESELL +PRESELLING +PRESELLS +PRESENCE +PRESENCES +PRESENT +PRESENTABILITY +PRESENTABLE +PRESENTABLENESS +PRESENTABLY +PRESENTATION +PRESENTATIONAL +PRESENTATIONS +PRESENTATIVE +PRESENTED +PRESENTEE +PRESENTEES +PRESENTENCE +PRESENTENCED +PRESENTENCES +PRESENTENCING +PRESENTER +PRESENTERS +PRESENTIENT +PRESENTIMENT +PRESENTIMENTAL +PRESENTIMENTS +PRESENTING +PRESENTISM +PRESENTISMS +PRESENTIST +PRESENTLY +PRESENTMENT +PRESENTMENTS +PRESENTNESS +PRESENTNESSES +PRESENTS +PRESERVABILITY +PRESERVABLE +PRESERVATION +PRESERVATIONIST +PRESERVATIONS +PRESERVATIVE +PRESERVATIVES +PRESERVE +PRESERVED +PRESERVER +PRESERVERS +PRESERVES +PRESERVICE +PRESERVING +PRESET +PRESETS +PRESETTING +PRESETTLE +PRESETTLED +PRESETTLEMENT +PRESETTLES +PRESETTLING +PRESHAPE +PRESHAPED +PRESHAPES +PRESHAPING +PRESHIP +PRESHIPPED +PRESHIPPING +PRESHIPS +PRESHOW +PRESHOWED +PRESHOWING +PRESHOWN +PRESHOWS +PRESHRANK +PRESHRINK +PRESHRINKING +PRESHRINKS +PRESHRUNK +PRESHRUNKEN +PRESIDE +PRESIDED +PRESIDENCIES +PRESIDENCY +PRESIDENT +PRESIDENTIAL +PRESIDENTIALLY +PRESIDENTS +PRESIDENTSHIP +PRESIDENTSHIPS +PRESIDER +PRESIDERS +PRESIDES +PRESIDIA +PRESIDIAL +PRESIDIARY +PRESIDING +PRESIDIO +PRESIDIOS +PRESIDIUM +PRESIDIUMS +PRESIFT +PRESIFTED +PRESIFTING +PRESIFTS +PRESIGNAL +PRESIGNALED +PRESIGNALING +PRESIGNALLED +PRESIGNALLING +PRESIGNALS +PRESIGNIFIED +PRESIGNIFIES +PRESIGNIFY +PRESIGNIFYING +PRESLAUGHTER +PRESLEEP +PRESLICE +PRESLICED +PRESLICES +PRESLICING +PRESOAK +PRESOAKED +PRESOAKING +PRESOAKS +PRESOLD +PRESOLVE +PRESOLVED +PRESOLVES +PRESOLVING +PRESONG +PRESORT +PRESORTED +PRESORTING +PRESORTS +PRESPECIFIED +PRESPECIFIES +PRESPECIFY +PRESPECIFYING +PRESPLIT +PRESS +PRESSBOARD +PRESSBOARDS +PRESSED +PRESSER +PRESSERS +PRESSES +PRESSGANG +PRESSGANGS +PRESSING +PRESSINGLY +PRESSINGS +PRESSMAN +PRESSMARK +PRESSMARKS +PRESSMEN +PRESSOR +PRESSORS +PRESSROOM +PRESSROOMS +PRESSRUN +PRESSRUNS +PRESSURE +PRESSURED +PRESSURELESS +PRESSURES +PRESSURING +PRESSURISE +PRESSURISED +PRESSURISES +PRESSURISING +PRESSURIZATION +PRESSURIZATIONS +PRESSURIZE +PRESSURIZED +PRESSURIZER +PRESSURIZERS +PRESSURIZES +PRESSURIZING +PRESSWORK +PRESSWORKS +PREST +PRESTAMP +PRESTAMPED +PRESTAMPING +PRESTAMPS +PRESTER +PRESTERILIZE +PRESTERILIZED +PRESTERILIZES +PRESTERILIZING +PRESTERNA +PRESTERNUM +PRESTERS +PRESTIDIGITATOR +PRESTIGE +PRESTIGEFUL +PRESTIGES +PRESTIGIOUS +PRESTIGIOUSLY +PRESTIGIOUSNESS +PRESTISSIMO +PRESTO +PRESTORAGE +PRESTORE +PRESTORED +PRESTORES +PRESTORING +PRESTOS +PRESTRESS +PRESTRESSED +PRESTRESSES +PRESTRESSING +PRESTRIKE +PRESTRUCTURE +PRESTRUCTURED +PRESTRUCTURES +PRESTRUCTURING +PRESTS +PRESUMABLE +PRESUMABLY +PRESUME +PRESUMED +PRESUMEDLY +PRESUMER +PRESUMERS +PRESUMES +PRESUMING +PRESUMINGLY +PRESUMMIT +PRESUMMITS +PRESUMPTION +PRESUMPTIONS +PRESUMPTIVE +PRESUMPTIVELY +PRESUMPTUOUS +PRESUMPTUOUSLY +PRESUPPOSE +PRESUPPOSED +PRESUPPOSES +PRESUPPOSING +PRESUPPOSITION +PRESUPPOSITIONS +PRESURGERY +PRESURVEY +PRESURVEYED +PRESURVEYING +PRESURVEYS +PRESWEETEN +PRESWEETENED +PRESWEETENING +PRESWEETENS +PRESYMPTOMATIC +PRESYNAPTIC +PRESYNAPTICALLY +PRETAPE +PRETAPED +PRETAPES +PRETAPING +PRETASTE +PRETASTED +PRETASTES +PRETASTING +PRETAX +PRETEEN +PRETEENS +PRETELEVISION +PRETELL +PRETELLING +PRETELLS +PRETENCE +PRETENCES +PRETEND +PRETENDED +PRETENDEDLY +PRETENDER +PRETENDERS +PRETENDING +PRETENDS +PRETENSE +PRETENSES +PRETENSION +PRETENSIONED +PRETENSIONING +PRETENSIONLESS +PRETENSIONS +PRETENTIOUS +PRETENTIOUSLY +PRETENTIOUSNESS +PRETERIT +PRETERITE +PRETERITES +PRETERITS +PRETERM +PRETERMINAL +PRETERMINATION +PRETERMINATIONS +PRETERMISSION +PRETERMISSIONS +PRETERMIT +PRETERMITS +PRETERMITTED +PRETERMITTING +PRETERMS +PRETERNATURAL +PRETERNATURALLY +PRETEST +PRETESTED +PRETESTING +PRETESTS +PRETEXT +PRETEXTED +PRETEXTING +PRETEXTS +PRETHEATER +PRETOLD +PRETOR +PRETORIAL +PRETORIAN +PRETORIANS +PRETORS +PRETOURNAMENT +PRETRAIN +PRETRAINED +PRETRAINING +PRETRAINS +PRETRAVEL +PRETREAT +PRETREATED +PRETREATING +PRETREATMENT +PRETREATMENTS +PRETREATS +PRETRIAL +PRETRIALS +PRETRIM +PRETRIMMED +PRETRIMMING +PRETRIMS +PRETTIED +PRETTIER +PRETTIES +PRETTIEST +PRETTIFICATION +PRETTIFICATIONS +PRETTIFIED +PRETTIFIER +PRETTIFIERS +PRETTIFIES +PRETTIFY +PRETTIFYING +PRETTILY +PRETTINESS +PRETTINESSES +PRETTY +PRETTYING +PRETTYISH +PRETYPE +PRETYPED +PRETYPES +PRETYPING +PRETZEL +PRETZELS +PREUNIFICATION +PREUNION +PREUNIONS +PREUNITE +PREUNITED +PREUNITES +PREUNITING +PREUNIVERSITY +PREVAIL +PREVAILED +PREVAILER +PREVAILERS +PREVAILING +PREVAILS +PREVALENCE +PREVALENCES +PREVALENT +PREVALENTLY +PREVALENTS +PREVALUE +PREVALUED +PREVALUES +PREVALUING +PREVARICATE +PREVARICATED +PREVARICATES +PREVARICATING +PREVARICATION +PREVARICATIONS +PREVARICATOR +PREVARICATORS +PREVENIENT +PREVENIENTLY +PREVENT +PREVENTABILITY +PREVENTABLE +PREVENTATIVE +PREVENTATIVES +PREVENTED +PREVENTER +PREVENTERS +PREVENTIBLE +PREVENTING +PREVENTION +PREVENTIONS +PREVENTIVE +PREVENTIVELY +PREVENTIVENESS +PREVENTIVES +PREVENTS +PREVERB +PREVERBAL +PREVERBS +PREVIABLE +PREVIEW +PREVIEWED +PREVIEWER +PREVIEWERS +PREVIEWING +PREVIEWS +PREVIOUS +PREVIOUSLY +PREVIOUSNESS +PREVIOUSNESSES +PREVISE +PREVISED +PREVISES +PREVISING +PREVISION +PREVISIONAL +PREVISIONARY +PREVISIONED +PREVISIONING +PREVISIONS +PREVISIT +PREVISITED +PREVISITING +PREVISITS +PREVISOR +PREVISORS +PREVOCALIC +PREVOCATIONAL +PREVUE +PREVUED +PREVUES +PREVUING +PREWAR +PREWARM +PREWARMED +PREWARMING +PREWARMS +PREWARN +PREWARNED +PREWARNING +PREWARNS +PREWASH +PREWASHED +PREWASHES +PREWASHING +PREWEANING +PREWEIGH +PREWEIGHED +PREWEIGHING +PREWEIGHS +PREWIRE +PREWIRED +PREWIRES +PREWIRING +PREWORK +PREWORKED +PREWORKING +PREWORKS +PREWORN +PREWRAP +PREWRAPPED +PREWRAPPING +PREWRAPS +PREWRITING +PREWRITINGS +PREX +PREXES +PREXIES +PREXY +PREY +PREYED +PREYER +PREYERS +PREYING +PREYS +PREZ +PREZES +PRIAPEAN +PRIAPI +PRIAPIC +PRIAPISM +PRIAPISMS +PRIAPUS +PRIAPUSES +PRICE +PRICEABLE +PRICED +PRICELESS +PRICELESSLY +PRICER +PRICERS +PRICES +PRICEY +PRICIER +PRICIEST +PRICILY +PRICING +PRICK +PRICKED +PRICKER +PRICKERS +PRICKET +PRICKETS +PRICKIER +PRICKIEST +PRICKING +PRICKINGS +PRICKLE +PRICKLED +PRICKLES +PRICKLIER +PRICKLIEST +PRICKLINESS +PRICKLINESSES +PRICKLING +PRICKLY +PRICKS +PRICKY +PRICY +PRIDE +PRIDED +PRIDEFUL +PRIDEFULLY +PRIDEFULNESS +PRIDEFULNESSES +PRIDES +PRIDING +PRIED +PRIEDIEU +PRIEDIEUS +PRIEDIEUX +PRIER +PRIERS +PRIES +PRIEST +PRIESTED +PRIESTESS +PRIESTESSES +PRIESTHOOD +PRIESTHOODS +PRIESTING +PRIESTLIER +PRIESTLIEST +PRIESTLINESS +PRIESTLINESSES +PRIESTLY +PRIESTS +PRIG +PRIGGED +PRIGGERIES +PRIGGERY +PRIGGING +PRIGGISH +PRIGGISHLY +PRIGGISHNESS +PRIGGISHNESSES +PRIGGISM +PRIGGISMS +PRIGS +PRILL +PRILLED +PRILLING +PRILLS +PRIM +PRIMA +PRIMACIES +PRIMACY +PRIMAGE +PRIMAGES +PRIMAL +PRIMALITIES +PRIMALITY +PRIMARIES +PRIMARILY +PRIMARY +PRIMAS +PRIMATAL +PRIMATALS +PRIMATE +PRIMATES +PRIMATESHIP +PRIMATESHIPS +PRIMATIAL +PRIMATIALS +PRIMATOLOGICAL +PRIMATOLOGIES +PRIMATOLOGIST +PRIMATOLOGISTS +PRIMATOLOGY +PRIMAVERA +PRIMAVERAS +PRIME +PRIMED +PRIMELY +PRIMENESS +PRIMENESSES +PRIMER +PRIMERO +PRIMEROS +PRIMERS +PRIMES +PRIMEVAL +PRIMEVALLY +PRIMI +PRIMINE +PRIMINES +PRIMING +PRIMINGS +PRIMIPARA +PRIMIPARAE +PRIMIPARAS +PRIMIPAROUS +PRIMITIVE +PRIMITIVELY +PRIMITIVENESS +PRIMITIVENESSES +PRIMITIVES +PRIMITIVISM +PRIMITIVISMS +PRIMITIVIST +PRIMITIVISTIC +PRIMITIVISTS +PRIMITIVITIES +PRIMITIVITY +PRIMLY +PRIMMED +PRIMMER +PRIMMEST +PRIMMING +PRIMNESS +PRIMNESSES +PRIMO +PRIMOGENITOR +PRIMOGENITORS +PRIMOGENITURE +PRIMOGENITURES +PRIMORDIA +PRIMORDIAL +PRIMORDIALLY +PRIMORDIUM +PRIMOS +PRIMP +PRIMPED +PRIMPING +PRIMPS +PRIMROSE +PRIMROSES +PRIMS +PRIMSIE +PRIMULA +PRIMULAS +PRIMUS +PRIMUSES +PRINCE +PRINCEDOM +PRINCEDOMS +PRINCEKIN +PRINCEKINS +PRINCELET +PRINCELETS +PRINCELIER +PRINCELIEST +PRINCELINESS +PRINCELINESSES +PRINCELING +PRINCELINGS +PRINCELY +PRINCES +PRINCESHIP +PRINCESHIPS +PRINCESS +PRINCESSE +PRINCESSES +PRINCIPAL +PRINCIPALITIES +PRINCIPALITY +PRINCIPALLY +PRINCIPALS +PRINCIPALSHIP +PRINCIPALSHIPS +PRINCIPE +PRINCIPI +PRINCIPIA +PRINCIPIUM +PRINCIPLE +PRINCIPLED +PRINCIPLES +PRINCOCK +PRINCOCKS +PRINCOX +PRINCOXES +PRINK +PRINKED +PRINKER +PRINKERS +PRINKING +PRINKS +PRINT +PRINTABILITIES +PRINTABILITY +PRINTABLE +PRINTED +PRINTER +PRINTERIES +PRINTERS +PRINTERY +PRINTHEAD +PRINTHEADS +PRINTING +PRINTINGS +PRINTLESS +PRINTMAKER +PRINTMAKERS +PRINTMAKING +PRINTMAKINGS +PRINTOUT +PRINTOUTS +PRINTS +PRION +PRIONS +PRIOR +PRIORATE +PRIORATES +PRIORESS +PRIORESSES +PRIORIES +PRIORITIES +PRIORITIZATION +PRIORITIZATIONS +PRIORITIZE +PRIORITIZED +PRIORITIZES +PRIORITIZING +PRIORITY +PRIORLY +PRIORS +PRIORSHIP +PRIORSHIPS +PRIORY +PRISE +PRISED +PRISERE +PRISERES +PRISES +PRISING +PRISM +PRISMATIC +PRISMATICALLY +PRISMATOID +PRISMATOIDS +PRISMOID +PRISMOIDAL +PRISMOIDS +PRISMS +PRISON +PRISONED +PRISONER +PRISONERS +PRISONING +PRISONS +PRISS +PRISSED +PRISSES +PRISSIER +PRISSIES +PRISSIEST +PRISSILY +PRISSINESS +PRISSINESSES +PRISSING +PRISSY +PRISTANE +PRISTANES +PRISTINE +PRISTINELY +PRITHEE +PRIVACIES +PRIVACY +PRIVATDOCENT +PRIVATDOCENTS +PRIVATDOZENT +PRIVATDOZENTS +PRIVATE +PRIVATEER +PRIVATEERED +PRIVATEERING +PRIVATEERS +PRIVATELY +PRIVATENESS +PRIVATENESSES +PRIVATER +PRIVATES +PRIVATEST +PRIVATION +PRIVATIONS +PRIVATISE +PRIVATISED +PRIVATISES +PRIVATISING +PRIVATISM +PRIVATISMS +PRIVATIST +PRIVATISTS +PRIVATIVE +PRIVATIVELY +PRIVATIVES +PRIVATIZATION +PRIVATIZATIONS +PRIVATIZE +PRIVATIZED +PRIVATIZES +PRIVATIZING +PRIVET +PRIVETS +PRIVIER +PRIVIES +PRIVIEST +PRIVILEGE +PRIVILEGED +PRIVILEGES +PRIVILEGING +PRIVILY +PRIVITIES +PRIVITY +PRIVY +PRIZE +PRIZED +PRIZEFIGHT +PRIZEFIGHTER +PRIZEFIGHTERS +PRIZEFIGHTING +PRIZEFIGHTINGS +PRIZEFIGHTS +PRIZER +PRIZERS +PRIZES +PRIZEWINNER +PRIZEWINNERS +PRIZEWINNING +PRIZING +PRO +PROA +PROABORTION +PROACTION +PROACTIONS +PROACTIVE +PROAS +PROBABILISM +PROBABILISMS +PROBABILIST +PROBABILISTIC +PROBABILISTS +PROBABILITIES +PROBABILITY +PROBABLE +PROBABLES +PROBABLY +PROBAND +PROBANDS +PROBANG +PROBANGS +PROBATE +PROBATED +PROBATES +PROBATING +PROBATION +PROBATIONAL +PROBATIONALLY +PROBATIONARY +PROBATIONER +PROBATIONERS +PROBATIONS +PROBATIVE +PROBATORY +PROBE +PROBED +PROBENECID +PROBENECIDS +PROBER +PROBERS +PROBES +PROBING +PROBINGLY +PROBIOTIC +PROBIOTICS +PROBIT +PROBITIES +PROBITS +PROBITY +PROBLEM +PROBLEMATIC +PROBLEMATICAL +PROBLEMATICALLY +PROBLEMATICS +PROBLEMS +PROBOSCIDEAN +PROBOSCIDEANS +PROBOSCIDES +PROBOSCIDIAN +PROBOSCIDIANS +PROBOSCIS +PROBOSCISES +PROCAINE +PROCAINES +PROCAMBIA +PROCAMBIAL +PROCAMBIUM +PROCAMBIUMS +PROCARBAZINE +PROCARBAZINES +PROCARP +PROCARPS +PROCARYOTE +PROCARYOTES +PROCATHEDRAL +PROCATHEDRALS +PROCEDURAL +PROCEDURALLY +PROCEDURALS +PROCEDURE +PROCEDURES +PROCEED +PROCEEDED +PROCEEDER +PROCEEDERS +PROCEEDING +PROCEEDINGS +PROCEEDS +PROCEPHALIC +PROCERCOID +PROCERCOIDS +PROCESS +PROCESSABILITY +PROCESSABLE +PROCESSED +PROCESSER +PROCESSERS +PROCESSES +PROCESSIBILITY +PROCESSIBLE +PROCESSING +PROCESSION +PROCESSIONAL +PROCESSIONALLY +PROCESSIONALS +PROCESSIONED +PROCESSIONING +PROCESSIONS +PROCESSOR +PROCESSORS +PROCHAIN +PROCHEIN +PROCHOICE +PROCHURCH +PROCLAIM +PROCLAIMED +PROCLAIMER +PROCLAIMERS +PROCLAIMING +PROCLAIMS +PROCLAMATION +PROCLAMATIONS +PROCLISES +PROCLISIS +PROCLITIC +PROCLITICS +PROCLIVITIES +PROCLIVITY +PROCONSUL +PROCONSULAR +PROCONSULATE +PROCONSULATES +PROCONSULS +PROCONSULSHIP +PROCONSULSHIPS +PROCRASTINATE +PROCRASTINATED +PROCRASTINATES +PROCRASTINATING +PROCRASTINATION +PROCRASTINATOR +PROCRASTINATORS +PROCREANT +PROCREATE +PROCREATED +PROCREATES +PROCREATING +PROCREATION +PROCREATIONS +PROCREATIVE +PROCREATOR +PROCREATORS +PROCRUSTEAN +PROCRYPTIC +PROCTITIDES +PROCTITIS +PROCTITISES +PROCTODAEA +PROCTODAEUM +PROCTODAEUMS +PROCTODEA +PROCTODEUM +PROCTODEUMS +PROCTOLOGIC +PROCTOLOGICAL +PROCTOLOGIES +PROCTOLOGIST +PROCTOLOGISTS +PROCTOLOGY +PROCTOR +PROCTORED +PROCTORIAL +PROCTORING +PROCTORS +PROCTORSHIP +PROCTORSHIPS +PROCUMBENT +PROCURABLE +PROCURAL +PROCURALS +PROCURATION +PROCURATIONS +PROCURATOR +PROCURATORIAL +PROCURATORS +PROCURE +PROCURED +PROCUREMENT +PROCUREMENTS +PROCURER +PROCURERS +PROCURES +PROCURESS +PROCURESSES +PROCURING +PROD +PRODDED +PRODDER +PRODDERS +PRODDING +PRODIGAL +PRODIGALITIES +PRODIGALITY +PRODIGALLY +PRODIGALS +PRODIGIES +PRODIGIOUS +PRODIGIOUSLY +PRODIGIOUSNESS +PRODIGY +PRODROMAL +PRODROMATA +PRODROME +PRODROMES +PRODROMIC +PRODRUG +PRODRUGS +PRODS +PRODUCE +PRODUCED +PRODUCER +PRODUCERS +PRODUCES +PRODUCIBLE +PRODUCING +PRODUCT +PRODUCTION +PRODUCTIONAL +PRODUCTIONS +PRODUCTIVE +PRODUCTIVELY +PRODUCTIVENESS +PRODUCTIVITIES +PRODUCTIVITY +PRODUCTS +PROEM +PROEMIAL +PROEMS +PROENZYME +PROENZYMES +PROESTRUS +PROESTRUSES +PROETTE +PROETTES +PROF +PROFAMILY +PROFANATION +PROFANATIONS +PROFANATORY +PROFANE +PROFANED +PROFANELY +PROFANENESS +PROFANENESSES +PROFANER +PROFANERS +PROFANES +PROFANING +PROFANITIES +PROFANITY +PROFESS +PROFESSED +PROFESSEDLY +PROFESSES +PROFESSING +PROFESSION +PROFESSIONAL +PROFESSIONALISM +PROFESSIONALIZE +PROFESSIONALLY +PROFESSIONALS +PROFESSIONS +PROFESSOR +PROFESSORATE +PROFESSORATES +PROFESSORIAL +PROFESSORIALLY +PROFESSORIAT +PROFESSORIATE +PROFESSORIATES +PROFESSORIATS +PROFESSORS +PROFESSORSHIP +PROFESSORSHIPS +PROFFER +PROFFERED +PROFFERER +PROFFERERS +PROFFERING +PROFFERS +PROFICIENCIES +PROFICIENCY +PROFICIENT +PROFICIENTLY +PROFICIENTS +PROFILE +PROFILED +PROFILER +PROFILERS +PROFILES +PROFILING +PROFILINGS +PROFIT +PROFITABILITIES +PROFITABILITY +PROFITABLE +PROFITABLENESS +PROFITABLY +PROFITED +PROFITEER +PROFITEERED +PROFITEERING +PROFITEERS +PROFITER +PROFITEROLE +PROFITEROLES +PROFITERS +PROFITING +PROFITLESS +PROFITS +PROFITWISE +PROFLIGACIES +PROFLIGACY +PROFLIGATE +PROFLIGATELY +PROFLIGATES +PROFLUENT +PROFORMA +PROFOUND +PROFOUNDER +PROFOUNDEST +PROFOUNDLY +PROFOUNDNESS +PROFOUNDNESSES +PROFOUNDS +PROFS +PROFUNDITIES +PROFUNDITY +PROFUSE +PROFUSELY +PROFUSENESS +PROFUSENESSES +PROFUSION +PROFUSIONS +PROFUSIVE +PROG +PROGENIES +PROGENITOR +PROGENITORS +PROGENY +PROGERIA +PROGERIAS +PROGESTATIONAL +PROGESTERONE +PROGESTERONES +PROGESTIN +PROGESTINS +PROGESTOGEN +PROGESTOGENIC +PROGESTOGENS +PROGGED +PROGGER +PROGGERS +PROGGING +PROGLOTTID +PROGLOTTIDES +PROGLOTTIDS +PROGLOTTIS +PROGNATHISM +PROGNATHISMS +PROGNATHOUS +PROGNOSE +PROGNOSED +PROGNOSES +PROGNOSING +PROGNOSIS +PROGNOSTIC +PROGNOSTICATE +PROGNOSTICATED +PROGNOSTICATES +PROGNOSTICATING +PROGNOSTICATION +PROGNOSTICATIVE +PROGNOSTICATOR +PROGNOSTICATORS +PROGNOSTICS +PROGRADE +PROGRAM +PROGRAMED +PROGRAMER +PROGRAMERS +PROGRAMING +PROGRAMINGS +PROGRAMMABILITY +PROGRAMMABLE +PROGRAMMABLES +PROGRAMMATIC +PROGRAMME +PROGRAMMED +PROGRAMMER +PROGRAMMERS +PROGRAMMES +PROGRAMMING +PROGRAMMINGS +PROGRAMS +PROGRESS +PROGRESSED +PROGRESSES +PROGRESSING +PROGRESSION +PROGRESSIONAL +PROGRESSIONS +PROGRESSIVE +PROGRESSIVELY +PROGRESSIVENESS +PROGRESSIVES +PROGRESSIVISM +PROGRESSIVISMS +PROGRESSIVIST +PROGRESSIVISTIC +PROGRESSIVISTS +PROGRESSIVITIES +PROGRESSIVITY +PROGS +PROGUN +PROHIBIT +PROHIBITED +PROHIBITING +PROHIBITION +PROHIBITIONIST +PROHIBITIONISTS +PROHIBITIONS +PROHIBITIVE +PROHIBITIVELY +PROHIBITIVENESS +PROHIBITORY +PROHIBITS +PROINSULIN +PROINSULINS +PROJECT +PROJECTABLE +PROJECTED +PROJECTILE +PROJECTILES +PROJECTING +PROJECTION +PROJECTIONAL +PROJECTIONIST +PROJECTIONISTS +PROJECTIONS +PROJECTIVE +PROJECTIVELY +PROJECTOR +PROJECTORS +PROJECTS +PROJET +PROJETS +PROKARYOTE +PROKARYOTES +PROKARYOTIC +PROLABOR +PROLACTIN +PROLACTINS +PROLAMIN +PROLAMINE +PROLAMINES +PROLAMINS +PROLAN +PROLANS +PROLAPSE +PROLAPSED +PROLAPSES +PROLAPSING +PROLAPSUS +PROLATE +PROLATELY +PROLE +PROLEG +PROLEGOMENA +PROLEGOMENON +PROLEGOMENOUS +PROLEGS +PROLEPSES +PROLEPSIS +PROLEPTIC +PROLEPTICALLY +PROLES +PROLETARIAN +PROLETARIANISE +PROLETARIANISED +PROLETARIANISES +PROLETARIANIZE +PROLETARIANIZED +PROLETARIANIZES +PROLETARIANS +PROLETARIAT +PROLETARIATS +PROLETARIES +PROLETARY +PROLIFERATE +PROLIFERATED +PROLIFERATES +PROLIFERATING +PROLIFERATION +PROLIFERATIONS +PROLIFERATIVE +PROLIFIC +PROLIFICACIES +PROLIFICACY +PROLIFICALLY +PROLIFICITIES +PROLIFICITY +PROLIFICNESS +PROLIFICNESSES +PROLINE +PROLINES +PROLIX +PROLIXITIES +PROLIXITY +PROLIXLY +PROLOCUTOR +PROLOCUTORS +PROLOG +PROLOGED +PROLOGING +PROLOGIST +PROLOGISTS +PROLOGIZE +PROLOGIZED +PROLOGIZES +PROLOGIZING +PROLOGS +PROLOGUE +PROLOGUED +PROLOGUES +PROLOGUING +PROLOGUIZE +PROLOGUIZED +PROLOGUIZES +PROLOGUIZING +PROLONG +PROLONGATION +PROLONGATIONS +PROLONGE +PROLONGED +PROLONGER +PROLONGERS +PROLONGES +PROLONGING +PROLONGS +PROLUSION +PROLUSIONS +PROLUSORY +PROM +PROMENADE +PROMENADED +PROMENADER +PROMENADERS +PROMENADES +PROMENADING +PROMETHIUM +PROMETHIUMS +PROMETRIC +PROMINE +PROMINENCE +PROMINENCES +PROMINENT +PROMINENTLY +PROMINES +PROMISCUITIES +PROMISCUITY +PROMISCUOUS +PROMISCUOUSLY +PROMISCUOUSNESS +PROMISE +PROMISED +PROMISEE +PROMISEES +PROMISER +PROMISERS +PROMISES +PROMISING +PROMISINGLY +PROMISOR +PROMISORS +PROMISSORY +PROMO +PROMODERN +PROMOED +PROMOING +PROMONTORIES +PROMONTORY +PROMOS +PROMOTABILITIES +PROMOTABILITY +PROMOTABLE +PROMOTE +PROMOTED +PROMOTER +PROMOTERS +PROMOTES +PROMOTING +PROMOTION +PROMOTIONAL +PROMOTIONS +PROMOTIVE +PROMOTIVENESS +PROMOTIVENESSES +PROMPT +PROMPTBOOK +PROMPTBOOKS +PROMPTED +PROMPTER +PROMPTERS +PROMPTEST +PROMPTING +PROMPTITUDE +PROMPTITUDES +PROMPTLY +PROMPTNESS +PROMPTNESSES +PROMPTS +PROMS +PROMULGATE +PROMULGATED +PROMULGATES +PROMULGATING +PROMULGATION +PROMULGATIONS +PROMULGATOR +PROMULGATORS +PROMULGE +PROMULGED +PROMULGES +PROMULGING +PRONATE +PRONATED +PRONATES +PRONATING +PRONATION +PRONATIONS +PRONATOR +PRONATORES +PRONATORS +PRONE +PRONELY +PRONENESS +PRONENESSES +PRONEPHRA +PRONEPHRIC +PRONEPHROI +PRONEPHROS +PRONEPHROSES +PRONG +PRONGED +PRONGHORN +PRONGHORNS +PRONGING +PRONGS +PRONOMINAL +PRONOMINALLY +PRONOTA +PRONOTUM +PRONOUN +PRONOUNCE +PRONOUNCEABLE +PRONOUNCED +PRONOUNCEDLY +PRONOUNCEMENT +PRONOUNCEMENTS +PRONOUNCER +PRONOUNCERS +PRONOUNCES +PRONOUNCING +PRONOUNS +PRONTO +PRONUCLEAR +PRONUCLEI +PRONUCLEUS +PRONUCLEUSES +PRONUNCIAMENTO +PRONUNCIAMENTOS +PRONUNCIATION +PRONUNCIATIONAL +PRONUNCIATIONS +PROOF +PROOFED +PROOFER +PROOFERS +PROOFING +PROOFREAD +PROOFREADER +PROOFREADERS +PROOFREADING +PROOFREADS +PROOFROOM +PROOFROOMS +PROOFS +PROP +PROPAEDEUTIC +PROPAEDEUTICS +PROPAGABLE +PROPAGANDA +PROPAGANDAS +PROPAGANDIST +PROPAGANDISTIC +PROPAGANDISTS +PROPAGANDIZE +PROPAGANDIZED +PROPAGANDIZER +PROPAGANDIZERS +PROPAGANDIZES +PROPAGANDIZING +PROPAGATE +PROPAGATED +PROPAGATES +PROPAGATING +PROPAGATION +PROPAGATIONS +PROPAGATIVE +PROPAGATOR +PROPAGATORS +PROPAGULE +PROPAGULES +PROPANE +PROPANES +PROPEL +PROPELLANT +PROPELLANTS +PROPELLED +PROPELLENT +PROPELLENTS +PROPELLER +PROPELLERS +PROPELLING +PROPELLOR +PROPELLORS +PROPELS +PROPEND +PROPENDED +PROPENDING +PROPENDS +PROPENE +PROPENES +PROPENOL +PROPENOLS +PROPENSE +PROPENSITIES +PROPENSITY +PROPENYL +PROPER +PROPERDIN +PROPERDINS +PROPERER +PROPEREST +PROPERLY +PROPERNESS +PROPERNESSES +PROPERS +PROPERTIED +PROPERTIES +PROPERTY +PROPERTYLESS +PROPHAGE +PROPHAGES +PROPHASE +PROPHASES +PROPHASIC +PROPHECIES +PROPHECY +PROPHESIED +PROPHESIER +PROPHESIERS +PROPHESIES +PROPHESY +PROPHESYING +PROPHET +PROPHETESS +PROPHETESSES +PROPHETHOOD +PROPHETHOODS +PROPHETIC +PROPHETICAL +PROPHETICALLY +PROPHETS +PROPHYLACTIC +PROPHYLACTICS +PROPHYLAXES +PROPHYLAXIS +PROPINE +PROPINED +PROPINES +PROPINING +PROPINQUITIES +PROPINQUITY +PROPIONATE +PROPIONATES +PROPITIATE +PROPITIATED +PROPITIATES +PROPITIATING +PROPITIATION +PROPITIATIONS +PROPITIATOR +PROPITIATORS +PROPITIATORY +PROPITIOUS +PROPITIOUSLY +PROPITIOUSNESS +PROPJET +PROPJETS +PROPLASTID +PROPLASTIDS +PROPMAN +PROPMEN +PROPOLIS +PROPOLISES +PROPONE +PROPONED +PROPONENT +PROPONENTS +PROPONES +PROPONING +PROPORTION +PROPORTIONABLE +PROPORTIONABLY +PROPORTIONAL +PROPORTIONALITY +PROPORTIONALLY +PROPORTIONALS +PROPORTIONATE +PROPORTIONATED +PROPORTIONATELY +PROPORTIONATES +PROPORTIONATING +PROPORTIONED +PROPORTIONING +PROPORTIONS +PROPOSAL +PROPOSALS +PROPOSE +PROPOSED +PROPOSER +PROPOSERS +PROPOSES +PROPOSING +PROPOSITI +PROPOSITION +PROPOSITIONAL +PROPOSITIONED +PROPOSITIONING +PROPOSITIONS +PROPOSITUS +PROPOUND +PROPOUNDED +PROPOUNDER +PROPOUNDERS +PROPOUNDING +PROPOUNDS +PROPOXYPHENE +PROPOXYPHENES +PROPPED +PROPPING +PROPRAETOR +PROPRAETORS +PROPRANOLOL +PROPRANOLOLS +PROPRETOR +PROPRETORS +PROPRIA +PROPRIETARIES +PROPRIETARY +PROPRIETIES +PROPRIETOR +PROPRIETORIAL +PROPRIETORS +PROPRIETORSHIP +PROPRIETORSHIPS +PROPRIETRESS +PROPRIETRESSES +PROPRIETY +PROPRIOCEPTION +PROPRIOCEPTIONS +PROPRIOCEPTIVE +PROPRIOCEPTOR +PROPRIOCEPTORS +PROPRIUM +PROPS +PROPTOSES +PROPTOSIS +PROPULSION +PROPULSIONS +PROPULSIVE +PROPYL +PROPYLA +PROPYLAEA +PROPYLAEUM +PROPYLENE +PROPYLENES +PROPYLIC +PROPYLITE +PROPYLITES +PROPYLON +PROPYLS +PRORATE +PRORATED +PRORATES +PRORATING +PRORATION +PRORATIONS +PROREFORM +PROROGATE +PROROGATED +PROROGATES +PROROGATING +PROROGATION +PROROGATIONS +PROROGUE +PROROGUED +PROROGUES +PROROGUING +PROS +PROSAIC +PROSAICAL +PROSAICALLY +PROSAISM +PROSAISMS +PROSAIST +PROSAISTS +PROSATEUR +PROSATEURS +PROSAUROPOD +PROSAUROPODS +PROSCENIA +PROSCENIUM +PROSCENIUMS +PROSCIUTTI +PROSCIUTTO +PROSCIUTTOS +PROSCRIBE +PROSCRIBED +PROSCRIBER +PROSCRIBERS +PROSCRIBES +PROSCRIBING +PROSCRIPTION +PROSCRIPTIONS +PROSCRIPTIVE +PROSCRIPTIVELY +PROSE +PROSECT +PROSECTED +PROSECTING +PROSECTOR +PROSECTORS +PROSECTS +PROSECUTABLE +PROSECUTE +PROSECUTED +PROSECUTES +PROSECUTING +PROSECUTION +PROSECUTIONS +PROSECUTOR +PROSECUTORIAL +PROSECUTORS +PROSED +PROSELYTE +PROSELYTED +PROSELYTES +PROSELYTING +PROSELYTISE +PROSELYTISED +PROSELYTISES +PROSELYTISING +PROSELYTISM +PROSELYTISMS +PROSELYTIZATION +PROSELYTIZE +PROSELYTIZED +PROSELYTIZER +PROSELYTIZERS +PROSELYTIZES +PROSELYTIZING +PROSEMINAR +PROSEMINARS +PROSENCEPHALA +PROSENCEPHALIC +PROSENCEPHALON +PROSER +PROSERS +PROSES +PROSIER +PROSIEST +PROSILY +PROSIMIAN +PROSIMIANS +PROSINESS +PROSINESSES +PROSING +PROSIT +PROSO +PROSOBRANCH +PROSOBRANCHS +PROSODIC +PROSODICAL +PROSODICALLY +PROSODIES +PROSODIST +PROSODISTS +PROSODY +PROSOMA +PROSOMAL +PROSOMAS +PROSOMATA +PROSOPOGRAPHIES +PROSOPOGRAPHY +PROSOPOPOEIA +PROSOPOPOEIAS +PROSOS +PROSPECT +PROSPECTED +PROSPECTING +PROSPECTIVE +PROSPECTIVELY +PROSPECTOR +PROSPECTORS +PROSPECTS +PROSPECTUS +PROSPECTUSES +PROSPER +PROSPERED +PROSPERING +PROSPERITIES +PROSPERITY +PROSPEROUS +PROSPEROUSLY +PROSPEROUSNESS +PROSPERS +PROSS +PROSSES +PROSSIE +PROSSIES +PROST +PROSTACYCLIN +PROSTACYCLINS +PROSTAGLANDIN +PROSTAGLANDINS +PROSTATE +PROSTATECTOMIES +PROSTATECTOMY +PROSTATES +PROSTATIC +PROSTATISM +PROSTATISMS +PROSTATITIS +PROSTATITISES +PROSTHESES +PROSTHESIS +PROSTHETIC +PROSTHETICALLY +PROSTHETICS +PROSTHETIST +PROSTHETISTS +PROSTHODONTICS +PROSTHODONTIST +PROSTHODONTISTS +PROSTIE +PROSTIES +PROSTITUTE +PROSTITUTED +PROSTITUTES +PROSTITUTING +PROSTITUTION +PROSTITUTIONS +PROSTITUTOR +PROSTITUTORS +PROSTOMIA +PROSTOMIAL +PROSTOMIUM +PROSTRATE +PROSTRATED +PROSTRATES +PROSTRATING +PROSTRATION +PROSTRATIONS +PROSTYLE +PROSTYLES +PROSY +PROTACTINIUM +PROTACTINIUMS +PROTAGONIST +PROTAGONISTS +PROTAMIN +PROTAMINE +PROTAMINES +PROTAMINS +PROTASES +PROTASIS +PROTATIC +PROTEA +PROTEAN +PROTEANS +PROTEAS +PROTEASE +PROTEASES +PROTECT +PROTECTANT +PROTECTANTS +PROTECTED +PROTECTER +PROTECTERS +PROTECTING +PROTECTION +PROTECTIONISM +PROTECTIONISMS +PROTECTIONIST +PROTECTIONISTS +PROTECTIONS +PROTECTIVE +PROTECTIVELY +PROTECTIVENESS +PROTECTOR +PROTECTORAL +PROTECTORATE +PROTECTORATES +PROTECTORIES +PROTECTORS +PROTECTORSHIP +PROTECTORSHIPS +PROTECTORY +PROTECTRESS +PROTECTRESSES +PROTECTS +PROTEGE +PROTEGEE +PROTEGEES +PROTEGES +PROTEI +PROTEID +PROTEIDE +PROTEIDES +PROTEIDS +PROTEIN +PROTEINACEOUS +PROTEINASE +PROTEINASES +PROTEINIC +PROTEINS +PROTEINURIA +PROTEINURIAS +PROTEND +PROTENDED +PROTENDING +PROTENDS +PROTENSIVE +PROTENSIVELY +PROTEOGLYCAN +PROTEOGLYCANS +PROTEOLYSES +PROTEOLYSIS +PROTEOLYTIC +PROTEOLYTICALLY +PROTEOME +PROTEOMES +PROTEOMIC +PROTEOSE +PROTEOSES +PROTEST +PROTESTANT +PROTESTANTS +PROTESTATION +PROTESTATIONS +PROTESTED +PROTESTER +PROTESTERS +PROTESTING +PROTESTOR +PROTESTORS +PROTESTS +PROTEUS +PROTEUSES +PROTHALAMIA +PROTHALAMION +PROTHALAMIUM +PROTHALLI +PROTHALLIA +PROTHALLIUM +PROTHALLUS +PROTHALLUSES +PROTHESES +PROTHESIS +PROTHETIC +PROTHONOTARIAL +PROTHONOTARIES +PROTHONOTARY +PROTHORACES +PROTHORACIC +PROTHORAX +PROTHORAXES +PROTHROMBIN +PROTHROMBINS +PROTIST +PROTISTAN +PROTISTANS +PROTISTIC +PROTISTS +PROTIUM +PROTIUMS +PROTOCOL +PROTOCOLED +PROTOCOLING +PROTOCOLLED +PROTOCOLLING +PROTOCOLS +PROTODERM +PROTODERMS +PROTOGALAXIES +PROTOGALAXY +PROTOHISTORIAN +PROTOHISTORIANS +PROTOHISTORIC +PROTOHISTORIES +PROTOHISTORY +PROTOHUMAN +PROTOHUMANS +PROTOLANGUAGE +PROTOLANGUAGES +PROTOMARTYR +PROTOMARTYRS +PROTON +PROTONATE +PROTONATED +PROTONATES +PROTONATING +PROTONATION +PROTONATIONS +PROTONEMA +PROTONEMAL +PROTONEMATA +PROTONEMATAL +PROTONIC +PROTONOTARIES +PROTONOTARY +PROTONS +PROTOPATHIC +PROTOPHLOEM +PROTOPHLOEMS +PROTOPLANET +PROTOPLANETARY +PROTOPLANETS +PROTOPLASM +PROTOPLASMIC +PROTOPLASMS +PROTOPLAST +PROTOPLASTS +PROTOPOD +PROTOPODS +PROTOPORPHYRIN +PROTOPORPHYRINS +PROTOSTAR +PROTOSTARS +PROTOSTELE +PROTOSTELES +PROTOSTELIC +PROTOSTOME +PROTOSTOMES +PROTOTROPH +PROTOTROPHIC +PROTOTROPHIES +PROTOTROPHS +PROTOTROPHY +PROTOTYPAL +PROTOTYPE +PROTOTYPED +PROTOTYPES +PROTOTYPIC +PROTOTYPICAL +PROTOTYPICALLY +PROTOTYPING +PROTOXID +PROTOXIDE +PROTOXIDES +PROTOXIDS +PROTOXYLEM +PROTOXYLEMS +PROTOZOA +PROTOZOAL +PROTOZOAN +PROTOZOANS +PROTOZOIC +PROTOZOOLOGIES +PROTOZOOLOGIST +PROTOZOOLOGISTS +PROTOZOOLOGY +PROTOZOON +PROTOZOONS +PROTRACT +PROTRACTED +PROTRACTILE +PROTRACTING +PROTRACTION +PROTRACTIONS +PROTRACTIVE +PROTRACTOR +PROTRACTORS +PROTRACTS +PROTRADE +PROTREPTIC +PROTREPTICS +PROTRUDE +PROTRUDED +PROTRUDES +PROTRUDING +PROTRUSIBLE +PROTRUSION +PROTRUSIONS +PROTRUSIVE +PROTRUSIVELY +PROTRUSIVENESS +PROTUBERANCE +PROTUBERANCES +PROTUBERANT +PROTUBERANTLY +PROTYL +PROTYLE +PROTYLES +PROTYLS +PROUD +PROUDER +PROUDEST +PROUDFUL +PROUDHEARTED +PROUDLY +PROUDNESS +PROUDNESSES +PROUNION +PROUSTITE +PROUSTITES +PROVABLE +PROVABLENESS +PROVABLENESSES +PROVABLY +PROVASCULAR +PROVE +PROVED +PROVEN +PROVENANCE +PROVENANCES +PROVENDER +PROVENDERS +PROVENIENCE +PROVENIENCES +PROVENLY +PROVENTRICULI +PROVENTRICULUS +PROVER +PROVERB +PROVERBED +PROVERBIAL +PROVERBIALLY +PROVERBING +PROVERBS +PROVERS +PROVES +PROVIDE +PROVIDED +PROVIDENCE +PROVIDENCES +PROVIDENT +PROVIDENTIAL +PROVIDENTIALLY +PROVIDENTLY +PROVIDER +PROVIDERS +PROVIDES +PROVIDING +PROVINCE +PROVINCES +PROVINCIAL +PROVINCIALISM +PROVINCIALISMS +PROVINCIALIST +PROVINCIALISTS +PROVINCIALITIES +PROVINCIALITY +PROVINCIALIZE +PROVINCIALIZED +PROVINCIALIZES +PROVINCIALIZING +PROVINCIALLY +PROVINCIALS +PROVING +PROVIRAL +PROVIRUS +PROVIRUSES +PROVISION +PROVISIONAL +PROVISIONALLY +PROVISIONALS +PROVISIONARY +PROVISIONED +PROVISIONER +PROVISIONERS +PROVISIONING +PROVISIONS +PROVISO +PROVISOES +PROVISORY +PROVISOS +PROVITAMIN +PROVITAMINS +PROVOCATEUR +PROVOCATEURS +PROVOCATION +PROVOCATIONS +PROVOCATIVE +PROVOCATIVELY +PROVOCATIVENESS +PROVOCATIVES +PROVOKE +PROVOKED +PROVOKER +PROVOKERS +PROVOKES +PROVOKING +PROVOKINGLY +PROVOLONE +PROVOLONES +PROVOST +PROVOSTS +PROW +PROWAR +PROWER +PROWESS +PROWESSES +PROWEST +PROWL +PROWLED +PROWLER +PROWLERS +PROWLING +PROWLS +PROWS +PROXEMIC +PROXEMICS +PROXIES +PROXIMAL +PROXIMALLY +PROXIMATE +PROXIMATELY +PROXIMATENESS +PROXIMATENESSES +PROXIMITIES +PROXIMITY +PROXIMO +PROXY +PRUDE +PRUDENCE +PRUDENCES +PRUDENT +PRUDENTIAL +PRUDENTIALLY +PRUDENTLY +PRUDERIES +PRUDERY +PRUDES +PRUDISH +PRUDISHLY +PRUDISHNESS +PRUDISHNESSES +PRUINOSE +PRUNABLE +PRUNE +PRUNED +PRUNELLA +PRUNELLAS +PRUNELLE +PRUNELLES +PRUNELLO +PRUNELLOS +PRUNER +PRUNERS +PRUNES +PRUNING +PRUNUS +PRUNUSES +PRURIENCE +PRURIENCES +PRURIENCIES +PRURIENCY +PRURIENT +PRURIENTLY +PRURIGO +PRURIGOS +PRURITIC +PRURITUS +PRURITUSES +PRUSSIANISE +PRUSSIANISED +PRUSSIANISES +PRUSSIANISING +PRUSSIANIZATION +PRUSSIANIZE +PRUSSIANIZED +PRUSSIANIZES +PRUSSIANIZING +PRUSSIATE +PRUSSIATES +PRUSSIC +PRUTA +PRUTAH +PRUTOT +PRUTOTH +PRY +PRYER +PRYERS +PRYING +PRYINGLY +PRYTHEE +PSALM +PSALMBOOK +PSALMBOOKS +PSALMED +PSALMIC +PSALMING +PSALMIST +PSALMISTS +PSALMODIC +PSALMODIES +PSALMODY +PSALMS +PSALTER +PSALTERIA +PSALTERIES +PSALTERIUM +PSALTERS +PSALTERY +PSALTRIES +PSALTRY +PSAMMITE +PSAMMITES +PSAMMITIC +PSAMMON +PSAMMONS +PSCHENT +PSCHENTS +PSEPHITE +PSEPHITES +PSEPHITIC +PSEPHOLOGICAL +PSEPHOLOGIES +PSEPHOLOGIST +PSEPHOLOGISTS +PSEPHOLOGY +PSEUD +PSEUDEPIGRAPH +PSEUDEPIGRAPHA +PSEUDEPIGRAPHON +PSEUDEPIGRAPHS +PSEUDEPIGRAPHY +PSEUDO +PSEUDOALLELE +PSEUDOALLELES +PSEUDOCLASSIC +PSEUDOCLASSICS +PSEUDOCOEL +PSEUDOCOELOMATE +PSEUDOCOELS +PSEUDOCYESES +PSEUDOCYESIS +PSEUDOMONAD +PSEUDOMONADES +PSEUDOMONADS +PSEUDOMONAS +PSEUDOMORPH +PSEUDOMORPHIC +PSEUDOMORPHISM +PSEUDOMORPHISMS +PSEUDOMORPHOUS +PSEUDOMORPHS +PSEUDONYM +PSEUDONYMITIES +PSEUDONYMITY +PSEUDONYMOUS +PSEUDONYMOUSLY +PSEUDONYMS +PSEUDOPOD +PSEUDOPODAL +PSEUDOPODIA +PSEUDOPODIAL +PSEUDOPODIUM +PSEUDOPODS +PSEUDOPREGNANCY +PSEUDOPREGNANT +PSEUDORANDOM +PSEUDOS +PSEUDOSCIENCE +PSEUDOSCIENCES +PSEUDOSCIENTIST +PSEUDOSCORPION +PSEUDOSCORPIONS +PSEUDS +PSHAW +PSHAWED +PSHAWING +PSHAWS +PSI +PSILOCIN +PSILOCINS +PSILOCYBIN +PSILOCYBINS +PSILOPHYTE +PSILOPHYTES +PSILOPHYTIC +PSILOSES +PSILOSIS +PSILOTIC +PSIS +PSITTACINE +PSITTACINES +PSITTACOSES +PSITTACOSIS +PSITTACOTIC +PSOAE +PSOAI +PSOAS +PSOATIC +PSOCID +PSOCIDS +PSORALEA +PSORALEAS +PSORALEN +PSORALENS +PSORIASES +PSORIASIS +PSORIATIC +PSORIATICS +PSST +PST +PSYCH +PSYCHASTHENIA +PSYCHASTHENIAS +PSYCHASTHENIC +PSYCHASTHENICS +PSYCHE +PSYCHED +PSYCHEDELIA +PSYCHEDELIAS +PSYCHEDELIC +PSYCHEDELICALLY +PSYCHEDELICS +PSYCHES +PSYCHIATRIC +PSYCHIATRICALLY +PSYCHIATRIES +PSYCHIATRIST +PSYCHIATRISTS +PSYCHIATRY +PSYCHIC +PSYCHICAL +PSYCHICALLY +PSYCHICS +PSYCHING +PSYCHO +PSYCHOACOUSTIC +PSYCHOACOUSTICS +PSYCHOACTIVE +PSYCHOANALYSES +PSYCHOANALYSIS +PSYCHOANALYST +PSYCHOANALYSTS +PSYCHOANALYTIC +PSYCHOANALYZE +PSYCHOANALYZED +PSYCHOANALYZES +PSYCHOANALYZING +PSYCHOBABBLE +PSYCHOBABBLER +PSYCHOBABBLERS +PSYCHOBABBLES +PSYCHOBIOGRAPHY +PSYCHOBIOLOGIC +PSYCHOBIOLOGIES +PSYCHOBIOLOGIST +PSYCHOBIOLOGY +PSYCHOCHEMICAL +PSYCHOCHEMICALS +PSYCHODRAMA +PSYCHODRAMAS +PSYCHODRAMATIC +PSYCHODYNAMIC +PSYCHODYNAMICS +PSYCHOGENESES +PSYCHOGENESIS +PSYCHOGENETIC +PSYCHOGENIC +PSYCHOGENICALLY +PSYCHOGRAPH +PSYCHOGRAPHS +PSYCHOHISTORIAN +PSYCHOHISTORIES +PSYCHOHISTORY +PSYCHOKINESES +PSYCHOKINESIS +PSYCHOKINETIC +PSYCHOLINGUIST +PSYCHOLINGUISTS +PSYCHOLOGIC +PSYCHOLOGICAL +PSYCHOLOGICALLY +PSYCHOLOGIES +PSYCHOLOGISE +PSYCHOLOGISED +PSYCHOLOGISES +PSYCHOLOGISING +PSYCHOLOGISM +PSYCHOLOGISMS +PSYCHOLOGIST +PSYCHOLOGISTS +PSYCHOLOGIZE +PSYCHOLOGIZED +PSYCHOLOGIZES +PSYCHOLOGIZING +PSYCHOLOGY +PSYCHOMETRIC +PSYCHOMETRICIAN +PSYCHOMETRICS +PSYCHOMETRIES +PSYCHOMETRY +PSYCHOMOTOR +PSYCHONEUROSES +PSYCHONEUROSIS +PSYCHONEUROTIC +PSYCHONEUROTICS +PSYCHOPATH +PSYCHOPATHIC +PSYCHOPATHICS +PSYCHOPATHIES +PSYCHOPATHOLOGY +PSYCHOPATHS +PSYCHOPATHY +PSYCHOPHYSICAL +PSYCHOPHYSICIST +PSYCHOPHYSICS +PSYCHOS +PSYCHOSES +PSYCHOSEXUAL +PSYCHOSEXUALITY +PSYCHOSEXUALLY +PSYCHOSIS +PSYCHOSOCIAL +PSYCHOSOCIALLY +PSYCHOSOMATIC +PSYCHOSOMATICS +PSYCHOSURGEON +PSYCHOSURGEONS +PSYCHOSURGERIES +PSYCHOSURGERY +PSYCHOSURGICAL +PSYCHOSYNTHESES +PSYCHOSYNTHESIS +PSYCHOTHERAPIES +PSYCHOTHERAPIST +PSYCHOTHERAPY +PSYCHOTIC +PSYCHOTICALLY +PSYCHOTICS +PSYCHOTOMIMETIC +PSYCHOTROPIC +PSYCHOTROPICS +PSYCHROMETER +PSYCHROMETERS +PSYCHROMETRIC +PSYCHROMETRIES +PSYCHROMETRY +PSYCHROPHILIC +PSYCHS +PSYLLA +PSYLLAS +PSYLLID +PSYLLIDS +PSYLLIUM +PSYLLIUMS +PSYOPS +PSYWAR +PSYWARS +PTARMIGAN +PTARMIGANS +PTERANODON +PTERANODONS +PTERIDINE +PTERIDINES +PTERIDOLOGICAL +PTERIDOLOGIES +PTERIDOLOGIST +PTERIDOLOGISTS +PTERIDOLOGY +PTERIDOPHYTE +PTERIDOPHYTES +PTERIDOSPERM +PTERIDOSPERMS +PTERIN +PTERINS +PTERODACTYL +PTERODACTYLS +PTEROPOD +PTEROPODS +PTEROSAUR +PTEROSAURS +PTERYGIA +PTERYGIAL +PTERYGIUM +PTERYGIUMS +PTERYGOID +PTERYGOIDS +PTERYLA +PTERYLAE +PTISAN +PTISANS +PTOMAIN +PTOMAINE +PTOMAINES +PTOMAINIC +PTOMAINS +PTOOEY +PTOSES +PTOSIS +PTOTIC +PTUI +PTYALIN +PTYALINS +PTYALISM +PTYALISMS +PUB +PUBERAL +PUBERTAL +PUBERTIES +PUBERTY +PUBERULENT +PUBES +PUBESCENCE +PUBESCENCES +PUBESCENT +PUBIC +PUBIS +PUBLIC +PUBLICALLY +PUBLICAN +PUBLICANS +PUBLICATION +PUBLICATIONS +PUBLICISE +PUBLICISED +PUBLICISES +PUBLICISING +PUBLICIST +PUBLICISTS +PUBLICITIES +PUBLICITY +PUBLICIZE +PUBLICIZED +PUBLICIZES +PUBLICIZING +PUBLICLY +PUBLICNESS +PUBLICNESSES +PUBLICS +PUBLISH +PUBLISHABLE +PUBLISHED +PUBLISHER +PUBLISHERS +PUBLISHES +PUBLISHING +PUBLISHINGS +PUBS +PUCCOON +PUCCOONS +PUCE +PUCES +PUCK +PUCKA +PUCKER +PUCKERED +PUCKERER +PUCKERERS +PUCKERIER +PUCKERIEST +PUCKERING +PUCKERS +PUCKERY +PUCKISH +PUCKISHLY +PUCKISHNESS +PUCKISHNESSES +PUCKS +PUD +PUDDING +PUDDINGS +PUDDLE +PUDDLED +PUDDLER +PUDDLERS +PUDDLES +PUDDLIER +PUDDLIEST +PUDDLING +PUDDLINGS +PUDDLY +PUDENCIES +PUDENCY +PUDENDA +PUDENDAL +PUDENDUM +PUDGIER +PUDGIEST +PUDGILY +PUDGINESS +PUDGINESSES +PUDGY +PUDIBUND +PUDIC +PUDS +PUEBLO +PUEBLOS +PUERILE +PUERILELY +PUERILISM +PUERILISMS +PUERILITIES +PUERILITY +PUERPERA +PUERPERAE +PUERPERAL +PUERPERIA +PUERPERIUM +PUFF +PUFFBALL +PUFFBALLS +PUFFED +PUFFER +PUFFERIES +PUFFERS +PUFFERY +PUFFIER +PUFFIEST +PUFFILY +PUFFIN +PUFFINESS +PUFFINESSES +PUFFING +PUFFINS +PUFFS +PUFFY +PUG +PUGAREE +PUGAREES +PUGGAREE +PUGGAREES +PUGGED +PUGGIER +PUGGIEST +PUGGINESS +PUGGINESSES +PUGGING +PUGGISH +PUGGREE +PUGGREES +PUGGRIES +PUGGRY +PUGGY +PUGH +PUGILISM +PUGILISMS +PUGILIST +PUGILISTIC +PUGILISTS +PUGMARK +PUGMARKS +PUGNACIOUS +PUGNACIOUSLY +PUGNACIOUSNESS +PUGNACITIES +PUGNACITY +PUGREE +PUGREES +PUGS +PUISNE +PUISNES +PUISSANCE +PUISSANCES +PUISSANT +PUJA +PUJAH +PUJAHS +PUJAS +PUKE +PUKED +PUKES +PUKING +PUKKA +PUL +PULA +PULCHRITUDE +PULCHRITUDES +PULCHRITUDINOUS +PULE +PULED +PULER +PULERS +PULES +PULI +PULICENE +PULICIDE +PULICIDES +PULIK +PULING +PULINGLY +PULINGS +PULIS +PULL +PULLBACK +PULLBACKS +PULLED +PULLER +PULLERS +PULLET +PULLETS +PULLEY +PULLEYS +PULLING +PULLMAN +PULLMANS +PULLOUT +PULLOUTS +PULLOVER +PULLOVERS +PULLS +PULLULATE +PULLULATED +PULLULATES +PULLULATING +PULLULATION +PULLULATIONS +PULLUP +PULLUPS +PULMONARY +PULMONATE +PULMONATES +PULMONIC +PULMOTOR +PULMOTORS +PULP +PULPAL +PULPALLY +PULPED +PULPER +PULPERS +PULPIER +PULPIEST +PULPILY +PULPINESS +PULPINESSES +PULPING +PULPIT +PULPITAL +PULPITS +PULPLESS +PULPOUS +PULPS +PULPWOOD +PULPWOODS +PULPY +PULQUE +PULQUES +PULS +PULSANT +PULSAR +PULSARS +PULSATE +PULSATED +PULSATES +PULSATILE +PULSATING +PULSATION +PULSATIONS +PULSATIVE +PULSATOR +PULSATORS +PULSATORY +PULSE +PULSED +PULSEJET +PULSEJETS +PULSER +PULSERS +PULSES +PULSING +PULSION +PULSIONS +PULSOJET +PULSOJETS +PULVERABLE +PULVERISE +PULVERISED +PULVERISES +PULVERISING +PULVERIZABLE +PULVERIZATION +PULVERIZATIONS +PULVERIZE +PULVERIZED +PULVERIZER +PULVERIZERS +PULVERIZES +PULVERIZING +PULVERULENT +PULVILLAR +PULVILLI +PULVILLUS +PULVINAR +PULVINATE +PULVINI +PULVINUS +PUMA +PUMAS +PUMELO +PUMELOS +PUMICE +PUMICED +PUMICEOUS +PUMICER +PUMICERS +PUMICES +PUMICING +PUMICITE +PUMICITES +PUMMEL +PUMMELED +PUMMELING +PUMMELLED +PUMMELLING +PUMMELO +PUMMELOS +PUMMELS +PUMP +PUMPED +PUMPER +PUMPERNICKEL +PUMPERNICKELS +PUMPERS +PUMPING +PUMPKIN +PUMPKINS +PUMPKINSEED +PUMPKINSEEDS +PUMPLESS +PUMPLIKE +PUMPS +PUN +PUNA +PUNAS +PUNCH +PUNCHBALL +PUNCHBALLS +PUNCHBOARD +PUNCHBOARDS +PUNCHED +PUNCHEON +PUNCHEONS +PUNCHER +PUNCHERS +PUNCHES +PUNCHIER +PUNCHIEST +PUNCHILY +PUNCHINELLO +PUNCHINELLOS +PUNCHING +PUNCHLESS +PUNCHY +PUNCTATE +PUNCTATED +PUNCTATION +PUNCTATIONS +PUNCTILIO +PUNCTILIOS +PUNCTILIOUS +PUNCTILIOUSLY +PUNCTILIOUSNESS +PUNCTUAL +PUNCTUALITIES +PUNCTUALITY +PUNCTUALLY +PUNCTUATE +PUNCTUATED +PUNCTUATES +PUNCTUATING +PUNCTUATION +PUNCTUATIONS +PUNCTUATOR +PUNCTUATORS +PUNCTURE +PUNCTURED +PUNCTURES +PUNCTURING +PUNDIT +PUNDITIC +PUNDITRIES +PUNDITRY +PUNDITS +PUNG +PUNGENCIES +PUNGENCY +PUNGENT +PUNGENTLY +PUNGLE +PUNGLED +PUNGLES +PUNGLING +PUNGS +PUNIER +PUNIEST +PUNILY +PUNINESS +PUNINESSES +PUNISH +PUNISHABILITIES +PUNISHABILITY +PUNISHABLE +PUNISHED +PUNISHER +PUNISHERS +PUNISHES +PUNISHING +PUNISHMENT +PUNISHMENTS +PUNITION +PUNITIONS +PUNITIVE +PUNITIVELY +PUNITIVENESS +PUNITIVENESSES +PUNITORY +PUNJI +PUNJIS +PUNK +PUNKA +PUNKAH +PUNKAHS +PUNKAS +PUNKER +PUNKERS +PUNKEST +PUNKEY +PUNKEYS +PUNKIE +PUNKIER +PUNKIES +PUNKIEST +PUNKIN +PUNKINESS +PUNKINESSES +PUNKINS +PUNKISH +PUNKS +PUNKY +PUNNED +PUNNER +PUNNERS +PUNNET +PUNNETS +PUNNIER +PUNNIEST +PUNNING +PUNNINGLY +PUNNY +PUNS +PUNSTER +PUNSTERS +PUNT +PUNTED +PUNTER +PUNTERS +PUNTIES +PUNTING +PUNTO +PUNTOS +PUNTS +PUNTY +PUNY +PUP +PUPA +PUPAE +PUPAL +PUPARIA +PUPARIAL +PUPARIUM +PUPAS +PUPATE +PUPATED +PUPATES +PUPATING +PUPATION +PUPATIONS +PUPFISH +PUPFISHES +PUPIL +PUPILAGE +PUPILAGES +PUPILAR +PUPILARY +PUPILLAGE +PUPILLAGES +PUPILLARY +PUPILS +PUPPED +PUPPET +PUPPETEER +PUPPETEERED +PUPPETEERING +PUPPETEERS +PUPPETLIKE +PUPPETRIES +PUPPETRY +PUPPETS +PUPPIES +PUPPING +PUPPY +PUPPYDOM +PUPPYDOMS +PUPPYHOOD +PUPPYHOODS +PUPPYISH +PUPPYLIKE +PUPS +PUPU +PUPUS +PUR +PURANA +PURANAS +PURANIC +PURBLIND +PURBLINDLY +PURBLINDNESS +PURBLINDNESSES +PURCHASABLE +PURCHASE +PURCHASED +PURCHASER +PURCHASERS +PURCHASES +PURCHASING +PURDA +PURDAH +PURDAHS +PURDAS +PURE +PUREBLOOD +PUREBLOODS +PUREBRED +PUREBREDS +PUREE +PUREED +PUREEING +PUREES +PURELY +PURENESS +PURENESSES +PURER +PUREST +PURFLE +PURFLED +PURFLER +PURFLERS +PURFLES +PURFLING +PURFLINGS +PURGATION +PURGATIONS +PURGATIVE +PURGATIVES +PURGATORIAL +PURGATORIES +PURGATORY +PURGE +PURGEABLE +PURGED +PURGER +PURGERS +PURGES +PURGING +PURGINGS +PURI +PURIFICATION +PURIFICATIONS +PURIFICATOR +PURIFICATORS +PURIFICATORY +PURIFIED +PURIFIER +PURIFIERS +PURIFIES +PURIFY +PURIFYING +PURIN +PURINE +PURINES +PURINS +PURIS +PURISM +PURISMS +PURIST +PURISTIC +PURISTICALLY +PURISTS +PURITAN +PURITANIC +PURITANICAL +PURITANICALLY +PURITANISM +PURITANISMS +PURITANS +PURITIES +PURITY +PURL +PURLED +PURLIEU +PURLIEUS +PURLIN +PURLINE +PURLINES +PURLING +PURLINGS +PURLINS +PURLOIN +PURLOINED +PURLOINER +PURLOINERS +PURLOINING +PURLOINS +PURLS +PUROMYCIN +PUROMYCINS +PURPLE +PURPLED +PURPLEHEART +PURPLEHEARTS +PURPLER +PURPLES +PURPLEST +PURPLING +PURPLISH +PURPLY +PURPORT +PURPORTED +PURPORTEDLY +PURPORTING +PURPORTS +PURPOSE +PURPOSED +PURPOSEFUL +PURPOSEFULLY +PURPOSEFULNESS +PURPOSELESS +PURPOSELESSLY +PURPOSELESSNESS +PURPOSELY +PURPOSES +PURPOSING +PURPOSIVE +PURPOSIVELY +PURPOSIVENESS +PURPOSIVENESSES +PURPURA +PURPURAS +PURPURE +PURPURES +PURPURIC +PURPURIN +PURPURINS +PURR +PURRED +PURRING +PURRINGLY +PURRS +PURS +PURSE +PURSED +PURSELIKE +PURSER +PURSERS +PURSES +PURSIER +PURSIEST +PURSILY +PURSINESS +PURSINESSES +PURSING +PURSLANE +PURSLANES +PURSUABLE +PURSUANCE +PURSUANCES +PURSUANT +PURSUE +PURSUED +PURSUER +PURSUERS +PURSUES +PURSUING +PURSUIT +PURSUITS +PURSUIVANT +PURSUIVANTS +PURSY +PURTENANCE +PURTENANCES +PURTIER +PURTIEST +PURTY +PURULENCE +PURULENCES +PURULENCIES +PURULENCY +PURULENT +PURVEY +PURVEYANCE +PURVEYANCES +PURVEYED +PURVEYING +PURVEYOR +PURVEYORS +PURVEYS +PURVIEW +PURVIEWS +PUS +PUSES +PUSH +PUSHBALL +PUSHBALLS +PUSHCART +PUSHCARTS +PUSHCHAIR +PUSHCHAIRS +PUSHDOWN +PUSHDOWNS +PUSHED +PUSHER +PUSHERS +PUSHES +PUSHFUL +PUSHFULNESS +PUSHFULNESSES +PUSHIER +PUSHIEST +PUSHILY +PUSHINESS +PUSHINESSES +PUSHING +PUSHINGLY +PUSHOVER +PUSHOVERS +PUSHPIN +PUSHPINS +PUSHROD +PUSHRODS +PUSHUP +PUSHUPS +PUSHY +PUSILLANIMITIES +PUSILLANIMITY +PUSILLANIMOUS +PUSILLANIMOUSLY +PUSLEY +PUSLEYS +PUSLIKE +PUSS +PUSSES +PUSSIER +PUSSIES +PUSSIEST +PUSSLEY +PUSSLEYS +PUSSLIES +PUSSLIKE +PUSSLY +PUSSY +PUSSYCAT +PUSSYCATS +PUSSYFOOT +PUSSYFOOTED +PUSSYFOOTER +PUSSYFOOTERS +PUSSYFOOTING +PUSSYFOOTS +PUSSYTOES +PUSTULANT +PUSTULANTS +PUSTULAR +PUSTULATE +PUSTULATED +PUSTULATES +PUSTULATING +PUSTULATION +PUSTULATIONS +PUSTULE +PUSTULED +PUSTULES +PUSTULOUS +PUT +PUTAMEN +PUTAMINA +PUTATIVE +PUTATIVELY +PUTDOWN +PUTDOWNS +PUTLOG +PUTLOGS +PUTOFF +PUTOFFS +PUTON +PUTONGHUA +PUTONGHUAS +PUTONS +PUTOUT +PUTOUTS +PUTREFACTION +PUTREFACTIONS +PUTREFACTIVE +PUTREFIED +PUTREFIER +PUTREFIERS +PUTREFIES +PUTREFY +PUTREFYING +PUTRESCENCE +PUTRESCENCES +PUTRESCENT +PUTRESCIBLE +PUTRESCINE +PUTRESCINES +PUTRID +PUTRIDITIES +PUTRIDITY +PUTRIDLY +PUTS +PUTSCH +PUTSCHES +PUTSCHIST +PUTSCHISTS +PUTT +PUTTED +PUTTEE +PUTTEES +PUTTER +PUTTERED +PUTTERER +PUTTERERS +PUTTERING +PUTTERS +PUTTI +PUTTIE +PUTTIED +PUTTIER +PUTTIERS +PUTTIES +PUTTING +PUTTO +PUTTS +PUTTY +PUTTYING +PUTTYLESS +PUTTYLIKE +PUTTYROOT +PUTTYROOTS +PUTZ +PUTZED +PUTZES +PUTZING +PUZZLE +PUZZLED +PUZZLEDLY +PUZZLEHEADED +PUZZLEMENT +PUZZLEMENTS +PUZZLER +PUZZLERS +PUZZLES +PUZZLING +PUZZLINGLY +PYA +PYAEMIA +PYAEMIAS +PYAEMIC +PYAS +PYCNIDIA +PYCNIDIAL +PYCNIDIUM +PYCNOGONID +PYCNOGONIDS +PYCNOMETER +PYCNOMETERS +PYCNOSES +PYCNOSIS +PYCNOTIC +PYE +PYELITIC +PYELITIS +PYELITISES +PYELOGRAM +PYELOGRAMS +PYELONEPHRITIC +PYELONEPHRITIS +PYEMIA +PYEMIAS +PYEMIC +PYES +PYGIDIA +PYGIDIAL +PYGIDIUM +PYGMAEAN +PYGMEAN +PYGMIES +PYGMOID +PYGMY +PYGMYISH +PYGMYISM +PYGMYISMS +PYIC +PYIN +PYINS +PYJAMA +PYJAMAS +PYKNIC +PYKNICS +PYKNOSES +PYKNOSIS +PYKNOTIC +PYLON +PYLONS +PYLORI +PYLORIC +PYLORUS +PYLORUSES +PYODERMA +PYODERMAS +PYODERMIC +PYOGENIC +PYOID +PYORRHEA +PYORRHEAL +PYORRHEAS +PYORRHOEA +PYORRHOEAS +PYOSES +PYOSIS +PYRACANTHA +PYRACANTHAS +PYRALID +PYRALIDID +PYRALIDIDS +PYRALIDS +PYRAMID +PYRAMIDAL +PYRAMIDALLY +PYRAMIDED +PYRAMIDIC +PYRAMIDICAL +PYRAMIDING +PYRAMIDS +PYRAN +PYRANOID +PYRANOSE +PYRANOSES +PYRANOSIDE +PYRANOSIDES +PYRANS +PYRARGYRITE +PYRARGYRITES +PYRE +PYRENE +PYRENES +PYRENOID +PYRENOIDS +PYRES +PYRETHRIN +PYRETHRINS +PYRETHROID +PYRETHROIDS +PYRETHRUM +PYRETHRUMS +PYRETIC +PYREX +PYREXES +PYREXIA +PYREXIAL +PYREXIAS +PYREXIC +PYRHELIOMETER +PYRHELIOMETERS +PYRHELIOMETRIC +PYRIC +PYRIDIC +PYRIDINE +PYRIDINES +PYRIDOXAL +PYRIDOXALS +PYRIDOXAMINE +PYRIDOXAMINES +PYRIDOXIN +PYRIDOXINE +PYRIDOXINES +PYRIDOXINS +PYRIFORM +PYRIMETHAMINE +PYRIMETHAMINES +PYRIMIDINE +PYRIMIDINES +PYRITE +PYRITES +PYRITIC +PYRITICAL +PYRITOUS +PYRO +PYROCATECHOL +PYROCATECHOLS +PYROCERAM +PYROCERAMS +PYROCLASTIC +PYROELECTRIC +PYROELECTRICITY +PYROGALLOL +PYROGALLOLS +PYROGEN +PYROGENIC +PYROGENICITIES +PYROGENICITY +PYROGENS +PYROLA +PYROLAS +PYROLIZE +PYROLIZED +PYROLIZES +PYROLIZING +PYROLOGIES +PYROLOGY +PYROLUSITE +PYROLUSITES +PYROLYSATE +PYROLYSATES +PYROLYSES +PYROLYSIS +PYROLYTIC +PYROLYTICALLY +PYROLYZABLE +PYROLYZATE +PYROLYZATES +PYROLYZE +PYROLYZED +PYROLYZER +PYROLYZERS +PYROLYZES +PYROLYZING +PYROMANCIES +PYROMANCY +PYROMANIA +PYROMANIAC +PYROMANIACAL +PYROMANIACS +PYROMANIAS +PYROMETALLURGY +PYROMETER +PYROMETERS +PYROMETRIC +PYROMETRICALLY +PYROMETRIES +PYROMETRY +PYROMORPHITE +PYROMORPHITES +PYRONE +PYRONES +PYRONINE +PYRONINES +PYRONINOPHILIC +PYROPE +PYROPES +PYROPHORIC +PYROPHOSPHATE +PYROPHOSPHATES +PYROPHYLLITE +PYROPHYLLITES +PYROS +PYROSIS +PYROSISES +PYROSTAT +PYROSTATS +PYROTECHNIC +PYROTECHNICAL +PYROTECHNICALLY +PYROTECHNICS +PYROTECHNIST +PYROTECHNISTS +PYROXENE +PYROXENES +PYROXENIC +PYROXENITE +PYROXENITES +PYROXENITIC +PYROXENOID +PYROXENOIDS +PYROXYLIN +PYROXYLINS +PYRRHIC +PYRRHICS +PYRRHOTITE +PYRRHOTITES +PYRROL +PYRROLE +PYRROLES +PYRROLIC +PYRROLS +PYRUVATE +PYRUVATES +PYTHON +PYTHONESS +PYTHONESSES +PYTHONIC +PYTHONS +PYURIA +PYURIAS +PYX +PYXES +PYXIDES +PYXIDIA +PYXIDIUM +PYXIE +PYXIES +PYXIS +QABALA +QABALAH +QABALAHS +QABALAS +QADI +QADIS +QAID +QAIDS +QANAT +QANATS +QAT +QATS +QI +QINDAR +QINDARKA +QINDARS +QINTAR +QINTARS +QIS +QIVIUT +QIVIUTS +QOPH +QOPHS +QUA +QUAALUDE +QUAALUDES +QUACK +QUACKED +QUACKERIES +QUACKERY +QUACKIER +QUACKIEST +QUACKING +QUACKISH +QUACKISM +QUACKISMS +QUACKS +QUACKSALVER +QUACKSALVERS +QUACKY +QUAD +QUADDED +QUADDING +QUADPLEX +QUADPLEXES +QUADRANGLE +QUADRANGLES +QUADRANGULAR +QUADRANS +QUADRANT +QUADRANTAL +QUADRANTES +QUADRANTS +QUADRAPHONIC +QUADRAPHONICS +QUADRAT +QUADRATE +QUADRATED +QUADRATES +QUADRATIC +QUADRATICALLY +QUADRATICS +QUADRATING +QUADRATS +QUADRATURE +QUADRATURES +QUADRENNIA +QUADRENNIAL +QUADRENNIALLY +QUADRENNIALS +QUADRENNIUM +QUADRENNIUMS +QUADRIC +QUADRICEP +QUADRICEPS +QUADRICEPSES +QUADRICS +QUADRIFID +QUADRIGA +QUADRIGAE +QUADRILATERAL +QUADRILATERALS +QUADRILLE +QUADRILLES +QUADRILLION +QUADRILLIONS +QUADRILLIONTH +QUADRILLIONTHS +QUADRIPARTITE +QUADRIPHONIC +QUADRIPHONICS +QUADRIPLEGIA +QUADRIPLEGIAS +QUADRIPLEGIC +QUADRIPLEGICS +QUADRIVALENT +QUADRIVALENTS +QUADRIVIA +QUADRIVIAL +QUADRIVIUM +QUADROON +QUADROONS +QUADRUMANOUS +QUADRUMVIR +QUADRUMVIRATE +QUADRUMVIRATES +QUADRUMVIRS +QUADRUPED +QUADRUPEDAL +QUADRUPEDS +QUADRUPLE +QUADRUPLED +QUADRUPLES +QUADRUPLET +QUADRUPLETS +QUADRUPLICATE +QUADRUPLICATED +QUADRUPLICATES +QUADRUPLICATING +QUADRUPLICATION +QUADRUPLICITIES +QUADRUPLICITY +QUADRUPLING +QUADRUPLY +QUADRUPOLE +QUADRUPOLES +QUADS +QUAERE +QUAERES +QUAESTOR +QUAESTORS +QUAFF +QUAFFED +QUAFFER +QUAFFERS +QUAFFING +QUAFFS +QUAG +QUAGGA +QUAGGAS +QUAGGIER +QUAGGIEST +QUAGGY +QUAGMIRE +QUAGMIRES +QUAGMIRIER +QUAGMIRIEST +QUAGMIRY +QUAGS +QUAHAUG +QUAHAUGS +QUAHOG +QUAHOGS +QUAI +QUAICH +QUAICHES +QUAICHS +QUAIGH +QUAIGHS +QUAIL +QUAILED +QUAILING +QUAILS +QUAINT +QUAINTER +QUAINTEST +QUAINTLY +QUAINTNESS +QUAINTNESSES +QUAIS +QUAKE +QUAKED +QUAKER +QUAKERS +QUAKES +QUAKIER +QUAKIEST +QUAKILY +QUAKINESS +QUAKINESSES +QUAKING +QUAKINGLY +QUAKY +QUALE +QUALIA +QUALIFIABLE +QUALIFICATION +QUALIFICATIONS +QUALIFIED +QUALIFIEDLY +QUALIFIER +QUALIFIERS +QUALIFIES +QUALIFY +QUALIFYING +QUALITATIVE +QUALITATIVELY +QUALITIES +QUALITY +QUALM +QUALMIER +QUALMIEST +QUALMISH +QUALMISHLY +QUALMISHNESS +QUALMISHNESSES +QUALMS +QUALMY +QUAMASH +QUAMASHES +QUANDANG +QUANDANGS +QUANDARIES +QUANDARY +QUANDONG +QUANDONGS +QUANGO +QUANGOS +QUANT +QUANTA +QUANTAL +QUANTALLY +QUANTED +QUANTIC +QUANTICS +QUANTIFIABLE +QUANTIFICATION +QUANTIFICATIONS +QUANTIFIED +QUANTIFIER +QUANTIFIERS +QUANTIFIES +QUANTIFY +QUANTIFYING +QUANTILE +QUANTILES +QUANTING +QUANTITATE +QUANTITATED +QUANTITATES +QUANTITATING +QUANTITATION +QUANTITATIONS +QUANTITATIVE +QUANTITATIVELY +QUANTITIES +QUANTITY +QUANTIZATION +QUANTIZATIONS +QUANTIZE +QUANTIZED +QUANTIZER +QUANTIZERS +QUANTIZES +QUANTIZING +QUANTONG +QUANTONGS +QUANTS +QUANTUM +QUARANTINE +QUARANTINED +QUARANTINES +QUARANTINING +QUARE +QUARK +QUARKS +QUARREL +QUARRELED +QUARRELER +QUARRELERS +QUARRELING +QUARRELLED +QUARRELLER +QUARRELLERS +QUARRELLING +QUARRELS +QUARRELSOME +QUARRELSOMELY +QUARRELSOMENESS +QUARRIED +QUARRIER +QUARRIERS +QUARRIES +QUARRY +QUARRYING +QUARRYINGS +QUARRYMAN +QUARRYMEN +QUART +QUARTAN +QUARTANS +QUARTE +QUARTER +QUARTERAGE +QUARTERAGES +QUARTERBACK +QUARTERBACKED +QUARTERBACKING +QUARTERBACKS +QUARTERDECK +QUARTERDECKS +QUARTERED +QUARTERER +QUARTERERS +QUARTERFINAL +QUARTERFINALIST +QUARTERFINALS +QUARTERING +QUARTERINGS +QUARTERLIES +QUARTERLY +QUARTERMASTER +QUARTERMASTERS +QUARTERN +QUARTERNS +QUARTERS +QUARTERSAWED +QUARTERSAWN +QUARTERSTAFF +QUARTERSTAVES +QUARTES +QUARTET +QUARTETS +QUARTETTE +QUARTETTES +QUARTIC +QUARTICS +QUARTIER +QUARTIERS +QUARTILE +QUARTILES +QUARTO +QUARTOS +QUARTS +QUARTZ +QUARTZES +QUARTZITE +QUARTZITES +QUARTZITIC +QUARTZOSE +QUARTZOUS +QUASAR +QUASARS +QUASH +QUASHED +QUASHER +QUASHERS +QUASHES +QUASHING +QUASI +QUASICRYSTAL +QUASICRYSTALS +QUASIPARTICLE +QUASIPARTICLES +QUASIPERIODIC +QUASS +QUASSES +QUASSIA +QUASSIAS +QUASSIN +QUASSINS +QUATE +QUATERCENTENARY +QUATERNARIES +QUATERNARY +QUATERNION +QUATERNIONS +QUATERNITIES +QUATERNITY +QUATORZE +QUATORZES +QUATRAIN +QUATRAINS +QUATRE +QUATREFOIL +QUATREFOILS +QUATRES +QUATTROCENTO +QUATTROCENTOS +QUAVER +QUAVERED +QUAVERER +QUAVERERS +QUAVERING +QUAVERINGLY +QUAVERS +QUAVERY +QUAY +QUAYAGE +QUAYAGES +QUAYLIKE +QUAYS +QUAYSIDE +QUAYSIDES +QUBIT +QUBITS +QUBYTE +QUBYTES +QUEAN +QUEANS +QUEASIER +QUEASIEST +QUEASILY +QUEASINESS +QUEASINESSES +QUEASY +QUEAZIER +QUEAZIEST +QUEAZY +QUEBRACHO +QUEBRACHOS +QUEEN +QUEENDOM +QUEENDOMS +QUEENED +QUEENING +QUEENLIER +QUEENLIEST +QUEENLINESS +QUEENLINESSES +QUEENLY +QUEENS +QUEENSHIP +QUEENSHIPS +QUEENSIDE +QUEENSIDES +QUEER +QUEERED +QUEERER +QUEEREST +QUEERING +QUEERISH +QUEERLY +QUEERNESS +QUEERNESSES +QUEERS +QUELEA +QUELEAS +QUELL +QUELLABLE +QUELLED +QUELLER +QUELLERS +QUELLING +QUELLS +QUENCH +QUENCHABLE +QUENCHED +QUENCHER +QUENCHERS +QUENCHES +QUENCHING +QUENCHLESS +QUENELLE +QUENELLES +QUERCETIC +QUERCETIN +QUERCETINS +QUERCINE +QUERCITRON +QUERCITRONS +QUERIDA +QUERIDAS +QUERIED +QUERIER +QUERIERS +QUERIES +QUERIST +QUERISTS +QUERN +QUERNS +QUERULOUS +QUERULOUSLY +QUERULOUSNESS +QUERULOUSNESSES +QUERY +QUERYING +QUESADILLA +QUESADILLAS +QUEST +QUESTED +QUESTER +QUESTERS +QUESTING +QUESTION +QUESTIONABLE +QUESTIONABLY +QUESTIONARIES +QUESTIONARY +QUESTIONED +QUESTIONER +QUESTIONERS +QUESTIONING +QUESTIONLESS +QUESTIONNAIRE +QUESTIONNAIRES +QUESTIONS +QUESTOR +QUESTORS +QUESTS +QUETZAL +QUETZALES +QUETZALS +QUEUE +QUEUED +QUEUEING +QUEUER +QUEUERS +QUEUES +QUEUING +QUEY +QUEYS +QUEZAL +QUEZALES +QUEZALS +QUIBBLE +QUIBBLED +QUIBBLER +QUIBBLERS +QUIBBLES +QUIBBLING +QUICHE +QUICHES +QUICK +QUICKEN +QUICKENED +QUICKENER +QUICKENERS +QUICKENING +QUICKENS +QUICKER +QUICKEST +QUICKIE +QUICKIES +QUICKLIME +QUICKLIMES +QUICKLY +QUICKNESS +QUICKNESSES +QUICKS +QUICKSAND +QUICKSANDS +QUICKSET +QUICKSETS +QUICKSILVER +QUICKSILVERS +QUICKSTEP +QUICKSTEPS +QUID +QUIDDITIES +QUIDDITY +QUIDNUNC +QUIDNUNCS +QUIDS +QUIESCENCE +QUIESCENCES +QUIESCENT +QUIESCENTLY +QUIET +QUIETED +QUIETEN +QUIETENED +QUIETENER +QUIETENERS +QUIETENING +QUIETENS +QUIETER +QUIETERS +QUIETEST +QUIETING +QUIETISM +QUIETISMS +QUIETIST +QUIETISTIC +QUIETISTS +QUIETLY +QUIETNESS +QUIETNESSES +QUIETS +QUIETUDE +QUIETUDES +QUIETUS +QUIETUSES +QUIFF +QUIFFS +QUILL +QUILLAI +QUILLAIA +QUILLAIAS +QUILLAIS +QUILLAJA +QUILLAJAS +QUILLBACK +QUILLBACKS +QUILLED +QUILLET +QUILLETS +QUILLING +QUILLINGS +QUILLS +QUILLWORK +QUILLWORKS +QUILLWORT +QUILLWORTS +QUILT +QUILTED +QUILTER +QUILTERS +QUILTING +QUILTINGS +QUILTS +QUIN +QUINACRINE +QUINACRINES +QUINARIES +QUINARY +QUINATE +QUINCE +QUINCENTENARIES +QUINCENTENARY +QUINCENTENNIAL +QUINCENTENNIALS +QUINCES +QUINCUNCIAL +QUINCUNX +QUINCUNXES +QUINCUNXIAL +QUINDECILLION +QUINDECILLIONS +QUINELA +QUINELAS +QUINELLA +QUINELLAS +QUINIC +QUINIDINE +QUINIDINES +QUINIELA +QUINIELAS +QUININ +QUININA +QUININAS +QUININE +QUININES +QUININS +QUINNAT +QUINNATS +QUINOA +QUINOAS +QUINOID +QUINOIDAL +QUINOIDS +QUINOL +QUINOLIN +QUINOLINE +QUINOLINES +QUINOLINS +QUINOLONE +QUINOLONES +QUINOLS +QUINONE +QUINONES +QUINONOID +QUINQUENNIA +QUINQUENNIAL +QUINQUENNIALLY +QUINQUENNIALS +QUINQUENNIUM +QUINQUENNIUMS +QUINS +QUINSIED +QUINSIES +QUINSY +QUINT +QUINTA +QUINTAIN +QUINTAINS +QUINTAL +QUINTALS +QUINTAN +QUINTANS +QUINTAR +QUINTARS +QUINTAS +QUINTE +QUINTES +QUINTESSENCE +QUINTESSENCES +QUINTESSENTIAL +QUINTET +QUINTETS +QUINTETTE +QUINTETTES +QUINTIC +QUINTICS +QUINTILE +QUINTILES +QUINTILLION +QUINTILLIONS +QUINTILLIONTH +QUINTILLIONTHS +QUINTIN +QUINTINS +QUINTS +QUINTUPLE +QUINTUPLED +QUINTUPLES +QUINTUPLET +QUINTUPLETS +QUINTUPLICATE +QUINTUPLICATED +QUINTUPLICATES +QUINTUPLICATING +QUINTUPLING +QUINTUPLY +QUIP +QUIPPED +QUIPPER +QUIPPERS +QUIPPIER +QUIPPIEST +QUIPPING +QUIPPISH +QUIPPU +QUIPPUS +QUIPPY +QUIPS +QUIPSTER +QUIPSTERS +QUIPU +QUIPUS +QUIRE +QUIRED +QUIRES +QUIRING +QUIRK +QUIRKED +QUIRKIER +QUIRKIEST +QUIRKILY +QUIRKINESS +QUIRKINESSES +QUIRKING +QUIRKISH +QUIRKS +QUIRKY +QUIRT +QUIRTED +QUIRTING +QUIRTS +QUISLING +QUISLINGISM +QUISLINGISMS +QUISLINGS +QUIT +QUITCH +QUITCHES +QUITCLAIM +QUITCLAIMED +QUITCLAIMING +QUITCLAIMS +QUITE +QUITRENT +QUITRENTS +QUITS +QUITTANCE +QUITTANCES +QUITTED +QUITTER +QUITTERS +QUITTING +QUITTOR +QUITTORS +QUIVER +QUIVERED +QUIVERER +QUIVERERS +QUIVERING +QUIVERINGLY +QUIVERS +QUIVERY +QUIXOTE +QUIXOTES +QUIXOTIC +QUIXOTICAL +QUIXOTICALLY +QUIXOTISM +QUIXOTISMS +QUIXOTRIES +QUIXOTRY +QUIZ +QUIZMASTER +QUIZMASTERS +QUIZZED +QUIZZER +QUIZZERS +QUIZZES +QUIZZICAL +QUIZZICALITIES +QUIZZICALITY +QUIZZICALLY +QUIZZING +QUOD +QUODLIBET +QUODLIBETS +QUODS +QUOHOG +QUOHOGS +QUOIN +QUOINED +QUOINING +QUOINS +QUOIT +QUOITED +QUOITING +QUOITS +QUOKKA +QUOKKAS +QUOLL +QUOLLS +QUOMODO +QUOMODOS +QUONDAM +QUORUM +QUORUMS +QUOTA +QUOTABILITIES +QUOTABILITY +QUOTABLE +QUOTABLY +QUOTAS +QUOTATION +QUOTATIONS +QUOTE +QUOTED +QUOTER +QUOTERS +QUOTES +QUOTH +QUOTHA +QUOTIDIAN +QUOTIDIANS +QUOTIENT +QUOTIENTS +QUOTING +QURSH +QURSHES +QURUSH +QURUSHES +QWERTY +QWERTYS +RABAT +RABATO +RABATOS +RABATS +RABBET +RABBETED +RABBETING +RABBETS +RABBI +RABBIES +RABBIN +RABBINATE +RABBINATES +RABBINIC +RABBINICAL +RABBINICALLY +RABBINISM +RABBINISMS +RABBINS +RABBIS +RABBIT +RABBITBRUSH +RABBITBRUSHES +RABBITED +RABBITER +RABBITERS +RABBITING +RABBITRIES +RABBITRY +RABBITS +RABBITY +RABBLE +RABBLED +RABBLEMENT +RABBLEMENTS +RABBLER +RABBLERS +RABBLES +RABBLING +RABBONI +RABBONIS +RABIC +RABID +RABIDITIES +RABIDITY +RABIDLY +RABIDNESS +RABIDNESSES +RABIES +RABIETIC +RACCOON +RACCOONS +RACE +RACECOURSE +RACECOURSES +RACED +RACEHORSE +RACEHORSES +RACEMATE +RACEMATES +RACEME +RACEMED +RACEMES +RACEMIC +RACEMISM +RACEMISMS +RACEMIZATION +RACEMIZATIONS +RACEMIZE +RACEMIZED +RACEMIZES +RACEMIZING +RACEMOID +RACEMOSE +RACEMOUS +RACER +RACERS +RACES +RACETRACK +RACETRACKER +RACETRACKERS +RACETRACKS +RACEWALK +RACEWALKED +RACEWALKER +RACEWALKERS +RACEWALKING +RACEWALKINGS +RACEWALKS +RACEWAY +RACEWAYS +RACHET +RACHETED +RACHETING +RACHETS +RACHIAL +RACHIDES +RACHILLA +RACHILLAE +RACHIS +RACHISES +RACHITIC +RACHITIDES +RACHITIS +RACIAL +RACIALISM +RACIALISMS +RACIALIST +RACIALISTIC +RACIALISTS +RACIALIZE +RACIALIZED +RACIALIZES +RACIALIZING +RACIALLY +RACIER +RACIEST +RACILY +RACINESS +RACINESSES +RACING +RACINGS +RACISM +RACISMS +RACIST +RACISTS +RACK +RACKED +RACKER +RACKERS +RACKET +RACKETED +RACKETEER +RACKETEERED +RACKETEERING +RACKETEERS +RACKETIER +RACKETIEST +RACKETING +RACKETS +RACKETY +RACKFUL +RACKFULS +RACKING +RACKINGLY +RACKLE +RACKS +RACKWORK +RACKWORKS +RACLETTE +RACLETTES +RACON +RACONS +RACONTEUR +RACONTEURS +RACOON +RACOONS +RACQUET +RACQUETBALL +RACQUETBALLS +RACQUETS +RACY +RAD +RADAR +RADARS +RADARSCOPE +RADARSCOPES +RADDED +RADDING +RADDLE +RADDLED +RADDLES +RADDLING +RADIABLE +RADIAL +RADIALE +RADIALIA +RADIALLY +RADIALS +RADIAN +RADIANCE +RADIANCES +RADIANCIES +RADIANCY +RADIANS +RADIANT +RADIANTLY +RADIANTS +RADIATE +RADIATED +RADIATELY +RADIATES +RADIATING +RADIATION +RADIATIONAL +RADIATIONLESS +RADIATIONS +RADIATIVE +RADIATOR +RADIATORS +RADICAL +RADICALISE +RADICALISED +RADICALISES +RADICALISING +RADICALISM +RADICALISMS +RADICALIZATION +RADICALIZATIONS +RADICALIZE +RADICALIZED +RADICALIZES +RADICALIZING +RADICALLY +RADICALNESS +RADICALNESSES +RADICALS +RADICAND +RADICANDS +RADICATE +RADICATED +RADICATES +RADICATING +RADICCHIO +RADICCHIOS +RADICEL +RADICELS +RADICES +RADICLE +RADICLES +RADICULAR +RADII +RADIO +RADIOACTIVE +RADIOACTIVELY +RADIOACTIVITIES +RADIOACTIVITY +RADIOAUTOGRAPH +RADIOAUTOGRAPHS +RADIOAUTOGRAPHY +RADIOBIOLOGIC +RADIOBIOLOGICAL +RADIOBIOLOGIES +RADIOBIOLOGIST +RADIOBIOLOGISTS +RADIOBIOLOGY +RADIOCARBON +RADIOCARBONS +RADIOCHEMICAL +RADIOCHEMICALLY +RADIOCHEMIST +RADIOCHEMISTRY +RADIOCHEMISTS +RADIOECOLOGIES +RADIOECOLOGY +RADIOED +RADIOELEMENT +RADIOELEMENTS +RADIOGENIC +RADIOGRAM +RADIOGRAMS +RADIOGRAPH +RADIOGRAPHED +RADIOGRAPHIC +RADIOGRAPHIES +RADIOGRAPHING +RADIOGRAPHS +RADIOGRAPHY +RADIOING +RADIOISOTOPE +RADIOISOTOPES +RADIOISOTOPIC +RADIOLABEL +RADIOLABELED +RADIOLABELING +RADIOLABELLED +RADIOLABELLING +RADIOLABELS +RADIOLARIAN +RADIOLARIANS +RADIOLOGIC +RADIOLOGICAL +RADIOLOGICALLY +RADIOLOGIES +RADIOLOGIST +RADIOLOGISTS +RADIOLOGY +RADIOLUCENCIES +RADIOLUCENCY +RADIOLUCENT +RADIOLYSES +RADIOLYSIS +RADIOLYTIC +RADIOMAN +RADIOMEN +RADIOMETER +RADIOMETERS +RADIOMETRIC +RADIOMETRICALLY +RADIOMETRIES +RADIOMETRY +RADIOMIMETIC +RADIONICS +RADIONUCLIDE +RADIONUCLIDES +RADIOPAQUE +RADIOPHONE +RADIOPHONES +RADIOPHOTO +RADIOPHOTOS +RADIOPROTECTION +RADIOPROTECTIVE +RADIOS +RADIOSENSITIVE +RADIOSONDE +RADIOSONDES +RADIOSTRONTIUM +RADIOSTRONTIUMS +RADIOTELEGRAPH +RADIOTELEGRAPHS +RADIOTELEGRAPHY +RADIOTELEMETRIC +RADIOTELEMETRY +RADIOTELEPHONE +RADIOTELEPHONES +RADIOTELEPHONY +RADIOTHERAPIES +RADIOTHERAPIST +RADIOTHERAPISTS +RADIOTHERAPY +RADIOTHORIUM +RADIOTHORIUMS +RADIOTRACER +RADIOTRACERS +RADISH +RADISHES +RADIUM +RADIUMS +RADIUS +RADIUSES +RADIX +RADIXES +RADOME +RADOMES +RADON +RADONS +RADS +RADULA +RADULAE +RADULAR +RADULAS +RADWASTE +RADWASTES +RAFF +RAFFIA +RAFFIAS +RAFFINATE +RAFFINATES +RAFFINOSE +RAFFINOSES +RAFFISH +RAFFISHLY +RAFFISHNESS +RAFFISHNESSES +RAFFLE +RAFFLED +RAFFLER +RAFFLERS +RAFFLES +RAFFLESIA +RAFFLESIAS +RAFFLING +RAFFS +RAFT +RAFTED +RAFTER +RAFTERED +RAFTERS +RAFTING +RAFTS +RAFTSMAN +RAFTSMEN +RAG +RAGA +RAGAMUFFIN +RAGAMUFFINS +RAGAS +RAGBAG +RAGBAGS +RAGE +RAGED +RAGEE +RAGEES +RAGES +RAGG +RAGGED +RAGGEDER +RAGGEDEST +RAGGEDIER +RAGGEDIEST +RAGGEDLY +RAGGEDNESS +RAGGEDNESSES +RAGGEDY +RAGGEE +RAGGEES +RAGGIES +RAGGING +RAGGLE +RAGGLES +RAGGS +RAGGY +RAGI +RAGING +RAGINGLY +RAGIS +RAGLAN +RAGLANS +RAGMAN +RAGMEN +RAGOUT +RAGOUTED +RAGOUTING +RAGOUTS +RAGPICKER +RAGPICKERS +RAGS +RAGTAG +RAGTAGS +RAGTIME +RAGTIMES +RAGTOP +RAGTOPS +RAGWEED +RAGWEEDS +RAGWORT +RAGWORTS +RAH +RAI +RAIA +RAIAS +RAID +RAIDED +RAIDER +RAIDERS +RAIDING +RAIDS +RAIL +RAILBIRD +RAILBIRDS +RAILBUS +RAILBUSES +RAILBUSSES +RAILCAR +RAILCARS +RAILED +RAILER +RAILERS +RAILHEAD +RAILHEADS +RAILING +RAILINGS +RAILLERIES +RAILLERY +RAILROAD +RAILROADED +RAILROADER +RAILROADERS +RAILROADING +RAILROADINGS +RAILROADS +RAILS +RAILWAY +RAILWAYS +RAIMENT +RAIMENTS +RAIN +RAINBAND +RAINBANDS +RAINBIRD +RAINBIRDS +RAINBOW +RAINBOWLIKE +RAINBOWS +RAINCHECK +RAINCHECKS +RAINCOAT +RAINCOATS +RAINDROP +RAINDROPS +RAINED +RAINFALL +RAINFALLS +RAINIER +RAINIEST +RAINILY +RAININESS +RAININESSES +RAINING +RAINLESS +RAINMAKER +RAINMAKERS +RAINMAKING +RAINMAKINGS +RAINOUT +RAINOUTS +RAINPROOF +RAINPROOFED +RAINPROOFING +RAINPROOFS +RAINS +RAINSPOUT +RAINSPOUTS +RAINSQUALL +RAINSQUALLS +RAINSTORM +RAINSTORMS +RAINWASH +RAINWASHED +RAINWASHES +RAINWASHING +RAINWATER +RAINWATERS +RAINWEAR +RAINY +RAIS +RAISABLE +RAISE +RAISEABLE +RAISED +RAISER +RAISERS +RAISES +RAISIN +RAISING +RAISINGS +RAISINS +RAISINY +RAISONNE +RAITA +RAITAS +RAJ +RAJA +RAJAH +RAJAHS +RAJAS +RAJES +RAKE +RAKED +RAKEE +RAKEES +RAKEHELL +RAKEHELLS +RAKEHELLY +RAKEOFF +RAKEOFFS +RAKER +RAKERS +RAKES +RAKI +RAKING +RAKIS +RAKISH +RAKISHLY +RAKISHNESS +RAKISHNESSES +RAKU +RAKUS +RALE +RALES +RALLENTANDO +RALLIED +RALLIER +RALLIERS +RALLIES +RALLIFORM +RALLINE +RALLY +RALLYE +RALLYES +RALLYING +RALLYINGS +RALLYIST +RALLYISTS +RALPH +RALPHED +RALPHING +RALPHS +RAM +RAMADA +RAMADAS +RAMAL +RAMATE +RAMBLA +RAMBLAS +RAMBLE +RAMBLED +RAMBLER +RAMBLERS +RAMBLES +RAMBLING +RAMBLINGLY +RAMBOUILLET +RAMBOUILLETS +RAMBUNCTIOUS +RAMBUNCTIOUSLY +RAMBUTAN +RAMBUTANS +RAMEE +RAMEES +RAMEKIN +RAMEKINS +RAMEN +RAMENTA +RAMENTUM +RAMEQUIN +RAMEQUINS +RAMET +RAMETS +RAMI +RAMIE +RAMIES +RAMIFICATION +RAMIFICATIONS +RAMIFIED +RAMIFIES +RAMIFORM +RAMIFY +RAMIFYING +RAMILIE +RAMILIES +RAMILLIE +RAMILLIES +RAMJET +RAMJETS +RAMMED +RAMMER +RAMMERS +RAMMIER +RAMMIEST +RAMMING +RAMMISH +RAMMY +RAMONA +RAMONAS +RAMOSE +RAMOSELY +RAMOSITIES +RAMOSITY +RAMOUS +RAMP +RAMPAGE +RAMPAGED +RAMPAGEOUS +RAMPAGEOUSLY +RAMPAGEOUSNESS +RAMPAGER +RAMPAGERS +RAMPAGES +RAMPAGING +RAMPANCIES +RAMPANCY +RAMPANT +RAMPANTLY +RAMPART +RAMPARTED +RAMPARTING +RAMPARTS +RAMPED +RAMPIKE +RAMPIKES +RAMPING +RAMPION +RAMPIONS +RAMPOLE +RAMPOLES +RAMPS +RAMROD +RAMRODDED +RAMRODDING +RAMRODS +RAMS +RAMSHACKLE +RAMSHORN +RAMSHORNS +RAMSON +RAMSONS +RAMTIL +RAMTILLA +RAMTILLAS +RAMTILS +RAMULOSE +RAMULOUS +RAMUS +RAN +RANCE +RANCES +RANCH +RANCHED +RANCHER +RANCHERIA +RANCHERIAS +RANCHERO +RANCHEROS +RANCHERS +RANCHES +RANCHING +RANCHLESS +RANCHLIKE +RANCHMAN +RANCHMEN +RANCHO +RANCHOS +RANCID +RANCIDITIES +RANCIDITY +RANCIDLY +RANCIDNESS +RANCIDNESSES +RANCOR +RANCORED +RANCOROUS +RANCOROUSLY +RANCORS +RANCOUR +RANCOURED +RANCOURS +RAND +RANDAN +RANDANS +RANDIER +RANDIES +RANDIEST +RANDINESS +RANDINESSES +RANDOM +RANDOMIZATION +RANDOMIZATIONS +RANDOMIZE +RANDOMIZED +RANDOMIZER +RANDOMIZERS +RANDOMIZES +RANDOMIZING +RANDOMLY +RANDOMNESS +RANDOMNESSES +RANDOMS +RANDS +RANDY +RANEE +RANEES +RANG +RANGE +RANGED +RANGELAND +RANGELANDS +RANGER +RANGERS +RANGES +RANGIER +RANGIEST +RANGINESS +RANGINESSES +RANGING +RANGY +RANI +RANID +RANIDS +RANIS +RANK +RANKED +RANKER +RANKERS +RANKEST +RANKING +RANKINGS +RANKISH +RANKLE +RANKLED +RANKLES +RANKLESS +RANKLING +RANKLY +RANKNESS +RANKNESSES +RANKS +RANPIKE +RANPIKES +RANSACK +RANSACKED +RANSACKER +RANSACKERS +RANSACKING +RANSACKS +RANSOM +RANSOMED +RANSOMER +RANSOMERS +RANSOMING +RANSOMS +RANT +RANTED +RANTER +RANTERS +RANTING +RANTINGLY +RANTS +RANULA +RANULAR +RANULAS +RANUNCULI +RANUNCULUS +RANUNCULUSES +RAP +RAPACIOUS +RAPACIOUSLY +RAPACIOUSNESS +RAPACIOUSNESSES +RAPACITIES +RAPACITY +RAPE +RAPED +RAPER +RAPERS +RAPES +RAPESEED +RAPESEEDS +RAPHAE +RAPHE +RAPHES +RAPHIA +RAPHIAS +RAPHIDE +RAPHIDES +RAPHIS +RAPID +RAPIDER +RAPIDEST +RAPIDITIES +RAPIDITY +RAPIDLY +RAPIDNESS +RAPIDNESSES +RAPIDS +RAPIER +RAPIERED +RAPIERS +RAPINE +RAPINES +RAPING +RAPINI +RAPIST +RAPISTS +RAPPAREE +RAPPAREES +RAPPED +RAPPEE +RAPPEES +RAPPEL +RAPPELED +RAPPELING +RAPPELLED +RAPPELLING +RAPPELS +RAPPEN +RAPPER +RAPPERS +RAPPING +RAPPINI +RAPPORT +RAPPORTEUR +RAPPORTEURS +RAPPORTS +RAPPROCHEMENT +RAPPROCHEMENTS +RAPS +RAPSCALLION +RAPSCALLIONS +RAPT +RAPTLY +RAPTNESS +RAPTNESSES +RAPTOR +RAPTORIAL +RAPTORS +RAPTURE +RAPTURED +RAPTURES +RAPTURING +RAPTUROUS +RAPTUROUSLY +RAPTUROUSNESS +RAPTUROUSNESSES +RARE +RAREBIT +RAREBITS +RARED +RAREFACTION +RAREFACTIONAL +RAREFACTIONS +RAREFIED +RAREFIER +RAREFIERS +RAREFIES +RAREFY +RAREFYING +RARELY +RARENESS +RARENESSES +RARER +RARERIPE +RARERIPES +RARES +RAREST +RARIFIED +RARIFIES +RARIFY +RARIFYING +RARING +RARITIES +RARITY +RAS +RASBORA +RASBORAS +RASCAL +RASCALITIES +RASCALITY +RASCALLY +RASCALS +RASE +RASED +RASER +RASERS +RASES +RASH +RASHER +RASHERS +RASHES +RASHEST +RASHLIKE +RASHLY +RASHNESS +RASHNESSES +RASING +RASORIAL +RASP +RASPBERRIES +RASPBERRY +RASPED +RASPER +RASPERS +RASPIER +RASPIEST +RASPINESS +RASPINESSES +RASPING +RASPINGLY +RASPINGS +RASPISH +RASPS +RASPY +RASSLE +RASSLED +RASSLES +RASSLING +RASTER +RASTERS +RASURE +RASURES +RAT +RATABLE +RATABLES +RATABLY +RATAFEE +RATAFEES +RATAFIA +RATAFIAS +RATAL +RATALS +RATAN +RATANIES +RATANS +RATANY +RATAPLAN +RATAPLANNED +RATAPLANNING +RATAPLANS +RATATAT +RATATATS +RATATOUILLE +RATATOUILLES +RATBAG +RATBAGS +RATCH +RATCHES +RATCHET +RATCHETED +RATCHETING +RATCHETS +RATE +RATEABLE +RATEABLY +RATED +RATEL +RATELS +RATEMETER +RATEMETERS +RATEPAYER +RATEPAYERS +RATER +RATERS +RATES +RATFINK +RATFINKS +RATFISH +RATFISHES +RATH +RATHE +RATHER +RATHOLE +RATHOLES +RATHSKELLER +RATHSKELLERS +RATICIDE +RATICIDES +RATIFICATION +RATIFICATIONS +RATIFIED +RATIFIER +RATIFIERS +RATIFIES +RATIFY +RATIFYING +RATINE +RATINES +RATING +RATINGS +RATIO +RATIOCINATE +RATIOCINATED +RATIOCINATES +RATIOCINATING +RATIOCINATION +RATIOCINATIONS +RATIOCINATIVE +RATIOCINATOR +RATIOCINATORS +RATION +RATIONAL +RATIONALE +RATIONALES +RATIONALISE +RATIONALISED +RATIONALISES +RATIONALISING +RATIONALISM +RATIONALISMS +RATIONALIST +RATIONALISTIC +RATIONALISTS +RATIONALITIES +RATIONALITY +RATIONALIZABLE +RATIONALIZATION +RATIONALIZE +RATIONALIZED +RATIONALIZER +RATIONALIZERS +RATIONALIZES +RATIONALIZING +RATIONALLY +RATIONALNESS +RATIONALNESSES +RATIONALS +RATIONED +RATIONING +RATIONS +RATIOS +RATITE +RATITES +RATLIKE +RATLIN +RATLINE +RATLINES +RATLINS +RATO +RATOON +RATOONED +RATOONER +RATOONERS +RATOONING +RATOONS +RATOS +RATS +RATSBANE +RATSBANES +RATTAIL +RATTAILED +RATTAILS +RATTAN +RATTANS +RATTED +RATTEEN +RATTEENS +RATTEN +RATTENED +RATTENER +RATTENERS +RATTENING +RATTENS +RATTER +RATTERS +RATTIER +RATTIEST +RATTING +RATTISH +RATTLE +RATTLEBOX +RATTLEBOXES +RATTLEBRAIN +RATTLEBRAINED +RATTLEBRAINS +RATTLED +RATTLER +RATTLERS +RATTLES +RATTLESNAKE +RATTLESNAKES +RATTLETRAP +RATTLETRAPS +RATTLING +RATTLINGLY +RATTLINGS +RATTLY +RATTON +RATTONS +RATTOON +RATTOONED +RATTOONING +RATTOONS +RATTRAP +RATTRAPS +RATTY +RAUCITIES +RAUCITY +RAUCOUS +RAUCOUSLY +RAUCOUSNESS +RAUCOUSNESSES +RAUNCH +RAUNCHES +RAUNCHIER +RAUNCHIEST +RAUNCHILY +RAUNCHINESS +RAUNCHINESSES +RAUNCHY +RAUWOLFIA +RAUWOLFIAS +RAVAGE +RAVAGED +RAVAGEMENT +RAVAGEMENTS +RAVAGER +RAVAGERS +RAVAGES +RAVAGING +RAVE +RAVED +RAVEL +RAVELED +RAVELER +RAVELERS +RAVELIN +RAVELING +RAVELINGS +RAVELINS +RAVELLED +RAVELLER +RAVELLERS +RAVELLING +RAVELLINGS +RAVELLY +RAVELMENT +RAVELMENTS +RAVELS +RAVEN +RAVENED +RAVENER +RAVENERS +RAVENING +RAVENINGS +RAVENLIKE +RAVENOUS +RAVENOUSLY +RAVENOUSNESS +RAVENOUSNESSES +RAVENS +RAVER +RAVERS +RAVES +RAVIGOTE +RAVIGOTES +RAVIGOTTE +RAVIGOTTES +RAVIN +RAVINE +RAVINED +RAVINES +RAVING +RAVINGLY +RAVINGS +RAVINING +RAVINS +RAVIOLI +RAVIOLIS +RAVISH +RAVISHED +RAVISHER +RAVISHERS +RAVISHES +RAVISHING +RAVISHINGLY +RAVISHMENT +RAVISHMENTS +RAW +RAWBONED +RAWER +RAWEST +RAWHIDE +RAWHIDED +RAWHIDES +RAWHIDING +RAWIN +RAWINS +RAWINSONDE +RAWINSONDES +RAWISH +RAWLY +RAWNESS +RAWNESSES +RAWS +RAX +RAXED +RAXES +RAXING +RAY +RAYA +RAYAH +RAYAHS +RAYAS +RAYED +RAYGRASS +RAYGRASSES +RAYING +RAYLESS +RAYLESSNESS +RAYLESSNESSES +RAYLIKE +RAYON +RAYONS +RAYS +RAZE +RAZED +RAZEE +RAZEED +RAZEEING +RAZEES +RAZER +RAZERS +RAZES +RAZING +RAZOR +RAZORBACK +RAZORBACKS +RAZORBILL +RAZORBILLS +RAZORED +RAZORING +RAZORS +RAZZ +RAZZAMATAZZ +RAZZAMATAZZES +RAZZBERRIES +RAZZBERRY +RAZZED +RAZZES +RAZZING +RAZZMATAZZ +RAZZMATAZZES +RE +REABSORB +REABSORBED +REABSORBING +REABSORBS +REACCEDE +REACCEDED +REACCEDES +REACCEDING +REACCELERATE +REACCELERATED +REACCELERATES +REACCELERATING +REACCENT +REACCENTED +REACCENTING +REACCENTS +REACCEPT +REACCEPTED +REACCEPTING +REACCEPTS +REACCESSION +REACCESSIONS +REACCLAIM +REACCLAIMED +REACCLAIMING +REACCLAIMS +REACCLIMATIZE +REACCLIMATIZED +REACCLIMATIZES +REACCLIMATIZING +REACCREDIT +REACCREDITATION +REACCREDITED +REACCREDITING +REACCREDITS +REACCUSE +REACCUSED +REACCUSES +REACCUSING +REACH +REACHABLE +REACHED +REACHER +REACHERS +REACHES +REACHING +REACQUAINT +REACQUAINTED +REACQUAINTING +REACQUAINTS +REACQUIRE +REACQUIRED +REACQUIRES +REACQUIRING +REACQUISITION +REACQUISITIONS +REACT +REACTANCE +REACTANCES +REACTANT +REACTANTS +REACTED +REACTING +REACTION +REACTIONARIES +REACTIONARY +REACTIONARYISM +REACTIONARYISMS +REACTIONS +REACTIVATE +REACTIVATED +REACTIVATES +REACTIVATING +REACTIVATION +REACTIVATIONS +REACTIVE +REACTIVELY +REACTIVENESS +REACTIVENESSES +REACTIVITIES +REACTIVITY +REACTOR +REACTORS +REACTS +READ +READABILITIES +READABILITY +READABLE +READABLENESS +READABLENESSES +READABLY +READAPT +READAPTED +READAPTING +READAPTS +READD +READDED +READDICT +READDICTED +READDICTING +READDICTS +READDING +READDRESS +READDRESSED +READDRESSES +READDRESSING +READDS +READER +READERLY +READERS +READERSHIP +READERSHIPS +READIED +READIER +READIES +READIEST +READILY +READINESS +READINESSES +READING +READINGS +READJUST +READJUSTED +READJUSTING +READJUSTMENT +READJUSTMENTS +READJUSTS +READMISSION +READMISSIONS +READMIT +READMITS +READMITTED +READMITTING +READOPT +READOPTED +READOPTING +READOPTS +READORN +READORNED +READORNING +READORNS +READOUT +READOUTS +READS +READY +READYING +READYMADE +READYMADES +REAFFIRM +REAFFIRMATION +REAFFIRMATIONS +REAFFIRMED +REAFFIRMING +REAFFIRMS +REAFFIX +REAFFIXED +REAFFIXES +REAFFIXING +REAFFOREST +REAFFORESTATION +REAFFORESTED +REAFFORESTING +REAFFORESTS +REAGENT +REAGENTS +REAGGREGATE +REAGGREGATED +REAGGREGATES +REAGGREGATING +REAGGREGATION +REAGGREGATIONS +REAGIN +REAGINIC +REAGINS +REAL +REALER +REALES +REALEST +REALGAR +REALGARS +REALIA +REALIGN +REALIGNED +REALIGNING +REALIGNMENT +REALIGNMENTS +REALIGNS +REALISE +REALISED +REALISER +REALISERS +REALISES +REALISING +REALISM +REALISMS +REALIST +REALISTIC +REALISTICALLY +REALISTS +REALITIES +REALITY +REALIZABLE +REALIZATION +REALIZATIONS +REALIZE +REALIZED +REALIZER +REALIZERS +REALIZES +REALIZING +REALLOCATE +REALLOCATED +REALLOCATES +REALLOCATING +REALLOCATION +REALLOCATIONS +REALLOT +REALLOTS +REALLOTTED +REALLOTTING +REALLY +REALM +REALMS +REALNESS +REALNESSES +REALPOLITIK +REALPOLITIKS +REALS +REALTER +REALTERED +REALTERING +REALTERS +REALTIES +REALTOR +REALTORS +REALTY +REAM +REAMED +REAMER +REAMERS +REAMING +REAMS +REANALYSES +REANALYSIS +REANALYZE +REANALYZED +REANALYZES +REANALYZING +REANIMATE +REANIMATED +REANIMATES +REANIMATING +REANIMATION +REANIMATIONS +REANNEX +REANNEXATION +REANNEXATIONS +REANNEXED +REANNEXES +REANNEXING +REANOINT +REANOINTED +REANOINTING +REANOINTS +REAP +REAPABLE +REAPED +REAPER +REAPERS +REAPHOOK +REAPHOOKS +REAPING +REAPPEAR +REAPPEARANCE +REAPPEARANCES +REAPPEARED +REAPPEARING +REAPPEARS +REAPPLICATION +REAPPLICATIONS +REAPPLIED +REAPPLIES +REAPPLY +REAPPLYING +REAPPOINT +REAPPOINTED +REAPPOINTING +REAPPOINTMENT +REAPPOINTMENTS +REAPPOINTS +REAPPORTION +REAPPORTIONED +REAPPORTIONING +REAPPORTIONMENT +REAPPORTIONS +REAPPRAISAL +REAPPRAISALS +REAPPRAISE +REAPPRAISED +REAPPRAISES +REAPPRAISING +REAPPROPRIATE +REAPPROPRIATED +REAPPROPRIATES +REAPPROPRIATING +REAPPROVE +REAPPROVED +REAPPROVES +REAPPROVING +REAPS +REAR +REARED +REARER +REARERS +REARGUARD +REARGUE +REARGUED +REARGUES +REARGUING +REARGUMENT +REARGUMENTS +REARING +REARM +REARMAMENT +REARMAMENTS +REARMED +REARMICE +REARMING +REARMOST +REARMOUSE +REARMS +REAROUSAL +REAROUSALS +REAROUSE +REAROUSED +REAROUSES +REAROUSING +REARRANGE +REARRANGED +REARRANGEMENT +REARRANGEMENTS +REARRANGES +REARRANGING +REARREST +REARRESTED +REARRESTING +REARRESTS +REARS +REARTICULATE +REARTICULATED +REARTICULATES +REARTICULATING +REARWARD +REARWARDS +REASCEND +REASCENDED +REASCENDING +REASCENDS +REASCENT +REASCENTS +REASON +REASONABILITIES +REASONABILITY +REASONABLE +REASONABLENESS +REASONABLY +REASONED +REASONER +REASONERS +REASONING +REASONINGS +REASONLESS +REASONLESSLY +REASONS +REASSAIL +REASSAILED +REASSAILING +REASSAILS +REASSEMBLAGE +REASSEMBLAGES +REASSEMBLE +REASSEMBLED +REASSEMBLES +REASSEMBLIES +REASSEMBLING +REASSEMBLY +REASSERT +REASSERTED +REASSERTING +REASSERTION +REASSERTIONS +REASSERTS +REASSESS +REASSESSED +REASSESSES +REASSESSING +REASSESSMENT +REASSESSMENTS +REASSIGN +REASSIGNED +REASSIGNING +REASSIGNMENT +REASSIGNMENTS +REASSIGNS +REASSORT +REASSORTED +REASSORTING +REASSORTS +REASSUME +REASSUMED +REASSUMES +REASSUMING +REASSURANCE +REASSURANCES +REASSURE +REASSURED +REASSURES +REASSURING +REASSURINGLY +REATA +REATAS +REATTACH +REATTACHED +REATTACHES +REATTACHING +REATTACHMENT +REATTACHMENTS +REATTACK +REATTACKED +REATTACKING +REATTACKS +REATTAIN +REATTAINED +REATTAINING +REATTAINS +REATTEMPT +REATTEMPTED +REATTEMPTING +REATTEMPTS +REATTRIBUTE +REATTRIBUTED +REATTRIBUTES +REATTRIBUTING +REATTRIBUTION +REATTRIBUTIONS +REAUTHORIZATION +REAUTHORIZE +REAUTHORIZED +REAUTHORIZES +REAUTHORIZING +REAVAIL +REAVAILED +REAVAILING +REAVAILS +REAVE +REAVED +REAVER +REAVERS +REAVES +REAVING +REAVOW +REAVOWED +REAVOWING +REAVOWS +REAWAKE +REAWAKED +REAWAKEN +REAWAKENED +REAWAKENING +REAWAKENS +REAWAKES +REAWAKING +REAWOKE +REAWOKEN +REB +REBAIT +REBAITED +REBAITING +REBAITS +REBALANCE +REBALANCED +REBALANCES +REBALANCING +REBAPTISM +REBAPTISMS +REBAPTIZE +REBAPTIZED +REBAPTIZES +REBAPTIZING +REBAR +REBARBATIVE +REBARBATIVELY +REBARS +REBATE +REBATED +REBATER +REBATERS +REBATES +REBATING +REBATO +REBATOS +REBBE +REBBES +REBBETZIN +REBBETZINS +REBEC +REBECK +REBECKS +REBECS +REBEGAN +REBEGIN +REBEGINNING +REBEGINS +REBEGUN +REBEL +REBELDOM +REBELDOMS +REBELLED +REBELLING +REBELLION +REBELLIONS +REBELLIOUS +REBELLIOUSLY +REBELLIOUSNESS +REBELS +REBID +REBIDDEN +REBIDDING +REBIDS +REBILL +REBILLED +REBILLING +REBILLS +REBIND +REBINDING +REBINDS +REBIRTH +REBIRTHS +REBLEND +REBLENDED +REBLENDING +REBLENDS +REBLENT +REBLOOM +REBLOOMED +REBLOOMING +REBLOOMS +REBOANT +REBOARD +REBOARDED +REBOARDING +REBOARDS +REBODIED +REBODIES +REBODY +REBODYING +REBOIL +REBOILED +REBOILING +REBOILS +REBOOK +REBOOKED +REBOOKING +REBOOKS +REBOOT +REBOOTED +REBOOTING +REBOOTS +REBOP +REBOPS +REBORE +REBORED +REBORES +REBORING +REBORN +REBOTTLE +REBOTTLED +REBOTTLES +REBOTTLING +REBOUGHT +REBOUND +REBOUNDED +REBOUNDER +REBOUNDERS +REBOUNDING +REBOUNDS +REBOZO +REBOZOS +REBRANCH +REBRANCHED +REBRANCHES +REBRANCHING +REBRED +REBREED +REBREEDING +REBREEDS +REBROADCAST +REBROADCASTING +REBROADCASTS +REBS +REBUFF +REBUFFED +REBUFFING +REBUFFS +REBUILD +REBUILDED +REBUILDING +REBUILDS +REBUILT +REBUKE +REBUKED +REBUKER +REBUKERS +REBUKES +REBUKING +REBURIAL +REBURIALS +REBURIED +REBURIES +REBURY +REBURYING +REBUS +REBUSES +REBUT +REBUTS +REBUTTABLE +REBUTTAL +REBUTTALS +REBUTTED +REBUTTER +REBUTTERS +REBUTTING +REBUTTON +REBUTTONED +REBUTTONING +REBUTTONS +REBUY +REBUYING +REBUYS +REC +RECALCITRANCE +RECALCITRANCES +RECALCITRANCIES +RECALCITRANCY +RECALCITRANT +RECALCITRANTS +RECALCULATE +RECALCULATED +RECALCULATES +RECALCULATING +RECALCULATION +RECALCULATIONS +RECALIBRATE +RECALIBRATED +RECALIBRATES +RECALIBRATING +RECALIBRATION +RECALIBRATIONS +RECALL +RECALLABILITIES +RECALLABILITY +RECALLABLE +RECALLED +RECALLER +RECALLERS +RECALLING +RECALLS +RECAMIER +RECAMIERS +RECANALIZATION +RECANALIZATIONS +RECANALIZE +RECANALIZED +RECANALIZES +RECANALIZING +RECANE +RECANED +RECANES +RECANING +RECANT +RECANTATION +RECANTATIONS +RECANTED +RECANTER +RECANTERS +RECANTING +RECANTS +RECAP +RECAPITALIZE +RECAPITALIZED +RECAPITALIZES +RECAPITALIZING +RECAPITULATE +RECAPITULATED +RECAPITULATES +RECAPITULATING +RECAPITULATION +RECAPITULATIONS +RECAPPABLE +RECAPPED +RECAPPING +RECAPS +RECAPTURE +RECAPTURED +RECAPTURES +RECAPTURING +RECARPET +RECARPETED +RECARPETING +RECARPETS +RECARRIED +RECARRIES +RECARRY +RECARRYING +RECAST +RECASTING +RECASTS +RECATALOG +RECATALOGED +RECATALOGING +RECATALOGS +RECAUTION +RECAUTIONED +RECAUTIONING +RECAUTIONS +RECCE +RECCES +RECEDE +RECEDED +RECEDES +RECEDING +RECEIPT +RECEIPTED +RECEIPTING +RECEIPTOR +RECEIPTORS +RECEIPTS +RECEIVABLE +RECEIVABLES +RECEIVE +RECEIVED +RECEIVER +RECEIVERS +RECEIVERSHIP +RECEIVERSHIPS +RECEIVES +RECEIVING +RECEMENT +RECEMENTED +RECEMENTING +RECEMENTS +RECENCIES +RECENCY +RECENSION +RECENSIONS +RECENSOR +RECENSORED +RECENSORING +RECENSORS +RECENT +RECENTER +RECENTEST +RECENTLY +RECENTNESS +RECENTNESSES +RECENTRIFUGE +RECENTRIFUGED +RECENTRIFUGES +RECENTRIFUGING +RECEPT +RECEPTACLE +RECEPTACLES +RECEPTION +RECEPTIONIST +RECEPTIONISTS +RECEPTIONS +RECEPTIVE +RECEPTIVELY +RECEPTIVENESS +RECEPTIVENESSES +RECEPTIVITIES +RECEPTIVITY +RECEPTOR +RECEPTORS +RECEPTS +RECERTIFICATION +RECERTIFIED +RECERTIFIES +RECERTIFY +RECERTIFYING +RECESS +RECESSED +RECESSES +RECESSING +RECESSION +RECESSIONAL +RECESSIONALS +RECESSIONARY +RECESSIONS +RECESSIVE +RECESSIVELY +RECESSIVENESS +RECESSIVENESSES +RECESSIVES +RECHALLENGE +RECHALLENGED +RECHALLENGES +RECHALLENGING +RECHANGE +RECHANGED +RECHANGES +RECHANGING +RECHANNEL +RECHANNELED +RECHANNELING +RECHANNELLED +RECHANNELLING +RECHANNELS +RECHARGE +RECHARGEABLE +RECHARGED +RECHARGER +RECHARGERS +RECHARGES +RECHARGING +RECHART +RECHARTED +RECHARTER +RECHARTERED +RECHARTERING +RECHARTERS +RECHARTING +RECHARTS +RECHAUFFE +RECHAUFFES +RECHEAT +RECHEATS +RECHECK +RECHECKED +RECHECKING +RECHECKS +RECHERCHE +RECHEW +RECHEWED +RECHEWING +RECHEWS +RECHOOSE +RECHOOSES +RECHOOSING +RECHOREOGRAPH +RECHOREOGRAPHED +RECHOREOGRAPHS +RECHOSE +RECHOSEN +RECHRISTEN +RECHRISTENED +RECHRISTENING +RECHRISTENS +RECHROMATOGRAPH +RECIDIVISM +RECIDIVISMS +RECIDIVIST +RECIDIVISTIC +RECIDIVISTS +RECIPE +RECIPES +RECIPIENT +RECIPIENTS +RECIPROCAL +RECIPROCALLY +RECIPROCALS +RECIPROCATE +RECIPROCATED +RECIPROCATES +RECIPROCATING +RECIPROCATION +RECIPROCATIONS +RECIPROCATIVE +RECIPROCATOR +RECIPROCATORS +RECIPROCITIES +RECIPROCITY +RECIRCLE +RECIRCLED +RECIRCLES +RECIRCLING +RECIRCULATE +RECIRCULATED +RECIRCULATES +RECIRCULATING +RECIRCULATION +RECIRCULATIONS +RECISION +RECISIONS +RECIT +RECITAL +RECITALIST +RECITALISTS +RECITALS +RECITATION +RECITATIONS +RECITATIVE +RECITATIVES +RECITATIVI +RECITATIVO +RECITATIVOS +RECITE +RECITED +RECITER +RECITERS +RECITES +RECITING +RECITS +RECK +RECKED +RECKING +RECKLESS +RECKLESSLY +RECKLESSNESS +RECKLESSNESSES +RECKON +RECKONED +RECKONER +RECKONERS +RECKONING +RECKONINGS +RECKONS +RECKS +RECLAD +RECLADDED +RECLADDING +RECLADS +RECLAIM +RECLAIMABLE +RECLAIMED +RECLAIMER +RECLAIMERS +RECLAIMING +RECLAIMS +RECLAMATION +RECLAMATIONS +RECLAME +RECLAMES +RECLASP +RECLASPED +RECLASPING +RECLASPS +RECLASSIFIED +RECLASSIFIES +RECLASSIFY +RECLASSIFYING +RECLEAN +RECLEANED +RECLEANING +RECLEANS +RECLINATE +RECLINE +RECLINED +RECLINER +RECLINERS +RECLINES +RECLINING +RECLOSABLE +RECLOTHE +RECLOTHED +RECLOTHES +RECLOTHING +RECLUSE +RECLUSES +RECLUSION +RECLUSIONS +RECLUSIVE +RECLUSIVELY +RECLUSIVENESS +RECLUSIVENESSES +RECOAL +RECOALED +RECOALING +RECOALS +RECOAT +RECOATED +RECOATING +RECOATS +RECOCK +RECOCKED +RECOCKING +RECOCKS +RECODE +RECODED +RECODES +RECODIFICATION +RECODIFICATIONS +RECODIFIED +RECODIFIES +RECODIFY +RECODIFYING +RECODING +RECOGNISE +RECOGNISED +RECOGNISES +RECOGNISING +RECOGNITION +RECOGNITIONS +RECOGNIZABILITY +RECOGNIZABLE +RECOGNIZABLY +RECOGNIZANCE +RECOGNIZANCES +RECOGNIZE +RECOGNIZED +RECOGNIZER +RECOGNIZERS +RECOGNIZES +RECOGNIZING +RECOIL +RECOILED +RECOILER +RECOILERS +RECOILING +RECOILLESS +RECOILS +RECOIN +RECOINAGE +RECOINAGES +RECOINED +RECOINING +RECOINS +RECOLLECT +RECOLLECTED +RECOLLECTING +RECOLLECTION +RECOLLECTIONS +RECOLLECTS +RECOLONIZATION +RECOLONIZATIONS +RECOLONIZE +RECOLONIZED +RECOLONIZES +RECOLONIZING +RECOLOR +RECOLORED +RECOLORING +RECOLORS +RECOMB +RECOMBED +RECOMBINANT +RECOMBINANTS +RECOMBINATION +RECOMBINATIONAL +RECOMBINATIONS +RECOMBINE +RECOMBINED +RECOMBINES +RECOMBING +RECOMBINING +RECOMBS +RECOMMENCE +RECOMMENCED +RECOMMENCEMENT +RECOMMENCEMENTS +RECOMMENCES +RECOMMENCING +RECOMMEND +RECOMMENDABLE +RECOMMENDATION +RECOMMENDATIONS +RECOMMENDATORY +RECOMMENDED +RECOMMENDER +RECOMMENDERS +RECOMMENDING +RECOMMENDS +RECOMMISSION +RECOMMISSIONED +RECOMMISSIONING +RECOMMISSIONS +RECOMMIT +RECOMMITMENT +RECOMMITMENTS +RECOMMITS +RECOMMITTAL +RECOMMITTALS +RECOMMITTED +RECOMMITTING +RECOMPENSE +RECOMPENSED +RECOMPENSES +RECOMPENSING +RECOMPILATION +RECOMPILATIONS +RECOMPILE +RECOMPILED +RECOMPILES +RECOMPILING +RECOMPOSE +RECOMPOSED +RECOMPOSES +RECOMPOSING +RECOMPOSITION +RECOMPOSITIONS +RECOMPUTATION +RECOMPUTATIONS +RECOMPUTE +RECOMPUTED +RECOMPUTES +RECOMPUTING +RECON +RECONCEIVE +RECONCEIVED +RECONCEIVES +RECONCEIVING +RECONCENTRATE +RECONCENTRATED +RECONCENTRATES +RECONCENTRATING +RECONCENTRATION +RECONCEPTION +RECONCEPTIONS +RECONCEPTUALIZE +RECONCILABILITY +RECONCILABLE +RECONCILE +RECONCILED +RECONCILEMENT +RECONCILEMENTS +RECONCILER +RECONCILERS +RECONCILES +RECONCILIATION +RECONCILIATIONS +RECONCILIATORY +RECONCILING +RECONDENSE +RECONDENSED +RECONDENSES +RECONDENSING +RECONDITE +RECONDITELY +RECONDITENESS +RECONDITENESSES +RECONDITION +RECONDITIONED +RECONDITIONING +RECONDITIONS +RECONDUCT +RECONDUCTED +RECONDUCTING +RECONDUCTS +RECONFER +RECONFERRED +RECONFERRING +RECONFERS +RECONFIGURATION +RECONFIGURE +RECONFIGURED +RECONFIGURES +RECONFIGURING +RECONFINE +RECONFINED +RECONFINES +RECONFINING +RECONFIRM +RECONFIRMATION +RECONFIRMATIONS +RECONFIRMED +RECONFIRMING +RECONFIRMS +RECONNAISSANCE +RECONNAISSANCES +RECONNECT +RECONNECTED +RECONNECTING +RECONNECTION +RECONNECTIONS +RECONNECTS +RECONNED +RECONNING +RECONNOITER +RECONNOITERED +RECONNOITERING +RECONNOITERS +RECONNOITRE +RECONNOITRED +RECONNOITRES +RECONNOITRING +RECONQUER +RECONQUERED +RECONQUERING +RECONQUERS +RECONQUEST +RECONQUESTS +RECONS +RECONSECRATE +RECONSECRATED +RECONSECRATES +RECONSECRATING +RECONSECRATION +RECONSECRATIONS +RECONSIDER +RECONSIDERATION +RECONSIDERED +RECONSIDERING +RECONSIDERS +RECONSIGN +RECONSIGNED +RECONSIGNING +RECONSIGNS +RECONSOLE +RECONSOLED +RECONSOLES +RECONSOLIDATE +RECONSOLIDATED +RECONSOLIDATES +RECONSOLIDATING +RECONSOLING +RECONSTITUTE +RECONSTITUTED +RECONSTITUTES +RECONSTITUTING +RECONSTITUTION +RECONSTITUTIONS +RECONSTRUCT +RECONSTRUCTED +RECONSTRUCTIBLE +RECONSTRUCTING +RECONSTRUCTION +RECONSTRUCTIONS +RECONSTRUCTIVE +RECONSTRUCTOR +RECONSTRUCTORS +RECONSTRUCTS +RECONSULT +RECONSULTED +RECONSULTING +RECONSULTS +RECONTACT +RECONTACTED +RECONTACTING +RECONTACTS +RECONTAMINATE +RECONTAMINATED +RECONTAMINATES +RECONTAMINATING +RECONTAMINATION +RECONTEXTUALIZE +RECONTOUR +RECONTOURED +RECONTOURING +RECONTOURS +RECONVENE +RECONVENED +RECONVENES +RECONVENING +RECONVERSION +RECONVERSIONS +RECONVERT +RECONVERTED +RECONVERTING +RECONVERTS +RECONVEY +RECONVEYANCE +RECONVEYANCES +RECONVEYED +RECONVEYING +RECONVEYS +RECONVICT +RECONVICTED +RECONVICTING +RECONVICTION +RECONVICTIONS +RECONVICTS +RECONVINCE +RECONVINCED +RECONVINCES +RECONVINCING +RECOOK +RECOOKED +RECOOKING +RECOOKS +RECOPIED +RECOPIES +RECOPY +RECOPYING +RECORD +RECORDABLE +RECORDATION +RECORDATIONS +RECORDED +RECORDER +RECORDERS +RECORDING +RECORDINGS +RECORDIST +RECORDISTS +RECORDS +RECORK +RECORKED +RECORKING +RECORKS +RECOUNT +RECOUNTAL +RECOUNTALS +RECOUNTED +RECOUNTER +RECOUNTERS +RECOUNTING +RECOUNTS +RECOUP +RECOUPABLE +RECOUPE +RECOUPED +RECOUPING +RECOUPLE +RECOUPLED +RECOUPLES +RECOUPLING +RECOUPMENT +RECOUPMENTS +RECOUPS +RECOURSE +RECOURSES +RECOVER +RECOVERABILITY +RECOVERABLE +RECOVERED +RECOVERER +RECOVERERS +RECOVERIES +RECOVERING +RECOVERS +RECOVERY +RECRATE +RECRATED +RECRATES +RECRATING +RECREANCE +RECREANCES +RECREANCIES +RECREANCY +RECREANT +RECREANTS +RECREATE +RECREATED +RECREATES +RECREATING +RECREATION +RECREATIONAL +RECREATIONIST +RECREATIONISTS +RECREATIONS +RECREATIVE +RECREMENT +RECREMENTS +RECRIMINATE +RECRIMINATED +RECRIMINATES +RECRIMINATING +RECRIMINATION +RECRIMINATIONS +RECRIMINATIVE +RECRIMINATORY +RECROSS +RECROSSED +RECROSSES +RECROSSING +RECROWN +RECROWNED +RECROWNING +RECROWNS +RECRUDESCE +RECRUDESCED +RECRUDESCENCE +RECRUDESCENCES +RECRUDESCENT +RECRUDESCES +RECRUDESCING +RECRUIT +RECRUITED +RECRUITER +RECRUITERS +RECRUITING +RECRUITMENT +RECRUITMENTS +RECRUITS +RECRYSTALLIZE +RECRYSTALLIZED +RECRYSTALLIZES +RECRYSTALLIZING +RECS +RECTA +RECTAL +RECTALLY +RECTANGLE +RECTANGLES +RECTANGULAR +RECTANGULARITY +RECTANGULARLY +RECTI +RECTIFIABILITY +RECTIFIABLE +RECTIFICATION +RECTIFICATIONS +RECTIFIED +RECTIFIER +RECTIFIERS +RECTIFIES +RECTIFY +RECTIFYING +RECTILINEAR +RECTILINEARLY +RECTITUDE +RECTITUDES +RECTITUDINOUS +RECTO +RECTOCELE +RECTOCELES +RECTOR +RECTORATE +RECTORATES +RECTORIAL +RECTORIES +RECTORS +RECTORSHIP +RECTORSHIPS +RECTORY +RECTOS +RECTRICES +RECTRIX +RECTUM +RECTUMS +RECTUS +RECULTIVATE +RECULTIVATED +RECULTIVATES +RECULTIVATING +RECUMBENCIES +RECUMBENCY +RECUMBENT +RECUPERATE +RECUPERATED +RECUPERATES +RECUPERATING +RECUPERATION +RECUPERATIONS +RECUPERATIVE +RECUR +RECURRED +RECURRENCE +RECURRENCES +RECURRENT +RECURRENTLY +RECURRING +RECURS +RECURSION +RECURSIONS +RECURSIVE +RECURSIVELY +RECURSIVENESS +RECURSIVENESSES +RECURVATE +RECURVE +RECURVED +RECURVES +RECURVING +RECUSAL +RECUSALS +RECUSANCIES +RECUSANCY +RECUSANT +RECUSANTS +RECUSE +RECUSED +RECUSES +RECUSING +RECUT +RECUTS +RECUTTING +RECYCLABLE +RECYCLABLES +RECYCLE +RECYCLED +RECYCLER +RECYCLERS +RECYCLES +RECYCLING +RED +REDACT +REDACTED +REDACTING +REDACTION +REDACTIONAL +REDACTIONS +REDACTOR +REDACTORS +REDACTS +REDAMAGE +REDAMAGED +REDAMAGES +REDAMAGING +REDAN +REDANS +REDARGUE +REDARGUED +REDARGUES +REDARGUING +REDATE +REDATED +REDATES +REDATING +REDBAIT +REDBAITED +REDBAITER +REDBAITERS +REDBAITING +REDBAITS +REDBAY +REDBAYS +REDBIRD +REDBIRDS +REDBONE +REDBONES +REDBREAST +REDBREASTS +REDBRICK +REDBRICKS +REDBUD +REDBUDS +REDBUG +REDBUGS +REDCAP +REDCAPS +REDCOAT +REDCOATS +REDD +REDDED +REDDEN +REDDENED +REDDENING +REDDENS +REDDER +REDDERS +REDDEST +REDDING +REDDISH +REDDISHNESS +REDDISHNESSES +REDDLE +REDDLED +REDDLES +REDDLING +REDDS +REDE +REDEAR +REDEARS +REDECIDE +REDECIDED +REDECIDES +REDECIDING +REDECORATE +REDECORATED +REDECORATES +REDECORATING +REDECORATION +REDECORATIONS +REDECORATOR +REDECORATORS +REDED +REDEDICATE +REDEDICATED +REDEDICATES +REDEDICATING +REDEDICATION +REDEDICATIONS +REDEEM +REDEEMABLE +REDEEMED +REDEEMER +REDEEMERS +REDEEMING +REDEEMS +REDEFEAT +REDEFEATED +REDEFEATING +REDEFEATS +REDEFECT +REDEFECTED +REDEFECTING +REDEFECTS +REDEFIED +REDEFIES +REDEFINE +REDEFINED +REDEFINES +REDEFINING +REDEFINITION +REDEFINITIONS +REDEFY +REDEFYING +REDELIVER +REDELIVERED +REDELIVERIES +REDELIVERING +REDELIVERS +REDELIVERY +REDEMAND +REDEMANDED +REDEMANDING +REDEMANDS +REDEMPTION +REDEMPTIONER +REDEMPTIONERS +REDEMPTIONS +REDEMPTIVE +REDEMPTORY +REDENIED +REDENIES +REDENY +REDENYING +REDEPLOY +REDEPLOYED +REDEPLOYING +REDEPLOYMENT +REDEPLOYMENTS +REDEPLOYS +REDEPOSIT +REDEPOSITED +REDEPOSITING +REDEPOSITS +REDES +REDESCEND +REDESCENDED +REDESCENDING +REDESCENDS +REDESCRIBE +REDESCRIBED +REDESCRIBES +REDESCRIBING +REDESCRIPTION +REDESCRIPTIONS +REDESIGN +REDESIGNED +REDESIGNING +REDESIGNS +REDETERMINATION +REDETERMINE +REDETERMINED +REDETERMINES +REDETERMINING +REDEVELOP +REDEVELOPED +REDEVELOPER +REDEVELOPERS +REDEVELOPING +REDEVELOPMENT +REDEVELOPMENTS +REDEVELOPS +REDEYE +REDEYES +REDFIN +REDFINS +REDFISH +REDFISHES +REDHEAD +REDHEADED +REDHEADS +REDHORSE +REDHORSES +REDIA +REDIAE +REDIAL +REDIALED +REDIALING +REDIALLED +REDIALLING +REDIALS +REDIAS +REDICTATE +REDICTATED +REDICTATES +REDICTATING +REDID +REDIGEST +REDIGESTED +REDIGESTING +REDIGESTION +REDIGESTIONS +REDIGESTS +REDIGRESS +REDIGRESSED +REDIGRESSES +REDIGRESSING +REDING +REDINGOTE +REDINGOTES +REDINTEGRATE +REDINTEGRATED +REDINTEGRATES +REDINTEGRATING +REDINTEGRATION +REDINTEGRATIONS +REDINTEGRATIVE +REDIP +REDIPPED +REDIPPING +REDIPS +REDIPT +REDIRECT +REDIRECTED +REDIRECTING +REDIRECTION +REDIRECTIONS +REDIRECTS +REDISCOUNT +REDISCOUNTABLE +REDISCOUNTED +REDISCOUNTING +REDISCOUNTS +REDISCOVER +REDISCOVERED +REDISCOVERIES +REDISCOVERING +REDISCOVERS +REDISCOVERY +REDISCUSS +REDISCUSSED +REDISCUSSES +REDISCUSSING +REDISPLAY +REDISPLAYED +REDISPLAYING +REDISPLAYS +REDISPOSE +REDISPOSED +REDISPOSES +REDISPOSING +REDISPOSITION +REDISPOSITIONS +REDISSOLVE +REDISSOLVED +REDISSOLVES +REDISSOLVING +REDISTILL +REDISTILLATION +REDISTILLATIONS +REDISTILLED +REDISTILLING +REDISTILLS +REDISTRIBUTE +REDISTRIBUTED +REDISTRIBUTES +REDISTRIBUTING +REDISTRIBUTION +REDISTRIBUTIONS +REDISTRIBUTIVE +REDISTRICT +REDISTRICTED +REDISTRICTING +REDISTRICTS +REDIVIDE +REDIVIDED +REDIVIDES +REDIVIDING +REDIVISION +REDIVISIONS +REDIVIVUS +REDIVORCE +REDIVORCED +REDIVORCES +REDIVORCING +REDLEG +REDLEGS +REDLINE +REDLINED +REDLINER +REDLINERS +REDLINES +REDLINING +REDLININGS +REDLY +REDNECK +REDNECKED +REDNECKS +REDNESS +REDNESSES +REDO +REDOCK +REDOCKED +REDOCKING +REDOCKS +REDOES +REDOING +REDOLENCE +REDOLENCES +REDOLENCIES +REDOLENCY +REDOLENT +REDOLENTLY +REDON +REDONE +REDONNED +REDONNING +REDONS +REDOS +REDOUBLE +REDOUBLED +REDOUBLER +REDOUBLERS +REDOUBLES +REDOUBLING +REDOUBT +REDOUBTABLE +REDOUBTABLY +REDOUBTS +REDOUND +REDOUNDED +REDOUNDING +REDOUNDS +REDOUT +REDOUTS +REDOWA +REDOWAS +REDOX +REDOXES +REDPOLL +REDPOLLS +REDRAFT +REDRAFTED +REDRAFTING +REDRAFTS +REDRAW +REDRAWER +REDRAWERS +REDRAWING +REDRAWN +REDRAWS +REDREAM +REDREAMED +REDREAMING +REDREAMS +REDREAMT +REDRESS +REDRESSED +REDRESSER +REDRESSERS +REDRESSES +REDRESSING +REDRESSOR +REDRESSORS +REDREW +REDRIED +REDRIES +REDRILL +REDRILLED +REDRILLING +REDRILLS +REDRIVE +REDRIVEN +REDRIVES +REDRIVING +REDROOT +REDROOTS +REDROVE +REDRY +REDRYING +REDS +REDSHANK +REDSHANKS +REDSHIFT +REDSHIFTED +REDSHIFTS +REDSHIRT +REDSHIRTED +REDSHIRTING +REDSHIRTS +REDSKIN +REDSKINS +REDSTART +REDSTARTS +REDTAIL +REDTAILS +REDTOP +REDTOPS +REDUB +REDUBBED +REDUBBING +REDUBS +REDUCE +REDUCED +REDUCER +REDUCERS +REDUCES +REDUCIBILITIES +REDUCIBILITY +REDUCIBLE +REDUCIBLY +REDUCING +REDUCTANT +REDUCTANTS +REDUCTASE +REDUCTASES +REDUCTION +REDUCTIONAL +REDUCTIONISM +REDUCTIONISMS +REDUCTIONIST +REDUCTIONISTIC +REDUCTIONISTS +REDUCTIONS +REDUCTIVE +REDUCTIVELY +REDUCTIVENESS +REDUCTIVENESSES +REDUCTOR +REDUCTORS +REDUNDANCIES +REDUNDANCY +REDUNDANT +REDUNDANTLY +REDUPLICATE +REDUPLICATED +REDUPLICATES +REDUPLICATING +REDUPLICATION +REDUPLICATIONS +REDUPLICATIVE +REDUPLICATIVELY +REDUVIID +REDUVIIDS +REDUX +REDWARE +REDWARES +REDWING +REDWINGS +REDWOOD +REDWOODS +REDYE +REDYED +REDYEING +REDYES +REE +REEARN +REEARNED +REEARNING +REEARNS +REECHIER +REECHIEST +REECHO +REECHOED +REECHOES +REECHOING +REECHY +REED +REEDBIRD +REEDBIRDS +REEDBUCK +REEDBUCKS +REEDED +REEDIER +REEDIEST +REEDIFIED +REEDIFIES +REEDIFY +REEDIFYING +REEDILY +REEDINESS +REEDINESSES +REEDING +REEDINGS +REEDIT +REEDITED +REEDITING +REEDITION +REEDITIONS +REEDITS +REEDLIKE +REEDLING +REEDLINGS +REEDMAN +REEDMEN +REEDS +REEDUCATE +REEDUCATED +REEDUCATES +REEDUCATING +REEDUCATION +REEDUCATIONS +REEDUCATIVE +REEDY +REEF +REEFABLE +REEFED +REEFER +REEFERS +REEFIER +REEFIEST +REEFING +REEFS +REEFY +REEJECT +REEJECTED +REEJECTING +REEJECTS +REEK +REEKED +REEKER +REEKERS +REEKIER +REEKIEST +REEKING +REEKS +REEKY +REEL +REELABLE +REELECT +REELECTED +REELECTING +REELECTION +REELECTIONS +REELECTS +REELED +REELER +REELERS +REELEVATE +REELEVATED +REELEVATES +REELEVATING +REELIGIBILITIES +REELIGIBILITY +REELIGIBLE +REELING +REELINGS +REELS +REEMBARK +REEMBARKED +REEMBARKING +REEMBARKS +REEMBODIED +REEMBODIES +REEMBODY +REEMBODYING +REEMBRACE +REEMBRACED +REEMBRACES +REEMBRACING +REEMBROIDER +REEMBROIDERED +REEMBROIDERING +REEMBROIDERS +REEMERGE +REEMERGED +REEMERGENCE +REEMERGENCES +REEMERGES +REEMERGING +REEMISSION +REEMISSIONS +REEMIT +REEMITS +REEMITTED +REEMITTING +REEMPHASES +REEMPHASIS +REEMPHASIZE +REEMPHASIZED +REEMPHASIZES +REEMPHASIZING +REEMPLOY +REEMPLOYED +REEMPLOYING +REEMPLOYMENT +REEMPLOYMENTS +REEMPLOYS +REENACT +REENACTED +REENACTING +REENACTMENT +REENACTMENTS +REENACTOR +REENACTORS +REENACTS +REENCOUNTER +REENCOUNTERED +REENCOUNTERING +REENCOUNTERS +REENDOW +REENDOWED +REENDOWING +REENDOWS +REENERGIZE +REENERGIZED +REENERGIZES +REENERGIZING +REENFORCE +REENFORCED +REENFORCES +REENFORCING +REENGAGE +REENGAGED +REENGAGEMENT +REENGAGEMENTS +REENGAGES +REENGAGING +REENGINEER +REENGINEERED +REENGINEERING +REENGINEERS +REENGRAVE +REENGRAVED +REENGRAVES +REENGRAVING +REENJOY +REENJOYED +REENJOYING +REENJOYS +REENLARGE +REENLARGED +REENLARGES +REENLARGING +REENLIST +REENLISTED +REENLISTING +REENLISTMENT +REENLISTMENTS +REENLISTS +REENROLL +REENROLLED +REENROLLING +REENROLLS +REENSLAVE +REENSLAVED +REENSLAVES +REENSLAVING +REENTER +REENTERED +REENTERING +REENTERS +REENTHRONE +REENTHRONED +REENTHRONES +REENTHRONING +REENTRANCE +REENTRANCES +REENTRANT +REENTRANTS +REENTRIES +REENTRY +REEQUIP +REEQUIPMENT +REEQUIPMENTS +REEQUIPPED +REEQUIPPING +REEQUIPS +REERECT +REERECTED +REERECTING +REERECTS +REES +REESCALATE +REESCALATED +REESCALATES +REESCALATING +REESCALATION +REESCALATIONS +REEST +REESTABLISH +REESTABLISHED +REESTABLISHES +REESTABLISHING +REESTABLISHMENT +REESTED +REESTIMATE +REESTIMATED +REESTIMATES +REESTIMATING +REESTING +REESTS +REEVALUATE +REEVALUATED +REEVALUATES +REEVALUATING +REEVALUATION +REEVALUATIONS +REEVE +REEVED +REEVES +REEVING +REEVOKE +REEVOKED +REEVOKES +REEVOKING +REEXAMINATION +REEXAMINATIONS +REEXAMINE +REEXAMINED +REEXAMINES +REEXAMINING +REEXECUTE +REEXECUTED +REEXECUTES +REEXECUTING +REEXHIBIT +REEXHIBITED +REEXHIBITING +REEXHIBITS +REEXPEL +REEXPELLED +REEXPELLING +REEXPELS +REEXPERIENCE +REEXPERIENCED +REEXPERIENCES +REEXPERIENCING +REEXPLAIN +REEXPLAINED +REEXPLAINING +REEXPLAINS +REEXPLORE +REEXPLORED +REEXPLORES +REEXPLORING +REEXPORT +REEXPORTATION +REEXPORTATIONS +REEXPORTED +REEXPORTING +REEXPORTS +REEXPOSE +REEXPOSED +REEXPOSES +REEXPOSING +REEXPOSURE +REEXPOSURES +REEXPRESS +REEXPRESSED +REEXPRESSES +REEXPRESSING +REF +REFACE +REFACED +REFACES +REFACING +REFALL +REFALLEN +REFALLING +REFALLS +REFASHION +REFASHIONED +REFASHIONING +REFASHIONS +REFASTEN +REFASTENED +REFASTENING +REFASTENS +REFECT +REFECTED +REFECTING +REFECTION +REFECTIONS +REFECTIVE +REFECTORIES +REFECTORY +REFECTS +REFED +REFEED +REFEEDING +REFEEDS +REFEEL +REFEELING +REFEELS +REFEL +REFELL +REFELLED +REFELLING +REFELS +REFELT +REFENCE +REFENCED +REFENCES +REFENCING +REFER +REFERABLE +REFEREE +REFEREED +REFEREEING +REFEREES +REFERENCE +REFERENCED +REFERENCES +REFERENCING +REFERENDA +REFERENDUM +REFERENDUMS +REFERENT +REFERENTIAL +REFERENTIALITY +REFERENTIALLY +REFERENTS +REFERRAL +REFERRALS +REFERRED +REFERRER +REFERRERS +REFERRING +REFERS +REFFED +REFFING +REFIGHT +REFIGHTING +REFIGHTS +REFIGURE +REFIGURED +REFIGURES +REFIGURING +REFILE +REFILED +REFILES +REFILING +REFILL +REFILLABLE +REFILLED +REFILLING +REFILLS +REFILM +REFILMED +REFILMING +REFILMS +REFILTER +REFILTERED +REFILTERING +REFILTERS +REFINABLE +REFINANCE +REFINANCED +REFINANCES +REFINANCING +REFIND +REFINDING +REFINDS +REFINE +REFINED +REFINEMENT +REFINEMENTS +REFINER +REFINERIES +REFINERS +REFINERY +REFINES +REFINING +REFINISH +REFINISHED +REFINISHER +REFINISHERS +REFINISHES +REFINISHING +REFIRE +REFIRED +REFIRES +REFIRING +REFIT +REFITS +REFITTED +REFITTING +REFIX +REFIXED +REFIXES +REFIXING +REFLAG +REFLAGGED +REFLAGGING +REFLAGS +REFLATE +REFLATED +REFLATES +REFLATING +REFLATION +REFLATIONARY +REFLATIONS +REFLECT +REFLECTANCE +REFLECTANCES +REFLECTED +REFLECTING +REFLECTION +REFLECTIONAL +REFLECTIONS +REFLECTIVE +REFLECTIVELY +REFLECTIVENESS +REFLECTIVITIES +REFLECTIVITY +REFLECTOMETER +REFLECTOMETERS +REFLECTOMETRIES +REFLECTOMETRY +REFLECTOR +REFLECTORIZE +REFLECTORIZED +REFLECTORIZES +REFLECTORIZING +REFLECTORS +REFLECTS +REFLET +REFLETS +REFLEW +REFLEX +REFLEXED +REFLEXES +REFLEXING +REFLEXION +REFLEXIONS +REFLEXIVE +REFLEXIVELY +REFLEXIVENESS +REFLEXIVENESSES +REFLEXIVES +REFLEXIVITIES +REFLEXIVITY +REFLEXLY +REFLEXOLOGIES +REFLEXOLOGY +REFLIES +REFLOAT +REFLOATED +REFLOATING +REFLOATS +REFLOOD +REFLOODED +REFLOODING +REFLOODS +REFLOW +REFLOWED +REFLOWER +REFLOWERED +REFLOWERING +REFLOWERS +REFLOWING +REFLOWN +REFLOWS +REFLUENCE +REFLUENCES +REFLUENT +REFLUX +REFLUXED +REFLUXES +REFLUXING +REFLY +REFLYING +REFOCUS +REFOCUSED +REFOCUSES +REFOCUSING +REFOCUSSED +REFOCUSSES +REFOCUSSING +REFOLD +REFOLDED +REFOLDING +REFOLDS +REFOREST +REFORESTATION +REFORESTATIONS +REFORESTED +REFORESTING +REFORESTS +REFORGE +REFORGED +REFORGES +REFORGING +REFORM +REFORMABILITIES +REFORMABILITY +REFORMABLE +REFORMAT +REFORMATE +REFORMATES +REFORMATION +REFORMATIONAL +REFORMATIONS +REFORMATIVE +REFORMATORIES +REFORMATORY +REFORMATS +REFORMATTED +REFORMATTING +REFORMED +REFORMER +REFORMERS +REFORMING +REFORMISM +REFORMISMS +REFORMIST +REFORMISTS +REFORMS +REFORMULATE +REFORMULATED +REFORMULATES +REFORMULATING +REFORMULATION +REFORMULATIONS +REFORTIFICATION +REFORTIFIED +REFORTIFIES +REFORTIFY +REFORTIFYING +REFOUGHT +REFOUND +REFOUNDATION +REFOUNDATIONS +REFOUNDED +REFOUNDING +REFOUNDS +REFRACT +REFRACTED +REFRACTILE +REFRACTING +REFRACTION +REFRACTIONS +REFRACTIVE +REFRACTIVELY +REFRACTIVENESS +REFRACTIVITIES +REFRACTIVITY +REFRACTOMETER +REFRACTOMETERS +REFRACTOMETRIC +REFRACTOMETRIES +REFRACTOMETRY +REFRACTOR +REFRACTORIES +REFRACTORILY +REFRACTORINESS +REFRACTORS +REFRACTORY +REFRACTS +REFRAIN +REFRAINED +REFRAINER +REFRAINERS +REFRAINING +REFRAINMENT +REFRAINMENTS +REFRAINS +REFRAME +REFRAMED +REFRAMES +REFRAMING +REFRANGIBILITY +REFRANGIBLE +REFRANGIBLENESS +REFREEZE +REFREEZES +REFREEZING +REFRESH +REFRESHED +REFRESHEN +REFRESHENED +REFRESHENING +REFRESHENS +REFRESHER +REFRESHERS +REFRESHES +REFRESHING +REFRESHINGLY +REFRESHMENT +REFRESHMENTS +REFRIED +REFRIES +REFRIGERANT +REFRIGERANTS +REFRIGERATE +REFRIGERATED +REFRIGERATES +REFRIGERATING +REFRIGERATION +REFRIGERATIONS +REFRIGERATOR +REFRIGERATORS +REFRONT +REFRONTED +REFRONTING +REFRONTS +REFROZE +REFROZEN +REFRY +REFRYING +REFS +REFT +REFUEL +REFUELED +REFUELING +REFUELLED +REFUELLING +REFUELS +REFUGE +REFUGED +REFUGEE +REFUGEEISM +REFUGEEISMS +REFUGEES +REFUGES +REFUGIA +REFUGING +REFUGIUM +REFULGENCE +REFULGENCES +REFULGENT +REFUND +REFUNDABILITIES +REFUNDABILITY +REFUNDABLE +REFUNDED +REFUNDER +REFUNDERS +REFUNDING +REFUNDS +REFURBISH +REFURBISHED +REFURBISHER +REFURBISHERS +REFURBISHES +REFURBISHING +REFURBISHMENT +REFURBISHMENTS +REFURNISH +REFURNISHED +REFURNISHES +REFURNISHING +REFUSABLE +REFUSAL +REFUSALS +REFUSE +REFUSED +REFUSENIK +REFUSENIKS +REFUSER +REFUSERS +REFUSES +REFUSING +REFUSNIK +REFUSNIKS +REFUTABLE +REFUTABLY +REFUTAL +REFUTALS +REFUTATION +REFUTATIONS +REFUTE +REFUTED +REFUTER +REFUTERS +REFUTES +REFUTING +REG +REGAIN +REGAINED +REGAINER +REGAINERS +REGAINING +REGAINS +REGAL +REGALE +REGALED +REGALER +REGALERS +REGALES +REGALIA +REGALING +REGALITIES +REGALITY +REGALLY +REGALNESS +REGALNESSES +REGARD +REGARDANT +REGARDED +REGARDFUL +REGARDFULLY +REGARDFULNESS +REGARDFULNESSES +REGARDING +REGARDLESS +REGARDLESSLY +REGARDLESSNESS +REGARDS +REGATHER +REGATHERED +REGATHERING +REGATHERS +REGATTA +REGATTAS +REGAUGE +REGAUGED +REGAUGES +REGAUGING +REGAVE +REGEAR +REGEARED +REGEARING +REGEARS +REGELATE +REGELATED +REGELATES +REGELATING +REGENCIES +REGENCY +REGENERABLE +REGENERACIES +REGENERACY +REGENERATE +REGENERATED +REGENERATELY +REGENERATENESS +REGENERATES +REGENERATING +REGENERATION +REGENERATIONS +REGENERATIVE +REGENERATOR +REGENERATORS +REGENT +REGENTAL +REGENTS +REGES +REGGAE +REGGAES +REGICIDAL +REGICIDE +REGICIDES +REGILD +REGILDED +REGILDING +REGILDS +REGILT +REGIME +REGIMEN +REGIMENS +REGIMENT +REGIMENTAL +REGIMENTALS +REGIMENTATION +REGIMENTATIONS +REGIMENTED +REGIMENTING +REGIMENTS +REGIMES +REGINA +REGINAE +REGINAL +REGINAS +REGION +REGIONAL +REGIONALISM +REGIONALISMS +REGIONALIST +REGIONALISTIC +REGIONALISTS +REGIONALIZATION +REGIONALIZE +REGIONALIZED +REGIONALIZES +REGIONALIZING +REGIONALLY +REGIONALS +REGIONS +REGISSEUR +REGISSEURS +REGISTER +REGISTERABLE +REGISTERED +REGISTERING +REGISTERS +REGISTRABLE +REGISTRANT +REGISTRANTS +REGISTRAR +REGISTRARS +REGISTRATION +REGISTRATIONS +REGISTRIES +REGISTRY +REGIUS +REGIVE +REGIVEN +REGIVES +REGIVING +REGLAZE +REGLAZED +REGLAZES +REGLAZING +REGLET +REGLETS +REGLORIFIED +REGLORIFIES +REGLORIFY +REGLORIFYING +REGLOSS +REGLOSSED +REGLOSSES +REGLOSSING +REGLOW +REGLOWED +REGLOWING +REGLOWS +REGLUE +REGLUED +REGLUES +REGLUING +REGMA +REGMATA +REGNA +REGNAL +REGNANCIES +REGNANCY +REGNANT +REGNUM +REGOLITH +REGOLITHS +REGORGE +REGORGED +REGORGES +REGORGING +REGOSOL +REGOSOLS +REGRADE +REGRADED +REGRADES +REGRADING +REGRAFT +REGRAFTED +REGRAFTING +REGRAFTS +REGRANT +REGRANTED +REGRANTING +REGRANTS +REGRATE +REGRATED +REGRATES +REGRATING +REGREEN +REGREENED +REGREENING +REGREENS +REGREET +REGREETED +REGREETING +REGREETS +REGRESS +REGRESSED +REGRESSES +REGRESSING +REGRESSION +REGRESSIONS +REGRESSIVE +REGRESSIVELY +REGRESSIVENESS +REGRESSIVITIES +REGRESSIVITY +REGRESSOR +REGRESSORS +REGRET +REGRETFUL +REGRETFULLY +REGRETFULNESS +REGRETFULNESSES +REGRETS +REGRETTABLE +REGRETTABLY +REGRETTED +REGRETTER +REGRETTERS +REGRETTING +REGREW +REGRIND +REGRINDING +REGRINDS +REGROOM +REGROOMED +REGROOMING +REGROOMS +REGROOVE +REGROOVED +REGROOVES +REGROOVING +REGROUND +REGROUP +REGROUPED +REGROUPING +REGROUPS +REGROW +REGROWING +REGROWN +REGROWS +REGROWTH +REGROWTHS +REGS +REGULABLE +REGULAR +REGULARITIES +REGULARITY +REGULARIZATION +REGULARIZATIONS +REGULARIZE +REGULARIZED +REGULARIZES +REGULARIZING +REGULARLY +REGULARS +REGULATE +REGULATED +REGULATES +REGULATING +REGULATION +REGULATIONS +REGULATIVE +REGULATOR +REGULATORS +REGULATORY +REGULI +REGULINE +REGULUS +REGULUSES +REGURGITATE +REGURGITATED +REGURGITATES +REGURGITATING +REGURGITATION +REGURGITATIONS +REHAB +REHABBED +REHABBER +REHABBERS +REHABBING +REHABILITANT +REHABILITANTS +REHABILITATE +REHABILITATED +REHABILITATES +REHABILITATING +REHABILITATION +REHABILITATIONS +REHABILITATIVE +REHABILITATOR +REHABILITATORS +REHABS +REHAMMER +REHAMMERED +REHAMMERING +REHAMMERS +REHANDLE +REHANDLED +REHANDLES +REHANDLING +REHANG +REHANGED +REHANGING +REHANGS +REHARDEN +REHARDENED +REHARDENING +REHARDENS +REHASH +REHASHED +REHASHES +REHASHING +REHEAR +REHEARD +REHEARING +REHEARINGS +REHEARS +REHEARSAL +REHEARSALS +REHEARSE +REHEARSED +REHEARSER +REHEARSERS +REHEARSES +REHEARSING +REHEAT +REHEATED +REHEATER +REHEATERS +REHEATING +REHEATS +REHEEL +REHEELED +REHEELING +REHEELS +REHEM +REHEMMED +REHEMMING +REHEMS +REHINGE +REHINGED +REHINGES +REHINGING +REHIRE +REHIRED +REHIRES +REHIRING +REHOBOAM +REHOBOAMS +REHOSPITALIZE +REHOSPITALIZED +REHOSPITALIZES +REHOSPITALIZING +REHOUSE +REHOUSED +REHOUSES +REHOUSING +REHUMANIZE +REHUMANIZED +REHUMANIZES +REHUMANIZING +REHUNG +REHYDRATABLE +REHYDRATE +REHYDRATED +REHYDRATES +REHYDRATING +REHYDRATION +REHYDRATIONS +REHYPNOTIZE +REHYPNOTIZED +REHYPNOTIZES +REHYPNOTIZING +REI +REICHSMARK +REICHSMARKS +REIDENTIFIED +REIDENTIFIES +REIDENTIFY +REIDENTIFYING +REIF +REIFICATION +REIFICATIONS +REIFIED +REIFIER +REIFIERS +REIFIES +REIFS +REIFY +REIFYING +REIGN +REIGNED +REIGNING +REIGNITE +REIGNITED +REIGNITES +REIGNITING +REIGNITION +REIGNITIONS +REIGNS +REIMAGE +REIMAGED +REIMAGES +REIMAGINE +REIMAGINED +REIMAGINES +REIMAGING +REIMAGINING +REIMBURSABLE +REIMBURSE +REIMBURSED +REIMBURSEMENT +REIMBURSEMENTS +REIMBURSES +REIMBURSING +REIMMERSE +REIMMERSED +REIMMERSES +REIMMERSING +REIMPLANT +REIMPLANTATION +REIMPLANTATIONS +REIMPLANTED +REIMPLANTING +REIMPLANTS +REIMPORT +REIMPORTATION +REIMPORTATIONS +REIMPORTED +REIMPORTING +REIMPORTS +REIMPOSE +REIMPOSED +REIMPOSES +REIMPOSING +REIMPOSITION +REIMPOSITIONS +REIMPRESSION +REIMPRESSIONS +REIN +REINCARNATE +REINCARNATED +REINCARNATES +REINCARNATING +REINCARNATION +REINCARNATIONS +REINCITE +REINCITED +REINCITES +REINCITING +REINCORPORATE +REINCORPORATED +REINCORPORATES +REINCORPORATING +REINCORPORATION +REINCUR +REINCURRED +REINCURRING +REINCURS +REINDEER +REINDEERS +REINDEX +REINDEXED +REINDEXES +REINDEXING +REINDICT +REINDICTED +REINDICTING +REINDICTMENT +REINDICTMENTS +REINDICTS +REINDUCE +REINDUCED +REINDUCES +REINDUCING +REINDUCT +REINDUCTED +REINDUCTING +REINDUCTS +REINDUSTRIALIZE +REINED +REINFECT +REINFECTED +REINFECTING +REINFECTION +REINFECTIONS +REINFECTS +REINFESTATION +REINFESTATIONS +REINFLAME +REINFLAMED +REINFLAMES +REINFLAMING +REINFLATE +REINFLATED +REINFLATES +REINFLATING +REINFLATION +REINFLATIONS +REINFORCE +REINFORCEABLE +REINFORCED +REINFORCEMENT +REINFORCEMENTS +REINFORCER +REINFORCERS +REINFORCES +REINFORCING +REINFORM +REINFORMED +REINFORMING +REINFORMS +REINFUSE +REINFUSED +REINFUSES +REINFUSING +REINHABIT +REINHABITED +REINHABITING +REINHABITS +REINING +REINITIATE +REINITIATED +REINITIATES +REINITIATING +REINJECT +REINJECTED +REINJECTING +REINJECTION +REINJECTIONS +REINJECTS +REINJURE +REINJURED +REINJURES +REINJURIES +REINJURING +REINJURY +REINK +REINKED +REINKING +REINKS +REINLESS +REINNERVATE +REINNERVATED +REINNERVATES +REINNERVATING +REINNERVATION +REINNERVATIONS +REINOCULATE +REINOCULATED +REINOCULATES +REINOCULATING +REINOCULATION +REINOCULATIONS +REINS +REINSERT +REINSERTED +REINSERTING +REINSERTION +REINSERTIONS +REINSERTS +REINSMAN +REINSMEN +REINSPECT +REINSPECTED +REINSPECTING +REINSPECTION +REINSPECTIONS +REINSPECTS +REINSPIRE +REINSPIRED +REINSPIRES +REINSPIRING +REINSTALL +REINSTALLATION +REINSTALLATIONS +REINSTALLED +REINSTALLING +REINSTALLS +REINSTATE +REINSTATED +REINSTATEMENT +REINSTATEMENTS +REINSTATES +REINSTATING +REINSTITUTE +REINSTITUTED +REINSTITUTES +REINSTITUTING +REINSURANCE +REINSURANCES +REINSURE +REINSURED +REINSURER +REINSURERS +REINSURES +REINSURING +REINTEGRATE +REINTEGRATED +REINTEGRATES +REINTEGRATING +REINTEGRATION +REINTEGRATIONS +REINTEGRATIVE +REINTER +REINTERPRET +REINTERPRETED +REINTERPRETING +REINTERPRETS +REINTERRED +REINTERRING +REINTERS +REINTERVIEW +REINTERVIEWED +REINTERVIEWING +REINTERVIEWS +REINTRODUCE +REINTRODUCED +REINTRODUCES +REINTRODUCING +REINTRODUCTION +REINTRODUCTIONS +REINVADE +REINVADED +REINVADES +REINVADING +REINVASION +REINVASIONS +REINVENT +REINVENTED +REINVENTING +REINVENTION +REINVENTIONS +REINVENTS +REINVEST +REINVESTED +REINVESTIGATE +REINVESTIGATED +REINVESTIGATES +REINVESTIGATING +REINVESTIGATION +REINVESTING +REINVESTMENT +REINVESTMENTS +REINVESTS +REINVIGORATE +REINVIGORATED +REINVIGORATES +REINVIGORATING +REINVIGORATION +REINVIGORATIONS +REINVIGORATOR +REINVIGORATORS +REINVITE +REINVITED +REINVITES +REINVITING +REINVOKE +REINVOKED +REINVOKES +REINVOKING +REINVOLVE +REINVOLVED +REINVOLVES +REINVOLVING +REIS +REISSUE +REISSUED +REISSUER +REISSUERS +REISSUES +REISSUING +REITBOK +REITBOKS +REITERATE +REITERATED +REITERATES +REITERATING +REITERATION +REITERATIONS +REITERATIVE +REITERATIVELY +REIVE +REIVED +REIVER +REIVERS +REIVES +REIVING +REJACKET +REJACKETED +REJACKETING +REJACKETS +REJECT +REJECTED +REJECTEE +REJECTEES +REJECTER +REJECTERS +REJECTING +REJECTINGLY +REJECTION +REJECTIONS +REJECTIVE +REJECTOR +REJECTORS +REJECTS +REJIG +REJIGGED +REJIGGER +REJIGGERED +REJIGGERING +REJIGGERS +REJIGGING +REJIGS +REJOICE +REJOICED +REJOICER +REJOICERS +REJOICES +REJOICING +REJOICINGLY +REJOICINGS +REJOIN +REJOINDER +REJOINDERS +REJOINED +REJOINING +REJOINS +REJUDGE +REJUDGED +REJUDGES +REJUDGING +REJUGGLE +REJUGGLED +REJUGGLES +REJUGGLING +REJUSTIFIED +REJUSTIFIES +REJUSTIFY +REJUSTIFYING +REJUVENATE +REJUVENATED +REJUVENATES +REJUVENATING +REJUVENATION +REJUVENATIONS +REJUVENATOR +REJUVENATORS +REJUVENESCENCE +REJUVENESCENCES +REJUVENESCENT +REKEY +REKEYBOARD +REKEYBOARDED +REKEYBOARDING +REKEYBOARDS +REKEYED +REKEYING +REKEYS +REKINDLE +REKINDLED +REKINDLES +REKINDLING +REKNIT +REKNITS +REKNITTED +REKNITTING +REKNOT +REKNOTS +REKNOTTED +REKNOTTING +RELABEL +RELABELED +RELABELING +RELABELLED +RELABELLING +RELABELS +RELACE +RELACED +RELACES +RELACING +RELACQUER +RELACQUERED +RELACQUERING +RELACQUERS +RELAID +RELAND +RELANDED +RELANDING +RELANDS +RELANDSCAPE +RELANDSCAPED +RELANDSCAPES +RELANDSCAPING +RELAPSE +RELAPSED +RELAPSER +RELAPSERS +RELAPSES +RELAPSING +RELATABLE +RELATE +RELATED +RELATEDLY +RELATEDNESS +RELATEDNESSES +RELATER +RELATERS +RELATES +RELATING +RELATION +RELATIONAL +RELATIONALLY +RELATIONS +RELATIONSHIP +RELATIONSHIPS +RELATIVE +RELATIVELY +RELATIVES +RELATIVISM +RELATIVISMS +RELATIVIST +RELATIVISTIC +RELATIVISTS +RELATIVITIES +RELATIVITY +RELATIVIZE +RELATIVIZED +RELATIVIZES +RELATIVIZING +RELATOR +RELATORS +RELAUNCH +RELAUNCHED +RELAUNCHES +RELAUNCHING +RELAUNDER +RELAUNDERED +RELAUNDERING +RELAUNDERS +RELAX +RELAXABLE +RELAXANT +RELAXANTS +RELAXATION +RELAXATIONS +RELAXED +RELAXEDLY +RELAXEDNESS +RELAXEDNESSES +RELAXER +RELAXERS +RELAXES +RELAXIN +RELAXING +RELAXINS +RELAY +RELAYED +RELAYING +RELAYS +RELEARN +RELEARNED +RELEARNING +RELEARNS +RELEARNT +RELEASABLE +RELEASE +RELEASED +RELEASER +RELEASERS +RELEASES +RELEASING +RELEGABLE +RELEGATE +RELEGATED +RELEGATES +RELEGATING +RELEGATION +RELEGATIONS +RELEND +RELENDING +RELENDS +RELENT +RELENTED +RELENTING +RELENTLESS +RELENTLESSLY +RELENTLESSNESS +RELENTS +RELET +RELETS +RELETTER +RELETTERED +RELETTERING +RELETTERS +RELETTING +RELEVANCE +RELEVANCES +RELEVANCIES +RELEVANCY +RELEVANT +RELEVANTLY +RELEVE +RELEVES +RELIABILITIES +RELIABILITY +RELIABLE +RELIABLENESS +RELIABLENESSES +RELIABLES +RELIABLY +RELIANCE +RELIANCES +RELIANT +RELIANTLY +RELIC +RELICENSE +RELICENSED +RELICENSES +RELICENSING +RELICENSURE +RELICENSURES +RELICS +RELICT +RELICTION +RELICTIONS +RELICTS +RELIED +RELIEF +RELIEFS +RELIER +RELIERS +RELIES +RELIEVABLE +RELIEVE +RELIEVED +RELIEVEDLY +RELIEVER +RELIEVERS +RELIEVES +RELIEVING +RELIEVO +RELIEVOS +RELIGHT +RELIGHTED +RELIGHTING +RELIGHTS +RELIGION +RELIGIONIST +RELIGIONISTS +RELIGIONLESS +RELIGIONS +RELIGIOSE +RELIGIOSITIES +RELIGIOSITY +RELIGIOUS +RELIGIOUSLY +RELIGIOUSNESS +RELIGIOUSNESSES +RELINE +RELINED +RELINES +RELINING +RELINK +RELINKED +RELINKING +RELINKS +RELINQUISH +RELINQUISHED +RELINQUISHES +RELINQUISHING +RELINQUISHMENT +RELINQUISHMENTS +RELIQUARIES +RELIQUARY +RELIQUE +RELIQUEFIED +RELIQUEFIES +RELIQUEFY +RELIQUEFYING +RELIQUES +RELIQUIAE +RELISH +RELISHABLE +RELISHED +RELISHES +RELISHING +RELIST +RELISTED +RELISTING +RELISTS +RELIT +RELIVABLE +RELIVE +RELIVED +RELIVES +RELIVING +RELLENO +RELLENOS +RELOAD +RELOADED +RELOADER +RELOADERS +RELOADING +RELOADS +RELOAN +RELOANED +RELOANING +RELOANS +RELOCATABLE +RELOCATE +RELOCATED +RELOCATEE +RELOCATEES +RELOCATES +RELOCATING +RELOCATION +RELOCATIONS +RELOCK +RELOCKED +RELOCKING +RELOCKS +RELOOK +RELOOKED +RELOOKING +RELOOKS +RELUBRICATE +RELUBRICATED +RELUBRICATES +RELUBRICATING +RELUBRICATION +RELUBRICATIONS +RELUCENT +RELUCT +RELUCTANCE +RELUCTANCES +RELUCTANCIES +RELUCTANCY +RELUCTANT +RELUCTANTLY +RELUCTATE +RELUCTATED +RELUCTATES +RELUCTATING +RELUCTATION +RELUCTATIONS +RELUCTED +RELUCTING +RELUCTS +RELUME +RELUMED +RELUMES +RELUMINE +RELUMINED +RELUMINES +RELUMING +RELUMINING +RELY +RELYING +REM +REMADE +REMAIL +REMAILED +REMAILING +REMAILS +REMAIN +REMAINDER +REMAINDERED +REMAINDERING +REMAINDERS +REMAINED +REMAINING +REMAINS +REMAKE +REMAKER +REMAKERS +REMAKES +REMAKING +REMAN +REMAND +REMANDED +REMANDING +REMANDS +REMANENCE +REMANENCES +REMANENT +REMANNED +REMANNING +REMANS +REMANUFACTURE +REMANUFACTURED +REMANUFACTURER +REMANUFACTURERS +REMANUFACTURES +REMANUFACTURING +REMAP +REMAPPED +REMAPPING +REMAPS +REMARK +REMARKABLE +REMARKABLENESS +REMARKABLY +REMARKED +REMARKER +REMARKERS +REMARKET +REMARKETED +REMARKETING +REMARKETS +REMARKING +REMARKS +REMARQUE +REMARQUES +REMARRIAGE +REMARRIAGES +REMARRIED +REMARRIES +REMARRY +REMARRYING +REMASTER +REMASTERED +REMASTERING +REMASTERS +REMATCH +REMATCHED +REMATCHES +REMATCHING +REMATE +REMATED +REMATERIALIZE +REMATERIALIZED +REMATERIALIZES +REMATERIALIZING +REMATES +REMATING +REMEASURE +REMEASURED +REMEASUREMENT +REMEASUREMENTS +REMEASURES +REMEASURING +REMEDIABILITIES +REMEDIABILITY +REMEDIABLE +REMEDIAL +REMEDIALLY +REMEDIATE +REMEDIATED +REMEDIATES +REMEDIATING +REMEDIATION +REMEDIATIONS +REMEDIED +REMEDIES +REMEDILESS +REMEDY +REMEDYING +REMEET +REMEETING +REMEETS +REMELT +REMELTED +REMELTING +REMELTS +REMEMBER +REMEMBERABILITY +REMEMBERABLE +REMEMBERED +REMEMBERER +REMEMBERERS +REMEMBERING +REMEMBERS +REMEMBRANCE +REMEMBRANCER +REMEMBRANCERS +REMEMBRANCES +REMEND +REMENDED +REMENDING +REMENDS +REMERGE +REMERGED +REMERGES +REMERGING +REMET +REMEX +REMIGES +REMIGIAL +REMIGRATE +REMIGRATED +REMIGRATES +REMIGRATING +REMIGRATION +REMIGRATIONS +REMILITARIZE +REMILITARIZED +REMILITARIZES +REMILITARIZING +REMIND +REMINDED +REMINDER +REMINDERS +REMINDFUL +REMINDING +REMINDS +REMINISCE +REMINISCED +REMINISCENCE +REMINISCENCES +REMINISCENT +REMINISCENTIAL +REMINISCENTLY +REMINISCER +REMINISCERS +REMINISCES +REMINISCING +REMINT +REMINTED +REMINTING +REMINTS +REMISE +REMISED +REMISES +REMISING +REMISS +REMISSIBLE +REMISSIBLY +REMISSION +REMISSIONS +REMISSIVE +REMISSLY +REMISSNESS +REMISSNESSES +REMIT +REMITMENT +REMITMENTS +REMITS +REMITTABLE +REMITTAL +REMITTALS +REMITTANCE +REMITTANCES +REMITTED +REMITTENT +REMITTER +REMITTERS +REMITTING +REMITTOR +REMITTORS +REMIX +REMIXED +REMIXES +REMIXING +REMIXT +REMIXTURE +REMIXTURES +REMNANT +REMNANTAL +REMNANTS +REMOBILIZATION +REMOBILIZATIONS +REMOBILIZE +REMOBILIZED +REMOBILIZES +REMOBILIZING +REMODEL +REMODELED +REMODELER +REMODELERS +REMODELING +REMODELLED +REMODELLING +REMODELS +REMODIFIED +REMODIFIES +REMODIFY +REMODIFYING +REMOISTEN +REMOISTENED +REMOISTENING +REMOISTENS +REMOLADE +REMOLADES +REMOLD +REMOLDED +REMOLDING +REMOLDS +REMONETIZATION +REMONETIZATIONS +REMONETIZE +REMONETIZED +REMONETIZES +REMONETIZING +REMONSTRANCE +REMONSTRANCES +REMONSTRANT +REMONSTRANTLY +REMONSTRANTS +REMONSTRATE +REMONSTRATED +REMONSTRATES +REMONSTRATING +REMONSTRATION +REMONSTRATIONS +REMONSTRATIVE +REMONSTRATIVELY +REMONSTRATOR +REMONSTRATORS +REMONTANT +REMONTANTS +REMORA +REMORAS +REMORID +REMORSE +REMORSEFUL +REMORSEFULLY +REMORSEFULNESS +REMORSELESS +REMORSELESSLY +REMORSELESSNESS +REMORSES +REMOTE +REMOTELY +REMOTENESS +REMOTENESSES +REMOTER +REMOTES +REMOTEST +REMOTION +REMOTIONS +REMOTIVATE +REMOTIVATED +REMOTIVATES +REMOTIVATING +REMOTIVATION +REMOTIVATIONS +REMOULADE +REMOULADES +REMOUNT +REMOUNTED +REMOUNTING +REMOUNTS +REMOVABILITIES +REMOVABILITY +REMOVABLE +REMOVABLENESS +REMOVABLENESSES +REMOVABLY +REMOVAL +REMOVALS +REMOVE +REMOVEABLE +REMOVED +REMOVEDLY +REMOVER +REMOVERS +REMOVES +REMOVING +REMS +REMUDA +REMUDAS +REMUNERATE +REMUNERATED +REMUNERATES +REMUNERATING +REMUNERATION +REMUNERATIONS +REMUNERATIVE +REMUNERATIVELY +REMUNERATOR +REMUNERATORS +REMUNERATORY +REMYTHOLOGIZE +REMYTHOLOGIZED +REMYTHOLOGIZES +REMYTHOLOGIZING +RENAIL +RENAILED +RENAILING +RENAILS +RENAISSANCE +RENAISSANCES +RENAL +RENAME +RENAMED +RENAMES +RENAMING +RENASCENCE +RENASCENCES +RENASCENT +RENATIONALIZE +RENATIONALIZED +RENATIONALIZES +RENATIONALIZING +RENATURATION +RENATURATIONS +RENATURE +RENATURED +RENATURES +RENATURING +RENCONTRE +RENCONTRES +RENCOUNTER +RENCOUNTERED +RENCOUNTERING +RENCOUNTERS +REND +RENDED +RENDER +RENDERABLE +RENDERED +RENDERER +RENDERERS +RENDERING +RENDERINGS +RENDERS +RENDEZVOUS +RENDEZVOUSED +RENDEZVOUSES +RENDEZVOUSING +RENDIBLE +RENDING +RENDITION +RENDITIONS +RENDS +RENDZINA +RENDZINAS +RENEGADE +RENEGADED +RENEGADES +RENEGADING +RENEGADO +RENEGADOES +RENEGADOS +RENEGE +RENEGED +RENEGER +RENEGERS +RENEGES +RENEGING +RENEGOTIABLE +RENEGOTIATE +RENEGOTIATED +RENEGOTIATES +RENEGOTIATING +RENEGOTIATION +RENEGOTIATIONS +RENEST +RENESTED +RENESTING +RENESTS +RENEW +RENEWABILITIES +RENEWABILITY +RENEWABLE +RENEWABLES +RENEWABLY +RENEWAL +RENEWALS +RENEWED +RENEWEDLY +RENEWER +RENEWERS +RENEWING +RENEWS +RENIFORM +RENIG +RENIGGED +RENIGGING +RENIGS +RENIN +RENINS +RENITENCE +RENITENCES +RENITENCIES +RENITENCY +RENITENT +RENMINBI +RENNASE +RENNASES +RENNET +RENNETS +RENNIN +RENNINS +RENOGRAM +RENOGRAMS +RENOGRAPHIC +RENOGRAPHIES +RENOGRAPHY +RENOMINATE +RENOMINATED +RENOMINATES +RENOMINATING +RENOMINATION +RENOMINATIONS +RENOTIFIED +RENOTIFIES +RENOTIFY +RENOTIFYING +RENOUNCE +RENOUNCED +RENOUNCEMENT +RENOUNCEMENTS +RENOUNCER +RENOUNCERS +RENOUNCES +RENOUNCING +RENOVASCULAR +RENOVATE +RENOVATED +RENOVATES +RENOVATING +RENOVATION +RENOVATIONS +RENOVATIVE +RENOVATOR +RENOVATORS +RENOWN +RENOWNED +RENOWNING +RENOWNS +RENT +RENTABILITIES +RENTABILITY +RENTABLE +RENTAL +RENTALS +RENTE +RENTED +RENTER +RENTERS +RENTES +RENTIER +RENTIERS +RENTING +RENTS +RENUMBER +RENUMBERED +RENUMBERING +RENUMBERS +RENUNCIATION +RENUNCIATIONS +RENUNCIATIVE +RENUNCIATORY +RENVOI +RENVOIS +REOBJECT +REOBJECTED +REOBJECTING +REOBJECTS +REOBSERVE +REOBSERVED +REOBSERVES +REOBSERVING +REOBTAIN +REOBTAINED +REOBTAINING +REOBTAINS +REOCCUPATION +REOCCUPATIONS +REOCCUPIED +REOCCUPIES +REOCCUPY +REOCCUPYING +REOCCUR +REOCCURRED +REOCCURRENCE +REOCCURRENCES +REOCCURRING +REOCCURS +REOFFER +REOFFERED +REOFFERING +REOFFERS +REOIL +REOILED +REOILING +REOILS +REOPEN +REOPENED +REOPENING +REOPENS +REOPERATE +REOPERATED +REOPERATES +REOPERATING +REOPERATION +REOPERATIONS +REOPPOSE +REOPPOSED +REOPPOSES +REOPPOSING +REORCHESTRATE +REORCHESTRATED +REORCHESTRATES +REORCHESTRATING +REORCHESTRATION +REORDAIN +REORDAINED +REORDAINING +REORDAINS +REORDER +REORDERED +REORDERING +REORDERS +REORGANIZATION +REORGANIZATIONS +REORGANIZE +REORGANIZED +REORGANIZER +REORGANIZERS +REORGANIZES +REORGANIZING +REORIENT +REORIENTATE +REORIENTATED +REORIENTATES +REORIENTATING +REORIENTATION +REORIENTATIONS +REORIENTED +REORIENTING +REORIENTS +REOUTFIT +REOUTFITS +REOUTFITTED +REOUTFITTING +REOVIRUS +REOVIRUSES +REOXIDATION +REOXIDATIONS +REOXIDIZE +REOXIDIZED +REOXIDIZES +REOXIDIZING +REP +REPACIFIED +REPACIFIES +REPACIFY +REPACIFYING +REPACK +REPACKAGE +REPACKAGED +REPACKAGER +REPACKAGERS +REPACKAGES +REPACKAGING +REPACKED +REPACKING +REPACKS +REPAID +REPAINT +REPAINTED +REPAINTING +REPAINTS +REPAIR +REPAIRABILITIES +REPAIRABILITY +REPAIRABLE +REPAIRED +REPAIRER +REPAIRERS +REPAIRING +REPAIRMAN +REPAIRMEN +REPAIRS +REPAND +REPANDLY +REPANEL +REPANELED +REPANELING +REPANELLED +REPANELLING +REPANELS +REPAPER +REPAPERED +REPAPERING +REPAPERS +REPARABLE +REPARABLY +REPARATION +REPARATIONS +REPARATIVE +REPARK +REPARKED +REPARKING +REPARKS +REPARTEE +REPARTEES +REPARTITION +REPARTITIONS +REPASS +REPASSAGE +REPASSAGES +REPASSED +REPASSES +REPASSING +REPAST +REPASTED +REPASTING +REPASTS +REPATCH +REPATCHED +REPATCHES +REPATCHING +REPATRIATE +REPATRIATED +REPATRIATES +REPATRIATING +REPATRIATION +REPATRIATIONS +REPATTERN +REPATTERNED +REPATTERNING +REPATTERNS +REPAVE +REPAVED +REPAVES +REPAVING +REPAY +REPAYABLE +REPAYING +REPAYMENT +REPAYMENTS +REPAYS +REPEAL +REPEALABLE +REPEALED +REPEALER +REPEALERS +REPEALING +REPEALS +REPEAT +REPEATABILITIES +REPEATABILITY +REPEATABLE +REPEATED +REPEATEDLY +REPEATER +REPEATERS +REPEATING +REPEATS +REPECHAGE +REPECHAGES +REPEG +REPEGGED +REPEGGING +REPEGS +REPEL +REPELLANT +REPELLANTS +REPELLED +REPELLENCIES +REPELLENCY +REPELLENT +REPELLENTLY +REPELLENTS +REPELLER +REPELLERS +REPELLING +REPELS +REPENT +REPENTANCE +REPENTANCES +REPENTANT +REPENTANTLY +REPENTED +REPENTER +REPENTERS +REPENTING +REPENTS +REPEOPLE +REPEOPLED +REPEOPLES +REPEOPLING +REPERCUSSION +REPERCUSSIONS +REPERCUSSIVE +REPERK +REPERKED +REPERKING +REPERKS +REPERTOIRE +REPERTOIRES +REPERTORIES +REPERTORY +REPETEND +REPETENDS +REPETITION +REPETITIONAL +REPETITIONS +REPETITIOUS +REPETITIOUSLY +REPETITIOUSNESS +REPETITIVE +REPETITIVELY +REPETITIVENESS +REPHOTOGRAPH +REPHOTOGRAPHED +REPHOTOGRAPHING +REPHOTOGRAPHS +REPHRASE +REPHRASED +REPHRASES +REPHRASING +REPIGMENT +REPIGMENTED +REPIGMENTING +REPIGMENTS +REPIN +REPINE +REPINED +REPINER +REPINERS +REPINES +REPINING +REPINNED +REPINNING +REPINS +REPLACE +REPLACEABLE +REPLACED +REPLACEMENT +REPLACEMENTS +REPLACER +REPLACERS +REPLACES +REPLACING +REPLAN +REPLANNED +REPLANNING +REPLANS +REPLANT +REPLANTATION +REPLANTATIONS +REPLANTED +REPLANTING +REPLANTS +REPLASTER +REPLASTERED +REPLASTERING +REPLASTERS +REPLATE +REPLATED +REPLATES +REPLATING +REPLAY +REPLAYED +REPLAYING +REPLAYS +REPLEAD +REPLEADED +REPLEADER +REPLEADERS +REPLEADING +REPLEADS +REPLED +REPLEDGE +REPLEDGED +REPLEDGES +REPLEDGING +REPLENISH +REPLENISHABLE +REPLENISHED +REPLENISHER +REPLENISHERS +REPLENISHES +REPLENISHING +REPLENISHMENT +REPLENISHMENTS +REPLETE +REPLETELY +REPLETENESS +REPLETENESSES +REPLETES +REPLETION +REPLETIONS +REPLEVIABLE +REPLEVIED +REPLEVIES +REPLEVIN +REPLEVINED +REPLEVINING +REPLEVINS +REPLEVY +REPLEVYING +REPLICA +REPLICABILITIES +REPLICABILITY +REPLICABLE +REPLICAS +REPLICASE +REPLICASES +REPLICATE +REPLICATED +REPLICATES +REPLICATING +REPLICATION +REPLICATIONS +REPLICATIVE +REPLICON +REPLICONS +REPLIED +REPLIER +REPLIERS +REPLIES +REPLOT +REPLOTS +REPLOTTED +REPLOTTING +REPLOW +REPLOWED +REPLOWING +REPLOWS +REPLUMB +REPLUMBED +REPLUMBING +REPLUMBS +REPLUNGE +REPLUNGED +REPLUNGES +REPLUNGING +REPLY +REPLYING +REPO +REPOLARIZATION +REPOLARIZATIONS +REPOLARIZE +REPOLARIZED +REPOLARIZES +REPOLARIZING +REPOLISH +REPOLISHED +REPOLISHES +REPOLISHING +REPOLL +REPOLLED +REPOLLING +REPOLLS +REPOPULARIZE +REPOPULARIZED +REPOPULARIZES +REPOPULARIZING +REPOPULATE +REPOPULATED +REPOPULATES +REPOPULATING +REPOPULATION +REPOPULATIONS +REPORT +REPORTABLE +REPORTAGE +REPORTAGES +REPORTED +REPORTEDLY +REPORTER +REPORTERS +REPORTING +REPORTORIAL +REPORTORIALLY +REPORTS +REPOS +REPOSAL +REPOSALS +REPOSE +REPOSED +REPOSEDLY +REPOSEFUL +REPOSEFULLY +REPOSEFULNESS +REPOSEFULNESSES +REPOSER +REPOSERS +REPOSES +REPOSING +REPOSIT +REPOSITED +REPOSITING +REPOSITION +REPOSITIONED +REPOSITIONING +REPOSITIONS +REPOSITORIES +REPOSITORY +REPOSITS +REPOSSESS +REPOSSESSED +REPOSSESSES +REPOSSESSING +REPOSSESSION +REPOSSESSIONS +REPOSSESSOR +REPOSSESSORS +REPOT +REPOTS +REPOTTED +REPOTTING +REPOUR +REPOURED +REPOURING +REPOURS +REPOUSSE +REPOUSSES +REPOWER +REPOWERED +REPOWERING +REPOWERS +REPP +REPPED +REPPING +REPPS +REPREHEND +REPREHENDED +REPREHENDING +REPREHENDS +REPREHENSIBLE +REPREHENSIBLY +REPREHENSION +REPREHENSIONS +REPREHENSIVE +REPRESENT +REPRESENTABLE +REPRESENTATION +REPRESENTATIONS +REPRESENTATIVE +REPRESENTATIVES +REPRESENTED +REPRESENTER +REPRESENTERS +REPRESENTING +REPRESENTS +REPRESS +REPRESSED +REPRESSER +REPRESSERS +REPRESSES +REPRESSIBILITY +REPRESSIBLE +REPRESSING +REPRESSION +REPRESSIONIST +REPRESSIONS +REPRESSIVE +REPRESSIVELY +REPRESSIVENESS +REPRESSOR +REPRESSORS +REPRESSURIZE +REPRESSURIZED +REPRESSURIZES +REPRESSURIZING +REPRICE +REPRICED +REPRICES +REPRICING +REPRIEVAL +REPRIEVALS +REPRIEVE +REPRIEVED +REPRIEVES +REPRIEVING +REPRIMAND +REPRIMANDED +REPRIMANDING +REPRIMANDS +REPRINT +REPRINTED +REPRINTER +REPRINTERS +REPRINTING +REPRINTS +REPRISAL +REPRISALS +REPRISE +REPRISED +REPRISES +REPRISING +REPRISTINATE +REPRISTINATED +REPRISTINATES +REPRISTINATING +REPRISTINATION +REPRISTINATIONS +REPRIVATIZATION +REPRIVATIZE +REPRIVATIZED +REPRIVATIZES +REPRIVATIZING +REPRO +REPROACH +REPROACHABLE +REPROACHED +REPROACHER +REPROACHERS +REPROACHES +REPROACHFUL +REPROACHFULLY +REPROACHFULNESS +REPROACHING +REPROACHINGLY +REPROBANCE +REPROBANCES +REPROBATE +REPROBATED +REPROBATES +REPROBATING +REPROBATION +REPROBATIONS +REPROBATIVE +REPROBATORY +REPROBE +REPROBED +REPROBES +REPROBING +REPROCESS +REPROCESSED +REPROCESSES +REPROCESSING +REPRODUCE +REPRODUCED +REPRODUCER +REPRODUCERS +REPRODUCES +REPRODUCIBILITY +REPRODUCIBLE +REPRODUCIBLES +REPRODUCIBLY +REPRODUCING +REPRODUCTION +REPRODUCTIONS +REPRODUCTIVE +REPRODUCTIVELY +REPRODUCTIVES +REPROGRAM +REPROGRAMED +REPROGRAMING +REPROGRAMMABLE +REPROGRAMMED +REPROGRAMMING +REPROGRAMS +REPROGRAPHER +REPROGRAPHERS +REPROGRAPHIC +REPROGRAPHICS +REPROGRAPHIES +REPROGRAPHY +REPROOF +REPROOFS +REPROS +REPROVAL +REPROVALS +REPROVE +REPROVED +REPROVER +REPROVERS +REPROVES +REPROVING +REPROVINGLY +REPROVISION +REPROVISIONED +REPROVISIONING +REPROVISIONS +REPS +REPTANT +REPTILE +REPTILES +REPTILIA +REPTILIAN +REPTILIANS +REPTILIUM +REPUBLIC +REPUBLICAN +REPUBLICANISM +REPUBLICANISMS +REPUBLICANIZE +REPUBLICANIZED +REPUBLICANIZES +REPUBLICANIZING +REPUBLICANS +REPUBLICATION +REPUBLICATIONS +REPUBLICS +REPUBLISH +REPUBLISHED +REPUBLISHER +REPUBLISHERS +REPUBLISHES +REPUBLISHING +REPUDIATE +REPUDIATED +REPUDIATES +REPUDIATING +REPUDIATION +REPUDIATIONIST +REPUDIATIONISTS +REPUDIATIONS +REPUDIATOR +REPUDIATORS +REPUGN +REPUGNANCE +REPUGNANCES +REPUGNANCIES +REPUGNANCY +REPUGNANT +REPUGNANTLY +REPUGNED +REPUGNING +REPUGNS +REPULSE +REPULSED +REPULSER +REPULSERS +REPULSES +REPULSING +REPULSION +REPULSIONS +REPULSIVE +REPULSIVELY +REPULSIVENESS +REPULSIVENESSES +REPUMP +REPUMPED +REPUMPING +REPUMPS +REPUNCTUATION +REPUNCTUATIONS +REPURCHASE +REPURCHASED +REPURCHASES +REPURCHASING +REPURIFIED +REPURIFIES +REPURIFY +REPURIFYING +REPURPOSE +REPURPOSED +REPURPOSES +REPURPOSING +REPURSUE +REPURSUED +REPURSUES +REPURSUING +REPUTABILITIES +REPUTABILITY +REPUTABLE +REPUTABLY +REPUTATION +REPUTATIONAL +REPUTATIONS +REPUTE +REPUTED +REPUTEDLY +REPUTES +REPUTING +REQUALIFIED +REQUALIFIES +REQUALIFY +REQUALIFYING +REQUEST +REQUESTED +REQUESTER +REQUESTERS +REQUESTING +REQUESTOR +REQUESTORS +REQUESTS +REQUIEM +REQUIEMS +REQUIESCAT +REQUIESCATS +REQUIN +REQUINS +REQUIRE +REQUIRED +REQUIREMENT +REQUIREMENTS +REQUIRER +REQUIRERS +REQUIRES +REQUIRING +REQUISITE +REQUISITENESS +REQUISITENESSES +REQUISITES +REQUISITION +REQUISITIONED +REQUISITIONING +REQUISITIONS +REQUITAL +REQUITALS +REQUITE +REQUITED +REQUITER +REQUITERS +REQUITES +REQUITING +RERACK +RERACKED +RERACKING +RERACKS +RERADIATE +RERADIATED +RERADIATES +RERADIATING +RERADIATION +RERADIATIONS +RERAISE +RERAISED +RERAISES +RERAISING +RERAN +REREAD +REREADING +REREADINGS +REREADS +REREBRACE +REREBRACES +RERECORD +RERECORDED +RERECORDING +RERECORDS +REREDOS +REREDOSES +REREGISTER +REREGISTERED +REREGISTERING +REREGISTERS +REREGISTRATION +REREGISTRATIONS +REREGULATE +REREGULATED +REREGULATES +REREGULATING +REREGULATION +REREGULATIONS +RERELEASE +RERELEASED +RERELEASES +RERELEASING +REREMICE +REREMIND +REREMINDED +REREMINDING +REREMINDS +REREMOUSE +RERENT +RERENTED +RERENTING +RERENTS +REREPEAT +REREPEATED +REREPEATING +REREPEATS +REREVIEW +REREVIEWED +REREVIEWING +REREVIEWS +REREWARD +REREWARDS +RERIG +RERIGGED +RERIGGING +RERIGS +RERISE +RERISEN +RERISES +RERISING +REROLL +REROLLED +REROLLER +REROLLERS +REROLLING +REROLLS +REROOF +REROOFED +REROOFING +REROOFS +REROSE +REROUTE +REROUTED +REROUTES +REROUTING +RERUN +RERUNNING +RERUNS +RES +RESADDLE +RESADDLED +RESADDLES +RESADDLING +RESAID +RESAIL +RESAILED +RESAILING +RESAILS +RESALABLE +RESALE +RESALES +RESALUTE +RESALUTED +RESALUTES +RESALUTING +RESAMPLE +RESAMPLED +RESAMPLES +RESAMPLING +RESAT +RESAW +RESAWED +RESAWING +RESAWN +RESAWS +RESAY +RESAYING +RESAYS +RESCALE +RESCALED +RESCALES +RESCALING +RESCHEDULE +RESCHEDULED +RESCHEDULES +RESCHEDULING +RESCHOOL +RESCHOOLED +RESCHOOLING +RESCHOOLS +RESCIND +RESCINDED +RESCINDER +RESCINDERS +RESCINDING +RESCINDMENT +RESCINDMENTS +RESCINDS +RESCISSION +RESCISSIONS +RESCISSORY +RESCORE +RESCORED +RESCORES +RESCORING +RESCREEN +RESCREENED +RESCREENING +RESCREENS +RESCRIPT +RESCRIPTS +RESCUABLE +RESCUE +RESCUED +RESCUER +RESCUERS +RESCUES +RESCUING +RESCULPT +RESCULPTED +RESCULPTING +RESCULPTS +RESEAL +RESEALABLE +RESEALED +RESEALING +RESEALS +RESEARCH +RESEARCHABLE +RESEARCHED +RESEARCHER +RESEARCHERS +RESEARCHES +RESEARCHING +RESEARCHIST +RESEARCHISTS +RESEASON +RESEASONED +RESEASONING +RESEASONS +RESEAT +RESEATED +RESEATING +RESEATS +RESEAU +RESEAUS +RESEAUX +RESECT +RESECTABILITIES +RESECTABILITY +RESECTABLE +RESECTED +RESECTING +RESECTION +RESECTIONS +RESECTS +RESECURE +RESECURED +RESECURES +RESECURING +RESEDA +RESEDAS +RESEE +RESEED +RESEEDED +RESEEDING +RESEEDS +RESEEING +RESEEK +RESEEKING +RESEEKS +RESEEN +RESEES +RESEGREGATE +RESEGREGATED +RESEGREGATES +RESEGREGATING +RESEGREGATION +RESEGREGATIONS +RESEIZE +RESEIZED +RESEIZES +RESEIZING +RESEIZURE +RESEIZURES +RESELECT +RESELECTED +RESELECTING +RESELECTS +RESELL +RESELLER +RESELLERS +RESELLING +RESELLS +RESEMBLANCE +RESEMBLANCES +RESEMBLANT +RESEMBLE +RESEMBLED +RESEMBLER +RESEMBLERS +RESEMBLES +RESEMBLING +RESEND +RESENDING +RESENDS +RESENSITIZE +RESENSITIZED +RESENSITIZES +RESENSITIZING +RESENT +RESENTED +RESENTENCE +RESENTENCED +RESENTENCES +RESENTENCING +RESENTFUL +RESENTFULLY +RESENTFULNESS +RESENTFULNESSES +RESENTING +RESENTIVE +RESENTMENT +RESENTMENTS +RESENTS +RESERPINE +RESERPINES +RESERVABLE +RESERVATION +RESERVATIONIST +RESERVATIONISTS +RESERVATIONS +RESERVE +RESERVED +RESERVEDLY +RESERVEDNESS +RESERVEDNESSES +RESERVER +RESERVERS +RESERVES +RESERVICE +RESERVICED +RESERVICES +RESERVICING +RESERVING +RESERVIST +RESERVISTS +RESERVOIR +RESERVOIRS +RESET +RESETS +RESETTABLE +RESETTER +RESETTERS +RESETTING +RESETTLE +RESETTLED +RESETTLEMENT +RESETTLEMENTS +RESETTLES +RESETTLING +RESEW +RESEWED +RESEWING +RESEWN +RESEWS +RESH +RESHAPE +RESHAPED +RESHAPER +RESHAPERS +RESHAPES +RESHAPING +RESHARPEN +RESHARPENED +RESHARPENING +RESHARPENS +RESHAVE +RESHAVED +RESHAVEN +RESHAVES +RESHAVING +RESHES +RESHINE +RESHINED +RESHINES +RESHINGLE +RESHINGLED +RESHINGLES +RESHINGLING +RESHINING +RESHIP +RESHIPPED +RESHIPPER +RESHIPPERS +RESHIPPING +RESHIPS +RESHOD +RESHOE +RESHOED +RESHOEING +RESHOES +RESHONE +RESHOOT +RESHOOTING +RESHOOTS +RESHOT +RESHOW +RESHOWED +RESHOWER +RESHOWERED +RESHOWERING +RESHOWERS +RESHOWING +RESHOWN +RESHOWS +RESHUFFLE +RESHUFFLED +RESHUFFLES +RESHUFFLING +RESID +RESIDE +RESIDED +RESIDENCE +RESIDENCES +RESIDENCIES +RESIDENCY +RESIDENT +RESIDENTIAL +RESIDENTIALLY +RESIDENTS +RESIDER +RESIDERS +RESIDES +RESIDING +RESIDS +RESIDUA +RESIDUAL +RESIDUALLY +RESIDUALS +RESIDUARY +RESIDUE +RESIDUES +RESIDUUM +RESIDUUMS +RESIFT +RESIFTED +RESIFTING +RESIFTS +RESIGHT +RESIGHTED +RESIGHTING +RESIGHTS +RESIGN +RESIGNATION +RESIGNATIONS +RESIGNED +RESIGNEDLY +RESIGNEDNESS +RESIGNEDNESSES +RESIGNER +RESIGNERS +RESIGNING +RESIGNS +RESILE +RESILED +RESILES +RESILIENCE +RESILIENCES +RESILIENCIES +RESILIENCY +RESILIENT +RESILIENTLY +RESILIN +RESILING +RESILINS +RESILVER +RESILVERED +RESILVERING +RESILVERS +RESIN +RESINATE +RESINATED +RESINATES +RESINATING +RESINED +RESINIFIED +RESINIFIES +RESINIFY +RESINIFYING +RESINING +RESINLIKE +RESINOID +RESINOIDS +RESINOUS +RESINS +RESINY +RESIST +RESISTANCE +RESISTANCES +RESISTANT +RESISTANTS +RESISTED +RESISTER +RESISTERS +RESISTIBILITIES +RESISTIBILITY +RESISTIBLE +RESISTING +RESISTIVE +RESISTIVELY +RESISTIVENESS +RESISTIVENESSES +RESISTIVITIES +RESISTIVITY +RESISTLESS +RESISTLESSLY +RESISTLESSNESS +RESISTOR +RESISTORS +RESISTS +RESIT +RESITE +RESITED +RESITES +RESITING +RESITS +RESITTING +RESITTINGS +RESITUATE +RESITUATED +RESITUATES +RESITUATING +RESIZE +RESIZED +RESIZES +RESIZING +RESKETCH +RESKETCHED +RESKETCHES +RESKETCHING +RESLATE +RESLATED +RESLATES +RESLATING +RESMELT +RESMELTED +RESMELTING +RESMELTS +RESMOOTH +RESMOOTHED +RESMOOTHING +RESMOOTHS +RESOAK +RESOAKED +RESOAKING +RESOAKS +RESOCIALIZATION +RESOCIALIZE +RESOCIALIZED +RESOCIALIZES +RESOCIALIZING +RESOD +RESODDED +RESODDING +RESODS +RESOFTEN +RESOFTENED +RESOFTENING +RESOFTENS +RESOJET +RESOJETS +RESOLD +RESOLDER +RESOLDERED +RESOLDERING +RESOLDERS +RESOLE +RESOLED +RESOLES +RESOLIDIFIED +RESOLIDIFIES +RESOLIDIFY +RESOLIDIFYING +RESOLING +RESOLUBLE +RESOLUTE +RESOLUTELY +RESOLUTENESS +RESOLUTENESSES +RESOLUTER +RESOLUTES +RESOLUTEST +RESOLUTION +RESOLUTIONS +RESOLVABLE +RESOLVE +RESOLVED +RESOLVENT +RESOLVENTS +RESOLVER +RESOLVERS +RESOLVES +RESOLVING +RESONANCE +RESONANCES +RESONANT +RESONANTLY +RESONANTS +RESONATE +RESONATED +RESONATES +RESONATING +RESONATOR +RESONATORS +RESORB +RESORBED +RESORBING +RESORBS +RESORCIN +RESORCINOL +RESORCINOLS +RESORCINS +RESORPTION +RESORPTIONS +RESORPTIVE +RESORT +RESORTED +RESORTER +RESORTERS +RESORTING +RESORTS +RESOUGHT +RESOUND +RESOUNDED +RESOUNDING +RESOUNDINGLY +RESOUNDS +RESOURCE +RESOURCEFUL +RESOURCEFULLY +RESOURCEFULNESS +RESOURCES +RESOW +RESOWED +RESOWING +RESOWN +RESOWS +RESPACE +RESPACED +RESPACES +RESPACING +RESPADE +RESPADED +RESPADES +RESPADING +RESPEAK +RESPEAKING +RESPEAKS +RESPECIFIED +RESPECIFIES +RESPECIFY +RESPECIFYING +RESPECT +RESPECTABILITY +RESPECTABLE +RESPECTABLENESS +RESPECTABLES +RESPECTABLY +RESPECTED +RESPECTER +RESPECTERS +RESPECTFUL +RESPECTFULLY +RESPECTFULNESS +RESPECTING +RESPECTIVE +RESPECTIVELY +RESPECTIVENESS +RESPECTS +RESPELL +RESPELLED +RESPELLING +RESPELLINGS +RESPELLS +RESPELT +RESPIRABLE +RESPIRATION +RESPIRATIONS +RESPIRATOR +RESPIRATORS +RESPIRATORY +RESPIRE +RESPIRED +RESPIRES +RESPIRING +RESPIRITUALIZE +RESPIRITUALIZED +RESPIRITUALIZES +RESPIROMETER +RESPIROMETERS +RESPIROMETRIC +RESPIROMETRIES +RESPIROMETRY +RESPITE +RESPITED +RESPITES +RESPITING +RESPLENDENCE +RESPLENDENCES +RESPLENDENCIES +RESPLENDENCY +RESPLENDENT +RESPLENDENTLY +RESPLICE +RESPLICED +RESPLICES +RESPLICING +RESPLIT +RESPLITS +RESPLITTING +RESPOKE +RESPOKEN +RESPOND +RESPONDED +RESPONDENT +RESPONDENTS +RESPONDER +RESPONDERS +RESPONDING +RESPONDS +RESPONSA +RESPONSE +RESPONSES +RESPONSIBILITY +RESPONSIBLE +RESPONSIBLENESS +RESPONSIBLY +RESPONSIONS +RESPONSIVE +RESPONSIVELY +RESPONSIVENESS +RESPONSORIES +RESPONSORY +RESPONSUM +RESPOOL +RESPOOLED +RESPOOLING +RESPOOLS +RESPOT +RESPOTS +RESPOTTED +RESPOTTING +RESPRANG +RESPRAY +RESPRAYED +RESPRAYING +RESPRAYS +RESPREAD +RESPREADING +RESPREADS +RESPRING +RESPRINGING +RESPRINGS +RESPROUT +RESPROUTED +RESPROUTING +RESPROUTS +RESPRUNG +RESSENTIMENT +RESSENTIMENTS +REST +RESTABILIZE +RESTABILIZED +RESTABILIZES +RESTABILIZING +RESTABLE +RESTABLED +RESTABLES +RESTABLING +RESTACK +RESTACKED +RESTACKING +RESTACKS +RESTAFF +RESTAFFED +RESTAFFING +RESTAFFS +RESTAGE +RESTAGED +RESTAGES +RESTAGING +RESTAMP +RESTAMPED +RESTAMPING +RESTAMPS +RESTART +RESTARTABLE +RESTARTED +RESTARTING +RESTARTS +RESTATE +RESTATED +RESTATEMENT +RESTATEMENTS +RESTATES +RESTATING +RESTATION +RESTATIONED +RESTATIONING +RESTATIONS +RESTAURANT +RESTAURANTEUR +RESTAURANTEURS +RESTAURANTS +RESTAURATEUR +RESTAURATEURS +RESTED +RESTER +RESTERS +RESTFUL +RESTFULLER +RESTFULLEST +RESTFULLY +RESTFULNESS +RESTFULNESSES +RESTIFORM +RESTIMULATE +RESTIMULATED +RESTIMULATES +RESTIMULATING +RESTIMULATION +RESTIMULATIONS +RESTING +RESTITCH +RESTITCHED +RESTITCHES +RESTITCHING +RESTITUTE +RESTITUTED +RESTITUTES +RESTITUTING +RESTITUTION +RESTITUTIONS +RESTIVE +RESTIVELY +RESTIVENESS +RESTIVENESSES +RESTLESS +RESTLESSLY +RESTLESSNESS +RESTLESSNESSES +RESTOCK +RESTOCKED +RESTOCKING +RESTOCKS +RESTOKE +RESTOKED +RESTOKES +RESTOKING +RESTORABLE +RESTORAL +RESTORALS +RESTORATION +RESTORATIONS +RESTORATIVE +RESTORATIVES +RESTORE +RESTORED +RESTORER +RESTORERS +RESTORES +RESTORING +RESTRAIN +RESTRAINABLE +RESTRAINED +RESTRAINEDLY +RESTRAINER +RESTRAINERS +RESTRAINING +RESTRAINS +RESTRAINT +RESTRAINTS +RESTRENGTHEN +RESTRENGTHENED +RESTRENGTHENING +RESTRENGTHENS +RESTRESS +RESTRESSED +RESTRESSES +RESTRESSING +RESTRETCH +RESTRETCHED +RESTRETCHES +RESTRETCHING +RESTRICKEN +RESTRICT +RESTRICTED +RESTRICTEDLY +RESTRICTING +RESTRICTION +RESTRICTIONISM +RESTRICTIONISMS +RESTRICTIONIST +RESTRICTIONISTS +RESTRICTIONS +RESTRICTIVE +RESTRICTIVELY +RESTRICTIVENESS +RESTRICTIVES +RESTRICTS +RESTRIKE +RESTRIKES +RESTRIKING +RESTRING +RESTRINGING +RESTRINGS +RESTRIVE +RESTRIVEN +RESTRIVES +RESTRIVING +RESTROOM +RESTROOMS +RESTROVE +RESTRUCK +RESTRUCTURE +RESTRUCTURED +RESTRUCTURES +RESTRUCTURING +RESTRUNG +RESTS +RESTUDIED +RESTUDIES +RESTUDY +RESTUDYING +RESTUFF +RESTUFFED +RESTUFFING +RESTUFFS +RESTYLE +RESTYLED +RESTYLES +RESTYLING +RESUBJECT +RESUBJECTED +RESUBJECTING +RESUBJECTS +RESUBMISSION +RESUBMISSIONS +RESUBMIT +RESUBMITS +RESUBMITTED +RESUBMITTING +RESULT +RESULTANT +RESULTANTLY +RESULTANTS +RESULTED +RESULTFUL +RESULTING +RESULTLESS +RESULTS +RESUMABLE +RESUME +RESUMED +RESUMER +RESUMERS +RESUMES +RESUMING +RESUMMON +RESUMMONED +RESUMMONING +RESUMMONS +RESUMPTION +RESUMPTIONS +RESUPINATE +RESUPINE +RESUPPLIED +RESUPPLIES +RESUPPLY +RESUPPLYING +RESURFACE +RESURFACED +RESURFACER +RESURFACERS +RESURFACES +RESURFACING +RESURGE +RESURGED +RESURGENCE +RESURGENCES +RESURGENT +RESURGES +RESURGING +RESURRECT +RESURRECTED +RESURRECTING +RESURRECTION +RESURRECTIONAL +RESURRECTIONIST +RESURRECTIONS +RESURRECTS +RESURVEY +RESURVEYED +RESURVEYING +RESURVEYS +RESUSCITATE +RESUSCITATED +RESUSCITATES +RESUSCITATING +RESUSCITATION +RESUSCITATIONS +RESUSCITATIVE +RESUSCITATOR +RESUSCITATORS +RESUSPEND +RESUSPENDED +RESUSPENDING +RESUSPENDS +RESWALLOW +RESWALLOWED +RESWALLOWING +RESWALLOWS +RESYNTHESES +RESYNTHESIS +RESYNTHESIZE +RESYNTHESIZED +RESYNTHESIZES +RESYNTHESIZING +RESYSTEMATIZE +RESYSTEMATIZED +RESYSTEMATIZES +RESYSTEMATIZING +RET +RETABLE +RETABLES +RETACK +RETACKED +RETACKING +RETACKLE +RETACKLED +RETACKLES +RETACKLING +RETACKS +RETAG +RETAGGED +RETAGGING +RETAGS +RETAIL +RETAILED +RETAILER +RETAILERS +RETAILING +RETAILINGS +RETAILOR +RETAILORED +RETAILORING +RETAILORS +RETAILS +RETAIN +RETAINED +RETAINER +RETAINERS +RETAINING +RETAINS +RETAKE +RETAKEN +RETAKER +RETAKERS +RETAKES +RETAKING +RETALIATE +RETALIATED +RETALIATES +RETALIATING +RETALIATION +RETALIATIONS +RETALIATIVE +RETALIATORY +RETALLIED +RETALLIES +RETALLY +RETALLYING +RETAPE +RETAPED +RETAPES +RETAPING +RETARD +RETARDANT +RETARDANTS +RETARDATE +RETARDATES +RETARDATION +RETARDATIONS +RETARDED +RETARDER +RETARDERS +RETARDING +RETARDS +RETARGET +RETARGETED +RETARGETING +RETARGETS +RETASTE +RETASTED +RETASTES +RETASTING +RETAUGHT +RETAX +RETAXED +RETAXES +RETAXING +RETCH +RETCHED +RETCHES +RETCHING +RETE +RETEACH +RETEACHES +RETEACHING +RETEAM +RETEAMED +RETEAMING +RETEAMS +RETEAR +RETEARING +RETEARS +RETELL +RETELLING +RETELLINGS +RETELLS +RETEM +RETEMPER +RETEMPERED +RETEMPERING +RETEMPERS +RETEMS +RETENE +RETENES +RETENTION +RETENTIONS +RETENTIVE +RETENTIVELY +RETENTIVENESS +RETENTIVENESSES +RETENTIVITIES +RETENTIVITY +RETEST +RETESTED +RETESTIFIED +RETESTIFIES +RETESTIFY +RETESTIFYING +RETESTING +RETESTS +RETEXTURE +RETEXTURED +RETEXTURES +RETEXTURING +RETHINK +RETHINKER +RETHINKERS +RETHINKING +RETHINKS +RETHOUGHT +RETHREAD +RETHREADED +RETHREADING +RETHREADS +RETIA +RETIAL +RETIARII +RETIARIUS +RETIARY +RETICENCE +RETICENCES +RETICENCIES +RETICENCY +RETICENT +RETICENTLY +RETICLE +RETICLES +RETICULA +RETICULAR +RETICULATE +RETICULATED +RETICULATELY +RETICULATES +RETICULATING +RETICULATION +RETICULATIONS +RETICULE +RETICULES +RETICULOCYTE +RETICULOCYTES +RETICULUM +RETICULUMS +RETIE +RETIED +RETIEING +RETIES +RETIFORM +RETIGHTEN +RETIGHTENED +RETIGHTENING +RETIGHTENS +RETILE +RETILED +RETILES +RETILING +RETIME +RETIMED +RETIMES +RETIMING +RETINA +RETINACULA +RETINACULUM +RETINAE +RETINAL +RETINALS +RETINAS +RETINE +RETINENE +RETINENES +RETINES +RETINITE +RETINITES +RETINITIDES +RETINITIS +RETINITISES +RETINOBLASTOMA +RETINOBLASTOMAS +RETINOID +RETINOIDS +RETINOL +RETINOLS +RETINOPATHIES +RETINOPATHY +RETINOSCOPIES +RETINOSCOPY +RETINOTECTAL +RETINT +RETINTED +RETINTING +RETINTS +RETINUE +RETINUED +RETINUES +RETINULA +RETINULAE +RETINULAR +RETINULAS +RETIRANT +RETIRANTS +RETIRE +RETIRED +RETIREDLY +RETIREDNESS +RETIREDNESSES +RETIREE +RETIREES +RETIREMENT +RETIREMENTS +RETIRER +RETIRERS +RETIRES +RETIRING +RETIRINGLY +RETIRINGNESS +RETIRINGNESSES +RETITLE +RETITLED +RETITLES +RETITLING +RETOLD +RETOOK +RETOOL +RETOOLED +RETOOLING +RETOOLS +RETORE +RETORN +RETORSION +RETORSIONS +RETORT +RETORTED +RETORTER +RETORTERS +RETORTING +RETORTION +RETORTIONS +RETORTS +RETOTAL +RETOTALED +RETOTALING +RETOTALLED +RETOTALLING +RETOTALS +RETOUCH +RETOUCHED +RETOUCHER +RETOUCHERS +RETOUCHES +RETOUCHING +RETRACE +RETRACED +RETRACER +RETRACERS +RETRACES +RETRACING +RETRACK +RETRACKED +RETRACKING +RETRACKS +RETRACT +RETRACTABLE +RETRACTED +RETRACTILE +RETRACTILITIES +RETRACTILITY +RETRACTING +RETRACTION +RETRACTIONS +RETRACTOR +RETRACTORS +RETRACTS +RETRAIN +RETRAINABLE +RETRAINED +RETRAINEE +RETRAINEES +RETRAINING +RETRAINS +RETRAL +RETRALLY +RETRANSFER +RETRANSFERRED +RETRANSFERRING +RETRANSFERS +RETRANSFORM +RETRANSFORMED +RETRANSFORMING +RETRANSFORMS +RETRANSLATE +RETRANSLATED +RETRANSLATES +RETRANSLATING +RETRANSLATION +RETRANSLATIONS +RETRANSMISSION +RETRANSMISSIONS +RETRANSMIT +RETRANSMITS +RETRANSMITTED +RETRANSMITTING +RETREAD +RETREADED +RETREADING +RETREADS +RETREAT +RETREATANT +RETREATANTS +RETREATED +RETREATER +RETREATERS +RETREATING +RETREATS +RETRENCH +RETRENCHED +RETRENCHES +RETRENCHING +RETRENCHMENT +RETRENCHMENTS +RETRIAL +RETRIALS +RETRIBUTION +RETRIBUTIONS +RETRIBUTIVE +RETRIBUTIVELY +RETRIBUTORY +RETRIED +RETRIES +RETRIEVABILITY +RETRIEVABLE +RETRIEVAL +RETRIEVALS +RETRIEVE +RETRIEVED +RETRIEVER +RETRIEVERS +RETRIEVES +RETRIEVING +RETRIM +RETRIMMED +RETRIMMING +RETRIMS +RETRO +RETROACT +RETROACTED +RETROACTING +RETROACTION +RETROACTIONS +RETROACTIVE +RETROACTIVELY +RETROACTIVITIES +RETROACTIVITY +RETROACTS +RETROCEDE +RETROCEDED +RETROCEDES +RETROCEDING +RETROCESSION +RETROCESSIONS +RETRODICT +RETRODICTED +RETRODICTING +RETRODICTION +RETRODICTIONS +RETRODICTIVE +RETRODICTS +RETROFIRE +RETROFIRED +RETROFIRES +RETROFIRING +RETROFIT +RETROFITS +RETROFITTED +RETROFITTING +RETROFLECTION +RETROFLECTIONS +RETROFLEX +RETROFLEXES +RETROFLEXION +RETROFLEXIONS +RETROGRADATION +RETROGRADATIONS +RETROGRADE +RETROGRADED +RETROGRADELY +RETROGRADES +RETROGRADING +RETROGRESS +RETROGRESSED +RETROGRESSES +RETROGRESSING +RETROGRESSION +RETROGRESSIONS +RETROGRESSIVE +RETROGRESSIVELY +RETRONYM +RETRONYMS +RETROPACK +RETROPACKS +RETROPERITONEAL +RETROREFLECTION +RETROREFLECTIVE +RETROREFLECTOR +RETROREFLECTORS +RETRORSE +RETROS +RETROSPECT +RETROSPECTED +RETROSPECTING +RETROSPECTION +RETROSPECTIONS +RETROSPECTIVE +RETROSPECTIVELY +RETROSPECTIVES +RETROSPECTS +RETROUSSE +RETROVERSION +RETROVERSIONS +RETROVIRAL +RETROVIRUS +RETROVIRUSES +RETRY +RETRYING +RETS +RETSINA +RETSINAS +RETTED +RETTING +RETUNE +RETUNED +RETUNES +RETUNING +RETURN +RETURNABLE +RETURNABLES +RETURNED +RETURNEE +RETURNEES +RETURNER +RETURNERS +RETURNING +RETURNS +RETUSE +RETWIST +RETWISTED +RETWISTING +RETWISTS +RETYING +RETYPE +RETYPED +RETYPES +RETYPING +REUNIFICATION +REUNIFICATIONS +REUNIFIED +REUNIFIES +REUNIFY +REUNIFYING +REUNION +REUNIONIST +REUNIONISTIC +REUNIONISTS +REUNIONS +REUNITE +REUNITED +REUNITER +REUNITERS +REUNITES +REUNITING +REUPHOLSTER +REUPHOLSTERED +REUPHOLSTERING +REUPHOLSTERS +REUPTAKE +REUPTAKES +REUSABILITIES +REUSABILITY +REUSABLE +REUSABLES +REUSE +REUSED +REUSES +REUSING +REUTILIZATION +REUTILIZATIONS +REUTILIZE +REUTILIZED +REUTILIZES +REUTILIZING +REUTTER +REUTTERED +REUTTERING +REUTTERS +REV +REVACCINATE +REVACCINATED +REVACCINATES +REVACCINATING +REVACCINATION +REVACCINATIONS +REVALIDATE +REVALIDATED +REVALIDATES +REVALIDATING +REVALIDATION +REVALIDATIONS +REVALORIZATION +REVALORIZATIONS +REVALORIZE +REVALORIZED +REVALORIZES +REVALORIZING +REVALUATE +REVALUATED +REVALUATES +REVALUATING +REVALUATION +REVALUATIONS +REVALUE +REVALUED +REVALUES +REVALUING +REVAMP +REVAMPED +REVAMPER +REVAMPERS +REVAMPING +REVAMPS +REVANCHE +REVANCHES +REVANCHISM +REVANCHISMS +REVANCHIST +REVANCHISTS +REVARNISH +REVARNISHED +REVARNISHES +REVARNISHING +REVEAL +REVEALABLE +REVEALED +REVEALER +REVEALERS +REVEALING +REVEALINGLY +REVEALMENT +REVEALMENTS +REVEALS +REVEGETATE +REVEGETATED +REVEGETATES +REVEGETATING +REVEGETATION +REVEGETATIONS +REVEHENT +REVEILLE +REVEILLES +REVEL +REVELATION +REVELATIONS +REVELATOR +REVELATORS +REVELATORY +REVELED +REVELER +REVELERS +REVELING +REVELLED +REVELLER +REVELLERS +REVELLING +REVELMENT +REVELMENTS +REVELRIES +REVELROUS +REVELRY +REVELS +REVENANT +REVENANTS +REVENGE +REVENGED +REVENGEFUL +REVENGEFULLY +REVENGEFULNESS +REVENGER +REVENGERS +REVENGES +REVENGING +REVENUAL +REVENUE +REVENUED +REVENUER +REVENUERS +REVENUES +REVERABLE +REVERB +REVERBED +REVERBERANT +REVERBERANTLY +REVERBERATE +REVERBERATED +REVERBERATES +REVERBERATING +REVERBERATION +REVERBERATIONS +REVERBERATIVE +REVERBERATORY +REVERBING +REVERBS +REVERE +REVERED +REVERENCE +REVERENCED +REVERENCER +REVERENCERS +REVERENCES +REVERENCING +REVEREND +REVERENDS +REVERENT +REVERENTIAL +REVERENTIALLY +REVERENTLY +REVERER +REVERERS +REVERES +REVERIE +REVERIES +REVERIFIED +REVERIFIES +REVERIFY +REVERIFYING +REVERING +REVERS +REVERSAL +REVERSALS +REVERSE +REVERSED +REVERSELY +REVERSER +REVERSERS +REVERSES +REVERSIBILITIES +REVERSIBILITY +REVERSIBLE +REVERSIBLES +REVERSIBLY +REVERSING +REVERSION +REVERSIONAL +REVERSIONARY +REVERSIONER +REVERSIONERS +REVERSIONS +REVERSO +REVERSOS +REVERT +REVERTANT +REVERTANTS +REVERTED +REVERTER +REVERTERS +REVERTIBLE +REVERTING +REVERTIVE +REVERTS +REVERY +REVEST +REVESTED +REVESTING +REVESTS +REVET +REVETMENT +REVETMENTS +REVETS +REVETTED +REVETTING +REVIBRATE +REVIBRATED +REVIBRATES +REVIBRATING +REVICTUAL +REVICTUALED +REVICTUALING +REVICTUALLED +REVICTUALLING +REVICTUALS +REVIEW +REVIEWABLE +REVIEWAL +REVIEWALS +REVIEWED +REVIEWER +REVIEWERS +REVIEWING +REVIEWS +REVILE +REVILED +REVILEMENT +REVILEMENTS +REVILER +REVILERS +REVILES +REVILING +REVIOLATE +REVIOLATED +REVIOLATES +REVIOLATING +REVISABLE +REVISAL +REVISALS +REVISE +REVISED +REVISER +REVISERS +REVISES +REVISING +REVISION +REVISIONARY +REVISIONISM +REVISIONISMS +REVISIONIST +REVISIONISTS +REVISIONS +REVISIT +REVISITED +REVISITING +REVISITS +REVISOR +REVISORS +REVISORY +REVISUALIZATION +REVITALISE +REVITALISED +REVITALISES +REVITALISING +REVITALIZATION +REVITALIZATIONS +REVITALIZE +REVITALIZED +REVITALIZES +REVITALIZING +REVIVABLE +REVIVAL +REVIVALISM +REVIVALISMS +REVIVALIST +REVIVALISTIC +REVIVALISTS +REVIVALS +REVIVE +REVIVED +REVIVER +REVIVERS +REVIVES +REVIVIFICATION +REVIVIFICATIONS +REVIVIFIED +REVIVIFIES +REVIVIFY +REVIVIFYING +REVIVING +REVIVISCENCE +REVIVISCENCES +REVIVISCENT +REVOCABLE +REVOCABLY +REVOCATION +REVOCATIONS +REVOICE +REVOICED +REVOICES +REVOICING +REVOKABLE +REVOKE +REVOKED +REVOKER +REVOKERS +REVOKES +REVOKING +REVOLT +REVOLTED +REVOLTER +REVOLTERS +REVOLTING +REVOLTINGLY +REVOLTS +REVOLUTE +REVOLUTION +REVOLUTIONARIES +REVOLUTIONARILY +REVOLUTIONARY +REVOLUTIONISE +REVOLUTIONISED +REVOLUTIONISES +REVOLUTIONISING +REVOLUTIONIST +REVOLUTIONISTS +REVOLUTIONIZE +REVOLUTIONIZED +REVOLUTIONIZER +REVOLUTIONIZERS +REVOLUTIONIZES +REVOLUTIONIZING +REVOLUTIONS +REVOLVABLE +REVOLVE +REVOLVED +REVOLVER +REVOLVERS +REVOLVES +REVOLVING +REVOTE +REVOTED +REVOTES +REVOTING +REVS +REVUE +REVUES +REVUIST +REVUISTS +REVULSED +REVULSION +REVULSIONS +REVULSIVE +REVVED +REVVING +REWAKE +REWAKED +REWAKEN +REWAKENED +REWAKENING +REWAKENS +REWAKES +REWAKING +REWAN +REWARD +REWARDABLE +REWARDED +REWARDER +REWARDERS +REWARDING +REWARDINGLY +REWARDS +REWARM +REWARMED +REWARMING +REWARMS +REWASH +REWASHED +REWASHES +REWASHING +REWAX +REWAXED +REWAXES +REWAXING +REWEAR +REWEARING +REWEARS +REWEAVE +REWEAVED +REWEAVES +REWEAVING +REWED +REWEDDED +REWEDDING +REWEDS +REWEIGH +REWEIGHED +REWEIGHING +REWEIGHS +REWELD +REWELDED +REWELDING +REWELDS +REWET +REWETS +REWETTED +REWETTING +REWIDEN +REWIDENED +REWIDENING +REWIDENS +REWIN +REWIND +REWINDED +REWINDER +REWINDERS +REWINDING +REWINDS +REWINNING +REWINS +REWIRE +REWIRED +REWIRES +REWIRING +REWOKE +REWOKEN +REWON +REWORD +REWORDED +REWORDING +REWORDS +REWORE +REWORK +REWORKED +REWORKING +REWORKS +REWORN +REWOUND +REWOVE +REWOVEN +REWRAP +REWRAPPED +REWRAPPING +REWRAPS +REWRAPT +REWRITE +REWRITER +REWRITERS +REWRITES +REWRITING +REWRITTEN +REWROTE +REWROUGHT +REX +REXES +REXINE +REXINES +REYNARD +REYNARDS +REZERO +REZEROED +REZEROES +REZEROING +REZEROS +REZONE +REZONED +REZONES +REZONING +RHABDOCOELE +RHABDOCOELES +RHABDOM +RHABDOMAL +RHABDOMANCER +RHABDOMANCERS +RHABDOMANCIES +RHABDOMANCY +RHABDOME +RHABDOMERE +RHABDOMERES +RHABDOMES +RHABDOMS +RHABDOVIRUS +RHABDOVIRUSES +RHACHIDES +RHACHIS +RHACHISES +RHADAMANTHINE +RHAMNOSE +RHAMNOSES +RHAMNUS +RHAMNUSES +RHAPHAE +RHAPHE +RHAPHES +RHAPSODE +RHAPSODES +RHAPSODIC +RHAPSODICAL +RHAPSODICALLY +RHAPSODIES +RHAPSODIST +RHAPSODISTS +RHAPSODIZE +RHAPSODIZED +RHAPSODIZES +RHAPSODIZING +RHAPSODY +RHATANIES +RHATANY +RHEA +RHEAS +RHEBOK +RHEBOKS +RHEMATIC +RHEME +RHEMES +RHENIUM +RHENIUMS +RHEOBASE +RHEOBASES +RHEOBASIC +RHEOLOGIC +RHEOLOGICAL +RHEOLOGICALLY +RHEOLOGIES +RHEOLOGIST +RHEOLOGISTS +RHEOLOGY +RHEOMETER +RHEOMETERS +RHEOPHIL +RHEOPHILE +RHEOPHILES +RHEOSTAT +RHEOSTATIC +RHEOSTATS +RHEOTAXES +RHEOTAXIS +RHESUS +RHESUSES +RHETOR +RHETORIC +RHETORICAL +RHETORICALLY +RHETORICIAN +RHETORICIANS +RHETORICS +RHETORS +RHEUM +RHEUMATIC +RHEUMATICALLY +RHEUMATICS +RHEUMATISM +RHEUMATISMS +RHEUMATIZ +RHEUMATIZES +RHEUMATOID +RHEUMATOLOGIES +RHEUMATOLOGIST +RHEUMATOLOGISTS +RHEUMATOLOGY +RHEUMIC +RHEUMIER +RHEUMIEST +RHEUMS +RHEUMY +RHIGOLENE +RHIGOLENES +RHINAL +RHINENCEPHALA +RHINENCEPHALIC +RHINENCEPHALON +RHINESTONE +RHINESTONED +RHINESTONES +RHINITIDES +RHINITIS +RHINO +RHINOCERI +RHINOCEROS +RHINOCEROSES +RHINOLOGIES +RHINOLOGY +RHINOPLASTIES +RHINOPLASTY +RHINOS +RHINOSCOPIES +RHINOSCOPY +RHINOVIRUS +RHINOVIRUSES +RHIZOBIA +RHIZOBIAL +RHIZOBIUM +RHIZOCTONIA +RHIZOCTONIAS +RHIZOID +RHIZOIDAL +RHIZOIDS +RHIZOMA +RHIZOMATA +RHIZOMATOUS +RHIZOME +RHIZOMES +RHIZOMIC +RHIZOPI +RHIZOPLANE +RHIZOPLANES +RHIZOPOD +RHIZOPODS +RHIZOPUS +RHIZOPUSES +RHIZOSPHERE +RHIZOSPHERES +RHIZOTOMIES +RHIZOTOMY +RHO +RHODAMIN +RHODAMINE +RHODAMINES +RHODAMINS +RHODIC +RHODIUM +RHODIUMS +RHODOCHROSITE +RHODOCHROSITES +RHODODENDRON +RHODODENDRONS +RHODOLITE +RHODOLITES +RHODOMONTADE +RHODOMONTADES +RHODONITE +RHODONITES +RHODOPSIN +RHODOPSINS +RHODORA +RHODORAS +RHOMB +RHOMBENCEPHALA +RHOMBENCEPHALON +RHOMBI +RHOMBIC +RHOMBICAL +RHOMBOHEDRA +RHOMBOHEDRAL +RHOMBOHEDRON +RHOMBOHEDRONS +RHOMBOID +RHOMBOIDAL +RHOMBOIDEI +RHOMBOIDEUS +RHOMBOIDS +RHOMBS +RHOMBUS +RHOMBUSES +RHONCHAL +RHONCHI +RHONCHIAL +RHONCHUS +RHOS +RHOTACISM +RHOTACISMS +RHOTIC +RHUBARB +RHUBARBS +RHUMB +RHUMBA +RHUMBAED +RHUMBAING +RHUMBAS +RHUMBS +RHUS +RHUSES +RHYME +RHYMED +RHYMELESS +RHYMER +RHYMERS +RHYMES +RHYMESTER +RHYMESTERS +RHYMING +RHYOLITE +RHYOLITES +RHYOLITIC +RHYTA +RHYTHM +RHYTHMIC +RHYTHMICAL +RHYTHMICALLY +RHYTHMICITIES +RHYTHMICITY +RHYTHMICS +RHYTHMIST +RHYTHMISTS +RHYTHMIZATION +RHYTHMIZATIONS +RHYTHMIZE +RHYTHMIZED +RHYTHMIZES +RHYTHMIZING +RHYTHMS +RHYTIDOME +RHYTIDOMES +RHYTON +RHYTONS +RIA +RIAL +RIALS +RIALTO +RIALTOS +RIANT +RIANTLY +RIAS +RIATA +RIATAS +RIB +RIBALD +RIBALDLY +RIBALDRIES +RIBALDRY +RIBALDS +RIBAND +RIBANDS +RIBAVIRIN +RIBAVIRINS +RIBBAND +RIBBANDS +RIBBED +RIBBER +RIBBERS +RIBBIER +RIBBIEST +RIBBING +RIBBINGS +RIBBON +RIBBONED +RIBBONFISH +RIBBONFISHES +RIBBONING +RIBBONLIKE +RIBBONS +RIBBONY +RIBBY +RIBES +RIBGRASS +RIBGRASSES +RIBIER +RIBIERS +RIBLESS +RIBLET +RIBLETS +RIBLIKE +RIBOFLAVIN +RIBOFLAVINS +RIBONUCLEASE +RIBONUCLEASES +RIBONUCLEOSIDE +RIBONUCLEOSIDES +RIBONUCLEOTIDE +RIBONUCLEOTIDES +RIBOSE +RIBOSES +RIBOSOMAL +RIBOSOME +RIBOSOMES +RIBOZYMAL +RIBOZYME +RIBOZYMES +RIBS +RIBWORT +RIBWORTS +RICE +RICEBIRD +RICEBIRDS +RICED +RICER +RICERCAR +RICERCARE +RICERCARI +RICERCARS +RICERS +RICES +RICH +RICHEN +RICHENED +RICHENING +RICHENS +RICHER +RICHES +RICHEST +RICHLY +RICHNESS +RICHNESSES +RICHWEED +RICHWEEDS +RICIN +RICING +RICINS +RICINUS +RICINUSES +RICK +RICKED +RICKETIER +RICKETIEST +RICKETS +RICKETTSIA +RICKETTSIAE +RICKETTSIAL +RICKETTSIAS +RICKETY +RICKEY +RICKEYS +RICKING +RICKRACK +RICKRACKS +RICKS +RICKSHA +RICKSHAS +RICKSHAW +RICKSHAWS +RICOCHET +RICOCHETED +RICOCHETING +RICOCHETS +RICOCHETTED +RICOCHETTING +RICOTTA +RICOTTAS +RICRAC +RICRACS +RICTAL +RICTUS +RICTUSES +RID +RIDABLE +RIDDANCE +RIDDANCES +RIDDED +RIDDEN +RIDDER +RIDDERS +RIDDING +RIDDLE +RIDDLED +RIDDLER +RIDDLERS +RIDDLES +RIDDLING +RIDE +RIDEABLE +RIDENT +RIDER +RIDERLESS +RIDERS +RIDERSHIP +RIDERSHIPS +RIDES +RIDGE +RIDGEBACK +RIDGEBACKS +RIDGED +RIDGEL +RIDGELINE +RIDGELINES +RIDGELING +RIDGELINGS +RIDGELS +RIDGEPOLE +RIDGEPOLES +RIDGES +RIDGETOP +RIDGETOPS +RIDGIER +RIDGIEST +RIDGIL +RIDGILS +RIDGING +RIDGLING +RIDGLINGS +RIDGY +RIDICULE +RIDICULED +RIDICULER +RIDICULERS +RIDICULES +RIDICULING +RIDICULOUS +RIDICULOUSLY +RIDICULOUSNESS +RIDING +RIDINGS +RIDLEY +RIDLEYS +RIDOTTO +RIDOTTOS +RIDS +RIEL +RIELS +RIESLING +RIESLINGS +RIEVER +RIEVERS +RIF +RIFAMPICIN +RIFAMPICINS +RIFAMPIN +RIFAMPINS +RIFAMYCIN +RIFAMYCINS +RIFE +RIFELY +RIFENESS +RIFENESSES +RIFER +RIFEST +RIFF +RIFFED +RIFFING +RIFFLE +RIFFLED +RIFFLER +RIFFLERS +RIFFLES +RIFFLING +RIFFRAFF +RIFFRAFFS +RIFFS +RIFLE +RIFLEBIRD +RIFLEBIRDS +RIFLED +RIFLEMAN +RIFLEMEN +RIFLER +RIFLERIES +RIFLERS +RIFLERY +RIFLES +RIFLING +RIFLINGS +RIFLIP +RIFLIPS +RIFS +RIFT +RIFTED +RIFTING +RIFTLESS +RIFTS +RIG +RIGADOON +RIGADOONS +RIGAMAROLE +RIGAMAROLES +RIGATONI +RIGATONIS +RIGAUDON +RIGAUDONS +RIGGED +RIGGER +RIGGERS +RIGGING +RIGGINGS +RIGHT +RIGHTED +RIGHTEOUS +RIGHTEOUSLY +RIGHTEOUSNESS +RIGHTEOUSNESSES +RIGHTER +RIGHTERS +RIGHTEST +RIGHTFUL +RIGHTFULLY +RIGHTFULNESS +RIGHTFULNESSES +RIGHTIES +RIGHTING +RIGHTISM +RIGHTISMS +RIGHTIST +RIGHTISTS +RIGHTLY +RIGHTMOST +RIGHTNESS +RIGHTNESSES +RIGHTO +RIGHTS +RIGHTSIZE +RIGHTSIZED +RIGHTSIZES +RIGHTSIZING +RIGHTWARD +RIGHTY +RIGID +RIGIDIFICATION +RIGIDIFICATIONS +RIGIDIFIED +RIGIDIFIES +RIGIDIFY +RIGIDIFYING +RIGIDITIES +RIGIDITY +RIGIDLY +RIGIDNESS +RIGIDNESSES +RIGMAROLE +RIGMAROLES +RIGOR +RIGORISM +RIGORISMS +RIGORIST +RIGORISTIC +RIGORISTS +RIGOROUS +RIGOROUSLY +RIGOROUSNESS +RIGOROUSNESSES +RIGORS +RIGOUR +RIGOURS +RIGS +RIJSTAFEL +RIJSTAFELS +RIJSTTAFEL +RIJSTTAFELS +RIKISHA +RIKISHAS +RIKSHAW +RIKSHAWS +RILE +RILED +RILES +RILEY +RILIEVI +RILIEVO +RILING +RILL +RILLE +RILLED +RILLES +RILLET +RILLETS +RILLETTES +RILLING +RILLS +RIM +RIME +RIMED +RIMER +RIMERS +RIMES +RIMESTER +RIMESTERS +RIMFIRE +RIMFIRES +RIMIER +RIMIEST +RIMINESS +RIMINESSES +RIMING +RIMLAND +RIMLANDS +RIMLESS +RIMMED +RIMMER +RIMMERS +RIMMING +RIMOSE +RIMOSELY +RIMOSITIES +RIMOSITY +RIMOUS +RIMPLE +RIMPLED +RIMPLES +RIMPLING +RIMROCK +RIMROCKS +RIMS +RIMSHOT +RIMSHOTS +RIMY +RIN +RIND +RINDED +RINDERPEST +RINDERPESTS +RINDLESS +RINDS +RINDY +RING +RINGBARK +RINGBARKED +RINGBARKING +RINGBARKS +RINGBOLT +RINGBOLTS +RINGBONE +RINGBONES +RINGDOVE +RINGDOVES +RINGED +RINGENT +RINGER +RINGERS +RINGGIT +RINGGITS +RINGHALS +RINGHALSES +RINGING +RINGINGLY +RINGLEADER +RINGLEADERS +RINGLET +RINGLETED +RINGLETS +RINGLIKE +RINGMASTER +RINGMASTERS +RINGNECK +RINGNECKS +RINGS +RINGSIDE +RINGSIDES +RINGSTRAKED +RINGTAIL +RINGTAILS +RINGTAW +RINGTAWS +RINGTOSS +RINGTOSSES +RINGWORM +RINGWORMS +RINK +RINKS +RINNING +RINS +RINSABLE +RINSE +RINSED +RINSER +RINSERS +RINSES +RINSIBLE +RINSING +RINSINGS +RIOJA +RIOJAS +RIOT +RIOTED +RIOTER +RIOTERS +RIOTING +RIOTOUS +RIOTOUSLY +RIOTOUSNESS +RIOTOUSNESSES +RIOTS +RIP +RIPARIAN +RIPCORD +RIPCORDS +RIPE +RIPED +RIPELY +RIPEN +RIPENED +RIPENER +RIPENERS +RIPENESS +RIPENESSES +RIPENING +RIPENS +RIPER +RIPES +RIPEST +RIPIENI +RIPIENO +RIPIENOS +RIPING +RIPOFF +RIPOFFS +RIPOST +RIPOSTE +RIPOSTED +RIPOSTES +RIPOSTING +RIPOSTS +RIPPABLE +RIPPED +RIPPER +RIPPERS +RIPPING +RIPPINGLY +RIPPLE +RIPPLED +RIPPLER +RIPPLERS +RIPPLES +RIPPLET +RIPPLETS +RIPPLIER +RIPPLIEST +RIPPLING +RIPPLY +RIPRAP +RIPRAPPED +RIPRAPPING +RIPRAPS +RIPS +RIPSAW +RIPSAWED +RIPSAWING +RIPSAWN +RIPSAWS +RIPSNORTER +RIPSNORTERS +RIPSNORTING +RIPSTOP +RIPSTOPS +RIPTIDE +RIPTIDES +RISE +RISEN +RISER +RISERS +RISES +RISHI +RISHIS +RISIBILITIES +RISIBILITY +RISIBLE +RISIBLES +RISIBLY +RISING +RISINGS +RISK +RISKED +RISKER +RISKERS +RISKIER +RISKIEST +RISKILY +RISKINESS +RISKINESSES +RISKING +RISKLESS +RISKS +RISKY +RISORGIMENTO +RISORGIMENTOS +RISOTTO +RISOTTOS +RISQUE +RISSOLE +RISSOLES +RISTRA +RISTRAS +RISUS +RISUSES +RITARD +RITARDANDO +RITARDANDOS +RITARDS +RITE +RITES +RITONAVIR +RITONAVIRS +RITORNELLI +RITORNELLO +RITORNELLOS +RITTER +RITTERS +RITUAL +RITUALISM +RITUALISMS +RITUALIST +RITUALISTIC +RITUALISTICALLY +RITUALISTS +RITUALIZATION +RITUALIZATIONS +RITUALIZE +RITUALIZED +RITUALIZES +RITUALIZING +RITUALLY +RITUALS +RITZ +RITZES +RITZIER +RITZIEST +RITZILY +RITZINESS +RITZINESSES +RITZY +RIVAGE +RIVAGES +RIVAL +RIVALED +RIVALING +RIVALLED +RIVALLING +RIVALRIES +RIVALROUS +RIVALRY +RIVALS +RIVE +RIVED +RIVEN +RIVER +RIVERBANK +RIVERBANKS +RIVERBED +RIVERBEDS +RIVERBOAT +RIVERBOATS +RIVERFRONT +RIVERFRONTS +RIVERHEAD +RIVERHEADS +RIVERINE +RIVERLESS +RIVERLIKE +RIVERS +RIVERSIDE +RIVERSIDES +RIVERWARD +RIVERWARDS +RIVERWEED +RIVERWEEDS +RIVES +RIVET +RIVETED +RIVETER +RIVETERS +RIVETING +RIVETINGLY +RIVETS +RIVETTED +RIVETTING +RIVIERA +RIVIERAS +RIVIERE +RIVIERES +RIVING +RIVULET +RIVULETS +RIVULOSE +RIYAL +RIYALS +ROACH +ROACHED +ROACHES +ROACHING +ROAD +ROADABILITIES +ROADABILITY +ROADBED +ROADBEDS +ROADBLOCK +ROADBLOCKED +ROADBLOCKING +ROADBLOCKS +ROADEO +ROADEOS +ROADHOLDING +ROADHOLDINGS +ROADHOUSE +ROADHOUSES +ROADIE +ROADIES +ROADKILL +ROADKILLS +ROADLESS +ROADRUNNER +ROADRUNNERS +ROADS +ROADSHOW +ROADSHOWS +ROADSIDE +ROADSIDES +ROADSTEAD +ROADSTEADS +ROADSTER +ROADSTERS +ROADWAY +ROADWAYS +ROADWORK +ROADWORKS +ROADWORTHINESS +ROADWORTHY +ROAM +ROAMED +ROAMER +ROAMERS +ROAMING +ROAMS +ROAN +ROANS +ROAR +ROARED +ROARER +ROARERS +ROARING +ROARINGLY +ROARINGS +ROARS +ROAST +ROASTED +ROASTER +ROASTERS +ROASTING +ROASTS +ROB +ROBALO +ROBALOS +ROBAND +ROBANDS +ROBBED +ROBBER +ROBBERIES +ROBBERS +ROBBERY +ROBBIN +ROBBING +ROBBINS +ROBE +ROBED +ROBES +ROBIN +ROBING +ROBINS +ROBLE +ROBLES +ROBORANT +ROBORANTS +ROBOT +ROBOTIC +ROBOTICALLY +ROBOTICS +ROBOTISM +ROBOTISMS +ROBOTIZATION +ROBOTIZATIONS +ROBOTIZE +ROBOTIZED +ROBOTIZES +ROBOTIZING +ROBOTRIES +ROBOTRY +ROBOTS +ROBS +ROBUST +ROBUSTA +ROBUSTAS +ROBUSTER +ROBUSTEST +ROBUSTIOUS +ROBUSTIOUSLY +ROBUSTIOUSNESS +ROBUSTLY +ROBUSTNESS +ROBUSTNESSES +ROC +ROCAILLE +ROCAILLES +ROCAMBOLE +ROCAMBOLES +ROCHET +ROCHETS +ROCK +ROCKABIES +ROCKABILLIES +ROCKABILLY +ROCKABLE +ROCKABY +ROCKABYE +ROCKABYES +ROCKAWAY +ROCKAWAYS +ROCKBOUND +ROCKED +ROCKER +ROCKERIES +ROCKERS +ROCKERY +ROCKET +ROCKETED +ROCKETEER +ROCKETEERS +ROCKETER +ROCKETERS +ROCKETING +ROCKETRIES +ROCKETRY +ROCKETS +ROCKFALL +ROCKFALLS +ROCKFISH +ROCKFISHES +ROCKHOPPER +ROCKHOPPERS +ROCKHOUND +ROCKHOUNDING +ROCKHOUNDINGS +ROCKHOUNDS +ROCKIER +ROCKIEST +ROCKINESS +ROCKINESSES +ROCKING +ROCKINGLY +ROCKLESS +ROCKLIKE +ROCKLING +ROCKLINGS +ROCKOON +ROCKOONS +ROCKROSE +ROCKROSES +ROCKS +ROCKSHAFT +ROCKSHAFTS +ROCKSLIDE +ROCKSLIDES +ROCKWEED +ROCKWEEDS +ROCKWORK +ROCKWORKS +ROCKY +ROCOCO +ROCOCOS +ROCS +ROD +RODDED +RODDING +RODE +RODENT +RODENTICIDE +RODENTICIDES +RODENTS +RODEO +RODEOED +RODEOING +RODEOS +RODES +RODLESS +RODLIKE +RODMAN +RODMEN +RODOMONTADE +RODOMONTADES +RODS +RODSMAN +RODSMEN +ROE +ROEBUCK +ROEBUCKS +ROENTGEN +ROENTGENOGRAM +ROENTGENOGRAMS +ROENTGENOGRAPHY +ROENTGENOLOGIC +ROENTGENOLOGIES +ROENTGENOLOGIST +ROENTGENOLOGY +ROENTGENS +ROES +ROGATION +ROGATIONS +ROGATORY +ROGER +ROGERED +ROGERING +ROGERS +ROGUE +ROGUED +ROGUEING +ROGUERIES +ROGUERY +ROGUES +ROGUING +ROGUISH +ROGUISHLY +ROGUISHNESS +ROGUISHNESSES +ROIL +ROILED +ROILIER +ROILIEST +ROILING +ROILS +ROILY +ROISTER +ROISTERED +ROISTERER +ROISTERERS +ROISTERING +ROISTEROUS +ROISTEROUSLY +ROISTERS +ROLAMITE +ROLAMITES +ROLE +ROLES +ROLF +ROLFED +ROLFER +ROLFERS +ROLFING +ROLFS +ROLL +ROLLAWAY +ROLLAWAYS +ROLLBACK +ROLLBACKS +ROLLED +ROLLER +ROLLERS +ROLLICK +ROLLICKED +ROLLICKING +ROLLICKS +ROLLICKY +ROLLING +ROLLINGS +ROLLMOP +ROLLMOPS +ROLLOUT +ROLLOUTS +ROLLOVER +ROLLOVERS +ROLLS +ROLLTOP +ROLLWAY +ROLLWAYS +ROM +ROMAINE +ROMAINES +ROMAJI +ROMAJIS +ROMAN +ROMANCE +ROMANCED +ROMANCER +ROMANCERS +ROMANCES +ROMANCING +ROMANISE +ROMANISED +ROMANISES +ROMANISING +ROMANIZATION +ROMANIZATIONS +ROMANIZE +ROMANIZED +ROMANIZES +ROMANIZING +ROMANO +ROMANOS +ROMANS +ROMANTIC +ROMANTICALLY +ROMANTICISE +ROMANTICISED +ROMANTICISES +ROMANTICISING +ROMANTICISM +ROMANTICISMS +ROMANTICIST +ROMANTICISTS +ROMANTICIZATION +ROMANTICIZE +ROMANTICIZED +ROMANTICIZES +ROMANTICIZING +ROMANTICS +ROMAUNT +ROMAUNTS +ROMELDALE +ROMELDALES +ROMEO +ROMEOS +ROMP +ROMPED +ROMPER +ROMPERS +ROMPING +ROMPINGLY +ROMPISH +ROMPS +ROMS +RONDEAU +RONDEAUX +RONDEL +RONDELET +RONDELETS +RONDELLE +RONDELLES +RONDELS +RONDO +RONDOS +RONDURE +RONDURES +RONION +RONIONS +RONNEL +RONNELS +RONTGEN +RONTGENS +RONYON +RONYONS +ROOD +ROODS +ROOF +ROOFED +ROOFER +ROOFERS +ROOFIE +ROOFIES +ROOFING +ROOFINGS +ROOFLESS +ROOFLIKE +ROOFLINE +ROOFLINES +ROOFS +ROOFTOP +ROOFTOPS +ROOFTREE +ROOFTREES +ROOK +ROOKED +ROOKERIES +ROOKERY +ROOKIE +ROOKIER +ROOKIES +ROOKIEST +ROOKING +ROOKS +ROOKY +ROOM +ROOMED +ROOMER +ROOMERS +ROOMETTE +ROOMETTES +ROOMFUL +ROOMFULS +ROOMIE +ROOMIER +ROOMIES +ROOMIEST +ROOMILY +ROOMINESS +ROOMINESSES +ROOMING +ROOMMATE +ROOMMATES +ROOMS +ROOMY +ROORBACH +ROORBACHS +ROORBACK +ROORBACKS +ROOSE +ROOSED +ROOSER +ROOSERS +ROOSES +ROOSING +ROOST +ROOSTED +ROOSTER +ROOSTERS +ROOSTING +ROOSTS +ROOT +ROOTAGE +ROOTAGES +ROOTCAP +ROOTCAPS +ROOTED +ROOTEDNESS +ROOTEDNESSES +ROOTER +ROOTERS +ROOTHOLD +ROOTHOLDS +ROOTIER +ROOTIEST +ROOTINESS +ROOTINESSES +ROOTING +ROOTLE +ROOTLED +ROOTLES +ROOTLESS +ROOTLESSNESS +ROOTLESSNESSES +ROOTLET +ROOTLETS +ROOTLIKE +ROOTLING +ROOTS +ROOTSTALK +ROOTSTALKS +ROOTSTOCK +ROOTSTOCKS +ROOTWORM +ROOTWORMS +ROOTY +ROPABLE +ROPE +ROPED +ROPEDANCER +ROPEDANCERS +ROPEDANCING +ROPEDANCINGS +ROPELIKE +ROPER +ROPERIES +ROPERS +ROPERY +ROPES +ROPEWALK +ROPEWALKER +ROPEWALKERS +ROPEWALKS +ROPEWAY +ROPEWAYS +ROPEY +ROPIER +ROPIEST +ROPILY +ROPINESS +ROPINESSES +ROPING +ROPY +ROQUE +ROQUELAURE +ROQUELAURES +ROQUES +ROQUET +ROQUETED +ROQUETING +ROQUETS +ROQUETTE +ROQUETTES +RORQUAL +RORQUALS +ROSACEA +ROSACEAS +ROSACEOUS +ROSANILIN +ROSANILINS +ROSARIA +ROSARIAN +ROSARIANS +ROSARIES +ROSARIUM +ROSARIUMS +ROSARY +ROSCOE +ROSCOES +ROSE +ROSEATE +ROSEATELY +ROSEBAY +ROSEBAYS +ROSEBUD +ROSEBUDS +ROSEBUSH +ROSEBUSHES +ROSED +ROSEFISH +ROSEFISHES +ROSEHIP +ROSEHIPS +ROSELIKE +ROSELLE +ROSELLES +ROSEMALING +ROSEMALINGS +ROSEMARIES +ROSEMARY +ROSEOLA +ROSEOLAR +ROSEOLAS +ROSERIES +ROSEROOT +ROSEROOTS +ROSERY +ROSES +ROSESLUG +ROSESLUGS +ROSET +ROSETS +ROSETTE +ROSETTES +ROSEWATER +ROSEWOOD +ROSEWOODS +ROSHI +ROSHIS +ROSIER +ROSIEST +ROSILY +ROSIN +ROSINED +ROSINESS +ROSINESSES +ROSING +ROSINING +ROSINOL +ROSINOLS +ROSINOUS +ROSINS +ROSINWEED +ROSINWEEDS +ROSINY +ROSOLIO +ROSOLIOS +ROSTELLA +ROSTELLAR +ROSTELLUM +ROSTELLUMS +ROSTER +ROSTERS +ROSTRA +ROSTRAL +ROSTRALLY +ROSTRATE +ROSTRUM +ROSTRUMS +ROSULATE +ROSY +ROT +ROTA +ROTAMETER +ROTAMETERS +ROTARIES +ROTARY +ROTAS +ROTATABLE +ROTATE +ROTATED +ROTATES +ROTATING +ROTATION +ROTATIONAL +ROTATIONS +ROTATIVE +ROTATIVELY +ROTATOR +ROTATORES +ROTATORS +ROTATORY +ROTAVIRUS +ROTAVIRUSES +ROTCH +ROTCHE +ROTCHES +ROTE +ROTENONE +ROTENONES +ROTES +ROTGUT +ROTGUTS +ROTI +ROTIFER +ROTIFERAL +ROTIFERAN +ROTIFERANS +ROTIFERS +ROTIFORM +ROTIS +ROTISSERIE +ROTISSERIES +ROTL +ROTLS +ROTO +ROTOGRAVURE +ROTOGRAVURES +ROTOR +ROTORCRAFT +ROTORS +ROTOS +ROTOTILL +ROTOTILLED +ROTOTILLER +ROTOTILLERS +ROTOTILLING +ROTOTILLS +ROTS +ROTTE +ROTTED +ROTTEN +ROTTENER +ROTTENEST +ROTTENLY +ROTTENNESS +ROTTENNESSES +ROTTENSTONE +ROTTENSTONES +ROTTER +ROTTERS +ROTTES +ROTTING +ROTTWEILER +ROTTWEILERS +ROTUND +ROTUNDA +ROTUNDAS +ROTUNDITIES +ROTUNDITY +ROTUNDLY +ROTUNDNESS +ROTUNDNESSES +ROTURIER +ROTURIERS +ROUBLE +ROUBLES +ROUCHE +ROUCHES +ROUE +ROUEN +ROUENS +ROUES +ROUGE +ROUGED +ROUGES +ROUGH +ROUGHAGE +ROUGHAGES +ROUGHBACK +ROUGHBACKS +ROUGHCAST +ROUGHCASTING +ROUGHCASTS +ROUGHDRIED +ROUGHDRIES +ROUGHDRY +ROUGHDRYING +ROUGHED +ROUGHEN +ROUGHENED +ROUGHENING +ROUGHENS +ROUGHER +ROUGHERS +ROUGHEST +ROUGHHEW +ROUGHHEWED +ROUGHHEWING +ROUGHHEWN +ROUGHHEWS +ROUGHHOUSE +ROUGHHOUSED +ROUGHHOUSES +ROUGHHOUSING +ROUGHIES +ROUGHING +ROUGHISH +ROUGHLEG +ROUGHLEGS +ROUGHLY +ROUGHNECK +ROUGHNECKED +ROUGHNECKING +ROUGHNECKS +ROUGHNESS +ROUGHNESSES +ROUGHRIDER +ROUGHRIDERS +ROUGHS +ROUGHSHOD +ROUGHY +ROUGING +ROUILLE +ROUILLES +ROULADE +ROULADES +ROULEAU +ROULEAUS +ROULEAUX +ROULETTE +ROULETTED +ROULETTES +ROULETTING +ROUND +ROUNDABOUT +ROUNDABOUTNESS +ROUNDABOUTS +ROUNDBALL +ROUNDBALLS +ROUNDED +ROUNDEDNESS +ROUNDEDNESSES +ROUNDEL +ROUNDELAY +ROUNDELAYS +ROUNDELS +ROUNDER +ROUNDERS +ROUNDEST +ROUNDHEADED +ROUNDHEADEDNESS +ROUNDHEEL +ROUNDHEELS +ROUNDHOUSE +ROUNDHOUSES +ROUNDING +ROUNDISH +ROUNDLET +ROUNDLETS +ROUNDLY +ROUNDNESS +ROUNDNESSES +ROUNDS +ROUNDSMAN +ROUNDSMEN +ROUNDTABLE +ROUNDTABLES +ROUNDTRIP +ROUNDTRIPS +ROUNDUP +ROUNDUPS +ROUNDWOOD +ROUNDWOODS +ROUNDWORM +ROUNDWORMS +ROUP +ROUPED +ROUPET +ROUPIER +ROUPIEST +ROUPILY +ROUPING +ROUPS +ROUPY +ROUSE +ROUSEABOUT +ROUSEABOUTS +ROUSED +ROUSEMENT +ROUSEMENTS +ROUSER +ROUSERS +ROUSES +ROUSING +ROUSINGLY +ROUSSEAU +ROUSSEAUS +ROUST +ROUSTABOUT +ROUSTABOUTS +ROUSTED +ROUSTER +ROUSTERS +ROUSTING +ROUSTS +ROUT +ROUTE +ROUTED +ROUTEMAN +ROUTEMEN +ROUTER +ROUTERS +ROUTES +ROUTEWAY +ROUTEWAYS +ROUTH +ROUTHS +ROUTINE +ROUTINELY +ROUTINES +ROUTING +ROUTINISM +ROUTINISMS +ROUTINIST +ROUTINISTS +ROUTINIZATION +ROUTINIZATIONS +ROUTINIZE +ROUTINIZED +ROUTINIZES +ROUTINIZING +ROUTS +ROUX +ROVE +ROVED +ROVEN +ROVER +ROVERS +ROVES +ROVING +ROVINGLY +ROVINGS +ROW +ROWABLE +ROWAN +ROWANBERRIES +ROWANBERRY +ROWANS +ROWBOAT +ROWBOATS +ROWDIER +ROWDIES +ROWDIEST +ROWDILY +ROWDINESS +ROWDINESSES +ROWDY +ROWDYISH +ROWDYISM +ROWDYISMS +ROWED +ROWEL +ROWELED +ROWELING +ROWELLED +ROWELLING +ROWELS +ROWEN +ROWENS +ROWER +ROWERS +ROWING +ROWINGS +ROWLOCK +ROWLOCKS +ROWS +ROWTH +ROWTHS +ROYAL +ROYALISM +ROYALISMS +ROYALIST +ROYALISTS +ROYALLY +ROYALMAST +ROYALMASTS +ROYALS +ROYALTIES +ROYALTY +ROYSTER +ROYSTERED +ROYSTERING +ROYSTERS +ROZZER +ROZZERS +RUANA +RUANAS +RUB +RUBABOO +RUBABOOS +RUBACE +RUBACES +RUBAIYAT +RUBASSE +RUBASSES +RUBATI +RUBATO +RUBATOS +RUBBABOO +RUBBABOOS +RUBBED +RUBBER +RUBBERED +RUBBERIER +RUBBERIEST +RUBBERING +RUBBERIZE +RUBBERIZED +RUBBERIZES +RUBBERIZING +RUBBERLIKE +RUBBERNECK +RUBBERNECKED +RUBBERNECKER +RUBBERNECKERS +RUBBERNECKING +RUBBERNECKS +RUBBERS +RUBBERY +RUBBIES +RUBBING +RUBBINGS +RUBBISH +RUBBISHES +RUBBISHY +RUBBLE +RUBBLED +RUBBLES +RUBBLIER +RUBBLIEST +RUBBLING +RUBBLY +RUBBOARD +RUBBOARDS +RUBBY +RUBDOWN +RUBDOWNS +RUBE +RUBEFACIENT +RUBEFACIENTS +RUBEL +RUBELLA +RUBELLAS +RUBELLITE +RUBELLITES +RUBELS +RUBEOLA +RUBEOLAR +RUBEOLAS +RUBES +RUBESCENT +RUBICUND +RUBICUNDITIES +RUBICUNDITY +RUBIDIC +RUBIDIUM +RUBIDIUMS +RUBIED +RUBIER +RUBIES +RUBIEST +RUBIGO +RUBIGOS +RUBIOUS +RUBLE +RUBLES +RUBOFF +RUBOFFS +RUBOUT +RUBOUTS +RUBRIC +RUBRICAL +RUBRICALLY +RUBRICATE +RUBRICATED +RUBRICATES +RUBRICATING +RUBRICATION +RUBRICATIONS +RUBRICATOR +RUBRICATORS +RUBRICIAN +RUBRICIANS +RUBRICS +RUBS +RUBUS +RUBY +RUBYING +RUBYLIKE +RUBYTHROAT +RUBYTHROATS +RUCHE +RUCHED +RUCHES +RUCHING +RUCHINGS +RUCK +RUCKED +RUCKING +RUCKLE +RUCKLED +RUCKLES +RUCKLING +RUCKS +RUCKSACK +RUCKSACKS +RUCKUS +RUCKUSES +RUCTION +RUCTIONS +RUCTIOUS +RUDBECKIA +RUDBECKIAS +RUDD +RUDDER +RUDDERLESS +RUDDERPOST +RUDDERPOSTS +RUDDERS +RUDDIER +RUDDIEST +RUDDILY +RUDDINESS +RUDDINESSES +RUDDLE +RUDDLED +RUDDLEMAN +RUDDLEMEN +RUDDLES +RUDDLING +RUDDOCK +RUDDOCKS +RUDDS +RUDDY +RUDE +RUDELY +RUDENESS +RUDENESSES +RUDER +RUDERAL +RUDERALS +RUDERIES +RUDERY +RUDESBIES +RUDESBY +RUDEST +RUDIMENT +RUDIMENTAL +RUDIMENTARILY +RUDIMENTARINESS +RUDIMENTARY +RUDIMENTS +RUE +RUED +RUEFUL +RUEFULLY +RUEFULNESS +RUEFULNESSES +RUER +RUERS +RUES +RUFESCENT +RUFF +RUFFE +RUFFED +RUFFES +RUFFIAN +RUFFIANISM +RUFFIANISMS +RUFFIANLY +RUFFIANS +RUFFING +RUFFLE +RUFFLED +RUFFLER +RUFFLERS +RUFFLES +RUFFLIER +RUFFLIEST +RUFFLIKE +RUFFLING +RUFFLY +RUFFS +RUFIYAA +RUFOUS +RUG +RUGA +RUGAE +RUGAL +RUGALACH +RUGATE +RUGBIES +RUGBY +RUGELACH +RUGGED +RUGGEDER +RUGGEDEST +RUGGEDIZATION +RUGGEDIZATIONS +RUGGEDIZE +RUGGEDIZED +RUGGEDIZES +RUGGEDIZING +RUGGEDLY +RUGGEDNESS +RUGGEDNESSES +RUGGER +RUGGERS +RUGGING +RUGLIKE +RUGOLA +RUGOLAS +RUGOSA +RUGOSAS +RUGOSE +RUGOSELY +RUGOSITIES +RUGOSITY +RUGOUS +RUGS +RUGULOSE +RUIN +RUINABLE +RUINATE +RUINATED +RUINATES +RUINATING +RUINATION +RUINATIONS +RUINED +RUINER +RUINERS +RUING +RUINING +RUINOUS +RUINOUSLY +RUINOUSNESS +RUINOUSNESSES +RUINS +RULABLE +RULE +RULED +RULELESS +RULER +RULERS +RULERSHIP +RULERSHIPS +RULES +RULIER +RULIEST +RULING +RULINGS +RULY +RUM +RUMAKI +RUMAKIS +RUMBA +RUMBAED +RUMBAING +RUMBAS +RUMBLE +RUMBLED +RUMBLER +RUMBLERS +RUMBLES +RUMBLING +RUMBLINGS +RUMBLY +RUMBUSTIOUS +RUMBUSTIOUSLY +RUMBUSTIOUSNESS +RUMEN +RUMENS +RUMINA +RUMINAL +RUMINANT +RUMINANTLY +RUMINANTS +RUMINATE +RUMINATED +RUMINATES +RUMINATING +RUMINATION +RUMINATIONS +RUMINATIVE +RUMINATIVELY +RUMINATOR +RUMINATORS +RUMMAGE +RUMMAGED +RUMMAGER +RUMMAGERS +RUMMAGES +RUMMAGING +RUMMER +RUMMERS +RUMMEST +RUMMIER +RUMMIES +RUMMIEST +RUMMY +RUMOR +RUMORED +RUMORING +RUMORMONGER +RUMORMONGERING +RUMORMONGERINGS +RUMORMONGERS +RUMORS +RUMOUR +RUMOURED +RUMOURING +RUMOURS +RUMP +RUMPLE +RUMPLED +RUMPLES +RUMPLESS +RUMPLIER +RUMPLIEST +RUMPLING +RUMPLY +RUMPS +RUMPUS +RUMPUSES +RUMRUNNER +RUMRUNNERS +RUMS +RUN +RUNABOUT +RUNABOUTS +RUNAGATE +RUNAGATES +RUNAROUND +RUNAROUNDS +RUNAWAY +RUNAWAYS +RUNBACK +RUNBACKS +RUNCINATE +RUNDLE +RUNDLES +RUNDLET +RUNDLETS +RUNDOWN +RUNDOWNS +RUNE +RUNELIKE +RUNES +RUNG +RUNGLESS +RUNGS +RUNIC +RUNKLE +RUNKLED +RUNKLES +RUNKLING +RUNLESS +RUNLET +RUNLETS +RUNNEL +RUNNELS +RUNNER +RUNNERS +RUNNIER +RUNNIEST +RUNNINESS +RUNNINESSES +RUNNING +RUNNINGS +RUNNY +RUNOFF +RUNOFFS +RUNOUT +RUNOUTS +RUNOVER +RUNOVERS +RUNROUND +RUNROUNDS +RUNS +RUNT +RUNTIER +RUNTIEST +RUNTINESS +RUNTINESSES +RUNTISH +RUNTISHLY +RUNTS +RUNTY +RUNWAY +RUNWAYS +RUPEE +RUPEES +RUPIAH +RUPIAHS +RUPTURE +RUPTURED +RUPTURES +RUPTURING +RURAL +RURALISE +RURALISED +RURALISES +RURALISING +RURALISM +RURALISMS +RURALIST +RURALISTS +RURALITE +RURALITES +RURALITIES +RURALITY +RURALIZE +RURALIZED +RURALIZES +RURALIZING +RURALLY +RURBAN +RUSE +RUSES +RUSH +RUSHED +RUSHEE +RUSHEES +RUSHER +RUSHERS +RUSHES +RUSHIER +RUSHIEST +RUSHING +RUSHINGS +RUSHLIGHT +RUSHLIGHTS +RUSHLIKE +RUSHY +RUSINE +RUSK +RUSKS +RUSSET +RUSSETING +RUSSETINGS +RUSSETS +RUSSETTING +RUSSETTINGS +RUSSETY +RUSSIFIED +RUSSIFIES +RUSSIFY +RUSSIFYING +RUST +RUSTABLE +RUSTED +RUSTIC +RUSTICAL +RUSTICALLY +RUSTICALS +RUSTICATE +RUSTICATED +RUSTICATES +RUSTICATING +RUSTICATION +RUSTICATIONS +RUSTICATOR +RUSTICATORS +RUSTICITIES +RUSTICITY +RUSTICLY +RUSTICS +RUSTIER +RUSTIEST +RUSTILY +RUSTINESS +RUSTINESSES +RUSTING +RUSTLE +RUSTLED +RUSTLER +RUSTLERS +RUSTLES +RUSTLESS +RUSTLING +RUSTPROOF +RUSTPROOFED +RUSTPROOFING +RUSTPROOFS +RUSTS +RUSTY +RUT +RUTABAGA +RUTABAGAS +RUTH +RUTHENIC +RUTHENIUM +RUTHENIUMS +RUTHERFORDIUM +RUTHERFORDIUMS +RUTHFUL +RUTHFULLY +RUTHFULNESS +RUTHFULNESSES +RUTHLESS +RUTHLESSLY +RUTHLESSNESS +RUTHLESSNESSES +RUTHS +RUTILANT +RUTILE +RUTILES +RUTIN +RUTINS +RUTS +RUTTED +RUTTIER +RUTTIEST +RUTTILY +RUTTINESS +RUTTINESSES +RUTTING +RUTTISH +RUTTISHLY +RUTTISHNESS +RUTTISHNESSES +RUTTY +RYA +RYAS +RYE +RYEGRASS +RYEGRASSES +RYES +RYKE +RYKED +RYKES +RYKING +RYND +RYNDS +RYOKAN +RYOKANS +RYOT +RYOTS +SAB +SABADILLA +SABADILLAS +SABAL +SABALS +SABATON +SABATONS +SABAYON +SABAYONS +SABBAT +SABBATH +SABBATHS +SABBATIC +SABBATICAL +SABBATICALS +SABBATICS +SABBATS +SABBED +SABBING +SABE +SABED +SABEING +SABER +SABERED +SABERING +SABERLIKE +SABERMETRICIAN +SABERMETRICIANS +SABERMETRICS +SABERS +SABES +SABIN +SABINE +SABINES +SABINS +SABIR +SABIRS +SABLE +SABLEFISH +SABLEFISHES +SABLES +SABOT +SABOTAGE +SABOTAGED +SABOTAGES +SABOTAGING +SABOTEUR +SABOTEURS +SABOTS +SABRA +SABRAS +SABRE +SABRED +SABRES +SABRING +SABS +SABULOSE +SABULOUS +SAC +SACAHUISTA +SACAHUISTAS +SACAHUISTE +SACAHUISTES +SACATON +SACATONS +SACBUT +SACBUTS +SACCADE +SACCADES +SACCADIC +SACCATE +SACCHARASE +SACCHARASES +SACCHARIC +SACCHARIDE +SACCHARIDES +SACCHARIFIED +SACCHARIFIES +SACCHARIFY +SACCHARIFYING +SACCHARIMETER +SACCHARIMETERS +SACCHARIN +SACCHARINE +SACCHARINITIES +SACCHARINITY +SACCHARINS +SACCHAROIDAL +SACCHAROMETER +SACCHAROMETERS +SACCHAROMYCES +SACCHAROMYCETES +SACCULAR +SACCULATE +SACCULATED +SACCULATION +SACCULATIONS +SACCULE +SACCULES +SACCULI +SACCULUS +SACERDOTAL +SACERDOTALISM +SACERDOTALISMS +SACERDOTALIST +SACERDOTALISTS +SACERDOTALLY +SACHEM +SACHEMIC +SACHEMS +SACHET +SACHETED +SACHETS +SACK +SACKBUT +SACKBUTS +SACKCLOTH +SACKCLOTHS +SACKED +SACKER +SACKERS +SACKFUL +SACKFULS +SACKING +SACKINGS +SACKLIKE +SACKS +SACKSFUL +SACLIKE +SACQUE +SACQUES +SACRA +SACRAL +SACRALIZE +SACRALIZED +SACRALIZES +SACRALIZING +SACRALS +SACRAMENT +SACRAMENTAL +SACRAMENTALISM +SACRAMENTALISMS +SACRAMENTALIST +SACRAMENTALISTS +SACRAMENTALLY +SACRAMENTALS +SACRAMENTS +SACRARIA +SACRARIAL +SACRARIUM +SACRED +SACREDLY +SACREDNESS +SACREDNESSES +SACRIFICE +SACRIFICED +SACRIFICER +SACRIFICERS +SACRIFICES +SACRIFICIAL +SACRIFICIALLY +SACRIFICING +SACRILEGE +SACRILEGES +SACRILEGIOUS +SACRILEGIOUSLY +SACRING +SACRINGS +SACRIST +SACRISTAN +SACRISTANS +SACRISTIES +SACRISTS +SACRISTY +SACROILIAC +SACROILIACS +SACROSANCT +SACROSANCTITIES +SACROSANCTITY +SACRUM +SACRUMS +SACS +SAD +SADDEN +SADDENED +SADDENING +SADDENS +SADDER +SADDEST +SADDHU +SADDHUS +SADDLE +SADDLEBAG +SADDLEBAGS +SADDLEBOW +SADDLEBOWS +SADDLEBRED +SADDLEBREDS +SADDLECLOTH +SADDLECLOTHS +SADDLED +SADDLELESS +SADDLER +SADDLERIES +SADDLERS +SADDLERY +SADDLES +SADDLETREE +SADDLETREES +SADDLING +SADE +SADES +SADHE +SADHES +SADHU +SADHUS +SADI +SADIRON +SADIRONS +SADIS +SADISM +SADISMS +SADIST +SADISTIC +SADISTICALLY +SADISTS +SADLY +SADNESS +SADNESSES +SADOMASOCHISM +SADOMASOCHISMS +SADOMASOCHIST +SADOMASOCHISTIC +SADOMASOCHISTS +SAE +SAFARI +SAFARIED +SAFARIING +SAFARIS +SAFE +SAFECRACKER +SAFECRACKERS +SAFECRACKING +SAFECRACKINGS +SAFEGUARD +SAFEGUARDED +SAFEGUARDING +SAFEGUARDS +SAFEKEEPING +SAFEKEEPINGS +SAFELIGHT +SAFELIGHTS +SAFELY +SAFENESS +SAFENESSES +SAFER +SAFES +SAFEST +SAFETIED +SAFETIES +SAFETY +SAFETYING +SAFETYMAN +SAFETYMEN +SAFFLOWER +SAFFLOWERS +SAFFRON +SAFFRONS +SAFRANIN +SAFRANINE +SAFRANINES +SAFRANINS +SAFROL +SAFROLE +SAFROLES +SAFROLS +SAG +SAGA +SAGACIOUS +SAGACIOUSLY +SAGACIOUSNESS +SAGACIOUSNESSES +SAGACITIES +SAGACITY +SAGAMAN +SAGAMEN +SAGAMORE +SAGAMORES +SAGANASH +SAGANASHES +SAGAS +SAGBUT +SAGBUTS +SAGE +SAGEBRUSH +SAGEBRUSHES +SAGELY +SAGENESS +SAGENESSES +SAGER +SAGES +SAGEST +SAGGAR +SAGGARD +SAGGARDS +SAGGARED +SAGGARING +SAGGARS +SAGGED +SAGGER +SAGGERED +SAGGERING +SAGGERS +SAGGIER +SAGGIEST +SAGGING +SAGGY +SAGIER +SAGIEST +SAGITTAL +SAGITTALLY +SAGITTARIES +SAGITTARY +SAGITTATE +SAGO +SAGOS +SAGS +SAGUARO +SAGUAROS +SAGUM +SAGY +SAHIB +SAHIBS +SAHIWAL +SAHIWALS +SAHUARO +SAHUAROS +SAICE +SAICES +SAID +SAIDS +SAIGA +SAIGAS +SAIL +SAILABLE +SAILBOARD +SAILBOARDED +SAILBOARDING +SAILBOARDINGS +SAILBOARDS +SAILBOAT +SAILBOATER +SAILBOATERS +SAILBOATING +SAILBOATINGS +SAILBOATS +SAILCLOTH +SAILCLOTHS +SAILED +SAILER +SAILERS +SAILFISH +SAILFISHES +SAILING +SAILINGS +SAILLESS +SAILMAKER +SAILMAKERS +SAILOR +SAILORLY +SAILORS +SAILPLANE +SAILPLANED +SAILPLANER +SAILPLANERS +SAILPLANES +SAILPLANING +SAILS +SAIMIN +SAIMINS +SAIN +SAINED +SAINFOIN +SAINFOINS +SAINING +SAINS +SAINT +SAINTDOM +SAINTDOMS +SAINTED +SAINTHOOD +SAINTHOODS +SAINTING +SAINTLIER +SAINTLIEST +SAINTLIKE +SAINTLINESS +SAINTLINESSES +SAINTLY +SAINTS +SAINTSHIP +SAINTSHIPS +SAITH +SAITHE +SAIYID +SAIYIDS +SAJOU +SAJOUS +SAKE +SAKER +SAKERS +SAKES +SAKI +SAKIS +SAL +SALAAM +SALAAMED +SALAAMING +SALAAMS +SALABILITIES +SALABILITY +SALABLE +SALABLY +SALACIOUS +SALACIOUSLY +SALACIOUSNESS +SALACIOUSNESSES +SALACITIES +SALACITY +SALAD +SALADANG +SALADANGS +SALADS +SALAL +SALALS +SALAMANDER +SALAMANDERS +SALAMANDRINE +SALAMI +SALAMIS +SALARIAT +SALARIATS +SALARIED +SALARIES +SALARY +SALARYING +SALARYMAN +SALARYMEN +SALCHOW +SALCHOWS +SALE +SALEABLE +SALEABLY +SALEP +SALEPS +SALERATUS +SALERATUSES +SALEROOM +SALEROOMS +SALES +SALESCLERK +SALESCLERKS +SALESGIRL +SALESGIRLS +SALESLADIES +SALESLADY +SALESMAN +SALESMANSHIP +SALESMANSHIPS +SALESMEN +SALESPEOPLE +SALESPERSON +SALESPERSONS +SALESROOM +SALESROOMS +SALESWOMAN +SALESWOMEN +SALIC +SALICIN +SALICINE +SALICINES +SALICINS +SALICYLATE +SALICYLATES +SALIENCE +SALIENCES +SALIENCIES +SALIENCY +SALIENT +SALIENTLY +SALIENTS +SALIFIED +SALIFIES +SALIFY +SALIFYING +SALIMETER +SALIMETERS +SALIMETRIES +SALIMETRY +SALINA +SALINAS +SALINE +SALINES +SALINITIES +SALINITY +SALINIZATION +SALINIZATIONS +SALINIZE +SALINIZED +SALINIZES +SALINIZING +SALINOMETER +SALINOMETERS +SALIVA +SALIVARY +SALIVAS +SALIVATE +SALIVATED +SALIVATES +SALIVATING +SALIVATION +SALIVATIONS +SALIVATOR +SALIVATORS +SALL +SALLET +SALLETS +SALLIED +SALLIER +SALLIERS +SALLIES +SALLOW +SALLOWED +SALLOWER +SALLOWEST +SALLOWING +SALLOWISH +SALLOWLY +SALLOWNESS +SALLOWNESSES +SALLOWS +SALLOWY +SALLY +SALLYING +SALMAGUNDI +SALMAGUNDIS +SALMI +SALMIS +SALMON +SALMONBERRIES +SALMONBERRY +SALMONELLA +SALMONELLAE +SALMONELLAS +SALMONELLOSES +SALMONELLOSIS +SALMONID +SALMONIDS +SALMONOID +SALMONOIDS +SALMONS +SALOL +SALOLS +SALOMETER +SALOMETERS +SALON +SALONS +SALOON +SALOONS +SALOOP +SALOOPS +SALP +SALPA +SALPAE +SALPAS +SALPIAN +SALPIANS +SALPID +SALPIDS +SALPIFORM +SALPIGLOSSES +SALPIGLOSSIS +SALPINGES +SALPINGITIS +SALPINGITISES +SALPINX +SALPS +SALS +SALSA +SALSAS +SALSIFIES +SALSIFY +SALSILLA +SALSILLAS +SALT +SALTANT +SALTARELLO +SALTARELLOS +SALTATION +SALTATIONS +SALTATORIAL +SALTATORY +SALTBOX +SALTBOXES +SALTBUSH +SALTBUSHES +SALTCELLAR +SALTCELLARS +SALTCHUCK +SALTCHUCKS +SALTED +SALTER +SALTERN +SALTERNS +SALTERS +SALTEST +SALTIE +SALTIER +SALTIERS +SALTIES +SALTIEST +SALTILY +SALTIMBOCCA +SALTIMBOCCAS +SALTINE +SALTINES +SALTINESS +SALTINESSES +SALTING +SALTINGS +SALTIRE +SALTIRES +SALTISH +SALTLESS +SALTLIKE +SALTNESS +SALTNESSES +SALTPAN +SALTPANS +SALTPETER +SALTPETERS +SALTPETRE +SALTPETRES +SALTS +SALTSHAKER +SALTSHAKERS +SALTWATER +SALTWORK +SALTWORKS +SALTWORT +SALTWORTS +SALTY +SALUBRIOUS +SALUBRIOUSLY +SALUBRIOUSNESS +SALUBRITIES +SALUBRITY +SALUKI +SALUKIS +SALURETIC +SALURETICS +SALUTARILY +SALUTARINESS +SALUTARINESSES +SALUTARY +SALUTATION +SALUTATIONAL +SALUTATIONS +SALUTATORIAN +SALUTATORIANS +SALUTATORIES +SALUTATORY +SALUTE +SALUTED +SALUTER +SALUTERS +SALUTES +SALUTIFEROUS +SALUTING +SALVABLE +SALVABLY +SALVAGE +SALVAGEABILITY +SALVAGEABLE +SALVAGED +SALVAGEE +SALVAGEES +SALVAGER +SALVAGERS +SALVAGES +SALVAGING +SALVARSAN +SALVARSANS +SALVATION +SALVATIONAL +SALVATIONISM +SALVATIONISMS +SALVATIONIST +SALVATIONISTS +SALVATIONS +SALVE +SALVED +SALVER +SALVERFORM +SALVERS +SALVES +SALVIA +SALVIAS +SALVIFIC +SALVING +SALVO +SALVOED +SALVOES +SALVOING +SALVOR +SALVORS +SALVOS +SAMADHI +SAMADHIS +SAMARA +SAMARAS +SAMARITAN +SAMARITANS +SAMARIUM +SAMARIUMS +SAMARSKITE +SAMARSKITES +SAMBA +SAMBAED +SAMBAING +SAMBAL +SAMBALS +SAMBAR +SAMBARS +SAMBAS +SAMBHAR +SAMBHARS +SAMBHUR +SAMBHURS +SAMBO +SAMBOS +SAMBUCA +SAMBUCAS +SAMBUKE +SAMBUKES +SAMBUR +SAMBURS +SAME +SAMECH +SAMECHS +SAMEK +SAMEKH +SAMEKHS +SAMEKS +SAMENESS +SAMENESSES +SAMIEL +SAMIELS +SAMISEN +SAMISENS +SAMITE +SAMITES +SAMIZDAT +SAMIZDATS +SAMLET +SAMLETS +SAMOSA +SAMOSAS +SAMOVAR +SAMOVARS +SAMOYED +SAMOYEDS +SAMP +SAMPAN +SAMPANS +SAMPHIRE +SAMPHIRES +SAMPLE +SAMPLED +SAMPLER +SAMPLERS +SAMPLES +SAMPLING +SAMPLINGS +SAMPS +SAMSARA +SAMSARAS +SAMSHU +SAMSHUS +SAMURAI +SAMURAIS +SANATIVE +SANATORIA +SANATORIUM +SANATORIUMS +SANBENITO +SANBENITOS +SANCTA +SANCTIFICATION +SANCTIFICATIONS +SANCTIFIED +SANCTIFIER +SANCTIFIERS +SANCTIFIES +SANCTIFY +SANCTIFYING +SANCTIMONIES +SANCTIMONIOUS +SANCTIMONIOUSLY +SANCTIMONY +SANCTION +SANCTIONABLE +SANCTIONED +SANCTIONING +SANCTIONS +SANCTITIES +SANCTITY +SANCTUARIES +SANCTUARY +SANCTUM +SANCTUMS +SAND +SANDABLE +SANDAL +SANDALED +SANDALING +SANDALLED +SANDALLING +SANDALS +SANDALWOOD +SANDALWOODS +SANDARAC +SANDARACS +SANDBAG +SANDBAGGED +SANDBAGGER +SANDBAGGERS +SANDBAGGING +SANDBAGS +SANDBANK +SANDBANKS +SANDBAR +SANDBARS +SANDBLAST +SANDBLASTED +SANDBLASTER +SANDBLASTERS +SANDBLASTING +SANDBLASTS +SANDBOX +SANDBOXES +SANDBUR +SANDBURR +SANDBURRS +SANDBURS +SANDCRACK +SANDCRACKS +SANDDAB +SANDDABS +SANDED +SANDER +SANDERLING +SANDERLINGS +SANDERS +SANDFISH +SANDFISHES +SANDFLIES +SANDFLY +SANDGLASS +SANDGLASSES +SANDGROUSE +SANDGROUSES +SANDHI +SANDHIS +SANDHOG +SANDHOGS +SANDIER +SANDIEST +SANDINESS +SANDINESSES +SANDING +SANDLESS +SANDLIKE +SANDLING +SANDLINGS +SANDLOT +SANDLOTS +SANDLOTTER +SANDLOTTERS +SANDMAN +SANDMEN +SANDPAINTING +SANDPAINTINGS +SANDPAPER +SANDPAPERED +SANDPAPERING +SANDPAPERS +SANDPAPERY +SANDPEEP +SANDPEEPS +SANDPILE +SANDPILES +SANDPIPER +SANDPIPERS +SANDPIT +SANDPITS +SANDS +SANDSHOE +SANDSHOES +SANDSOAP +SANDSOAPS +SANDSPUR +SANDSPURS +SANDSTONE +SANDSTONES +SANDSTORM +SANDSTORMS +SANDWICH +SANDWICHED +SANDWICHES +SANDWICHING +SANDWORM +SANDWORMS +SANDWORT +SANDWORTS +SANDY +SANE +SANED +SANELY +SANENESS +SANENESSES +SANER +SANES +SANEST +SANG +SANGA +SANGAR +SANGAREE +SANGAREES +SANGARS +SANGAS +SANGER +SANGERS +SANGFROID +SANGFROIDS +SANGH +SANGHS +SANGRIA +SANGRIAS +SANGUINARIA +SANGUINARIAS +SANGUINARILY +SANGUINARY +SANGUINE +SANGUINELY +SANGUINENESS +SANGUINENESSES +SANGUINEOUS +SANGUINES +SANGUINITIES +SANGUINITY +SANICLE +SANICLES +SANIDINE +SANIDINES +SANIES +SANING +SANIOUS +SANITARIA +SANITARIAN +SANITARIANS +SANITARIES +SANITARILY +SANITARIUM +SANITARIUMS +SANITARY +SANITATE +SANITATED +SANITATES +SANITATING +SANITATION +SANITATIONS +SANITIES +SANITISE +SANITISED +SANITISES +SANITISING +SANITIZATION +SANITIZATIONS +SANITIZE +SANITIZED +SANITIZER +SANITIZERS +SANITIZES +SANITIZING +SANITORIA +SANITORIUM +SANITORIUMS +SANITY +SANJAK +SANJAKS +SANK +SANNOP +SANNOPS +SANNUP +SANNUPS +SANNYASI +SANNYASIN +SANNYASINS +SANNYASIS +SANS +SANSAR +SANSARS +SANSCULOTTE +SANSCULOTTES +SANSCULOTTIC +SANSCULOTTISH +SANSCULOTTISM +SANSCULOTTISMS +SANSEI +SANSEIS +SANSERIF +SANSERIFS +SANSEVIERIA +SANSEVIERIAS +SANTALIC +SANTALOL +SANTALOLS +SANTERA +SANTERAS +SANTERIA +SANTERIAS +SANTERO +SANTEROS +SANTIMI +SANTIMS +SANTIMU +SANTIR +SANTIRS +SANTO +SANTOL +SANTOLINA +SANTOLINAS +SANTOLS +SANTONICA +SANTONICAS +SANTONIN +SANTONINS +SANTOOR +SANTOORS +SANTOS +SANTOUR +SANTOURS +SANTUR +SANTURS +SAP +SAPAJOU +SAPAJOUS +SAPANWOOD +SAPANWOODS +SAPHEAD +SAPHEADED +SAPHEADS +SAPHENA +SAPHENAE +SAPHENAS +SAPHENOUS +SAPID +SAPIDITIES +SAPIDITY +SAPIENCE +SAPIENCES +SAPIENCIES +SAPIENCY +SAPIENS +SAPIENT +SAPIENTLY +SAPIENTS +SAPLESS +SAPLESSNESS +SAPLESSNESSES +SAPLING +SAPLINGS +SAPODILLA +SAPODILLAS +SAPOGENIN +SAPOGENINS +SAPONACEOUS +SAPONACEOUSNESS +SAPONATED +SAPONIFIABLE +SAPONIFICATION +SAPONIFICATIONS +SAPONIFIED +SAPONIFIER +SAPONIFIERS +SAPONIFIES +SAPONIFY +SAPONIFYING +SAPONIN +SAPONINE +SAPONINES +SAPONINS +SAPONITE +SAPONITES +SAPOR +SAPORIFIC +SAPOROUS +SAPORS +SAPOTA +SAPOTAS +SAPOTE +SAPOTES +SAPOUR +SAPOURS +SAPPED +SAPPER +SAPPERS +SAPPHIC +SAPPHICS +SAPPHIRE +SAPPHIRES +SAPPHIRINE +SAPPHISM +SAPPHISMS +SAPPHIST +SAPPHISTS +SAPPIER +SAPPIEST +SAPPILY +SAPPINESS +SAPPINESSES +SAPPING +SAPPY +SAPRAEMIA +SAPRAEMIAS +SAPREMIA +SAPREMIAS +SAPREMIC +SAPROBE +SAPROBES +SAPROBIAL +SAPROBIC +SAPROGENIC +SAPROGENICITIES +SAPROGENICITY +SAPROLITE +SAPROLITES +SAPROPEL +SAPROPELS +SAPROPHAGOUS +SAPROPHYTE +SAPROPHYTES +SAPROPHYTIC +SAPROPHYTICALLY +SAPROZOIC +SAPS +SAPSAGO +SAPSAGOS +SAPSUCKER +SAPSUCKERS +SAPWOOD +SAPWOODS +SARABAND +SARABANDE +SARABANDES +SARABANDS +SARAN +SARANS +SARAPE +SARAPES +SARCASM +SARCASMS +SARCASTIC +SARCASTICALLY +SARCENET +SARCENETS +SARCINA +SARCINAE +SARCINAS +SARCOCARP +SARCOCARPS +SARCOID +SARCOIDOSES +SARCOIDOSIS +SARCOIDS +SARCOLEMMA +SARCOLEMMAL +SARCOLEMMAS +SARCOLOGIES +SARCOLOGY +SARCOMA +SARCOMAS +SARCOMATA +SARCOMATOSES +SARCOMATOSIS +SARCOMATOUS +SARCOMERE +SARCOMERES +SARCOPHAGI +SARCOPHAGUS +SARCOPHAGUSES +SARCOPLASM +SARCOPLASMIC +SARCOPLASMS +SARCOSOMAL +SARCOSOME +SARCOSOMES +SARCOUS +SARD +SARDANA +SARDANAS +SARDAR +SARDARS +SARDINE +SARDINED +SARDINES +SARDINING +SARDIUS +SARDIUSES +SARDONIC +SARDONICALLY +SARDONICISM +SARDONICISMS +SARDONYX +SARDONYXES +SARDS +SAREE +SAREES +SARGASSO +SARGASSOS +SARGASSUM +SARGASSUMS +SARGE +SARGES +SARGO +SARGOS +SARI +SARIN +SARINS +SARIS +SARK +SARKIER +SARKIEST +SARKS +SARKY +SARMENT +SARMENTA +SARMENTS +SARMENTUM +SAROD +SARODE +SARODES +SARODIST +SARODISTS +SARODS +SARONG +SARONGS +SAROS +SAROSES +SARRACENIA +SARRACENIAS +SARSAPARILLA +SARSAPARILLAS +SARSAR +SARSARS +SARSEN +SARSENET +SARSENETS +SARSENS +SARSNET +SARSNETS +SARTOR +SARTORIAL +SARTORIALLY +SARTORII +SARTORIUS +SARTORS +SASH +SASHAY +SASHAYED +SASHAYING +SASHAYS +SASHED +SASHES +SASHIMI +SASHIMIS +SASHING +SASHLESS +SASIN +SASINS +SASKATOON +SASKATOONS +SASQUATCH +SASQUATCHES +SASS +SASSABIES +SASSABY +SASSAFRAS +SASSAFRASES +SASSED +SASSES +SASSIER +SASSIES +SASSIEST +SASSILY +SASSINESS +SASSINESSES +SASSING +SASSWOOD +SASSWOODS +SASSY +SASSYWOOD +SASSYWOODS +SASTRUGA +SASTRUGI +SAT +SATANG +SATANGS +SATANIC +SATANICAL +SATANICALLY +SATANISM +SATANISMS +SATANIST +SATANISTS +SATARA +SATARAS +SATAY +SATAYS +SATCHEL +SATCHELED +SATCHELFUL +SATCHELFULS +SATCHELS +SATCHELSFUL +SATE +SATED +SATEEN +SATEENS +SATELLITE +SATELLITES +SATEM +SATES +SATI +SATIABLE +SATIABLY +SATIATE +SATIATED +SATIATES +SATIATING +SATIATION +SATIATIONS +SATIETIES +SATIETY +SATIN +SATINET +SATINETS +SATINETTE +SATINETTES +SATING +SATINPOD +SATINPODS +SATINS +SATINWOOD +SATINWOODS +SATINY +SATIRE +SATIRES +SATIRIC +SATIRICAL +SATIRICALLY +SATIRISE +SATIRISED +SATIRISES +SATIRISING +SATIRIST +SATIRISTS +SATIRIZABLE +SATIRIZE +SATIRIZED +SATIRIZER +SATIRIZERS +SATIRIZES +SATIRIZING +SATIS +SATISFACTION +SATISFACTIONS +SATISFACTORILY +SATISFACTORY +SATISFIABLE +SATISFICE +SATISFICED +SATISFICES +SATISFICING +SATISFIED +SATISFIER +SATISFIERS +SATISFIES +SATISFY +SATISFYING +SATISFYINGLY +SATORI +SATORIS +SATRAP +SATRAPIES +SATRAPS +SATRAPY +SATSUMA +SATSUMAS +SATURABLE +SATURANT +SATURANTS +SATURATE +SATURATED +SATURATER +SATURATERS +SATURATES +SATURATING +SATURATION +SATURATIONS +SATURATOR +SATURATORS +SATURNALIA +SATURNALIAN +SATURNALIANLY +SATURNALIAS +SATURNIID +SATURNIIDS +SATURNINE +SATURNISM +SATURNISMS +SATYAGRAHA +SATYAGRAHAS +SATYR +SATYRIASES +SATYRIASIS +SATYRIC +SATYRICAL +SATYRID +SATYRIDS +SATYRLIKE +SATYRS +SAU +SAUCE +SAUCEBOAT +SAUCEBOATS +SAUCEBOX +SAUCEBOXES +SAUCED +SAUCEPAN +SAUCEPANS +SAUCEPOT +SAUCEPOTS +SAUCER +SAUCERLIKE +SAUCERS +SAUCES +SAUCH +SAUCHS +SAUCIER +SAUCIERS +SAUCIEST +SAUCILY +SAUCINESS +SAUCINESSES +SAUCING +SAUCY +SAUERBRATEN +SAUERBRATENS +SAUERKRAUT +SAUERKRAUTS +SAUGER +SAUGERS +SAUGH +SAUGHS +SAUGHY +SAUL +SAULS +SAULT +SAULTS +SAUNA +SAUNAED +SAUNAING +SAUNAS +SAUNTER +SAUNTERED +SAUNTERER +SAUNTERERS +SAUNTERING +SAUNTERS +SAUREL +SAURELS +SAURIAN +SAURIANS +SAURIES +SAURISCHIAN +SAURISCHIANS +SAUROPOD +SAUROPODS +SAURY +SAUSAGE +SAUSAGES +SAUTE +SAUTED +SAUTEED +SAUTEING +SAUTERNE +SAUTERNES +SAUTES +SAUTOIR +SAUTOIRE +SAUTOIRES +SAUTOIRS +SAVABLE +SAVAGE +SAVAGED +SAVAGELY +SAVAGENESS +SAVAGENESSES +SAVAGER +SAVAGERIES +SAVAGERY +SAVAGES +SAVAGEST +SAVAGING +SAVAGISM +SAVAGISMS +SAVANNA +SAVANNAH +SAVANNAHS +SAVANNAS +SAVANT +SAVANTS +SAVARIN +SAVARINS +SAVATE +SAVATES +SAVE +SAVEABLE +SAVED +SAVELOY +SAVELOYS +SAVER +SAVERS +SAVES +SAVIN +SAVINE +SAVINES +SAVING +SAVINGLY +SAVINGS +SAVINS +SAVIOR +SAVIORS +SAVIOUR +SAVIOURS +SAVOR +SAVORED +SAVORER +SAVORERS +SAVORIER +SAVORIES +SAVORIEST +SAVORILY +SAVORINESS +SAVORINESSES +SAVORING +SAVORLESS +SAVOROUS +SAVORS +SAVORY +SAVOUR +SAVOURED +SAVOURER +SAVOURERS +SAVOURIER +SAVOURIES +SAVOURIEST +SAVOURING +SAVOURS +SAVOURY +SAVOY +SAVOYS +SAVVIED +SAVVIER +SAVVIES +SAVVIEST +SAVVILY +SAVVINESS +SAVVINESSES +SAVVY +SAVVYING +SAW +SAWBILL +SAWBILLS +SAWBONES +SAWBONESES +SAWBUCK +SAWBUCKS +SAWDUST +SAWDUSTS +SAWDUSTY +SAWED +SAWER +SAWERS +SAWFISH +SAWFISHES +SAWFLIES +SAWFLY +SAWHORSE +SAWHORSES +SAWING +SAWLIKE +SAWLOG +SAWLOGS +SAWMILL +SAWMILLS +SAWN +SAWNEY +SAWNEYS +SAWS +SAWTEETH +SAWTIMBER +SAWTIMBERS +SAWTOOTH +SAWYER +SAWYERS +SAX +SAXATILE +SAXES +SAXHORN +SAXHORNS +SAXICOLOUS +SAXIFRAGE +SAXIFRAGES +SAXITOXIN +SAXITOXINS +SAXONIES +SAXONY +SAXOPHONE +SAXOPHONES +SAXOPHONIC +SAXOPHONIST +SAXOPHONISTS +SAXTUBA +SAXTUBAS +SAY +SAYABLE +SAYED +SAYEDS +SAYER +SAYERS +SAYEST +SAYID +SAYIDS +SAYING +SAYINGS +SAYONARA +SAYONARAS +SAYS +SAYST +SAYYID +SAYYIDS +SCAB +SCABBARD +SCABBARDED +SCABBARDING +SCABBARDS +SCABBED +SCABBIER +SCABBIEST +SCABBILY +SCABBING +SCABBLE +SCABBLED +SCABBLES +SCABBLING +SCABBY +SCABIES +SCABIETIC +SCABIOSA +SCABIOSAS +SCABIOUS +SCABIOUSES +SCABLAND +SCABLANDS +SCABLIKE +SCABROUS +SCABROUSLY +SCABROUSNESS +SCABROUSNESSES +SCABS +SCAD +SCADS +SCAFFOLD +SCAFFOLDED +SCAFFOLDING +SCAFFOLDINGS +SCAFFOLDS +SCAG +SCAGLIOLA +SCAGLIOLAS +SCAGS +SCALABLE +SCALABLY +SCALADE +SCALADES +SCALADO +SCALADOS +SCALAGE +SCALAGES +SCALAR +SCALARE +SCALARES +SCALARIFORM +SCALARIFORMLY +SCALARS +SCALATION +SCALATIONS +SCALAWAG +SCALAWAGS +SCALD +SCALDED +SCALDIC +SCALDING +SCALDS +SCALE +SCALED +SCALELESS +SCALELIKE +SCALENE +SCALENI +SCALENUS +SCALEPAN +SCALEPANS +SCALER +SCALERS +SCALES +SCALETAIL +SCALETAILS +SCALEUP +SCALEUPS +SCALIER +SCALIEST +SCALINESS +SCALINESSES +SCALING +SCALL +SCALLAWAG +SCALLAWAGS +SCALLION +SCALLIONS +SCALLOP +SCALLOPED +SCALLOPER +SCALLOPERS +SCALLOPING +SCALLOPINI +SCALLOPINIS +SCALLOPS +SCALLS +SCALLYWAG +SCALLYWAGS +SCALOGRAM +SCALOGRAMS +SCALOPPINE +SCALOPPINES +SCALP +SCALPED +SCALPEL +SCALPELS +SCALPER +SCALPERS +SCALPING +SCALPS +SCALY +SCAM +SCAMMED +SCAMMER +SCAMMERS +SCAMMING +SCAMMONIES +SCAMMONY +SCAMP +SCAMPED +SCAMPER +SCAMPERED +SCAMPERER +SCAMPERERS +SCAMPERING +SCAMPERS +SCAMPI +SCAMPIES +SCAMPING +SCAMPISH +SCAMPS +SCAMS +SCAMSTER +SCAMSTERS +SCAN +SCANDAL +SCANDALED +SCANDALING +SCANDALISE +SCANDALISED +SCANDALISES +SCANDALISING +SCANDALIZE +SCANDALIZED +SCANDALIZES +SCANDALIZING +SCANDALLED +SCANDALLING +SCANDALMONGER +SCANDALMONGERS +SCANDALOUS +SCANDALOUSLY +SCANDALOUSNESS +SCANDALS +SCANDENT +SCANDIA +SCANDIAS +SCANDIC +SCANDIUM +SCANDIUMS +SCANNABLE +SCANNED +SCANNER +SCANNERS +SCANNING +SCANNINGS +SCANS +SCANSION +SCANSIONS +SCANT +SCANTED +SCANTER +SCANTEST +SCANTIER +SCANTIES +SCANTIEST +SCANTILY +SCANTINESS +SCANTINESSES +SCANTING +SCANTLING +SCANTLINGS +SCANTLY +SCANTNESS +SCANTNESSES +SCANTS +SCANTY +SCAPE +SCAPED +SCAPEGOAT +SCAPEGOATED +SCAPEGOATING +SCAPEGOATISM +SCAPEGOATISMS +SCAPEGOATS +SCAPEGRACE +SCAPEGRACES +SCAPES +SCAPHOID +SCAPHOIDS +SCAPHOPOD +SCAPHOPODS +SCAPING +SCAPOLITE +SCAPOLITES +SCAPOSE +SCAPULA +SCAPULAE +SCAPULAR +SCAPULARS +SCAPULARY +SCAPULAS +SCAR +SCARAB +SCARABAEI +SCARABAEUS +SCARABAEUSES +SCARABOID +SCARABS +SCARAMOUCH +SCARAMOUCHE +SCARAMOUCHES +SCARCE +SCARCELY +SCARCENESS +SCARCENESSES +SCARCER +SCARCEST +SCARCITIES +SCARCITY +SCARE +SCARECROW +SCARECROWS +SCARED +SCAREDER +SCAREDEST +SCAREHEAD +SCAREHEADS +SCAREMONGER +SCAREMONGERS +SCARER +SCARERS +SCARES +SCAREY +SCARF +SCARFED +SCARFER +SCARFERS +SCARFING +SCARFPIN +SCARFPINS +SCARFS +SCARFSKIN +SCARFSKINS +SCARIER +SCARIEST +SCARIFICATION +SCARIFICATIONS +SCARIFIED +SCARIFIER +SCARIFIERS +SCARIFIES +SCARIFY +SCARIFYING +SCARIFYINGLY +SCARILY +SCARINESS +SCARINESSES +SCARING +SCARIOSE +SCARIOUS +SCARLATINA +SCARLATINAL +SCARLATINAS +SCARLESS +SCARLET +SCARLETS +SCARP +SCARPED +SCARPER +SCARPERED +SCARPERING +SCARPERS +SCARPH +SCARPHED +SCARPHING +SCARPHS +SCARPING +SCARPS +SCARRED +SCARRIER +SCARRIEST +SCARRING +SCARRY +SCARS +SCART +SCARTED +SCARTING +SCARTS +SCARVES +SCARY +SCAT +SCATBACK +SCATBACKS +SCATHE +SCATHED +SCATHELESS +SCATHES +SCATHING +SCATHINGLY +SCATOLOGICAL +SCATOLOGIES +SCATOLOGY +SCATS +SCATT +SCATTED +SCATTER +SCATTERATION +SCATTERATIONS +SCATTERBRAIN +SCATTERBRAINED +SCATTERBRAINS +SCATTERED +SCATTERER +SCATTERERS +SCATTERGOOD +SCATTERGOODS +SCATTERGRAM +SCATTERGRAMS +SCATTERGUN +SCATTERGUNS +SCATTERING +SCATTERINGLY +SCATTERINGS +SCATTERS +SCATTERSHOT +SCATTIER +SCATTIEST +SCATTING +SCATTS +SCATTY +SCAUP +SCAUPER +SCAUPERS +SCAUPS +SCAUR +SCAURS +SCAVENGE +SCAVENGED +SCAVENGER +SCAVENGERS +SCAVENGES +SCAVENGING +SCENA +SCENARIO +SCENARIOS +SCENARIST +SCENARISTS +SCENAS +SCEND +SCENDED +SCENDING +SCENDS +SCENE +SCENERIES +SCENERY +SCENES +SCENESHIFTER +SCENESHIFTERS +SCENIC +SCENICAL +SCENICALLY +SCENICS +SCENOGRAPHER +SCENOGRAPHERS +SCENOGRAPHIC +SCENOGRAPHIES +SCENOGRAPHY +SCENT +SCENTED +SCENTING +SCENTLESS +SCENTS +SCEPTER +SCEPTERED +SCEPTERING +SCEPTERS +SCEPTIC +SCEPTICAL +SCEPTICISM +SCEPTICISMS +SCEPTICS +SCEPTRAL +SCEPTRE +SCEPTRED +SCEPTRES +SCEPTRING +SCHADENFREUDE +SCHADENFREUDES +SCHAPPE +SCHAPPES +SCHATCHEN +SCHATCHENS +SCHAV +SCHAVS +SCHEDULAR +SCHEDULE +SCHEDULED +SCHEDULER +SCHEDULERS +SCHEDULES +SCHEDULING +SCHEELITE +SCHEELITES +SCHEMA +SCHEMAS +SCHEMATA +SCHEMATIC +SCHEMATICALLY +SCHEMATICS +SCHEMATISM +SCHEMATISMS +SCHEMATIZATION +SCHEMATIZATIONS +SCHEMATIZE +SCHEMATIZED +SCHEMATIZES +SCHEMATIZING +SCHEME +SCHEMED +SCHEMER +SCHEMERS +SCHEMES +SCHEMING +SCHERZANDO +SCHERZANDOS +SCHERZI +SCHERZO +SCHERZOS +SCHILLER +SCHILLERS +SCHILLING +SCHILLINGS +SCHIPPERKE +SCHIPPERKES +SCHISM +SCHISMATIC +SCHISMATICAL +SCHISMATICALLY +SCHISMATICS +SCHISMATIZE +SCHISMATIZED +SCHISMATIZES +SCHISMATIZING +SCHISMS +SCHIST +SCHISTOSE +SCHISTOSITIES +SCHISTOSITY +SCHISTOSOMAL +SCHISTOSOME +SCHISTOSOMES +SCHISTOSOMIASES +SCHISTOSOMIASIS +SCHISTOUS +SCHISTS +SCHIZIER +SCHIZIEST +SCHIZO +SCHIZOCARP +SCHIZOCARPS +SCHIZOGONIC +SCHIZOGONIES +SCHIZOGONOUS +SCHIZOGONY +SCHIZOID +SCHIZOIDS +SCHIZONT +SCHIZONTS +SCHIZOPHRENE +SCHIZOPHRENES +SCHIZOPHRENIA +SCHIZOPHRENIAS +SCHIZOPHRENIC +SCHIZOPHRENICS +SCHIZOPOD +SCHIZOPODS +SCHIZOS +SCHIZY +SCHIZZIER +SCHIZZIEST +SCHIZZY +SCHLEMIEL +SCHLEMIELS +SCHLEMIHL +SCHLEMIHLS +SCHLEP +SCHLEPP +SCHLEPPED +SCHLEPPING +SCHLEPPS +SCHLEPS +SCHLIERE +SCHLIEREN +SCHLIERIC +SCHLOCK +SCHLOCKIER +SCHLOCKIEST +SCHLOCKS +SCHLOCKY +SCHLUB +SCHLUBS +SCHLUMP +SCHLUMPED +SCHLUMPIER +SCHLUMPIEST +SCHLUMPING +SCHLUMPS +SCHLUMPY +SCHMALTZ +SCHMALTZES +SCHMALTZIER +SCHMALTZIEST +SCHMALTZY +SCHMALZ +SCHMALZES +SCHMALZIER +SCHMALZIEST +SCHMALZY +SCHMATTE +SCHMATTES +SCHMEAR +SCHMEARED +SCHMEARING +SCHMEARS +SCHMEER +SCHMEERED +SCHMEERING +SCHMEERS +SCHMELZE +SCHMELZES +SCHMO +SCHMOE +SCHMOES +SCHMOOS +SCHMOOSE +SCHMOOSED +SCHMOOSES +SCHMOOSING +SCHMOOZE +SCHMOOZED +SCHMOOZER +SCHMOOZERS +SCHMOOZES +SCHMOOZIER +SCHMOOZIEST +SCHMOOZING +SCHMOOZY +SCHMOS +SCHMUCK +SCHMUCKS +SCHNAPPER +SCHNAPPERS +SCHNAPPS +SCHNAPS +SCHNAUZER +SCHNAUZERS +SCHNECKE +SCHNECKEN +SCHNITZEL +SCHNITZELS +SCHNOOK +SCHNOOKS +SCHNORKEL +SCHNORKELED +SCHNORKELING +SCHNORKELS +SCHNORRER +SCHNORRERS +SCHNOZ +SCHNOZES +SCHNOZZ +SCHNOZZES +SCHNOZZLE +SCHNOZZLES +SCHOLAR +SCHOLARLY +SCHOLARS +SCHOLARSHIP +SCHOLARSHIPS +SCHOLASTIC +SCHOLASTICALLY +SCHOLASTICATE +SCHOLASTICATES +SCHOLASTICISM +SCHOLASTICISMS +SCHOLASTICS +SCHOLIA +SCHOLIAST +SCHOLIASTIC +SCHOLIASTS +SCHOLIUM +SCHOLIUMS +SCHOOL +SCHOOLBAG +SCHOOLBAGS +SCHOOLBOOK +SCHOOLBOOKS +SCHOOLBOY +SCHOOLBOYISH +SCHOOLBOYS +SCHOOLCHILD +SCHOOLCHILDREN +SCHOOLED +SCHOOLFELLOW +SCHOOLFELLOWS +SCHOOLGIRL +SCHOOLGIRLS +SCHOOLHOUSE +SCHOOLHOUSES +SCHOOLING +SCHOOLINGS +SCHOOLKID +SCHOOLKIDS +SCHOOLMAN +SCHOOLMARM +SCHOOLMARMISH +SCHOOLMARMS +SCHOOLMASTER +SCHOOLMASTERISH +SCHOOLMASTERLY +SCHOOLMASTERS +SCHOOLMATE +SCHOOLMATES +SCHOOLMEN +SCHOOLMISTRESS +SCHOOLROOM +SCHOOLROOMS +SCHOOLS +SCHOOLTEACHER +SCHOOLTEACHERS +SCHOOLTIME +SCHOOLTIMES +SCHOOLWORK +SCHOOLWORKS +SCHOONER +SCHOONERS +SCHORL +SCHORLS +SCHOTTISCHE +SCHOTTISCHES +SCHRIK +SCHRIKS +SCHROD +SCHRODS +SCHTICK +SCHTICKS +SCHTIK +SCHTIKS +SCHUIT +SCHUITS +SCHUL +SCHULN +SCHULS +SCHUSS +SCHUSSBOOMER +SCHUSSBOOMERS +SCHUSSED +SCHUSSER +SCHUSSERS +SCHUSSES +SCHUSSING +SCHVARTZE +SCHVARTZES +SCHWA +SCHWARMEREI +SCHWARMEREIS +SCHWARTZE +SCHWARTZES +SCHWAS +SCIAENID +SCIAENIDS +SCIAENOID +SCIAENOIDS +SCIAMACHIES +SCIAMACHY +SCIATIC +SCIATICA +SCIATICAS +SCIATICS +SCIENCE +SCIENCES +SCIENTIAL +SCIENTIFIC +SCIENTIFICALLY +SCIENTISM +SCIENTISMS +SCIENTIST +SCIENTISTS +SCIENTIZE +SCIENTIZED +SCIENTIZES +SCIENTIZING +SCILICET +SCILLA +SCILLAS +SCIMETAR +SCIMETARS +SCIMITAR +SCIMITARS +SCIMITER +SCIMITERS +SCINCOID +SCINCOIDS +SCINTIGRAPHIC +SCINTIGRAPHIES +SCINTIGRAPHY +SCINTILLA +SCINTILLAE +SCINTILLANT +SCINTILLANTLY +SCINTILLAS +SCINTILLATE +SCINTILLATED +SCINTILLATES +SCINTILLATING +SCINTILLATION +SCINTILLATIONS +SCINTILLATOR +SCINTILLATORS +SCINTILLOMETER +SCINTILLOMETERS +SCIOLISM +SCIOLISMS +SCIOLIST +SCIOLISTIC +SCIOLISTS +SCION +SCIONS +SCIROCCO +SCIROCCOS +SCIRRHI +SCIRRHOID +SCIRRHOUS +SCIRRHUS +SCIRRHUSES +SCISSILE +SCISSION +SCISSIONS +SCISSOR +SCISSORED +SCISSORING +SCISSORS +SCISSORTAIL +SCISSORTAILS +SCISSURE +SCISSURES +SCIURID +SCIURIDS +SCIURINE +SCIURINES +SCIUROID +SCLAFF +SCLAFFED +SCLAFFER +SCLAFFERS +SCLAFFING +SCLAFFS +SCLERA +SCLERAE +SCLERAL +SCLERAS +SCLEREID +SCLEREIDS +SCLERENCHYMA +SCLERENCHYMAS +SCLERITE +SCLERITES +SCLERITIC +SCLERITIS +SCLERITISES +SCLERODERMA +SCLERODERMAS +SCLERODERMATA +SCLEROID +SCLEROMA +SCLEROMAS +SCLEROMATA +SCLEROMETER +SCLEROMETERS +SCLEROPROTEIN +SCLEROPROTEINS +SCLEROSAL +SCLEROSE +SCLEROSED +SCLEROSES +SCLEROSING +SCLEROSIS +SCLEROTIA +SCLEROTIAL +SCLEROTIC +SCLEROTICS +SCLEROTIN +SCLEROTINS +SCLEROTIUM +SCLEROTIZATION +SCLEROTIZATIONS +SCLEROTIZED +SCLEROUS +SCOFF +SCOFFED +SCOFFER +SCOFFERS +SCOFFING +SCOFFLAW +SCOFFLAWS +SCOFFS +SCOLD +SCOLDED +SCOLDER +SCOLDERS +SCOLDING +SCOLDINGS +SCOLDS +SCOLECES +SCOLECITE +SCOLECITES +SCOLEX +SCOLICES +SCOLIOMA +SCOLIOMAS +SCOLIOSES +SCOLIOSIS +SCOLIOTIC +SCOLLOP +SCOLLOPED +SCOLLOPING +SCOLLOPS +SCOLOPENDRA +SCOLOPENDRAS +SCOMBRID +SCOMBRIDS +SCOMBROID +SCOMBROIDS +SCONCE +SCONCED +SCONCES +SCONCHEON +SCONCHEONS +SCONCING +SCONE +SCONES +SCOOCH +SCOOCHED +SCOOCHES +SCOOCHING +SCOOP +SCOOPABLE +SCOOPED +SCOOPER +SCOOPERS +SCOOPFUL +SCOOPFULS +SCOOPING +SCOOPS +SCOOPSFUL +SCOOT +SCOOTCH +SCOOTCHED +SCOOTCHES +SCOOTCHING +SCOOTED +SCOOTER +SCOOTERS +SCOOTING +SCOOTS +SCOP +SCOPE +SCOPED +SCOPES +SCOPING +SCOPOLAMINE +SCOPOLAMINES +SCOPS +SCOPULA +SCOPULAE +SCOPULAS +SCOPULATE +SCORBUTIC +SCORCH +SCORCHED +SCORCHER +SCORCHERS +SCORCHES +SCORCHING +SCORCHINGLY +SCORE +SCOREBOARD +SCOREBOARDS +SCORECARD +SCORECARDS +SCORED +SCOREKEEPER +SCOREKEEPERS +SCORELESS +SCOREPAD +SCOREPADS +SCORER +SCORERS +SCORES +SCORIA +SCORIACEOUS +SCORIAE +SCORIFIED +SCORIFIER +SCORIFIERS +SCORIFIES +SCORIFY +SCORIFYING +SCORING +SCORN +SCORNED +SCORNER +SCORNERS +SCORNFUL +SCORNFULLY +SCORNFULNESS +SCORNFULNESSES +SCORNING +SCORNS +SCORPAENID +SCORPAENIDS +SCORPIOID +SCORPION +SCORPIONS +SCOT +SCOTCH +SCOTCHED +SCOTCHES +SCOTCHING +SCOTER +SCOTERS +SCOTIA +SCOTIAS +SCOTOMA +SCOTOMAS +SCOTOMATA +SCOTOPHIL +SCOTOPIA +SCOTOPIAS +SCOTOPIC +SCOTS +SCOTTIE +SCOTTIES +SCOUNDREL +SCOUNDRELLY +SCOUNDRELS +SCOUR +SCOURED +SCOURER +SCOURERS +SCOURGE +SCOURGED +SCOURGER +SCOURGERS +SCOURGES +SCOURGING +SCOURING +SCOURINGS +SCOURS +SCOUSE +SCOUSES +SCOUT +SCOUTCRAFT +SCOUTCRAFTS +SCOUTED +SCOUTER +SCOUTERS +SCOUTH +SCOUTHER +SCOUTHERED +SCOUTHERING +SCOUTHERS +SCOUTHS +SCOUTING +SCOUTINGS +SCOUTMASTER +SCOUTMASTERS +SCOUTS +SCOW +SCOWDER +SCOWDERED +SCOWDERING +SCOWDERS +SCOWED +SCOWING +SCOWL +SCOWLED +SCOWLER +SCOWLERS +SCOWLING +SCOWLINGLY +SCOWLS +SCOWS +SCRABBLE +SCRABBLED +SCRABBLER +SCRABBLERS +SCRABBLES +SCRABBLIER +SCRABBLIEST +SCRABBLING +SCRABBLY +SCRAG +SCRAGGED +SCRAGGIER +SCRAGGIEST +SCRAGGILY +SCRAGGING +SCRAGGLIER +SCRAGGLIEST +SCRAGGLY +SCRAGGY +SCRAGS +SCRAICH +SCRAICHED +SCRAICHING +SCRAICHS +SCRAIGH +SCRAIGHED +SCRAIGHING +SCRAIGHS +SCRAM +SCRAMBLE +SCRAMBLED +SCRAMBLER +SCRAMBLERS +SCRAMBLES +SCRAMBLING +SCRAMJET +SCRAMJETS +SCRAMMED +SCRAMMING +SCRAMS +SCRANNEL +SCRANNELS +SCRAP +SCRAPBOOK +SCRAPBOOKS +SCRAPE +SCRAPED +SCRAPER +SCRAPERS +SCRAPES +SCRAPHEAP +SCRAPHEAPS +SCRAPIE +SCRAPIES +SCRAPING +SCRAPINGS +SCRAPPAGE +SCRAPPAGES +SCRAPPED +SCRAPPER +SCRAPPERS +SCRAPPIER +SCRAPPIEST +SCRAPPILY +SCRAPPINESS +SCRAPPINESSES +SCRAPPING +SCRAPPLE +SCRAPPLES +SCRAPPY +SCRAPS +SCRATCH +SCRATCHBOARD +SCRATCHBOARDS +SCRATCHED +SCRATCHER +SCRATCHERS +SCRATCHES +SCRATCHIER +SCRATCHIEST +SCRATCHILY +SCRATCHINESS +SCRATCHINESSES +SCRATCHING +SCRATCHY +SCRAWL +SCRAWLED +SCRAWLER +SCRAWLERS +SCRAWLIER +SCRAWLIEST +SCRAWLING +SCRAWLS +SCRAWLY +SCRAWNIER +SCRAWNIEST +SCRAWNINESS +SCRAWNINESSES +SCRAWNY +SCREAK +SCREAKED +SCREAKING +SCREAKS +SCREAKY +SCREAM +SCREAMED +SCREAMER +SCREAMERS +SCREAMING +SCREAMINGLY +SCREAMS +SCREE +SCREECH +SCREECHED +SCREECHER +SCREECHERS +SCREECHES +SCREECHIER +SCREECHIEST +SCREECHING +SCREECHY +SCREED +SCREEDED +SCREEDING +SCREEDS +SCREEN +SCREENABLE +SCREENED +SCREENER +SCREENERS +SCREENFUL +SCREENFULS +SCREENING +SCREENINGS +SCREENLAND +SCREENLANDS +SCREENPLAY +SCREENPLAYS +SCREENS +SCREENWRITER +SCREENWRITERS +SCREES +SCREW +SCREWABLE +SCREWBALL +SCREWBALLS +SCREWBEAN +SCREWBEANS +SCREWDRIVER +SCREWDRIVERS +SCREWED +SCREWER +SCREWERS +SCREWIER +SCREWIEST +SCREWINESS +SCREWINESSES +SCREWING +SCREWLIKE +SCREWS +SCREWUP +SCREWUPS +SCREWWORM +SCREWWORMS +SCREWY +SCRIBAL +SCRIBBLE +SCRIBBLED +SCRIBBLER +SCRIBBLERS +SCRIBBLES +SCRIBBLING +SCRIBBLY +SCRIBE +SCRIBED +SCRIBER +SCRIBERS +SCRIBES +SCRIBING +SCRIED +SCRIES +SCRIEVE +SCRIEVED +SCRIEVES +SCRIEVING +SCRIM +SCRIMMAGE +SCRIMMAGED +SCRIMMAGER +SCRIMMAGERS +SCRIMMAGES +SCRIMMAGING +SCRIMP +SCRIMPED +SCRIMPER +SCRIMPERS +SCRIMPIER +SCRIMPIEST +SCRIMPILY +SCRIMPING +SCRIMPIT +SCRIMPS +SCRIMPY +SCRIMS +SCRIMSHANDER +SCRIMSHANDERS +SCRIMSHAW +SCRIMSHAWED +SCRIMSHAWING +SCRIMSHAWS +SCRIP +SCRIPS +SCRIPT +SCRIPTED +SCRIPTER +SCRIPTERS +SCRIPTING +SCRIPTORIA +SCRIPTORIUM +SCRIPTS +SCRIPTURAL +SCRIPTURALLY +SCRIPTURE +SCRIPTURES +SCRIPTWRITER +SCRIPTWRITERS +SCRIVE +SCRIVED +SCRIVENER +SCRIVENERS +SCRIVES +SCRIVING +SCROD +SCRODS +SCROFULA +SCROFULAS +SCROFULOUS +SCROGGIER +SCROGGIEST +SCROGGY +SCROLL +SCROLLED +SCROLLING +SCROLLS +SCROLLWORK +SCROLLWORKS +SCROOCH +SCROOCHED +SCROOCHES +SCROOCHING +SCROOGE +SCROOGES +SCROOP +SCROOPED +SCROOPING +SCROOPS +SCROOTCH +SCROOTCHED +SCROOTCHES +SCROOTCHING +SCROTA +SCROTAL +SCROTUM +SCROTUMS +SCROUGE +SCROUGED +SCROUGES +SCROUGING +SCROUNGE +SCROUNGED +SCROUNGER +SCROUNGERS +SCROUNGES +SCROUNGIER +SCROUNGIEST +SCROUNGING +SCROUNGY +SCRUB +SCRUBBABLE +SCRUBBED +SCRUBBER +SCRUBBERS +SCRUBBIER +SCRUBBIEST +SCRUBBILY +SCRUBBING +SCRUBBY +SCRUBLAND +SCRUBLANDS +SCRUBS +SCRUBWOMAN +SCRUBWOMEN +SCRUFF +SCRUFFIER +SCRUFFIEST +SCRUFFILY +SCRUFFINESS +SCRUFFINESSES +SCRUFFS +SCRUFFY +SCRUM +SCRUMMAGE +SCRUMMAGED +SCRUMMAGES +SCRUMMAGING +SCRUMMED +SCRUMMING +SCRUMPTIOUS +SCRUMPTIOUSLY +SCRUMS +SCRUNCH +SCRUNCHED +SCRUNCHES +SCRUNCHIE +SCRUNCHIES +SCRUNCHING +SCRUNCHY +SCRUPLE +SCRUPLED +SCRUPLES +SCRUPLING +SCRUPULOSITIES +SCRUPULOSITY +SCRUPULOUS +SCRUPULOUSLY +SCRUPULOUSNESS +SCRUTABLE +SCRUTINEER +SCRUTINEERS +SCRUTINIES +SCRUTINISE +SCRUTINISED +SCRUTINISES +SCRUTINISING +SCRUTINIZE +SCRUTINIZED +SCRUTINIZER +SCRUTINIZERS +SCRUTINIZES +SCRUTINIZING +SCRUTINY +SCRY +SCRYING +SCUBA +SCUBAED +SCUBAING +SCUBAS +SCUD +SCUDDED +SCUDDING +SCUDI +SCUDO +SCUDS +SCUFF +SCUFFED +SCUFFER +SCUFFERS +SCUFFING +SCUFFLE +SCUFFLED +SCUFFLER +SCUFFLERS +SCUFFLES +SCUFFLING +SCUFFS +SCULCH +SCULCHES +SCULK +SCULKED +SCULKER +SCULKERS +SCULKING +SCULKS +SCULL +SCULLED +SCULLER +SCULLERIES +SCULLERS +SCULLERY +SCULLING +SCULLION +SCULLIONS +SCULLS +SCULP +SCULPED +SCULPIN +SCULPING +SCULPINS +SCULPS +SCULPT +SCULPTED +SCULPTING +SCULPTOR +SCULPTORS +SCULPTRESS +SCULPTRESSES +SCULPTS +SCULPTURAL +SCULPTURALLY +SCULPTURE +SCULPTURED +SCULPTURES +SCULPTURESQUE +SCULPTURESQUELY +SCULPTURING +SCULTCH +SCULTCHES +SCUM +SCUMBAG +SCUMBAGS +SCUMBLE +SCUMBLED +SCUMBLES +SCUMBLING +SCUMLESS +SCUMLIKE +SCUMMED +SCUMMER +SCUMMERS +SCUMMIER +SCUMMIEST +SCUMMILY +SCUMMING +SCUMMY +SCUMS +SCUNCHEON +SCUNCHEONS +SCUNGILLI +SCUNGILLIS +SCUNNER +SCUNNERED +SCUNNERING +SCUNNERS +SCUP +SCUPPAUG +SCUPPAUGS +SCUPPER +SCUPPERED +SCUPPERING +SCUPPERNONG +SCUPPERNONGS +SCUPPERS +SCUPS +SCURF +SCURFIER +SCURFIEST +SCURFS +SCURFY +SCURRIED +SCURRIES +SCURRIL +SCURRILE +SCURRILITIES +SCURRILITY +SCURRILOUS +SCURRILOUSLY +SCURRILOUSNESS +SCURRY +SCURRYING +SCURVIER +SCURVIES +SCURVIEST +SCURVILY +SCURVINESS +SCURVINESSES +SCURVY +SCUT +SCUTA +SCUTAGE +SCUTAGES +SCUTATE +SCUTCH +SCUTCHED +SCUTCHEON +SCUTCHEONS +SCUTCHER +SCUTCHERS +SCUTCHES +SCUTCHING +SCUTE +SCUTELLA +SCUTELLAR +SCUTELLATE +SCUTELLATED +SCUTELLUM +SCUTES +SCUTIFORM +SCUTS +SCUTTER +SCUTTERED +SCUTTERING +SCUTTERS +SCUTTLE +SCUTTLEBUTT +SCUTTLEBUTTS +SCUTTLED +SCUTTLES +SCUTTLING +SCUTUM +SCUTWORK +SCUTWORKS +SCUZZ +SCUZZBALL +SCUZZBALLS +SCUZZES +SCUZZIER +SCUZZIEST +SCUZZY +SCYPHATE +SCYPHI +SCYPHISTOMA +SCYPHISTOMAE +SCYPHISTOMAS +SCYPHOZOAN +SCYPHOZOANS +SCYPHUS +SCYTHE +SCYTHED +SCYTHES +SCYTHING +SEA +SEABAG +SEABAGS +SEABEACH +SEABEACHES +SEABED +SEABEDS +SEABIRD +SEABIRDS +SEABOARD +SEABOARDS +SEABOOT +SEABOOTS +SEABORGIUM +SEABORGIUMS +SEABORNE +SEACOAST +SEACOASTS +SEACOCK +SEACOCKS +SEACRAFT +SEACRAFTS +SEADOG +SEADOGS +SEADROME +SEADROMES +SEAFARER +SEAFARERS +SEAFARING +SEAFARINGS +SEAFLOOR +SEAFLOORS +SEAFOOD +SEAFOODS +SEAFOWL +SEAFOWLS +SEAFRONT +SEAFRONTS +SEAGIRT +SEAGOING +SEAGULL +SEAGULLS +SEAHORSE +SEAHORSES +SEAL +SEALABLE +SEALANT +SEALANTS +SEALED +SEALER +SEALERIES +SEALERS +SEALERY +SEALIFT +SEALIFTED +SEALIFTING +SEALIFTS +SEALING +SEALLIKE +SEALS +SEALSKIN +SEALSKINS +SEAM +SEAMAN +SEAMANLIKE +SEAMANLY +SEAMANSHIP +SEAMANSHIPS +SEAMARK +SEAMARKS +SEAMED +SEAMEN +SEAMER +SEAMERS +SEAMIER +SEAMIEST +SEAMINESS +SEAMINESSES +SEAMING +SEAMLESS +SEAMLESSLY +SEAMLESSNESS +SEAMLESSNESSES +SEAMLIKE +SEAMOUNT +SEAMOUNTS +SEAMS +SEAMSTER +SEAMSTERS +SEAMSTRESS +SEAMSTRESSES +SEAMY +SEANCE +SEANCES +SEAPIECE +SEAPIECES +SEAPLANE +SEAPLANES +SEAPORT +SEAPORTS +SEAQUAKE +SEAQUAKES +SEAR +SEARCH +SEARCHABLE +SEARCHED +SEARCHER +SEARCHERS +SEARCHES +SEARCHING +SEARCHINGLY +SEARCHLESS +SEARCHLIGHT +SEARCHLIGHTS +SEARED +SEARER +SEAREST +SEARING +SEARINGLY +SEAROBIN +SEAROBINS +SEARS +SEAS +SEASCAPE +SEASCAPES +SEASCOUT +SEASCOUTS +SEASHELL +SEASHELLS +SEASHORE +SEASHORES +SEASICK +SEASICKNESS +SEASICKNESSES +SEASIDE +SEASIDES +SEASON +SEASONABLE +SEASONABLENESS +SEASONABLY +SEASONAL +SEASONALITIES +SEASONALITY +SEASONALLY +SEASONALS +SEASONED +SEASONER +SEASONERS +SEASONING +SEASONINGS +SEASONLESS +SEASONS +SEASTRAND +SEASTRANDS +SEAT +SEATBACK +SEATBACKS +SEATBELT +SEATBELTS +SEATED +SEATER +SEATERS +SEATING +SEATINGS +SEATLESS +SEATMATE +SEATMATES +SEATRAIN +SEATRAINS +SEATROUT +SEATROUTS +SEATS +SEATWORK +SEATWORKS +SEAWALL +SEAWALLS +SEAWAN +SEAWANS +SEAWANT +SEAWANTS +SEAWARD +SEAWARDS +SEAWARE +SEAWARES +SEAWATER +SEAWATERS +SEAWAY +SEAWAYS +SEAWEED +SEAWEEDS +SEAWORTHIER +SEAWORTHIEST +SEAWORTHINESS +SEAWORTHINESSES +SEAWORTHY +SEBACEOUS +SEBACIC +SEBASIC +SEBORRHEA +SEBORRHEAS +SEBORRHEIC +SEBUM +SEBUMS +SEC +SECALOSE +SECALOSES +SECANT +SECANTLY +SECANTS +SECATEUR +SECATEURS +SECCO +SECCOS +SECEDE +SECEDED +SECEDER +SECEDERS +SECEDES +SECEDING +SECERN +SECERNED +SECERNING +SECERNS +SECESSION +SECESSIONISM +SECESSIONISMS +SECESSIONIST +SECESSIONISTS +SECESSIONS +SECLUDE +SECLUDED +SECLUDEDLY +SECLUDEDNESS +SECLUDEDNESSES +SECLUDES +SECLUDING +SECLUSION +SECLUSIONS +SECLUSIVE +SECLUSIVELY +SECLUSIVENESS +SECLUSIVENESSES +SECOBARBITAL +SECOBARBITALS +SECONAL +SECONALS +SECOND +SECONDARIES +SECONDARILY +SECONDARINESS +SECONDARINESSES +SECONDARY +SECONDE +SECONDED +SECONDER +SECONDERS +SECONDES +SECONDHAND +SECONDI +SECONDING +SECONDLY +SECONDO +SECONDS +SECPAR +SECPARS +SECRECIES +SECRECY +SECRET +SECRETAGOGUE +SECRETAGOGUES +SECRETARIAL +SECRETARIAT +SECRETARIATS +SECRETARIES +SECRETARY +SECRETARYSHIP +SECRETARYSHIPS +SECRETE +SECRETED +SECRETER +SECRETES +SECRETEST +SECRETIN +SECRETING +SECRETINS +SECRETION +SECRETIONARY +SECRETIONS +SECRETIVE +SECRETIVELY +SECRETIVENESS +SECRETIVENESSES +SECRETLY +SECRETOR +SECRETORIES +SECRETORS +SECRETORY +SECRETS +SECS +SECT +SECTARIAN +SECTARIANISM +SECTARIANISMS +SECTARIANIZE +SECTARIANIZED +SECTARIANIZES +SECTARIANIZING +SECTARIANS +SECTARIES +SECTARY +SECTILE +SECTILITIES +SECTILITY +SECTION +SECTIONAL +SECTIONALISM +SECTIONALISMS +SECTIONALLY +SECTIONALS +SECTIONED +SECTIONING +SECTIONS +SECTOR +SECTORAL +SECTORED +SECTORIAL +SECTORIALS +SECTORING +SECTORS +SECTS +SECULAR +SECULARISE +SECULARISED +SECULARISES +SECULARISING +SECULARISM +SECULARISMS +SECULARIST +SECULARISTIC +SECULARISTS +SECULARITIES +SECULARITY +SECULARIZATION +SECULARIZATIONS +SECULARIZE +SECULARIZED +SECULARIZER +SECULARIZERS +SECULARIZES +SECULARIZING +SECULARLY +SECULARS +SECUND +SECUNDLY +SECUNDUM +SECURABLE +SECURANCE +SECURANCES +SECURE +SECURED +SECURELY +SECUREMENT +SECUREMENTS +SECURENESS +SECURENESSES +SECURER +SECURERS +SECURES +SECUREST +SECURING +SECURITIES +SECURITIZATION +SECURITIZATIONS +SECURITIZE +SECURITIZED +SECURITIZES +SECURITIZING +SECURITY +SEDAN +SEDANS +SEDARIM +SEDATE +SEDATED +SEDATELY +SEDATENESS +SEDATENESSES +SEDATER +SEDATES +SEDATEST +SEDATING +SEDATION +SEDATIONS +SEDATIVE +SEDATIVES +SEDENTARY +SEDER +SEDERS +SEDERUNT +SEDERUNTS +SEDGE +SEDGES +SEDGIER +SEDGIEST +SEDGY +SEDILE +SEDILIA +SEDILIUM +SEDIMENT +SEDIMENTABLE +SEDIMENTARY +SEDIMENTATION +SEDIMENTATIONS +SEDIMENTED +SEDIMENTING +SEDIMENTOLOGIC +SEDIMENTOLOGIES +SEDIMENTOLOGIST +SEDIMENTOLOGY +SEDIMENTS +SEDITION +SEDITIONS +SEDITIOUS +SEDITIOUSLY +SEDITIOUSNESS +SEDITIOUSNESSES +SEDUCE +SEDUCED +SEDUCEMENT +SEDUCEMENTS +SEDUCER +SEDUCERS +SEDUCES +SEDUCIBLE +SEDUCING +SEDUCIVE +SEDUCTION +SEDUCTIONS +SEDUCTIVE +SEDUCTIVELY +SEDUCTIVENESS +SEDUCTIVENESSES +SEDUCTRESS +SEDUCTRESSES +SEDULITIES +SEDULITY +SEDULOUS +SEDULOUSLY +SEDULOUSNESS +SEDULOUSNESSES +SEDUM +SEDUMS +SEE +SEEABLE +SEECATCH +SEECATCHIE +SEED +SEEDBED +SEEDBEDS +SEEDCAKE +SEEDCAKES +SEEDCASE +SEEDCASES +SEEDEATER +SEEDEATERS +SEEDED +SEEDER +SEEDERS +SEEDIER +SEEDIEST +SEEDILY +SEEDINESS +SEEDINESSES +SEEDING +SEEDLESS +SEEDLIKE +SEEDLING +SEEDLINGS +SEEDMAN +SEEDMEN +SEEDPOD +SEEDPODS +SEEDS +SEEDSMAN +SEEDSMEN +SEEDSTOCK +SEEDSTOCKS +SEEDTIME +SEEDTIMES +SEEDY +SEEING +SEEINGS +SEEK +SEEKER +SEEKERS +SEEKING +SEEKS +SEEL +SEELED +SEELING +SEELS +SEELY +SEEM +SEEMED +SEEMER +SEEMERS +SEEMING +SEEMINGLY +SEEMINGS +SEEMLIER +SEEMLIEST +SEEMLINESS +SEEMLINESSES +SEEMLY +SEEMS +SEEN +SEEP +SEEPAGE +SEEPAGES +SEEPED +SEEPIER +SEEPIEST +SEEPING +SEEPS +SEEPY +SEER +SEERESS +SEERESSES +SEERS +SEERSUCKER +SEERSUCKERS +SEES +SEESAW +SEESAWED +SEESAWING +SEESAWS +SEETHE +SEETHED +SEETHES +SEETHING +SEG +SEGETAL +SEGGAR +SEGGARS +SEGMENT +SEGMENTAL +SEGMENTALLY +SEGMENTARY +SEGMENTATION +SEGMENTATIONS +SEGMENTED +SEGMENTING +SEGMENTS +SEGNI +SEGNO +SEGNOS +SEGO +SEGOS +SEGREGANT +SEGREGANTS +SEGREGATE +SEGREGATED +SEGREGATES +SEGREGATING +SEGREGATION +SEGREGATIONIST +SEGREGATIONISTS +SEGREGATIONS +SEGREGATIVE +SEGS +SEGUE +SEGUED +SEGUEING +SEGUES +SEGUIDILLA +SEGUIDILLAS +SEI +SEICENTO +SEICENTOS +SEICHE +SEICHES +SEIDEL +SEIDELS +SEIF +SEIFS +SEIGNEUR +SEIGNEURIAL +SEIGNEURIES +SEIGNEURS +SEIGNEURY +SEIGNIOR +SEIGNIORAGE +SEIGNIORAGES +SEIGNIORIES +SEIGNIORS +SEIGNIORY +SEIGNORAGE +SEIGNORAGES +SEIGNORIAL +SEIGNORIES +SEIGNORY +SEINE +SEINED +SEINER +SEINERS +SEINES +SEINING +SEIS +SEISABLE +SEISE +SEISED +SEISER +SEISERS +SEISES +SEISIN +SEISING +SEISINGS +SEISINS +SEISM +SEISMAL +SEISMIC +SEISMICAL +SEISMICALLY +SEISMICITIES +SEISMICITY +SEISMISM +SEISMISMS +SEISMOGRAM +SEISMOGRAMS +SEISMOGRAPH +SEISMOGRAPHER +SEISMOGRAPHERS +SEISMOGRAPHIC +SEISMOGRAPHIES +SEISMOGRAPHS +SEISMOGRAPHY +SEISMOLOGICAL +SEISMOLOGIES +SEISMOLOGIST +SEISMOLOGISTS +SEISMOLOGY +SEISMOMETER +SEISMOMETERS +SEISMOMETRIC +SEISMOMETRIES +SEISMOMETRY +SEISMS +SEISOR +SEISORS +SEISURE +SEISURES +SEITAN +SEITANS +SEIZABLE +SEIZE +SEIZED +SEIZER +SEIZERS +SEIZES +SEIZIN +SEIZING +SEIZINGS +SEIZINS +SEIZOR +SEIZORS +SEIZURE +SEIZURES +SEJANT +SEJEANT +SEL +SELACHIAN +SELACHIANS +SELADANG +SELADANGS +SELAGINELLA +SELAGINELLAS +SELAH +SELAHS +SELAMLIK +SELAMLIKS +SELCOUTH +SELDOM +SELDOMLY +SELECT +SELECTABLE +SELECTED +SELECTEE +SELECTEES +SELECTING +SELECTION +SELECTIONIST +SELECTIONISTS +SELECTIONS +SELECTIVE +SELECTIVELY +SELECTIVENESS +SELECTIVENESSES +SELECTIVITIES +SELECTIVITY +SELECTLY +SELECTMAN +SELECTMEN +SELECTNESS +SELECTNESSES +SELECTOR +SELECTORS +SELECTS +SELENATE +SELENATES +SELENIC +SELENIDE +SELENIDES +SELENIFEROUS +SELENIOUS +SELENITE +SELENITES +SELENITIC +SELENIUM +SELENIUMS +SELENOCENTRIC +SELENOLOGICAL +SELENOLOGIES +SELENOLOGIST +SELENOLOGISTS +SELENOLOGY +SELENOSES +SELENOSIS +SELENOUS +SELF +SELFDOM +SELFDOMS +SELFED +SELFHEAL +SELFHEALS +SELFHOOD +SELFHOODS +SELFING +SELFISH +SELFISHLY +SELFISHNESS +SELFISHNESSES +SELFLESS +SELFLESSLY +SELFLESSNESS +SELFLESSNESSES +SELFNESS +SELFNESSES +SELFS +SELFSAME +SELFSAMENESS +SELFSAMENESSES +SELFWARD +SELFWARDS +SELKIE +SELKIES +SELL +SELLABLE +SELLE +SELLER +SELLERS +SELLES +SELLING +SELLOFF +SELLOFFS +SELLOTAPE +SELLOTAPED +SELLOTAPES +SELLOTAPING +SELLOUT +SELLOUTS +SELLS +SELS +SELSYN +SELSYNS +SELTZER +SELTZERS +SELVA +SELVAGE +SELVAGED +SELVAGES +SELVAS +SELVEDGE +SELVEDGED +SELVEDGES +SELVES +SEMAINIER +SEMAINIERS +SEMANTEME +SEMANTEMES +SEMANTIC +SEMANTICAL +SEMANTICALLY +SEMANTICIST +SEMANTICISTS +SEMANTICS +SEMAPHORE +SEMAPHORED +SEMAPHORES +SEMAPHORING +SEMASIOLOGICAL +SEMASIOLOGIES +SEMASIOLOGY +SEMATIC +SEMBLABLE +SEMBLABLES +SEMBLABLY +SEMBLANCE +SEMBLANCES +SEME +SEMEIOLOGIES +SEMEIOLOGY +SEMEIOTIC +SEMEIOTICS +SEMEME +SEMEMES +SEMEMIC +SEMEN +SEMENS +SEMES +SEMESTER +SEMESTERS +SEMESTRAL +SEMESTRIAL +SEMI +SEMIABSTRACT +SEMIABSTRACTION +SEMIANGLE +SEMIANGLES +SEMIANNUAL +SEMIANNUALLY +SEMIAQUATIC +SEMIARBOREAL +SEMIARID +SEMIARIDITIES +SEMIARIDITY +SEMIAUTOMATIC +SEMIAUTOMATICS +SEMIAUTONOMOUS +SEMIBALD +SEMIBREVE +SEMIBREVES +SEMICENTENNIAL +SEMICENTENNIALS +SEMICIRCLE +SEMICIRCLES +SEMICIRCULAR +SEMICIVILIZED +SEMICLASSIC +SEMICLASSICAL +SEMICLASSICS +SEMICOLON +SEMICOLONIAL +SEMICOLONIALISM +SEMICOLONIES +SEMICOLONS +SEMICOLONY +SEMICOMA +SEMICOMAS +SEMICOMMERCIAL +SEMICONDUCTING +SEMICONDUCTOR +SEMICONDUCTORS +SEMICONSCIOUS +SEMICRYSTALLINE +SEMICURED +SEMICYLINDRICAL +SEMIDARKNESS +SEMIDARKNESSES +SEMIDEAF +SEMIDEIFIED +SEMIDEIFIES +SEMIDEIFY +SEMIDEIFYING +SEMIDESERT +SEMIDESERTS +SEMIDETACHED +SEMIDIAMETER +SEMIDIAMETERS +SEMIDIURNAL +SEMIDIVINE +SEMIDOCUMENTARY +SEMIDOME +SEMIDOMED +SEMIDOMES +SEMIDOMINANT +SEMIDRY +SEMIDRYING +SEMIDWARF +SEMIDWARFS +SEMIDWARVES +SEMIEMPIRICAL +SEMIERECT +SEMIEVERGREEN +SEMIFEUDAL +SEMIFINAL +SEMIFINALIST +SEMIFINALISTS +SEMIFINALS +SEMIFINISHED +SEMIFIT +SEMIFITTED +SEMIFLEXIBLE +SEMIFLUID +SEMIFLUIDS +SEMIFORMAL +SEMIGALA +SEMIGLOSS +SEMIGLOSSES +SEMIGROUP +SEMIGROUPS +SEMIHARD +SEMIHIGH +SEMIHOBO +SEMIHOBOES +SEMIHOBOS +SEMILEGENDARY +SEMILETHAL +SEMILETHALS +SEMILIQUID +SEMILIQUIDS +SEMILITERATE +SEMILITERATES +SEMILLON +SEMILLONS +SEMILOG +SEMILOGARITHMIC +SEMILUNAR +SEMILUSTROUS +SEMIMAT +SEMIMATT +SEMIMATTE +SEMIMETAL +SEMIMETALLIC +SEMIMETALS +SEMIMICRO +SEMIMILD +SEMIMOIST +SEMIMONASTIC +SEMIMONTHLIES +SEMIMONTHLY +SEMIMUTE +SEMIMYSTICAL +SEMINA +SEMINAL +SEMINALLY +SEMINAR +SEMINARIAN +SEMINARIANS +SEMINARIES +SEMINARIST +SEMINARISTS +SEMINARS +SEMINARY +SEMINATURAL +SEMINIFEROUS +SEMINOMA +SEMINOMAD +SEMINOMADIC +SEMINOMADS +SEMINOMAS +SEMINOMATA +SEMINUDE +SEMINUDITIES +SEMINUDITY +SEMIOFFICIAL +SEMIOFFICIALLY +SEMIOLOGICAL +SEMIOLOGICALLY +SEMIOLOGIES +SEMIOLOGIST +SEMIOLOGISTS +SEMIOLOGY +SEMIOPAQUE +SEMIOPEN +SEMIOSES +SEMIOSIS +SEMIOTIC +SEMIOTICIAN +SEMIOTICIANS +SEMIOTICIST +SEMIOTICISTS +SEMIOTICS +SEMIOVAL +SEMIPALMATED +SEMIPARASITE +SEMIPARASITES +SEMIPARASITIC +SEMIPERMANENT +SEMIPERMEABLE +SEMIPIOUS +SEMIPOLITICAL +SEMIPOPULAR +SEMIPORCELAIN +SEMIPORCELAINS +SEMIPORNOGRAPHY +SEMIPOSTAL +SEMIPOSTALS +SEMIPRECIOUS +SEMIPRIVATE +SEMIPRO +SEMIPROS +SEMIPUBLIC +SEMIQUAVER +SEMIQUAVERS +SEMIRAW +SEMIRELIGIOUS +SEMIRETIRED +SEMIRETIREMENT +SEMIRETIREMENTS +SEMIRIGID +SEMIROUND +SEMIROUNDS +SEMIRURAL +SEMIS +SEMISACRED +SEMISECRET +SEMISEDENTARY +SEMISES +SEMISHRUBBY +SEMISKILLED +SEMISOFT +SEMISOLID +SEMISOLIDS +SEMISTIFF +SEMISUBMERSIBLE +SEMISWEET +SEMISYNTHETIC +SEMITERRESTRIAL +SEMITIST +SEMITISTS +SEMITONAL +SEMITONALLY +SEMITONE +SEMITONES +SEMITONIC +SEMITONICALLY +SEMITRAILER +SEMITRAILERS +SEMITRANSLUCENT +SEMITRANSPARENT +SEMITROPIC +SEMITROPICAL +SEMITROPICS +SEMITRUCK +SEMITRUCKS +SEMIURBAN +SEMIVOWEL +SEMIVOWELS +SEMIWEEKLIES +SEMIWEEKLY +SEMIWILD +SEMIWORKS +SEMIYEARLY +SEMOLINA +SEMOLINAS +SEMPERVIVUM +SEMPERVIVUMS +SEMPITERNAL +SEMPITERNALLY +SEMPITERNITIES +SEMPITERNITY +SEMPLE +SEMPLICE +SEMPRE +SEMPSTRESS +SEMPSTRESSES +SEN +SENARII +SENARIUS +SENARY +SENATE +SENATES +SENATOR +SENATORIAL +SENATORIAN +SENATORS +SENATORSHIP +SENATORSHIPS +SEND +SENDABLE +SENDAL +SENDALS +SENDED +SENDER +SENDERS +SENDING +SENDOFF +SENDOFFS +SENDS +SENDUP +SENDUPS +SENE +SENECA +SENECAS +SENECIO +SENECIOS +SENECTITUDE +SENECTITUDES +SENEGA +SENEGAS +SENESCENCE +SENESCENCES +SENESCENT +SENESCHAL +SENESCHALS +SENGI +SENHOR +SENHORA +SENHORAS +SENHORES +SENHORITA +SENHORITAS +SENHORS +SENILE +SENILELY +SENILES +SENILITIES +SENILITY +SENIOR +SENIORITIES +SENIORITY +SENIORS +SENITI +SENNA +SENNACHIE +SENNACHIES +SENNAS +SENNET +SENNETS +SENNIGHT +SENNIGHTS +SENNIT +SENNITS +SENOPIA +SENOPIAS +SENOR +SENORA +SENORAS +SENORES +SENORITA +SENORITAS +SENORS +SENRYU +SENSA +SENSATE +SENSATED +SENSATELY +SENSATES +SENSATING +SENSATION +SENSATIONAL +SENSATIONALISE +SENSATIONALISED +SENSATIONALISES +SENSATIONALISM +SENSATIONALISMS +SENSATIONALIST +SENSATIONALISTS +SENSATIONALIZE +SENSATIONALIZED +SENSATIONALIZES +SENSATIONALLY +SENSATIONS +SENSE +SENSED +SENSEFUL +SENSEI +SENSEIS +SENSELESS +SENSELESSLY +SENSELESSNESS +SENSELESSNESSES +SENSES +SENSIBILIA +SENSIBILITIES +SENSIBILITY +SENSIBLE +SENSIBLENESS +SENSIBLENESSES +SENSIBLER +SENSIBLES +SENSIBLEST +SENSIBLY +SENSILLA +SENSILLAE +SENSILLUM +SENSING +SENSITISATION +SENSITISATIONS +SENSITISE +SENSITISED +SENSITISES +SENSITISING +SENSITIVE +SENSITIVELY +SENSITIVENESS +SENSITIVENESSES +SENSITIVES +SENSITIVITIES +SENSITIVITY +SENSITIZATION +SENSITIZATIONS +SENSITIZE +SENSITIZED +SENSITIZER +SENSITIZERS +SENSITIZES +SENSITIZING +SENSITOMETER +SENSITOMETERS +SENSITOMETRIC +SENSITOMETRIES +SENSITOMETRY +SENSOR +SENSORIA +SENSORIAL +SENSORIALLY +SENSORIMOTOR +SENSORINEURAL +SENSORIUM +SENSORIUMS +SENSORS +SENSORY +SENSUAL +SENSUALISM +SENSUALISMS +SENSUALIST +SENSUALISTIC +SENSUALISTS +SENSUALITIES +SENSUALITY +SENSUALIZATION +SENSUALIZATIONS +SENSUALIZE +SENSUALIZED +SENSUALIZES +SENSUALIZING +SENSUALLY +SENSUM +SENSUOSITIES +SENSUOSITY +SENSUOUS +SENSUOUSLY +SENSUOUSNESS +SENSUOUSNESSES +SENT +SENTE +SENTENCE +SENTENCED +SENTENCER +SENTENCERS +SENTENCES +SENTENCING +SENTENTIA +SENTENTIAE +SENTENTIAL +SENTENTIOUS +SENTENTIOUSLY +SENTENTIOUSNESS +SENTI +SENTIENCE +SENTIENCES +SENTIENCIES +SENTIENCY +SENTIENT +SENTIENTLY +SENTIENTS +SENTIMENT +SENTIMENTAL +SENTIMENTALISE +SENTIMENTALISED +SENTIMENTALISES +SENTIMENTALISM +SENTIMENTALISMS +SENTIMENTALIST +SENTIMENTALISTS +SENTIMENTALITY +SENTIMENTALIZE +SENTIMENTALIZED +SENTIMENTALIZES +SENTIMENTALLY +SENTIMENTS +SENTIMO +SENTIMOS +SENTINEL +SENTINELED +SENTINELING +SENTINELLED +SENTINELLING +SENTINELS +SENTRIES +SENTRY +SEPAL +SEPALED +SEPALINE +SEPALLED +SEPALOID +SEPALOUS +SEPALS +SEPARABILITIES +SEPARABILITY +SEPARABLE +SEPARABLENESS +SEPARABLENESSES +SEPARABLY +SEPARATE +SEPARATED +SEPARATELY +SEPARATENESS +SEPARATENESSES +SEPARATES +SEPARATING +SEPARATION +SEPARATIONIST +SEPARATIONISTS +SEPARATIONS +SEPARATISM +SEPARATISMS +SEPARATIST +SEPARATISTIC +SEPARATISTS +SEPARATIVE +SEPARATOR +SEPARATORS +SEPIA +SEPIAS +SEPIC +SEPIOLITE +SEPIOLITES +SEPOY +SEPOYS +SEPPUKU +SEPPUKUS +SEPSES +SEPSIS +SEPT +SEPTA +SEPTAGE +SEPTAGES +SEPTAL +SEPTARIA +SEPTARIAN +SEPTARIUM +SEPTATE +SEPTENARIES +SEPTENARII +SEPTENARIUS +SEPTENARY +SEPTENDECILLION +SEPTENNIAL +SEPTENNIALLY +SEPTENTRION +SEPTENTRIONAL +SEPTENTRIONS +SEPTET +SEPTETS +SEPTETTE +SEPTETTES +SEPTIC +SEPTICAL +SEPTICEMIA +SEPTICEMIAS +SEPTICEMIC +SEPTICIDAL +SEPTICITIES +SEPTICITY +SEPTICS +SEPTILLION +SEPTILLIONS +SEPTIME +SEPTIMES +SEPTS +SEPTUAGENARIAN +SEPTUAGENARIANS +SEPTUM +SEPTUMS +SEPTUPLE +SEPTUPLED +SEPTUPLES +SEPTUPLET +SEPTUPLETS +SEPTUPLING +SEPULCHER +SEPULCHERED +SEPULCHERING +SEPULCHERS +SEPULCHRAL +SEPULCHRALLY +SEPULCHRE +SEPULCHRED +SEPULCHRES +SEPULCHRING +SEPULTURE +SEPULTURES +SEQUACIOUS +SEQUACIOUSLY +SEQUACITIES +SEQUACITY +SEQUEL +SEQUELA +SEQUELAE +SEQUELIZE +SEQUELIZED +SEQUELIZES +SEQUELIZING +SEQUELS +SEQUENCE +SEQUENCED +SEQUENCER +SEQUENCERS +SEQUENCES +SEQUENCIES +SEQUENCING +SEQUENCY +SEQUENT +SEQUENTIAL +SEQUENTIALLY +SEQUENTS +SEQUESTER +SEQUESTERED +SEQUESTERING +SEQUESTERS +SEQUESTRA +SEQUESTRATE +SEQUESTRATED +SEQUESTRATES +SEQUESTRATING +SEQUESTRATION +SEQUESTRATIONS +SEQUESTRUM +SEQUESTRUMS +SEQUIN +SEQUINED +SEQUINING +SEQUINNED +SEQUINS +SEQUITUR +SEQUITURS +SEQUOIA +SEQUOIAS +SER +SERA +SERAC +SERACS +SERAGLIO +SERAGLIOS +SERAI +SERAIL +SERAILS +SERAIS +SERAL +SERAPE +SERAPES +SERAPH +SERAPHIC +SERAPHICALLY +SERAPHIM +SERAPHIMS +SERAPHIN +SERAPHS +SERDAB +SERDABS +SERE +SERED +SEREIN +SEREINS +SERENADE +SERENADED +SERENADER +SERENADERS +SERENADES +SERENADING +SERENATA +SERENATAS +SERENATE +SERENDIPITIES +SERENDIPITOUS +SERENDIPITOUSLY +SERENDIPITY +SERENE +SERENELY +SERENENESS +SERENENESSES +SERENER +SERENES +SERENEST +SERENITIES +SERENITY +SERER +SERES +SEREST +SERF +SERFAGE +SERFAGES +SERFDOM +SERFDOMS +SERFHOOD +SERFHOODS +SERFISH +SERFLIKE +SERFS +SERGE +SERGEANCIES +SERGEANCY +SERGEANT +SERGEANTIES +SERGEANTS +SERGEANTY +SERGED +SERGER +SERGERS +SERGES +SERGING +SERGINGS +SERIAL +SERIALISE +SERIALISED +SERIALISES +SERIALISING +SERIALISM +SERIALISMS +SERIALIST +SERIALISTS +SERIALIZATION +SERIALIZATIONS +SERIALIZE +SERIALIZED +SERIALIZES +SERIALIZING +SERIALLY +SERIALS +SERIATE +SERIATED +SERIATELY +SERIATES +SERIATIM +SERIATING +SERIATION +SERIATIONS +SERICEOUS +SERICIN +SERICINS +SERICULTURAL +SERICULTURE +SERICULTURES +SERICULTURIST +SERICULTURISTS +SERIEMA +SERIEMAS +SERIES +SERIF +SERIFED +SERIFFED +SERIFS +SERIGRAPH +SERIGRAPHER +SERIGRAPHERS +SERIGRAPHIES +SERIGRAPHS +SERIGRAPHY +SERIN +SERINE +SERINES +SERING +SERINGA +SERINGAS +SERINS +SERIOCOMIC +SERIOCOMICALLY +SERIOUS +SERIOUSLY +SERIOUSNESS +SERIOUSNESSES +SERJEANT +SERJEANTIES +SERJEANTS +SERJEANTY +SERMON +SERMONETTE +SERMONETTES +SERMONIC +SERMONIZE +SERMONIZED +SERMONIZER +SERMONIZERS +SERMONIZES +SERMONIZING +SERMONS +SEROCONVERSION +SEROCONVERSIONS +SERODIAGNOSES +SERODIAGNOSIS +SERODIAGNOSTIC +SEROLOGIC +SEROLOGICAL +SEROLOGICALLY +SEROLOGIES +SEROLOGIST +SEROLOGISTS +SEROLOGY +SERONEGATIVE +SERONEGATIVITY +SEROPOSITIVE +SEROPOSITIVITY +SEROPURULENT +SEROSA +SEROSAE +SEROSAL +SEROSAS +SEROSITIES +SEROSITY +SEROTINAL +SEROTINE +SEROTINES +SEROTINIES +SEROTINOUS +SEROTINY +SEROTONERGIC +SEROTONIN +SEROTONINERGIC +SEROTONINS +SEROTYPE +SEROTYPED +SEROTYPES +SEROTYPING +SEROUS +SEROVAR +SEROVARS +SEROW +SEROWS +SERPENT +SERPENTINE +SERPENTINELY +SERPENTINES +SERPENTS +SERPIGINES +SERPIGINOUS +SERPIGINOUSLY +SERPIGO +SERPIGOES +SERPIGOS +SERRANID +SERRANIDS +SERRANO +SERRANOID +SERRANOS +SERRATE +SERRATED +SERRATES +SERRATING +SERRATION +SERRATIONS +SERRATURE +SERRATURES +SERRIED +SERRIEDLY +SERRIEDNESS +SERRIEDNESSES +SERRIES +SERRULATE +SERRY +SERRYING +SERS +SERUM +SERUMAL +SERUMS +SERVABLE +SERVAL +SERVALS +SERVANT +SERVANTHOOD +SERVANTHOODS +SERVANTLESS +SERVANTS +SERVE +SERVED +SERVER +SERVERS +SERVES +SERVICE +SERVICEABILITY +SERVICEABLE +SERVICEABLENESS +SERVICEABLY +SERVICEBERRIES +SERVICEBERRY +SERVICED +SERVICEMAN +SERVICEMEN +SERVICER +SERVICERS +SERVICES +SERVICEWOMAN +SERVICEWOMEN +SERVICING +SERVIETTE +SERVIETTES +SERVILE +SERVILELY +SERVILENESS +SERVILENESSES +SERVILITIES +SERVILITY +SERVING +SERVINGS +SERVITOR +SERVITORS +SERVITUDE +SERVITUDES +SERVO +SERVOMECHANISM +SERVOMECHANISMS +SERVOMOTOR +SERVOMOTORS +SERVOS +SESAME +SESAMES +SESAMOID +SESAMOIDS +SESQUICARBONATE +SESQUICENTENARY +SESQUIPEDALIAN +SESQUITERPENE +SESQUITERPENES +SESSILE +SESSILITIES +SESSILITY +SESSION +SESSIONAL +SESSIONS +SESSPOOL +SESSPOOLS +SESTERCE +SESTERCES +SESTERTIA +SESTERTIUM +SESTET +SESTETS +SESTINA +SESTINAS +SESTINE +SESTINES +SET +SETA +SETACEOUS +SETAE +SETAL +SETBACK +SETBACKS +SETENANT +SETENANTS +SETIFORM +SETLINE +SETLINES +SETOFF +SETOFFS +SETON +SETONS +SETOSE +SETOUS +SETOUT +SETOUTS +SETS +SETSCREW +SETSCREWS +SETT +SETTEE +SETTEES +SETTER +SETTERS +SETTING +SETTINGS +SETTLE +SETTLEABLE +SETTLED +SETTLEMENT +SETTLEMENTS +SETTLER +SETTLERS +SETTLES +SETTLING +SETTLINGS +SETTLOR +SETTLORS +SETTS +SETULOSE +SETULOUS +SETUP +SETUPS +SEVEN +SEVENFOLD +SEVENS +SEVENTEEN +SEVENTEENS +SEVENTEENTH +SEVENTEENTHS +SEVENTH +SEVENTHLY +SEVENTHS +SEVENTIES +SEVENTIETH +SEVENTIETHS +SEVENTY +SEVER +SEVERABILITIES +SEVERABILITY +SEVERABLE +SEVERAL +SEVERALFOLD +SEVERALLY +SEVERALS +SEVERALTIES +SEVERALTY +SEVERANCE +SEVERANCES +SEVERE +SEVERED +SEVERELY +SEVERENESS +SEVERENESSES +SEVERER +SEVEREST +SEVERING +SEVERITIES +SEVERITY +SEVERS +SEVICHE +SEVICHES +SEVRUGA +SEVRUGAS +SEW +SEWABILITIES +SEWABILITY +SEWABLE +SEWAGE +SEWAGES +SEWAN +SEWANS +SEWAR +SEWARS +SEWED +SEWER +SEWERAGE +SEWERAGES +SEWERED +SEWERING +SEWERLESS +SEWERLIKE +SEWERS +SEWING +SEWINGS +SEWN +SEWS +SEX +SEXAGENARIAN +SEXAGENARIANS +SEXAGESIMAL +SEXAGESIMALS +SEXDECILLION +SEXDECILLIONS +SEXED +SEXENNIAL +SEXENNIALS +SEXES +SEXIER +SEXIEST +SEXILY +SEXINESS +SEXINESSES +SEXING +SEXISM +SEXISMS +SEXIST +SEXISTS +SEXLESS +SEXLESSLY +SEXLESSNESS +SEXLESSNESSES +SEXOLOGIC +SEXOLOGIES +SEXOLOGIST +SEXOLOGISTS +SEXOLOGY +SEXPLOITATION +SEXPLOITATIONS +SEXPOT +SEXPOTS +SEXT +SEXTAIN +SEXTAINS +SEXTAN +SEXTANS +SEXTANT +SEXTANTS +SEXTARII +SEXTARIUS +SEXTET +SEXTETS +SEXTETTE +SEXTETTES +SEXTILE +SEXTILES +SEXTILLION +SEXTILLIONS +SEXTO +SEXTODECIMO +SEXTODECIMOS +SEXTON +SEXTONS +SEXTOS +SEXTS +SEXTUPLE +SEXTUPLED +SEXTUPLES +SEXTUPLET +SEXTUPLETS +SEXTUPLICATE +SEXTUPLICATED +SEXTUPLICATES +SEXTUPLICATING +SEXTUPLING +SEXTUPLY +SEXUAL +SEXUALITIES +SEXUALITY +SEXUALIZE +SEXUALIZED +SEXUALIZES +SEXUALIZING +SEXUALLY +SEXY +SFERICS +SFORZANDI +SFORZANDO +SFORZANDOS +SFORZATO +SFORZATOS +SFUMATO +SFUMATOS +SGRAFFITI +SGRAFFITO +SH +SHA +SHABBATOT +SHABBIER +SHABBIEST +SHABBILY +SHABBINESS +SHABBINESSES +SHABBY +SHACK +SHACKED +SHACKING +SHACKLE +SHACKLEBONE +SHACKLEBONES +SHACKLED +SHACKLER +SHACKLERS +SHACKLES +SHACKLING +SHACKO +SHACKOES +SHACKOS +SHACKS +SHAD +SHADBERRIES +SHADBERRY +SHADBLOW +SHADBLOWS +SHADBUSH +SHADBUSHES +SHADCHAN +SHADCHANIM +SHADCHANS +SHADDOCK +SHADDOCKS +SHADE +SHADED +SHADELESS +SHADER +SHADERS +SHADES +SHADFLIES +SHADFLY +SHADIER +SHADIEST +SHADILY +SHADINESS +SHADINESSES +SHADING +SHADINGS +SHADKHAN +SHADKHANIM +SHADKHANS +SHADOOF +SHADOOFS +SHADOW +SHADOWBOX +SHADOWBOXED +SHADOWBOXES +SHADOWBOXING +SHADOWED +SHADOWER +SHADOWERS +SHADOWGRAPH +SHADOWGRAPHIES +SHADOWGRAPHS +SHADOWGRAPHY +SHADOWIER +SHADOWIEST +SHADOWILY +SHADOWINESS +SHADOWINESSES +SHADOWING +SHADOWLESS +SHADOWLIKE +SHADOWS +SHADOWY +SHADRACH +SHADRACHS +SHADS +SHADUF +SHADUFS +SHADY +SHAFT +SHAFTED +SHAFTING +SHAFTINGS +SHAFTS +SHAG +SHAGBARK +SHAGBARKS +SHAGGED +SHAGGIER +SHAGGIEST +SHAGGILY +SHAGGINESS +SHAGGINESSES +SHAGGING +SHAGGY +SHAGGYMANE +SHAGGYMANES +SHAGREEN +SHAGREENS +SHAGS +SHAH +SHAHDOM +SHAHDOMS +SHAHS +SHAIRD +SHAIRDS +SHAIRN +SHAIRNS +SHAITAN +SHAITANS +SHAKABLE +SHAKE +SHAKEABLE +SHAKEDOWN +SHAKEDOWNS +SHAKEN +SHAKEOUT +SHAKEOUTS +SHAKER +SHAKERS +SHAKES +SHAKEUP +SHAKEUPS +SHAKIER +SHAKIEST +SHAKILY +SHAKINESS +SHAKINESSES +SHAKING +SHAKO +SHAKOES +SHAKOS +SHAKY +SHALE +SHALED +SHALELIKE +SHALES +SHALEY +SHALIER +SHALIEST +SHALL +SHALLOON +SHALLOONS +SHALLOP +SHALLOPS +SHALLOT +SHALLOTS +SHALLOW +SHALLOWED +SHALLOWER +SHALLOWEST +SHALLOWING +SHALLOWLY +SHALLOWNESS +SHALLOWNESSES +SHALLOWS +SHALOM +SHALOMS +SHALT +SHALY +SHAM +SHAMABLE +SHAMABLY +SHAMAN +SHAMANIC +SHAMANISM +SHAMANISMS +SHAMANIST +SHAMANISTIC +SHAMANISTS +SHAMANS +SHAMAS +SHAMBLE +SHAMBLED +SHAMBLES +SHAMBLING +SHAMBOLIC +SHAME +SHAMEABLE +SHAMEABLY +SHAMED +SHAMEFACED +SHAMEFACEDLY +SHAMEFACEDNESS +SHAMEFAST +SHAMEFUL +SHAMEFULLY +SHAMEFULNESS +SHAMEFULNESSES +SHAMELESS +SHAMELESSLY +SHAMELESSNESS +SHAMELESSNESSES +SHAMES +SHAMING +SHAMISEN +SHAMISENS +SHAMMAS +SHAMMASH +SHAMMASHIM +SHAMMASIM +SHAMMED +SHAMMER +SHAMMERS +SHAMMES +SHAMMIED +SHAMMIES +SHAMMING +SHAMMOS +SHAMMOSIM +SHAMMY +SHAMMYING +SHAMOIS +SHAMOS +SHAMOSIM +SHAMOY +SHAMOYED +SHAMOYING +SHAMOYS +SHAMPOO +SHAMPOOED +SHAMPOOER +SHAMPOOERS +SHAMPOOING +SHAMPOOS +SHAMROCK +SHAMROCKS +SHAMS +SHAMUS +SHAMUSES +SHANACHIE +SHANACHIES +SHANDIES +SHANDY +SHANDYGAFF +SHANDYGAFFS +SHANGHAI +SHANGHAIED +SHANGHAIER +SHANGHAIERS +SHANGHAIING +SHANGHAIS +SHANK +SHANKED +SHANKING +SHANKPIECE +SHANKPIECES +SHANKS +SHANNIES +SHANNY +SHANTEY +SHANTEYS +SHANTI +SHANTIES +SHANTIH +SHANTIHS +SHANTIS +SHANTUNG +SHANTUNGS +SHANTY +SHANTYMAN +SHANTYMEN +SHANTYTOWN +SHANTYTOWNS +SHAPABLE +SHAPE +SHAPEABLE +SHAPED +SHAPELESS +SHAPELESSLY +SHAPELESSNESS +SHAPELESSNESSES +SHAPELIER +SHAPELIEST +SHAPELINESS +SHAPELINESSES +SHAPELY +SHAPEN +SHAPER +SHAPERS +SHAPES +SHAPEUP +SHAPEUPS +SHAPEWEAR +SHAPING +SHARABLE +SHARD +SHARDS +SHARE +SHAREABILITIES +SHAREABILITY +SHAREABLE +SHARECROP +SHARECROPPED +SHARECROPPER +SHARECROPPERS +SHARECROPPING +SHARECROPS +SHARED +SHAREHOLDER +SHAREHOLDERS +SHARER +SHARERS +SHARES +SHAREWARE +SHAREWARES +SHARIA +SHARIAH +SHARIAHS +SHARIAS +SHARIF +SHARIFIAN +SHARIFS +SHARING +SHARK +SHARKED +SHARKER +SHARKERS +SHARKING +SHARKLIKE +SHARKS +SHARKSKIN +SHARKSKINS +SHARN +SHARNS +SHARNY +SHARP +SHARPED +SHARPEN +SHARPENED +SHARPENER +SHARPENERS +SHARPENING +SHARPENS +SHARPER +SHARPERS +SHARPEST +SHARPIE +SHARPIES +SHARPING +SHARPLY +SHARPNESS +SHARPNESSES +SHARPS +SHARPSHOOTER +SHARPSHOOTERS +SHARPSHOOTING +SHARPSHOOTINGS +SHARPY +SHASHLICK +SHASHLICKS +SHASHLIK +SHASHLIKS +SHASLIK +SHASLIKS +SHAT +SHATTER +SHATTERED +SHATTERER +SHATTERERS +SHATTERING +SHATTERINGLY +SHATTERPROOF +SHATTERS +SHAUGH +SHAUGHS +SHAUL +SHAULED +SHAULING +SHAULS +SHAVABLE +SHAVE +SHAVED +SHAVELING +SHAVELINGS +SHAVEN +SHAVER +SHAVERS +SHAVES +SHAVETAIL +SHAVETAILS +SHAVIE +SHAVIES +SHAVING +SHAVINGS +SHAW +SHAWED +SHAWING +SHAWL +SHAWLED +SHAWLING +SHAWLS +SHAWM +SHAWMS +SHAWN +SHAWS +SHAY +SHAYS +SHAZAM +SHE +SHEA +SHEAF +SHEAFED +SHEAFING +SHEAFLIKE +SHEAFS +SHEAL +SHEALING +SHEALINGS +SHEALS +SHEAR +SHEARED +SHEARER +SHEARERS +SHEARING +SHEARINGS +SHEARLEGS +SHEARLING +SHEARLINGS +SHEARS +SHEARWATER +SHEARWATERS +SHEAS +SHEATFISH +SHEATFISHES +SHEATH +SHEATHBILL +SHEATHBILLS +SHEATHE +SHEATHED +SHEATHER +SHEATHERS +SHEATHES +SHEATHING +SHEATHINGS +SHEATHS +SHEAVE +SHEAVED +SHEAVES +SHEAVING +SHEBANG +SHEBANGS +SHEBEAN +SHEBEANS +SHEBEEN +SHEBEENS +SHED +SHEDABLE +SHEDDABLE +SHEDDED +SHEDDER +SHEDDERS +SHEDDING +SHEDLIKE +SHEDS +SHEEN +SHEENED +SHEENEY +SHEENEYS +SHEENFUL +SHEENIE +SHEENIER +SHEENIES +SHEENIEST +SHEENING +SHEENS +SHEENY +SHEEP +SHEEPBERRIES +SHEEPBERRY +SHEEPCOT +SHEEPCOTE +SHEEPCOTES +SHEEPCOTS +SHEEPDOG +SHEEPDOGS +SHEEPFOLD +SHEEPFOLDS +SHEEPHEAD +SHEEPHEADS +SHEEPHERDER +SHEEPHERDERS +SHEEPHERDING +SHEEPHERDINGS +SHEEPISH +SHEEPISHLY +SHEEPISHNESS +SHEEPISHNESSES +SHEEPMAN +SHEEPMEN +SHEEPSHANK +SHEEPSHANKS +SHEEPSHEAD +SHEEPSHEADS +SHEEPSHEARER +SHEEPSHEARERS +SHEEPSHEARING +SHEEPSHEARINGS +SHEEPSKIN +SHEEPSKINS +SHEEPWALK +SHEEPWALKS +SHEER +SHEERED +SHEERER +SHEEREST +SHEERING +SHEERLEGS +SHEERLY +SHEERNESS +SHEERNESSES +SHEERS +SHEESH +SHEET +SHEETED +SHEETER +SHEETERS +SHEETFED +SHEETING +SHEETINGS +SHEETLESS +SHEETLIKE +SHEETROCK +SHEETROCKED +SHEETROCKING +SHEETROCKS +SHEETS +SHEEVE +SHEEVES +SHEGETZ +SHEIK +SHEIKDOM +SHEIKDOMS +SHEIKH +SHEIKHDOM +SHEIKHDOMS +SHEIKHS +SHEIKS +SHEILA +SHEILAS +SHEITAN +SHEITANS +SHEKALIM +SHEKEL +SHEKELIM +SHEKELS +SHELDRAKE +SHELDRAKES +SHELDUCK +SHELDUCKS +SHELF +SHELFFUL +SHELFFULS +SHELFLIKE +SHELL +SHELLAC +SHELLACK +SHELLACKED +SHELLACKING +SHELLACKINGS +SHELLACKS +SHELLACS +SHELLBACK +SHELLBACKS +SHELLBARK +SHELLBARKS +SHELLCRACKER +SHELLCRACKERS +SHELLED +SHELLER +SHELLERS +SHELLFIRE +SHELLFIRES +SHELLFISH +SHELLFISHERIES +SHELLFISHERY +SHELLFISHES +SHELLIER +SHELLIEST +SHELLING +SHELLPROOF +SHELLS +SHELLWORK +SHELLWORKS +SHELLY +SHELTA +SHELTAS +SHELTER +SHELTERBELT +SHELTERBELTS +SHELTERED +SHELTERER +SHELTERERS +SHELTERING +SHELTERLESS +SHELTERS +SHELTIE +SHELTIES +SHELTY +SHELVE +SHELVED +SHELVER +SHELVERS +SHELVES +SHELVIER +SHELVIEST +SHELVING +SHELVINGS +SHELVY +SHENANIGAN +SHENANIGANS +SHEND +SHENDING +SHENDS +SHENT +SHEOL +SHEOLS +SHEPHERD +SHEPHERDED +SHEPHERDESS +SHEPHERDESSES +SHEPHERDING +SHEPHERDS +SHEQALIM +SHEQEL +SHEQELS +SHERBERT +SHERBERTS +SHERBET +SHERBETS +SHERD +SHERDS +SHEREEF +SHEREEFS +SHERGOTTITE +SHERGOTTITES +SHERIF +SHERIFF +SHERIFFDOM +SHERIFFDOMS +SHERIFFS +SHERIFS +SHERLOCK +SHERLOCKS +SHEROOT +SHEROOTS +SHERPA +SHERPAS +SHERRIES +SHERRIS +SHERRISES +SHERRY +SHES +SHETLAND +SHETLANDS +SHEUCH +SHEUCHS +SHEUGH +SHEUGHS +SHEW +SHEWBREAD +SHEWBREADS +SHEWED +SHEWER +SHEWERS +SHEWING +SHEWN +SHEWS +SHH +SHIATSU +SHIATSUS +SHIATZU +SHIATZUS +SHIBAH +SHIBAHS +SHIBBOLETH +SHIBBOLETHS +SHICKER +SHICKERED +SHICKERS +SHICKSA +SHICKSAS +SHIED +SHIEL +SHIELD +SHIELDED +SHIELDER +SHIELDERS +SHIELDING +SHIELDS +SHIELING +SHIELINGS +SHIELS +SHIER +SHIERS +SHIES +SHIEST +SHIFT +SHIFTABLE +SHIFTED +SHIFTER +SHIFTERS +SHIFTIER +SHIFTIEST +SHIFTILY +SHIFTINESS +SHIFTINESSES +SHIFTING +SHIFTLESS +SHIFTLESSLY +SHIFTLESSNESS +SHIFTLESSNESSES +SHIFTS +SHIFTY +SHIGELLA +SHIGELLAE +SHIGELLAS +SHIGELLOSES +SHIGELLOSIS +SHIITAKE +SHIITAKES +SHIKAR +SHIKAREE +SHIKAREES +SHIKARI +SHIKARIS +SHIKARRED +SHIKARRING +SHIKARS +SHIKKER +SHIKKERS +SHIKSA +SHIKSAS +SHIKSE +SHIKSEH +SHIKSEHS +SHIKSES +SHILINGI +SHILL +SHILLALA +SHILLALAH +SHILLALAHS +SHILLALAS +SHILLED +SHILLELAGH +SHILLELAGHS +SHILLELAH +SHILLELAHS +SHILLING +SHILLINGS +SHILLS +SHILPIT +SHILY +SHIM +SHIMMED +SHIMMER +SHIMMERED +SHIMMERING +SHIMMERS +SHIMMERY +SHIMMIED +SHIMMIES +SHIMMING +SHIMMY +SHIMMYING +SHIMS +SHIN +SHINBONE +SHINBONES +SHINDIES +SHINDIG +SHINDIGS +SHINDY +SHINDYS +SHINE +SHINED +SHINER +SHINERS +SHINES +SHINGLE +SHINGLED +SHINGLER +SHINGLERS +SHINGLES +SHINGLING +SHINGLY +SHINGUARD +SHINGUARDS +SHINIER +SHINIEST +SHINILY +SHININESS +SHININESSES +SHINING +SHININGLY +SHINLEAF +SHINLEAFS +SHINLEAVES +SHINNED +SHINNERIES +SHINNERY +SHINNEY +SHINNEYED +SHINNEYING +SHINNEYS +SHINNIED +SHINNIES +SHINNING +SHINNY +SHINNYING +SHINPLASTER +SHINPLASTERS +SHINS +SHINSPLINTS +SHINY +SHIP +SHIPBOARD +SHIPBOARDS +SHIPBORNE +SHIPBUILDER +SHIPBUILDERS +SHIPBUILDING +SHIPBUILDINGS +SHIPFITTER +SHIPFITTERS +SHIPLAP +SHIPLAPS +SHIPLESS +SHIPLOAD +SHIPLOADS +SHIPMAN +SHIPMASTER +SHIPMASTERS +SHIPMATE +SHIPMATES +SHIPMEN +SHIPMENT +SHIPMENTS +SHIPOWNER +SHIPOWNERS +SHIPPABLE +SHIPPED +SHIPPEN +SHIPPENS +SHIPPER +SHIPPERS +SHIPPING +SHIPPINGS +SHIPPON +SHIPPONS +SHIPS +SHIPSHAPE +SHIPSIDE +SHIPSIDES +SHIPWAY +SHIPWAYS +SHIPWORM +SHIPWORMS +SHIPWRECK +SHIPWRECKED +SHIPWRECKING +SHIPWRECKS +SHIPWRIGHT +SHIPWRIGHTS +SHIPYARD +SHIPYARDS +SHIRE +SHIRES +SHIRK +SHIRKED +SHIRKER +SHIRKERS +SHIRKING +SHIRKS +SHIRR +SHIRRED +SHIRRING +SHIRRINGS +SHIRRS +SHIRT +SHIRTDRESS +SHIRTDRESSES +SHIRTFRONT +SHIRTFRONTS +SHIRTIER +SHIRTIEST +SHIRTING +SHIRTINGS +SHIRTLESS +SHIRTMAKER +SHIRTMAKERS +SHIRTS +SHIRTSLEEVE +SHIRTSLEEVED +SHIRTSLEEVES +SHIRTTAIL +SHIRTTAILED +SHIRTTAILING +SHIRTTAILS +SHIRTWAIST +SHIRTWAISTS +SHIRTY +SHIST +SHISTS +SHIT +SHITAKE +SHITAKES +SHITFACED +SHITHEAD +SHITHEADS +SHITLESS +SHITLIST +SHITLISTS +SHITLOAD +SHITLOADS +SHITS +SHITTAH +SHITTAHS +SHITTED +SHITTIER +SHITTIEST +SHITTIM +SHITTIMS +SHITTIMWOOD +SHITTIMWOODS +SHITTING +SHITTY +SHIV +SHIVA +SHIVAH +SHIVAHS +SHIVAREE +SHIVAREED +SHIVAREEING +SHIVAREES +SHIVAS +SHIVE +SHIVER +SHIVERED +SHIVERER +SHIVERERS +SHIVERING +SHIVERS +SHIVERY +SHIVES +SHIVITI +SHIVITIS +SHIVS +SHKOTZIM +SHLEMIEHL +SHLEMIEHLS +SHLEMIEL +SHLEMIELS +SHLEP +SHLEPP +SHLEPPED +SHLEPPING +SHLEPPS +SHLEPS +SHLIMAZEL +SHLIMAZELS +SHLOCK +SHLOCKIER +SHLOCKIEST +SHLOCKS +SHLOCKY +SHLUB +SHLUBS +SHLUMP +SHLUMPED +SHLUMPING +SHLUMPS +SHLUMPY +SHMALTZ +SHMALTZES +SHMALTZIER +SHMALTZIEST +SHMALTZY +SHMEAR +SHMEARS +SHMO +SHMOES +SHMOOZE +SHMOOZED +SHMOOZES +SHMOOZING +SHMUCK +SHMUCKS +SHNAPPS +SHNAPS +SHNOOK +SHNOOKS +SHNORRER +SHNORRERS +SHOAL +SHOALED +SHOALER +SHOALEST +SHOALIER +SHOALIEST +SHOALING +SHOALS +SHOALY +SHOAT +SHOATS +SHOCK +SHOCKABLE +SHOCKED +SHOCKER +SHOCKERS +SHOCKING +SHOCKINGLY +SHOCKPROOF +SHOCKS +SHOD +SHODDEN +SHODDIER +SHODDIES +SHODDIEST +SHODDILY +SHODDINESS +SHODDINESSES +SHODDY +SHOE +SHOEBILL +SHOEBILLS +SHOEBLACK +SHOEBLACKS +SHOEBOX +SHOEBOXES +SHOED +SHOEHORN +SHOEHORNED +SHOEHORNING +SHOEHORNS +SHOEING +SHOELACE +SHOELACES +SHOELESS +SHOEMAKER +SHOEMAKERS +SHOEPAC +SHOEPACK +SHOEPACKS +SHOEPACS +SHOER +SHOERS +SHOES +SHOESHINE +SHOESHINES +SHOESTRING +SHOESTRINGS +SHOETREE +SHOETREES +SHOFAR +SHOFARS +SHOFROTH +SHOG +SHOGGED +SHOGGING +SHOGI +SHOGIS +SHOGS +SHOGUN +SHOGUNAL +SHOGUNATE +SHOGUNATES +SHOGUNS +SHOJI +SHOJIS +SHOLOM +SHOLOMS +SHONE +SHOO +SHOOED +SHOOFLIES +SHOOFLY +SHOOING +SHOOK +SHOOKS +SHOOL +SHOOLED +SHOOLING +SHOOLS +SHOON +SHOOS +SHOOT +SHOOTDOWN +SHOOTDOWNS +SHOOTER +SHOOTERS +SHOOTING +SHOOTINGS +SHOOTOUT +SHOOTOUTS +SHOOTS +SHOP +SHOPBOY +SHOPBOYS +SHOPGIRL +SHOPGIRLS +SHOPHAR +SHOPHARS +SHOPHROTH +SHOPKEEPER +SHOPKEEPERS +SHOPLIFT +SHOPLIFTED +SHOPLIFTER +SHOPLIFTERS +SHOPLIFTING +SHOPLIFTS +SHOPMAN +SHOPMEN +SHOPPE +SHOPPED +SHOPPER +SHOPPERS +SHOPPES +SHOPPING +SHOPPINGS +SHOPS +SHOPTALK +SHOPTALKS +SHOPWINDOW +SHOPWINDOWS +SHOPWORN +SHORAN +SHORANS +SHORE +SHOREBIRD +SHOREBIRDS +SHORED +SHOREFRONT +SHOREFRONTS +SHORELESS +SHORELINE +SHORELINES +SHORES +SHORESIDE +SHOREWARD +SHOREWARDS +SHORING +SHORINGS +SHORL +SHORLS +SHORN +SHORT +SHORTAGE +SHORTAGES +SHORTBREAD +SHORTBREADS +SHORTCAKE +SHORTCAKES +SHORTCHANGE +SHORTCHANGED +SHORTCHANGER +SHORTCHANGERS +SHORTCHANGES +SHORTCHANGING +SHORTCOMING +SHORTCOMINGS +SHORTCUT +SHORTCUTS +SHORTCUTTING +SHORTED +SHORTEN +SHORTENED +SHORTENER +SHORTENERS +SHORTENING +SHORTENINGS +SHORTENS +SHORTER +SHORTEST +SHORTFALL +SHORTFALLS +SHORTHAIR +SHORTHAIRED +SHORTHAIRS +SHORTHAND +SHORTHANDED +SHORTHANDS +SHORTHEAD +SHORTHEADS +SHORTHORN +SHORTHORNS +SHORTIA +SHORTIAS +SHORTIE +SHORTIES +SHORTING +SHORTISH +SHORTLIST +SHORTLISTED +SHORTLISTING +SHORTLISTS +SHORTLY +SHORTNESS +SHORTNESSES +SHORTS +SHORTSIGHTED +SHORTSIGHTEDLY +SHORTSTOP +SHORTSTOPS +SHORTWAVE +SHORTWAVED +SHORTWAVES +SHORTWAVING +SHORTY +SHOT +SHOTE +SHOTES +SHOTGUN +SHOTGUNNED +SHOTGUNNER +SHOTGUNNERS +SHOTGUNNING +SHOTGUNS +SHOTHOLE +SHOTHOLES +SHOTS +SHOTT +SHOTTED +SHOTTEN +SHOTTING +SHOTTS +SHOULD +SHOULDER +SHOULDERED +SHOULDERING +SHOULDERS +SHOULDEST +SHOULDST +SHOUT +SHOUTED +SHOUTER +SHOUTERS +SHOUTING +SHOUTS +SHOVE +SHOVED +SHOVEL +SHOVELED +SHOVELER +SHOVELERS +SHOVELFUL +SHOVELFULS +SHOVELING +SHOVELLED +SHOVELLER +SHOVELLERS +SHOVELLING +SHOVELNOSE +SHOVELNOSES +SHOVELS +SHOVELSFUL +SHOVER +SHOVERS +SHOVES +SHOVING +SHOW +SHOWABLE +SHOWBIZ +SHOWBIZZES +SHOWBIZZY +SHOWBOAT +SHOWBOATED +SHOWBOATING +SHOWBOATS +SHOWBREAD +SHOWBREADS +SHOWCASE +SHOWCASED +SHOWCASES +SHOWCASING +SHOWDOWN +SHOWDOWNS +SHOWED +SHOWER +SHOWERED +SHOWERER +SHOWERERS +SHOWERHEAD +SHOWERHEADS +SHOWERING +SHOWERLESS +SHOWERS +SHOWERY +SHOWGIRL +SHOWGIRLS +SHOWIER +SHOWIEST +SHOWILY +SHOWINESS +SHOWINESSES +SHOWING +SHOWINGS +SHOWMAN +SHOWMANLY +SHOWMANSHIP +SHOWMANSHIPS +SHOWMEN +SHOWN +SHOWOFF +SHOWOFFS +SHOWPIECE +SHOWPIECES +SHOWPLACE +SHOWPLACES +SHOWRING +SHOWRINGS +SHOWROOM +SHOWROOMS +SHOWS +SHOWSTOPPER +SHOWSTOPPERS +SHOWSTOPPING +SHOWTIME +SHOWTIMES +SHOWY +SHOYU +SHOYUS +SHRANK +SHRAPNEL +SHRED +SHREDDED +SHREDDER +SHREDDERS +SHREDDING +SHREDS +SHREW +SHREWD +SHREWDER +SHREWDEST +SHREWDIE +SHREWDIES +SHREWDLY +SHREWDNESS +SHREWDNESSES +SHREWED +SHREWING +SHREWISH +SHREWISHLY +SHREWISHNESS +SHREWISHNESSES +SHREWLIKE +SHREWMICE +SHREWMOUSE +SHREWS +SHRI +SHRIEK +SHRIEKED +SHRIEKER +SHRIEKERS +SHRIEKIER +SHRIEKIEST +SHRIEKING +SHRIEKS +SHRIEKY +SHRIEVAL +SHRIEVALTIES +SHRIEVALTY +SHRIEVE +SHRIEVED +SHRIEVES +SHRIEVING +SHRIFT +SHRIFTS +SHRIKE +SHRIKES +SHRILL +SHRILLED +SHRILLER +SHRILLEST +SHRILLING +SHRILLNESS +SHRILLNESSES +SHRILLS +SHRILLY +SHRIMP +SHRIMPED +SHRIMPER +SHRIMPERS +SHRIMPIER +SHRIMPIEST +SHRIMPING +SHRIMPLIKE +SHRIMPS +SHRIMPY +SHRINE +SHRINED +SHRINES +SHRINING +SHRINK +SHRINKABLE +SHRINKAGE +SHRINKAGES +SHRINKER +SHRINKERS +SHRINKING +SHRINKS +SHRIS +SHRIVE +SHRIVED +SHRIVEL +SHRIVELED +SHRIVELING +SHRIVELLED +SHRIVELLING +SHRIVELS +SHRIVEN +SHRIVER +SHRIVERS +SHRIVES +SHRIVING +SHROFF +SHROFFED +SHROFFING +SHROFFS +SHROUD +SHROUDED +SHROUDING +SHROUDS +SHROVE +SHRUB +SHRUBBERIES +SHRUBBERY +SHRUBBIER +SHRUBBIEST +SHRUBBY +SHRUBLAND +SHRUBLANDS +SHRUBLIKE +SHRUBS +SHRUG +SHRUGGED +SHRUGGING +SHRUGS +SHRUNK +SHRUNKEN +SHTETEL +SHTETELS +SHTETL +SHTETLACH +SHTETLS +SHTICK +SHTICKIER +SHTICKIEST +SHTICKS +SHTICKY +SHTIK +SHTIKS +SHUCK +SHUCKED +SHUCKER +SHUCKERS +SHUCKING +SHUCKINGS +SHUCKS +SHUDDER +SHUDDERED +SHUDDERING +SHUDDERS +SHUDDERY +SHUFFLE +SHUFFLEBOARD +SHUFFLEBOARDS +SHUFFLED +SHUFFLER +SHUFFLERS +SHUFFLES +SHUFFLING +SHUL +SHULN +SHULS +SHUN +SHUNNABLE +SHUNNED +SHUNNER +SHUNNERS +SHUNNING +SHUNPIKE +SHUNPIKED +SHUNPIKER +SHUNPIKERS +SHUNPIKES +SHUNPIKING +SHUNPIKINGS +SHUNS +SHUNT +SHUNTED +SHUNTER +SHUNTERS +SHUNTING +SHUNTS +SHUSH +SHUSHED +SHUSHER +SHUSHERS +SHUSHES +SHUSHING +SHUT +SHUTDOWN +SHUTDOWNS +SHUTE +SHUTED +SHUTES +SHUTEYE +SHUTEYES +SHUTING +SHUTOFF +SHUTOFFS +SHUTOUT +SHUTOUTS +SHUTS +SHUTTER +SHUTTERBUG +SHUTTERBUGS +SHUTTERED +SHUTTERING +SHUTTERLESS +SHUTTERS +SHUTTING +SHUTTLE +SHUTTLECOCK +SHUTTLECOCKED +SHUTTLECOCKING +SHUTTLECOCKS +SHUTTLED +SHUTTLELESS +SHUTTLER +SHUTTLERS +SHUTTLES +SHUTTLING +SHVARTZE +SHVARTZES +SHWA +SHWANPAN +SHWANPANS +SHWAS +SHY +SHYER +SHYERS +SHYEST +SHYING +SHYLOCK +SHYLOCKED +SHYLOCKING +SHYLOCKS +SHYLY +SHYNESS +SHYNESSES +SHYSTER +SHYSTERS +SI +SIAL +SIALAGOGUE +SIALAGOGUES +SIALIC +SIALID +SIALIDAN +SIALIDANS +SIALIDS +SIALOID +SIALS +SIAMANG +SIAMANGS +SIAMESE +SIAMESES +SIB +SIBB +SIBBS +SIBILANCE +SIBILANCES +SIBILANCIES +SIBILANCY +SIBILANT +SIBILANTLY +SIBILANTS +SIBILATE +SIBILATED +SIBILATES +SIBILATING +SIBILATION +SIBILATIONS +SIBILATOR +SIBILATORS +SIBLING +SIBLINGS +SIBS +SIBYL +SIBYLIC +SIBYLLIC +SIBYLLINE +SIBYLS +SIC +SICCAN +SICCATIVE +SICCATIVES +SICCED +SICCING +SICE +SICES +SICK +SICKBAY +SICKBAYS +SICKBED +SICKBEDS +SICKED +SICKEE +SICKEES +SICKEN +SICKENED +SICKENER +SICKENERS +SICKENING +SICKENINGLY +SICKENS +SICKER +SICKERLY +SICKEST +SICKIE +SICKIES +SICKING +SICKISH +SICKISHLY +SICKISHNESS +SICKISHNESSES +SICKLE +SICKLED +SICKLEMIA +SICKLEMIAS +SICKLEMIC +SICKLES +SICKLIED +SICKLIER +SICKLIES +SICKLIEST +SICKLILY +SICKLINESS +SICKLINESSES +SICKLING +SICKLY +SICKLYING +SICKNESS +SICKNESSES +SICKO +SICKOS +SICKOUT +SICKOUTS +SICKROOM +SICKROOMS +SICKS +SICS +SIDDUR +SIDDURIM +SIDDURS +SIDE +SIDEARM +SIDEARMS +SIDEBAND +SIDEBANDS +SIDEBAR +SIDEBARS +SIDEBOARD +SIDEBOARDS +SIDEBURNED +SIDEBURNS +SIDECAR +SIDECARS +SIDECHECK +SIDECHECKS +SIDED +SIDEDNESS +SIDEDNESSES +SIDEDRESS +SIDEDRESSES +SIDEHILL +SIDEHILLS +SIDEKICK +SIDEKICKS +SIDELIGHT +SIDELIGHTS +SIDELINE +SIDELINED +SIDELINER +SIDELINERS +SIDELINES +SIDELING +SIDELINING +SIDELONG +SIDEMAN +SIDEMEN +SIDEPIECE +SIDEPIECES +SIDEREAL +SIDERITE +SIDERITES +SIDERITIC +SIDEROLITE +SIDEROLITES +SIDEROSES +SIDEROSIS +SIDEROTIC +SIDES +SIDESADDLE +SIDESADDLES +SIDESHOW +SIDESHOWS +SIDESLIP +SIDESLIPPED +SIDESLIPPING +SIDESLIPS +SIDESPIN +SIDESPINS +SIDESPLITTING +SIDESPLITTINGLY +SIDESTEP +SIDESTEPPED +SIDESTEPPER +SIDESTEPPERS +SIDESTEPPING +SIDESTEPS +SIDESTREAM +SIDESTROKE +SIDESTROKES +SIDESWIPE +SIDESWIPED +SIDESWIPES +SIDESWIPING +SIDETRACK +SIDETRACKED +SIDETRACKING +SIDETRACKS +SIDEWALK +SIDEWALKS +SIDEWALL +SIDEWALLS +SIDEWARD +SIDEWARDS +SIDEWAY +SIDEWAYS +SIDEWINDER +SIDEWINDERS +SIDEWISE +SIDH +SIDHE +SIDING +SIDINGS +SIDLE +SIDLED +SIDLER +SIDLERS +SIDLES +SIDLING +SIDLINGLY +SIEGE +SIEGED +SIEGES +SIEGING +SIEMENS +SIENITE +SIENITES +SIENNA +SIENNAS +SIEROZEM +SIEROZEMS +SIERRA +SIERRAN +SIERRAS +SIESTA +SIESTAS +SIEUR +SIEURS +SIEVE +SIEVED +SIEVERT +SIEVERTS +SIEVES +SIEVING +SIFAKA +SIFAKAS +SIFFLEUR +SIFFLEURS +SIFT +SIFTED +SIFTER +SIFTERS +SIFTING +SIFTINGS +SIFTS +SIGANID +SIGANIDS +SIGH +SIGHED +SIGHER +SIGHERS +SIGHING +SIGHLESS +SIGHLIKE +SIGHS +SIGHT +SIGHTED +SIGHTER +SIGHTERS +SIGHTING +SIGHTINGS +SIGHTLESS +SIGHTLESSLY +SIGHTLESSNESS +SIGHTLESSNESSES +SIGHTLIER +SIGHTLIEST +SIGHTLINE +SIGHTLINES +SIGHTLINESS +SIGHTLINESSES +SIGHTLY +SIGHTS +SIGHTSAW +SIGHTSEE +SIGHTSEEING +SIGHTSEEN +SIGHTSEER +SIGHTSEERS +SIGHTSEES +SIGIL +SIGILS +SIGLA +SIGLOI +SIGLOS +SIGLUM +SIGMA +SIGMAS +SIGMATE +SIGMOID +SIGMOIDAL +SIGMOIDALLY +SIGMOIDOSCOPIES +SIGMOIDOSCOPY +SIGMOIDS +SIGN +SIGNA +SIGNAGE +SIGNAGES +SIGNAL +SIGNALED +SIGNALER +SIGNALERS +SIGNALING +SIGNALISE +SIGNALISED +SIGNALISES +SIGNALISING +SIGNALIZATION +SIGNALIZATIONS +SIGNALIZE +SIGNALIZED +SIGNALIZES +SIGNALIZING +SIGNALLED +SIGNALLER +SIGNALLERS +SIGNALLING +SIGNALLY +SIGNALMAN +SIGNALMEN +SIGNALMENT +SIGNALMENTS +SIGNALS +SIGNATORIES +SIGNATORY +SIGNATURE +SIGNATURES +SIGNBOARD +SIGNBOARDS +SIGNED +SIGNEE +SIGNEES +SIGNER +SIGNERS +SIGNET +SIGNETED +SIGNETING +SIGNETS +SIGNIFICANCE +SIGNIFICANCES +SIGNIFICANCIES +SIGNIFICANCY +SIGNIFICANT +SIGNIFICANTLY +SIGNIFICATION +SIGNIFICATIONS +SIGNIFICATIVE +SIGNIFICS +SIGNIFIED +SIGNIFIEDS +SIGNIFIER +SIGNIFIERS +SIGNIFIES +SIGNIFY +SIGNIFYING +SIGNIFYINGS +SIGNING +SIGNIOR +SIGNIORI +SIGNIORIES +SIGNIORS +SIGNIORY +SIGNOR +SIGNORA +SIGNORAS +SIGNORE +SIGNORI +SIGNORIES +SIGNORINA +SIGNORINAS +SIGNORINE +SIGNORS +SIGNORY +SIGNPOST +SIGNPOSTED +SIGNPOSTING +SIGNPOSTS +SIGNS +SIKA +SIKAS +SIKE +SIKER +SIKES +SILAGE +SILAGES +SILANE +SILANES +SILD +SILDS +SILENCE +SILENCED +SILENCER +SILENCERS +SILENCES +SILENCING +SILENI +SILENT +SILENTER +SILENTEST +SILENTLY +SILENTNESS +SILENTNESSES +SILENTS +SILENUS +SILESIA +SILESIAS +SILEX +SILEXES +SILHOUETTE +SILHOUETTED +SILHOUETTES +SILHOUETTING +SILHOUETTIST +SILHOUETTISTS +SILICA +SILICAS +SILICATE +SILICATES +SILICEOUS +SILICIC +SILICIDE +SILICIDES +SILICIFICATION +SILICIFICATIONS +SILICIFIED +SILICIFIES +SILICIFY +SILICIFYING +SILICIOUS +SILICIUM +SILICIUMS +SILICLE +SILICLES +SILICON +SILICONE +SILICONES +SILICONIZED +SILICONS +SILICOSES +SILICOSIS +SILICOTIC +SILICOTICS +SILICULA +SILICULAE +SILIQUA +SILIQUAE +SILIQUE +SILIQUES +SILIQUOSE +SILIQUOUS +SILK +SILKALINE +SILKALINES +SILKED +SILKEN +SILKIE +SILKIER +SILKIES +SILKIEST +SILKILY +SILKINESS +SILKINESSES +SILKING +SILKLIKE +SILKOLINE +SILKOLINES +SILKS +SILKWEED +SILKWEEDS +SILKWORM +SILKWORMS +SILKY +SILL +SILLABUB +SILLABUBS +SILLER +SILLERS +SILLIBUB +SILLIBUBS +SILLIER +SILLIES +SILLIEST +SILLILY +SILLIMANITE +SILLIMANITES +SILLINESS +SILLINESSES +SILLS +SILLY +SILO +SILOED +SILOING +SILOS +SILOXANE +SILOXANES +SILT +SILTATION +SILTATIONS +SILTED +SILTIER +SILTIEST +SILTING +SILTS +SILTSTONE +SILTSTONES +SILTY +SILURIAN +SILURID +SILURIDS +SILUROID +SILUROIDS +SILVA +SILVAE +SILVAN +SILVANS +SILVAS +SILVER +SILVERBACK +SILVERBACKS +SILVERBERRIES +SILVERBERRY +SILVERED +SILVERER +SILVERERS +SILVERFISH +SILVERFISHES +SILVERINESS +SILVERINESSES +SILVERING +SILVERINGS +SILVERLY +SILVERN +SILVERPOINT +SILVERPOINTS +SILVERS +SILVERSIDE +SILVERSIDES +SILVERSMITH +SILVERSMITHING +SILVERSMITHINGS +SILVERSMITHS +SILVERWARE +SILVERWARES +SILVERWEED +SILVERWEEDS +SILVERY +SILVEX +SILVEXES +SILVICAL +SILVICS +SILVICULTURAL +SILVICULTURALLY +SILVICULTURE +SILVICULTURES +SILVICULTURIST +SILVICULTURISTS +SIM +SIMA +SIMAR +SIMARS +SIMARUBA +SIMARUBAS +SIMAS +SIMAZINE +SIMAZINES +SIMIAN +SIMIANS +SIMILAR +SIMILARITIES +SIMILARITY +SIMILARLY +SIMILE +SIMILES +SIMILITUDE +SIMILITUDES +SIMIOID +SIMIOUS +SIMITAR +SIMITARS +SIMLIN +SIMLINS +SIMMER +SIMMERED +SIMMERING +SIMMERS +SIMNEL +SIMNELS +SIMOLEON +SIMOLEONS +SIMONIAC +SIMONIACAL +SIMONIACALLY +SIMONIACS +SIMONIES +SIMONIST +SIMONISTS +SIMONIZE +SIMONIZED +SIMONIZES +SIMONIZING +SIMONY +SIMOOM +SIMOOMS +SIMOON +SIMOONS +SIMP +SIMPATICO +SIMPER +SIMPERED +SIMPERER +SIMPERERS +SIMPERING +SIMPERS +SIMPLE +SIMPLEMINDED +SIMPLEMINDEDLY +SIMPLENESS +SIMPLENESSES +SIMPLER +SIMPLES +SIMPLEST +SIMPLETON +SIMPLETONS +SIMPLEX +SIMPLEXES +SIMPLICES +SIMPLICIA +SIMPLICIAL +SIMPLICIALLY +SIMPLICITIES +SIMPLICITY +SIMPLIFICATION +SIMPLIFICATIONS +SIMPLIFIED +SIMPLIFIER +SIMPLIFIERS +SIMPLIFIES +SIMPLIFY +SIMPLIFYING +SIMPLISM +SIMPLISMS +SIMPLIST +SIMPLISTIC +SIMPLISTICALLY +SIMPLISTS +SIMPLY +SIMPS +SIMS +SIMULACRA +SIMULACRE +SIMULACRES +SIMULACRUM +SIMULACRUMS +SIMULANT +SIMULANTS +SIMULAR +SIMULARS +SIMULATE +SIMULATED +SIMULATES +SIMULATING +SIMULATION +SIMULATIONS +SIMULATIVE +SIMULATOR +SIMULATORS +SIMULCAST +SIMULCASTED +SIMULCASTING +SIMULCASTS +SIMULTANEITIES +SIMULTANEITY +SIMULTANEOUS +SIMULTANEOUSLY +SIN +SINAPISM +SINAPISMS +SINCE +SINCERE +SINCERELY +SINCERENESS +SINCERENESSES +SINCERER +SINCEREST +SINCERITIES +SINCERITY +SINCIPITA +SINCIPITAL +SINCIPUT +SINCIPUTS +SINE +SINECURE +SINECURES +SINES +SINEW +SINEWED +SINEWING +SINEWLESS +SINEWS +SINEWY +SINFONIA +SINFONIAS +SINFONIE +SINFONIETTA +SINFONIETTAS +SINFUL +SINFULLY +SINFULNESS +SINFULNESSES +SING +SINGABLE +SINGALONG +SINGALONGS +SINGE +SINGED +SINGEING +SINGER +SINGERS +SINGES +SINGING +SINGLE +SINGLED +SINGLENESS +SINGLENESSES +SINGLES +SINGLESTICK +SINGLESTICKS +SINGLET +SINGLETON +SINGLETONS +SINGLETREE +SINGLETREES +SINGLETS +SINGLING +SINGLY +SINGS +SINGSONG +SINGSONGS +SINGSONGY +SINGSPIEL +SINGSPIELS +SINGULAR +SINGULARITIES +SINGULARITY +SINGULARIZE +SINGULARIZED +SINGULARIZES +SINGULARIZING +SINGULARLY +SINGULARS +SINH +SINHS +SINICIZE +SINICIZED +SINICIZES +SINICIZING +SINISTER +SINISTERLY +SINISTERNESS +SINISTERNESSES +SINISTRAL +SINISTROUS +SINK +SINKABLE +SINKAGE +SINKAGES +SINKER +SINKERS +SINKHOLE +SINKHOLES +SINKING +SINKS +SINLESS +SINLESSLY +SINLESSNESS +SINLESSNESSES +SINNED +SINNER +SINNERS +SINNING +SINOATRIAL +SINOLOGICAL +SINOLOGIES +SINOLOGIST +SINOLOGISTS +SINOLOGUE +SINOLOGUES +SINOLOGY +SINOPIA +SINOPIAS +SINOPIE +SINS +SINSEMILLA +SINSEMILLAS +SINSYNE +SINTER +SINTERABILITIES +SINTERABILITY +SINTERED +SINTERING +SINTERS +SINUATE +SINUATED +SINUATELY +SINUATES +SINUATING +SINUATION +SINUATIONS +SINUOSITIES +SINUOSITY +SINUOUS +SINUOUSLY +SINUOUSNESS +SINUOUSNESSES +SINUS +SINUSES +SINUSITIS +SINUSITISES +SINUSLIKE +SINUSOID +SINUSOIDAL +SINUSOIDALLY +SINUSOIDS +SIP +SIPE +SIPED +SIPES +SIPHON +SIPHONAGE +SIPHONAGES +SIPHONAL +SIPHONED +SIPHONIC +SIPHONING +SIPHONOPHORE +SIPHONOPHORES +SIPHONOSTELE +SIPHONOSTELES +SIPHONS +SIPING +SIPPED +SIPPER +SIPPERS +SIPPET +SIPPETS +SIPPING +SIPS +SIR +SIRDAR +SIRDARS +SIRE +SIRED +SIREE +SIREES +SIREN +SIRENIAN +SIRENIANS +SIRENS +SIRES +SIRING +SIRLOIN +SIRLOINS +SIROCCO +SIROCCOS +SIRRA +SIRRAH +SIRRAHS +SIRRAS +SIRREE +SIRREES +SIRS +SIRUP +SIRUPED +SIRUPIER +SIRUPIEST +SIRUPING +SIRUPS +SIRUPY +SIRVENTE +SIRVENTES +SIS +SISAL +SISALS +SISES +SISKIN +SISKINS +SISSES +SISSIER +SISSIES +SISSIEST +SISSIFIED +SISSINESS +SISSINESSES +SISSY +SISSYISH +SISSYNESS +SISSYNESSES +SISTER +SISTERED +SISTERHOOD +SISTERHOODS +SISTERING +SISTERLY +SISTERS +SISTRA +SISTROID +SISTRUM +SISTRUMS +SIT +SITAR +SITARIST +SITARISTS +SITARS +SITCOM +SITCOMS +SITE +SITED +SITES +SITH +SITHENCE +SITHENS +SITING +SITOLOGIES +SITOLOGY +SITOSTEROL +SITOSTEROLS +SITS +SITTEN +SITTER +SITTERS +SITTING +SITTINGS +SITUATE +SITUATED +SITUATES +SITUATING +SITUATION +SITUATIONAL +SITUATIONALLY +SITUATIONS +SITUP +SITUPS +SITUS +SITUSES +SITZMARK +SITZMARKS +SIVER +SIVERS +SIX +SIXES +SIXFOLD +SIXMO +SIXMOS +SIXPENCE +SIXPENCES +SIXPENNY +SIXTE +SIXTEEN +SIXTEENMO +SIXTEENMOS +SIXTEENS +SIXTEENTH +SIXTEENTHS +SIXTES +SIXTH +SIXTHLY +SIXTHS +SIXTIES +SIXTIETH +SIXTIETHS +SIXTY +SIXTYISH +SIZABLE +SIZABLENESS +SIZABLENESSES +SIZABLY +SIZAR +SIZARS +SIZARSHIP +SIZARSHIPS +SIZE +SIZEABLE +SIZEABLY +SIZED +SIZER +SIZERS +SIZES +SIZIER +SIZIEST +SIZINESS +SIZINESSES +SIZING +SIZINGS +SIZY +SIZZLE +SIZZLED +SIZZLER +SIZZLERS +SIZZLES +SIZZLING +SJAMBOK +SJAMBOKED +SJAMBOKING +SJAMBOKS +SKA +SKAG +SKAGS +SKALD +SKALDIC +SKALDS +SKALDSHIP +SKALDSHIPS +SKANK +SKANKED +SKANKER +SKANKERS +SKANKIER +SKANKIEST +SKANKING +SKANKS +SKANKY +SKAS +SKAT +SKATE +SKATEBOARD +SKATEBOARDER +SKATEBOARDERS +SKATEBOARDING +SKATEBOARDINGS +SKATEBOARDS +SKATED +SKATER +SKATERS +SKATES +SKATING +SKATINGS +SKATOL +SKATOLE +SKATOLES +SKATOLS +SKATS +SKEAN +SKEANE +SKEANES +SKEANS +SKEDADDLE +SKEDADDLED +SKEDADDLER +SKEDADDLERS +SKEDADDLES +SKEDADDLING +SKEE +SKEED +SKEEING +SKEEN +SKEENS +SKEES +SKEET +SKEETER +SKEETERS +SKEETS +SKEG +SKEGS +SKEIGH +SKEIN +SKEINED +SKEINING +SKEINS +SKELETAL +SKELETALLY +SKELETON +SKELETONIC +SKELETONISE +SKELETONISED +SKELETONISES +SKELETONISING +SKELETONIZE +SKELETONIZED +SKELETONIZER +SKELETONIZERS +SKELETONIZES +SKELETONIZING +SKELETONS +SKELL +SKELLS +SKELLUM +SKELLUMS +SKELM +SKELMS +SKELP +SKELPED +SKELPING +SKELPIT +SKELPS +SKELTER +SKELTERED +SKELTERING +SKELTERS +SKENE +SKENES +SKEP +SKEPS +SKEPSIS +SKEPSISES +SKEPTIC +SKEPTICAL +SKEPTICALLY +SKEPTICISM +SKEPTICISMS +SKEPTICS +SKERRIES +SKERRY +SKETCH +SKETCHBOOK +SKETCHBOOKS +SKETCHED +SKETCHER +SKETCHERS +SKETCHES +SKETCHIER +SKETCHIEST +SKETCHILY +SKETCHINESS +SKETCHINESSES +SKETCHING +SKETCHPAD +SKETCHPADS +SKETCHY +SKEW +SKEWBACK +SKEWBACKS +SKEWBALD +SKEWBALDS +SKEWED +SKEWER +SKEWERED +SKEWERING +SKEWERS +SKEWING +SKEWNESS +SKEWNESSES +SKEWS +SKI +SKIABLE +SKIAGRAM +SKIAGRAMS +SKIAGRAPH +SKIAGRAPHS +SKIASCOPE +SKIASCOPES +SKIASCOPIES +SKIASCOPY +SKIBOB +SKIBOBBER +SKIBOBBERS +SKIBOBBING +SKIBOBBINGS +SKIBOBS +SKID +SKIDDED +SKIDDER +SKIDDERS +SKIDDIER +SKIDDIEST +SKIDDING +SKIDDOO +SKIDDOOED +SKIDDOOING +SKIDDOOS +SKIDDY +SKIDOO +SKIDOOED +SKIDOOING +SKIDOOS +SKIDPROOF +SKIDS +SKIDWAY +SKIDWAYS +SKIED +SKIER +SKIERS +SKIES +SKIEY +SKIFF +SKIFFLE +SKIFFLED +SKIFFLES +SKIFFLESS +SKIFFLING +SKIFFS +SKIING +SKIINGS +SKIJORER +SKIJORERS +SKIJORING +SKIJORINGS +SKILFUL +SKILFULLY +SKILL +SKILLED +SKILLESS +SKILLESSNESS +SKILLESSNESSES +SKILLET +SKILLETS +SKILLFUL +SKILLFULLY +SKILLFULNESS +SKILLFULNESSES +SKILLING +SKILLINGS +SKILLS +SKIM +SKIMBOARD +SKIMBOARDS +SKIMMED +SKIMMER +SKIMMERS +SKIMMING +SKIMMINGS +SKIMO +SKIMOBILE +SKIMOBILED +SKIMOBILES +SKIMOBILING +SKIMOS +SKIMP +SKIMPED +SKIMPIER +SKIMPIEST +SKIMPILY +SKIMPINESS +SKIMPINESSES +SKIMPING +SKIMPS +SKIMPY +SKIMS +SKIN +SKINFLICK +SKINFLICKS +SKINFLINT +SKINFLINTS +SKINFUL +SKINFULS +SKINHEAD +SKINHEADS +SKINK +SKINKED +SKINKER +SKINKERS +SKINKING +SKINKS +SKINLESS +SKINLIKE +SKINNED +SKINNER +SKINNERS +SKINNIER +SKINNIEST +SKINNINESS +SKINNINESSES +SKINNING +SKINNY +SKINS +SKINT +SKINTIGHT +SKIORING +SKIORINGS +SKIP +SKIPJACK +SKIPJACKS +SKIPLANE +SKIPLANES +SKIPPABLE +SKIPPED +SKIPPER +SKIPPERED +SKIPPERING +SKIPPERS +SKIPPET +SKIPPETS +SKIPPING +SKIPS +SKIRL +SKIRLED +SKIRLING +SKIRLS +SKIRMISH +SKIRMISHED +SKIRMISHER +SKIRMISHERS +SKIRMISHES +SKIRMISHING +SKIRR +SKIRRED +SKIRRET +SKIRRETS +SKIRRING +SKIRRS +SKIRT +SKIRTED +SKIRTER +SKIRTERS +SKIRTING +SKIRTINGS +SKIRTLESS +SKIRTLIKE +SKIRTS +SKIS +SKIT +SKITE +SKITED +SKITES +SKITING +SKITS +SKITTER +SKITTERED +SKITTERIER +SKITTERIEST +SKITTERING +SKITTERS +SKITTERY +SKITTISH +SKITTISHLY +SKITTISHNESS +SKITTISHNESSES +SKITTLE +SKITTLES +SKIVE +SKIVED +SKIVER +SKIVERS +SKIVES +SKIVING +SKIVVIED +SKIVVIES +SKIVVY +SKIVVYING +SKIWEAR +SKLENT +SKLENTED +SKLENTING +SKLENTS +SKOAL +SKOALED +SKOALING +SKOALS +SKOOKUM +SKORT +SKORTS +SKOSH +SKOSHES +SKREEGH +SKREEGHED +SKREEGHING +SKREEGHS +SKREIGH +SKREIGHED +SKREIGHING +SKREIGHS +SKUA +SKUAS +SKULDUGGERIES +SKULDUGGERY +SKULK +SKULKED +SKULKER +SKULKERS +SKULKING +SKULKS +SKULL +SKULLCAP +SKULLCAPS +SKULLDUGGERIES +SKULLDUGGERY +SKULLED +SKULLING +SKULLS +SKUNK +SKUNKED +SKUNKIER +SKUNKIEST +SKUNKING +SKUNKS +SKUNKWEED +SKUNKWEEDS +SKUNKY +SKY +SKYBOARD +SKYBOARDS +SKYBORNE +SKYBOX +SKYBOXES +SKYBRIDGE +SKYBRIDGES +SKYCAP +SKYCAPS +SKYDIVE +SKYDIVED +SKYDIVER +SKYDIVERS +SKYDIVES +SKYDIVING +SKYDIVINGS +SKYDOVE +SKYED +SKYEY +SKYHOOK +SKYHOOKS +SKYING +SKYJACK +SKYJACKED +SKYJACKER +SKYJACKERS +SKYJACKING +SKYJACKINGS +SKYJACKS +SKYLARK +SKYLARKED +SKYLARKER +SKYLARKERS +SKYLARKING +SKYLARKS +SKYLIGHT +SKYLIGHTED +SKYLIGHTS +SKYLIKE +SKYLINE +SKYLINES +SKYLIT +SKYMAN +SKYMEN +SKYPHOI +SKYPHOS +SKYROCKET +SKYROCKETED +SKYROCKETING +SKYROCKETS +SKYSAIL +SKYSAILS +SKYSCRAPER +SKYSCRAPERS +SKYSURF +SKYSURFED +SKYSURFER +SKYSURFERS +SKYSURFING +SKYSURFS +SKYWALK +SKYWALKS +SKYWARD +SKYWARDS +SKYWAY +SKYWAYS +SKYWRITE +SKYWRITER +SKYWRITERS +SKYWRITES +SKYWRITING +SKYWRITINGS +SKYWRITTEN +SKYWROTE +SLAB +SLABBED +SLABBER +SLABBERED +SLABBERING +SLABBERS +SLABBERY +SLABBING +SLABLIKE +SLABS +SLACK +SLACKED +SLACKEN +SLACKENED +SLACKENER +SLACKENERS +SLACKENING +SLACKENS +SLACKER +SLACKERS +SLACKEST +SLACKING +SLACKLY +SLACKNESS +SLACKNESSES +SLACKS +SLAG +SLAGGED +SLAGGIER +SLAGGIEST +SLAGGING +SLAGGY +SLAGS +SLAIN +SLAINTE +SLAKABLE +SLAKE +SLAKED +SLAKER +SLAKERS +SLAKES +SLAKING +SLALOM +SLALOMED +SLALOMER +SLALOMERS +SLALOMING +SLALOMIST +SLALOMISTS +SLALOMS +SLAM +SLAMDANCE +SLAMDANCED +SLAMDANCES +SLAMDANCING +SLAMMED +SLAMMER +SLAMMERS +SLAMMING +SLAMMINGS +SLAMS +SLANDER +SLANDERED +SLANDERER +SLANDERERS +SLANDERING +SLANDEROUS +SLANDEROUSLY +SLANDEROUSNESS +SLANDERS +SLANG +SLANGED +SLANGIER +SLANGIEST +SLANGILY +SLANGINESS +SLANGINESSES +SLANGING +SLANGS +SLANGUAGE +SLANGUAGES +SLANGY +SLANK +SLANT +SLANTED +SLANTING +SLANTINGLY +SLANTLY +SLANTS +SLANTWAYS +SLANTWISE +SLANTY +SLAP +SLAPDASH +SLAPDASHES +SLAPHAPPIER +SLAPHAPPIEST +SLAPHAPPY +SLAPJACK +SLAPJACKS +SLAPPED +SLAPPER +SLAPPERS +SLAPPING +SLAPS +SLAPSTICK +SLAPSTICKS +SLASH +SLASHED +SLASHER +SLASHERS +SLASHES +SLASHING +SLASHINGLY +SLASHINGS +SLAT +SLATCH +SLATCHES +SLATE +SLATED +SLATELIKE +SLATER +SLATERS +SLATES +SLATEY +SLATHER +SLATHERED +SLATHERING +SLATHERS +SLATIER +SLATIEST +SLATINESS +SLATINESSES +SLATING +SLATINGS +SLATS +SLATTED +SLATTERN +SLATTERNLINESS +SLATTERNLY +SLATTERNS +SLATTING +SLATTINGS +SLATY +SLAUGHTER +SLAUGHTERED +SLAUGHTERER +SLAUGHTERERS +SLAUGHTERHOUSE +SLAUGHTERHOUSES +SLAUGHTERING +SLAUGHTEROUS +SLAUGHTEROUSLY +SLAUGHTERS +SLAVE +SLAVED +SLAVEHOLDER +SLAVEHOLDERS +SLAVEHOLDING +SLAVEHOLDINGS +SLAVER +SLAVERED +SLAVERER +SLAVERERS +SLAVERIES +SLAVERING +SLAVERS +SLAVERY +SLAVES +SLAVEY +SLAVEYS +SLAVING +SLAVISH +SLAVISHLY +SLAVISHNESS +SLAVISHNESSES +SLAVOCRACIES +SLAVOCRACY +SLAVOCRAT +SLAVOCRATS +SLAW +SLAWS +SLAY +SLAYABLE +SLAYED +SLAYER +SLAYERS +SLAYING +SLAYS +SLEAVE +SLEAVED +SLEAVES +SLEAVING +SLEAZE +SLEAZEBAG +SLEAZEBAGS +SLEAZEBALL +SLEAZEBALLS +SLEAZES +SLEAZIER +SLEAZIEST +SLEAZILY +SLEAZINESS +SLEAZINESSES +SLEAZO +SLEAZOID +SLEAZOIDS +SLEAZY +SLED +SLEDDED +SLEDDER +SLEDDERS +SLEDDING +SLEDDINGS +SLEDGE +SLEDGED +SLEDGEHAMMER +SLEDGEHAMMERED +SLEDGEHAMMERING +SLEDGEHAMMERS +SLEDGES +SLEDGING +SLEDS +SLEEK +SLEEKED +SLEEKEN +SLEEKENED +SLEEKENING +SLEEKENS +SLEEKER +SLEEKERS +SLEEKEST +SLEEKIER +SLEEKIEST +SLEEKING +SLEEKIT +SLEEKLY +SLEEKNESS +SLEEKNESSES +SLEEKS +SLEEKY +SLEEP +SLEEPAWAY +SLEEPER +SLEEPERS +SLEEPIER +SLEEPIEST +SLEEPILY +SLEEPINESS +SLEEPINESSES +SLEEPING +SLEEPINGS +SLEEPLESS +SLEEPLESSLY +SLEEPLESSNESS +SLEEPLESSNESSES +SLEEPLIKE +SLEEPOVER +SLEEPOVERS +SLEEPS +SLEEPWALK +SLEEPWALKED +SLEEPWALKER +SLEEPWALKERS +SLEEPWALKING +SLEEPWALKS +SLEEPWEAR +SLEEPY +SLEEPYHEAD +SLEEPYHEADS +SLEET +SLEETED +SLEETIER +SLEETIEST +SLEETING +SLEETS +SLEETY +SLEEVE +SLEEVED +SLEEVELESS +SLEEVELET +SLEEVELETS +SLEEVES +SLEEVING +SLEIGH +SLEIGHED +SLEIGHER +SLEIGHERS +SLEIGHING +SLEIGHS +SLEIGHT +SLEIGHTS +SLENDER +SLENDERER +SLENDEREST +SLENDERIZE +SLENDERIZED +SLENDERIZES +SLENDERIZING +SLENDERLY +SLENDERNESS +SLENDERNESSES +SLEPT +SLEUTH +SLEUTHED +SLEUTHHOUND +SLEUTHHOUNDS +SLEUTHING +SLEUTHS +SLEW +SLEWED +SLEWING +SLEWS +SLICE +SLICEABLE +SLICED +SLICER +SLICERS +SLICES +SLICING +SLICK +SLICKED +SLICKEN +SLICKENED +SLICKENER +SLICKENERS +SLICKENING +SLICKENS +SLICKENSIDE +SLICKENSIDES +SLICKER +SLICKERS +SLICKEST +SLICKING +SLICKLY +SLICKNESS +SLICKNESSES +SLICKROCK +SLICKROCKS +SLICKS +SLICKSTER +SLICKSTERS +SLID +SLIDABLE +SLIDDEN +SLIDE +SLIDER +SLIDERS +SLIDES +SLIDEWAY +SLIDEWAYS +SLIDING +SLIER +SLIEST +SLIEVE +SLIEVES +SLIGHT +SLIGHTED +SLIGHTER +SLIGHTERS +SLIGHTEST +SLIGHTING +SLIGHTINGLY +SLIGHTLY +SLIGHTNESS +SLIGHTNESSES +SLIGHTS +SLILY +SLIM +SLIME +SLIMEBALL +SLIMEBALLS +SLIMED +SLIMES +SLIMIER +SLIMIEST +SLIMILY +SLIMINESS +SLIMINESSES +SLIMING +SLIMLY +SLIMMED +SLIMMER +SLIMMERS +SLIMMEST +SLIMMING +SLIMNASTICS +SLIMNESS +SLIMNESSES +SLIMPSIER +SLIMPSIEST +SLIMPSY +SLIMS +SLIMSIER +SLIMSIEST +SLIMSY +SLIMY +SLING +SLINGBACK +SLINGBACKS +SLINGER +SLINGERS +SLINGING +SLINGS +SLINGSHOT +SLINGSHOTS +SLINK +SLINKED +SLINKIER +SLINKIEST +SLINKILY +SLINKINESS +SLINKINESSES +SLINKING +SLINKS +SLINKY +SLIP +SLIPCASE +SLIPCASED +SLIPCASES +SLIPCOVER +SLIPCOVERED +SLIPCOVERING +SLIPCOVERS +SLIPDRESS +SLIPDRESSES +SLIPE +SLIPED +SLIPES +SLIPFORM +SLIPFORMED +SLIPFORMING +SLIPFORMS +SLIPING +SLIPKNOT +SLIPKNOTS +SLIPLESS +SLIPOUT +SLIPOUTS +SLIPOVER +SLIPOVERS +SLIPPAGE +SLIPPAGES +SLIPPED +SLIPPER +SLIPPERED +SLIPPERIER +SLIPPERIEST +SLIPPERINESS +SLIPPERINESSES +SLIPPERS +SLIPPERY +SLIPPIER +SLIPPIEST +SLIPPILY +SLIPPING +SLIPPY +SLIPS +SLIPSHEET +SLIPSHEETED +SLIPSHEETING +SLIPSHEETS +SLIPSHOD +SLIPSLOP +SLIPSLOPS +SLIPSOLE +SLIPSOLES +SLIPSTREAM +SLIPSTREAMED +SLIPSTREAMING +SLIPSTREAMS +SLIPT +SLIPUP +SLIPUPS +SLIPWARE +SLIPWARES +SLIPWAY +SLIPWAYS +SLIT +SLITHER +SLITHERED +SLITHERING +SLITHERS +SLITHERY +SLITLESS +SLITLIKE +SLITS +SLITTED +SLITTER +SLITTERS +SLITTIER +SLITTIEST +SLITTING +SLITTY +SLIVER +SLIVERED +SLIVERER +SLIVERERS +SLIVERING +SLIVERS +SLIVOVIC +SLIVOVICES +SLIVOVITZ +SLIVOVITZES +SLOB +SLOBBER +SLOBBERED +SLOBBERER +SLOBBERERS +SLOBBERING +SLOBBERS +SLOBBERY +SLOBBIER +SLOBBIEST +SLOBBISH +SLOBBY +SLOBS +SLOE +SLOES +SLOG +SLOGAN +SLOGANEER +SLOGANEERED +SLOGANEERING +SLOGANEERS +SLOGANIZE +SLOGANIZED +SLOGANIZES +SLOGANIZING +SLOGANS +SLOGGED +SLOGGER +SLOGGERS +SLOGGING +SLOGS +SLOID +SLOIDS +SLOJD +SLOJDS +SLOOP +SLOOPS +SLOP +SLOPE +SLOPED +SLOPER +SLOPERS +SLOPES +SLOPING +SLOPINGLY +SLOPPED +SLOPPIER +SLOPPIEST +SLOPPILY +SLOPPINESS +SLOPPINESSES +SLOPPING +SLOPPY +SLOPS +SLOPWORK +SLOPWORKS +SLOSH +SLOSHED +SLOSHES +SLOSHIER +SLOSHIEST +SLOSHING +SLOSHY +SLOT +SLOTBACK +SLOTBACKS +SLOTH +SLOTHFUL +SLOTHFULLY +SLOTHFULNESS +SLOTHFULNESSES +SLOTHS +SLOTS +SLOTTED +SLOTTER +SLOTTERS +SLOTTING +SLOUCH +SLOUCHED +SLOUCHER +SLOUCHERS +SLOUCHES +SLOUCHIER +SLOUCHIEST +SLOUCHILY +SLOUCHINESS +SLOUCHINESSES +SLOUCHING +SLOUCHY +SLOUGH +SLOUGHED +SLOUGHIER +SLOUGHIEST +SLOUGHING +SLOUGHS +SLOUGHY +SLOVEN +SLOVENLIER +SLOVENLIEST +SLOVENLINESS +SLOVENLINESSES +SLOVENLY +SLOVENS +SLOW +SLOWDOWN +SLOWDOWNS +SLOWED +SLOWER +SLOWEST +SLOWING +SLOWISH +SLOWLY +SLOWNESS +SLOWNESSES +SLOWPOKE +SLOWPOKES +SLOWS +SLOWWORM +SLOWWORMS +SLOYD +SLOYDS +SLUB +SLUBBED +SLUBBER +SLUBBERED +SLUBBERING +SLUBBERS +SLUBBING +SLUBBINGS +SLUBS +SLUDGE +SLUDGED +SLUDGES +SLUDGIER +SLUDGIEST +SLUDGING +SLUDGY +SLUE +SLUED +SLUES +SLUFF +SLUFFED +SLUFFING +SLUFFS +SLUG +SLUGABED +SLUGABEDS +SLUGFEST +SLUGFESTS +SLUGGARD +SLUGGARDLY +SLUGGARDNESS +SLUGGARDNESSES +SLUGGARDS +SLUGGED +SLUGGER +SLUGGERS +SLUGGING +SLUGGISH +SLUGGISHLY +SLUGGISHNESS +SLUGGISHNESSES +SLUGS +SLUICE +SLUICED +SLUICES +SLUICEWAY +SLUICEWAYS +SLUICING +SLUICY +SLUING +SLUM +SLUMBER +SLUMBERED +SLUMBERER +SLUMBERERS +SLUMBERING +SLUMBEROUS +SLUMBERS +SLUMBERY +SLUMBROUS +SLUMGULLION +SLUMGULLIONS +SLUMGUM +SLUMGUMS +SLUMISM +SLUMISMS +SLUMLORD +SLUMLORDS +SLUMMED +SLUMMER +SLUMMERS +SLUMMIER +SLUMMIEST +SLUMMING +SLUMMY +SLUMP +SLUMPED +SLUMPFLATION +SLUMPFLATIONS +SLUMPING +SLUMPS +SLUMS +SLUNG +SLUNGSHOT +SLUNGSHOTS +SLUNK +SLUR +SLURB +SLURBAN +SLURBS +SLURP +SLURPED +SLURPING +SLURPS +SLURRED +SLURRIED +SLURRIES +SLURRING +SLURRY +SLURRYING +SLURS +SLUSH +SLUSHED +SLUSHES +SLUSHIER +SLUSHIEST +SLUSHILY +SLUSHINESS +SLUSHINESSES +SLUSHING +SLUSHY +SLUT +SLUTS +SLUTTIER +SLUTTIEST +SLUTTISH +SLUTTISHLY +SLUTTISHNESS +SLUTTISHNESSES +SLUTTY +SLY +SLYBOOTS +SLYER +SLYEST +SLYLY +SLYNESS +SLYNESSES +SLYPE +SLYPES +SMACK +SMACKED +SMACKER +SMACKERS +SMACKING +SMACKS +SMALL +SMALLAGE +SMALLAGES +SMALLCLOTHES +SMALLER +SMALLEST +SMALLHOLDER +SMALLHOLDERS +SMALLHOLDING +SMALLHOLDINGS +SMALLISH +SMALLMOUTH +SMALLMOUTHS +SMALLNESS +SMALLNESSES +SMALLPOX +SMALLPOXES +SMALLS +SMALLSWORD +SMALLSWORDS +SMALLTIME +SMALT +SMALTI +SMALTINE +SMALTINES +SMALTITE +SMALTITES +SMALTO +SMALTOS +SMALTS +SMARAGD +SMARAGDE +SMARAGDES +SMARAGDINE +SMARAGDITE +SMARAGDITES +SMARAGDS +SMARM +SMARMIER +SMARMIEST +SMARMILY +SMARMINESS +SMARMINESSES +SMARMS +SMARMY +SMART +SMARTASS +SMARTASSES +SMARTED +SMARTEN +SMARTENED +SMARTENING +SMARTENS +SMARTER +SMARTEST +SMARTIE +SMARTIES +SMARTING +SMARTLY +SMARTNESS +SMARTNESSES +SMARTS +SMARTWEED +SMARTWEEDS +SMARTY +SMASH +SMASHED +SMASHER +SMASHERS +SMASHES +SMASHING +SMASHINGLY +SMASHUP +SMASHUPS +SMATTER +SMATTERED +SMATTERER +SMATTERERS +SMATTERING +SMATTERINGS +SMATTERS +SMAZE +SMAZES +SMEAR +SMEARCASE +SMEARCASES +SMEARED +SMEARER +SMEARERS +SMEARIER +SMEARIEST +SMEARING +SMEARS +SMEARY +SMECTIC +SMECTITE +SMECTITES +SMECTITIC +SMEDDUM +SMEDDUMS +SMEEK +SMEEKED +SMEEKING +SMEEKS +SMEGMA +SMEGMAS +SMELL +SMELLED +SMELLER +SMELLERS +SMELLIER +SMELLIEST +SMELLING +SMELLS +SMELLY +SMELT +SMELTED +SMELTER +SMELTERIES +SMELTERS +SMELTERY +SMELTING +SMELTS +SMERK +SMERKED +SMERKING +SMERKS +SMEW +SMEWS +SMIDGE +SMIDGEN +SMIDGENS +SMIDGEON +SMIDGEONS +SMIDGES +SMIDGIN +SMIDGINS +SMIERCASE +SMIERCASES +SMILAX +SMILAXES +SMILE +SMILED +SMILELESS +SMILER +SMILERS +SMILES +SMILEY +SMILEYS +SMILING +SMILINGLY +SMIRCH +SMIRCHED +SMIRCHES +SMIRCHING +SMIRK +SMIRKED +SMIRKER +SMIRKERS +SMIRKIER +SMIRKIEST +SMIRKILY +SMIRKING +SMIRKS +SMIRKY +SMIT +SMITE +SMITER +SMITERS +SMITES +SMITH +SMITHEREENS +SMITHERIES +SMITHERS +SMITHERY +SMITHIES +SMITHS +SMITHSONITE +SMITHSONITES +SMITHY +SMITING +SMITTEN +SMOCK +SMOCKED +SMOCKING +SMOCKINGS +SMOCKS +SMOG +SMOGGIER +SMOGGIEST +SMOGGY +SMOGLESS +SMOGS +SMOKABLE +SMOKE +SMOKEABLE +SMOKED +SMOKEHOUSE +SMOKEHOUSES +SMOKEJACK +SMOKEJACKS +SMOKELESS +SMOKELIKE +SMOKEPOT +SMOKEPOTS +SMOKER +SMOKERS +SMOKES +SMOKESTACK +SMOKESTACKS +SMOKEY +SMOKIER +SMOKIEST +SMOKILY +SMOKINESS +SMOKINESSES +SMOKING +SMOKY +SMOLDER +SMOLDERED +SMOLDERING +SMOLDERS +SMOLT +SMOLTS +SMOOCH +SMOOCHED +SMOOCHER +SMOOCHERS +SMOOCHES +SMOOCHING +SMOOCHY +SMOOSH +SMOOSHED +SMOOSHES +SMOOSHING +SMOOTH +SMOOTHBORE +SMOOTHBORES +SMOOTHED +SMOOTHEN +SMOOTHENED +SMOOTHENING +SMOOTHENS +SMOOTHER +SMOOTHERS +SMOOTHES +SMOOTHEST +SMOOTHIE +SMOOTHIES +SMOOTHING +SMOOTHLY +SMOOTHNESS +SMOOTHNESSES +SMOOTHS +SMOOTHY +SMORGASBORD +SMORGASBORDS +SMOTE +SMOTHER +SMOTHERED +SMOTHERER +SMOTHERERS +SMOTHERING +SMOTHERS +SMOTHERY +SMOULDER +SMOULDERED +SMOULDERING +SMOULDERS +SMUDGE +SMUDGED +SMUDGES +SMUDGIER +SMUDGIEST +SMUDGILY +SMUDGINESS +SMUDGINESSES +SMUDGING +SMUDGY +SMUG +SMUGGER +SMUGGEST +SMUGGLE +SMUGGLED +SMUGGLER +SMUGGLERS +SMUGGLES +SMUGGLING +SMUGLY +SMUGNESS +SMUGNESSES +SMUSH +SMUSHED +SMUSHES +SMUSHING +SMUT +SMUTCH +SMUTCHED +SMUTCHES +SMUTCHIER +SMUTCHIEST +SMUTCHING +SMUTCHY +SMUTS +SMUTTED +SMUTTIER +SMUTTIEST +SMUTTILY +SMUTTINESS +SMUTTINESSES +SMUTTING +SMUTTY +SNACK +SNACKED +SNACKER +SNACKERS +SNACKING +SNACKS +SNAFFLE +SNAFFLED +SNAFFLES +SNAFFLING +SNAFU +SNAFUED +SNAFUING +SNAFUS +SNAG +SNAGGED +SNAGGIER +SNAGGIEST +SNAGGING +SNAGGLETEETH +SNAGGLETOOTH +SNAGGLETOOTHED +SNAGGY +SNAGLIKE +SNAGS +SNAIL +SNAILED +SNAILING +SNAILLIKE +SNAILS +SNAKE +SNAKEBIRD +SNAKEBIRDS +SNAKEBIT +SNAKEBITE +SNAKEBITES +SNAKEBITTEN +SNAKED +SNAKEFISH +SNAKEFISHES +SNAKEHEAD +SNAKEHEADS +SNAKELIKE +SNAKEPIT +SNAKEPITS +SNAKEROOT +SNAKEROOTS +SNAKES +SNAKESKIN +SNAKESKINS +SNAKEWEED +SNAKEWEEDS +SNAKEY +SNAKIER +SNAKIEST +SNAKILY +SNAKINESS +SNAKINESSES +SNAKING +SNAKY +SNAP +SNAPBACK +SNAPBACKS +SNAPDRAGON +SNAPDRAGONS +SNAPLESS +SNAPPED +SNAPPER +SNAPPERS +SNAPPIER +SNAPPIEST +SNAPPILY +SNAPPINESS +SNAPPINESSES +SNAPPING +SNAPPISH +SNAPPISHLY +SNAPPISHNESS +SNAPPISHNESSES +SNAPPY +SNAPS +SNAPSHOOTER +SNAPSHOOTERS +SNAPSHOT +SNAPSHOTS +SNAPSHOTTED +SNAPSHOTTING +SNAPWEED +SNAPWEEDS +SNARE +SNARED +SNARER +SNARERS +SNARES +SNARF +SNARFED +SNARFING +SNARFS +SNARING +SNARK +SNARKIER +SNARKIEST +SNARKILY +SNARKS +SNARKY +SNARL +SNARLED +SNARLER +SNARLERS +SNARLIER +SNARLIEST +SNARLING +SNARLS +SNARLY +SNASH +SNASHES +SNATCH +SNATCHED +SNATCHER +SNATCHERS +SNATCHES +SNATCHIER +SNATCHIEST +SNATCHING +SNATCHY +SNATH +SNATHE +SNATHES +SNATHS +SNAW +SNAWED +SNAWING +SNAWS +SNAZZIER +SNAZZIEST +SNAZZY +SNEAK +SNEAKED +SNEAKER +SNEAKERED +SNEAKERS +SNEAKIER +SNEAKIEST +SNEAKILY +SNEAKINESS +SNEAKINESSES +SNEAKING +SNEAKINGLY +SNEAKS +SNEAKY +SNEAP +SNEAPED +SNEAPING +SNEAPS +SNECK +SNECKS +SNED +SNEDDED +SNEDDING +SNEDS +SNEER +SNEERED +SNEERER +SNEERERS +SNEERFUL +SNEERIER +SNEERIEST +SNEERING +SNEERS +SNEERY +SNEESH +SNEESHES +SNEEZE +SNEEZED +SNEEZER +SNEEZERS +SNEEZES +SNEEZEWEED +SNEEZEWEEDS +SNEEZIER +SNEEZIEST +SNEEZING +SNEEZY +SNELL +SNELLED +SNELLER +SNELLEST +SNELLING +SNELLS +SNIB +SNIBBED +SNIBBING +SNIBS +SNICK +SNICKED +SNICKER +SNICKERED +SNICKERER +SNICKERERS +SNICKERING +SNICKERS +SNICKERSNEE +SNICKERSNEES +SNICKERY +SNICKING +SNICKS +SNIDE +SNIDELY +SNIDENESS +SNIDENESSES +SNIDER +SNIDEST +SNIFF +SNIFFABLE +SNIFFED +SNIFFER +SNIFFERS +SNIFFIER +SNIFFIEST +SNIFFILY +SNIFFINESS +SNIFFINESSES +SNIFFING +SNIFFISH +SNIFFISHLY +SNIFFISHNESS +SNIFFISHNESSES +SNIFFLE +SNIFFLED +SNIFFLER +SNIFFLERS +SNIFFLES +SNIFFLING +SNIFFLY +SNIFFS +SNIFFY +SNIFTER +SNIFTERS +SNIGGER +SNIGGERED +SNIGGERER +SNIGGERERS +SNIGGERING +SNIGGERS +SNIGGLE +SNIGGLED +SNIGGLER +SNIGGLERS +SNIGGLES +SNIGGLING +SNIGLET +SNIGLETS +SNIP +SNIPE +SNIPED +SNIPER +SNIPERS +SNIPERSCOPE +SNIPERSCOPES +SNIPES +SNIPING +SNIPPED +SNIPPER +SNIPPERS +SNIPPERSNAPPER +SNIPPERSNAPPERS +SNIPPET +SNIPPETIER +SNIPPETIEST +SNIPPETS +SNIPPETY +SNIPPIER +SNIPPIEST +SNIPPILY +SNIPPING +SNIPPY +SNIPS +SNIT +SNITCH +SNITCHED +SNITCHER +SNITCHERS +SNITCHES +SNITCHING +SNITS +SNIVEL +SNIVELED +SNIVELER +SNIVELERS +SNIVELING +SNIVELLED +SNIVELLER +SNIVELLERS +SNIVELLING +SNIVELS +SNOB +SNOBBERIES +SNOBBERY +SNOBBIER +SNOBBIEST +SNOBBILY +SNOBBISH +SNOBBISHLY +SNOBBISHNESS +SNOBBISHNESSES +SNOBBISM +SNOBBISMS +SNOBBY +SNOBS +SNOG +SNOGGED +SNOGGING +SNOGS +SNOLLYGOSTER +SNOLLYGOSTERS +SNOOD +SNOODED +SNOODING +SNOODS +SNOOK +SNOOKED +SNOOKER +SNOOKERED +SNOOKERING +SNOOKERS +SNOOKING +SNOOKS +SNOOL +SNOOLED +SNOOLING +SNOOLS +SNOOP +SNOOPED +SNOOPER +SNOOPERS +SNOOPIER +SNOOPIEST +SNOOPILY +SNOOPING +SNOOPS +SNOOPY +SNOOT +SNOOTED +SNOOTIER +SNOOTIEST +SNOOTILY +SNOOTINESS +SNOOTINESSES +SNOOTING +SNOOTS +SNOOTY +SNOOZE +SNOOZED +SNOOZER +SNOOZERS +SNOOZES +SNOOZIER +SNOOZIEST +SNOOZING +SNOOZLE +SNOOZLED +SNOOZLES +SNOOZLING +SNOOZY +SNORE +SNORED +SNORER +SNORERS +SNORES +SNORING +SNORKEL +SNORKELED +SNORKELER +SNORKELERS +SNORKELING +SNORKELS +SNORT +SNORTED +SNORTER +SNORTERS +SNORTING +SNORTS +SNOT +SNOTS +SNOTTIER +SNOTTIEST +SNOTTILY +SNOTTINESS +SNOTTINESSES +SNOTTY +SNOUT +SNOUTED +SNOUTIER +SNOUTIEST +SNOUTING +SNOUTISH +SNOUTS +SNOUTY +SNOW +SNOWBALL +SNOWBALLED +SNOWBALLING +SNOWBALLS +SNOWBANK +SNOWBANKS +SNOWBELL +SNOWBELLS +SNOWBELT +SNOWBELTS +SNOWBERRIES +SNOWBERRY +SNOWBIRD +SNOWBIRDS +SNOWBLINK +SNOWBLINKS +SNOWBLOWER +SNOWBLOWERS +SNOWBOARD +SNOWBOARDED +SNOWBOARDER +SNOWBOARDERS +SNOWBOARDING +SNOWBOARDINGS +SNOWBOARDS +SNOWBOUND +SNOWBRUSH +SNOWBRUSHES +SNOWBUSH +SNOWBUSHES +SNOWCAP +SNOWCAPPED +SNOWCAPS +SNOWCAT +SNOWCATS +SNOWDRIFT +SNOWDRIFTS +SNOWDROP +SNOWDROPS +SNOWED +SNOWFALL +SNOWFALLS +SNOWFIELD +SNOWFIELDS +SNOWFLAKE +SNOWFLAKES +SNOWIER +SNOWIEST +SNOWILY +SNOWINESS +SNOWINESSES +SNOWING +SNOWLAND +SNOWLANDS +SNOWLESS +SNOWLIKE +SNOWMAKER +SNOWMAKERS +SNOWMAKING +SNOWMAN +SNOWMELT +SNOWMELTS +SNOWMEN +SNOWMOBILE +SNOWMOBILER +SNOWMOBILERS +SNOWMOBILES +SNOWMOBILING +SNOWMOBILINGS +SNOWMOBILIST +SNOWMOBILISTS +SNOWMOLD +SNOWMOLDS +SNOWPACK +SNOWPACKS +SNOWPLOW +SNOWPLOWED +SNOWPLOWING +SNOWPLOWS +SNOWS +SNOWSCAPE +SNOWSCAPES +SNOWSHED +SNOWSHEDS +SNOWSHOE +SNOWSHOED +SNOWSHOEING +SNOWSHOER +SNOWSHOERS +SNOWSHOES +SNOWSLIDE +SNOWSLIDES +SNOWSTORM +SNOWSTORMS +SNOWSUIT +SNOWSUITS +SNOWY +SNUB +SNUBBED +SNUBBER +SNUBBERS +SNUBBIER +SNUBBIEST +SNUBBINESS +SNUBBINESSES +SNUBBING +SNUBBY +SNUBNESS +SNUBNESSES +SNUBS +SNUCK +SNUFF +SNUFFBOX +SNUFFBOXES +SNUFFED +SNUFFER +SNUFFERS +SNUFFIER +SNUFFIEST +SNUFFILY +SNUFFING +SNUFFLE +SNUFFLED +SNUFFLER +SNUFFLERS +SNUFFLES +SNUFFLIER +SNUFFLIEST +SNUFFLING +SNUFFLY +SNUFFS +SNUFFY +SNUG +SNUGGED +SNUGGER +SNUGGERIE +SNUGGERIES +SNUGGERY +SNUGGEST +SNUGGIES +SNUGGING +SNUGGLE +SNUGGLED +SNUGGLES +SNUGGLING +SNUGLY +SNUGNESS +SNUGNESSES +SNUGS +SNYE +SNYES +SO +SOAK +SOAKAGE +SOAKAGES +SOAKED +SOAKER +SOAKERS +SOAKING +SOAKS +SOAP +SOAPBARK +SOAPBARKS +SOAPBERRIES +SOAPBERRY +SOAPBOX +SOAPBOXED +SOAPBOXES +SOAPBOXING +SOAPED +SOAPER +SOAPERS +SOAPIER +SOAPIEST +SOAPILY +SOAPINESS +SOAPINESSES +SOAPING +SOAPLESS +SOAPLIKE +SOAPS +SOAPSTONE +SOAPSTONES +SOAPSUDS +SOAPSUDSY +SOAPWORT +SOAPWORTS +SOAPY +SOAR +SOARED +SOARER +SOARERS +SOARING +SOARINGLY +SOARINGS +SOARS +SOAVE +SOAVES +SOB +SOBA +SOBAS +SOBBED +SOBBER +SOBBERS +SOBBING +SOBBINGLY +SOBEIT +SOBER +SOBERED +SOBERER +SOBEREST +SOBERING +SOBERIZE +SOBERIZED +SOBERIZES +SOBERIZING +SOBERLY +SOBERNESS +SOBERNESSES +SOBERS +SOBERSIDED +SOBERSIDEDNESS +SOBERSIDES +SOBFUL +SOBRIETIES +SOBRIETY +SOBRIQUET +SOBRIQUETS +SOBS +SOCA +SOCAGE +SOCAGER +SOCAGERS +SOCAGES +SOCAS +SOCCAGE +SOCCAGES +SOCCER +SOCCERS +SOCIABILITIES +SOCIABILITY +SOCIABLE +SOCIABLENESS +SOCIABLENESSES +SOCIABLES +SOCIABLY +SOCIAL +SOCIALISE +SOCIALISED +SOCIALISES +SOCIALISING +SOCIALISM +SOCIALISMS +SOCIALIST +SOCIALISTIC +SOCIALISTICALLY +SOCIALISTS +SOCIALITE +SOCIALITES +SOCIALITIES +SOCIALITY +SOCIALIZATION +SOCIALIZATIONS +SOCIALIZE +SOCIALIZED +SOCIALIZER +SOCIALIZERS +SOCIALIZES +SOCIALIZING +SOCIALLY +SOCIALS +SOCIETAL +SOCIETALLY +SOCIETIES +SOCIETY +SOCIOBIOLOGICAL +SOCIOBIOLOGIES +SOCIOBIOLOGIST +SOCIOBIOLOGISTS +SOCIOBIOLOGY +SOCIOCULTURAL +SOCIOCULTURALLY +SOCIOECONOMIC +SOCIOGRAM +SOCIOGRAMS +SOCIOHISTORICAL +SOCIOLECT +SOCIOLECTS +SOCIOLINGUIST +SOCIOLINGUISTIC +SOCIOLINGUISTS +SOCIOLOGESE +SOCIOLOGESES +SOCIOLOGIC +SOCIOLOGICAL +SOCIOLOGICALLY +SOCIOLOGIES +SOCIOLOGIST +SOCIOLOGISTS +SOCIOLOGY +SOCIOMETRIC +SOCIOMETRIES +SOCIOMETRY +SOCIOPATH +SOCIOPATHIC +SOCIOPATHS +SOCIOPOLITICAL +SOCIORELIGIOUS +SOCIOSEXUAL +SOCK +SOCKDOLAGER +SOCKDOLAGERS +SOCKDOLOGER +SOCKDOLOGERS +SOCKED +SOCKET +SOCKETED +SOCKETING +SOCKETS +SOCKEYE +SOCKEYES +SOCKING +SOCKLESS +SOCKMAN +SOCKMEN +SOCKO +SOCKS +SOCLE +SOCLES +SOCMAN +SOCMEN +SOD +SODA +SODALESS +SODALIST +SODALISTS +SODALITE +SODALITES +SODALITIES +SODALITY +SODAMIDE +SODAMIDES +SODAS +SODBUSTER +SODBUSTERS +SODDED +SODDEN +SODDENED +SODDENING +SODDENLY +SODDENNESS +SODDENNESSES +SODDENS +SODDIES +SODDING +SODDY +SODIC +SODIUM +SODIUMS +SODOM +SODOMIES +SODOMIST +SODOMISTS +SODOMITE +SODOMITES +SODOMITIC +SODOMITICAL +SODOMIZE +SODOMIZED +SODOMIZES +SODOMIZING +SODOMS +SODOMY +SODS +SOEVER +SOFA +SOFABED +SOFABEDS +SOFAR +SOFARS +SOFAS +SOFFIT +SOFFITS +SOFT +SOFTA +SOFTAS +SOFTBACK +SOFTBACKS +SOFTBALL +SOFTBALLER +SOFTBALLERS +SOFTBALLS +SOFTBOUND +SOFTBOUNDS +SOFTCORE +SOFTCOVER +SOFTCOVERS +SOFTEN +SOFTENED +SOFTENER +SOFTENERS +SOFTENING +SOFTENS +SOFTER +SOFTEST +SOFTGOODS +SOFTHEAD +SOFTHEADED +SOFTHEADEDLY +SOFTHEADEDNESS +SOFTHEADS +SOFTHEARTED +SOFTHEARTEDLY +SOFTHEARTEDNESS +SOFTIE +SOFTIES +SOFTISH +SOFTLY +SOFTNESS +SOFTNESSES +SOFTS +SOFTSHELL +SOFTSHELLS +SOFTWARE +SOFTWARES +SOFTWOOD +SOFTWOODS +SOFTY +SOGGED +SOGGIER +SOGGIEST +SOGGILY +SOGGINESS +SOGGINESSES +SOGGY +SOIGNE +SOIGNEE +SOIL +SOILAGE +SOILAGES +SOILBORNE +SOILED +SOILING +SOILLESS +SOILS +SOILURE +SOILURES +SOIREE +SOIREES +SOJA +SOJAS +SOJOURN +SOJOURNED +SOJOURNER +SOJOURNERS +SOJOURNING +SOJOURNS +SOKE +SOKEMAN +SOKEMEN +SOKES +SOKOL +SOKOLS +SOL +SOLA +SOLACE +SOLACED +SOLACEMENT +SOLACEMENTS +SOLACER +SOLACERS +SOLACES +SOLACING +SOLAN +SOLANACEOUS +SOLAND +SOLANDER +SOLANDERS +SOLANDS +SOLANIN +SOLANINE +SOLANINES +SOLANINS +SOLANO +SOLANOS +SOLANS +SOLANUM +SOLANUMS +SOLAR +SOLARIA +SOLARISE +SOLARISED +SOLARISES +SOLARISING +SOLARISM +SOLARISMS +SOLARIUM +SOLARIUMS +SOLARIZATION +SOLARIZATIONS +SOLARIZE +SOLARIZED +SOLARIZES +SOLARIZING +SOLATE +SOLATED +SOLATES +SOLATIA +SOLATING +SOLATION +SOLATIONS +SOLATIUM +SOLD +SOLDAN +SOLDANS +SOLDER +SOLDERABILITIES +SOLDERABILITY +SOLDERED +SOLDERER +SOLDERERS +SOLDERING +SOLDERS +SOLDI +SOLDIER +SOLDIERED +SOLDIERIES +SOLDIERING +SOLDIERINGS +SOLDIERLY +SOLDIERS +SOLDIERSHIP +SOLDIERSHIPS +SOLDIERY +SOLDO +SOLE +SOLECISE +SOLECISED +SOLECISES +SOLECISING +SOLECISM +SOLECISMS +SOLECIST +SOLECISTIC +SOLECISTS +SOLECIZE +SOLECIZED +SOLECIZES +SOLECIZING +SOLED +SOLEI +SOLELESS +SOLELY +SOLEMN +SOLEMNER +SOLEMNEST +SOLEMNIFIED +SOLEMNIFIES +SOLEMNIFY +SOLEMNIFYING +SOLEMNITIES +SOLEMNITY +SOLEMNIZATION +SOLEMNIZATIONS +SOLEMNIZE +SOLEMNIZED +SOLEMNIZES +SOLEMNIZING +SOLEMNLY +SOLEMNNESS +SOLEMNNESSES +SOLENESS +SOLENESSES +SOLENODON +SOLENODONS +SOLENOID +SOLENOIDAL +SOLENOIDS +SOLEPLATE +SOLEPLATES +SOLEPRINT +SOLEPRINTS +SOLERET +SOLERETS +SOLES +SOLEUS +SOLEUSES +SOLFATARA +SOLFATARAS +SOLFEGE +SOLFEGES +SOLFEGGI +SOLFEGGIO +SOLFEGGIOS +SOLFERINO +SOLFERINOS +SOLGEL +SOLI +SOLICIT +SOLICITANT +SOLICITANTS +SOLICITATION +SOLICITATIONS +SOLICITED +SOLICITING +SOLICITOR +SOLICITORS +SOLICITORSHIP +SOLICITORSHIPS +SOLICITOUS +SOLICITOUSLY +SOLICITOUSNESS +SOLICITS +SOLICITUDE +SOLICITUDES +SOLID +SOLIDAGO +SOLIDAGOS +SOLIDARISM +SOLIDARISMS +SOLIDARIST +SOLIDARISTIC +SOLIDARISTS +SOLIDARITIES +SOLIDARITY +SOLIDARY +SOLIDER +SOLIDEST +SOLIDI +SOLIDIFICATION +SOLIDIFICATIONS +SOLIDIFIED +SOLIDIFIES +SOLIDIFY +SOLIDIFYING +SOLIDITIES +SOLIDITY +SOLIDLY +SOLIDNESS +SOLIDNESSES +SOLIDS +SOLIDUS +SOLIFLUCTION +SOLIFLUCTIONS +SOLILOQUIES +SOLILOQUISE +SOLILOQUISED +SOLILOQUISES +SOLILOQUISING +SOLILOQUIST +SOLILOQUISTS +SOLILOQUIZE +SOLILOQUIZED +SOLILOQUIZER +SOLILOQUIZERS +SOLILOQUIZES +SOLILOQUIZING +SOLILOQUY +SOLING +SOLION +SOLIONS +SOLIPSISM +SOLIPSISMS +SOLIPSIST +SOLIPSISTIC +SOLIPSISTICALLY +SOLIPSISTS +SOLIQUID +SOLIQUIDS +SOLITAIRE +SOLITAIRES +SOLITARIES +SOLITARILY +SOLITARINESS +SOLITARINESSES +SOLITARY +SOLITON +SOLITONS +SOLITUDE +SOLITUDES +SOLITUDINARIAN +SOLITUDINARIANS +SOLLERET +SOLLERETS +SOLMIZATION +SOLMIZATIONS +SOLO +SOLOED +SOLOING +SOLOIST +SOLOISTIC +SOLOISTS +SOLON +SOLONCHAK +SOLONCHAKS +SOLONETS +SOLONETSES +SOLONETZ +SOLONETZES +SOLONETZIC +SOLONS +SOLOS +SOLS +SOLSTICE +SOLSTICES +SOLSTITIAL +SOLUBILISE +SOLUBILISED +SOLUBILISES +SOLUBILISING +SOLUBILITIES +SOLUBILITY +SOLUBILIZATION +SOLUBILIZATIONS +SOLUBILIZE +SOLUBILIZED +SOLUBILIZES +SOLUBILIZING +SOLUBLE +SOLUBLES +SOLUBLY +SOLUM +SOLUMS +SOLUNAR +SOLUS +SOLUTE +SOLUTES +SOLUTION +SOLUTIONS +SOLVABILITIES +SOLVABILITY +SOLVABLE +SOLVATE +SOLVATED +SOLVATES +SOLVATING +SOLVATION +SOLVATIONS +SOLVE +SOLVED +SOLVENCIES +SOLVENCY +SOLVENT +SOLVENTLESS +SOLVENTLY +SOLVENTS +SOLVER +SOLVERS +SOLVES +SOLVING +SOLVOLYSES +SOLVOLYSIS +SOLVOLYTIC +SOM +SOMA +SOMAN +SOMANS +SOMAS +SOMATA +SOMATIC +SOMATICALLY +SOMATOLOGICAL +SOMATOLOGIES +SOMATOLOGY +SOMATOMEDIN +SOMATOMEDINS +SOMATOPLEURE +SOMATOPLEURES +SOMATOSENSORY +SOMATOSTATIN +SOMATOSTATINS +SOMATOTROPHIN +SOMATOTROPHINS +SOMATOTROPIN +SOMATOTROPINS +SOMATOTYPE +SOMATOTYPES +SOMBER +SOMBERLY +SOMBERNESS +SOMBERNESSES +SOMBRE +SOMBRELY +SOMBRERO +SOMBREROS +SOMBROUS +SOME +SOMEBODIES +SOMEBODY +SOMEDAY +SOMEDEAL +SOMEHOW +SOMEONE +SOMEONES +SOMEPLACE +SOMEPLACES +SOMERSAULT +SOMERSAULTED +SOMERSAULTING +SOMERSAULTS +SOMERSET +SOMERSETED +SOMERSETING +SOMERSETS +SOMERSETTED +SOMERSETTING +SOMETHING +SOMETHINGS +SOMETIME +SOMETIMES +SOMEWAY +SOMEWAYS +SOMEWHAT +SOMEWHATS +SOMEWHEN +SOMEWHERE +SOMEWHERES +SOMEWHITHER +SOMEWISE +SOMITAL +SOMITE +SOMITES +SOMITIC +SOMMELIER +SOMMELIERS +SOMNAMBULANT +SOMNAMBULATE +SOMNAMBULATED +SOMNAMBULATES +SOMNAMBULATING +SOMNAMBULATION +SOMNAMBULATIONS +SOMNAMBULISM +SOMNAMBULISMS +SOMNAMBULIST +SOMNAMBULISTIC +SOMNAMBULISTS +SOMNIFACIENT +SOMNIFACIENTS +SOMNIFEROUS +SOMNOLENCE +SOMNOLENCES +SOMNOLENT +SOMNOLENTLY +SOMONI +SOMS +SON +SONANCE +SONANCES +SONANT +SONANTAL +SONANTIC +SONANTS +SONAR +SONARMAN +SONARMEN +SONARS +SONATA +SONATAS +SONATINA +SONATINAS +SONATINE +SONDE +SONDER +SONDERS +SONDES +SONE +SONES +SONG +SONGBIRD +SONGBIRDS +SONGBOOK +SONGBOOKS +SONGFEST +SONGFESTS +SONGFUL +SONGFULLY +SONGFULNESS +SONGFULNESSES +SONGLESS +SONGLESSLY +SONGLIKE +SONGS +SONGSMITH +SONGSMITHS +SONGSTER +SONGSTERS +SONGSTRESS +SONGSTRESSES +SONGWRITER +SONGWRITERS +SONGWRITING +SONGWRITINGS +SONHOOD +SONHOODS +SONIC +SONICALLY +SONICATE +SONICATED +SONICATES +SONICATING +SONICATION +SONICATIONS +SONICATOR +SONICATORS +SONICS +SONLESS +SONLIKE +SONLY +SONNET +SONNETED +SONNETEER +SONNETEERING +SONNETEERINGS +SONNETEERS +SONNETING +SONNETIZE +SONNETIZED +SONNETIZES +SONNETIZING +SONNETS +SONNETTED +SONNETTING +SONNIES +SONNY +SONOBUOY +SONOBUOYS +SONOGRAM +SONOGRAMS +SONOGRAPHIES +SONOGRAPHY +SONORANT +SONORANTS +SONORITIES +SONORITY +SONOROUS +SONOROUSLY +SONOROUSNESS +SONOROUSNESSES +SONOVOX +SONOVOXES +SONS +SONSHIP +SONSHIPS +SONSIE +SONSIER +SONSIEST +SONSY +SOOCHONG +SOOCHONGS +SOOEY +SOOK +SOOKS +SOON +SOONER +SOONERS +SOONEST +SOOT +SOOTED +SOOTH +SOOTHE +SOOTHED +SOOTHER +SOOTHERS +SOOTHES +SOOTHEST +SOOTHFAST +SOOTHING +SOOTHINGLY +SOOTHINGNESS +SOOTHINGNESSES +SOOTHLY +SOOTHS +SOOTHSAID +SOOTHSAY +SOOTHSAYER +SOOTHSAYERS +SOOTHSAYING +SOOTHSAYINGS +SOOTHSAYS +SOOTIER +SOOTIEST +SOOTILY +SOOTINESS +SOOTINESSES +SOOTING +SOOTS +SOOTY +SOP +SOPAIPILLA +SOPAIPILLAS +SOPAPILLA +SOPAPILLAS +SOPH +SOPHIES +SOPHISM +SOPHISMS +SOPHIST +SOPHISTIC +SOPHISTICAL +SOPHISTICALLY +SOPHISTICATE +SOPHISTICATED +SOPHISTICATEDLY +SOPHISTICATES +SOPHISTICATING +SOPHISTICATION +SOPHISTICATIONS +SOPHISTRIES +SOPHISTRY +SOPHISTS +SOPHOMORE +SOPHOMORES +SOPHOMORIC +SOPHS +SOPHY +SOPITE +SOPITED +SOPITES +SOPITING +SOPOR +SOPORIFEROUS +SOPORIFIC +SOPORIFICS +SOPORS +SOPPED +SOPPIER +SOPPIEST +SOPPINESS +SOPPINESSES +SOPPING +SOPPY +SOPRANI +SOPRANINO +SOPRANINOS +SOPRANO +SOPRANOS +SOPS +SORA +SORAS +SORB +SORBABILITIES +SORBABILITY +SORBABLE +SORBATE +SORBATES +SORBED +SORBENT +SORBENTS +SORBET +SORBETS +SORBIC +SORBING +SORBITOL +SORBITOLS +SORBOSE +SORBOSES +SORBS +SORCERER +SORCERERS +SORCERESS +SORCERESSES +SORCERIES +SORCEROUS +SORCERY +SORD +SORDID +SORDIDLY +SORDIDNESS +SORDIDNESSES +SORDINE +SORDINES +SORDINI +SORDINO +SORDOR +SORDORS +SORDS +SORE +SORED +SOREHEAD +SOREHEADED +SOREHEADS +SOREL +SORELS +SORELY +SORENESS +SORENESSES +SORER +SORES +SOREST +SORGHO +SORGHOS +SORGHUM +SORGHUMS +SORGO +SORGOS +SORI +SORICINE +SORING +SORINGS +SORITES +SORITIC +SORN +SORNED +SORNER +SORNERS +SORNING +SORNS +SOROCHE +SOROCHES +SORORAL +SORORALLY +SORORATE +SORORATES +SORORITIES +SORORITY +SOROSES +SOROSIS +SOROSISES +SORPTION +SORPTIONS +SORPTIVE +SORREL +SORRELS +SORRIER +SORRIEST +SORRILY +SORRINESS +SORRINESSES +SORROW +SORROWED +SORROWER +SORROWERS +SORROWFUL +SORROWFULLY +SORROWFULNESS +SORROWFULNESSES +SORROWING +SORROWS +SORRY +SORT +SORTA +SORTABLE +SORTABLY +SORTED +SORTER +SORTERS +SORTIE +SORTIED +SORTIEING +SORTIES +SORTILEGE +SORTILEGES +SORTING +SORTITION +SORTITIONS +SORTS +SORUS +SOS +SOSTENUTI +SOSTENUTO +SOSTENUTOS +SOT +SOTERIOLOGICAL +SOTERIOLOGIES +SOTERIOLOGY +SOTH +SOTHS +SOTOL +SOTOLS +SOTS +SOTTED +SOTTEDLY +SOTTISH +SOTTISHLY +SOTTISHNESS +SOTTISHNESSES +SOU +SOUARI +SOUARIS +SOUBISE +SOUBISES +SOUBRETTE +SOUBRETTES +SOUBRIQUET +SOUBRIQUETS +SOUCAR +SOUCARS +SOUCHONG +SOUCHONGS +SOUDAN +SOUDANS +SOUFFLE +SOUFFLED +SOUFFLEED +SOUFFLES +SOUGH +SOUGHED +SOUGHING +SOUGHS +SOUGHT +SOUK +SOUKOUS +SOUKOUSES +SOUKS +SOUL +SOULED +SOULFUL +SOULFULLY +SOULFULNESS +SOULFULNESSES +SOULLESS +SOULLESSLY +SOULLESSNESS +SOULLESSNESSES +SOULLIKE +SOULMATE +SOULMATES +SOULS +SOUND +SOUNDABLE +SOUNDALIKE +SOUNDALIKES +SOUNDBOARD +SOUNDBOARDS +SOUNDBOX +SOUNDBOXES +SOUNDED +SOUNDER +SOUNDERS +SOUNDEST +SOUNDING +SOUNDINGLY +SOUNDINGS +SOUNDLESS +SOUNDLESSLY +SOUNDLY +SOUNDMAN +SOUNDMEN +SOUNDNESS +SOUNDNESSES +SOUNDPROOF +SOUNDPROOFED +SOUNDPROOFING +SOUNDPROOFS +SOUNDS +SOUNDSTAGE +SOUNDSTAGES +SOUP +SOUPCON +SOUPCONS +SOUPED +SOUPIER +SOUPIEST +SOUPING +SOUPLESS +SOUPLIKE +SOUPS +SOUPSPOON +SOUPSPOONS +SOUPY +SOUR +SOURBALL +SOURBALLS +SOURCE +SOURCEBOOK +SOURCEBOOKS +SOURCED +SOURCEFUL +SOURCELESS +SOURCES +SOURCING +SOURDINE +SOURDINES +SOURDOUGH +SOURDOUGHS +SOURED +SOURER +SOUREST +SOURING +SOURISH +SOURLY +SOURNESS +SOURNESSES +SOURPUSS +SOURPUSSES +SOURS +SOURSOP +SOURSOPS +SOURWOOD +SOURWOODS +SOUS +SOUSAPHONE +SOUSAPHONES +SOUSE +SOUSED +SOUSES +SOUSING +SOUSLIK +SOUSLIKS +SOUTACHE +SOUTACHES +SOUTANE +SOUTANES +SOUTER +SOUTERS +SOUTH +SOUTHBOUND +SOUTHEAST +SOUTHEASTER +SOUTHEASTERLY +SOUTHEASTERN +SOUTHEASTERS +SOUTHEASTS +SOUTHEASTWARD +SOUTHEASTWARDS +SOUTHED +SOUTHER +SOUTHERLIES +SOUTHERLY +SOUTHERN +SOUTHERNMOST +SOUTHERNNESS +SOUTHERNNESSES +SOUTHERNS +SOUTHERNWOOD +SOUTHERNWOODS +SOUTHERS +SOUTHING +SOUTHINGS +SOUTHLAND +SOUTHLANDS +SOUTHPAW +SOUTHPAWS +SOUTHRON +SOUTHRONS +SOUTHS +SOUTHWARD +SOUTHWARDS +SOUTHWEST +SOUTHWESTER +SOUTHWESTERLY +SOUTHWESTERN +SOUTHWESTERS +SOUTHWESTS +SOUTHWESTWARD +SOUTHWESTWARDS +SOUVENIR +SOUVENIRS +SOUVLAKI +SOUVLAKIA +SOUVLAKIAS +SOUVLAKIS +SOVEREIGN +SOVEREIGNLY +SOVEREIGNS +SOVEREIGNTIES +SOVEREIGNTY +SOVIET +SOVIETISM +SOVIETISMS +SOVIETIZATION +SOVIETIZATIONS +SOVIETIZE +SOVIETIZED +SOVIETIZES +SOVIETIZING +SOVIETS +SOVKHOZ +SOVKHOZES +SOVKHOZY +SOVRAN +SOVRANLY +SOVRANS +SOVRANTIES +SOVRANTY +SOW +SOWABLE +SOWANS +SOWAR +SOWARS +SOWBELLIES +SOWBELLY +SOWBREAD +SOWBREADS +SOWCAR +SOWCARS +SOWED +SOWENS +SOWER +SOWERS +SOWING +SOWN +SOWS +SOX +SOY +SOYA +SOYAS +SOYBEAN +SOYBEANS +SOYMILK +SOYMILKS +SOYS +SOYUZ +SOYUZES +SOZIN +SOZINE +SOZINES +SOZINS +SOZZLED +SPA +SPACE +SPACEBAND +SPACEBANDS +SPACECRAFT +SPACECRAFTS +SPACED +SPACEFLIGHT +SPACEFLIGHTS +SPACELESS +SPACEMAN +SPACEMEN +SPACEPORT +SPACEPORTS +SPACER +SPACERS +SPACES +SPACESHIP +SPACESHIPS +SPACESUIT +SPACESUITS +SPACEWALK +SPACEWALKED +SPACEWALKER +SPACEWALKERS +SPACEWALKING +SPACEWALKS +SPACEWARD +SPACEY +SPACIAL +SPACIALLY +SPACIER +SPACIEST +SPACINESS +SPACINESSES +SPACING +SPACINGS +SPACIOUS +SPACIOUSLY +SPACIOUSNESS +SPACIOUSNESSES +SPACKLE +SPACKLED +SPACKLES +SPACKLING +SPACY +SPADE +SPADED +SPADEFISH +SPADEFISHES +SPADEFUL +SPADEFULS +SPADER +SPADERS +SPADES +SPADEWORK +SPADEWORKS +SPADICES +SPADILLE +SPADILLES +SPADING +SPADIX +SPADIXES +SPADO +SPADONES +SPAE +SPAED +SPAEING +SPAEINGS +SPAES +SPAETZLE +SPAETZLES +SPAGHETTI +SPAGHETTILIKE +SPAGHETTINI +SPAGHETTINIS +SPAGHETTIS +SPAGYRIC +SPAGYRICS +SPAHEE +SPAHEES +SPAHI +SPAHIS +SPAIL +SPAILS +SPAIT +SPAITS +SPAKE +SPALDEEN +SPALDEENS +SPALE +SPALES +SPALL +SPALLABLE +SPALLATION +SPALLATIONS +SPALLED +SPALLER +SPALLERS +SPALLING +SPALLS +SPALPEEN +SPALPEENS +SPAM +SPAMBOT +SPAMBOTS +SPAMMED +SPAMMER +SPAMMERS +SPAMMING +SPAMS +SPAN +SPANAKOPITA +SPANAKOPITAS +SPANCEL +SPANCELED +SPANCELING +SPANCELLED +SPANCELLING +SPANCELS +SPANDEX +SPANDEXES +SPANDREL +SPANDRELS +SPANDRIL +SPANDRILS +SPANG +SPANGLE +SPANGLED +SPANGLES +SPANGLIER +SPANGLIEST +SPANGLING +SPANGLY +SPANIEL +SPANIELS +SPANK +SPANKED +SPANKER +SPANKERS +SPANKING +SPANKINGS +SPANKS +SPANLESS +SPANNED +SPANNER +SPANNERS +SPANNING +SPANOKOPITA +SPANOKOPITAS +SPANS +SPANSULE +SPANSULES +SPANWORM +SPANWORMS +SPAR +SPARABLE +SPARABLES +SPARE +SPAREABLE +SPARED +SPARELY +SPARENESS +SPARENESSES +SPARER +SPARERIB +SPARERIBS +SPARERS +SPARES +SPAREST +SPARGE +SPARGED +SPARGER +SPARGERS +SPARGES +SPARGING +SPARID +SPARIDS +SPARING +SPARINGLY +SPARK +SPARKED +SPARKER +SPARKERS +SPARKIER +SPARKIEST +SPARKILY +SPARKING +SPARKISH +SPARKLE +SPARKLED +SPARKLER +SPARKLERS +SPARKLES +SPARKLET +SPARKLETS +SPARKLIER +SPARKLIEST +SPARKLING +SPARKLY +SPARKPLUG +SPARKPLUGGED +SPARKPLUGGING +SPARKPLUGS +SPARKS +SPARKY +SPARLIKE +SPARLING +SPARLINGS +SPAROID +SPAROIDS +SPARRED +SPARRIER +SPARRIEST +SPARRING +SPARROW +SPARROWLIKE +SPARROWS +SPARRY +SPARS +SPARSE +SPARSELY +SPARSENESS +SPARSENESSES +SPARSER +SPARSEST +SPARSITIES +SPARSITY +SPARTAN +SPARTEINE +SPARTEINES +SPARTINA +SPARTINAS +SPAS +SPASM +SPASMED +SPASMING +SPASMODIC +SPASMODICALLY +SPASMOLYTIC +SPASMOLYTICS +SPASMS +SPASTIC +SPASTICALLY +SPASTICITIES +SPASTICITY +SPASTICS +SPAT +SPATE +SPATES +SPATHAL +SPATHE +SPATHED +SPATHES +SPATHIC +SPATHOSE +SPATHULATE +SPATIAL +SPATIALITIES +SPATIALITY +SPATIALLY +SPATIOTEMPORAL +SPATS +SPATTED +SPATTER +SPATTERDOCK +SPATTERDOCKS +SPATTERED +SPATTERING +SPATTERS +SPATTING +SPATULA +SPATULAR +SPATULAS +SPATULATE +SPATZLE +SPATZLES +SPAVIE +SPAVIES +SPAVIET +SPAVIN +SPAVINED +SPAVINS +SPAWN +SPAWNED +SPAWNER +SPAWNERS +SPAWNING +SPAWNS +SPAY +SPAYED +SPAYING +SPAYS +SPAZ +SPAZZ +SPAZZES +SPEAK +SPEAKABLE +SPEAKEASIES +SPEAKEASY +SPEAKER +SPEAKERPHONE +SPEAKERPHONES +SPEAKERS +SPEAKERSHIP +SPEAKERSHIPS +SPEAKING +SPEAKINGS +SPEAKS +SPEAN +SPEANED +SPEANING +SPEANS +SPEAR +SPEARED +SPEARER +SPEARERS +SPEARFISH +SPEARFISHED +SPEARFISHES +SPEARFISHING +SPEARGUN +SPEARGUNS +SPEARHEAD +SPEARHEADED +SPEARHEADING +SPEARHEADS +SPEARING +SPEARLIKE +SPEARMAN +SPEARMEN +SPEARMINT +SPEARMINTS +SPEARS +SPEARWORT +SPEARWORTS +SPEC +SPECCED +SPECCING +SPECIAL +SPECIALER +SPECIALEST +SPECIALISATION +SPECIALISATIONS +SPECIALISE +SPECIALISED +SPECIALISES +SPECIALISING +SPECIALISM +SPECIALISMS +SPECIALIST +SPECIALISTIC +SPECIALISTS +SPECIALITIES +SPECIALITY +SPECIALIZATION +SPECIALIZATIONS +SPECIALIZE +SPECIALIZED +SPECIALIZES +SPECIALIZING +SPECIALLY +SPECIALNESS +SPECIALNESSES +SPECIALS +SPECIALTIES +SPECIALTY +SPECIATE +SPECIATED +SPECIATES +SPECIATING +SPECIATION +SPECIATIONAL +SPECIATIONS +SPECIE +SPECIES +SPECIESISM +SPECIESISMS +SPECIFIABLE +SPECIFIC +SPECIFICALLY +SPECIFICATION +SPECIFICATIONS +SPECIFICITIES +SPECIFICITY +SPECIFICS +SPECIFIED +SPECIFIER +SPECIFIERS +SPECIFIES +SPECIFY +SPECIFYING +SPECIMEN +SPECIMENS +SPECIOSITIES +SPECIOSITY +SPECIOUS +SPECIOUSLY +SPECIOUSNESS +SPECIOUSNESSES +SPECK +SPECKED +SPECKING +SPECKLE +SPECKLED +SPECKLES +SPECKLING +SPECKS +SPECS +SPECTACLE +SPECTACLED +SPECTACLES +SPECTACULAR +SPECTACULARLY +SPECTACULARS +SPECTATE +SPECTATED +SPECTATES +SPECTATING +SPECTATOR +SPECTATORIAL +SPECTATORS +SPECTATORSHIP +SPECTATORSHIPS +SPECTER +SPECTERS +SPECTINOMYCIN +SPECTINOMYCINS +SPECTRA +SPECTRAL +SPECTRALLY +SPECTRE +SPECTRES +SPECTROGRAM +SPECTROGRAMS +SPECTROGRAPH +SPECTROGRAPHIC +SPECTROGRAPHIES +SPECTROGRAPHS +SPECTROGRAPHY +SPECTROMETER +SPECTROMETERS +SPECTROMETRIC +SPECTROMETRIES +SPECTROMETRY +SPECTROSCOPE +SPECTROSCOPES +SPECTROSCOPIC +SPECTROSCOPIES +SPECTROSCOPIST +SPECTROSCOPISTS +SPECTROSCOPY +SPECTRUM +SPECTRUMS +SPECULA +SPECULAR +SPECULARITIES +SPECULARITY +SPECULARLY +SPECULATE +SPECULATED +SPECULATES +SPECULATING +SPECULATION +SPECULATIONS +SPECULATIVE +SPECULATIVELY +SPECULATOR +SPECULATORS +SPECULUM +SPECULUMS +SPED +SPEECH +SPEECHES +SPEECHIFIED +SPEECHIFIES +SPEECHIFY +SPEECHIFYING +SPEECHLESS +SPEECHLESSLY +SPEECHLESSNESS +SPEECHWRITER +SPEECHWRITERS +SPEED +SPEEDBALL +SPEEDBALLED +SPEEDBALLING +SPEEDBALLS +SPEEDBOAT +SPEEDBOATING +SPEEDBOATINGS +SPEEDBOATS +SPEEDED +SPEEDER +SPEEDERS +SPEEDIER +SPEEDIEST +SPEEDILY +SPEEDINESS +SPEEDINESSES +SPEEDING +SPEEDINGS +SPEEDO +SPEEDOMETER +SPEEDOMETERS +SPEEDOS +SPEEDREAD +SPEEDREADING +SPEEDREADS +SPEEDS +SPEEDSTER +SPEEDSTERS +SPEEDUP +SPEEDUPS +SPEEDWAY +SPEEDWAYS +SPEEDWELL +SPEEDWELLS +SPEEDY +SPEEL +SPEELED +SPEELING +SPEELS +SPEER +SPEERED +SPEERING +SPEERINGS +SPEERS +SPEIL +SPEILED +SPEILING +SPEILS +SPEIR +SPEIRED +SPEIRING +SPEIRS +SPEISE +SPEISES +SPEISS +SPEISSES +SPELAEAN +SPELEAN +SPELEOLOGICAL +SPELEOLOGIES +SPELEOLOGIST +SPELEOLOGISTS +SPELEOLOGY +SPELL +SPELLBIND +SPELLBINDER +SPELLBINDERS +SPELLBINDING +SPELLBINDINGLY +SPELLBINDS +SPELLBOUND +SPELLDOWN +SPELLDOWNS +SPELLED +SPELLER +SPELLERS +SPELLING +SPELLINGS +SPELLS +SPELT +SPELTER +SPELTERS +SPELTS +SPELTZ +SPELTZES +SPELUNK +SPELUNKED +SPELUNKER +SPELUNKERS +SPELUNKING +SPELUNKINGS +SPELUNKS +SPENCE +SPENCER +SPENCERS +SPENCES +SPEND +SPENDABLE +SPENDER +SPENDERS +SPENDIER +SPENDIEST +SPENDING +SPENDS +SPENDTHRIFT +SPENDTHRIFTS +SPENDY +SPENSE +SPENSES +SPENT +SPERM +SPERMACETI +SPERMACETIS +SPERMAGONIA +SPERMAGONIUM +SPERMARIES +SPERMARY +SPERMATHECA +SPERMATHECAE +SPERMATIA +SPERMATIAL +SPERMATIC +SPERMATID +SPERMATIDS +SPERMATIUM +SPERMATOCYTE +SPERMATOCYTES +SPERMATOGENESES +SPERMATOGENESIS +SPERMATOGENIC +SPERMATOGONIA +SPERMATOGONIAL +SPERMATOGONIUM +SPERMATOPHORE +SPERMATOPHORES +SPERMATOPHYTE +SPERMATOPHYTES +SPERMATOPHYTIC +SPERMATOZOA +SPERMATOZOAL +SPERMATOZOAN +SPERMATOZOANS +SPERMATOZOID +SPERMATOZOIDS +SPERMATOZOON +SPERMIC +SPERMICIDAL +SPERMICIDE +SPERMICIDES +SPERMINE +SPERMINES +SPERMIOGENESES +SPERMIOGENESIS +SPERMOPHILE +SPERMOPHILES +SPERMOUS +SPERMS +SPERRYLITE +SPERRYLITES +SPESSARTINE +SPESSARTINES +SPESSARTITE +SPESSARTITES +SPEW +SPEWED +SPEWER +SPEWERS +SPEWING +SPEWS +SPHAGNOUS +SPHAGNUM +SPHAGNUMS +SPHALERITE +SPHALERITES +SPHENE +SPHENES +SPHENIC +SPHENODON +SPHENODONS +SPHENODONT +SPHENOID +SPHENOIDAL +SPHENOIDS +SPHENOPSID +SPHENOPSIDS +SPHERAL +SPHERE +SPHERED +SPHERES +SPHERIC +SPHERICAL +SPHERICALLY +SPHERICITIES +SPHERICITY +SPHERICS +SPHERIER +SPHERIEST +SPHERING +SPHEROID +SPHEROIDAL +SPHEROIDALLY +SPHEROIDS +SPHEROMETER +SPHEROMETERS +SPHEROPLAST +SPHEROPLASTS +SPHERULAR +SPHERULE +SPHERULES +SPHERULITE +SPHERULITES +SPHERULITIC +SPHERY +SPHINCTER +SPHINCTERIC +SPHINCTERS +SPHINGES +SPHINGID +SPHINGIDS +SPHINGOSINE +SPHINGOSINES +SPHINX +SPHINXES +SPHINXLIKE +SPHYGMIC +SPHYGMOGRAPH +SPHYGMOGRAPHS +SPHYGMUS +SPHYGMUSES +SPHYNX +SPHYNXES +SPIC +SPICA +SPICAE +SPICAS +SPICATE +SPICATED +SPICCATO +SPICCATOS +SPICE +SPICEBUSH +SPICEBUSHES +SPICED +SPICELESS +SPICER +SPICERIES +SPICERS +SPICERY +SPICES +SPICEY +SPICIER +SPICIEST +SPICILY +SPICINESS +SPICINESSES +SPICING +SPICK +SPICKS +SPICS +SPICULA +SPICULAE +SPICULAR +SPICULATE +SPICULATION +SPICULATIONS +SPICULE +SPICULES +SPICULUM +SPICY +SPIDER +SPIDERIER +SPIDERIEST +SPIDERISH +SPIDERLIKE +SPIDERS +SPIDERWEB +SPIDERWEBS +SPIDERWORT +SPIDERWORTS +SPIDERY +SPIED +SPIEGEL +SPIEGELEISEN +SPIEGELEISENS +SPIEGELS +SPIEL +SPIELED +SPIELER +SPIELERS +SPIELING +SPIELS +SPIER +SPIERED +SPIERING +SPIERS +SPIES +SPIFF +SPIFFED +SPIFFIED +SPIFFIER +SPIFFIES +SPIFFIEST +SPIFFILY +SPIFFINESS +SPIFFINESSES +SPIFFING +SPIFFS +SPIFFY +SPIFFYING +SPIGOT +SPIGOTS +SPIK +SPIKE +SPIKED +SPIKELET +SPIKELETS +SPIKELIKE +SPIKENARD +SPIKENARDS +SPIKER +SPIKERS +SPIKES +SPIKEY +SPIKIER +SPIKIEST +SPIKILY +SPIKINESS +SPIKINESSES +SPIKING +SPIKS +SPIKY +SPILE +SPILED +SPILES +SPILIKIN +SPILIKINS +SPILING +SPILINGS +SPILL +SPILLABLE +SPILLAGE +SPILLAGES +SPILLED +SPILLER +SPILLERS +SPILLIKIN +SPILLIKINS +SPILLING +SPILLOVER +SPILLOVERS +SPILLS +SPILLWAY +SPILLWAYS +SPILT +SPILTH +SPILTHS +SPIN +SPINACH +SPINACHES +SPINACHLIKE +SPINACHY +SPINAGE +SPINAGES +SPINAL +SPINALLY +SPINALS +SPINATE +SPINDLE +SPINDLED +SPINDLER +SPINDLERS +SPINDLES +SPINDLIER +SPINDLIEST +SPINDLING +SPINDLY +SPINDRIFT +SPINDRIFTS +SPINE +SPINED +SPINEL +SPINELESS +SPINELESSLY +SPINELESSNESS +SPINELESSNESSES +SPINELIKE +SPINELLE +SPINELLES +SPINELS +SPINES +SPINET +SPINETS +SPINIER +SPINIEST +SPINIFEX +SPINIFEXES +SPININESS +SPININESSES +SPINLESS +SPINNAKER +SPINNAKERS +SPINNER +SPINNERET +SPINNERETS +SPINNERETTE +SPINNERETTES +SPINNERIES +SPINNERS +SPINNERY +SPINNEY +SPINNEYS +SPINNIES +SPINNING +SPINNINGS +SPINNY +SPINOFF +SPINOFFS +SPINOR +SPINORS +SPINOSE +SPINOSELY +SPINOSITIES +SPINOSITY +SPINOUS +SPINOUT +SPINOUTS +SPINS +SPINSTER +SPINSTERHOOD +SPINSTERHOODS +SPINSTERISH +SPINSTERLY +SPINSTERS +SPINTHARISCOPE +SPINTHARISCOPES +SPINTO +SPINTOS +SPINULA +SPINULAE +SPINULE +SPINULES +SPINULOSE +SPINY +SPIRACLE +SPIRACLES +SPIRACULAR +SPIRAEA +SPIRAEAS +SPIRAL +SPIRALED +SPIRALING +SPIRALITIES +SPIRALITY +SPIRALLED +SPIRALLING +SPIRALLY +SPIRALS +SPIRANT +SPIRANTS +SPIRE +SPIREA +SPIREAS +SPIRED +SPIREM +SPIREME +SPIREMES +SPIREMS +SPIRES +SPIRIER +SPIRIEST +SPIRILLA +SPIRILLUM +SPIRING +SPIRIT +SPIRITED +SPIRITEDLY +SPIRITEDNESS +SPIRITEDNESSES +SPIRITING +SPIRITISM +SPIRITISMS +SPIRITIST +SPIRITISTIC +SPIRITISTS +SPIRITLESS +SPIRITLESSLY +SPIRITLESSNESS +SPIRITOSO +SPIRITOUS +SPIRITS +SPIRITUAL +SPIRITUALISM +SPIRITUALISMS +SPIRITUALIST +SPIRITUALISTIC +SPIRITUALISTS +SPIRITUALITIES +SPIRITUALITY +SPIRITUALIZE +SPIRITUALIZED +SPIRITUALIZES +SPIRITUALIZING +SPIRITUALLY +SPIRITUALNESS +SPIRITUALNESSES +SPIRITUALS +SPIRITUALTIES +SPIRITUALTY +SPIRITUEL +SPIRITUELLE +SPIRITUOUS +SPIROCHAETE +SPIROCHAETES +SPIROCHETAL +SPIROCHETE +SPIROCHETES +SPIROCHETOSES +SPIROCHETOSIS +SPIROGYRA +SPIROGYRAS +SPIROID +SPIROMETER +SPIROMETERS +SPIROMETRIC +SPIROMETRIES +SPIROMETRY +SPIRT +SPIRTED +SPIRTING +SPIRTS +SPIRULA +SPIRULAE +SPIRULAS +SPIRULINA +SPIRULINAS +SPIRY +SPIT +SPITAL +SPITALS +SPITBALL +SPITBALLS +SPITE +SPITED +SPITEFUL +SPITEFULLER +SPITEFULLEST +SPITEFULLY +SPITEFULNESS +SPITEFULNESSES +SPITES +SPITFIRE +SPITFIRES +SPITING +SPITS +SPITTED +SPITTER +SPITTERS +SPITTING +SPITTLE +SPITTLEBUG +SPITTLEBUGS +SPITTLES +SPITTOON +SPITTOONS +SPITZ +SPITZES +SPIV +SPIVS +SPIVVY +SPLAKE +SPLAKES +SPLANCHNIC +SPLASH +SPLASHBOARD +SPLASHBOARDS +SPLASHDOWN +SPLASHDOWNS +SPLASHED +SPLASHER +SPLASHERS +SPLASHES +SPLASHIER +SPLASHIEST +SPLASHILY +SPLASHINESS +SPLASHINESSES +SPLASHING +SPLASHY +SPLAT +SPLATS +SPLATTED +SPLATTER +SPLATTERED +SPLATTERING +SPLATTERS +SPLATTING +SPLAY +SPLAYED +SPLAYFEET +SPLAYFOOT +SPLAYFOOTED +SPLAYING +SPLAYS +SPLEEN +SPLEENFUL +SPLEENIER +SPLEENIEST +SPLEENISH +SPLEENS +SPLEENWORT +SPLEENWORTS +SPLEENY +SPLENDENT +SPLENDID +SPLENDIDER +SPLENDIDEST +SPLENDIDLY +SPLENDIDNESS +SPLENDIDNESSES +SPLENDIFEROUS +SPLENDIFEROUSLY +SPLENDOR +SPLENDOROUS +SPLENDORS +SPLENDOUR +SPLENDOURS +SPLENDROUS +SPLENECTOMIES +SPLENECTOMIZE +SPLENECTOMIZED +SPLENECTOMIZES +SPLENECTOMIZING +SPLENECTOMY +SPLENETIC +SPLENETICALLY +SPLENETICS +SPLENIA +SPLENIAL +SPLENIC +SPLENII +SPLENIUM +SPLENIUS +SPLENOMEGALIES +SPLENOMEGALY +SPLENT +SPLENTS +SPLEUCHAN +SPLEUCHANS +SPLICE +SPLICED +SPLICER +SPLICERS +SPLICES +SPLICING +SPLIFF +SPLIFFS +SPLINE +SPLINED +SPLINES +SPLINING +SPLINT +SPLINTED +SPLINTER +SPLINTERED +SPLINTERING +SPLINTERS +SPLINTERY +SPLINTING +SPLINTS +SPLIT +SPLITS +SPLITTER +SPLITTERS +SPLITTING +SPLODGE +SPLODGED +SPLODGES +SPLODGING +SPLORE +SPLORES +SPLOSH +SPLOSHED +SPLOSHES +SPLOSHING +SPLOTCH +SPLOTCHED +SPLOTCHES +SPLOTCHIER +SPLOTCHIEST +SPLOTCHING +SPLOTCHY +SPLURGE +SPLURGED +SPLURGER +SPLURGERS +SPLURGES +SPLURGIER +SPLURGIEST +SPLURGING +SPLURGY +SPLUTTER +SPLUTTERED +SPLUTTERER +SPLUTTERERS +SPLUTTERING +SPLUTTERS +SPLUTTERY +SPODE +SPODES +SPODOSOL +SPODOSOLS +SPODUMENE +SPODUMENES +SPOIL +SPOILABLE +SPOILAGE +SPOILAGES +SPOILED +SPOILER +SPOILERS +SPOILING +SPOILS +SPOILSMAN +SPOILSMEN +SPOILSPORT +SPOILSPORTS +SPOILT +SPOKE +SPOKED +SPOKEN +SPOKES +SPOKESHAVE +SPOKESHAVES +SPOKESMAN +SPOKESMANSHIP +SPOKESMANSHIPS +SPOKESMEN +SPOKESPEOPLE +SPOKESPERSON +SPOKESPERSONS +SPOKESWOMAN +SPOKESWOMEN +SPOKING +SPOLIATE +SPOLIATED +SPOLIATES +SPOLIATING +SPOLIATION +SPOLIATIONS +SPOLIATOR +SPOLIATORS +SPONDAIC +SPONDAICS +SPONDEE +SPONDEES +SPONDYLITIS +SPONDYLITISES +SPONGE +SPONGED +SPONGER +SPONGERS +SPONGES +SPONGEWARE +SPONGEWARES +SPONGIER +SPONGIEST +SPONGILY +SPONGIN +SPONGINESS +SPONGINESSES +SPONGING +SPONGINS +SPONGY +SPONSAL +SPONSION +SPONSIONS +SPONSON +SPONSONS +SPONSOR +SPONSORED +SPONSORIAL +SPONSORING +SPONSORS +SPONSORSHIP +SPONSORSHIPS +SPONTANEITIES +SPONTANEITY +SPONTANEOUS +SPONTANEOUSLY +SPONTANEOUSNESS +SPONTOON +SPONTOONS +SPOOF +SPOOFED +SPOOFER +SPOOFERIES +SPOOFERS +SPOOFERY +SPOOFING +SPOOFS +SPOOFY +SPOOK +SPOOKED +SPOOKERIES +SPOOKERY +SPOOKIER +SPOOKIEST +SPOOKILY +SPOOKINESS +SPOOKINESSES +SPOOKING +SPOOKISH +SPOOKS +SPOOKY +SPOOL +SPOOLED +SPOOLER +SPOOLERS +SPOOLING +SPOOLINGS +SPOOLS +SPOON +SPOONBILL +SPOONBILLS +SPOONED +SPOONERISM +SPOONERISMS +SPOONEY +SPOONEYS +SPOONFUL +SPOONFULS +SPOONIER +SPOONIES +SPOONIEST +SPOONILY +SPOONING +SPOONS +SPOONSFUL +SPOONY +SPOOR +SPOORED +SPOORING +SPOORS +SPORADIC +SPORADICALLY +SPORAL +SPORANGIA +SPORANGIAL +SPORANGIOPHORE +SPORANGIOPHORES +SPORANGIUM +SPORE +SPORED +SPORES +SPORICIDAL +SPORICIDE +SPORICIDES +SPORING +SPOROCARP +SPOROCARPS +SPOROCYST +SPOROCYSTS +SPOROGENESES +SPOROGENESIS +SPOROGENIC +SPOROGENOUS +SPOROGONIA +SPOROGONIC +SPOROGONIES +SPOROGONIUM +SPOROGONY +SPOROID +SPOROPHORE +SPOROPHORES +SPOROPHYL +SPOROPHYLL +SPOROPHYLLS +SPOROPHYLS +SPOROPHYTE +SPOROPHYTES +SPOROPHYTIC +SPOROPOLLENIN +SPOROPOLLENINS +SPOROTRICHOSES +SPOROTRICHOSIS +SPOROZOA +SPOROZOAL +SPOROZOAN +SPOROZOANS +SPOROZOIC +SPOROZOITE +SPOROZOITES +SPOROZOON +SPORRAN +SPORRANS +SPORT +SPORTED +SPORTER +SPORTERS +SPORTFISHERMAN +SPORTFISHERMEN +SPORTFISHING +SPORTFISHINGS +SPORTFUL +SPORTFULLY +SPORTFULNESS +SPORTFULNESSES +SPORTIER +SPORTIEST +SPORTIF +SPORTILY +SPORTINESS +SPORTINESSES +SPORTING +SPORTINGLY +SPORTIVE +SPORTIVELY +SPORTIVENESS +SPORTIVENESSES +SPORTS +SPORTSCAST +SPORTSCASTER +SPORTSCASTERS +SPORTSCASTS +SPORTSMAN +SPORTSMANLIKE +SPORTSMANLY +SPORTSMANSHIP +SPORTSMANSHIPS +SPORTSMEN +SPORTSWEAR +SPORTSWEARS +SPORTSWOMAN +SPORTSWOMEN +SPORTSWRITER +SPORTSWRITERS +SPORTSWRITING +SPORTSWRITINGS +SPORTY +SPORULAR +SPORULATE +SPORULATED +SPORULATES +SPORULATING +SPORULATION +SPORULATIONS +SPORULATIVE +SPORULE +SPORULES +SPOT +SPOTLESS +SPOTLESSLY +SPOTLESSNESS +SPOTLESSNESSES +SPOTLIGHT +SPOTLIGHTED +SPOTLIGHTING +SPOTLIGHTS +SPOTLIT +SPOTS +SPOTTABLE +SPOTTED +SPOTTER +SPOTTERS +SPOTTIER +SPOTTIEST +SPOTTILY +SPOTTINESS +SPOTTINESSES +SPOTTING +SPOTTY +SPOUSAL +SPOUSALLY +SPOUSALS +SPOUSE +SPOUSED +SPOUSES +SPOUSING +SPOUT +SPOUTED +SPOUTER +SPOUTERS +SPOUTING +SPOUTINGS +SPOUTLESS +SPOUTS +SPRACHGEFUHL +SPRACHGEFUHLS +SPRADDLE +SPRADDLED +SPRADDLES +SPRADDLING +SPRAG +SPRAGS +SPRAIN +SPRAINED +SPRAINING +SPRAINS +SPRANG +SPRANGS +SPRAT +SPRATS +SPRATTLE +SPRATTLED +SPRATTLES +SPRATTLING +SPRAWL +SPRAWLED +SPRAWLER +SPRAWLERS +SPRAWLIER +SPRAWLIEST +SPRAWLING +SPRAWLS +SPRAWLY +SPRAY +SPRAYED +SPRAYER +SPRAYERS +SPRAYING +SPRAYS +SPREAD +SPREADABILITIES +SPREADABILITY +SPREADABLE +SPREADER +SPREADERS +SPREADING +SPREADS +SPREADSHEET +SPREADSHEETS +SPREE +SPREES +SPRENT +SPRIER +SPRIEST +SPRIG +SPRIGGED +SPRIGGER +SPRIGGERS +SPRIGGIER +SPRIGGIEST +SPRIGGING +SPRIGGY +SPRIGHT +SPRIGHTFUL +SPRIGHTFULLY +SPRIGHTFULNESS +SPRIGHTLIER +SPRIGHTLIEST +SPRIGHTLINESS +SPRIGHTLINESSES +SPRIGHTLY +SPRIGHTS +SPRIGS +SPRIGTAIL +SPRIGTAILS +SPRING +SPRINGAL +SPRINGALD +SPRINGALDS +SPRINGALS +SPRINGBOARD +SPRINGBOARDS +SPRINGBOK +SPRINGBOKS +SPRINGE +SPRINGED +SPRINGEING +SPRINGER +SPRINGERS +SPRINGES +SPRINGHEAD +SPRINGHEADS +SPRINGHOUSE +SPRINGHOUSES +SPRINGIER +SPRINGIEST +SPRINGILY +SPRINGINESS +SPRINGINESSES +SPRINGING +SPRINGINGS +SPRINGLET +SPRINGLETS +SPRINGLIKE +SPRINGS +SPRINGTAIL +SPRINGTAILS +SPRINGTIDE +SPRINGTIDES +SPRINGTIME +SPRINGTIMES +SPRINGWATER +SPRINGWATERS +SPRINGWOOD +SPRINGWOODS +SPRINGY +SPRINKLE +SPRINKLED +SPRINKLER +SPRINKLERED +SPRINKLERING +SPRINKLERS +SPRINKLES +SPRINKLING +SPRINKLINGS +SPRINT +SPRINTED +SPRINTER +SPRINTERS +SPRINTING +SPRINTS +SPRIT +SPRITE +SPRITES +SPRITS +SPRITSAIL +SPRITSAILS +SPRITZ +SPRITZED +SPRITZER +SPRITZERS +SPRITZES +SPRITZING +SPROCKET +SPROCKETS +SPROUT +SPROUTED +SPROUTING +SPROUTS +SPRUCE +SPRUCED +SPRUCELY +SPRUCENESS +SPRUCENESSES +SPRUCER +SPRUCES +SPRUCEST +SPRUCIER +SPRUCIEST +SPRUCING +SPRUCY +SPRUE +SPRUES +SPRUG +SPRUGS +SPRUNG +SPRY +SPRYER +SPRYEST +SPRYLY +SPRYNESS +SPRYNESSES +SPUD +SPUDDED +SPUDDER +SPUDDERS +SPUDDING +SPUDS +SPUE +SPUED +SPUES +SPUING +SPUME +SPUMED +SPUMES +SPUMIER +SPUMIEST +SPUMING +SPUMONE +SPUMONES +SPUMONI +SPUMONIS +SPUMOUS +SPUMY +SPUN +SPUNBONDED +SPUNK +SPUNKED +SPUNKIE +SPUNKIER +SPUNKIES +SPUNKIEST +SPUNKILY +SPUNKINESS +SPUNKINESSES +SPUNKING +SPUNKS +SPUNKY +SPUR +SPURGALL +SPURGALLED +SPURGALLING +SPURGALLS +SPURGE +SPURGES +SPURIOUS +SPURIOUSLY +SPURIOUSNESS +SPURIOUSNESSES +SPURN +SPURNED +SPURNER +SPURNERS +SPURNING +SPURNS +SPURRED +SPURRER +SPURRERS +SPURREY +SPURREYS +SPURRIER +SPURRIERS +SPURRIES +SPURRING +SPURRY +SPURS +SPURT +SPURTED +SPURTER +SPURTERS +SPURTING +SPURTLE +SPURTLES +SPURTS +SPUTA +SPUTNIK +SPUTNIKS +SPUTTER +SPUTTERED +SPUTTERER +SPUTTERERS +SPUTTERING +SPUTTERS +SPUTTERY +SPUTUM +SPY +SPYGLASS +SPYGLASSES +SPYING +SPYMASTER +SPYMASTERS +SQUAB +SQUABBIER +SQUABBIEST +SQUABBLE +SQUABBLED +SQUABBLER +SQUABBLERS +SQUABBLES +SQUABBLING +SQUABBY +SQUABS +SQUAD +SQUADDED +SQUADDING +SQUADRON +SQUADRONED +SQUADRONING +SQUADRONS +SQUADS +SQUALENE +SQUALENES +SQUALID +SQUALIDER +SQUALIDEST +SQUALIDLY +SQUALIDNESS +SQUALIDNESSES +SQUALL +SQUALLED +SQUALLER +SQUALLERS +SQUALLIER +SQUALLIEST +SQUALLING +SQUALLISH +SQUALLS +SQUALLY +SQUALOR +SQUALORS +SQUAMA +SQUAMAE +SQUAMATE +SQUAMATES +SQUAMATION +SQUAMATIONS +SQUAMOSAL +SQUAMOSALS +SQUAMOSE +SQUAMOUS +SQUAMULOSE +SQUANDER +SQUANDERED +SQUANDERER +SQUANDERERS +SQUANDERING +SQUANDERS +SQUARE +SQUARED +SQUARELY +SQUARENESS +SQUARENESSES +SQUARER +SQUARERS +SQUARES +SQUAREST +SQUARING +SQUARISH +SQUARISHLY +SQUARISHNESS +SQUARISHNESSES +SQUARK +SQUARKS +SQUARROSE +SQUASH +SQUASHED +SQUASHER +SQUASHERS +SQUASHES +SQUASHIER +SQUASHIEST +SQUASHILY +SQUASHINESS +SQUASHINESSES +SQUASHING +SQUASHY +SQUAT +SQUATLY +SQUATNESS +SQUATNESSES +SQUATS +SQUATTED +SQUATTER +SQUATTERED +SQUATTERING +SQUATTERS +SQUATTEST +SQUATTIER +SQUATTIEST +SQUATTILY +SQUATTING +SQUATTY +SQUAW +SQUAWBUSH +SQUAWBUSHES +SQUAWFISH +SQUAWFISHES +SQUAWK +SQUAWKED +SQUAWKER +SQUAWKERS +SQUAWKING +SQUAWKS +SQUAWROOT +SQUAWROOTS +SQUAWS +SQUEAK +SQUEAKED +SQUEAKER +SQUEAKERS +SQUEAKIER +SQUEAKIEST +SQUEAKILY +SQUEAKING +SQUEAKS +SQUEAKY +SQUEAL +SQUEALED +SQUEALER +SQUEALERS +SQUEALING +SQUEALS +SQUEAMISH +SQUEAMISHLY +SQUEAMISHNESS +SQUEAMISHNESSES +SQUEEGEE +SQUEEGEED +SQUEEGEEING +SQUEEGEES +SQUEEZABILITIES +SQUEEZABILITY +SQUEEZABLE +SQUEEZE +SQUEEZED +SQUEEZER +SQUEEZERS +SQUEEZES +SQUEEZING +SQUEG +SQUEGGED +SQUEGGING +SQUEGS +SQUELCH +SQUELCHED +SQUELCHER +SQUELCHERS +SQUELCHES +SQUELCHIER +SQUELCHIEST +SQUELCHING +SQUELCHY +SQUETEAGUE +SQUIB +SQUIBBED +SQUIBBING +SQUIBS +SQUID +SQUIDDED +SQUIDDING +SQUIDS +SQUIFFED +SQUIFFIER +SQUIFFIEST +SQUIFFY +SQUIGGLE +SQUIGGLED +SQUIGGLES +SQUIGGLIER +SQUIGGLIEST +SQUIGGLING +SQUIGGLY +SQUILGEE +SQUILGEED +SQUILGEEING +SQUILGEES +SQUILL +SQUILLA +SQUILLAE +SQUILLAS +SQUILLS +SQUINCH +SQUINCHED +SQUINCHES +SQUINCHING +SQUINNIED +SQUINNIER +SQUINNIES +SQUINNIEST +SQUINNY +SQUINNYING +SQUINT +SQUINTED +SQUINTER +SQUINTERS +SQUINTEST +SQUINTIER +SQUINTIEST +SQUINTING +SQUINTINGLY +SQUINTS +SQUINTY +SQUIRARCHIES +SQUIRARCHY +SQUIRE +SQUIREARCHIES +SQUIREARCHY +SQUIRED +SQUIREEN +SQUIREENS +SQUIRES +SQUIRING +SQUIRISH +SQUIRM +SQUIRMED +SQUIRMER +SQUIRMERS +SQUIRMIER +SQUIRMIEST +SQUIRMING +SQUIRMS +SQUIRMY +SQUIRREL +SQUIRRELED +SQUIRRELING +SQUIRRELLED +SQUIRRELLING +SQUIRRELLY +SQUIRRELS +SQUIRRELY +SQUIRT +SQUIRTED +SQUIRTER +SQUIRTERS +SQUIRTING +SQUIRTS +SQUISH +SQUISHED +SQUISHES +SQUISHIER +SQUISHIEST +SQUISHINESS +SQUISHINESSES +SQUISHING +SQUISHY +SQUOOSH +SQUOOSHED +SQUOOSHES +SQUOOSHIER +SQUOOSHIEST +SQUOOSHING +SQUOOSHY +SQUUSH +SQUUSHED +SQUUSHES +SQUUSHING +SRADDHA +SRADDHAS +SRADHA +SRADHAS +SRI +SRIS +STAB +STABBED +STABBER +STABBERS +STABBING +STABILE +STABILES +STABILISE +STABILISED +STABILISES +STABILISING +STABILITIES +STABILITY +STABILIZATION +STABILIZATIONS +STABILIZE +STABILIZED +STABILIZER +STABILIZERS +STABILIZES +STABILIZING +STABLE +STABLEBOY +STABLEBOYS +STABLED +STABLEMAN +STABLEMATE +STABLEMATES +STABLEMEN +STABLENESS +STABLENESSES +STABLER +STABLERS +STABLES +STABLEST +STABLING +STABLINGS +STABLISH +STABLISHED +STABLISHES +STABLISHING +STABLISHMENT +STABLISHMENTS +STABLY +STABS +STACCATI +STACCATO +STACCATOS +STACK +STACKABLE +STACKED +STACKER +STACKERS +STACKING +STACKLESS +STACKS +STACKUP +STACKUPS +STACTE +STACTES +STADDLE +STADDLES +STADE +STADES +STADIA +STADIAS +STADIUM +STADIUMS +STADTHOLDER +STADTHOLDERATE +STADTHOLDERATES +STADTHOLDERS +STADTHOLDERSHIP +STAFF +STAFFED +STAFFER +STAFFERS +STAFFING +STAFFS +STAG +STAGE +STAGEABLE +STAGECOACH +STAGECOACHES +STAGECRAFT +STAGECRAFTS +STAGED +STAGEFUL +STAGEFULS +STAGEHAND +STAGEHANDS +STAGELIKE +STAGER +STAGERS +STAGES +STAGESTRUCK +STAGEY +STAGFLATION +STAGFLATIONARY +STAGFLATIONS +STAGGARD +STAGGARDS +STAGGART +STAGGARTS +STAGGED +STAGGER +STAGGERBUSH +STAGGERBUSHES +STAGGERED +STAGGERER +STAGGERERS +STAGGERING +STAGGERINGLY +STAGGERS +STAGGERY +STAGGIE +STAGGIER +STAGGIES +STAGGIEST +STAGGING +STAGGY +STAGHOUND +STAGHOUNDS +STAGIER +STAGIEST +STAGILY +STAGINESS +STAGINESSES +STAGING +STAGINGS +STAGNANCE +STAGNANCES +STAGNANCIES +STAGNANCY +STAGNANT +STAGNANTLY +STAGNATE +STAGNATED +STAGNATES +STAGNATING +STAGNATION +STAGNATIONS +STAGS +STAGY +STAID +STAIDER +STAIDEST +STAIDLY +STAIDNESS +STAIDNESSES +STAIG +STAIGS +STAIN +STAINABILITIES +STAINABILITY +STAINABLE +STAINED +STAINER +STAINERS +STAINING +STAINLESS +STAINLESSES +STAINLESSLY +STAINPROOF +STAINS +STAIR +STAIRCASE +STAIRCASES +STAIRHEAD +STAIRHEADS +STAIRLESS +STAIRLIKE +STAIRS +STAIRSTEP +STAIRSTEPPED +STAIRSTEPPING +STAIRSTEPS +STAIRWAY +STAIRWAYS +STAIRWELL +STAIRWELLS +STAITHE +STAITHES +STAKE +STAKED +STAKEHOLDER +STAKEHOLDERS +STAKEOUT +STAKEOUTS +STAKES +STAKING +STALACTITE +STALACTITES +STALACTITIC +STALAG +STALAGMITE +STALAGMITES +STALAGMITIC +STALAGS +STALE +STALED +STALELY +STALEMATE +STALEMATED +STALEMATES +STALEMATING +STALENESS +STALENESSES +STALER +STALES +STALEST +STALING +STALK +STALKED +STALKER +STALKERS +STALKIER +STALKIEST +STALKILY +STALKING +STALKINGS +STALKLESS +STALKLIKE +STALKS +STALKY +STALL +STALLED +STALLHOLDER +STALLHOLDERS +STALLING +STALLION +STALLIONS +STALLS +STALWART +STALWARTLY +STALWARTNESS +STALWARTNESSES +STALWARTS +STALWORTH +STALWORTHS +STAMEN +STAMENED +STAMENS +STAMINA +STAMINAL +STAMINAS +STAMINATE +STAMINEAL +STAMINODE +STAMINODES +STAMINODIA +STAMINODIES +STAMINODIUM +STAMINODY +STAMMEL +STAMMELS +STAMMER +STAMMERED +STAMMERER +STAMMERERS +STAMMERING +STAMMERS +STAMP +STAMPED +STAMPEDE +STAMPEDED +STAMPEDER +STAMPEDERS +STAMPEDES +STAMPEDING +STAMPER +STAMPERS +STAMPING +STAMPLESS +STAMPS +STANCE +STANCES +STANCH +STANCHED +STANCHER +STANCHERS +STANCHES +STANCHEST +STANCHING +STANCHION +STANCHIONED +STANCHIONING +STANCHIONS +STANCHLY +STAND +STANDARD +STANDARDBRED +STANDARDBREDS +STANDARDISE +STANDARDISED +STANDARDISES +STANDARDISING +STANDARDIZATION +STANDARDIZE +STANDARDIZED +STANDARDIZES +STANDARDIZING +STANDARDLESS +STANDARDLY +STANDARDS +STANDAWAY +STANDBY +STANDBYS +STANDDOWN +STANDDOWNS +STANDEE +STANDEES +STANDER +STANDERS +STANDFAST +STANDFASTS +STANDING +STANDINGS +STANDISH +STANDISHES +STANDOFF +STANDOFFISH +STANDOFFISHLY +STANDOFFISHNESS +STANDOFFS +STANDOUT +STANDOUTS +STANDPAT +STANDPATTER +STANDPATTERS +STANDPATTISM +STANDPATTISMS +STANDPIPE +STANDPIPES +STANDPOINT +STANDPOINTS +STANDS +STANDSTILL +STANDSTILLS +STANDUP +STANDUPS +STANE +STANED +STANES +STANG +STANGED +STANGING +STANGS +STANHOPE +STANHOPES +STANINE +STANINES +STANING +STANK +STANKS +STANNARIES +STANNARY +STANNIC +STANNITE +STANNITES +STANNOUS +STANNUM +STANNUMS +STANOL +STANOLS +STANZA +STANZAED +STANZAIC +STANZAS +STAPEDECTOMIES +STAPEDECTOMY +STAPEDES +STAPEDIAL +STAPELIA +STAPELIAS +STAPES +STAPH +STAPHS +STAPHYLINID +STAPHYLINIDS +STAPHYLOCOCCAL +STAPHYLOCOCCI +STAPHYLOCOCCIC +STAPHYLOCOCCUS +STAPLE +STAPLED +STAPLER +STAPLERS +STAPLES +STAPLING +STAR +STARBOARD +STARBOARDED +STARBOARDING +STARBOARDS +STARBURST +STARBURSTS +STARCH +STARCHED +STARCHES +STARCHIER +STARCHIEST +STARCHILY +STARCHINESS +STARCHINESSES +STARCHING +STARCHY +STARDOM +STARDOMS +STARDUST +STARDUSTS +STARE +STARED +STARER +STARERS +STARES +STARETS +STARFISH +STARFISHES +STARFLOWER +STARFLOWERS +STARFRUIT +STARFRUITS +STARGAZE +STARGAZED +STARGAZER +STARGAZERS +STARGAZES +STARGAZING +STARGAZINGS +STARING +STARINGLY +STARK +STARKER +STARKERS +STARKEST +STARKLY +STARKNESS +STARKNESSES +STARLESS +STARLET +STARLETS +STARLIGHT +STARLIGHTS +STARLIKE +STARLING +STARLINGS +STARLIT +STARNOSE +STARNOSES +STARRED +STARRIER +STARRIEST +STARRING +STARRY +STARS +STARSHIP +STARSHIPS +STARSTRUCK +START +STARTED +STARTER +STARTERS +STARTING +STARTLE +STARTLED +STARTLEMENT +STARTLEMENTS +STARTLER +STARTLERS +STARTLES +STARTLING +STARTLINGLY +STARTS +STARTSY +STARTUP +STARTUPS +STARVATION +STARVATIONS +STARVE +STARVED +STARVELING +STARVELINGS +STARVER +STARVERS +STARVES +STARVING +STARWORT +STARWORTS +STASES +STASH +STASHED +STASHES +STASHING +STASIMA +STASIMON +STASIS +STAT +STATABLE +STATAL +STATANT +STATE +STATEABLE +STATECRAFT +STATECRAFTS +STATED +STATEDLY +STATEHOOD +STATEHOODS +STATEHOUSE +STATEHOUSES +STATELESS +STATELESSNESS +STATELESSNESSES +STATELIER +STATELIEST +STATELINESS +STATELINESSES +STATELY +STATEMENT +STATEMENTS +STATER +STATEROOM +STATEROOMS +STATERS +STATES +STATESIDE +STATESMAN +STATESMANLIKE +STATESMANLY +STATESMANSHIP +STATESMANSHIPS +STATESMEN +STATEWIDE +STATIC +STATICAL +STATICALLY +STATICE +STATICES +STATICKY +STATICS +STATIN +STATING +STATINS +STATION +STATIONAL +STATIONARY +STATIONED +STATIONER +STATIONERIES +STATIONERS +STATIONERY +STATIONING +STATIONMASTER +STATIONMASTERS +STATIONS +STATISM +STATISMS +STATIST +STATISTIC +STATISTICAL +STATISTICALLY +STATISTICIAN +STATISTICIANS +STATISTICS +STATISTS +STATIVE +STATIVES +STATOBLAST +STATOBLASTS +STATOCYST +STATOCYSTS +STATOLITH +STATOLITHS +STATOR +STATORS +STATOSCOPE +STATOSCOPES +STATS +STATUARIES +STATUARY +STATUE +STATUED +STATUES +STATUESQUE +STATUESQUELY +STATUETTE +STATUETTES +STATURE +STATURES +STATUS +STATUSES +STATUSY +STATUTABLE +STATUTE +STATUTES +STATUTORILY +STATUTORY +STAUMREL +STAUMRELS +STAUNCH +STAUNCHED +STAUNCHER +STAUNCHES +STAUNCHEST +STAUNCHING +STAUNCHLY +STAUNCHNESS +STAUNCHNESSES +STAUROLITE +STAUROLITES +STAUROLITIC +STAVE +STAVED +STAVES +STAVESACRE +STAVESACRES +STAVING +STAVUDINE +STAVUDINES +STAW +STAY +STAYED +STAYER +STAYERS +STAYING +STAYS +STAYSAIL +STAYSAILS +STEAD +STEADED +STEADFAST +STEADFASTLY +STEADFASTNESS +STEADFASTNESSES +STEADIED +STEADIER +STEADIERS +STEADIES +STEADIEST +STEADILY +STEADINESS +STEADINESSES +STEADING +STEADINGS +STEADS +STEADY +STEADYING +STEAK +STEAKS +STEAL +STEALABLE +STEALAGE +STEALAGES +STEALER +STEALERS +STEALING +STEALINGS +STEALS +STEALTH +STEALTHIER +STEALTHIEST +STEALTHILY +STEALTHINESS +STEALTHINESSES +STEALTHS +STEALTHY +STEAM +STEAMBOAT +STEAMBOATS +STEAMED +STEAMER +STEAMERED +STEAMERING +STEAMERS +STEAMFITTER +STEAMFITTERS +STEAMIER +STEAMIEST +STEAMILY +STEAMINESS +STEAMINESSES +STEAMING +STEAMROLL +STEAMROLLED +STEAMROLLER +STEAMROLLERED +STEAMROLLERING +STEAMROLLERS +STEAMROLLING +STEAMROLLS +STEAMS +STEAMSHIP +STEAMSHIPS +STEAMY +STEAPSIN +STEAPSINS +STEARATE +STEARATES +STEARIC +STEARIN +STEARINE +STEARINES +STEARINS +STEATITE +STEATITES +STEATITIC +STEATOPYGIA +STEATOPYGIAS +STEATOPYGIC +STEATOPYGOUS +STEATORRHEA +STEATORRHEAS +STEDFAST +STEED +STEEDLIKE +STEEDS +STEEK +STEEKED +STEEKING +STEEKS +STEEL +STEELED +STEELHEAD +STEELHEADS +STEELIE +STEELIER +STEELIES +STEELIEST +STEELINESS +STEELINESSES +STEELING +STEELMAKER +STEELMAKERS +STEELMAKING +STEELMAKINGS +STEELS +STEELWORK +STEELWORKER +STEELWORKERS +STEELWORKS +STEELY +STEELYARD +STEELYARDS +STEENBOK +STEENBOKS +STEENBUCK +STEENBUCKS +STEEP +STEEPED +STEEPEN +STEEPENED +STEEPENING +STEEPENS +STEEPER +STEEPERS +STEEPEST +STEEPING +STEEPISH +STEEPLE +STEEPLEBUSH +STEEPLEBUSHES +STEEPLECHASE +STEEPLECHASER +STEEPLECHASERS +STEEPLECHASES +STEEPLECHASING +STEEPLECHASINGS +STEEPLED +STEEPLEJACK +STEEPLEJACKS +STEEPLES +STEEPLY +STEEPNESS +STEEPNESSES +STEEPS +STEER +STEERABLE +STEERAGE +STEERAGES +STEERAGEWAY +STEERAGEWAYS +STEERED +STEERER +STEERERS +STEERING +STEERS +STEERSMAN +STEERSMEN +STEEVE +STEEVED +STEEVES +STEEVING +STEEVINGS +STEGODON +STEGODONS +STEGOSAUR +STEGOSAURS +STEGOSAURUS +STEGOSAURUSES +STEIN +STEINBOK +STEINBOKS +STEINS +STELA +STELAE +STELAI +STELAR +STELE +STELENE +STELES +STELIC +STELLA +STELLAR +STELLAS +STELLATE +STELLATED +STELLIFIED +STELLIFIES +STELLIFY +STELLIFYING +STELLITE +STELLITES +STELLULAR +STEM +STEMLESS +STEMLIKE +STEMMA +STEMMAS +STEMMATA +STEMMATIC +STEMMED +STEMMER +STEMMERIES +STEMMERS +STEMMERY +STEMMIER +STEMMIEST +STEMMING +STEMMY +STEMS +STEMSON +STEMSONS +STEMWARE +STEMWARES +STENCH +STENCHES +STENCHFUL +STENCHIER +STENCHIEST +STENCHY +STENCIL +STENCILED +STENCILER +STENCILERS +STENCILING +STENCILLED +STENCILLER +STENCILLERS +STENCILLING +STENCILS +STENGAH +STENGAHS +STENO +STENOBATH +STENOBATHIC +STENOBATHS +STENOGRAPHER +STENOGRAPHERS +STENOGRAPHIC +STENOGRAPHIES +STENOGRAPHY +STENOHALINE +STENOKIES +STENOKOUS +STENOKY +STENOS +STENOSED +STENOSES +STENOSIS +STENOTHERM +STENOTHERMAL +STENOTHERMS +STENOTIC +STENOTOPIC +STENOTYPE +STENOTYPED +STENOTYPES +STENOTYPIES +STENOTYPING +STENOTYPIST +STENOTYPISTS +STENOTYPY +STENT +STENTOR +STENTORIAN +STENTORS +STENTS +STEP +STEPBROTHER +STEPBROTHERS +STEPCHILD +STEPCHILDREN +STEPDAME +STEPDAMES +STEPDAUGHTER +STEPDAUGHTERS +STEPFAMILIES +STEPFAMILY +STEPFATHER +STEPFATHERS +STEPHANOTIS +STEPHANOTISES +STEPLADDER +STEPLADDERS +STEPLIKE +STEPMOTHER +STEPMOTHERS +STEPPARENT +STEPPARENTING +STEPPARENTINGS +STEPPARENTS +STEPPE +STEPPED +STEPPER +STEPPERS +STEPPES +STEPPING +STEPS +STEPSISTER +STEPSISTERS +STEPSON +STEPSONS +STEPSTOOL +STEPSTOOLS +STEPWISE +STERADIAN +STERADIANS +STERCORACEOUS +STERCULIA +STERE +STEREO +STEREOCHEMICAL +STEREOCHEMISTRY +STEREOED +STEREOGRAM +STEREOGRAMS +STEREOGRAPH +STEREOGRAPHED +STEREOGRAPHIC +STEREOGRAPHIES +STEREOGRAPHING +STEREOGRAPHS +STEREOGRAPHY +STEREOING +STEREOISOMER +STEREOISOMERIC +STEREOISOMERISM +STEREOISOMERS +STEREOLOGICAL +STEREOLOGICALLY +STEREOLOGIES +STEREOLOGY +STEREOPHONIC +STEREOPHONIES +STEREOPHONY +STEREOPSES +STEREOPSIS +STEREOPTICON +STEREOPTICONS +STEREOREGULAR +STEREOS +STEREOSCOPE +STEREOSCOPES +STEREOSCOPIC +STEREOSCOPIES +STEREOSCOPY +STEREOSPECIFIC +STEREOTACTIC +STEREOTAXIC +STEREOTAXICALLY +STEREOTYPE +STEREOTYPED +STEREOTYPER +STEREOTYPERS +STEREOTYPES +STEREOTYPIC +STEREOTYPICAL +STEREOTYPICALLY +STEREOTYPIES +STEREOTYPING +STEREOTYPY +STERES +STERIC +STERICAL +STERICALLY +STERIGMA +STERIGMAS +STERIGMATA +STERILANT +STERILANTS +STERILE +STERILELY +STERILISE +STERILISED +STERILISES +STERILISING +STERILITIES +STERILITY +STERILIZATION +STERILIZATIONS +STERILIZE +STERILIZED +STERILIZER +STERILIZERS +STERILIZES +STERILIZING +STERLET +STERLETS +STERLING +STERLINGLY +STERLINGNESS +STERLINGNESSES +STERLINGS +STERN +STERNA +STERNAL +STERNER +STERNEST +STERNFOREMOST +STERNITE +STERNITES +STERNLY +STERNMOST +STERNNESS +STERNNESSES +STERNOCOSTAL +STERNPOST +STERNPOSTS +STERNS +STERNSON +STERNSONS +STERNUM +STERNUMS +STERNUTATION +STERNUTATIONS +STERNUTATOR +STERNUTATORS +STERNWARD +STERNWARDS +STERNWAY +STERNWAYS +STEROID +STEROIDAL +STEROIDOGENESES +STEROIDOGENESIS +STEROIDOGENIC +STEROIDS +STEROL +STEROLS +STERTOR +STERTOROUS +STERTOROUSLY +STERTORS +STET +STETHOSCOPE +STETHOSCOPES +STETHOSCOPIC +STETS +STETSON +STETSONS +STETTED +STETTING +STEVEDORE +STEVEDORED +STEVEDORES +STEVEDORING +STEW +STEWABLE +STEWARD +STEWARDED +STEWARDESS +STEWARDESSES +STEWARDING +STEWARDS +STEWARDSHIP +STEWARDSHIPS +STEWBUM +STEWBUMS +STEWED +STEWING +STEWPAN +STEWPANS +STEWS +STEWY +STEY +STHENIA +STHENIAS +STHENIC +STIBIAL +STIBINE +STIBINES +STIBIUM +STIBIUMS +STIBNITE +STIBNITES +STICH +STICHIC +STICHOMYTHIA +STICHOMYTHIAS +STICHOMYTHIC +STICHOMYTHIES +STICHOMYTHY +STICHS +STICK +STICKABLE +STICKBALL +STICKBALLS +STICKED +STICKER +STICKERS +STICKFUL +STICKFULS +STICKHANDLE +STICKHANDLED +STICKHANDLER +STICKHANDLERS +STICKHANDLES +STICKHANDLING +STICKIER +STICKIES +STICKIEST +STICKILY +STICKINESS +STICKINESSES +STICKING +STICKIT +STICKLE +STICKLEBACK +STICKLEBACKS +STICKLED +STICKLER +STICKLERS +STICKLES +STICKLIKE +STICKLING +STICKMAN +STICKMEN +STICKOUT +STICKOUTS +STICKPIN +STICKPINS +STICKS +STICKSEED +STICKSEEDS +STICKTIGHT +STICKTIGHTS +STICKUM +STICKUMS +STICKUP +STICKUPS +STICKWEED +STICKWEEDS +STICKWORK +STICKWORKS +STICKY +STICTION +STICTIONS +STIED +STIES +STIFF +STIFFED +STIFFEN +STIFFENED +STIFFENER +STIFFENERS +STIFFENING +STIFFENS +STIFFER +STIFFEST +STIFFIE +STIFFIES +STIFFING +STIFFISH +STIFFLY +STIFFNESS +STIFFNESSES +STIFFS +STIFLE +STIFLED +STIFLER +STIFLERS +STIFLES +STIFLING +STIFLINGLY +STIGMA +STIGMAL +STIGMAS +STIGMASTEROL +STIGMASTEROLS +STIGMATA +STIGMATIC +STIGMATICALLY +STIGMATICS +STIGMATIST +STIGMATISTS +STIGMATIZATION +STIGMATIZATIONS +STIGMATIZE +STIGMATIZED +STIGMATIZES +STIGMATIZING +STILBENE +STILBENES +STILBESTROL +STILBESTROLS +STILBITE +STILBITES +STILE +STILES +STILETTO +STILETTOED +STILETTOES +STILETTOING +STILETTOS +STILL +STILLBIRTH +STILLBIRTHS +STILLBORN +STILLBORNS +STILLED +STILLER +STILLEST +STILLIER +STILLIEST +STILLING +STILLMAN +STILLMEN +STILLNESS +STILLNESSES +STILLROOM +STILLROOMS +STILLS +STILLY +STILT +STILTED +STILTEDLY +STILTEDNESS +STILTEDNESSES +STILTING +STILTS +STIME +STIMES +STIMIED +STIMIES +STIMULANT +STIMULANTS +STIMULATE +STIMULATED +STIMULATES +STIMULATING +STIMULATION +STIMULATIONS +STIMULATIVE +STIMULATOR +STIMULATORS +STIMULATORY +STIMULI +STIMULUS +STIMY +STIMYING +STING +STINGAREE +STINGAREES +STINGER +STINGERS +STINGIER +STINGIEST +STINGILY +STINGINESS +STINGINESSES +STINGING +STINGINGLY +STINGLESS +STINGO +STINGOS +STINGRAY +STINGRAYS +STINGS +STINGY +STINK +STINKARD +STINKARDS +STINKBUG +STINKBUGS +STINKER +STINKEROO +STINKEROOS +STINKERS +STINKHORN +STINKHORNS +STINKIER +STINKIEST +STINKING +STINKINGLY +STINKO +STINKPOT +STINKPOTS +STINKS +STINKWEED +STINKWEEDS +STINKWOOD +STINKWOODS +STINKY +STINT +STINTED +STINTER +STINTERS +STINTING +STINTS +STIPE +STIPED +STIPEL +STIPELS +STIPEND +STIPENDIARIES +STIPENDIARY +STIPENDS +STIPES +STIPIFORM +STIPITATE +STIPITES +STIPPLE +STIPPLED +STIPPLER +STIPPLERS +STIPPLES +STIPPLING +STIPPLINGS +STIPULAR +STIPULATE +STIPULATED +STIPULATES +STIPULATING +STIPULATION +STIPULATIONS +STIPULATOR +STIPULATORS +STIPULATORY +STIPULE +STIPULED +STIPULES +STIR +STIRABOUT +STIRABOUTS +STIRK +STIRKS +STIRP +STIRPES +STIRPS +STIRRED +STIRRER +STIRRERS +STIRRING +STIRRINGS +STIRRUP +STIRRUPS +STIRS +STITCH +STITCHED +STITCHER +STITCHERIES +STITCHERS +STITCHERY +STITCHES +STITCHING +STITCHWORT +STITCHWORTS +STITHIED +STITHIES +STITHY +STITHYING +STIVER +STIVERS +STOA +STOAE +STOAI +STOAS +STOAT +STOATS +STOB +STOBBED +STOBBING +STOBS +STOCCADO +STOCCADOS +STOCCATA +STOCCATAS +STOCHASTIC +STOCHASTICALLY +STOCK +STOCKADE +STOCKADED +STOCKADES +STOCKADING +STOCKAGE +STOCKAGES +STOCKBREEDER +STOCKBREEDERS +STOCKBROKER +STOCKBROKERAGE +STOCKBROKERAGES +STOCKBROKERS +STOCKBROKING +STOCKBROKINGS +STOCKCAR +STOCKCARS +STOCKED +STOCKER +STOCKERS +STOCKFISH +STOCKFISHES +STOCKHOLDER +STOCKHOLDERS +STOCKIER +STOCKIEST +STOCKILY +STOCKINESS +STOCKINESSES +STOCKINET +STOCKINETS +STOCKINETTE +STOCKINETTES +STOCKING +STOCKINGED +STOCKINGS +STOCKISH +STOCKIST +STOCKISTS +STOCKJOBBER +STOCKJOBBERS +STOCKJOBBING +STOCKJOBBINGS +STOCKKEEPER +STOCKKEEPERS +STOCKMAN +STOCKMEN +STOCKPILE +STOCKPILED +STOCKPILER +STOCKPILERS +STOCKPILES +STOCKPILING +STOCKPOT +STOCKPOTS +STOCKROOM +STOCKROOMS +STOCKS +STOCKTAKING +STOCKTAKINGS +STOCKY +STOCKYARD +STOCKYARDS +STODGE +STODGED +STODGES +STODGIER +STODGIEST +STODGILY +STODGINESS +STODGINESSES +STODGING +STODGY +STOGEY +STOGEYS +STOGIE +STOGIES +STOGY +STOIC +STOICAL +STOICALLY +STOICHIOMETRIC +STOICHIOMETRIES +STOICHIOMETRY +STOICISM +STOICISMS +STOICS +STOKE +STOKED +STOKEHOLD +STOKEHOLDS +STOKEHOLE +STOKEHOLES +STOKER +STOKERS +STOKES +STOKESIA +STOKESIAS +STOKING +STOLE +STOLED +STOLEN +STOLES +STOLID +STOLIDER +STOLIDEST +STOLIDITIES +STOLIDITY +STOLIDLY +STOLLEN +STOLLENS +STOLON +STOLONATE +STOLONIC +STOLONIFEROUS +STOLONS +STOLPORT +STOLPORTS +STOMA +STOMACH +STOMACHACHE +STOMACHACHES +STOMACHED +STOMACHER +STOMACHERS +STOMACHIC +STOMACHICS +STOMACHING +STOMACHS +STOMACHY +STOMAL +STOMAS +STOMATA +STOMATAL +STOMATE +STOMATES +STOMATIC +STOMATITIDES +STOMATITIS +STOMATITISES +STOMATOPOD +STOMATOPODS +STOMATOUS +STOMODAEA +STOMODAEAL +STOMODAEUM +STOMODAEUMS +STOMODEA +STOMODEAL +STOMODEUM +STOMODEUMS +STOMP +STOMPED +STOMPER +STOMPERS +STOMPING +STOMPS +STONABLE +STONE +STONEBOAT +STONEBOATS +STONECHAT +STONECHATS +STONECROP +STONECROPS +STONECUTTER +STONECUTTERS +STONECUTTING +STONECUTTINGS +STONED +STONEFISH +STONEFISHES +STONEFLIES +STONEFLY +STONEMASON +STONEMASONRIES +STONEMASONRY +STONEMASONS +STONER +STONERS +STONES +STONEWALL +STONEWALLED +STONEWALLER +STONEWALLERS +STONEWALLING +STONEWALLS +STONEWARE +STONEWARES +STONEWASH +STONEWASHED +STONEWASHES +STONEWASHING +STONEWORK +STONEWORKS +STONEWORT +STONEWORTS +STONEY +STONIER +STONIEST +STONILY +STONINESS +STONINESSES +STONING +STONISH +STONISHED +STONISHES +STONISHING +STONY +STONYHEARTED +STOOD +STOOGE +STOOGED +STOOGES +STOOGING +STOOK +STOOKED +STOOKER +STOOKERS +STOOKING +STOOKS +STOOL +STOOLED +STOOLIE +STOOLIES +STOOLING +STOOLS +STOOP +STOOPBALL +STOOPBALLS +STOOPED +STOOPER +STOOPERS +STOOPING +STOOPS +STOP +STOPBANK +STOPBANKS +STOPCOCK +STOPCOCKS +STOPE +STOPED +STOPER +STOPERS +STOPES +STOPGAP +STOPGAPS +STOPING +STOPLIGHT +STOPLIGHTS +STOPOFF +STOPOFFS +STOPOVER +STOPOVERS +STOPPABLE +STOPPAGE +STOPPAGES +STOPPED +STOPPER +STOPPERED +STOPPERING +STOPPERS +STOPPING +STOPPLE +STOPPLED +STOPPLES +STOPPLING +STOPS +STOPT +STOPWATCH +STOPWATCHES +STOPWORD +STOPWORDS +STORABLE +STORABLES +STORAGE +STORAGES +STORAX +STORAXES +STORE +STORED +STOREFRONT +STOREFRONTS +STOREHOUSE +STOREHOUSES +STOREKEEPER +STOREKEEPERS +STORER +STOREROOM +STOREROOMS +STORERS +STORES +STORESHIP +STORESHIPS +STOREWIDE +STOREY +STOREYED +STOREYS +STORIED +STORIES +STORING +STORK +STORKS +STORKSBILL +STORKSBILLS +STORM +STORMBOUND +STORMED +STORMIER +STORMIEST +STORMILY +STORMINESS +STORMINESSES +STORMING +STORMS +STORMY +STORY +STORYBOARD +STORYBOARDED +STORYBOARDING +STORYBOARDS +STORYBOOK +STORYBOOKS +STORYING +STORYTELLER +STORYTELLERS +STORYTELLING +STORYTELLINGS +STOSS +STOT +STOTIN +STOTINKA +STOTINKI +STOTINOV +STOTINS +STOTS +STOTT +STOTTED +STOTTING +STOTTS +STOUND +STOUNDED +STOUNDING +STOUNDS +STOUP +STOUPS +STOUR +STOURE +STOURES +STOURIE +STOURS +STOURY +STOUT +STOUTEN +STOUTENED +STOUTENING +STOUTENS +STOUTER +STOUTEST +STOUTHEARTED +STOUTHEARTEDLY +STOUTISH +STOUTLY +STOUTNESS +STOUTNESSES +STOUTS +STOVE +STOVEPIPE +STOVEPIPES +STOVER +STOVERS +STOVES +STOW +STOWABLE +STOWAGE +STOWAGES +STOWAWAY +STOWAWAYS +STOWED +STOWING +STOWP +STOWPS +STOWS +STRABISMIC +STRABISMUS +STRABISMUSES +STRADDLE +STRADDLED +STRADDLER +STRADDLERS +STRADDLES +STRADDLING +STRAFE +STRAFED +STRAFER +STRAFERS +STRAFES +STRAFING +STRAGGLE +STRAGGLED +STRAGGLER +STRAGGLERS +STRAGGLES +STRAGGLIER +STRAGGLIEST +STRAGGLING +STRAGGLY +STRAIGHT +STRAIGHTAWAY +STRAIGHTAWAYS +STRAIGHTBRED +STRAIGHTBREDS +STRAIGHTED +STRAIGHTEDGE +STRAIGHTEDGES +STRAIGHTEN +STRAIGHTENED +STRAIGHTENER +STRAIGHTENERS +STRAIGHTENING +STRAIGHTENS +STRAIGHTER +STRAIGHTEST +STRAIGHTFORWARD +STRAIGHTING +STRAIGHTISH +STRAIGHTJACKET +STRAIGHTJACKETS +STRAIGHTLACED +STRAIGHTLY +STRAIGHTNESS +STRAIGHTNESSES +STRAIGHTS +STRAIGHTWAY +STRAIN +STRAINED +STRAINER +STRAINERS +STRAINING +STRAINS +STRAIT +STRAITEN +STRAITENED +STRAITENING +STRAITENS +STRAITER +STRAITEST +STRAITJACKET +STRAITJACKETED +STRAITJACKETING +STRAITJACKETS +STRAITLACED +STRAITLACEDLY +STRAITLACEDNESS +STRAITLY +STRAITNESS +STRAITNESSES +STRAITS +STRAKE +STRAKED +STRAKES +STRAMASH +STRAMASHES +STRAMONIES +STRAMONIUM +STRAMONIUMS +STRAMONY +STRAND +STRANDED +STRANDEDNESS +STRANDEDNESSES +STRANDER +STRANDERS +STRANDING +STRANDLINE +STRANDLINES +STRANDS +STRANG +STRANGE +STRANGELY +STRANGENESS +STRANGENESSES +STRANGER +STRANGERED +STRANGERING +STRANGERS +STRANGES +STRANGEST +STRANGLE +STRANGLED +STRANGLEHOLD +STRANGLEHOLDS +STRANGLER +STRANGLERS +STRANGLES +STRANGLING +STRANGULATE +STRANGULATED +STRANGULATES +STRANGULATING +STRANGULATION +STRANGULATIONS +STRANGURIES +STRANGURY +STRAP +STRAPHANG +STRAPHANGED +STRAPHANGER +STRAPHANGERS +STRAPHANGING +STRAPHANGS +STRAPHUNG +STRAPLESS +STRAPLESSES +STRAPPADO +STRAPPADOES +STRAPPADOS +STRAPPED +STRAPPER +STRAPPERS +STRAPPIER +STRAPPIEST +STRAPPING +STRAPPINGS +STRAPPY +STRAPS +STRASS +STRASSES +STRATA +STRATAGEM +STRATAGEMS +STRATAL +STRATAS +STRATEGIC +STRATEGICAL +STRATEGICALLY +STRATEGIES +STRATEGIST +STRATEGISTS +STRATEGIZE +STRATEGIZED +STRATEGIZES +STRATEGIZING +STRATEGY +STRATH +STRATHS +STRATHSPEY +STRATHSPEYS +STRATI +STRATIFICATION +STRATIFICATIONS +STRATIFIED +STRATIFIES +STRATIFORM +STRATIFY +STRATIFYING +STRATIGRAPHIC +STRATIGRAPHIES +STRATIGRAPHY +STRATOCRACIES +STRATOCRACY +STRATOCUMULI +STRATOCUMULUS +STRATOSPHERE +STRATOSPHERES +STRATOSPHERIC +STRATOUS +STRATOVOLCANO +STRATOVOLCANOES +STRATOVOLCANOS +STRATUM +STRATUMS +STRATUS +STRAVAGE +STRAVAGED +STRAVAGES +STRAVAGING +STRAVAIG +STRAVAIGED +STRAVAIGING +STRAVAIGS +STRAW +STRAWBERRIES +STRAWBERRY +STRAWED +STRAWFLOWER +STRAWFLOWERS +STRAWHAT +STRAWIER +STRAWIEST +STRAWING +STRAWS +STRAWWORM +STRAWWORMS +STRAWY +STRAY +STRAYED +STRAYER +STRAYERS +STRAYING +STRAYS +STREAK +STREAKED +STREAKER +STREAKERS +STREAKIER +STREAKIEST +STREAKILY +STREAKINESS +STREAKINESSES +STREAKING +STREAKINGS +STREAKS +STREAKY +STREAM +STREAMBED +STREAMBEDS +STREAMED +STREAMER +STREAMERS +STREAMIER +STREAMIEST +STREAMING +STREAMINGS +STREAMLET +STREAMLETS +STREAMLINE +STREAMLINED +STREAMLINER +STREAMLINERS +STREAMLINES +STREAMLINING +STREAMS +STREAMSIDE +STREAMSIDES +STREAMY +STREEK +STREEKED +STREEKER +STREEKERS +STREEKING +STREEKS +STREEL +STREELED +STREELING +STREELS +STREET +STREETCAR +STREETCARS +STREETLAMP +STREETLAMPS +STREETLIGHT +STREETLIGHTS +STREETS +STREETSCAPE +STREETSCAPES +STREETWALKER +STREETWALKERS +STREETWALKING +STREETWALKINGS +STREETWISE +STRENGTH +STRENGTHEN +STRENGTHENED +STRENGTHENER +STRENGTHENERS +STRENGTHENING +STRENGTHENS +STRENGTHS +STRENUOSITIES +STRENUOSITY +STRENUOUS +STRENUOUSLY +STRENUOUSNESS +STRENUOUSNESSES +STREP +STREPS +STREPTOBACILLI +STREPTOBACILLUS +STREPTOCOCCAL +STREPTOCOCCI +STREPTOCOCCIC +STREPTOCOCCUS +STREPTOKINASE +STREPTOKINASES +STREPTOLYSIN +STREPTOLYSINS +STREPTOMYCES +STREPTOMYCETE +STREPTOMYCETES +STREPTOMYCIN +STREPTOMYCINS +STREPTOTHRICIN +STREPTOTHRICINS +STRESS +STRESSED +STRESSES +STRESSFUL +STRESSFULLY +STRESSING +STRESSLESS +STRESSLESSNESS +STRESSOR +STRESSORS +STRETCH +STRETCHABILITY +STRETCHABLE +STRETCHED +STRETCHER +STRETCHERED +STRETCHERING +STRETCHERS +STRETCHES +STRETCHIER +STRETCHIEST +STRETCHING +STRETCHY +STRETTA +STRETTAS +STRETTE +STRETTI +STRETTO +STRETTOS +STREUSEL +STREUSELS +STREW +STREWED +STREWER +STREWERS +STREWING +STREWMENT +STREWMENTS +STREWN +STREWS +STRIA +STRIAE +STRIATA +STRIATE +STRIATED +STRIATES +STRIATING +STRIATION +STRIATIONS +STRIATUM +STRICK +STRICKEN +STRICKLE +STRICKLED +STRICKLES +STRICKLING +STRICKS +STRICT +STRICTER +STRICTEST +STRICTION +STRICTIONS +STRICTLY +STRICTNESS +STRICTNESSES +STRICTURE +STRICTURES +STRIDDEN +STRIDE +STRIDENCE +STRIDENCES +STRIDENCIES +STRIDENCY +STRIDENT +STRIDENTLY +STRIDER +STRIDERS +STRIDES +STRIDING +STRIDOR +STRIDORS +STRIDULATE +STRIDULATED +STRIDULATES +STRIDULATING +STRIDULATION +STRIDULATIONS +STRIDULATORY +STRIDULOUS +STRIDULOUSLY +STRIFE +STRIFEFUL +STRIFELESS +STRIFES +STRIGIL +STRIGILS +STRIGOSE +STRIKE +STRIKEBOUND +STRIKEBREAKER +STRIKEBREAKERS +STRIKEBREAKING +STRIKEBREAKINGS +STRIKEOUT +STRIKEOUTS +STRIKEOVER +STRIKEOVERS +STRIKER +STRIKERS +STRIKES +STRIKING +STRIKINGLY +STRING +STRINGCOURSE +STRINGCOURSES +STRINGED +STRINGENCIES +STRINGENCY +STRINGENDO +STRINGENT +STRINGENTLY +STRINGER +STRINGERS +STRINGHALT +STRINGHALTED +STRINGHALTS +STRINGIER +STRINGIEST +STRINGILY +STRINGINESS +STRINGINESSES +STRINGING +STRINGINGS +STRINGLESS +STRINGPIECE +STRINGPIECES +STRINGS +STRINGY +STRINGYBARK +STRINGYBARKS +STRIP +STRIPE +STRIPED +STRIPELESS +STRIPER +STRIPERS +STRIPES +STRIPIER +STRIPIEST +STRIPING +STRIPINGS +STRIPLING +STRIPLINGS +STRIPPABLE +STRIPPED +STRIPPER +STRIPPERS +STRIPPING +STRIPS +STRIPT +STRIPTEASE +STRIPTEASER +STRIPTEASERS +STRIPTEASES +STRIPY +STRIVE +STRIVED +STRIVEN +STRIVER +STRIVERS +STRIVES +STRIVING +STROBE +STROBES +STROBIC +STROBIL +STROBILA +STROBILAE +STROBILAR +STROBILATION +STROBILATIONS +STROBILE +STROBILES +STROBILI +STROBILS +STROBILUS +STROBOSCOPE +STROBOSCOPES +STROBOSCOPIC +STROBOTRON +STROBOTRONS +STRODE +STROKE +STROKED +STROKER +STROKERS +STROKES +STROKING +STROLL +STROLLED +STROLLER +STROLLERS +STROLLING +STROLLS +STROMA +STROMAL +STROMATA +STROMATIC +STROMATOLITE +STROMATOLITES +STROMATOLITIC +STRONG +STRONGBOX +STRONGBOXES +STRONGER +STRONGEST +STRONGHOLD +STRONGHOLDS +STRONGISH +STRONGLY +STRONGMAN +STRONGMEN +STRONGYL +STRONGYLE +STRONGYLES +STRONGYLOIDOSES +STRONGYLOIDOSIS +STRONGYLS +STRONTIA +STRONTIAN +STRONTIANITE +STRONTIANITES +STRONTIANS +STRONTIAS +STRONTIC +STRONTIUM +STRONTIUMS +STROOK +STROP +STROPHANTHIN +STROPHANTHINS +STROPHE +STROPHES +STROPHIC +STROPHOID +STROPHOIDS +STROPHULI +STROPHULUS +STROPPED +STROPPER +STROPPERS +STROPPIER +STROPPIEST +STROPPING +STROPPY +STROPS +STROUD +STROUDING +STROUDINGS +STROUDS +STROVE +STROW +STROWED +STROWING +STROWN +STROWS +STROY +STROYED +STROYER +STROYERS +STROYING +STROYS +STRUCK +STRUCKEN +STRUCTURAL +STRUCTURALISM +STRUCTURALISMS +STRUCTURALIST +STRUCTURALISTS +STRUCTURALIZE +STRUCTURALIZED +STRUCTURALIZES +STRUCTURALIZING +STRUCTURALLY +STRUCTURATION +STRUCTURATIONS +STRUCTURE +STRUCTURED +STRUCTURELESS +STRUCTURES +STRUCTURING +STRUDEL +STRUDELS +STRUGGLE +STRUGGLED +STRUGGLER +STRUGGLERS +STRUGGLES +STRUGGLING +STRUM +STRUMA +STRUMAE +STRUMAS +STRUMATIC +STRUMMED +STRUMMER +STRUMMERS +STRUMMING +STRUMOSE +STRUMOUS +STRUMPET +STRUMPETS +STRUMS +STRUNG +STRUNT +STRUNTED +STRUNTING +STRUNTS +STRUT +STRUTHIOUS +STRUTS +STRUTTED +STRUTTER +STRUTTERS +STRUTTING +STRYCHNIC +STRYCHNINE +STRYCHNINES +STUB +STUBBED +STUBBIER +STUBBIEST +STUBBILY +STUBBING +STUBBLE +STUBBLED +STUBBLES +STUBBLIER +STUBBLIEST +STUBBLY +STUBBORN +STUBBORNER +STUBBORNEST +STUBBORNLY +STUBBORNNESS +STUBBORNNESSES +STUBBY +STUBS +STUCCO +STUCCOED +STUCCOER +STUCCOERS +STUCCOES +STUCCOING +STUCCOS +STUCCOWORK +STUCCOWORKS +STUCK +STUD +STUDBOOK +STUDBOOKS +STUDDED +STUDDIE +STUDDIES +STUDDING +STUDDINGS +STUDENT +STUDENTS +STUDENTSHIP +STUDENTSHIPS +STUDFISH +STUDFISHES +STUDHORSE +STUDHORSES +STUDIED +STUDIEDLY +STUDIEDNESS +STUDIEDNESSES +STUDIER +STUDIERS +STUDIES +STUDIO +STUDIOS +STUDIOUS +STUDIOUSLY +STUDIOUSNESS +STUDIOUSNESSES +STUDLIER +STUDLIEST +STUDLY +STUDS +STUDWORK +STUDWORKS +STUDY +STUDYING +STUFF +STUFFED +STUFFER +STUFFERS +STUFFIER +STUFFIEST +STUFFILY +STUFFINESS +STUFFINESSES +STUFFING +STUFFINGS +STUFFLESS +STUFFS +STUFFY +STUIVER +STUIVERS +STULL +STULLS +STULTIFICATION +STULTIFICATIONS +STULTIFIED +STULTIFIES +STULTIFY +STULTIFYING +STUM +STUMBLE +STUMBLEBUM +STUMBLEBUMS +STUMBLED +STUMBLER +STUMBLERS +STUMBLES +STUMBLING +STUMBLINGLY +STUMMED +STUMMING +STUMP +STUMPAGE +STUMPAGES +STUMPED +STUMPER +STUMPERS +STUMPIER +STUMPIEST +STUMPING +STUMPS +STUMPY +STUMS +STUN +STUNG +STUNK +STUNNED +STUNNER +STUNNERS +STUNNING +STUNNINGLY +STUNS +STUNSAIL +STUNSAILS +STUNT +STUNTED +STUNTEDNESS +STUNTEDNESSES +STUNTING +STUNTMAN +STUNTMEN +STUNTS +STUNTWOMAN +STUNTWOMEN +STUPA +STUPAS +STUPE +STUPEFACTION +STUPEFACTIONS +STUPEFIED +STUPEFIER +STUPEFIERS +STUPEFIES +STUPEFY +STUPEFYING +STUPEFYINGLY +STUPENDOUS +STUPENDOUSLY +STUPENDOUSNESS +STUPES +STUPID +STUPIDER +STUPIDEST +STUPIDITIES +STUPIDITY +STUPIDLY +STUPIDNESS +STUPIDNESSES +STUPIDS +STUPOR +STUPOROUS +STUPORS +STURDIED +STURDIER +STURDIES +STURDIEST +STURDILY +STURDINESS +STURDINESSES +STURDY +STURGEON +STURGEONS +STURT +STURTS +STUTTER +STUTTERED +STUTTERER +STUTTERERS +STUTTERING +STUTTERS +STY +STYE +STYED +STYES +STYGIAN +STYING +STYLAR +STYLATE +STYLE +STYLEBOOK +STYLEBOOKS +STYLED +STYLELESS +STYLELESSNESS +STYLELESSNESSES +STYLER +STYLERS +STYLES +STYLET +STYLETS +STYLI +STYLIFORM +STYLING +STYLINGS +STYLISE +STYLISED +STYLISER +STYLISERS +STYLISES +STYLISH +STYLISHLY +STYLISHNESS +STYLISHNESSES +STYLISING +STYLIST +STYLISTIC +STYLISTICALLY +STYLISTICS +STYLISTS +STYLITE +STYLITES +STYLITIC +STYLITISM +STYLITISMS +STYLIZATION +STYLIZATIONS +STYLIZE +STYLIZED +STYLIZER +STYLIZERS +STYLIZES +STYLIZING +STYLOBATE +STYLOBATES +STYLOGRAPHIES +STYLOGRAPHY +STYLOID +STYLOLITE +STYLOLITES +STYLOPODIA +STYLOPODIUM +STYLUS +STYLUSES +STYMIE +STYMIED +STYMIEING +STYMIES +STYMY +STYMYING +STYPSIS +STYPSISES +STYPTIC +STYPTICAL +STYPTICS +STYRAX +STYRAXES +STYRENE +STYRENES +STYROFOAM +STYROFOAMS +SUABILITIES +SUABILITY +SUABLE +SUABLY +SUASION +SUASIONS +SUASIVE +SUASIVELY +SUASIVENESS +SUASIVENESSES +SUASORY +SUAVE +SUAVELY +SUAVENESS +SUAVENESSES +SUAVER +SUAVEST +SUAVITIES +SUAVITY +SUB +SUBA +SUBABBOT +SUBABBOTS +SUBACID +SUBACIDLY +SUBACIDNESS +SUBACIDNESSES +SUBACRID +SUBACUTE +SUBACUTELY +SUBADAR +SUBADARS +SUBADOLESCENT +SUBADOLESCENTS +SUBADULT +SUBADULTS +SUBAERIAL +SUBAERIALLY +SUBAGENCIES +SUBAGENCY +SUBAGENT +SUBAGENTS +SUBAH +SUBAHDAR +SUBAHDARS +SUBAHS +SUBALAR +SUBALLOCATION +SUBALLOCATIONS +SUBALPINE +SUBALTERN +SUBALTERNS +SUBANTARCTIC +SUBAPICAL +SUBAQUATIC +SUBAQUEOUS +SUBARACHNOID +SUBARACHNOIDAL +SUBARCTIC +SUBARCTICS +SUBAREA +SUBAREAS +SUBARID +SUBAS +SUBASSEMBLIES +SUBASSEMBLY +SUBASTRAL +SUBATMOSPHERIC +SUBATOM +SUBATOMIC +SUBATOMS +SUBAUDIBLE +SUBAUDITION +SUBAUDITIONS +SUBAURAL +SUBAVERAGE +SUBAXIAL +SUBBASE +SUBBASEMENT +SUBBASEMENTS +SUBBASES +SUBBASIN +SUBBASINS +SUBBASS +SUBBASSES +SUBBED +SUBBING +SUBBINGS +SUBBITUMINOUS +SUBBLOCK +SUBBLOCKS +SUBBRANCH +SUBBRANCHES +SUBBREED +SUBBREEDS +SUBBUREAU +SUBBUREAUS +SUBBUREAUX +SUBCABINET +SUBCAPSULAR +SUBCASTE +SUBCASTES +SUBCATEGORIES +SUBCATEGORIZE +SUBCATEGORIZED +SUBCATEGORIZES +SUBCATEGORIZING +SUBCATEGORY +SUBCAUSE +SUBCAUSES +SUBCAVITIES +SUBCAVITY +SUBCEILING +SUBCEILINGS +SUBCELL +SUBCELLAR +SUBCELLARS +SUBCELLS +SUBCELLULAR +SUBCENTER +SUBCENTERS +SUBCENTRAL +SUBCENTRALLY +SUBCHAPTER +SUBCHAPTERS +SUBCHASER +SUBCHASERS +SUBCHIEF +SUBCHIEFS +SUBCLAIM +SUBCLAIMS +SUBCLAN +SUBCLANS +SUBCLASS +SUBCLASSED +SUBCLASSES +SUBCLASSIFIED +SUBCLASSIFIES +SUBCLASSIFY +SUBCLASSIFYING +SUBCLASSING +SUBCLAUSE +SUBCLAUSES +SUBCLAVIAN +SUBCLAVIANS +SUBCLERK +SUBCLERKS +SUBCLIMAX +SUBCLIMAXES +SUBCLINICAL +SUBCLINICALLY +SUBCLUSTER +SUBCLUSTERED +SUBCLUSTERING +SUBCLUSTERS +SUBCODE +SUBCODES +SUBCOLLECTION +SUBCOLLECTIONS +SUBCOLLEGE +SUBCOLLEGIATE +SUBCOLONIES +SUBCOLONY +SUBCOMMISSION +SUBCOMMISSIONED +SUBCOMMISSIONS +SUBCOMMITTEE +SUBCOMMITTEES +SUBCOMMUNITIES +SUBCOMMUNITY +SUBCOMPACT +SUBCOMPACTS +SUBCOMPONENT +SUBCOMPONENTS +SUBCONSCIOUS +SUBCONSCIOUSES +SUBCONSCIOUSLY +SUBCONSUL +SUBCONSULS +SUBCONTINENT +SUBCONTINENTAL +SUBCONTINENTS +SUBCONTRACT +SUBCONTRACTED +SUBCONTRACTING +SUBCONTRACTOR +SUBCONTRACTORS +SUBCONTRACTS +SUBCONTRAOCTAVE +SUBCONTRARIES +SUBCONTRARY +SUBCOOL +SUBCOOLED +SUBCOOLING +SUBCOOLS +SUBCORDATE +SUBCORIACEOUS +SUBCORTEX +SUBCORTEXES +SUBCORTICAL +SUBCORTICES +SUBCOSTAL +SUBCOSTALS +SUBCOUNTIES +SUBCOUNTY +SUBCRITICAL +SUBCRUSTAL +SUBCULT +SUBCULTS +SUBCULTURAL +SUBCULTURALLY +SUBCULTURE +SUBCULTURED +SUBCULTURES +SUBCULTURING +SUBCURATIVE +SUBCUTANEOUS +SUBCUTANEOUSLY +SUBCUTES +SUBCUTIS +SUBCUTISES +SUBDEACON +SUBDEACONS +SUBDEALER +SUBDEALERS +SUBDEAN +SUBDEANS +SUBDEB +SUBDEBS +SUBDEBUTANTE +SUBDEBUTANTES +SUBDECISION +SUBDECISIONS +SUBDEPARTMENT +SUBDEPARTMENTS +SUBDEPOT +SUBDEPOTS +SUBDEPUTIES +SUBDEPUTY +SUBDERMAL +SUBDERMALLY +SUBDEVELOPMENT +SUBDEVELOPMENTS +SUBDIALECT +SUBDIALECTS +SUBDIRECTOR +SUBDIRECTORS +SUBDISCIPLINE +SUBDISCIPLINES +SUBDISTRICT +SUBDISTRICTS +SUBDIVIDABLE +SUBDIVIDE +SUBDIVIDED +SUBDIVIDER +SUBDIVIDERS +SUBDIVIDES +SUBDIVIDING +SUBDIVISION +SUBDIVISIONS +SUBDOMINANT +SUBDOMINANTS +SUBDUABLE +SUBDUABLY +SUBDUAL +SUBDUALS +SUBDUCE +SUBDUCED +SUBDUCES +SUBDUCING +SUBDUCT +SUBDUCTED +SUBDUCTING +SUBDUCTION +SUBDUCTIONS +SUBDUCTS +SUBDUE +SUBDUED +SUBDUEDLY +SUBDUER +SUBDUERS +SUBDUES +SUBDUING +SUBDURAL +SUBDWARF +SUBDWARFS +SUBECHO +SUBECHOES +SUBECONOMIES +SUBECONOMY +SUBEDIT +SUBEDITED +SUBEDITING +SUBEDITOR +SUBEDITORIAL +SUBEDITORS +SUBEDITS +SUBEMPLOYED +SUBEMPLOYMENT +SUBEMPLOYMENTS +SUBENTRIES +SUBENTRY +SUBEPIDERMAL +SUBEPOCH +SUBEPOCHS +SUBER +SUBERECT +SUBERIC +SUBERIN +SUBERINS +SUBERISE +SUBERISED +SUBERISES +SUBERISING +SUBERIZATION +SUBERIZATIONS +SUBERIZE +SUBERIZED +SUBERIZES +SUBERIZING +SUBEROSE +SUBEROUS +SUBERS +SUBFAMILIES +SUBFAMILY +SUBFIELD +SUBFIELDS +SUBFILE +SUBFILES +SUBFIX +SUBFIXES +SUBFLOOR +SUBFLOORS +SUBFLUID +SUBFOSSIL +SUBFOSSILS +SUBFRAME +SUBFRAMES +SUBFREEZING +SUBFUSC +SUBFUSCS +SUBGENERA +SUBGENERATION +SUBGENERATIONS +SUBGENRE +SUBGENRES +SUBGENUS +SUBGENUSES +SUBGLACIAL +SUBGLACIALLY +SUBGOAL +SUBGOALS +SUBGOVERNMENT +SUBGOVERNMENTS +SUBGRADE +SUBGRADES +SUBGRAPH +SUBGRAPHS +SUBGROUP +SUBGROUPED +SUBGROUPING +SUBGROUPS +SUBGUM +SUBGUMS +SUBHEAD +SUBHEADING +SUBHEADINGS +SUBHEADS +SUBHUMAN +SUBHUMANS +SUBHUMID +SUBIDEA +SUBIDEAS +SUBINDEX +SUBINDEXES +SUBINDICES +SUBINDUSTRIES +SUBINDUSTRY +SUBINFEUD +SUBINFEUDATE +SUBINFEUDATED +SUBINFEUDATES +SUBINFEUDATING +SUBINFEUDATION +SUBINFEUDATIONS +SUBINFEUDED +SUBINFEUDING +SUBINFEUDS +SUBINHIBITORY +SUBINTERVAL +SUBINTERVALS +SUBIRRIGATE +SUBIRRIGATED +SUBIRRIGATES +SUBIRRIGATING +SUBIRRIGATION +SUBIRRIGATIONS +SUBITEM +SUBITEMS +SUBITO +SUBJACENCIES +SUBJACENCY +SUBJACENT +SUBJACENTLY +SUBJECT +SUBJECTED +SUBJECTING +SUBJECTION +SUBJECTIONS +SUBJECTIVE +SUBJECTIVELY +SUBJECTIVENESS +SUBJECTIVES +SUBJECTIVISE +SUBJECTIVISED +SUBJECTIVISES +SUBJECTIVISING +SUBJECTIVISM +SUBJECTIVISMS +SUBJECTIVIST +SUBJECTIVISTIC +SUBJECTIVISTS +SUBJECTIVITIES +SUBJECTIVITY +SUBJECTIVIZE +SUBJECTIVIZED +SUBJECTIVIZES +SUBJECTIVIZING +SUBJECTLESS +SUBJECTS +SUBJOIN +SUBJOINED +SUBJOINING +SUBJOINS +SUBJUGATE +SUBJUGATED +SUBJUGATES +SUBJUGATING +SUBJUGATION +SUBJUGATIONS +SUBJUGATOR +SUBJUGATORS +SUBJUNCTION +SUBJUNCTIONS +SUBJUNCTIVE +SUBJUNCTIVES +SUBKINGDOM +SUBKINGDOMS +SUBLANGUAGE +SUBLANGUAGES +SUBLATE +SUBLATED +SUBLATES +SUBLATING +SUBLATION +SUBLATIONS +SUBLEASE +SUBLEASED +SUBLEASES +SUBLEASING +SUBLESSEE +SUBLESSEES +SUBLESSOR +SUBLESSORS +SUBLET +SUBLETHAL +SUBLETHALLY +SUBLETS +SUBLETTING +SUBLEVEL +SUBLEVELS +SUBLIBRARIAN +SUBLIBRARIANS +SUBLICENSE +SUBLICENSED +SUBLICENSES +SUBLICENSING +SUBLIEUTENANT +SUBLIEUTENANTS +SUBLIMABLE +SUBLIMATE +SUBLIMATED +SUBLIMATES +SUBLIMATING +SUBLIMATION +SUBLIMATIONS +SUBLIME +SUBLIMED +SUBLIMELY +SUBLIMENESS +SUBLIMENESSES +SUBLIMER +SUBLIMERS +SUBLIMES +SUBLIMEST +SUBLIMINAL +SUBLIMINALLY +SUBLIMING +SUBLIMIT +SUBLIMITIES +SUBLIMITS +SUBLIMITY +SUBLINE +SUBLINES +SUBLINGUAL +SUBLITERACIES +SUBLITERACY +SUBLITERARY +SUBLITERATE +SUBLITERATES +SUBLITERATURE +SUBLITERATURES +SUBLITTORAL +SUBLITTORALS +SUBLOT +SUBLOTS +SUBLUNAR +SUBLUNARY +SUBLUXATION +SUBLUXATIONS +SUBMANAGER +SUBMANAGERS +SUBMANDIBULAR +SUBMANDIBULARS +SUBMARGINAL +SUBMARINE +SUBMARINED +SUBMARINER +SUBMARINERS +SUBMARINES +SUBMARINING +SUBMARKET +SUBMARKETS +SUBMAXILLARIES +SUBMAXILLARY +SUBMAXIMAL +SUBMEDIANT +SUBMEDIANTS +SUBMENU +SUBMENUS +SUBMERGE +SUBMERGED +SUBMERGENCE +SUBMERGENCES +SUBMERGES +SUBMERGIBLE +SUBMERGING +SUBMERSE +SUBMERSED +SUBMERSES +SUBMERSIBLE +SUBMERSIBLES +SUBMERSING +SUBMERSION +SUBMERSIONS +SUBMETACENTRIC +SUBMETACENTRICS +SUBMICROGRAM +SUBMICRON +SUBMICROSCOPIC +SUBMILLIMETER +SUBMINIATURE +SUBMINIMAL +SUBMINISTER +SUBMINISTERS +SUBMISS +SUBMISSION +SUBMISSIONS +SUBMISSIVE +SUBMISSIVELY +SUBMISSIVENESS +SUBMIT +SUBMITS +SUBMITTAL +SUBMITTALS +SUBMITTED +SUBMITTER +SUBMITTERS +SUBMITTING +SUBMUCOSA +SUBMUCOSAE +SUBMUCOSAL +SUBMUCOSAS +SUBMULTIPLE +SUBMULTIPLES +SUBMUNITION +SUBMUNITIONS +SUBNASAL +SUBNATIONAL +SUBNET +SUBNETS +SUBNETWORK +SUBNETWORKED +SUBNETWORKING +SUBNETWORKS +SUBNICHE +SUBNICHES +SUBNODAL +SUBNORMAL +SUBNORMALITIES +SUBNORMALITY +SUBNORMALLY +SUBNORMALS +SUBNUCLEAR +SUBNUCLEI +SUBNUCLEUS +SUBNUCLEUSES +SUBOCEAN +SUBOCEANIC +SUBOPTIC +SUBOPTIMAL +SUBOPTIMIZATION +SUBOPTIMIZE +SUBOPTIMIZED +SUBOPTIMIZES +SUBOPTIMIZING +SUBOPTIMUM +SUBORAL +SUBORBICULAR +SUBORBITAL +SUBORDER +SUBORDERS +SUBORDINATE +SUBORDINATED +SUBORDINATELY +SUBORDINATENESS +SUBORDINATES +SUBORDINATING +SUBORDINATION +SUBORDINATIONS +SUBORDINATIVE +SUBORDINATOR +SUBORDINATORS +SUBORGANIZATION +SUBORN +SUBORNATION +SUBORNATIONS +SUBORNED +SUBORNER +SUBORNERS +SUBORNING +SUBORNS +SUBOSCINE +SUBOSCINES +SUBOVAL +SUBOVATE +SUBOXIDE +SUBOXIDES +SUBPANEL +SUBPANELS +SUBPAR +SUBPARAGRAPH +SUBPARAGRAPHS +SUBPARALLEL +SUBPART +SUBPARTS +SUBPENA +SUBPENAED +SUBPENAING +SUBPENAS +SUBPERIOD +SUBPERIODS +SUBPHASE +SUBPHASES +SUBPHYLA +SUBPHYLAR +SUBPHYLUM +SUBPLOT +SUBPLOTS +SUBPOENA +SUBPOENAED +SUBPOENAING +SUBPOENAS +SUBPOLAR +SUBPOPULATION +SUBPOPULATIONS +SUBPOTENCIES +SUBPOTENCY +SUBPOTENT +SUBPRIMATE +SUBPRIMATES +SUBPRINCIPAL +SUBPRINCIPALS +SUBPROBLEM +SUBPROBLEMS +SUBPROCESS +SUBPROCESSES +SUBPRODUCT +SUBPRODUCTS +SUBPROFESSIONAL +SUBPROGRAM +SUBPROGRAMS +SUBPROJECT +SUBPROJECTS +SUBPROLETARIAT +SUBPROLETARIATS +SUBPUBIC +SUBRACE +SUBRACES +SUBRATIONAL +SUBREGION +SUBREGIONAL +SUBREGIONS +SUBRENT +SUBRENTS +SUBREPTION +SUBREPTIONS +SUBREPTITIOUS +SUBREPTITIOUSLY +SUBRING +SUBRINGS +SUBROGATE +SUBROGATED +SUBROGATES +SUBROGATING +SUBROGATION +SUBROGATIONS +SUBROUTINE +SUBROUTINES +SUBRULE +SUBRULES +SUBS +SUBSALE +SUBSALES +SUBSAMPLE +SUBSAMPLED +SUBSAMPLES +SUBSAMPLING +SUBSATELLITE +SUBSATELLITES +SUBSATURATED +SUBSATURATION +SUBSATURATIONS +SUBSCALE +SUBSCALES +SUBSCIENCE +SUBSCIENCES +SUBSCRIBE +SUBSCRIBED +SUBSCRIBER +SUBSCRIBERS +SUBSCRIBES +SUBSCRIBING +SUBSCRIPT +SUBSCRIPTION +SUBSCRIPTIONS +SUBSCRIPTS +SUBSEA +SUBSECRETARIES +SUBSECRETARY +SUBSECT +SUBSECTION +SUBSECTIONS +SUBSECTOR +SUBSECTORS +SUBSECTS +SUBSEGMENT +SUBSEGMENTS +SUBSEIZURE +SUBSEIZURES +SUBSENSE +SUBSENSES +SUBSENTENCE +SUBSENTENCES +SUBSEQUENCE +SUBSEQUENCES +SUBSEQUENT +SUBSEQUENTLY +SUBSEQUENTS +SUBSERE +SUBSERES +SUBSERIES +SUBSERVE +SUBSERVED +SUBSERVES +SUBSERVIENCE +SUBSERVIENCES +SUBSERVIENCIES +SUBSERVIENCY +SUBSERVIENT +SUBSERVIENTLY +SUBSERVING +SUBSET +SUBSETS +SUBSHAFT +SUBSHAFTS +SUBSHELL +SUBSHELLS +SUBSHRUB +SUBSHRUBS +SUBSIDE +SUBSIDED +SUBSIDENCE +SUBSIDENCES +SUBSIDER +SUBSIDERS +SUBSIDES +SUBSIDIARIES +SUBSIDIARILY +SUBSIDIARITIES +SUBSIDIARITY +SUBSIDIARY +SUBSIDIES +SUBSIDING +SUBSIDISE +SUBSIDISED +SUBSIDISES +SUBSIDISING +SUBSIDIZATION +SUBSIDIZATIONS +SUBSIDIZE +SUBSIDIZED +SUBSIDIZER +SUBSIDIZERS +SUBSIDIZES +SUBSIDIZING +SUBSIDY +SUBSIST +SUBSISTED +SUBSISTENCE +SUBSISTENCES +SUBSISTENT +SUBSISTER +SUBSISTERS +SUBSISTING +SUBSISTS +SUBSITE +SUBSITES +SUBSKILL +SUBSKILLS +SUBSOCIAL +SUBSOCIETIES +SUBSOCIETY +SUBSOIL +SUBSOILED +SUBSOILER +SUBSOILERS +SUBSOILING +SUBSOILS +SUBSOLAR +SUBSONIC +SUBSONICALLY +SUBSPACE +SUBSPACES +SUBSPECIALIST +SUBSPECIALISTS +SUBSPECIALIZE +SUBSPECIALIZED +SUBSPECIALIZES +SUBSPECIALIZING +SUBSPECIALTIES +SUBSPECIALTY +SUBSPECIES +SUBSPECIFIC +SUBSTAGE +SUBSTAGES +SUBSTANCE +SUBSTANCELESS +SUBSTANCES +SUBSTANDARD +SUBSTANTIAL +SUBSTANTIALITY +SUBSTANTIALLY +SUBSTANTIALNESS +SUBSTANTIALS +SUBSTANTIATE +SUBSTANTIATED +SUBSTANTIATES +SUBSTANTIATING +SUBSTANTIATION +SUBSTANTIATIONS +SUBSTANTIATIVE +SUBSTANTIVAL +SUBSTANTIVALLY +SUBSTANTIVE +SUBSTANTIVELY +SUBSTANTIVENESS +SUBSTANTIVES +SUBSTANTIVIZE +SUBSTANTIVIZED +SUBSTANTIVIZES +SUBSTANTIVIZING +SUBSTATE +SUBSTATES +SUBSTATION +SUBSTATIONS +SUBSTITUENT +SUBSTITUENTS +SUBSTITUTABLE +SUBSTITUTE +SUBSTITUTED +SUBSTITUTES +SUBSTITUTING +SUBSTITUTION +SUBSTITUTIONAL +SUBSTITUTIONARY +SUBSTITUTIONS +SUBSTITUTIVE +SUBSTITUTIVELY +SUBSTRATA +SUBSTRATE +SUBSTRATES +SUBSTRATUM +SUBSTRATUMS +SUBSTRUCTURAL +SUBSTRUCTURE +SUBSTRUCTURES +SUBSUMABLE +SUBSUME +SUBSUMED +SUBSUMES +SUBSUMING +SUBSUMPTION +SUBSUMPTIONS +SUBSURFACE +SUBSURFACES +SUBSYSTEM +SUBSYSTEMS +SUBTASK +SUBTASKS +SUBTAXA +SUBTAXON +SUBTAXONS +SUBTEEN +SUBTEENS +SUBTEMPERATE +SUBTENANCIES +SUBTENANCY +SUBTENANT +SUBTENANTS +SUBTEND +SUBTENDED +SUBTENDING +SUBTENDS +SUBTERFUGE +SUBTERFUGES +SUBTERMINAL +SUBTERRANEAN +SUBTERRANEANLY +SUBTERRANEOUS +SUBTERRANEOUSLY +SUBTEST +SUBTESTS +SUBTEXT +SUBTEXTS +SUBTEXTUAL +SUBTHEME +SUBTHEMES +SUBTHERAPEUTIC +SUBTHRESHOLD +SUBTILE +SUBTILELY +SUBTILENESS +SUBTILENESSES +SUBTILER +SUBTILEST +SUBTILIN +SUBTILINS +SUBTILISIN +SUBTILISINS +SUBTILITIES +SUBTILITY +SUBTILIZATION +SUBTILIZATIONS +SUBTILIZE +SUBTILIZED +SUBTILIZES +SUBTILIZING +SUBTILTIES +SUBTILTY +SUBTITLE +SUBTITLED +SUBTITLES +SUBTITLING +SUBTLE +SUBTLENESS +SUBTLENESSES +SUBTLER +SUBTLEST +SUBTLETIES +SUBTLETY +SUBTLY +SUBTONE +SUBTONES +SUBTONIC +SUBTONICS +SUBTOPIA +SUBTOPIAS +SUBTOPIC +SUBTOPICS +SUBTORRID +SUBTOTAL +SUBTOTALED +SUBTOTALING +SUBTOTALLED +SUBTOTALLING +SUBTOTALLY +SUBTOTALS +SUBTRACT +SUBTRACTED +SUBTRACTER +SUBTRACTERS +SUBTRACTING +SUBTRACTION +SUBTRACTIONS +SUBTRACTIVE +SUBTRACTS +SUBTRAHEND +SUBTRAHENDS +SUBTREASURIES +SUBTREASURY +SUBTREND +SUBTRENDS +SUBTRIBE +SUBTRIBES +SUBTROPIC +SUBTROPICAL +SUBTROPICS +SUBTUNIC +SUBTUNICS +SUBTYPE +SUBTYPES +SUBULATE +SUBUMBRELLA +SUBUMBRELLAS +SUBUNIT +SUBUNITS +SUBURB +SUBURBAN +SUBURBANISE +SUBURBANISED +SUBURBANISES +SUBURBANISING +SUBURBANITE +SUBURBANITES +SUBURBANIZATION +SUBURBANIZE +SUBURBANIZED +SUBURBANIZES +SUBURBANIZING +SUBURBANS +SUBURBED +SUBURBIA +SUBURBIAS +SUBURBS +SUBVARIETIES +SUBVARIETY +SUBVASSAL +SUBVASSALS +SUBVENE +SUBVENED +SUBVENES +SUBVENING +SUBVENTION +SUBVENTIONARY +SUBVENTIONS +SUBVERSION +SUBVERSIONARY +SUBVERSIONS +SUBVERSIVE +SUBVERSIVELY +SUBVERSIVENESS +SUBVERSIVES +SUBVERT +SUBVERTED +SUBVERTER +SUBVERTERS +SUBVERTING +SUBVERTS +SUBVICAR +SUBVICARS +SUBVIRAL +SUBVIRUS +SUBVIRUSES +SUBVISIBLE +SUBVISUAL +SUBVOCAL +SUBVOCALIZATION +SUBVOCALIZE +SUBVOCALIZED +SUBVOCALIZES +SUBVOCALIZING +SUBVOCALLY +SUBWAY +SUBWAYED +SUBWAYING +SUBWAYS +SUBWOOFER +SUBWOOFERS +SUBWORLD +SUBWORLDS +SUBWRITER +SUBWRITERS +SUBZERO +SUBZONE +SUBZONES +SUCCAH +SUCCAHS +SUCCEDANEA +SUCCEDANEOUS +SUCCEDANEUM +SUCCEDANEUMS +SUCCEDENT +SUCCEED +SUCCEEDED +SUCCEEDER +SUCCEEDERS +SUCCEEDING +SUCCEEDS +SUCCESS +SUCCESSES +SUCCESSFUL +SUCCESSFULLY +SUCCESSFULNESS +SUCCESSION +SUCCESSIONAL +SUCCESSIONALLY +SUCCESSIONS +SUCCESSIVE +SUCCESSIVELY +SUCCESSIVENESS +SUCCESSOR +SUCCESSORS +SUCCINATE +SUCCINATES +SUCCINCT +SUCCINCTER +SUCCINCTEST +SUCCINCTLY +SUCCINCTNESS +SUCCINCTNESSES +SUCCINIC +SUCCINYL +SUCCINYLCHOLINE +SUCCINYLS +SUCCOR +SUCCORED +SUCCORER +SUCCORERS +SUCCORIES +SUCCORING +SUCCORS +SUCCORY +SUCCOTASH +SUCCOTASHES +SUCCOTH +SUCCOUR +SUCCOURED +SUCCOURING +SUCCOURS +SUCCUBA +SUCCUBAE +SUCCUBAS +SUCCUBI +SUCCUBUS +SUCCUBUSES +SUCCULENCE +SUCCULENCES +SUCCULENT +SUCCULENTLY +SUCCULENTS +SUCCUMB +SUCCUMBED +SUCCUMBING +SUCCUMBS +SUCCUSS +SUCCUSSED +SUCCUSSES +SUCCUSSING +SUCH +SUCHLIKE +SUCHNESS +SUCHNESSES +SUCK +SUCKED +SUCKER +SUCKERED +SUCKERING +SUCKERS +SUCKFISH +SUCKFISHES +SUCKIER +SUCKIEST +SUCKING +SUCKLE +SUCKLED +SUCKLER +SUCKLERS +SUCKLES +SUCKLESS +SUCKLING +SUCKLINGS +SUCKS +SUCKY +SUCRALOSE +SUCRALOSES +SUCRASE +SUCRASES +SUCRE +SUCRES +SUCROSE +SUCROSES +SUCTION +SUCTIONAL +SUCTIONED +SUCTIONING +SUCTIONS +SUCTORIAL +SUCTORIAN +SUCTORIANS +SUDARIA +SUDARIES +SUDARIUM +SUDARY +SUDATION +SUDATIONS +SUDATORIA +SUDATORIES +SUDATORIUM +SUDATORIUMS +SUDATORY +SUDD +SUDDEN +SUDDENLY +SUDDENNESS +SUDDENNESSES +SUDDENS +SUDDS +SUDOR +SUDORAL +SUDORIFEROUS +SUDORIFIC +SUDORIFICS +SUDORS +SUDS +SUDSED +SUDSER +SUDSERS +SUDSES +SUDSIER +SUDSIEST +SUDSING +SUDSLESS +SUDSY +SUE +SUED +SUEDE +SUEDED +SUEDES +SUEDING +SUER +SUERS +SUES +SUET +SUETS +SUETY +SUFFARI +SUFFARIS +SUFFER +SUFFERABLE +SUFFERABLENESS +SUFFERABLY +SUFFERANCE +SUFFERANCES +SUFFERED +SUFFERER +SUFFERERS +SUFFERING +SUFFERINGS +SUFFERS +SUFFICE +SUFFICED +SUFFICER +SUFFICERS +SUFFICES +SUFFICIENCIES +SUFFICIENCY +SUFFICIENT +SUFFICIENTLY +SUFFICING +SUFFIX +SUFFIXAL +SUFFIXATION +SUFFIXATIONS +SUFFIXED +SUFFIXES +SUFFIXING +SUFFIXION +SUFFIXIONS +SUFFLATE +SUFFLATED +SUFFLATES +SUFFLATING +SUFFOCATE +SUFFOCATED +SUFFOCATES +SUFFOCATING +SUFFOCATINGLY +SUFFOCATION +SUFFOCATIONS +SUFFOCATIVE +SUFFRAGAN +SUFFRAGANS +SUFFRAGE +SUFFRAGES +SUFFRAGETTE +SUFFRAGETTES +SUFFRAGIST +SUFFRAGISTS +SUFFUSE +SUFFUSED +SUFFUSES +SUFFUSING +SUFFUSION +SUFFUSIONS +SUFFUSIVE +SUGAR +SUGARBERRIES +SUGARBERRY +SUGARBUSH +SUGARBUSHES +SUGARCANE +SUGARCANES +SUGARCOAT +SUGARCOATED +SUGARCOATING +SUGARCOATS +SUGARED +SUGARER +SUGARERS +SUGARHOUSE +SUGARHOUSES +SUGARIER +SUGARIEST +SUGARING +SUGARLESS +SUGARLIKE +SUGARLOAF +SUGARLOAVES +SUGARPLUM +SUGARPLUMS +SUGARS +SUGARY +SUGGEST +SUGGESTED +SUGGESTER +SUGGESTERS +SUGGESTIBILITY +SUGGESTIBLE +SUGGESTING +SUGGESTION +SUGGESTIONS +SUGGESTIVE +SUGGESTIVELY +SUGGESTIVENESS +SUGGESTS +SUGH +SUGHED +SUGHING +SUGHS +SUICIDAL +SUICIDALLY +SUICIDE +SUICIDED +SUICIDES +SUICIDING +SUING +SUINT +SUINTS +SUIT +SUITABILITIES +SUITABILITY +SUITABLE +SUITABLENESS +SUITABLENESSES +SUITABLY +SUITCASE +SUITCASES +SUITE +SUITED +SUITER +SUITERS +SUITES +SUITING +SUITINGS +SUITLIKE +SUITOR +SUITORS +SUITS +SUK +SUKIYAKI +SUKIYAKIS +SUKKAH +SUKKAHS +SUKKOT +SUKKOTH +SUKS +SULCAL +SULCATE +SULCATED +SULCATION +SULCATIONS +SULCI +SULCUS +SULDAN +SULDANS +SULFA +SULFADIAZINE +SULFADIAZINES +SULFANILAMIDE +SULFANILAMIDES +SULFAS +SULFATASE +SULFATASES +SULFATE +SULFATED +SULFATES +SULFATING +SULFATION +SULFATIONS +SULFHYDRYL +SULFHYDRYLS +SULFID +SULFIDE +SULFIDES +SULFIDS +SULFINPYRAZONE +SULFINPYRAZONES +SULFINYL +SULFINYLS +SULFITE +SULFITES +SULFITIC +SULFO +SULFONAMIDE +SULFONAMIDES +SULFONATE +SULFONATED +SULFONATES +SULFONATING +SULFONATION +SULFONATIONS +SULFONE +SULFONES +SULFONIC +SULFONIUM +SULFONIUMS +SULFONYL +SULFONYLS +SULFONYLUREA +SULFONYLUREAS +SULFOXIDE +SULFOXIDES +SULFUR +SULFURATE +SULFURATED +SULFURATES +SULFURATING +SULFURED +SULFURET +SULFURETED +SULFURETING +SULFURETS +SULFURETTED +SULFURETTING +SULFURIC +SULFURING +SULFURIZE +SULFURIZED +SULFURIZES +SULFURIZING +SULFUROUS +SULFUROUSLY +SULFUROUSNESS +SULFUROUSNESSES +SULFURS +SULFURY +SULFURYL +SULFURYLS +SULK +SULKED +SULKER +SULKERS +SULKIER +SULKIES +SULKIEST +SULKILY +SULKINESS +SULKINESSES +SULKING +SULKS +SULKY +SULLAGE +SULLAGES +SULLEN +SULLENER +SULLENEST +SULLENLY +SULLENNESS +SULLENNESSES +SULLIABLE +SULLIED +SULLIES +SULLY +SULLYING +SULPHA +SULPHAS +SULPHATE +SULPHATED +SULPHATES +SULPHATING +SULPHID +SULPHIDE +SULPHIDES +SULPHIDS +SULPHITE +SULPHITES +SULPHONE +SULPHONES +SULPHUR +SULPHURED +SULPHUREOUS +SULPHURING +SULPHURISE +SULPHURISED +SULPHURISES +SULPHURISING +SULPHUROUS +SULPHURS +SULPHURY +SULTAN +SULTANA +SULTANAS +SULTANATE +SULTANATES +SULTANESS +SULTANESSES +SULTANIC +SULTANS +SULTRIER +SULTRIEST +SULTRILY +SULTRINESS +SULTRINESSES +SULTRY +SULU +SULUS +SUM +SUMAC +SUMACH +SUMACHS +SUMACS +SUMLESS +SUMMA +SUMMABILITIES +SUMMABILITY +SUMMABLE +SUMMAE +SUMMAND +SUMMANDS +SUMMARIES +SUMMARILY +SUMMARISE +SUMMARISED +SUMMARISES +SUMMARISING +SUMMARIST +SUMMARISTS +SUMMARIZABLE +SUMMARIZATION +SUMMARIZATIONS +SUMMARIZE +SUMMARIZED +SUMMARIZER +SUMMARIZERS +SUMMARIZES +SUMMARIZING +SUMMARY +SUMMAS +SUMMATE +SUMMATED +SUMMATES +SUMMATING +SUMMATION +SUMMATIONAL +SUMMATIONS +SUMMATIVE +SUMMED +SUMMER +SUMMERED +SUMMERHOUSE +SUMMERHOUSES +SUMMERIER +SUMMERIEST +SUMMERING +SUMMERLIKE +SUMMERLONG +SUMMERLY +SUMMERS +SUMMERSAULT +SUMMERSAULTED +SUMMERSAULTING +SUMMERSAULTS +SUMMERSET +SUMMERSETS +SUMMERSETTED +SUMMERSETTING +SUMMERTIME +SUMMERTIMES +SUMMERWOOD +SUMMERWOODS +SUMMERY +SUMMING +SUMMIT +SUMMITAL +SUMMITED +SUMMITEER +SUMMITEERS +SUMMITING +SUMMITRIES +SUMMITRY +SUMMITS +SUMMON +SUMMONABLE +SUMMONED +SUMMONER +SUMMONERS +SUMMONING +SUMMONS +SUMMONSED +SUMMONSES +SUMMONSING +SUMO +SUMOIST +SUMOISTS +SUMOS +SUMP +SUMPS +SUMPTER +SUMPTERS +SUMPTUARY +SUMPTUOUS +SUMPTUOUSLY +SUMPTUOUSNESS +SUMPTUOUSNESSES +SUMPWEED +SUMPWEEDS +SUMS +SUN +SUNBACK +SUNBAKED +SUNBATH +SUNBATHE +SUNBATHED +SUNBATHER +SUNBATHERS +SUNBATHES +SUNBATHING +SUNBATHS +SUNBEAM +SUNBEAMS +SUNBEAMY +SUNBELT +SUNBELTS +SUNBIRD +SUNBIRDS +SUNBLOCK +SUNBLOCKS +SUNBONNET +SUNBONNETS +SUNBOW +SUNBOWS +SUNBURN +SUNBURNED +SUNBURNING +SUNBURNS +SUNBURNT +SUNBURST +SUNBURSTS +SUNCHOKE +SUNCHOKES +SUNDAE +SUNDAES +SUNDECK +SUNDECKS +SUNDER +SUNDERED +SUNDERER +SUNDERERS +SUNDERING +SUNDERS +SUNDEW +SUNDEWS +SUNDIAL +SUNDIALS +SUNDOG +SUNDOGS +SUNDOWN +SUNDOWNED +SUNDOWNER +SUNDOWNERS +SUNDOWNING +SUNDOWNS +SUNDRESS +SUNDRESSES +SUNDRIES +SUNDRILY +SUNDROPS +SUNDRY +SUNFAST +SUNFISH +SUNFISHES +SUNFLOWER +SUNFLOWERS +SUNG +SUNGLASS +SUNGLASSES +SUNGLOW +SUNGLOWS +SUNK +SUNKEN +SUNKET +SUNKETS +SUNLAMP +SUNLAMPS +SUNLAND +SUNLANDS +SUNLESS +SUNLIGHT +SUNLIGHTS +SUNLIKE +SUNLIT +SUNN +SUNNA +SUNNAH +SUNNAHS +SUNNAS +SUNNED +SUNNIER +SUNNIEST +SUNNILY +SUNNINESS +SUNNINESSES +SUNNING +SUNNS +SUNNY +SUNPORCH +SUNPORCHES +SUNPROOF +SUNRAY +SUNRAYS +SUNRISE +SUNRISES +SUNROOF +SUNROOFS +SUNROOM +SUNROOMS +SUNS +SUNSCALD +SUNSCALDS +SUNSCREEN +SUNSCREENING +SUNSCREENS +SUNSEEKER +SUNSEEKERS +SUNSET +SUNSETS +SUNSHADE +SUNSHADES +SUNSHINE +SUNSHINES +SUNSHINY +SUNSPOT +SUNSPOTS +SUNSTONE +SUNSTONES +SUNSTROKE +SUNSTROKES +SUNSTRUCK +SUNSUIT +SUNSUITS +SUNTAN +SUNTANNED +SUNTANNING +SUNTANS +SUNUP +SUNUPS +SUNWARD +SUNWARDS +SUNWISE +SUP +SUPE +SUPER +SUPERABLE +SUPERABLENESS +SUPERABLENESSES +SUPERABLY +SUPERABOUND +SUPERABOUNDED +SUPERABOUNDING +SUPERABOUNDS +SUPERABSORBENT +SUPERABSORBENTS +SUPERABUNDANCE +SUPERABUNDANCES +SUPERABUNDANT +SUPERABUNDANTLY +SUPERACHIEVER +SUPERACHIEVERS +SUPERACTIVITIES +SUPERACTIVITY +SUPERADD +SUPERADDED +SUPERADDING +SUPERADDITION +SUPERADDITIONS +SUPERADDS +SUPERAGENCIES +SUPERAGENCY +SUPERAGENT +SUPERAGENTS +SUPERALLOY +SUPERALLOYS +SUPERALTERN +SUPERALTERNS +SUPERAMBITIOUS +SUPERANNUATE +SUPERANNUATED +SUPERANNUATES +SUPERANNUATING +SUPERANNUATION +SUPERANNUATIONS +SUPERATHLETE +SUPERATHLETES +SUPERATOM +SUPERATOMS +SUPERB +SUPERBAD +SUPERBANK +SUPERBANKS +SUPERBER +SUPERBEST +SUPERBITCH +SUPERBITCHES +SUPERBLOCK +SUPERBLOCKS +SUPERBLY +SUPERBNESS +SUPERBNESSES +SUPERBOARD +SUPERBOARDS +SUPERBOMB +SUPERBOMBER +SUPERBOMBERS +SUPERBOMBS +SUPERBRIGHT +SUPERBUG +SUPERBUGS +SUPERBUREAUCRAT +SUPERCABINET +SUPERCABINETS +SUPERCALENDER +SUPERCALENDERED +SUPERCALENDERS +SUPERCAR +SUPERCARGO +SUPERCARGOES +SUPERCARGOS +SUPERCARRIER +SUPERCARRIERS +SUPERCARS +SUPERCAUTIOUS +SUPERCEDE +SUPERCEDED +SUPERCEDES +SUPERCEDING +SUPERCENTER +SUPERCENTERS +SUPERCHARGE +SUPERCHARGED +SUPERCHARGER +SUPERCHARGERS +SUPERCHARGES +SUPERCHARGING +SUPERCHIC +SUPERCHURCH +SUPERCHURCHES +SUPERCILIARY +SUPERCILIOUS +SUPERCILIOUSLY +SUPERCITIES +SUPERCITY +SUPERCIVILIZED +SUPERCLASS +SUPERCLASSES +SUPERCLEAN +SUPERCLUB +SUPERCLUBS +SUPERCLUSTER +SUPERCLUSTERS +SUPERCOIL +SUPERCOILED +SUPERCOILING +SUPERCOILS +SUPERCOLLIDER +SUPERCOLLIDERS +SUPERCOLOSSAL +SUPERCOMPUTER +SUPERCOMPUTERS +SUPERCONDUCT +SUPERCONDUCTED +SUPERCONDUCTING +SUPERCONDUCTIVE +SUPERCONDUCTOR +SUPERCONDUCTORS +SUPERCONDUCTS +SUPERCONFIDENT +SUPERCONTINENT +SUPERCONTINENTS +SUPERCONVENIENT +SUPERCOOL +SUPERCOOLED +SUPERCOOLING +SUPERCOOLS +SUPERCOP +SUPERCOPS +SUPERCRIMINAL +SUPERCRIMINALS +SUPERCRITICAL +SUPERCURRENT +SUPERCURRENTS +SUPERCUTE +SUPERDELUXE +SUPERDIPLOMAT +SUPERDIPLOMATS +SUPERED +SUPEREFFECTIVE +SUPEREFFICIENCY +SUPEREFFICIENT +SUPEREGO +SUPEREGOIST +SUPEREGOISTS +SUPEREGOS +SUPERELEVATE +SUPERELEVATED +SUPERELEVATES +SUPERELEVATING +SUPERELEVATION +SUPERELEVATIONS +SUPERELITE +SUPEREMINENCE +SUPEREMINENCES +SUPEREMINENT +SUPEREMINENTLY +SUPEREROGATION +SUPEREROGATIONS +SUPEREROGATORY +SUPERETTE +SUPERETTES +SUPEREXPENSIVE +SUPEREXPRESS +SUPEREXPRESSES +SUPERFAMILIES +SUPERFAMILY +SUPERFAN +SUPERFANS +SUPERFARM +SUPERFARMS +SUPERFAST +SUPERFATTED +SUPERFETATION +SUPERFETATIONS +SUPERFICIAL +SUPERFICIALITY +SUPERFICIALLY +SUPERFICIES +SUPERFINE +SUPERFIRM +SUPERFIRMS +SUPERFIX +SUPERFIXES +SUPERFLACK +SUPERFLACKS +SUPERFLUID +SUPERFLUIDITIES +SUPERFLUIDITY +SUPERFLUIDS +SUPERFLUITIES +SUPERFLUITY +SUPERFLUOUS +SUPERFLUOUSLY +SUPERFLUOUSNESS +SUPERFUND +SUPERFUNDS +SUPERGENE +SUPERGENES +SUPERGIANT +SUPERGIANTS +SUPERGLUE +SUPERGLUED +SUPERGLUES +SUPERGLUING +SUPERGOOD +SUPERGOVERNMENT +SUPERGRAPHICS +SUPERGRAVITIES +SUPERGRAVITY +SUPERGROUP +SUPERGROUPS +SUPERGROWTH +SUPERGROWTHS +SUPERHARDEN +SUPERHARDENED +SUPERHARDENING +SUPERHARDENS +SUPERHEAT +SUPERHEATED +SUPERHEATER +SUPERHEATERS +SUPERHEATING +SUPERHEATS +SUPERHEAVIES +SUPERHEAVY +SUPERHELICAL +SUPERHELICES +SUPERHELIX +SUPERHELIXES +SUPERHERO +SUPERHEROES +SUPERHEROINE +SUPERHEROINES +SUPERHETERODYNE +SUPERHIGHWAY +SUPERHIGHWAYS +SUPERHIT +SUPERHITS +SUPERHOT +SUPERHUMAN +SUPERHUMANITIES +SUPERHUMANITY +SUPERHUMANLY +SUPERHUMANNESS +SUPERHYPE +SUPERHYPED +SUPERHYPES +SUPERHYPING +SUPERIMPOSABLE +SUPERIMPOSE +SUPERIMPOSED +SUPERIMPOSES +SUPERIMPOSING +SUPERIMPOSITION +SUPERINCUMBENT +SUPERINDIVIDUAL +SUPERINDUCE +SUPERINDUCED +SUPERINDUCES +SUPERINDUCING +SUPERINDUCTION +SUPERINDUCTIONS +SUPERINFECT +SUPERINFECTED +SUPERINFECTING +SUPERINFECTION +SUPERINFECTIONS +SUPERINFECTS +SUPERING +SUPERINSULATED +SUPERINTEND +SUPERINTENDED +SUPERINTENDENCE +SUPERINTENDENCY +SUPERINTENDENT +SUPERINTENDENTS +SUPERINTENDING +SUPERINTENDS +SUPERINTENSITY +SUPERIOR +SUPERIORITIES +SUPERIORITY +SUPERIORLY +SUPERIORS +SUPERJACENT +SUPERJET +SUPERJETS +SUPERJOCK +SUPERJOCKS +SUPERJUMBO +SUPERJUMBOS +SUPERLAIN +SUPERLARGE +SUPERLATIVE +SUPERLATIVELY +SUPERLATIVENESS +SUPERLATIVES +SUPERLAWYER +SUPERLAWYERS +SUPERLAY +SUPERLIE +SUPERLIES +SUPERLIGHT +SUPERLINER +SUPERLINERS +SUPERLOBBYIST +SUPERLOBBYISTS +SUPERLONG +SUPERLOYALIST +SUPERLOYALISTS +SUPERLUNAR +SUPERLUNARY +SUPERLUXURIOUS +SUPERLUXURY +SUPERLYING +SUPERMACHO +SUPERMAJORITIES +SUPERMAJORITY +SUPERMALE +SUPERMALES +SUPERMAN +SUPERMARKET +SUPERMARKETS +SUPERMASCULINE +SUPERMASSIVE +SUPERMEN +SUPERMICRO +SUPERMICROS +SUPERMILITANT +SUPERMILITANTS +SUPERMIND +SUPERMINDS +SUPERMINI +SUPERMINIS +SUPERMINISTER +SUPERMINISTERS +SUPERMODEL +SUPERMODELS +SUPERMODERN +SUPERMOM +SUPERMOMS +SUPERNAL +SUPERNALLY +SUPERNATANT +SUPERNATANTS +SUPERNATE +SUPERNATES +SUPERNATION +SUPERNATIONAL +SUPERNATIONS +SUPERNATURAL +SUPERNATURALISM +SUPERNATURALIST +SUPERNATURALLY +SUPERNATURALS +SUPERNATURE +SUPERNATURES +SUPERNORMAL +SUPERNORMALITY +SUPERNORMALLY +SUPERNOVA +SUPERNOVAE +SUPERNOVAS +SUPERNUMERARIES +SUPERNUMERARY +SUPERNUTRITION +SUPERNUTRITIONS +SUPERORDER +SUPERORDERS +SUPERORDINATE +SUPERORGANIC +SUPERORGANISM +SUPERORGANISMS +SUPERORGASM +SUPERORGASMS +SUPEROVULATE +SUPEROVULATED +SUPEROVULATES +SUPEROVULATING +SUPEROVULATION +SUPEROVULATIONS +SUPEROXIDE +SUPEROXIDES +SUPERPARASITISM +SUPERPATRIOT +SUPERPATRIOTIC +SUPERPATRIOTISM +SUPERPATRIOTS +SUPERPERSON +SUPERPERSONAL +SUPERPERSONS +SUPERPHENOMENA +SUPERPHENOMENON +SUPERPHOSPHATE +SUPERPHOSPHATES +SUPERPHYSICAL +SUPERPIMP +SUPERPIMPS +SUPERPLANE +SUPERPLANES +SUPERPLASTIC +SUPERPLASTICITY +SUPERPLAYER +SUPERPLAYERS +SUPERPOLITE +SUPERPORT +SUPERPORTS +SUPERPOSABLE +SUPERPOSE +SUPERPOSED +SUPERPOSES +SUPERPOSING +SUPERPOSITION +SUPERPOSITIONS +SUPERPOWER +SUPERPOWERED +SUPERPOWERFUL +SUPERPOWERS +SUPERPREMIUM +SUPERPREMIUMS +SUPERPRO +SUPERPROFIT +SUPERPROFITS +SUPERPROS +SUPERQUALITY +SUPERRACE +SUPERRACES +SUPERREAL +SUPERREALISM +SUPERREALISMS +SUPERREGIONAL +SUPERREGIONALS +SUPERRICH +SUPERROAD +SUPERROADS +SUPERROMANTIC +SUPERS +SUPERSAFE +SUPERSALE +SUPERSALES +SUPERSALESMAN +SUPERSALESMEN +SUPERSATURATE +SUPERSATURATED +SUPERSATURATES +SUPERSATURATING +SUPERSATURATION +SUPERSAUR +SUPERSAURS +SUPERSCALE +SUPERSCHOOL +SUPERSCHOOLS +SUPERSCOUT +SUPERSCOUTS +SUPERSCRIBE +SUPERSCRIBED +SUPERSCRIBES +SUPERSCRIBING +SUPERSCRIPT +SUPERSCRIPTION +SUPERSCRIPTIONS +SUPERSCRIPTS +SUPERSECRECIES +SUPERSECRECY +SUPERSECRET +SUPERSEDE +SUPERSEDEAS +SUPERSEDED +SUPERSEDER +SUPERSEDERS +SUPERSEDES +SUPERSEDING +SUPERSEDURE +SUPERSEDURES +SUPERSELL +SUPERSELLER +SUPERSELLERS +SUPERSELLING +SUPERSELLS +SUPERSENSIBLE +SUPERSENSITIVE +SUPERSENSORY +SUPERSESSION +SUPERSESSIONS +SUPERSEX +SUPERSEXES +SUPERSEXUALITY +SUPERSHARP +SUPERSHOW +SUPERSHOWS +SUPERSINGER +SUPERSINGERS +SUPERSIZE +SUPERSIZED +SUPERSIZES +SUPERSIZING +SUPERSLEUTH +SUPERSLEUTHS +SUPERSLICK +SUPERSMART +SUPERSMOOTH +SUPERSOFT +SUPERSOLD +SUPERSONIC +SUPERSONICALLY +SUPERSONICS +SUPERSPECIAL +SUPERSPECIALIST +SUPERSPECIALS +SUPERSPECTACLE +SUPERSPECTACLES +SUPERSPIES +SUPERSPY +SUPERSTAR +SUPERSTARDOM +SUPERSTARDOMS +SUPERSTARS +SUPERSTATE +SUPERSTATES +SUPERSTATION +SUPERSTATIONS +SUPERSTIMULATE +SUPERSTIMULATED +SUPERSTIMULATES +SUPERSTITION +SUPERSTITIONS +SUPERSTITIOUS +SUPERSTITIOUSLY +SUPERSTOCK +SUPERSTOCKS +SUPERSTORE +SUPERSTORES +SUPERSTRATA +SUPERSTRATUM +SUPERSTRENGTH +SUPERSTRENGTHS +SUPERSTRIKE +SUPERSTRIKES +SUPERSTRING +SUPERSTRINGS +SUPERSTRONG +SUPERSTRUCTURAL +SUPERSTRUCTURE +SUPERSTRUCTURES +SUPERSTUD +SUPERSTUDS +SUPERSUBTLE +SUPERSUBTLETIES +SUPERSUBTLETY +SUPERSURGEON +SUPERSURGEONS +SUPERSWEET +SUPERSYMMETRIC +SUPERSYMMETRIES +SUPERSYMMETRY +SUPERSYSTEM +SUPERSYSTEMS +SUPERTANKER +SUPERTANKERS +SUPERTAX +SUPERTAXES +SUPERTERRIFIC +SUPERTHICK +SUPERTHIN +SUPERTHRILLER +SUPERTHRILLERS +SUPERTIGHT +SUPERTONIC +SUPERTONICS +SUPERVENE +SUPERVENED +SUPERVENES +SUPERVENIENT +SUPERVENING +SUPERVENTION +SUPERVENTIONS +SUPERVIRILE +SUPERVIRTUOSI +SUPERVIRTUOSO +SUPERVIRTUOSOS +SUPERVISE +SUPERVISED +SUPERVISES +SUPERVISING +SUPERVISION +SUPERVISIONS +SUPERVISOR +SUPERVISORS +SUPERVISORY +SUPERWAVE +SUPERWAVES +SUPERWEAPON +SUPERWEAPONS +SUPERWIDE +SUPERWIDES +SUPERWIFE +SUPERWIVES +SUPERWOMAN +SUPERWOMEN +SUPES +SUPINATE +SUPINATED +SUPINATES +SUPINATING +SUPINATION +SUPINATIONS +SUPINATOR +SUPINATORS +SUPINE +SUPINELY +SUPINENESS +SUPINENESSES +SUPINES +SUPPED +SUPPER +SUPPERS +SUPPING +SUPPLANT +SUPPLANTATION +SUPPLANTATIONS +SUPPLANTED +SUPPLANTER +SUPPLANTERS +SUPPLANTING +SUPPLANTS +SUPPLE +SUPPLED +SUPPLEJACK +SUPPLEJACKS +SUPPLELY +SUPPLEMENT +SUPPLEMENTAL +SUPPLEMENTALS +SUPPLEMENTARY +SUPPLEMENTATION +SUPPLEMENTED +SUPPLEMENTER +SUPPLEMENTERS +SUPPLEMENTING +SUPPLEMENTS +SUPPLENESS +SUPPLENESSES +SUPPLER +SUPPLES +SUPPLEST +SUPPLETION +SUPPLETIONS +SUPPLETIVE +SUPPLETORY +SUPPLIANCE +SUPPLIANCES +SUPPLIANT +SUPPLIANTLY +SUPPLIANTS +SUPPLICANT +SUPPLICANTS +SUPPLICATE +SUPPLICATED +SUPPLICATES +SUPPLICATING +SUPPLICATION +SUPPLICATIONS +SUPPLICATORY +SUPPLIED +SUPPLIER +SUPPLIERS +SUPPLIES +SUPPLING +SUPPLY +SUPPLYING +SUPPORT +SUPPORTABILITY +SUPPORTABLE +SUPPORTED +SUPPORTER +SUPPORTERS +SUPPORTING +SUPPORTIVE +SUPPORTIVENESS +SUPPORTS +SUPPOSABLE +SUPPOSABLY +SUPPOSAL +SUPPOSALS +SUPPOSE +SUPPOSED +SUPPOSEDLY +SUPPOSER +SUPPOSERS +SUPPOSES +SUPPOSING +SUPPOSITION +SUPPOSITIONAL +SUPPOSITIONS +SUPPOSITIOUS +SUPPOSITITIOUS +SUPPOSITORIES +SUPPOSITORY +SUPPRESS +SUPPRESSANT +SUPPRESSANTS +SUPPRESSED +SUPPRESSES +SUPPRESSIBILITY +SUPPRESSIBLE +SUPPRESSING +SUPPRESSION +SUPPRESSIONS +SUPPRESSIVE +SUPPRESSIVENESS +SUPPRESSOR +SUPPRESSORS +SUPPURATE +SUPPURATED +SUPPURATES +SUPPURATING +SUPPURATION +SUPPURATIONS +SUPPURATIVE +SUPRA +SUPRALIMINAL +SUPRAMOLECULAR +SUPRANATIONAL +SUPRAOPTIC +SUPRAORBITAL +SUPRARATIONAL +SUPRARENAL +SUPRARENALS +SUPRASEGMENTAL +SUPRAVITAL +SUPRAVITALLY +SUPREMACIES +SUPREMACIST +SUPREMACISTS +SUPREMACY +SUPREMATISM +SUPREMATISMS +SUPREMATIST +SUPREMATISTS +SUPREME +SUPREMELY +SUPREMENESS +SUPREMENESSES +SUPREMER +SUPREMES +SUPREMEST +SUPREMO +SUPREMOS +SUPS +SUQ +SUQS +SURA +SURAH +SURAHS +SURAL +SURAS +SURBASE +SURBASED +SURBASES +SURCEASE +SURCEASED +SURCEASES +SURCEASING +SURCHARGE +SURCHARGED +SURCHARGES +SURCHARGING +SURCINGLE +SURCINGLED +SURCINGLES +SURCINGLING +SURCOAT +SURCOATS +SURCULOSE +SURD +SURDS +SURE +SUREFIRE +SUREFOOTED +SUREFOOTEDLY +SUREFOOTEDNESS +SURELY +SURENESS +SURENESSES +SURER +SUREST +SURETIES +SURETY +SURETYSHIP +SURETYSHIPS +SURF +SURFABLE +SURFACE +SURFACED +SURFACER +SURFACERS +SURFACES +SURFACING +SURFACINGS +SURFACTANT +SURFACTANTS +SURFBIRD +SURFBIRDS +SURFBOARD +SURFBOARDED +SURFBOARDER +SURFBOARDERS +SURFBOARDING +SURFBOARDS +SURFBOAT +SURFBOATS +SURFED +SURFEIT +SURFEITED +SURFEITER +SURFEITERS +SURFEITING +SURFEITS +SURFER +SURFERS +SURFFISH +SURFFISHES +SURFICIAL +SURFIER +SURFIEST +SURFING +SURFINGS +SURFLIKE +SURFMAN +SURFMEN +SURFPERCH +SURFPERCHES +SURFS +SURFSIDE +SURFY +SURGE +SURGED +SURGEON +SURGEONFISH +SURGEONFISHES +SURGEONS +SURGER +SURGERIES +SURGERS +SURGERY +SURGES +SURGICAL +SURGICALLY +SURGING +SURGY +SURICATE +SURICATES +SURIMI +SURIMIS +SURJECTION +SURJECTIONS +SURJECTIVE +SURLIER +SURLIEST +SURLILY +SURLINESS +SURLINESSES +SURLY +SURMISE +SURMISED +SURMISER +SURMISERS +SURMISES +SURMISING +SURMOUNT +SURMOUNTABLE +SURMOUNTED +SURMOUNTING +SURMOUNTS +SURMULLET +SURMULLETS +SURNAME +SURNAMED +SURNAMER +SURNAMERS +SURNAMES +SURNAMING +SURPASS +SURPASSABLE +SURPASSED +SURPASSER +SURPASSERS +SURPASSES +SURPASSING +SURPASSINGLY +SURPLICE +SURPLICED +SURPLICES +SURPLUS +SURPLUSAGE +SURPLUSAGES +SURPLUSED +SURPLUSES +SURPLUSING +SURPLUSSED +SURPLUSSES +SURPLUSSING +SURPRINT +SURPRINTED +SURPRINTING +SURPRINTS +SURPRISAL +SURPRISALS +SURPRISE +SURPRISED +SURPRISER +SURPRISERS +SURPRISES +SURPRISING +SURPRISINGLY +SURPRIZE +SURPRIZED +SURPRIZES +SURPRIZING +SURRA +SURRAS +SURREAL +SURREALISM +SURREALISMS +SURREALIST +SURREALISTIC +SURREALISTS +SURREALLY +SURREBUTTER +SURREBUTTERS +SURREJOINDER +SURREJOINDERS +SURRENDER +SURRENDERED +SURRENDERING +SURRENDERS +SURREPTITIOUS +SURREPTITIOUSLY +SURREY +SURREYS +SURROGACIES +SURROGACY +SURROGATE +SURROGATED +SURROGATES +SURROGATING +SURROUND +SURROUNDED +SURROUNDING +SURROUNDINGS +SURROUNDS +SURROYAL +SURROYALS +SURTAX +SURTAXED +SURTAXES +SURTAXING +SURTITLE +SURTITLES +SURTOUT +SURTOUTS +SURVEIL +SURVEILLANCE +SURVEILLANCES +SURVEILLANT +SURVEILLANTS +SURVEILLED +SURVEILLING +SURVEILS +SURVEY +SURVEYED +SURVEYING +SURVEYINGS +SURVEYOR +SURVEYORS +SURVEYS +SURVIVABILITIES +SURVIVABILITY +SURVIVABLE +SURVIVAL +SURVIVALIST +SURVIVALISTS +SURVIVALS +SURVIVANCE +SURVIVANCES +SURVIVE +SURVIVED +SURVIVER +SURVIVERS +SURVIVES +SURVIVING +SURVIVOR +SURVIVORS +SURVIVORSHIP +SURVIVORSHIPS +SUSCEPTIBILITY +SUSCEPTIBLE +SUSCEPTIBLENESS +SUSCEPTIBLY +SUSCEPTIVE +SUSCEPTIVENESS +SUSCEPTIVITIES +SUSCEPTIVITY +SUSHI +SUSHIS +SUSLIK +SUSLIKS +SUSPECT +SUSPECTED +SUSPECTING +SUSPECTS +SUSPEND +SUSPENDED +SUSPENDER +SUSPENDERED +SUSPENDERS +SUSPENDING +SUSPENDS +SUSPENSE +SUSPENSEFUL +SUSPENSEFULLY +SUSPENSEFULNESS +SUSPENSELESS +SUSPENSER +SUSPENSERS +SUSPENSES +SUSPENSION +SUSPENSIONS +SUSPENSIVE +SUSPENSIVELY +SUSPENSOR +SUSPENSORIES +SUSPENSORS +SUSPENSORY +SUSPICION +SUSPICIONED +SUSPICIONING +SUSPICIONS +SUSPICIOUS +SUSPICIOUSLY +SUSPICIOUSNESS +SUSPIRATION +SUSPIRATIONS +SUSPIRE +SUSPIRED +SUSPIRES +SUSPIRING +SUSS +SUSSED +SUSSES +SUSSING +SUSTAIN +SUSTAINABILITY +SUSTAINABLE +SUSTAINED +SUSTAINEDLY +SUSTAINER +SUSTAINERS +SUSTAINING +SUSTAINS +SUSTENANCE +SUSTENANCES +SUSTENTATION +SUSTENTATIONS +SUSTENTATIVE +SUSURRANT +SUSURRATE +SUSURRATED +SUSURRATES +SUSURRATING +SUSURRATION +SUSURRATIONS +SUSURROUS +SUSURRUS +SUSURRUSES +SUTLER +SUTLERS +SUTRA +SUTRAS +SUTTA +SUTTAS +SUTTEE +SUTTEES +SUTURAL +SUTURALLY +SUTURE +SUTURED +SUTURES +SUTURING +SUZERAIN +SUZERAINS +SUZERAINTIES +SUZERAINTY +SVARAJ +SVARAJES +SVEDBERG +SVEDBERGS +SVELTE +SVELTELY +SVELTENESS +SVELTENESSES +SVELTER +SVELTEST +SWAB +SWABBED +SWABBER +SWABBERS +SWABBIE +SWABBIES +SWABBING +SWABBY +SWABS +SWACKED +SWADDLE +SWADDLED +SWADDLES +SWADDLING +SWAG +SWAGE +SWAGED +SWAGER +SWAGERS +SWAGES +SWAGGED +SWAGGER +SWAGGERED +SWAGGERER +SWAGGERERS +SWAGGERING +SWAGGERINGLY +SWAGGERS +SWAGGIE +SWAGGIES +SWAGGING +SWAGING +SWAGMAN +SWAGMEN +SWAGS +SWAIL +SWAILS +SWAIN +SWAINISH +SWAINISHNESS +SWAINISHNESSES +SWAINS +SWALE +SWALES +SWALLOW +SWALLOWABLE +SWALLOWED +SWALLOWER +SWALLOWERS +SWALLOWING +SWALLOWS +SWALLOWTAIL +SWALLOWTAILS +SWAM +SWAMI +SWAMIES +SWAMIS +SWAMP +SWAMPED +SWAMPER +SWAMPERS +SWAMPIER +SWAMPIEST +SWAMPINESS +SWAMPINESSES +SWAMPING +SWAMPISH +SWAMPLAND +SWAMPLANDS +SWAMPS +SWAMPY +SWAMY +SWAN +SWANG +SWANHERD +SWANHERDS +SWANK +SWANKED +SWANKER +SWANKEST +SWANKIER +SWANKIEST +SWANKILY +SWANKINESS +SWANKINESSES +SWANKING +SWANKS +SWANKY +SWANLIKE +SWANNED +SWANNERIES +SWANNERY +SWANNING +SWANNY +SWANPAN +SWANPANS +SWANS +SWANSDOWN +SWANSDOWNS +SWANSKIN +SWANSKINS +SWAP +SWAPPED +SWAPPER +SWAPPERS +SWAPPING +SWAPS +SWARAJ +SWARAJES +SWARAJISM +SWARAJISMS +SWARAJIST +SWARAJISTS +SWARD +SWARDED +SWARDING +SWARDS +SWARE +SWARF +SWARFS +SWARM +SWARMED +SWARMER +SWARMERS +SWARMING +SWARMS +SWART +SWARTH +SWARTHIER +SWARTHIEST +SWARTHILY +SWARTHINESS +SWARTHINESSES +SWARTHS +SWARTHY +SWARTNESS +SWARTNESSES +SWARTY +SWASH +SWASHBUCKLE +SWASHBUCKLED +SWASHBUCKLER +SWASHBUCKLERS +SWASHBUCKLES +SWASHBUCKLING +SWASHED +SWASHER +SWASHERS +SWASHES +SWASHING +SWASTICA +SWASTICAS +SWASTIKA +SWASTIKAS +SWAT +SWATCH +SWATCHES +SWATH +SWATHE +SWATHED +SWATHER +SWATHERS +SWATHES +SWATHING +SWATHS +SWATS +SWATTED +SWATTER +SWATTERS +SWATTING +SWAY +SWAYABLE +SWAYBACK +SWAYBACKED +SWAYBACKS +SWAYED +SWAYER +SWAYERS +SWAYFUL +SWAYING +SWAYS +SWEAR +SWEARER +SWEARERS +SWEARING +SWEARS +SWEARWORD +SWEARWORDS +SWEAT +SWEATBAND +SWEATBANDS +SWEATBOX +SWEATBOXES +SWEATED +SWEATER +SWEATERDRESS +SWEATERDRESSES +SWEATERS +SWEATIER +SWEATIEST +SWEATILY +SWEATINESS +SWEATINESSES +SWEATING +SWEATPANTS +SWEATS +SWEATSHIRT +SWEATSHIRTS +SWEATSHOP +SWEATSHOPS +SWEATSUIT +SWEATSUITS +SWEATY +SWEDE +SWEDES +SWEENEY +SWEENEYS +SWEENIES +SWEENY +SWEEP +SWEEPBACK +SWEEPBACKS +SWEEPER +SWEEPERS +SWEEPIER +SWEEPIEST +SWEEPING +SWEEPINGLY +SWEEPINGNESS +SWEEPINGNESSES +SWEEPINGS +SWEEPS +SWEEPSTAKES +SWEEPY +SWEER +SWEET +SWEETBREAD +SWEETBREADS +SWEETBRIAR +SWEETBRIARS +SWEETBRIER +SWEETBRIERS +SWEETEN +SWEETENED +SWEETENER +SWEETENERS +SWEETENING +SWEETENINGS +SWEETENS +SWEETER +SWEETEST +SWEETHEART +SWEETHEARTS +SWEETIE +SWEETIES +SWEETING +SWEETINGS +SWEETISH +SWEETISHLY +SWEETLY +SWEETMEAT +SWEETMEATS +SWEETNESS +SWEETNESSES +SWEETS +SWEETSHOP +SWEETSHOPS +SWEETSOP +SWEETSOPS +SWELL +SWELLED +SWELLER +SWELLEST +SWELLFISH +SWELLFISHES +SWELLHEAD +SWELLHEADED +SWELLHEADEDNESS +SWELLHEADS +SWELLING +SWELLINGS +SWELLS +SWELTER +SWELTERED +SWELTERING +SWELTERINGLY +SWELTERS +SWELTRIER +SWELTRIEST +SWELTRY +SWEPT +SWEPTBACK +SWEPTWING +SWEPTWINGS +SWERVE +SWERVED +SWERVER +SWERVERS +SWERVES +SWERVING +SWEVEN +SWEVENS +SWIDDEN +SWIDDENS +SWIFT +SWIFTER +SWIFTERS +SWIFTEST +SWIFTLET +SWIFTLETS +SWIFTLY +SWIFTNESS +SWIFTNESSES +SWIFTS +SWIG +SWIGGED +SWIGGER +SWIGGERS +SWIGGING +SWIGS +SWILL +SWILLED +SWILLER +SWILLERS +SWILLING +SWILLS +SWIM +SWIMMABLE +SWIMMER +SWIMMERET +SWIMMERETS +SWIMMERS +SWIMMIER +SWIMMIEST +SWIMMILY +SWIMMING +SWIMMINGLY +SWIMMINGS +SWIMMY +SWIMS +SWIMSUIT +SWIMSUITS +SWIMWEAR +SWINDLE +SWINDLED +SWINDLER +SWINDLERS +SWINDLES +SWINDLING +SWINE +SWINEHERD +SWINEHERDS +SWINEPOX +SWINEPOXES +SWING +SWINGBY +SWINGBYS +SWINGE +SWINGED +SWINGEING +SWINGER +SWINGERS +SWINGES +SWINGIER +SWINGIEST +SWINGING +SWINGINGEST +SWINGINGLY +SWINGINGS +SWINGLE +SWINGLED +SWINGLES +SWINGLETREE +SWINGLETREES +SWINGLING +SWINGMAN +SWINGMEN +SWINGS +SWINGY +SWINISH +SWINISHLY +SWINISHNESS +SWINISHNESSES +SWINK +SWINKED +SWINKING +SWINKS +SWINNEY +SWINNEYS +SWIPE +SWIPED +SWIPES +SWIPING +SWIPLE +SWIPLES +SWIPPLE +SWIPPLES +SWIRL +SWIRLED +SWIRLIER +SWIRLIEST +SWIRLING +SWIRLINGLY +SWIRLS +SWIRLY +SWISH +SWISHED +SWISHER +SWISHERS +SWISHES +SWISHIER +SWISHIEST +SWISHING +SWISHINGLY +SWISHY +SWISS +SWISSES +SWITCH +SWITCHABLE +SWITCHBACK +SWITCHBACKED +SWITCHBACKING +SWITCHBACKS +SWITCHBLADE +SWITCHBLADES +SWITCHBOARD +SWITCHBOARDS +SWITCHED +SWITCHER +SWITCHEROO +SWITCHEROOS +SWITCHERS +SWITCHES +SWITCHGRASS +SWITCHGRASSES +SWITCHING +SWITCHMAN +SWITCHMEN +SWITCHYARD +SWITCHYARDS +SWITH +SWITHE +SWITHER +SWITHERED +SWITHERING +SWITHERS +SWITHLY +SWIVE +SWIVED +SWIVEL +SWIVELED +SWIVELING +SWIVELLED +SWIVELLING +SWIVELS +SWIVES +SWIVET +SWIVETS +SWIVING +SWIZZLE +SWIZZLED +SWIZZLER +SWIZZLERS +SWIZZLES +SWIZZLING +SWOB +SWOBBED +SWOBBER +SWOBBERS +SWOBBING +SWOBS +SWOLLEN +SWOON +SWOONED +SWOONER +SWOONERS +SWOONIER +SWOONIEST +SWOONING +SWOONINGLY +SWOONS +SWOONY +SWOOP +SWOOPED +SWOOPER +SWOOPERS +SWOOPIER +SWOOPIEST +SWOOPING +SWOOPS +SWOOPSTAKE +SWOOPY +SWOOSH +SWOOSHED +SWOOSHES +SWOOSHING +SWOP +SWOPPED +SWOPPING +SWOPS +SWORD +SWORDFISH +SWORDFISHES +SWORDLIKE +SWORDMAN +SWORDMEN +SWORDPLAY +SWORDPLAYER +SWORDPLAYERS +SWORDPLAYS +SWORDS +SWORDSMAN +SWORDSMANSHIP +SWORDSMANSHIPS +SWORDSMEN +SWORDTAIL +SWORDTAILS +SWORE +SWORN +SWOT +SWOTS +SWOTTED +SWOTTER +SWOTTERS +SWOTTING +SWOUN +SWOUND +SWOUNDED +SWOUNDING +SWOUNDS +SWOUNED +SWOUNING +SWOUNS +SWUM +SWUNG +SYBARITE +SYBARITES +SYBARITIC +SYBARITICALLY +SYBARITISM +SYBARITISMS +SYBO +SYBOES +SYCAMINE +SYCAMINES +SYCAMORE +SYCAMORES +SYCE +SYCEE +SYCEES +SYCES +SYCOMORE +SYCOMORES +SYCONIA +SYCONIUM +SYCOPHANCIES +SYCOPHANCY +SYCOPHANT +SYCOPHANTIC +SYCOPHANTICALLY +SYCOPHANTISH +SYCOPHANTISHLY +SYCOPHANTISM +SYCOPHANTISMS +SYCOPHANTLY +SYCOPHANTS +SYCOSES +SYCOSIS +SYENITE +SYENITES +SYENITIC +SYKE +SYKES +SYLI +SYLIS +SYLLABARIES +SYLLABARY +SYLLABI +SYLLABIC +SYLLABICALLY +SYLLABICATE +SYLLABICATED +SYLLABICATES +SYLLABICATING +SYLLABICATION +SYLLABICATIONS +SYLLABICITIES +SYLLABICITY +SYLLABICS +SYLLABIFICATION +SYLLABIFIED +SYLLABIFIES +SYLLABIFY +SYLLABIFYING +SYLLABISM +SYLLABISMS +SYLLABIZE +SYLLABIZED +SYLLABIZES +SYLLABIZING +SYLLABLE +SYLLABLED +SYLLABLES +SYLLABLING +SYLLABUB +SYLLABUBS +SYLLABUS +SYLLABUSES +SYLLEPSES +SYLLEPSIS +SYLLEPTIC +SYLLOGISM +SYLLOGISMS +SYLLOGIST +SYLLOGISTIC +SYLLOGISTICALLY +SYLLOGISTS +SYLLOGIZE +SYLLOGIZED +SYLLOGIZES +SYLLOGIZING +SYLPH +SYLPHIC +SYLPHID +SYLPHIDS +SYLPHISH +SYLPHLIKE +SYLPHS +SYLPHY +SYLVA +SYLVAE +SYLVAN +SYLVANITE +SYLVANITES +SYLVANS +SYLVAS +SYLVATIC +SYLVICULTURE +SYLVICULTURES +SYLVIN +SYLVINE +SYLVINES +SYLVINITE +SYLVINITES +SYLVINS +SYLVITE +SYLVITES +SYMBION +SYMBIONS +SYMBIONT +SYMBIONTS +SYMBIOSES +SYMBIOSIS +SYMBIOT +SYMBIOTE +SYMBIOTES +SYMBIOTIC +SYMBIOTICALLY +SYMBIOTS +SYMBOL +SYMBOLED +SYMBOLIC +SYMBOLICAL +SYMBOLICALLY +SYMBOLING +SYMBOLISE +SYMBOLISED +SYMBOLISES +SYMBOLISING +SYMBOLISM +SYMBOLISMS +SYMBOLIST +SYMBOLISTIC +SYMBOLISTS +SYMBOLIZATION +SYMBOLIZATIONS +SYMBOLIZE +SYMBOLIZED +SYMBOLIZER +SYMBOLIZERS +SYMBOLIZES +SYMBOLIZING +SYMBOLLED +SYMBOLLING +SYMBOLOGIES +SYMBOLOGY +SYMBOLS +SYMMETALLISM +SYMMETALLISMS +SYMMETRIC +SYMMETRICAL +SYMMETRICALLY +SYMMETRICALNESS +SYMMETRIES +SYMMETRIZATION +SYMMETRIZATIONS +SYMMETRIZE +SYMMETRIZED +SYMMETRIZES +SYMMETRIZING +SYMMETRY +SYMPATHECTOMIES +SYMPATHECTOMY +SYMPATHETIC +SYMPATHETICALLY +SYMPATHETICS +SYMPATHIES +SYMPATHIN +SYMPATHINS +SYMPATHISE +SYMPATHISED +SYMPATHISES +SYMPATHISING +SYMPATHIZE +SYMPATHIZED +SYMPATHIZER +SYMPATHIZERS +SYMPATHIZES +SYMPATHIZING +SYMPATHOLYTIC +SYMPATHOLYTICS +SYMPATHOMIMETIC +SYMPATHY +SYMPATICO +SYMPATRIC +SYMPATRICALLY +SYMPATRIES +SYMPATRY +SYMPETALIES +SYMPETALOUS +SYMPETALY +SYMPHONIC +SYMPHONICALLY +SYMPHONIES +SYMPHONIOUS +SYMPHONIOUSLY +SYMPHONIST +SYMPHONISTS +SYMPHONY +SYMPHYSEAL +SYMPHYSES +SYMPHYSIAL +SYMPHYSIS +SYMPODIA +SYMPODIAL +SYMPODIUM +SYMPOSIA +SYMPOSIAC +SYMPOSIACS +SYMPOSIARCH +SYMPOSIARCHS +SYMPOSIAST +SYMPOSIASTS +SYMPOSIUM +SYMPOSIUMS +SYMPTOM +SYMPTOMATIC +SYMPTOMATICALLY +SYMPTOMATOLOGIC +SYMPTOMATOLOGY +SYMPTOMLESS +SYMPTOMS +SYN +SYNAERESES +SYNAERESIS +SYNAESTHESES +SYNAESTHESIA +SYNAESTHESIAS +SYNAESTHESIS +SYNAGOG +SYNAGOGAL +SYNAGOGS +SYNAGOGUE +SYNAGOGUES +SYNALEPHA +SYNALEPHAS +SYNALOEPHA +SYNALOEPHAS +SYNANON +SYNANONS +SYNAPSE +SYNAPSED +SYNAPSES +SYNAPSID +SYNAPSIDS +SYNAPSING +SYNAPSIS +SYNAPTIC +SYNAPTICALLY +SYNAPTOSOMAL +SYNAPTOSOME +SYNAPTOSOMES +SYNARTHRODIAL +SYNARTHROSES +SYNARTHROSIS +SYNC +SYNCARP +SYNCARPIES +SYNCARPOUS +SYNCARPS +SYNCARPY +SYNCED +SYNCH +SYNCHED +SYNCHING +SYNCHRO +SYNCHROMESH +SYNCHROMESHES +SYNCHRONAL +SYNCHRONEITIES +SYNCHRONEITY +SYNCHRONIC +SYNCHRONICAL +SYNCHRONICALLY +SYNCHRONICITIES +SYNCHRONICITY +SYNCHRONIES +SYNCHRONISATION +SYNCHRONISE +SYNCHRONISED +SYNCHRONISES +SYNCHRONISING +SYNCHRONISM +SYNCHRONISMS +SYNCHRONISTIC +SYNCHRONIZATION +SYNCHRONIZE +SYNCHRONIZED +SYNCHRONIZER +SYNCHRONIZERS +SYNCHRONIZES +SYNCHRONIZING +SYNCHRONOUS +SYNCHRONOUSLY +SYNCHRONOUSNESS +SYNCHRONY +SYNCHROS +SYNCHROSCOPE +SYNCHROSCOPES +SYNCHROTRON +SYNCHROTRONS +SYNCHS +SYNCING +SYNCLINAL +SYNCLINE +SYNCLINES +SYNCOM +SYNCOMS +SYNCOPAL +SYNCOPATE +SYNCOPATED +SYNCOPATES +SYNCOPATING +SYNCOPATION +SYNCOPATIONS +SYNCOPATIVE +SYNCOPATOR +SYNCOPATORS +SYNCOPE +SYNCOPES +SYNCOPIC +SYNCRETIC +SYNCRETISE +SYNCRETISED +SYNCRETISES +SYNCRETISING +SYNCRETISM +SYNCRETISMS +SYNCRETIST +SYNCRETISTIC +SYNCRETISTS +SYNCRETIZE +SYNCRETIZED +SYNCRETIZES +SYNCRETIZING +SYNCS +SYNCYTIA +SYNCYTIAL +SYNCYTIUM +SYNDACTYL +SYNDACTYLIES +SYNDACTYLISM +SYNDACTYLISMS +SYNDACTYLS +SYNDACTYLY +SYNDESES +SYNDESIS +SYNDESISES +SYNDESMOSES +SYNDESMOSIS +SYNDET +SYNDETIC +SYNDETICALLY +SYNDETS +SYNDIC +SYNDICAL +SYNDICALISM +SYNDICALISMS +SYNDICALIST +SYNDICALISTS +SYNDICATE +SYNDICATED +SYNDICATES +SYNDICATING +SYNDICATION +SYNDICATIONS +SYNDICATOR +SYNDICATORS +SYNDICS +SYNDROME +SYNDROMES +SYNDROMIC +SYNE +SYNECDOCHE +SYNECDOCHES +SYNECDOCHIC +SYNECDOCHICAL +SYNECDOCHICALLY +SYNECOLOGICAL +SYNECOLOGIES +SYNECOLOGY +SYNECTIC +SYNERESES +SYNERESIS +SYNERGETIC +SYNERGIA +SYNERGIAS +SYNERGIC +SYNERGICALLY +SYNERGID +SYNERGIDS +SYNERGIES +SYNERGISM +SYNERGISMS +SYNERGIST +SYNERGISTIC +SYNERGISTICALLY +SYNERGISTS +SYNERGY +SYNESIS +SYNESISES +SYNESTHESIA +SYNESTHESIAS +SYNESTHETIC +SYNFUEL +SYNFUELS +SYNGAMIC +SYNGAMIES +SYNGAMOUS +SYNGAMY +SYNGAS +SYNGASES +SYNGASSES +SYNGENEIC +SYNGENIC +SYNIZESES +SYNIZESIS +SYNKARYA +SYNKARYON +SYNKARYONS +SYNOD +SYNODAL +SYNODIC +SYNODICAL +SYNODS +SYNOICOUS +SYNONYM +SYNONYME +SYNONYMES +SYNONYMIC +SYNONYMICAL +SYNONYMIES +SYNONYMIST +SYNONYMISTS +SYNONYMITIES +SYNONYMITY +SYNONYMIZE +SYNONYMIZED +SYNONYMIZES +SYNONYMIZING +SYNONYMOUS +SYNONYMOUSLY +SYNONYMS +SYNONYMY +SYNOPSES +SYNOPSIS +SYNOPSIZE +SYNOPSIZED +SYNOPSIZES +SYNOPSIZING +SYNOPTIC +SYNOPTICAL +SYNOPTICALLY +SYNOSTOSES +SYNOSTOSIS +SYNOVIA +SYNOVIAL +SYNOVIAS +SYNOVITIS +SYNOVITISES +SYNTACTIC +SYNTACTICAL +SYNTACTICALLY +SYNTACTICS +SYNTAGM +SYNTAGMA +SYNTAGMAS +SYNTAGMATA +SYNTAGMATIC +SYNTAGMS +SYNTAX +SYNTAXES +SYNTH +SYNTHESES +SYNTHESIS +SYNTHESIST +SYNTHESISTS +SYNTHESIZE +SYNTHESIZED +SYNTHESIZER +SYNTHESIZERS +SYNTHESIZES +SYNTHESIZING +SYNTHETASE +SYNTHETASES +SYNTHETIC +SYNTHETICALLY +SYNTHETICS +SYNTHPOP +SYNTHPOPS +SYNTHS +SYNTONIC +SYNTONIES +SYNTONY +SYNURA +SYNURAE +SYPH +SYPHER +SYPHERED +SYPHERING +SYPHERS +SYPHILIS +SYPHILISES +SYPHILITIC +SYPHILITICS +SYPHILOID +SYPHON +SYPHONED +SYPHONING +SYPHONS +SYPHS +SYREN +SYRENS +SYRETTE +SYRETTES +SYRINGA +SYRINGAS +SYRINGE +SYRINGEAL +SYRINGED +SYRINGES +SYRINGING +SYRINGOMYELIA +SYRINGOMYELIAS +SYRINGOMYELIC +SYRINX +SYRINXES +SYRPHIAN +SYRPHIANS +SYRPHID +SYRPHIDS +SYRUP +SYRUPED +SYRUPIER +SYRUPIEST +SYRUPING +SYRUPLIKE +SYRUPS +SYRUPY +SYSADMIN +SYSADMINS +SYSOP +SYSOPS +SYSTALTIC +SYSTEM +SYSTEMATIC +SYSTEMATICALLY +SYSTEMATICNESS +SYSTEMATICS +SYSTEMATISE +SYSTEMATISED +SYSTEMATISES +SYSTEMATISING +SYSTEMATISM +SYSTEMATISMS +SYSTEMATIST +SYSTEMATISTS +SYSTEMATIZATION +SYSTEMATIZE +SYSTEMATIZED +SYSTEMATIZER +SYSTEMATIZERS +SYSTEMATIZES +SYSTEMATIZING +SYSTEMIC +SYSTEMICALLY +SYSTEMICS +SYSTEMIZATION +SYSTEMIZATIONS +SYSTEMIZE +SYSTEMIZED +SYSTEMIZES +SYSTEMIZING +SYSTEMLESS +SYSTEMS +SYSTOLE +SYSTOLES +SYSTOLIC +SYZYGAL +SYZYGETIC +SYZYGIAL +SYZYGIES +SYZYGY +TA +TAB +TABANID +TABANIDS +TABARD +TABARDED +TABARDS +TABARET +TABARETS +TABBED +TABBIED +TABBIES +TABBING +TABBIS +TABBISES +TABBOULEH +TABBOULEHS +TABBY +TABBYING +TABER +TABERED +TABERING +TABERNACLE +TABERNACLED +TABERNACLES +TABERNACLING +TABERNACULAR +TABERS +TABES +TABETIC +TABETICS +TABID +TABLA +TABLAS +TABLATURE +TABLATURES +TABLE +TABLEAU +TABLEAUS +TABLEAUX +TABLECLOTH +TABLECLOTHS +TABLED +TABLEFUL +TABLEFULS +TABLELAND +TABLELANDS +TABLELESS +TABLEMATE +TABLEMATES +TABLES +TABLESFUL +TABLESPOON +TABLESPOONFUL +TABLESPOONFULS +TABLESPOONS +TABLESPOONSFUL +TABLET +TABLETED +TABLETING +TABLETOP +TABLETOPS +TABLETS +TABLETTED +TABLETTING +TABLEWARE +TABLEWARES +TABLING +TABLOID +TABLOIDS +TABOO +TABOOED +TABOOING +TABOOLEY +TABOOLEYS +TABOOS +TABOR +TABORED +TABORER +TABORERS +TABORET +TABORETS +TABORIN +TABORINE +TABORINES +TABORING +TABORINS +TABORS +TABOULEH +TABOULEHS +TABOULI +TABOULIS +TABOUR +TABOURED +TABOURER +TABOURERS +TABOURET +TABOURETS +TABOURING +TABOURS +TABS +TABU +TABUED +TABUING +TABULABLE +TABULAR +TABULARLY +TABULATE +TABULATED +TABULATES +TABULATING +TABULATION +TABULATIONS +TABULATOR +TABULATORS +TABULI +TABULIS +TABUN +TABUNS +TABUS +TACAMAHAC +TACAMAHACS +TACE +TACES +TACET +TACH +TACHE +TACHES +TACHINID +TACHINIDS +TACHISM +TACHISME +TACHISMES +TACHISMS +TACHIST +TACHISTE +TACHISTES +TACHISTOSCOPE +TACHISTOSCOPES +TACHISTOSCOPIC +TACHISTS +TACHOMETER +TACHOMETERS +TACHS +TACHYARRHYTHMIA +TACHYCARDIA +TACHYCARDIAS +TACHYLITE +TACHYLITES +TACHYLYTE +TACHYLYTES +TACHYON +TACHYONIC +TACHYONS +TACIT +TACITLY +TACITNESS +TACITNESSES +TACITURN +TACITURNITIES +TACITURNITY +TACK +TACKBOARD +TACKBOARDS +TACKED +TACKER +TACKERS +TACKET +TACKETS +TACKEY +TACKIER +TACKIEST +TACKIFIED +TACKIFIER +TACKIFIERS +TACKIFIES +TACKIFY +TACKIFYING +TACKILY +TACKINESS +TACKINESSES +TACKING +TACKLE +TACKLED +TACKLER +TACKLERS +TACKLES +TACKLESS +TACKLING +TACKLINGS +TACKS +TACKY +TACNODE +TACNODES +TACO +TACONITE +TACONITES +TACOS +TACRINE +TACRINES +TACT +TACTFUL +TACTFULLY +TACTFULNESS +TACTFULNESSES +TACTIC +TACTICAL +TACTICALLY +TACTICIAN +TACTICIANS +TACTICS +TACTILE +TACTILELY +TACTILITIES +TACTILITY +TACTION +TACTIONS +TACTLESS +TACTLESSLY +TACTLESSNESS +TACTLESSNESSES +TACTS +TACTUAL +TACTUALLY +TAD +TADPOLE +TADPOLES +TADS +TAE +TAEKWONDO +TAEKWONDOS +TAEL +TAELS +TAENIA +TAENIAE +TAENIAS +TAENIASES +TAENIASIS +TAFFAREL +TAFFARELS +TAFFEREL +TAFFERELS +TAFFETA +TAFFETAS +TAFFETIZED +TAFFIA +TAFFIAS +TAFFIES +TAFFRAIL +TAFFRAILS +TAFFY +TAFIA +TAFIAS +TAG +TAGALONG +TAGALONGS +TAGBOARD +TAGBOARDS +TAGGANT +TAGGANTS +TAGGED +TAGGER +TAGGERS +TAGGING +TAGLIATELLE +TAGLIATELLES +TAGLIKE +TAGLINE +TAGLINES +TAGMEME +TAGMEMES +TAGMEMIC +TAGMEMICS +TAGRAG +TAGRAGS +TAGS +TAHINI +TAHINIS +TAHR +TAHRS +TAHSIL +TAHSILDAR +TAHSILDARS +TAHSILS +TAIGA +TAIGAS +TAIGLACH +TAIL +TAILBACK +TAILBACKS +TAILBOARD +TAILBOARDS +TAILBONE +TAILBONES +TAILCOAT +TAILCOATED +TAILCOATS +TAILED +TAILENDER +TAILENDERS +TAILER +TAILERS +TAILFAN +TAILFANS +TAILFIN +TAILFINS +TAILGATE +TAILGATED +TAILGATER +TAILGATERS +TAILGATES +TAILGATING +TAILING +TAILINGS +TAILLAMP +TAILLAMPS +TAILLE +TAILLES +TAILLESS +TAILLEUR +TAILLEURS +TAILLIGHT +TAILLIGHTS +TAILLIKE +TAILOR +TAILORBIRD +TAILORBIRDS +TAILORED +TAILORING +TAILORINGS +TAILORS +TAILPIECE +TAILPIECES +TAILPIPE +TAILPIPES +TAILPLANE +TAILPLANES +TAILRACE +TAILRACES +TAILS +TAILSKID +TAILSKIDS +TAILSLIDE +TAILSLIDES +TAILSPIN +TAILSPINNED +TAILSPINNING +TAILSPINS +TAILSTOCK +TAILSTOCKS +TAILWATER +TAILWATERS +TAILWIND +TAILWINDS +TAIN +TAINS +TAINT +TAINTED +TAINTING +TAINTLESS +TAINTS +TAIPAN +TAIPANS +TAJ +TAJES +TAKA +TAKABLE +TAKAHE +TAKAHES +TAKAS +TAKE +TAKEABLE +TAKEAWAY +TAKEAWAYS +TAKEDOWN +TAKEDOWNS +TAKEN +TAKEOFF +TAKEOFFS +TAKEOUT +TAKEOUTS +TAKEOVER +TAKEOVERS +TAKER +TAKERS +TAKES +TAKEUP +TAKEUPS +TAKIN +TAKING +TAKINGLY +TAKINGS +TAKINS +TALA +TALAPOIN +TALAPOINS +TALAR +TALARIA +TALARS +TALAS +TALC +TALCED +TALCING +TALCKED +TALCKING +TALCKY +TALCOSE +TALCOUS +TALCS +TALCUM +TALCUMS +TALE +TALEBEARER +TALEBEARERS +TALEBEARING +TALEBEARINGS +TALEGGIO +TALEGGIOS +TALENT +TALENTED +TALENTLESS +TALENTS +TALER +TALERS +TALES +TALESMAN +TALESMEN +TALEYSIM +TALI +TALION +TALIONS +TALIPED +TALIPEDS +TALIPES +TALIPOT +TALIPOTS +TALISMAN +TALISMANIC +TALISMANICALLY +TALISMANS +TALK +TALKABLE +TALKATHON +TALKATHONS +TALKATIVE +TALKATIVELY +TALKATIVENESS +TALKATIVENESSES +TALKBACK +TALKBACKS +TALKED +TALKER +TALKERS +TALKIE +TALKIER +TALKIES +TALKIEST +TALKINESS +TALKINESSES +TALKING +TALKINGS +TALKS +TALKY +TALL +TALLAGE +TALLAGED +TALLAGES +TALLAGING +TALLAISIM +TALLBOY +TALLBOYS +TALLER +TALLEST +TALLGRASS +TALLGRASSES +TALLIED +TALLIER +TALLIERS +TALLIES +TALLIS +TALLISES +TALLISH +TALLISIM +TALLIT +TALLITH +TALLITHES +TALLITHIM +TALLITHS +TALLITIM +TALLITOTH +TALLITS +TALLNESS +TALLNESSES +TALLOL +TALLOLS +TALLOW +TALLOWED +TALLOWING +TALLOWS +TALLOWY +TALLS +TALLY +TALLYHO +TALLYHOED +TALLYHOING +TALLYHOS +TALLYING +TALLYMAN +TALLYMEN +TALMUDIC +TALMUDISM +TALMUDISMS +TALON +TALONED +TALONS +TALOOKA +TALOOKAS +TALUK +TALUKA +TALUKAS +TALUKS +TALUS +TALUSES +TAM +TAMABLE +TAMAL +TAMALE +TAMALES +TAMALS +TAMANDU +TAMANDUA +TAMANDUAS +TAMANDUS +TAMARACK +TAMARACKS +TAMARAO +TAMARAOS +TAMARAU +TAMARAUS +TAMARI +TAMARILLO +TAMARILLOS +TAMARIN +TAMARIND +TAMARINDS +TAMARINS +TAMARIS +TAMARISK +TAMARISKS +TAMASHA +TAMASHAS +TAMBAC +TAMBACS +TAMBAK +TAMBAKS +TAMBALA +TAMBALAS +TAMBOUR +TAMBOURA +TAMBOURAS +TAMBOURED +TAMBOURER +TAMBOURERS +TAMBOURIN +TAMBOURINE +TAMBOURINES +TAMBOURING +TAMBOURINS +TAMBOURS +TAMBUR +TAMBURA +TAMBURAS +TAMBURS +TAME +TAMEABLE +TAMED +TAMEIN +TAMEINS +TAMELESS +TAMELY +TAMENESS +TAMENESSES +TAMER +TAMERS +TAMES +TAMEST +TAMING +TAMIS +TAMISES +TAMMIE +TAMMIES +TAMMY +TAMOXIFEN +TAMOXIFENS +TAMP +TAMPALA +TAMPALAS +TAMPAN +TAMPANS +TAMPED +TAMPER +TAMPERED +TAMPERER +TAMPERERS +TAMPERING +TAMPERPROOF +TAMPERS +TAMPING +TAMPION +TAMPIONS +TAMPON +TAMPONED +TAMPONING +TAMPONS +TAMPS +TAMS +TAN +TANAGER +TANAGERS +TANBARK +TANBARKS +TANDEM +TANDEMS +TANDOOR +TANDOORI +TANDOORIS +TANDOORS +TANG +TANGA +TANGED +TANGELO +TANGELOS +TANGENCE +TANGENCES +TANGENCIES +TANGENCY +TANGENT +TANGENTAL +TANGENTIAL +TANGENTIALLY +TANGENTS +TANGERINE +TANGERINES +TANGIBILITIES +TANGIBILITY +TANGIBLE +TANGIBLENESS +TANGIBLENESSES +TANGIBLES +TANGIBLY +TANGIER +TANGIEST +TANGINESS +TANGINESSES +TANGING +TANGLE +TANGLED +TANGLEMENT +TANGLEMENTS +TANGLER +TANGLERS +TANGLES +TANGLIER +TANGLIEST +TANGLING +TANGLY +TANGO +TANGOED +TANGOING +TANGOLIKE +TANGOS +TANGRAM +TANGRAMS +TANGS +TANGY +TANIST +TANISTRIES +TANISTRY +TANISTS +TANK +TANKA +TANKAGE +TANKAGES +TANKARD +TANKARDS +TANKAS +TANKED +TANKER +TANKERS +TANKFUL +TANKFULS +TANKING +TANKINI +TANKINIS +TANKLESS +TANKLIKE +TANKS +TANKSHIP +TANKSHIPS +TANNABLE +TANNAGE +TANNAGES +TANNATE +TANNATES +TANNED +TANNER +TANNERIES +TANNERS +TANNERY +TANNEST +TANNIC +TANNIN +TANNING +TANNINGS +TANNINS +TANNISH +TANNOY +TANNOYS +TANREC +TANRECS +TANS +TANSIES +TANSY +TANTALATE +TANTALATES +TANTALIC +TANTALISE +TANTALISED +TANTALISES +TANTALISING +TANTALITE +TANTALITES +TANTALIZE +TANTALIZED +TANTALIZER +TANTALIZERS +TANTALIZES +TANTALIZING +TANTALIZINGLY +TANTALOUS +TANTALUM +TANTALUMS +TANTALUS +TANTALUSES +TANTAMOUNT +TANTARA +TANTARAS +TANTIVIES +TANTIVY +TANTO +TANTRA +TANTRAS +TANTRIC +TANTRISM +TANTRISMS +TANTRUM +TANTRUMS +TANUKI +TANUKIS +TANYARD +TANYARDS +TANZANITE +TANZANITES +TAO +TAOS +TAP +TAPA +TAPADERA +TAPADERAS +TAPADERO +TAPADEROS +TAPALO +TAPALOS +TAPAS +TAPE +TAPEABLE +TAPED +TAPELESS +TAPELIKE +TAPELINE +TAPELINES +TAPENADE +TAPENADES +TAPER +TAPERED +TAPERER +TAPERERS +TAPERING +TAPERS +TAPERSTICK +TAPERSTICKS +TAPES +TAPESTRIED +TAPESTRIES +TAPESTRY +TAPESTRYING +TAPETA +TAPETAL +TAPETUM +TAPEWORM +TAPEWORMS +TAPHOLE +TAPHOLES +TAPHONOMIC +TAPHONOMIES +TAPHONOMIST +TAPHONOMISTS +TAPHONOMY +TAPHOUSE +TAPHOUSES +TAPING +TAPIOCA +TAPIOCAS +TAPIR +TAPIRS +TAPIS +TAPISES +TAPPABLE +TAPPED +TAPPER +TAPPERS +TAPPET +TAPPETS +TAPPING +TAPPINGS +TAPROOM +TAPROOMS +TAPROOT +TAPROOTS +TAPS +TAPSTER +TAPSTERS +TAQUERIA +TAQUERIAS +TAR +TARADIDDLE +TARADIDDLES +TARAMA +TARAMAS +TARANTAS +TARANTASES +TARANTELLA +TARANTELLAS +TARANTISM +TARANTISMS +TARANTIST +TARANTISTS +TARANTULA +TARANTULAE +TARANTULAS +TARBOOSH +TARBOOSHES +TARBUSH +TARBUSHES +TARDIER +TARDIES +TARDIEST +TARDIGRADE +TARDIGRADES +TARDILY +TARDINESS +TARDINESSES +TARDIVE +TARDO +TARDY +TARDYON +TARDYONS +TARE +TARED +TARES +TARGE +TARGES +TARGET +TARGETABLE +TARGETED +TARGETING +TARGETS +TARIFF +TARIFFED +TARIFFING +TARIFFS +TARING +TARLATAN +TARLATANS +TARLETAN +TARLETANS +TARMAC +TARMACADAM +TARMACADAMS +TARMACKED +TARMACKING +TARMACS +TARN +TARNAL +TARNALLY +TARNATION +TARNATIONS +TARNISH +TARNISHABLE +TARNISHED +TARNISHES +TARNISHING +TARNS +TARO +TAROC +TAROCS +TAROK +TAROKS +TAROS +TAROT +TAROTS +TARP +TARPAN +TARPANS +TARPAPER +TARPAPERS +TARPAULIN +TARPAULINS +TARPON +TARPONS +TARPS +TARRADIDDLE +TARRADIDDLES +TARRAGON +TARRAGONS +TARRE +TARRED +TARRES +TARRIANCE +TARRIANCES +TARRIED +TARRIER +TARRIERS +TARRIES +TARRIEST +TARRINESS +TARRINESSES +TARRING +TARRY +TARRYING +TARS +TARSAL +TARSALS +TARSI +TARSIA +TARSIAS +TARSIER +TARSIERS +TARSOMETATARSI +TARSOMETATARSUS +TARSUS +TART +TARTAN +TARTANA +TARTANAS +TARTANS +TARTAR +TARTARE +TARTARIC +TARTAROUS +TARTARS +TARTED +TARTER +TARTEST +TARTIER +TARTIEST +TARTILY +TARTINESS +TARTINESSES +TARTING +TARTISH +TARTLET +TARTLETS +TARTLY +TARTNESS +TARTNESSES +TARTRATE +TARTRATED +TARTRATES +TARTS +TARTUFE +TARTUFES +TARTUFFE +TARTUFFES +TARTY +TARWEED +TARWEEDS +TARZAN +TARZANS +TAS +TASK +TASKBAR +TASKBARS +TASKED +TASKING +TASKMASTER +TASKMASTERS +TASKMISTRESS +TASKMISTRESSES +TASKS +TASKWORK +TASKWORKS +TASS +TASSE +TASSEL +TASSELED +TASSELING +TASSELLED +TASSELLING +TASSELS +TASSES +TASSET +TASSETS +TASSIE +TASSIES +TASTABLE +TASTE +TASTEABLE +TASTED +TASTEFUL +TASTEFULLY +TASTEFULNESS +TASTEFULNESSES +TASTELESS +TASTELESSLY +TASTELESSNESS +TASTELESSNESSES +TASTEMAKER +TASTEMAKERS +TASTER +TASTERS +TASTES +TASTIER +TASTIEST +TASTILY +TASTINESS +TASTINESSES +TASTING +TASTY +TAT +TATAMI +TATAMIS +TATAR +TATARS +TATE +TATER +TATERS +TATES +TATOUAY +TATOUAYS +TATS +TATSOI +TATSOIS +TATTED +TATTER +TATTERDEMALION +TATTERDEMALIONS +TATTERED +TATTERING +TATTERS +TATTERSALL +TATTERSALLS +TATTIE +TATTIER +TATTIES +TATTIEST +TATTILY +TATTINESS +TATTINESSES +TATTING +TATTINGS +TATTLE +TATTLED +TATTLER +TATTLERS +TATTLES +TATTLETALE +TATTLETALES +TATTLING +TATTOO +TATTOOED +TATTOOER +TATTOOERS +TATTOOING +TATTOOIST +TATTOOISTS +TATTOOS +TATTY +TAU +TAUGHT +TAUNT +TAUNTED +TAUNTER +TAUNTERS +TAUNTING +TAUNTINGLY +TAUNTS +TAUON +TAUONS +TAUPE +TAUPES +TAURINE +TAURINES +TAUS +TAUT +TAUTAUG +TAUTAUGS +TAUTED +TAUTEN +TAUTENED +TAUTENING +TAUTENS +TAUTER +TAUTEST +TAUTING +TAUTLY +TAUTNESS +TAUTNESSES +TAUTOG +TAUTOGS +TAUTOLOGICAL +TAUTOLOGICALLY +TAUTOLOGIES +TAUTOLOGOUS +TAUTOLOGOUSLY +TAUTOLOGY +TAUTOMER +TAUTOMERIC +TAUTOMERISM +TAUTOMERISMS +TAUTOMERS +TAUTONYM +TAUTONYMIES +TAUTONYMS +TAUTONYMY +TAUTS +TAV +TAVERN +TAVERNA +TAVERNAS +TAVERNER +TAVERNERS +TAVERNS +TAVS +TAW +TAWDRIER +TAWDRIES +TAWDRIEST +TAWDRILY +TAWDRINESS +TAWDRINESSES +TAWDRY +TAWED +TAWER +TAWERS +TAWIE +TAWING +TAWNEY +TAWNEYS +TAWNIER +TAWNIES +TAWNIEST +TAWNILY +TAWNINESS +TAWNINESSES +TAWNY +TAWPIE +TAWPIES +TAWS +TAWSE +TAWSED +TAWSES +TAWSING +TAX +TAXA +TAXABLE +TAXABLES +TAXABLY +TAXATION +TAXATIONS +TAXED +TAXEME +TAXEMES +TAXEMIC +TAXER +TAXERS +TAXES +TAXI +TAXICAB +TAXICABS +TAXIDERMIC +TAXIDERMIES +TAXIDERMIST +TAXIDERMISTS +TAXIDERMY +TAXIED +TAXIES +TAXIING +TAXIMAN +TAXIMEN +TAXIMETER +TAXIMETERS +TAXING +TAXINGLY +TAXIS +TAXITE +TAXITES +TAXITIC +TAXIWAY +TAXIWAYS +TAXLESS +TAXMAN +TAXMEN +TAXOL +TAXOLS +TAXON +TAXONOMIC +TAXONOMICALLY +TAXONOMIES +TAXONOMIST +TAXONOMISTS +TAXONOMY +TAXONS +TAXPAID +TAXPAYER +TAXPAYERS +TAXPAYING +TAXPAYINGS +TAXUS +TAXWISE +TAXYING +TAZZA +TAZZAS +TAZZE +TCHOTCHKE +TCHOTCHKES +TEA +TEABERRIES +TEABERRY +TEABOARD +TEABOARDS +TEABOWL +TEABOWLS +TEABOX +TEABOXES +TEACAKE +TEACAKES +TEACART +TEACARTS +TEACH +TEACHABLE +TEACHABLENESS +TEACHABLENESSES +TEACHABLY +TEACHER +TEACHERLY +TEACHERS +TEACHES +TEACHING +TEACHINGS +TEACUP +TEACUPFUL +TEACUPFULS +TEACUPS +TEACUPSFUL +TEAHOUSE +TEAHOUSES +TEAK +TEAKETTLE +TEAKETTLES +TEAKS +TEAKWOOD +TEAKWOODS +TEAL +TEALIKE +TEALS +TEAM +TEAMAKER +TEAMAKERS +TEAMED +TEAMING +TEAMMATE +TEAMMATES +TEAMS +TEAMSTER +TEAMSTERS +TEAMWORK +TEAMWORKS +TEAPOT +TEAPOTS +TEAPOY +TEAPOYS +TEAR +TEARABLE +TEARAWAY +TEARAWAYS +TEARDOWN +TEARDOWNS +TEARDROP +TEARDROPS +TEARED +TEARER +TEARERS +TEARFUL +TEARFULLY +TEARFULNESS +TEARFULNESSES +TEARGAS +TEARGASES +TEARGASSED +TEARGASSES +TEARGASSING +TEARIER +TEARIEST +TEARILY +TEARINESS +TEARINESSES +TEARING +TEARJERKER +TEARJERKERS +TEARLESS +TEAROOM +TEAROOMS +TEARS +TEARSTAIN +TEARSTAINED +TEARSTAINS +TEARSTRIP +TEARSTRIPS +TEARY +TEAS +TEASABLE +TEASE +TEASED +TEASEL +TEASELED +TEASELER +TEASELERS +TEASELING +TEASELLED +TEASELLER +TEASELLERS +TEASELLING +TEASELS +TEASER +TEASERS +TEASES +TEASHOP +TEASHOPS +TEASING +TEASINGLY +TEASPOON +TEASPOONFUL +TEASPOONFULS +TEASPOONS +TEASPOONSFUL +TEAT +TEATASTER +TEATASTERS +TEATED +TEATIME +TEATIMES +TEATS +TEAWARE +TEAWARES +TEAZEL +TEAZELED +TEAZELING +TEAZELLED +TEAZELLING +TEAZELS +TEAZLE +TEAZLED +TEAZLES +TEAZLING +TECH +TECHED +TECHIE +TECHIER +TECHIES +TECHIEST +TECHILY +TECHNETIUM +TECHNETIUMS +TECHNETRONIC +TECHNIC +TECHNICAL +TECHNICALITIES +TECHNICALITY +TECHNICALIZE +TECHNICALIZED +TECHNICALIZES +TECHNICALIZING +TECHNICALLY +TECHNICALS +TECHNICIAN +TECHNICIANS +TECHNICS +TECHNIQUE +TECHNIQUES +TECHNO +TECHNOBABBLE +TECHNOBABBLES +TECHNOCRACIES +TECHNOCRACY +TECHNOCRAT +TECHNOCRATIC +TECHNOCRATS +TECHNOLOGIC +TECHNOLOGICAL +TECHNOLOGICALLY +TECHNOLOGIES +TECHNOLOGIST +TECHNOLOGISTS +TECHNOLOGIZE +TECHNOLOGIZED +TECHNOLOGIZES +TECHNOLOGIZING +TECHNOLOGY +TECHNOPHILE +TECHNOPHILES +TECHNOPHOBE +TECHNOPHOBES +TECHNOPHOBIA +TECHNOPHOBIAS +TECHNOPHOBIC +TECHNOPOP +TECHNOPOPS +TECHNOS +TECHNOSTRUCTURE +TECHS +TECHY +TECTA +TECTAL +TECTITE +TECTITES +TECTONIC +TECTONICALLY +TECTONICS +TECTONISM +TECTONISMS +TECTORIAL +TECTRICES +TECTRIX +TECTUM +TECTUMS +TED +TEDDED +TEDDER +TEDDERED +TEDDERING +TEDDERS +TEDDIES +TEDDING +TEDDY +TEDIOUS +TEDIOUSLY +TEDIOUSNESS +TEDIOUSNESSES +TEDIUM +TEDIUMS +TEDS +TEE +TEED +TEEING +TEEL +TEELS +TEEM +TEEMED +TEEMER +TEEMERS +TEEMING +TEEMINGLY +TEEMINGNESS +TEEMINGNESSES +TEEMS +TEEN +TEENAGE +TEENAGED +TEENAGER +TEENAGERS +TEENER +TEENERS +TEENFUL +TEENIER +TEENIEST +TEENS +TEENSIER +TEENSIEST +TEENSY +TEENTSIER +TEENTSIEST +TEENTSY +TEENY +TEENYBOP +TEENYBOPPER +TEENYBOPPERS +TEEPEE +TEEPEES +TEES +TEETER +TEETERBOARD +TEETERBOARDS +TEETERED +TEETERING +TEETERS +TEETH +TEETHE +TEETHED +TEETHER +TEETHERS +TEETHES +TEETHING +TEETHINGS +TEETHLESS +TEETHRIDGE +TEETHRIDGES +TEETOTAL +TEETOTALED +TEETOTALER +TEETOTALERS +TEETOTALING +TEETOTALISM +TEETOTALISMS +TEETOTALIST +TEETOTALISTS +TEETOTALLED +TEETOTALLER +TEETOTALLERS +TEETOTALLING +TEETOTALLY +TEETOTALS +TEETOTUM +TEETOTUMS +TEFF +TEFFS +TEFILLIN +TEFLON +TEFLONS +TEG +TEGG +TEGGS +TEGMEN +TEGMENTA +TEGMENTAL +TEGMENTUM +TEGMINA +TEGMINAL +TEGS +TEGUA +TEGUAS +TEGULAR +TEGULARLY +TEGULATED +TEGUMEN +TEGUMENT +TEGUMENTS +TEGUMINA +TEIGLACH +TEIID +TEIIDS +TEIND +TEINDS +TEKKIE +TEKKIES +TEKTITE +TEKTITES +TEKTITIC +TEL +TELA +TELAE +TELAMON +TELAMONES +TELANGIECTASES +TELANGIECTASIA +TELANGIECTASIAS +TELANGIECTASIS +TELANGIECTATIC +TELCO +TELCOS +TELE +TELECAST +TELECASTED +TELECASTER +TELECASTERS +TELECASTING +TELECASTS +TELECOM +TELECOMMUTE +TELECOMMUTED +TELECOMMUTER +TELECOMMUTERS +TELECOMMUTES +TELECOMMUTING +TELECOMS +TELECONFERENCE +TELECONFERENCES +TELECOURSE +TELECOURSES +TELEDU +TELEDUS +TELEFACSIMILE +TELEFACSIMILES +TELEFAX +TELEFAXES +TELEFILM +TELEFILMS +TELEGA +TELEGAS +TELEGENIC +TELEGONIC +TELEGONIES +TELEGONY +TELEGRAM +TELEGRAMMED +TELEGRAMMING +TELEGRAMS +TELEGRAPH +TELEGRAPHED +TELEGRAPHER +TELEGRAPHERS +TELEGRAPHESE +TELEGRAPHESES +TELEGRAPHIC +TELEGRAPHICALLY +TELEGRAPHIES +TELEGRAPHING +TELEGRAPHIST +TELEGRAPHISTS +TELEGRAPHS +TELEGRAPHY +TELEKINESES +TELEKINESIS +TELEKINETIC +TELEKINETICALLY +TELEMAN +TELEMARK +TELEMARKETER +TELEMARKETERS +TELEMARKETING +TELEMARKETINGS +TELEMARKS +TELEMEN +TELEMETER +TELEMETERED +TELEMETERING +TELEMETERS +TELEMETRIC +TELEMETRICALLY +TELEMETRIES +TELEMETRY +TELENCEPHALA +TELENCEPHALIC +TELENCEPHALON +TELEOLOGIC +TELEOLOGICAL +TELEOLOGICALLY +TELEOLOGIES +TELEOLOGIST +TELEOLOGISTS +TELEOLOGY +TELEONOMIC +TELEONOMIES +TELEONOMY +TELEOST +TELEOSTEAN +TELEOSTS +TELEPATH +TELEPATHIC +TELEPATHICALLY +TELEPATHIES +TELEPATHS +TELEPATHY +TELEPHONE +TELEPHONED +TELEPHONER +TELEPHONERS +TELEPHONES +TELEPHONIC +TELEPHONICALLY +TELEPHONIES +TELEPHONING +TELEPHONIST +TELEPHONISTS +TELEPHONY +TELEPHOTO +TELEPHOTOGRAPHY +TELEPHOTOS +TELEPLAY +TELEPLAYS +TELEPORT +TELEPORTATION +TELEPORTATIONS +TELEPORTED +TELEPORTING +TELEPORTS +TELEPRINTER +TELEPRINTERS +TELEPROCESSING +TELEPROCESSINGS +TELERAN +TELERANS +TELES +TELESCOPE +TELESCOPED +TELESCOPES +TELESCOPIC +TELESCOPICALLY +TELESCOPIES +TELESCOPING +TELESCOPY +TELESES +TELESHOP +TELESHOPPED +TELESHOPPING +TELESHOPS +TELESIS +TELESTIC +TELESTICH +TELESTICHS +TELESTICS +TELETEXT +TELETEXTS +TELETHON +TELETHONS +TELETYPE +TELETYPED +TELETYPES +TELETYPEWRITER +TELETYPEWRITERS +TELETYPING +TELEUTOSPORE +TELEUTOSPORES +TELEVANGELISM +TELEVANGELISMS +TELEVANGELIST +TELEVANGELISTS +TELEVIEW +TELEVIEWED +TELEVIEWER +TELEVIEWERS +TELEVIEWING +TELEVIEWS +TELEVISE +TELEVISED +TELEVISES +TELEVISING +TELEVISION +TELEVISIONS +TELEVISOR +TELEVISORS +TELEVISUAL +TELEX +TELEXED +TELEXES +TELEXING +TELFER +TELFERED +TELFERING +TELFERS +TELFORD +TELFORDS +TELIA +TELIAL +TELIC +TELICALLY +TELIOSPORE +TELIOSPORES +TELIUM +TELL +TELLABLE +TELLER +TELLERS +TELLIES +TELLING +TELLINGLY +TELLS +TELLTALE +TELLTALES +TELLURIAN +TELLURIANS +TELLURIC +TELLURIDE +TELLURIDES +TELLURION +TELLURIONS +TELLURITE +TELLURITES +TELLURIUM +TELLURIUMS +TELLURIZE +TELLURIZED +TELLURIZES +TELLURIZING +TELLUROMETER +TELLUROMETERS +TELLUROUS +TELLY +TELLYS +TELNET +TELNETED +TELNETING +TELNETS +TELNETTED +TELNETTING +TELOCENTRIC +TELOCENTRICS +TELOI +TELOME +TELOMERE +TELOMERES +TELOMES +TELOMIC +TELOPHASE +TELOPHASES +TELOS +TELOTAXES +TELOTAXIS +TELPHER +TELPHERED +TELPHERING +TELPHERS +TELS +TELSON +TELSONIC +TELSONS +TEMBLOR +TEMBLORES +TEMBLORS +TEMERARIOUS +TEMERARIOUSLY +TEMERARIOUSNESS +TEMERITIES +TEMERITY +TEMP +TEMPED +TEMPEH +TEMPEHS +TEMPER +TEMPERA +TEMPERABLE +TEMPERAMENT +TEMPERAMENTAL +TEMPERAMENTALLY +TEMPERAMENTS +TEMPERANCE +TEMPERANCES +TEMPERAS +TEMPERATE +TEMPERATELY +TEMPERATENESS +TEMPERATENESSES +TEMPERATURE +TEMPERATURES +TEMPERED +TEMPERER +TEMPERERS +TEMPERING +TEMPERS +TEMPEST +TEMPESTED +TEMPESTING +TEMPESTS +TEMPESTUOUS +TEMPESTUOUSLY +TEMPESTUOUSNESS +TEMPI +TEMPING +TEMPLAR +TEMPLARS +TEMPLATE +TEMPLATES +TEMPLE +TEMPLED +TEMPLES +TEMPLET +TEMPLETS +TEMPO +TEMPORAL +TEMPORALITIES +TEMPORALITY +TEMPORALIZE +TEMPORALIZED +TEMPORALIZES +TEMPORALIZING +TEMPORALLY +TEMPORALS +TEMPORARIES +TEMPORARILY +TEMPORARINESS +TEMPORARINESSES +TEMPORARY +TEMPORISE +TEMPORISED +TEMPORISES +TEMPORISING +TEMPORIZATION +TEMPORIZATIONS +TEMPORIZE +TEMPORIZED +TEMPORIZER +TEMPORIZERS +TEMPORIZES +TEMPORIZING +TEMPOS +TEMPS +TEMPT +TEMPTABLE +TEMPTATION +TEMPTATIONS +TEMPTED +TEMPTER +TEMPTERS +TEMPTING +TEMPTINGLY +TEMPTRESS +TEMPTRESSES +TEMPTS +TEMPURA +TEMPURAS +TEN +TENABILITIES +TENABILITY +TENABLE +TENABLENESS +TENABLENESSES +TENABLY +TENACE +TENACES +TENACIOUS +TENACIOUSLY +TENACIOUSNESS +TENACIOUSNESSES +TENACITIES +TENACITY +TENACULA +TENACULUM +TENACULUMS +TENAIL +TENAILLE +TENAILLES +TENAILS +TENANCIES +TENANCY +TENANT +TENANTABLE +TENANTED +TENANTING +TENANTLESS +TENANTRIES +TENANTRY +TENANTS +TENCH +TENCHES +TEND +TENDANCE +TENDANCES +TENDED +TENDENCE +TENDENCES +TENDENCIES +TENDENCIOUS +TENDENCY +TENDENTIOUS +TENDENTIOUSLY +TENDENTIOUSNESS +TENDER +TENDERED +TENDERER +TENDERERS +TENDEREST +TENDERFEET +TENDERFOOT +TENDERFOOTS +TENDERHEARTED +TENDERHEARTEDLY +TENDERING +TENDERIZATION +TENDERIZATIONS +TENDERIZE +TENDERIZED +TENDERIZER +TENDERIZERS +TENDERIZES +TENDERIZING +TENDERLOIN +TENDERLOINS +TENDERLY +TENDERNESS +TENDERNESSES +TENDEROMETER +TENDEROMETERS +TENDERS +TENDING +TENDINITIS +TENDINITISES +TENDINOUS +TENDON +TENDONITIS +TENDONITISES +TENDONS +TENDRESSE +TENDRESSES +TENDRIL +TENDRILED +TENDRILLED +TENDRILOUS +TENDRILS +TENDS +TENDU +TENDUS +TENEBRAE +TENEBRIFIC +TENEBRIONID +TENEBRIONIDS +TENEBRIOUS +TENEBRISM +TENEBRISMS +TENEBRIST +TENEBRISTS +TENEBROUS +TENEMENT +TENEMENTS +TENESMIC +TENESMUS +TENESMUSES +TENET +TENETS +TENFOLD +TENFOLDS +TENGE +TENIA +TENIAE +TENIAS +TENIASES +TENIASIS +TENNER +TENNERS +TENNIES +TENNIS +TENNISES +TENNIST +TENNISTS +TENON +TENONED +TENONER +TENONERS +TENONING +TENONS +TENOR +TENORIST +TENORISTS +TENORITE +TENORITES +TENORS +TENOSYNOVITIS +TENOSYNOVITISES +TENOTOMIES +TENOTOMY +TENOUR +TENOURS +TENPENCE +TENPENCES +TENPENNY +TENPIN +TENPINS +TENPOUNDER +TENPOUNDERS +TENREC +TENRECS +TENS +TENSE +TENSED +TENSELY +TENSENESS +TENSENESSES +TENSER +TENSES +TENSEST +TENSIBLE +TENSIBLY +TENSILE +TENSILELY +TENSILITIES +TENSILITY +TENSING +TENSIOMETER +TENSIOMETERS +TENSIOMETRIC +TENSIOMETRIES +TENSIOMETRY +TENSION +TENSIONAL +TENSIONED +TENSIONER +TENSIONERS +TENSIONING +TENSIONLESS +TENSIONS +TENSITIES +TENSITY +TENSIVE +TENSOR +TENSORIAL +TENSORS +TENT +TENTACLE +TENTACLED +TENTACLES +TENTACULAR +TENTAGE +TENTAGES +TENTATIVE +TENTATIVELY +TENTATIVENESS +TENTATIVENESSES +TENTATIVES +TENTED +TENTER +TENTERED +TENTERHOOK +TENTERHOOKS +TENTERING +TENTERS +TENTH +TENTHLY +TENTHS +TENTIE +TENTIER +TENTIEST +TENTING +TENTLESS +TENTLIKE +TENTMAKER +TENTMAKERS +TENTORIA +TENTORIAL +TENTORIUM +TENTS +TENTY +TENUES +TENUIS +TENUITIES +TENUITY +TENUOUS +TENUOUSLY +TENUOUSNESS +TENUOUSNESSES +TENURABLE +TENURE +TENURED +TENURES +TENURIAL +TENURIALLY +TENURING +TENUTI +TENUTO +TENUTOS +TEOCALLI +TEOCALLIS +TEOPAN +TEOPANS +TEOSINTE +TEOSINTES +TEPA +TEPAL +TEPALS +TEPAS +TEPEE +TEPEES +TEPEFIED +TEPEFIES +TEPEFY +TEPEFYING +TEPHRA +TEPHRAS +TEPHRITE +TEPHRITES +TEPHRITIC +TEPID +TEPIDITIES +TEPIDITY +TEPIDLY +TEPIDNESS +TEPIDNESSES +TEPOY +TEPOYS +TEQUILA +TEQUILAS +TERABYTE +TERABYTES +TERAFLOP +TERAFLOPS +TERAHERTZ +TERAHERTZES +TERAI +TERAIS +TERAOHM +TERAOHMS +TERAPH +TERAPHIM +TERATISM +TERATISMS +TERATOCARCINOMA +TERATOGEN +TERATOGENESES +TERATOGENESIS +TERATOGENIC +TERATOGENICITY +TERATOGENS +TERATOID +TERATOLOGIC +TERATOLOGICAL +TERATOLOGIES +TERATOLOGIST +TERATOLOGISTS +TERATOLOGY +TERATOMA +TERATOMAS +TERATOMATA +TERAWATT +TERAWATTS +TERBIA +TERBIAS +TERBIC +TERBIUM +TERBIUMS +TERCE +TERCEL +TERCELET +TERCELETS +TERCELS +TERCENTENARIES +TERCENTENARY +TERCENTENNIAL +TERCENTENNIALS +TERCES +TERCET +TERCETS +TEREBENE +TEREBENES +TEREBIC +TEREBINTH +TEREBINTHS +TEREDINES +TEREDO +TEREDOS +TEREFAH +TEREPHTHALATE +TEREPHTHALATES +TERETE +TERGA +TERGAL +TERGITE +TERGITES +TERGIVERSATE +TERGIVERSATED +TERGIVERSATES +TERGIVERSATING +TERGIVERSATION +TERGIVERSATIONS +TERGIVERSATOR +TERGIVERSATORS +TERGUM +TERIYAKI +TERIYAKIS +TERM +TERMAGANT +TERMAGANTS +TERMED +TERMER +TERMERS +TERMINABLE +TERMINABLENESS +TERMINABLY +TERMINAL +TERMINALLY +TERMINALS +TERMINATE +TERMINATED +TERMINATES +TERMINATING +TERMINATION +TERMINATIONAL +TERMINATIONS +TERMINATIVE +TERMINATIVELY +TERMINATOR +TERMINATORS +TERMING +TERMINI +TERMINOLOGICAL +TERMINOLOGIES +TERMINOLOGY +TERMINUS +TERMINUSES +TERMITARIA +TERMITARIES +TERMITARIUM +TERMITARY +TERMITE +TERMITES +TERMITIC +TERMLESS +TERMLY +TERMOR +TERMORS +TERMS +TERMTIME +TERMTIMES +TERN +TERNARIES +TERNARY +TERNATE +TERNATELY +TERNE +TERNEPLATE +TERNEPLATES +TERNES +TERNION +TERNIONS +TERNS +TERPENE +TERPENELESS +TERPENES +TERPENIC +TERPENOID +TERPENOIDS +TERPINEOL +TERPINEOLS +TERPINOL +TERPINOLS +TERPOLYMER +TERPOLYMERS +TERPSICHOREAN +TERRA +TERRACE +TERRACED +TERRACES +TERRACING +TERRAE +TERRAFORM +TERRAFORMED +TERRAFORMING +TERRAFORMS +TERRAIN +TERRAINS +TERRANE +TERRANES +TERRAPIN +TERRAPINS +TERRAQUEOUS +TERRARIA +TERRARIUM +TERRARIUMS +TERRAS +TERRASES +TERRAZZO +TERRAZZOS +TERREEN +TERREENS +TERRELLA +TERRELLAS +TERRENE +TERRENELY +TERRENES +TERREPLEIN +TERREPLEINS +TERRESTRIAL +TERRESTRIALLY +TERRESTRIALS +TERRET +TERRETS +TERRIBLE +TERRIBLENESS +TERRIBLENESSES +TERRIBLY +TERRICOLOUS +TERRIER +TERRIERS +TERRIES +TERRIFIC +TERRIFICALLY +TERRIFIED +TERRIFIER +TERRIFIERS +TERRIFIES +TERRIFY +TERRIFYING +TERRIFYINGLY +TERRIGENOUS +TERRINE +TERRINES +TERRIT +TERRITORIAL +TERRITORIALISM +TERRITORIALISMS +TERRITORIALIST +TERRITORIALISTS +TERRITORIALITY +TERRITORIALIZE +TERRITORIALIZED +TERRITORIALIZES +TERRITORIALLY +TERRITORIALS +TERRITORIES +TERRITORY +TERRITS +TERROR +TERRORISE +TERRORISED +TERRORISES +TERRORISING +TERRORISM +TERRORISMS +TERRORIST +TERRORISTIC +TERRORISTS +TERRORIZATION +TERRORIZATIONS +TERRORIZE +TERRORIZED +TERRORIZES +TERRORIZING +TERRORLESS +TERRORS +TERRY +TERSE +TERSELY +TERSENESS +TERSENESSES +TERSER +TERSEST +TERTIAL +TERTIALS +TERTIAN +TERTIANS +TERTIARIES +TERTIARY +TERVALENT +TERYLENE +TERYLENES +TESLA +TESLAS +TESSELATE +TESSELATED +TESSELATES +TESSELATING +TESSELLATE +TESSELLATED +TESSELLATES +TESSELLATING +TESSELLATION +TESSELLATIONS +TESSERA +TESSERACT +TESSERACTS +TESSERAE +TESSITURA +TESSITURAS +TESSITURE +TEST +TESTA +TESTABILITIES +TESTABILITY +TESTABLE +TESTACEAN +TESTACEANS +TESTACEOUS +TESTACIES +TESTACY +TESTAE +TESTAMENT +TESTAMENTARY +TESTAMENTS +TESTATE +TESTATES +TESTATOR +TESTATORS +TESTATRICES +TESTATRIX +TESTATRIXES +TESTCROSS +TESTCROSSED +TESTCROSSES +TESTCROSSING +TESTED +TESTEE +TESTEES +TESTER +TESTERS +TESTES +TESTICLE +TESTICLES +TESTICULAR +TESTIER +TESTIEST +TESTIFIED +TESTIFIER +TESTIFIERS +TESTIFIES +TESTIFY +TESTIFYING +TESTILY +TESTIMONIAL +TESTIMONIALS +TESTIMONIES +TESTIMONY +TESTINESS +TESTINESSES +TESTING +TESTIS +TESTON +TESTONS +TESTOON +TESTOONS +TESTOSTERONE +TESTOSTERONES +TESTS +TESTUDINES +TESTUDO +TESTUDOS +TESTY +TET +TETANAL +TETANIC +TETANICAL +TETANICALLY +TETANICS +TETANIES +TETANISE +TETANISED +TETANISES +TETANISING +TETANIZATION +TETANIZATIONS +TETANIZE +TETANIZED +TETANIZES +TETANIZING +TETANOID +TETANUS +TETANUSES +TETANY +TETARTOHEDRAL +TETCHED +TETCHIER +TETCHIEST +TETCHILY +TETCHINESS +TETCHINESSES +TETCHY +TETH +TETHER +TETHERBALL +TETHERBALLS +TETHERED +TETHERING +TETHERS +TETHS +TETOTUM +TETOTUMS +TETRA +TETRACAINE +TETRACAINES +TETRACHLORIDE +TETRACHLORIDES +TETRACHORD +TETRACHORDS +TETRACID +TETRACIDS +TETRACYCLINE +TETRACYCLINES +TETRAD +TETRADIC +TETRADRACHM +TETRADRACHMS +TETRADS +TETRADYNAMOUS +TETRAFLUORIDE +TETRAFLUORIDES +TETRAGON +TETRAGONAL +TETRAGONALLY +TETRAGONS +TETRAGRAM +TETRAGRAMMATON +TETRAGRAMMATONS +TETRAGRAMS +TETRAHEDRA +TETRAHEDRAL +TETRAHEDRALLY +TETRAHEDRITE +TETRAHEDRITES +TETRAHEDRON +TETRAHEDRONS +TETRAHYDROFURAN +TETRAHYMENA +TETRAHYMENAS +TETRALOGIES +TETRALOGY +TETRAMER +TETRAMERIC +TETRAMEROUS +TETRAMERS +TETRAMETER +TETRAMETERS +TETRAMETHYLLEAD +TETRAPLOID +TETRAPLOIDIES +TETRAPLOIDS +TETRAPLOIDY +TETRAPOD +TETRAPODS +TETRAPYRROLE +TETRAPYRROLES +TETRARCH +TETRARCHIC +TETRARCHIES +TETRARCHS +TETRARCHY +TETRAS +TETRASPORE +TETRASPORES +TETRASPORIC +TETRAVALENT +TETRAZOLIUM +TETRAZOLIUMS +TETRAZZINI +TETRI +TETRIS +TETRODE +TETRODES +TETRODOTOXIN +TETRODOTOXINS +TETROXID +TETROXIDE +TETROXIDES +TETROXIDS +TETRYL +TETRYLS +TETS +TETTER +TETTERS +TEUCH +TEUGH +TEUGHLY +TEUTONIZE +TEUTONIZED +TEUTONIZES +TEUTONIZING +TEVATRON +TEVATRONS +TEW +TEWED +TEWING +TEWS +TEXAS +TEXASES +TEXT +TEXTBOOK +TEXTBOOKISH +TEXTBOOKS +TEXTILE +TEXTILES +TEXTLESS +TEXTS +TEXTUAL +TEXTUALLY +TEXTUARIES +TEXTUARY +TEXTURAL +TEXTURALLY +TEXTURE +TEXTURED +TEXTURELESS +TEXTURES +TEXTURING +TEXTURIZE +TEXTURIZED +TEXTURIZES +TEXTURIZING +THACK +THACKED +THACKING +THACKS +THAE +THAIRM +THAIRMS +THALAMI +THALAMIC +THALAMUS +THALASSAEMIA +THALASSAEMIAS +THALASSEMIA +THALASSEMIAS +THALASSEMIC +THALASSEMICS +THALASSIC +THALASSOCRACIES +THALASSOCRACY +THALASSOCRAT +THALASSOCRATS +THALER +THALERS +THALIDOMIDE +THALIDOMIDES +THALLI +THALLIC +THALLIOUS +THALLIUM +THALLIUMS +THALLOID +THALLOPHYTE +THALLOPHYTES +THALLOPHYTIC +THALLOUS +THALLUS +THALLUSES +THALWEG +THALWEGS +THAN +THANAGE +THANAGES +THANATOLOGICAL +THANATOLOGIES +THANATOLOGIST +THANATOLOGISTS +THANATOLOGY +THANATOS +THANATOSES +THANE +THANES +THANESHIP +THANESHIPS +THANK +THANKED +THANKER +THANKERS +THANKFUL +THANKFULLER +THANKFULLEST +THANKFULLY +THANKFULNESS +THANKFULNESSES +THANKING +THANKLESS +THANKLESSLY +THANKLESSNESS +THANKLESSNESSES +THANKS +THANKSGIVING +THANKSGIVINGS +THANKWORTHY +THARM +THARMS +THAT +THATAWAY +THATCH +THATCHED +THATCHER +THATCHERS +THATCHES +THATCHIER +THATCHIEST +THATCHING +THATCHINGS +THATCHY +THAUMATURGE +THAUMATURGES +THAUMATURGIC +THAUMATURGIES +THAUMATURGIST +THAUMATURGISTS +THAUMATURGY +THAW +THAWED +THAWER +THAWERS +THAWING +THAWLESS +THAWS +THE +THEARCHIES +THEARCHY +THEATER +THEATERGOER +THEATERGOERS +THEATERGOING +THEATERGOINGS +THEATERS +THEATRE +THEATRES +THEATRIC +THEATRICAL +THEATRICALISM +THEATRICALISMS +THEATRICALITIES +THEATRICALITY +THEATRICALIZE +THEATRICALIZED +THEATRICALIZES +THEATRICALIZING +THEATRICALLY +THEATRICALS +THEATRICS +THEBAINE +THEBAINES +THEBE +THEBES +THECA +THECAE +THECAL +THECATE +THECODONT +THECODONTS +THEE +THEELIN +THEELINS +THEELOL +THEELOLS +THEFT +THEFTS +THEGN +THEGNLY +THEGNS +THEIN +THEINE +THEINES +THEINS +THEIR +THEIRS +THEIRSELF +THEIRSELVES +THEISM +THEISMS +THEIST +THEISTIC +THEISTICAL +THEISTICALLY +THEISTS +THELITIS +THELITISES +THEM +THEMATIC +THEMATICALLY +THEMATICS +THEME +THEMED +THEMES +THEMING +THEMSELVES +THEN +THENAGE +THENAGES +THENAL +THENAR +THENARS +THENCE +THENCEFORTH +THENCEFORWARD +THENCEFORWARDS +THENS +THEOBROMINE +THEOBROMINES +THEOCENTRIC +THEOCENTRICITY +THEOCENTRISM +THEOCENTRISMS +THEOCRACIES +THEOCRACY +THEOCRAT +THEOCRATIC +THEOCRATICAL +THEOCRATICALLY +THEOCRATS +THEODICIES +THEODICY +THEODOLITE +THEODOLITES +THEOGONIC +THEOGONIES +THEOGONY +THEOLOG +THEOLOGIAN +THEOLOGIANS +THEOLOGIC +THEOLOGICAL +THEOLOGICALLY +THEOLOGIES +THEOLOGISE +THEOLOGISED +THEOLOGISES +THEOLOGISING +THEOLOGIZE +THEOLOGIZED +THEOLOGIZER +THEOLOGIZERS +THEOLOGIZES +THEOLOGIZING +THEOLOGS +THEOLOGUE +THEOLOGUES +THEOLOGY +THEOMACHIES +THEOMACHY +THEONOMIES +THEONOMOUS +THEONOMY +THEOPHANIC +THEOPHANIES +THEOPHANY +THEOPHYLLINE +THEOPHYLLINES +THEORBO +THEORBOS +THEOREM +THEOREMATIC +THEOREMS +THEORETIC +THEORETICAL +THEORETICALLY +THEORETICIAN +THEORETICIANS +THEORIES +THEORISE +THEORISED +THEORISES +THEORISING +THEORIST +THEORISTS +THEORIZATION +THEORIZATIONS +THEORIZE +THEORIZED +THEORIZER +THEORIZERS +THEORIZES +THEORIZING +THEORY +THEOSOPHICAL +THEOSOPHICALLY +THEOSOPHIES +THEOSOPHIST +THEOSOPHISTS +THEOSOPHY +THERAPEUSES +THERAPEUSIS +THERAPEUTIC +THERAPEUTICALLY +THERAPEUTICS +THERAPIES +THERAPIST +THERAPISTS +THERAPSID +THERAPSIDS +THERAPY +THERE +THEREABOUT +THEREABOUTS +THEREAFTER +THEREAT +THEREBY +THEREFOR +THEREFORE +THEREFROM +THEREIN +THEREINAFTER +THEREINTO +THEREMIN +THEREMINS +THEREOF +THEREON +THERES +THERETO +THERETOFORE +THEREUNDER +THEREUNTO +THEREUPON +THEREWITH +THEREWITHAL +THERIAC +THERIACA +THERIACAL +THERIACAS +THERIACS +THERIAN +THERIANS +THERIOMORPHIC +THERM +THERMAE +THERMAL +THERMALIZATION +THERMALIZATIONS +THERMALIZE +THERMALIZED +THERMALIZES +THERMALIZING +THERMALLY +THERMALS +THERME +THERMEL +THERMELS +THERMES +THERMIC +THERMICALLY +THERMIDOR +THERMIDORS +THERMION +THERMIONIC +THERMIONICS +THERMIONS +THERMISTOR +THERMISTORS +THERMIT +THERMITE +THERMITES +THERMITS +THERMOCHEMICAL +THERMOCHEMIST +THERMOCHEMISTRY +THERMOCHEMISTS +THERMOCLINE +THERMOCLINES +THERMOCOUPLE +THERMOCOUPLES +THERMODURIC +THERMODYNAMIC +THERMODYNAMICAL +THERMODYNAMICS +THERMOELECTRIC +THERMOELEMENT +THERMOELEMENTS +THERMOFORM +THERMOFORMABLE +THERMOFORMED +THERMOFORMING +THERMOFORMS +THERMOGRAM +THERMOGRAMS +THERMOGRAPH +THERMOGRAPHER +THERMOGRAPHERS +THERMOGRAPHIC +THERMOGRAPHIES +THERMOGRAPHS +THERMOGRAPHY +THERMOHALINE +THERMOJUNCTION +THERMOJUNCTIONS +THERMOLABILE +THERMOLABILITY +THERMOMAGNETIC +THERMOMETER +THERMOMETERS +THERMOMETRIC +THERMOMETRIES +THERMOMETRY +THERMONUCLEAR +THERMOPERIODISM +THERMOPHILE +THERMOPHILES +THERMOPHILIC +THERMOPHILOUS +THERMOPILE +THERMOPILES +THERMOPLASTIC +THERMOPLASTICS +THERMORECEPTOR +THERMORECEPTORS +THERMOREGULATE +THERMOREGULATED +THERMOREGULATES +THERMOREGULATOR +THERMOREMANENCE +THERMOREMANENT +THERMOS +THERMOSCOPE +THERMOSCOPES +THERMOSES +THERMOSET +THERMOSETS +THERMOSETTING +THERMOSPHERE +THERMOSPHERES +THERMOSPHERIC +THERMOSTABILITY +THERMOSTABLE +THERMOSTAT +THERMOSTATED +THERMOSTATIC +THERMOSTATING +THERMOSTATS +THERMOSTATTED +THERMOSTATTING +THERMOTACTIC +THERMOTAXES +THERMOTAXIS +THERMOTROPIC +THERMOTROPISM +THERMOTROPISMS +THERMS +THEROID +THEROPOD +THEROPODS +THESAURAL +THESAURI +THESAURUS +THESAURUSES +THESE +THESES +THESIS +THESP +THESPIAN +THESPIANS +THESPS +THETA +THETAS +THETIC +THETICAL +THETICALLY +THEURGIC +THEURGICAL +THEURGIES +THEURGIST +THEURGISTS +THEURGY +THEW +THEWIER +THEWIEST +THEWLESS +THEWS +THEWY +THEY +THIABENDAZOLE +THIABENDAZOLES +THIAMIN +THIAMINASE +THIAMINASES +THIAMINE +THIAMINES +THIAMINS +THIAZIDE +THIAZIDES +THIAZIN +THIAZINE +THIAZINES +THIAZINS +THIAZOL +THIAZOLE +THIAZOLES +THIAZOLS +THICK +THICKEN +THICKENED +THICKENER +THICKENERS +THICKENING +THICKENINGS +THICKENS +THICKER +THICKEST +THICKET +THICKETED +THICKETS +THICKETY +THICKHEAD +THICKHEADED +THICKHEADS +THICKISH +THICKLY +THICKNESS +THICKNESSES +THICKS +THICKSET +THICKSETS +THIEF +THIEVE +THIEVED +THIEVERIES +THIEVERY +THIEVES +THIEVING +THIEVISH +THIEVISHLY +THIEVISHNESS +THIEVISHNESSES +THIGH +THIGHBONE +THIGHBONES +THIGHED +THIGHS +THIGMOTAXES +THIGMOTAXIS +THIGMOTROPISM +THIGMOTROPISMS +THILL +THILLS +THIMBLE +THIMBLEBERRIES +THIMBLEBERRY +THIMBLEFUL +THIMBLEFULS +THIMBLERIG +THIMBLERIGGED +THIMBLERIGGER +THIMBLERIGGERS +THIMBLERIGGING +THIMBLERIGS +THIMBLES +THIMBLESFUL +THIMBLEWEED +THIMBLEWEEDS +THIMEROSAL +THIMEROSALS +THIN +THINCLAD +THINCLADS +THINDOWN +THINDOWNS +THINE +THING +THINGAMABOB +THINGAMABOBS +THINGAMAJIG +THINGAMAJIGS +THINGNESS +THINGNESSES +THINGS +THINGUMAJIG +THINGUMAJIGS +THINGUMMIES +THINGUMMY +THINK +THINKABLE +THINKABLENESS +THINKABLENESSES +THINKABLY +THINKER +THINKERS +THINKING +THINKINGLY +THINKINGNESS +THINKINGNESSES +THINKINGS +THINKS +THINLY +THINNED +THINNER +THINNERS +THINNESS +THINNESSES +THINNEST +THINNING +THINNISH +THINS +THIO +THIOCYANATE +THIOCYANATES +THIOL +THIOLIC +THIOLS +THIONATE +THIONATES +THIONIC +THIONIN +THIONINE +THIONINES +THIONINS +THIONYL +THIONYLS +THIOPENTAL +THIOPENTALS +THIOPHEN +THIOPHENE +THIOPHENES +THIOPHENS +THIORIDAZINE +THIORIDAZINES +THIOSULFATE +THIOSULFATES +THIOTEPA +THIOTEPAS +THIOURACIL +THIOURACILS +THIOUREA +THIOUREAS +THIR +THIRAM +THIRAMS +THIRD +THIRDHAND +THIRDLY +THIRDS +THIRL +THIRLAGE +THIRLAGES +THIRLED +THIRLING +THIRLS +THIRST +THIRSTED +THIRSTER +THIRSTERS +THIRSTIER +THIRSTIEST +THIRSTILY +THIRSTINESS +THIRSTINESSES +THIRSTING +THIRSTS +THIRSTY +THIRTEEN +THIRTEENS +THIRTEENTH +THIRTEENTHS +THIRTIES +THIRTIETH +THIRTIETHS +THIRTY +THIRTYISH +THIS +THISAWAY +THISTLE +THISTLEDOWN +THISTLEDOWNS +THISTLES +THISTLIER +THISTLIEST +THISTLY +THITHER +THITHERTO +THITHERWARD +THITHERWARDS +THIXOTROPIC +THIXOTROPIES +THIXOTROPY +THO +THOLE +THOLED +THOLEIITE +THOLEIITES +THOLEIITIC +THOLEPIN +THOLEPINS +THOLES +THOLING +THOLOI +THOLOS +THONG +THONGED +THONGS +THORACAL +THORACES +THORACIC +THORACICALLY +THORACOTOMIES +THORACOTOMY +THORAX +THORAXES +THORIA +THORIANITE +THORIANITES +THORIAS +THORIC +THORITE +THORITES +THORIUM +THORIUMS +THORN +THORNBACK +THORNBACKS +THORNBUSH +THORNBUSHES +THORNED +THORNIER +THORNIEST +THORNILY +THORNINESS +THORNINESSES +THORNING +THORNLESS +THORNLIKE +THORNS +THORNY +THORO +THORON +THORONS +THOROUGH +THOROUGHBASS +THOROUGHBASSES +THOROUGHBRACE +THOROUGHBRACES +THOROUGHBRED +THOROUGHBREDS +THOROUGHER +THOROUGHEST +THOROUGHFARE +THOROUGHFARES +THOROUGHGOING +THOROUGHLY +THOROUGHNESS +THOROUGHNESSES +THOROUGHPIN +THOROUGHPINS +THOROUGHWORT +THOROUGHWORTS +THORP +THORPE +THORPES +THORPS +THOSE +THOU +THOUED +THOUGH +THOUGHT +THOUGHTFUL +THOUGHTFULLY +THOUGHTFULNESS +THOUGHTLESS +THOUGHTLESSLY +THOUGHTLESSNESS +THOUGHTS +THOUGHTWAY +THOUGHTWAYS +THOUING +THOUS +THOUSAND +THOUSANDFOLD +THOUSANDS +THOUSANDTH +THOUSANDTHS +THOWLESS +THRALDOM +THRALDOMS +THRALL +THRALLDOM +THRALLDOMS +THRALLED +THRALLING +THRALLS +THRASH +THRASHED +THRASHER +THRASHERS +THRASHES +THRASHING +THRASHINGS +THRASONICAL +THRASONICALLY +THRAVE +THRAVES +THRAW +THRAWART +THRAWED +THRAWING +THRAWN +THRAWNLY +THRAWS +THREAD +THREADBARE +THREADBARENESS +THREADED +THREADER +THREADERS +THREADFIN +THREADFINS +THREADIER +THREADIEST +THREADINESS +THREADINESSES +THREADING +THREADLESS +THREADLIKE +THREADS +THREADWORM +THREADWORMS +THREADY +THREAP +THREAPED +THREAPER +THREAPERS +THREAPING +THREAPS +THREAT +THREATED +THREATEN +THREATENED +THREATENER +THREATENERS +THREATENING +THREATENINGLY +THREATENS +THREATING +THREATS +THREE +THREEFOLD +THREEP +THREEPED +THREEPENCE +THREEPENCES +THREEPENNY +THREEPING +THREEPS +THREES +THREESCORE +THREESOME +THREESOMES +THRENODE +THRENODES +THRENODIC +THRENODIES +THRENODIST +THRENODISTS +THRENODY +THREONINE +THREONINES +THRESH +THRESHED +THRESHER +THRESHERS +THRESHES +THRESHING +THRESHOLD +THRESHOLDS +THREW +THRICE +THRIFT +THRIFTIER +THRIFTIEST +THRIFTILY +THRIFTINESS +THRIFTINESSES +THRIFTLESS +THRIFTLESSLY +THRIFTLESSNESS +THRIFTS +THRIFTY +THRILL +THRILLED +THRILLER +THRILLERS +THRILLING +THRILLINGLY +THRILLS +THRIP +THRIPS +THRIVE +THRIVED +THRIVEN +THRIVER +THRIVERS +THRIVES +THRIVING +THRIVINGLY +THRO +THROAT +THROATED +THROATIER +THROATIEST +THROATILY +THROATINESS +THROATINESSES +THROATING +THROATLATCH +THROATLATCHES +THROATS +THROATY +THROB +THROBBED +THROBBER +THROBBERS +THROBBING +THROBS +THROE +THROES +THROMBI +THROMBIN +THROMBINS +THROMBOCYTE +THROMBOCYTES +THROMBOCYTIC +THROMBOEMBOLIC +THROMBOEMBOLISM +THROMBOKINASE +THROMBOKINASES +THROMBOLYTIC +THROMBOPLASTIC +THROMBOPLASTIN +THROMBOPLASTINS +THROMBOSE +THROMBOSED +THROMBOSES +THROMBOSING +THROMBOSIS +THROMBOTIC +THROMBOXANE +THROMBOXANES +THROMBUS +THRONE +THRONED +THRONES +THRONG +THRONGED +THRONGING +THRONGS +THRONING +THROSTLE +THROSTLES +THROTTLE +THROTTLEABLE +THROTTLED +THROTTLEHOLD +THROTTLEHOLDS +THROTTLER +THROTTLERS +THROTTLES +THROTTLING +THROUGH +THROUGHITHER +THROUGHLY +THROUGHOTHER +THROUGHOUT +THROUGHPUT +THROUGHPUTS +THROVE +THROW +THROWAWAY +THROWAWAYS +THROWBACK +THROWBACKS +THROWER +THROWERS +THROWING +THROWN +THROWS +THROWSTER +THROWSTERS +THRU +THRUM +THRUMMED +THRUMMER +THRUMMERS +THRUMMIER +THRUMMIEST +THRUMMING +THRUMMY +THRUMS +THRUPUT +THRUPUTS +THRUSH +THRUSHES +THRUST +THRUSTED +THRUSTER +THRUSTERS +THRUSTFUL +THRUSTING +THRUSTOR +THRUSTORS +THRUSTS +THRUWAY +THRUWAYS +THUD +THUDDED +THUDDING +THUDS +THUG +THUGGEE +THUGGEES +THUGGERIES +THUGGERY +THUGGISH +THUGS +THUJA +THUJAS +THULIA +THULIAS +THULIUM +THULIUMS +THUMB +THUMBED +THUMBHOLE +THUMBHOLES +THUMBING +THUMBKIN +THUMBKINS +THUMBLESS +THUMBNAIL +THUMBNAILS +THUMBNUT +THUMBNUTS +THUMBPRINT +THUMBPRINTS +THUMBS +THUMBSCREW +THUMBSCREWS +THUMBTACK +THUMBTACKED +THUMBTACKING +THUMBTACKS +THUMBWHEEL +THUMBWHEELS +THUMP +THUMPED +THUMPER +THUMPERS +THUMPING +THUMPS +THUNDER +THUNDERBIRD +THUNDERBIRDS +THUNDERBOLT +THUNDERBOLTS +THUNDERCLAP +THUNDERCLAPS +THUNDERCLOUD +THUNDERCLOUDS +THUNDERED +THUNDERER +THUNDERERS +THUNDERHEAD +THUNDERHEADS +THUNDERING +THUNDERINGLY +THUNDEROUS +THUNDEROUSLY +THUNDERS +THUNDERSHOWER +THUNDERSHOWERS +THUNDERSTONE +THUNDERSTONES +THUNDERSTORM +THUNDERSTORMS +THUNDERSTRICKEN +THUNDERSTRIKE +THUNDERSTRIKES +THUNDERSTRIKING +THUNDERSTROKE +THUNDERSTROKES +THUNDERSTRUCK +THUNDERY +THUNK +THUNKED +THUNKING +THUNKS +THURIBLE +THURIBLES +THURIFER +THURIFERS +THURL +THURLS +THUS +THUSLY +THUYA +THUYAS +THWACK +THWACKED +THWACKER +THWACKERS +THWACKING +THWACKS +THWART +THWARTED +THWARTER +THWARTERS +THWARTING +THWARTLY +THWARTS +THWARTWISE +THY +THYLACINE +THYLACINES +THYLAKOID +THYLAKOIDS +THYME +THYMECTOMIES +THYMECTOMIZE +THYMECTOMIZED +THYMECTOMIZES +THYMECTOMIZING +THYMECTOMY +THYMES +THYMEY +THYMI +THYMIC +THYMIDINE +THYMIDINES +THYMIER +THYMIEST +THYMINE +THYMINES +THYMOCYTE +THYMOCYTES +THYMOL +THYMOLS +THYMOSIN +THYMOSINS +THYMUS +THYMUSES +THYMY +THYRATRON +THYRATRONS +THYREOID +THYRISTOR +THYRISTORS +THYROCALCITONIN +THYROGLOBULIN +THYROGLOBULINS +THYROID +THYROIDAL +THYROIDECTOMIES +THYROIDECTOMY +THYROIDITIS +THYROIDITISES +THYROIDS +THYROTOXICOSES +THYROTOXICOSIS +THYROTROPHIC +THYROTROPHIN +THYROTROPHINS +THYROTROPIC +THYROTROPIN +THYROTROPINS +THYROXIN +THYROXINE +THYROXINES +THYROXINS +THYRSE +THYRSES +THYRSI +THYRSOID +THYRSUS +THYSANURAN +THYSANURANS +THYSELF +TI +TIARA +TIARAED +TIARAS +TIBIA +TIBIAE +TIBIAL +TIBIAS +TIBIOFIBULA +TIBIOFIBULAE +TIBIOFIBULAS +TIC +TICAL +TICALS +TICCED +TICCING +TICK +TICKED +TICKER +TICKERS +TICKET +TICKETED +TICKETING +TICKETLESS +TICKETS +TICKING +TICKINGS +TICKLE +TICKLED +TICKLER +TICKLERS +TICKLES +TICKLING +TICKLISH +TICKLISHLY +TICKLISHNESS +TICKLISHNESSES +TICKS +TICKSEED +TICKSEEDS +TICKTACK +TICKTACKED +TICKTACKING +TICKTACKS +TICKTACKTOE +TICKTACKTOES +TICKTOCK +TICKTOCKED +TICKTOCKING +TICKTOCKS +TICS +TICTAC +TICTACKED +TICTACKING +TICTACS +TICTOC +TICTOCKED +TICTOCKING +TICTOCS +TIDAL +TIDALLY +TIDBIT +TIDBITS +TIDDLEDYWINKS +TIDDLER +TIDDLERS +TIDDLY +TIDDLYWINKS +TIDE +TIDED +TIDELAND +TIDELANDS +TIDELESS +TIDELIKE +TIDEMARK +TIDEMARKS +TIDERIP +TIDERIPS +TIDES +TIDEWATER +TIDEWATERS +TIDEWAY +TIDEWAYS +TIDIED +TIDIER +TIDIERS +TIDIES +TIDIEST +TIDILY +TIDINESS +TIDINESSES +TIDING +TIDINGS +TIDY +TIDYING +TIDYTIPS +TIE +TIEBACK +TIEBACKS +TIEBREAK +TIEBREAKER +TIEBREAKERS +TIEBREAKS +TIECLASP +TIECLASPS +TIED +TIEING +TIELESS +TIEMANNITE +TIEMANNITES +TIEPIN +TIEPINS +TIER +TIERCE +TIERCED +TIERCEL +TIERCELS +TIERCERON +TIERCERONS +TIERCES +TIERED +TIERING +TIERS +TIES +TIFF +TIFFANIES +TIFFANY +TIFFED +TIFFIN +TIFFINED +TIFFING +TIFFINING +TIFFINS +TIFFS +TIGER +TIGEREYE +TIGEREYES +TIGERISH +TIGERISHLY +TIGERISHNESS +TIGERISHNESSES +TIGERLIKE +TIGERS +TIGHT +TIGHTEN +TIGHTENED +TIGHTENER +TIGHTENERS +TIGHTENING +TIGHTENS +TIGHTER +TIGHTEST +TIGHTFISTED +TIGHTFISTEDNESS +TIGHTKNIT +TIGHTLY +TIGHTNESS +TIGHTNESSES +TIGHTROPE +TIGHTROPES +TIGHTS +TIGHTWAD +TIGHTWADS +TIGHTWIRE +TIGHTWIRES +TIGLON +TIGLONS +TIGON +TIGONS +TIGRESS +TIGRESSES +TIGRISH +TIKE +TIKES +TIKI +TIKIS +TIKKA +TIKKAS +TIL +TILAK +TILAKS +TILAPIA +TILAPIAS +TILBURIES +TILBURY +TILDE +TILDES +TILE +TILED +TILEFISH +TILEFISHES +TILELIKE +TILER +TILERS +TILES +TILING +TILINGS +TILL +TILLABLE +TILLAGE +TILLAGES +TILLANDSIA +TILLANDSIAS +TILLED +TILLER +TILLERED +TILLERING +TILLERMAN +TILLERMEN +TILLERS +TILLING +TILLITE +TILLITES +TILLS +TILS +TILT +TILTABLE +TILTED +TILTER +TILTERS +TILTH +TILTHS +TILTING +TILTMETER +TILTMETERS +TILTROTOR +TILTROTORS +TILTS +TILTYARD +TILTYARDS +TIMARAU +TIMARAUS +TIMBAL +TIMBALE +TIMBALES +TIMBALS +TIMBER +TIMBERDOODLE +TIMBERDOODLES +TIMBERED +TIMBERHEAD +TIMBERHEADS +TIMBERING +TIMBERINGS +TIMBERLAND +TIMBERLANDS +TIMBERLINE +TIMBERLINES +TIMBERMAN +TIMBERMEN +TIMBERS +TIMBERWORK +TIMBERWORKS +TIMBERY +TIMBRAL +TIMBRE +TIMBREL +TIMBRELLED +TIMBRELS +TIMBRES +TIME +TIMECARD +TIMECARDS +TIMED +TIMEKEEPER +TIMEKEEPERS +TIMEKEEPING +TIMEKEEPINGS +TIMELESS +TIMELESSLY +TIMELESSNESS +TIMELESSNESSES +TIMELIER +TIMELIEST +TIMELINE +TIMELINES +TIMELINESS +TIMELINESSES +TIMELY +TIMEOUS +TIMEOUSLY +TIMEOUT +TIMEOUTS +TIMEPIECE +TIMEPIECES +TIMEPLEASER +TIMEPLEASERS +TIMER +TIMERS +TIMES +TIMESAVER +TIMESAVERS +TIMESAVING +TIMESCALE +TIMESCALES +TIMESERVER +TIMESERVERS +TIMESERVING +TIMESERVINGS +TIMETABLE +TIMETABLES +TIMEWORK +TIMEWORKER +TIMEWORKERS +TIMEWORKS +TIMEWORN +TIMID +TIMIDER +TIMIDEST +TIMIDITIES +TIMIDITY +TIMIDLY +TIMIDNESS +TIMIDNESSES +TIMING +TIMINGS +TIMOCRACIES +TIMOCRACY +TIMOCRATIC +TIMOCRATICAL +TIMOLOL +TIMOLOLS +TIMOROUS +TIMOROUSLY +TIMOROUSNESS +TIMOROUSNESSES +TIMOTHIES +TIMOTHY +TIMPANA +TIMPANI +TIMPANIST +TIMPANISTS +TIMPANO +TIMPANUM +TIMPANUMS +TIN +TINAMOU +TINAMOUS +TINCAL +TINCALS +TINCT +TINCTED +TINCTING +TINCTORIAL +TINCTORIALLY +TINCTS +TINCTURE +TINCTURED +TINCTURES +TINCTURING +TINDER +TINDERBOX +TINDERBOXES +TINDERS +TINDERY +TINE +TINEA +TINEAL +TINEAS +TINED +TINEID +TINEIDS +TINES +TINFOIL +TINFOILS +TINFUL +TINFULS +TING +TINGE +TINGED +TINGEING +TINGES +TINGING +TINGLE +TINGLED +TINGLER +TINGLERS +TINGLES +TINGLIER +TINGLIEST +TINGLING +TINGLINGLY +TINGLY +TINGS +TINHORN +TINHORNS +TINIER +TINIEST +TINILY +TININESS +TININESSES +TINING +TINKER +TINKERED +TINKERER +TINKERERS +TINKERING +TINKERS +TINKERTOY +TINKERTOYS +TINKLE +TINKLED +TINKLER +TINKLERS +TINKLES +TINKLIER +TINKLIEST +TINKLING +TINKLINGS +TINKLY +TINLIKE +TINMAN +TINMEN +TINNED +TINNER +TINNERS +TINNIER +TINNIEST +TINNILY +TINNINESS +TINNINESSES +TINNING +TINNITUS +TINNITUSES +TINNY +TINPLATE +TINPLATES +TINPOT +TINS +TINSEL +TINSELED +TINSELING +TINSELLED +TINSELLING +TINSELLY +TINSELS +TINSMITH +TINSMITHING +TINSMITHINGS +TINSMITHS +TINSNIPS +TINSTONE +TINSTONES +TINT +TINTED +TINTER +TINTERS +TINTING +TINTINGS +TINTINNABULARY +TINTLESS +TINTS +TINTYPE +TINTYPES +TINWARE +TINWARES +TINWORK +TINWORKS +TINY +TIP +TIPCART +TIPCARTS +TIPCAT +TIPCATS +TIPI +TIPIS +TIPLESS +TIPOFF +TIPOFFS +TIPPABLE +TIPPED +TIPPER +TIPPERS +TIPPET +TIPPETS +TIPPIER +TIPPIEST +TIPPING +TIPPLE +TIPPLED +TIPPLER +TIPPLERS +TIPPLES +TIPPLING +TIPPY +TIPPYTOE +TIPPYTOED +TIPPYTOEING +TIPPYTOES +TIPS +TIPSHEET +TIPSHEETS +TIPSIER +TIPSIEST +TIPSILY +TIPSINESS +TIPSINESSES +TIPSTAFF +TIPSTAFFS +TIPSTAVES +TIPSTER +TIPSTERS +TIPSTOCK +TIPSTOCKS +TIPSY +TIPTOE +TIPTOED +TIPTOEING +TIPTOES +TIPTOP +TIPTOPS +TIRADE +TIRADES +TIRAMISU +TIRAMISUS +TIRE +TIRED +TIREDER +TIREDEST +TIREDLY +TIREDNESS +TIREDNESSES +TIRELESS +TIRELESSLY +TIRELESSNESS +TIRELESSNESSES +TIRES +TIRESOME +TIRESOMELY +TIRESOMENESS +TIRESOMENESSES +TIREWOMAN +TIREWOMEN +TIRING +TIRL +TIRLED +TIRLING +TIRLS +TIRO +TIROS +TIRRIVEE +TIRRIVEES +TIS +TISANE +TISANES +TISSUAL +TISSUE +TISSUED +TISSUES +TISSUEY +TISSUING +TISSULAR +TIT +TITAN +TITANATE +TITANATES +TITANESS +TITANESSES +TITANIA +TITANIAS +TITANIC +TITANICALLY +TITANIFEROUS +TITANISM +TITANISMS +TITANITE +TITANITES +TITANIUM +TITANIUMS +TITANOUS +TITANS +TITBIT +TITBITS +TITER +TITERS +TITFER +TITFERS +TITHABLE +TITHE +TITHED +TITHER +TITHERS +TITHES +TITHING +TITHINGS +TITHONIA +TITHONIAS +TITI +TITIAN +TITIANS +TITILLATE +TITILLATED +TITILLATES +TITILLATING +TITILLATINGLY +TITILLATION +TITILLATIONS +TITILLATIVE +TITIS +TITIVATE +TITIVATED +TITIVATES +TITIVATING +TITIVATION +TITIVATIONS +TITLARK +TITLARKS +TITLE +TITLED +TITLEHOLDER +TITLEHOLDERS +TITLES +TITLING +TITLIST +TITLISTS +TITMAN +TITMEN +TITMICE +TITMOUSE +TITRABLE +TITRANT +TITRANTS +TITRATABLE +TITRATE +TITRATED +TITRATES +TITRATING +TITRATION +TITRATIONS +TITRATOR +TITRATORS +TITRE +TITRES +TITRIMETRIC +TITS +TITTER +TITTERED +TITTERER +TITTERERS +TITTERING +TITTERS +TITTIE +TITTIES +TITTIVATE +TITTIVATED +TITTIVATES +TITTIVATING +TITTLE +TITTLES +TITTUP +TITTUPED +TITTUPING +TITTUPPED +TITTUPPING +TITTUPPY +TITTUPS +TITTY +TITUBANT +TITULAR +TITULARIES +TITULARLY +TITULARS +TITULARY +TIVY +TIZZIES +TIZZY +TMESES +TMESIS +TO +TOAD +TOADEATER +TOADEATERS +TOADFISH +TOADFISHES +TOADFLAX +TOADFLAXES +TOADIED +TOADIES +TOADISH +TOADLESS +TOADLIKE +TOADS +TOADSTONE +TOADSTONES +TOADSTOOL +TOADSTOOLS +TOADY +TOADYING +TOADYISH +TOADYISM +TOADYISMS +TOAST +TOASTED +TOASTER +TOASTERS +TOASTIER +TOASTIEST +TOASTING +TOASTMASTER +TOASTMASTERS +TOASTMISTRESS +TOASTMISTRESSES +TOASTS +TOASTY +TOBACCO +TOBACCOES +TOBACCONIST +TOBACCONISTS +TOBACCOS +TOBIES +TOBOGGAN +TOBOGGANED +TOBOGGANER +TOBOGGANERS +TOBOGGANING +TOBOGGANINGS +TOBOGGANIST +TOBOGGANISTS +TOBOGGANS +TOBY +TOCCATA +TOCCATAS +TOCCATE +TOCHER +TOCHERED +TOCHERING +TOCHERS +TOCOLOGIES +TOCOLOGY +TOCOPHEROL +TOCOPHEROLS +TOCSIN +TOCSINS +TOD +TODAY +TODAYS +TODDIES +TODDLE +TODDLED +TODDLER +TODDLERHOOD +TODDLERHOODS +TODDLERS +TODDLES +TODDLING +TODDY +TODIES +TODS +TODY +TOE +TOEA +TOEAS +TOECAP +TOECAPS +TOED +TOEHOLD +TOEHOLDS +TOEING +TOELESS +TOELIKE +TOENAIL +TOENAILED +TOENAILING +TOENAILS +TOEPIECE +TOEPIECES +TOEPLATE +TOEPLATES +TOES +TOESHOE +TOESHOES +TOFF +TOFFEE +TOFFEES +TOFFIES +TOFFS +TOFFY +TOFT +TOFTS +TOFU +TOFUS +TOFUTTI +TOFUTTIS +TOG +TOGA +TOGAE +TOGAED +TOGAS +TOGATE +TOGATED +TOGAVIRUS +TOGAVIRUSES +TOGETHER +TOGETHERNESS +TOGETHERNESSES +TOGGED +TOGGERIES +TOGGERY +TOGGING +TOGGLE +TOGGLED +TOGGLER +TOGGLERS +TOGGLES +TOGGLING +TOGS +TOGUE +TOGUES +TOIL +TOILE +TOILED +TOILER +TOILERS +TOILES +TOILET +TOILETED +TOILETING +TOILETRIES +TOILETRY +TOILETS +TOILETTE +TOILETTES +TOILFUL +TOILFULLY +TOILING +TOILS +TOILSOME +TOILSOMELY +TOILSOMENESS +TOILSOMENESSES +TOILWORN +TOIT +TOITED +TOITING +TOITS +TOKAMAK +TOKAMAKS +TOKAY +TOKAYS +TOKE +TOKED +TOKEN +TOKENED +TOKENING +TOKENISM +TOKENISMS +TOKENS +TOKER +TOKERS +TOKES +TOKING +TOKOLOGIES +TOKOLOGY +TOKOMAK +TOKOMAKS +TOKONOMA +TOKONOMAS +TOLA +TOLAN +TOLANE +TOLANES +TOLANS +TOLAR +TOLARJEV +TOLARS +TOLAS +TOLBOOTH +TOLBOOTHS +TOLBUTAMIDE +TOLBUTAMIDES +TOLD +TOLE +TOLED +TOLEDO +TOLEDOS +TOLERABILITIES +TOLERABILITY +TOLERABLE +TOLERABLY +TOLERANCE +TOLERANCES +TOLERANT +TOLERANTLY +TOLERATE +TOLERATED +TOLERATES +TOLERATING +TOLERATION +TOLERATIONS +TOLERATIVE +TOLERATOR +TOLERATORS +TOLES +TOLIDIN +TOLIDINE +TOLIDINES +TOLIDINS +TOLING +TOLL +TOLLAGE +TOLLAGES +TOLLBAR +TOLLBARS +TOLLBOOTH +TOLLBOOTHS +TOLLED +TOLLER +TOLLERS +TOLLGATE +TOLLGATES +TOLLHOUSE +TOLLHOUSES +TOLLING +TOLLMAN +TOLLMEN +TOLLS +TOLLWAY +TOLLWAYS +TOLU +TOLUATE +TOLUATES +TOLUENE +TOLUENES +TOLUIC +TOLUID +TOLUIDE +TOLUIDES +TOLUIDIDE +TOLUIDIDES +TOLUIDIN +TOLUIDINE +TOLUIDINES +TOLUIDINS +TOLUIDS +TOLUOL +TOLUOLE +TOLUOLES +TOLUOLS +TOLUS +TOLUYL +TOLUYLS +TOLYL +TOLYLS +TOM +TOMAHAWK +TOMAHAWKED +TOMAHAWKING +TOMAHAWKS +TOMALLEY +TOMALLEYS +TOMAN +TOMANS +TOMATILLO +TOMATILLOES +TOMATILLOS +TOMATO +TOMATOES +TOMATOEY +TOMB +TOMBAC +TOMBACK +TOMBACKS +TOMBACS +TOMBAK +TOMBAKS +TOMBAL +TOMBED +TOMBING +TOMBLESS +TOMBLIKE +TOMBOLA +TOMBOLAS +TOMBOLO +TOMBOLOS +TOMBOY +TOMBOYISH +TOMBOYISHNESS +TOMBOYISHNESSES +TOMBOYS +TOMBS +TOMBSTONE +TOMBSTONES +TOMCAT +TOMCATS +TOMCATTED +TOMCATTING +TOMCOD +TOMCODS +TOME +TOMENTA +TOMENTOSE +TOMENTUM +TOMES +TOMFOOL +TOMFOOLERIES +TOMFOOLERY +TOMFOOLS +TOMMED +TOMMIES +TOMMING +TOMMY +TOMMYROT +TOMMYROTS +TOMOGRAM +TOMOGRAMS +TOMOGRAPH +TOMOGRAPHIC +TOMOGRAPHIES +TOMOGRAPHS +TOMOGRAPHY +TOMORROW +TOMORROWS +TOMPION +TOMPIONS +TOMS +TOMTIT +TOMTITS +TON +TONAL +TONALITIES +TONALITY +TONALLY +TONDI +TONDO +TONDOS +TONE +TONEARM +TONEARMS +TONED +TONELESS +TONELESSLY +TONELESSNESS +TONELESSNESSES +TONEME +TONEMES +TONEMIC +TONER +TONERS +TONES +TONETIC +TONETICALLY +TONETICS +TONETTE +TONETTES +TONEY +TONG +TONGA +TONGAS +TONGED +TONGER +TONGERS +TONGING +TONGMAN +TONGMEN +TONGS +TONGUE +TONGUED +TONGUELESS +TONGUELIKE +TONGUES +TONGUING +TONGUINGS +TONIC +TONICALLY +TONICITIES +TONICITY +TONICS +TONIER +TONIEST +TONIGHT +TONIGHTS +TONING +TONISH +TONISHLY +TONLET +TONLETS +TONNAGE +TONNAGES +TONNE +TONNEAU +TONNEAUS +TONNEAUX +TONNER +TONNERS +TONNES +TONNISH +TONOMETER +TONOMETERS +TONOMETRIES +TONOMETRY +TONOPLAST +TONOPLASTS +TONS +TONSIL +TONSILAR +TONSILLAR +TONSILLECTOMIES +TONSILLECTOMY +TONSILLITIS +TONSILLITISES +TONSILS +TONSORIAL +TONSURE +TONSURED +TONSURES +TONSURING +TONTINE +TONTINES +TONUS +TONUSES +TONY +TOO +TOOK +TOOL +TOOLBAR +TOOLBARS +TOOLBOX +TOOLBOXES +TOOLED +TOOLER +TOOLERS +TOOLHEAD +TOOLHEADS +TOOLHOLDER +TOOLHOLDERS +TOOLHOUSE +TOOLHOUSES +TOOLING +TOOLINGS +TOOLLESS +TOOLMAKER +TOOLMAKERS +TOOLMAKING +TOOLMAKINGS +TOOLROOM +TOOLROOMS +TOOLS +TOOLSHED +TOOLSHEDS +TOOM +TOON +TOONIE +TOONIES +TOONS +TOOT +TOOTED +TOOTER +TOOTERS +TOOTH +TOOTHACHE +TOOTHACHES +TOOTHBRUSH +TOOTHBRUSHES +TOOTHBRUSHING +TOOTHBRUSHINGS +TOOTHED +TOOTHIER +TOOTHIEST +TOOTHILY +TOOTHING +TOOTHLESS +TOOTHLIKE +TOOTHPASTE +TOOTHPASTES +TOOTHPICK +TOOTHPICKS +TOOTHS +TOOTHSOME +TOOTHSOMELY +TOOTHSOMENESS +TOOTHSOMENESSES +TOOTHWORT +TOOTHWORTS +TOOTHY +TOOTING +TOOTLE +TOOTLED +TOOTLER +TOOTLERS +TOOTLES +TOOTLING +TOOTS +TOOTSES +TOOTSIE +TOOTSIES +TOOTSY +TOP +TOPAZ +TOPAZES +TOPAZINE +TOPCOAT +TOPCOATS +TOPCROSS +TOPCROSSES +TOPDRESSING +TOPDRESSINGS +TOPE +TOPED +TOPEE +TOPEES +TOPER +TOPERS +TOPES +TOPFLIGHT +TOPFUL +TOPFULL +TOPGALLANT +TOPGALLANTS +TOPH +TOPHE +TOPHES +TOPHI +TOPHS +TOPHUS +TOPI +TOPIARIES +TOPIARY +TOPIC +TOPICAL +TOPICALITIES +TOPICALITY +TOPICALLY +TOPICS +TOPING +TOPIS +TOPKICK +TOPKICKS +TOPKNOT +TOPKNOTS +TOPLESS +TOPLESSNESS +TOPLESSNESSES +TOPLINE +TOPLINES +TOPLOFTICAL +TOPLOFTIER +TOPLOFTIEST +TOPLOFTILY +TOPLOFTINESS +TOPLOFTINESSES +TOPLOFTY +TOPMAST +TOPMASTS +TOPMINNOW +TOPMINNOWS +TOPMOST +TOPNOTCH +TOPNOTCHER +TOPNOTCHERS +TOPO +TOPOCENTRIC +TOPOGRAPH +TOPOGRAPHER +TOPOGRAPHERS +TOPOGRAPHIC +TOPOGRAPHICAL +TOPOGRAPHICALLY +TOPOGRAPHIES +TOPOGRAPHS +TOPOGRAPHY +TOPOI +TOPOLOGIC +TOPOLOGICAL +TOPOLOGICALLY +TOPOLOGIES +TOPOLOGIST +TOPOLOGISTS +TOPOLOGY +TOPONYM +TOPONYMIC +TOPONYMICAL +TOPONYMIES +TOPONYMIST +TOPONYMISTS +TOPONYMS +TOPONYMY +TOPOS +TOPOTYPE +TOPOTYPES +TOPPED +TOPPER +TOPPERS +TOPPING +TOPPINGS +TOPPLE +TOPPLED +TOPPLES +TOPPLING +TOPS +TOPSAIL +TOPSAILS +TOPSIDE +TOPSIDER +TOPSIDERS +TOPSIDES +TOPSOIL +TOPSOILED +TOPSOILING +TOPSOILS +TOPSPIN +TOPSPINS +TOPSTITCH +TOPSTITCHED +TOPSTITCHES +TOPSTITCHING +TOPSTONE +TOPSTONES +TOPWORK +TOPWORKED +TOPWORKING +TOPWORKS +TOQUE +TOQUES +TOQUET +TOQUETS +TOR +TORA +TORAH +TORAHS +TORAS +TORC +TORCH +TORCHABLE +TORCHBEARER +TORCHBEARERS +TORCHED +TORCHERE +TORCHERES +TORCHES +TORCHIER +TORCHIERE +TORCHIERES +TORCHIERS +TORCHIEST +TORCHING +TORCHLIGHT +TORCHLIGHTS +TORCHLIKE +TORCHON +TORCHONS +TORCHWOOD +TORCHWOODS +TORCHY +TORCS +TORE +TOREADOR +TOREADORS +TORERO +TOREROS +TORES +TOREUTIC +TOREUTICS +TORI +TORIC +TORICS +TORIES +TORII +TORMENT +TORMENTED +TORMENTER +TORMENTERS +TORMENTIL +TORMENTILS +TORMENTING +TORMENTOR +TORMENTORS +TORMENTS +TORN +TORNADIC +TORNADO +TORNADOES +TORNADOS +TORNILLO +TORNILLOS +TORO +TOROID +TOROIDAL +TOROIDALLY +TOROIDS +TOROS +TOROSE +TOROSITIES +TOROSITY +TOROT +TOROTH +TOROUS +TORPEDO +TORPEDOED +TORPEDOES +TORPEDOING +TORPEDOS +TORPID +TORPIDITIES +TORPIDITY +TORPIDLY +TORPIDS +TORPOR +TORPORS +TORQUATE +TORQUE +TORQUED +TORQUER +TORQUERS +TORQUES +TORQUESES +TORQUING +TORR +TORREFIED +TORREFIES +TORREFY +TORREFYING +TORRENT +TORRENTIAL +TORRENTIALLY +TORRENTS +TORRID +TORRIDER +TORRIDEST +TORRIDITIES +TORRIDITY +TORRIDLY +TORRIDNESS +TORRIDNESSES +TORRIFIED +TORRIFIES +TORRIFY +TORRIFYING +TORRS +TORS +TORSADE +TORSADES +TORSE +TORSES +TORSI +TORSION +TORSIONAL +TORSIONALLY +TORSIONS +TORSK +TORSKS +TORSO +TORSOS +TORT +TORTA +TORTAS +TORTE +TORTELLINI +TORTELLINIS +TORTEN +TORTES +TORTICOLLIS +TORTICOLLISES +TORTILE +TORTILLA +TORTILLAS +TORTIOUS +TORTIOUSLY +TORTOISE +TORTOISES +TORTOISESHELL +TORTOISESHELLS +TORTONI +TORTONIS +TORTRICID +TORTRICIDS +TORTRIX +TORTRIXES +TORTS +TORTUOSITIES +TORTUOSITY +TORTUOUS +TORTUOUSLY +TORTUOUSNESS +TORTUOUSNESSES +TORTURE +TORTURED +TORTURER +TORTURERS +TORTURES +TORTURING +TORTUROUS +TORTUROUSLY +TORULA +TORULAE +TORULAS +TORUS +TORY +TOSH +TOSHES +TOSS +TOSSED +TOSSER +TOSSERS +TOSSES +TOSSING +TOSSPOT +TOSSPOTS +TOSSUP +TOSSUPS +TOST +TOSTADA +TOSTADAS +TOSTADO +TOSTADOS +TOT +TOTABLE +TOTAL +TOTALED +TOTALING +TOTALISATOR +TOTALISATORS +TOTALISE +TOTALISED +TOTALISES +TOTALISING +TOTALISM +TOTALISMS +TOTALIST +TOTALISTIC +TOTALISTS +TOTALITARIAN +TOTALITARIANISM +TOTALITARIANIZE +TOTALITARIANS +TOTALITIES +TOTALITY +TOTALIZATOR +TOTALIZATORS +TOTALIZE +TOTALIZED +TOTALIZER +TOTALIZERS +TOTALIZES +TOTALIZING +TOTALLED +TOTALLING +TOTALLY +TOTALS +TOTAQUINE +TOTAQUINES +TOTE +TOTEABLE +TOTED +TOTEM +TOTEMIC +TOTEMISM +TOTEMISMS +TOTEMIST +TOTEMISTIC +TOTEMISTS +TOTEMITE +TOTEMITES +TOTEMS +TOTER +TOTERS +TOTES +TOTHER +TOTING +TOTIPOTENCIES +TOTIPOTENCY +TOTIPOTENT +TOTS +TOTTED +TOTTER +TOTTERED +TOTTERER +TOTTERERS +TOTTERING +TOTTERINGLY +TOTTERS +TOTTERY +TOTTING +TOUCAN +TOUCANS +TOUCH +TOUCHABLE +TOUCHBACK +TOUCHBACKS +TOUCHDOWN +TOUCHDOWNS +TOUCHE +TOUCHED +TOUCHER +TOUCHERS +TOUCHES +TOUCHHOLE +TOUCHHOLES +TOUCHIER +TOUCHIEST +TOUCHILY +TOUCHINESS +TOUCHINESSES +TOUCHING +TOUCHINGLY +TOUCHLINE +TOUCHLINES +TOUCHMARK +TOUCHMARKS +TOUCHPAD +TOUCHPADS +TOUCHSTONE +TOUCHSTONES +TOUCHTONE +TOUCHTONES +TOUCHUP +TOUCHUPS +TOUCHWOOD +TOUCHWOODS +TOUCHY +TOUGH +TOUGHED +TOUGHEN +TOUGHENED +TOUGHENER +TOUGHENERS +TOUGHENING +TOUGHENS +TOUGHER +TOUGHEST +TOUGHIE +TOUGHIES +TOUGHING +TOUGHISH +TOUGHLY +TOUGHNESS +TOUGHNESSES +TOUGHS +TOUGHY +TOUPEE +TOUPEES +TOUR +TOURACO +TOURACOS +TOURBILLION +TOURBILLIONS +TOURBILLON +TOURBILLONS +TOURED +TOURER +TOURERS +TOURING +TOURINGS +TOURISM +TOURISMS +TOURIST +TOURISTA +TOURISTAS +TOURISTED +TOURISTIC +TOURISTICALLY +TOURISTS +TOURISTY +TOURMALINE +TOURMALINES +TOURNAMENT +TOURNAMENTS +TOURNEDOS +TOURNEY +TOURNEYED +TOURNEYING +TOURNEYS +TOURNIQUET +TOURNIQUETS +TOURS +TOUSE +TOUSED +TOUSES +TOUSING +TOUSLE +TOUSLED +TOUSLES +TOUSLING +TOUT +TOUTED +TOUTER +TOUTERS +TOUTING +TOUTS +TOUZLE +TOUZLED +TOUZLES +TOUZLING +TOVARICH +TOVARICHES +TOVARISH +TOVARISHES +TOW +TOWABLE +TOWAGE +TOWAGES +TOWARD +TOWARDLINESS +TOWARDLINESSES +TOWARDLY +TOWARDS +TOWAWAY +TOWAWAYS +TOWBOAT +TOWBOATS +TOWED +TOWEL +TOWELED +TOWELETTE +TOWELETTES +TOWELING +TOWELINGS +TOWELLED +TOWELLING +TOWELLINGS +TOWELS +TOWER +TOWERED +TOWERIER +TOWERIEST +TOWERING +TOWERINGLY +TOWERLIKE +TOWERS +TOWERY +TOWHEAD +TOWHEADED +TOWHEADS +TOWHEE +TOWHEES +TOWIE +TOWIES +TOWING +TOWLINE +TOWLINES +TOWMOND +TOWMONDS +TOWMONT +TOWMONTS +TOWN +TOWNEE +TOWNEES +TOWNFOLK +TOWNHOME +TOWNHOMES +TOWNHOUSE +TOWNHOUSES +TOWNIE +TOWNIES +TOWNISH +TOWNLESS +TOWNLET +TOWNLETS +TOWNS +TOWNSCAPE +TOWNSCAPES +TOWNSFOLK +TOWNSHIP +TOWNSHIPS +TOWNSMAN +TOWNSMEN +TOWNSPEOPLE +TOWNSWOMAN +TOWNSWOMEN +TOWNWEAR +TOWNY +TOWPATH +TOWPATHS +TOWPLANE +TOWPLANES +TOWROPE +TOWROPES +TOWS +TOWSACK +TOWSACKS +TOWY +TOXAEMIA +TOXAEMIAS +TOXAEMIC +TOXAPHENE +TOXAPHENES +TOXEMIA +TOXEMIAS +TOXEMIC +TOXIC +TOXICAL +TOXICALLY +TOXICANT +TOXICANTS +TOXICITIES +TOXICITY +TOXICOLOGIC +TOXICOLOGICAL +TOXICOLOGICALLY +TOXICOLOGIES +TOXICOLOGIST +TOXICOLOGISTS +TOXICOLOGY +TOXICOSES +TOXICOSIS +TOXICS +TOXIGENIC +TOXIGENICITIES +TOXIGENICITY +TOXIN +TOXINE +TOXINES +TOXINS +TOXOID +TOXOIDS +TOXOPHILIES +TOXOPHILITE +TOXOPHILITES +TOXOPHILY +TOXOPLASMA +TOXOPLASMAS +TOXOPLASMIC +TOXOPLASMOSES +TOXOPLASMOSIS +TOY +TOYED +TOYER +TOYERS +TOYING +TOYISH +TOYLESS +TOYLIKE +TOYO +TOYON +TOYONS +TOYOS +TOYS +TOYSHOP +TOYSHOPS +TRABEATE +TRABEATED +TRABEATION +TRABEATIONS +TRABECULA +TRABECULAE +TRABECULAR +TRABECULAS +TRABECULATE +TRACE +TRACEABILITIES +TRACEABILITY +TRACEABLE +TRACEABLY +TRACED +TRACELESS +TRACER +TRACERIED +TRACERIES +TRACERS +TRACERY +TRACES +TRACHEA +TRACHEAE +TRACHEAL +TRACHEARY +TRACHEAS +TRACHEATE +TRACHEATED +TRACHEATES +TRACHEID +TRACHEIDS +TRACHEITIS +TRACHEITISES +TRACHEOLAR +TRACHEOLE +TRACHEOLES +TRACHEOPHYTE +TRACHEOPHYTES +TRACHEOSTOMIES +TRACHEOSTOMY +TRACHEOTOMIES +TRACHEOTOMY +TRACHLE +TRACHLED +TRACHLES +TRACHLING +TRACHOMA +TRACHOMAS +TRACHYTE +TRACHYTES +TRACHYTIC +TRACING +TRACINGS +TRACK +TRACKABLE +TRACKAGE +TRACKAGES +TRACKBALL +TRACKBALLS +TRACKED +TRACKER +TRACKERS +TRACKING +TRACKINGS +TRACKLAYER +TRACKLAYERS +TRACKLAYING +TRACKLAYINGS +TRACKLESS +TRACKMAN +TRACKMEN +TRACKPAD +TRACKPADS +TRACKS +TRACKSIDE +TRACKSIDES +TRACKSUIT +TRACKSUITS +TRACKWALKER +TRACKWALKERS +TRACKWAY +TRACKWAYS +TRACT +TRACTABILITIES +TRACTABILITY +TRACTABLE +TRACTABLENESS +TRACTABLENESSES +TRACTABLY +TRACTATE +TRACTATES +TRACTILE +TRACTION +TRACTIONAL +TRACTIONS +TRACTIVE +TRACTOR +TRACTORS +TRACTS +TRAD +TRADABLE +TRADE +TRADEABLE +TRADECRAFT +TRADECRAFTS +TRADED +TRADEMARK +TRADEMARKED +TRADEMARKING +TRADEMARKS +TRADEOFF +TRADEOFFS +TRADER +TRADERS +TRADES +TRADESCANTIA +TRADESCANTIAS +TRADESMAN +TRADESMEN +TRADESPEOPLE +TRADING +TRADITION +TRADITIONAL +TRADITIONALISM +TRADITIONALISMS +TRADITIONALIST +TRADITIONALISTS +TRADITIONALIZE +TRADITIONALIZED +TRADITIONALIZES +TRADITIONALLY +TRADITIONARY +TRADITIONLESS +TRADITIONS +TRADITIVE +TRADITOR +TRADITORES +TRADUCE +TRADUCED +TRADUCEMENT +TRADUCEMENTS +TRADUCER +TRADUCERS +TRADUCES +TRADUCING +TRAFFIC +TRAFFICABILITY +TRAFFICABLE +TRAFFICKED +TRAFFICKER +TRAFFICKERS +TRAFFICKING +TRAFFICS +TRAGACANTH +TRAGACANTHS +TRAGEDIAN +TRAGEDIANS +TRAGEDIENNE +TRAGEDIENNES +TRAGEDIES +TRAGEDY +TRAGI +TRAGIC +TRAGICAL +TRAGICALLY +TRAGICOMEDIES +TRAGICOMEDY +TRAGICOMIC +TRAGICOMICAL +TRAGICS +TRAGOPAN +TRAGOPANS +TRAGUS +TRAIK +TRAIKED +TRAIKING +TRAIKS +TRAIL +TRAILBLAZER +TRAILBLAZERS +TRAILBLAZING +TRAILBREAKER +TRAILBREAKERS +TRAILED +TRAILER +TRAILERABLE +TRAILERED +TRAILERING +TRAILERINGS +TRAILERIST +TRAILERISTS +TRAILERITE +TRAILERITES +TRAILERS +TRAILHEAD +TRAILHEADS +TRAILING +TRAILLESS +TRAILS +TRAILSIDE +TRAIN +TRAINABILITIES +TRAINABILITY +TRAINABLE +TRAINBAND +TRAINBANDS +TRAINBEARER +TRAINBEARERS +TRAINED +TRAINEE +TRAINEES +TRAINEESHIP +TRAINEESHIPS +TRAINER +TRAINERS +TRAINFUL +TRAINFULS +TRAINING +TRAININGS +TRAINLOAD +TRAINLOADS +TRAINMAN +TRAINMEN +TRAINS +TRAINWAY +TRAINWAYS +TRAIPSE +TRAIPSED +TRAIPSES +TRAIPSING +TRAIT +TRAITOR +TRAITORESS +TRAITORESSES +TRAITOROUS +TRAITOROUSLY +TRAITORS +TRAITRESS +TRAITRESSES +TRAITS +TRAJECT +TRAJECTED +TRAJECTING +TRAJECTION +TRAJECTIONS +TRAJECTORIES +TRAJECTORY +TRAJECTS +TRAM +TRAMCAR +TRAMCARS +TRAMEL +TRAMELED +TRAMELING +TRAMELL +TRAMELLED +TRAMELLING +TRAMELLS +TRAMELS +TRAMLESS +TRAMLINE +TRAMLINES +TRAMMED +TRAMMEL +TRAMMELED +TRAMMELER +TRAMMELERS +TRAMMELING +TRAMMELLED +TRAMMELLING +TRAMMELS +TRAMMING +TRAMONTANE +TRAMONTANES +TRAMP +TRAMPED +TRAMPER +TRAMPERS +TRAMPIER +TRAMPIEST +TRAMPING +TRAMPISH +TRAMPLE +TRAMPLED +TRAMPLER +TRAMPLERS +TRAMPLES +TRAMPLING +TRAMPOLINE +TRAMPOLINER +TRAMPOLINERS +TRAMPOLINES +TRAMPOLINING +TRAMPOLININGS +TRAMPOLINIST +TRAMPOLINISTS +TRAMPS +TRAMPY +TRAMROAD +TRAMROADS +TRAMS +TRAMWAY +TRAMWAYS +TRANCE +TRANCED +TRANCELIKE +TRANCES +TRANCHE +TRANCHES +TRANCING +TRANGAM +TRANGAMS +TRANK +TRANKS +TRANNIES +TRANNY +TRANQ +TRANQS +TRANQUIL +TRANQUILER +TRANQUILEST +TRANQUILITIES +TRANQUILITY +TRANQUILIZE +TRANQUILIZED +TRANQUILIZER +TRANQUILIZERS +TRANQUILIZES +TRANQUILIZING +TRANQUILLER +TRANQUILLEST +TRANQUILLITIES +TRANQUILLITY +TRANQUILLIZE +TRANQUILLIZED +TRANQUILLIZER +TRANQUILLIZERS +TRANQUILLIZES +TRANQUILLIZING +TRANQUILLY +TRANQUILNESS +TRANQUILNESSES +TRANS +TRANSACT +TRANSACTED +TRANSACTING +TRANSACTINIDE +TRANSACTION +TRANSACTIONAL +TRANSACTIONS +TRANSACTOR +TRANSACTORS +TRANSACTS +TRANSALPINE +TRANSAMINASE +TRANSAMINASES +TRANSAMINATION +TRANSAMINATIONS +TRANSATLANTIC +TRANSAXLE +TRANSAXLES +TRANSCEIVER +TRANSCEIVERS +TRANSCEND +TRANSCENDED +TRANSCENDENCE +TRANSCENDENCES +TRANSCENDENCIES +TRANSCENDENCY +TRANSCENDENT +TRANSCENDENTAL +TRANSCENDENTLY +TRANSCENDING +TRANSCENDS +TRANSCRIBE +TRANSCRIBED +TRANSCRIBER +TRANSCRIBERS +TRANSCRIBES +TRANSCRIBING +TRANSCRIPT +TRANSCRIPTASE +TRANSCRIPTASES +TRANSCRIPTION +TRANSCRIPTIONAL +TRANSCRIPTIONS +TRANSCRIPTS +TRANSCULTURAL +TRANSCUTANEOUS +TRANSDERMAL +TRANSDUCE +TRANSDUCED +TRANSDUCER +TRANSDUCERS +TRANSDUCES +TRANSDUCING +TRANSDUCTANT +TRANSDUCTANTS +TRANSDUCTION +TRANSDUCTIONAL +TRANSDUCTIONS +TRANSECT +TRANSECTED +TRANSECTING +TRANSECTION +TRANSECTIONS +TRANSECTS +TRANSEPT +TRANSEPTAL +TRANSEPTS +TRANSEUNT +TRANSFECT +TRANSFECTED +TRANSFECTING +TRANSFECTION +TRANSFECTIONS +TRANSFECTS +TRANSFER +TRANSFERABILITY +TRANSFERABLE +TRANSFERAL +TRANSFERALS +TRANSFERASE +TRANSFERASES +TRANSFEREE +TRANSFEREES +TRANSFERENCE +TRANSFERENCES +TRANSFERENTIAL +TRANSFEROR +TRANSFERORS +TRANSFERRABLE +TRANSFERRED +TRANSFERRER +TRANSFERRERS +TRANSFERRIN +TRANSFERRING +TRANSFERRINS +TRANSFERS +TRANSFIGURATION +TRANSFIGURE +TRANSFIGURED +TRANSFIGURES +TRANSFIGURING +TRANSFINITE +TRANSFIX +TRANSFIXED +TRANSFIXES +TRANSFIXING +TRANSFIXION +TRANSFIXIONS +TRANSFIXT +TRANSFORM +TRANSFORMABLE +TRANSFORMATION +TRANSFORMATIONS +TRANSFORMATIVE +TRANSFORMED +TRANSFORMER +TRANSFORMERS +TRANSFORMING +TRANSFORMS +TRANSFUSABLE +TRANSFUSE +TRANSFUSED +TRANSFUSES +TRANSFUSIBLE +TRANSFUSING +TRANSFUSION +TRANSFUSIONAL +TRANSFUSIONS +TRANSGENDER +TRANSGENDERED +TRANSGENE +TRANSGENES +TRANSGENIC +TRANSGRESS +TRANSGRESSED +TRANSGRESSES +TRANSGRESSING +TRANSGRESSION +TRANSGRESSIONS +TRANSGRESSIVE +TRANSGRESSOR +TRANSGRESSORS +TRANSHIP +TRANSHIPPED +TRANSHIPPING +TRANSHIPS +TRANSHISTORICAL +TRANSHUMANCE +TRANSHUMANCES +TRANSHUMANT +TRANSHUMANTS +TRANSIENCE +TRANSIENCES +TRANSIENCIES +TRANSIENCY +TRANSIENT +TRANSIENTLY +TRANSIENTS +TRANSILLUMINATE +TRANSISTOR +TRANSISTORISE +TRANSISTORISED +TRANSISTORISES +TRANSISTORISING +TRANSISTORIZE +TRANSISTORIZED +TRANSISTORIZES +TRANSISTORIZING +TRANSISTORS +TRANSIT +TRANSITED +TRANSITING +TRANSITION +TRANSITIONAL +TRANSITIONALLY +TRANSITIONS +TRANSITIVE +TRANSITIVELY +TRANSITIVENESS +TRANSITIVITIES +TRANSITIVITY +TRANSITORILY +TRANSITORINESS +TRANSITORY +TRANSITS +TRANSLATABILITY +TRANSLATABLE +TRANSLATE +TRANSLATED +TRANSLATES +TRANSLATING +TRANSLATION +TRANSLATIONAL +TRANSLATIONS +TRANSLATIVE +TRANSLATOR +TRANSLATORS +TRANSLATORY +TRANSLITERATE +TRANSLITERATED +TRANSLITERATES +TRANSLITERATING +TRANSLITERATION +TRANSLOCATE +TRANSLOCATED +TRANSLOCATES +TRANSLOCATING +TRANSLOCATION +TRANSLOCATIONS +TRANSLUCENCE +TRANSLUCENCES +TRANSLUCENCIES +TRANSLUCENCY +TRANSLUCENT +TRANSLUCENTLY +TRANSMARINE +TRANSMEMBRANE +TRANSMIGRATE +TRANSMIGRATED +TRANSMIGRATES +TRANSMIGRATING +TRANSMIGRATION +TRANSMIGRATIONS +TRANSMIGRATOR +TRANSMIGRATORS +TRANSMIGRATORY +TRANSMISSIBLE +TRANSMISSION +TRANSMISSIONS +TRANSMISSIVE +TRANSMISSIVITY +TRANSMISSOMETER +TRANSMIT +TRANSMITS +TRANSMITTABLE +TRANSMITTAL +TRANSMITTALS +TRANSMITTANCE +TRANSMITTANCES +TRANSMITTED +TRANSMITTER +TRANSMITTERS +TRANSMITTING +TRANSMOGRIFIED +TRANSMOGRIFIES +TRANSMOGRIFY +TRANSMOGRIFYING +TRANSMONTANE +TRANSMOUNTAIN +TRANSMUTABLE +TRANSMUTATION +TRANSMUTATIONS +TRANSMUTATIVE +TRANSMUTE +TRANSMUTED +TRANSMUTES +TRANSMUTING +TRANSNATIONAL +TRANSNATURAL +TRANSOCEANIC +TRANSOM +TRANSOMS +TRANSONIC +TRANSPACIFIC +TRANSPARENCE +TRANSPARENCES +TRANSPARENCIES +TRANSPARENCY +TRANSPARENT +TRANSPARENTIZE +TRANSPARENTIZED +TRANSPARENTIZES +TRANSPARENTLY +TRANSPARENTNESS +TRANSPERSONAL +TRANSPICUOUS +TRANSPIERCE +TRANSPIERCED +TRANSPIERCES +TRANSPIERCING +TRANSPIRATION +TRANSPIRATIONAL +TRANSPIRATIONS +TRANSPIRE +TRANSPIRED +TRANSPIRES +TRANSPIRING +TRANSPLACENTAL +TRANSPLANT +TRANSPLANTABLE +TRANSPLANTATION +TRANSPLANTED +TRANSPLANTER +TRANSPLANTERS +TRANSPLANTING +TRANSPLANTS +TRANSPOLAR +TRANSPONDER +TRANSPONDERS +TRANSPONTINE +TRANSPORT +TRANSPORTABLE +TRANSPORTATION +TRANSPORTATIONS +TRANSPORTED +TRANSPORTER +TRANSPORTERS +TRANSPORTING +TRANSPORTS +TRANSPOSABLE +TRANSPOSE +TRANSPOSED +TRANSPOSES +TRANSPOSING +TRANSPOSITION +TRANSPOSITIONAL +TRANSPOSITIONS +TRANSPOSON +TRANSPOSONS +TRANSSEXUAL +TRANSSEXUALISM +TRANSSEXUALISMS +TRANSSEXUALITY +TRANSSEXUALS +TRANSSHAPE +TRANSSHAPED +TRANSSHAPES +TRANSSHAPING +TRANSSHIP +TRANSSHIPMENT +TRANSSHIPMENTS +TRANSSHIPPED +TRANSSHIPPING +TRANSSHIPS +TRANSSONIC +TRANSTHORACIC +TRANSUBSTANTIAL +TRANSUDATE +TRANSUDATES +TRANSUDATION +TRANSUDATIONS +TRANSUDE +TRANSUDED +TRANSUDES +TRANSUDING +TRANSURANIC +TRANSURANICS +TRANSURANIUM +TRANSVALUATE +TRANSVALUATED +TRANSVALUATES +TRANSVALUATING +TRANSVALUATION +TRANSVALUATIONS +TRANSVALUE +TRANSVALUED +TRANSVALUES +TRANSVALUING +TRANSVERSAL +TRANSVERSALS +TRANSVERSE +TRANSVERSELY +TRANSVERSES +TRANSVESTISM +TRANSVESTISMS +TRANSVESTITE +TRANSVESTITES +TRAP +TRAPAN +TRAPANNED +TRAPANNING +TRAPANS +TRAPBALL +TRAPBALLS +TRAPDOOR +TRAPDOORS +TRAPES +TRAPESED +TRAPESES +TRAPESING +TRAPEZE +TRAPEZES +TRAPEZIA +TRAPEZIAL +TRAPEZII +TRAPEZIST +TRAPEZISTS +TRAPEZIUM +TRAPEZIUMS +TRAPEZIUS +TRAPEZIUSES +TRAPEZOHEDRA +TRAPEZOHEDRON +TRAPEZOHEDRONS +TRAPEZOID +TRAPEZOIDAL +TRAPEZOIDS +TRAPLIKE +TRAPLINE +TRAPLINES +TRAPNEST +TRAPNESTED +TRAPNESTING +TRAPNESTS +TRAPPEAN +TRAPPED +TRAPPER +TRAPPERS +TRAPPING +TRAPPINGS +TRAPPOSE +TRAPPOUS +TRAPROCK +TRAPROCKS +TRAPS +TRAPSHOOTER +TRAPSHOOTERS +TRAPSHOOTING +TRAPSHOOTINGS +TRAPT +TRAPUNTO +TRAPUNTOS +TRASH +TRASHED +TRASHER +TRASHERS +TRASHES +TRASHIER +TRASHIEST +TRASHILY +TRASHINESS +TRASHINESSES +TRASHING +TRASHMAN +TRASHMEN +TRASHY +TRASS +TRASSES +TRATTORIA +TRATTORIAS +TRATTORIE +TRAUCHLE +TRAUCHLED +TRAUCHLES +TRAUCHLING +TRAUMA +TRAUMAS +TRAUMATA +TRAUMATIC +TRAUMATICALLY +TRAUMATISE +TRAUMATISED +TRAUMATISES +TRAUMATISING +TRAUMATISM +TRAUMATISMS +TRAUMATIZATION +TRAUMATIZATIONS +TRAUMATIZE +TRAUMATIZED +TRAUMATIZES +TRAUMATIZING +TRAVAIL +TRAVAILED +TRAVAILING +TRAVAILS +TRAVE +TRAVEL +TRAVELED +TRAVELER +TRAVELERS +TRAVELING +TRAVELLED +TRAVELLER +TRAVELLERS +TRAVELLING +TRAVELOG +TRAVELOGS +TRAVELOGUE +TRAVELOGUES +TRAVELS +TRAVERSABLE +TRAVERSAL +TRAVERSALS +TRAVERSE +TRAVERSED +TRAVERSER +TRAVERSERS +TRAVERSES +TRAVERSING +TRAVERTINE +TRAVERTINES +TRAVES +TRAVESTIED +TRAVESTIES +TRAVESTY +TRAVESTYING +TRAVOIS +TRAVOISE +TRAVOISES +TRAWL +TRAWLED +TRAWLER +TRAWLERMAN +TRAWLERMEN +TRAWLERS +TRAWLEY +TRAWLEYS +TRAWLING +TRAWLNET +TRAWLNETS +TRAWLS +TRAY +TRAYFUL +TRAYFULS +TRAYS +TRAZODONE +TRAZODONES +TREACHERIES +TREACHEROUS +TREACHEROUSLY +TREACHEROUSNESS +TREACHERY +TREACLE +TREACLES +TREACLIER +TREACLIEST +TREACLY +TREAD +TREADED +TREADER +TREADERS +TREADING +TREADLE +TREADLED +TREADLER +TREADLERS +TREADLES +TREADLESS +TREADLING +TREADMILL +TREADMILLS +TREADS +TREASON +TREASONABLE +TREASONABLY +TREASONOUS +TREASONS +TREASURABLE +TREASURE +TREASURED +TREASURER +TREASURERS +TREASURERSHIP +TREASURERSHIPS +TREASURES +TREASURIES +TREASURING +TREASURY +TREAT +TREATABILITIES +TREATABILITY +TREATABLE +TREATED +TREATER +TREATERS +TREATIES +TREATING +TREATISE +TREATISES +TREATMENT +TREATMENTS +TREATS +TREATY +TREBBIANO +TREBBIANOS +TREBLE +TREBLED +TREBLES +TREBLING +TREBLY +TREBUCHET +TREBUCHETS +TREBUCKET +TREBUCKETS +TRECENTO +TRECENTOS +TREDDLE +TREDDLED +TREDDLES +TREDDLING +TREDECILLION +TREDECILLIONS +TREE +TREED +TREEHOPPER +TREEHOPPERS +TREEHOUSE +TREEHOUSES +TREEING +TREELAWN +TREELAWNS +TREELESS +TREELIKE +TREEN +TREENAIL +TREENAILS +TREENS +TREENWARE +TREENWARES +TREES +TREETOP +TREETOPS +TREF +TREFAH +TREFOIL +TREFOILS +TREHALA +TREHALAS +TREHALOSE +TREHALOSES +TREILLAGE +TREILLAGES +TREK +TREKKED +TREKKER +TREKKERS +TREKKING +TREKS +TRELLIS +TRELLISED +TRELLISES +TRELLISING +TRELLISWORK +TRELLISWORKS +TREMATODE +TREMATODES +TREMBLE +TREMBLED +TREMBLER +TREMBLERS +TREMBLES +TREMBLIER +TREMBLIEST +TREMBLING +TREMBLY +TREMENDOUS +TREMENDOUSLY +TREMENDOUSNESS +TREMOLITE +TREMOLITES +TREMOLITIC +TREMOLO +TREMOLOS +TREMOR +TREMOROUS +TREMORS +TREMULANT +TREMULOUS +TREMULOUSLY +TREMULOUSNESS +TREMULOUSNESSES +TRENAIL +TRENAILS +TRENCH +TRENCHANCIES +TRENCHANCY +TRENCHANT +TRENCHANTLY +TRENCHED +TRENCHER +TRENCHERMAN +TRENCHERMEN +TRENCHERS +TRENCHES +TRENCHING +TREND +TRENDED +TRENDIER +TRENDIES +TRENDIEST +TRENDILY +TRENDINESS +TRENDINESSES +TRENDING +TRENDOID +TRENDOIDS +TRENDS +TRENDSETTER +TRENDSETTERS +TRENDSETTING +TRENDY +TREPAN +TREPANATION +TREPANATIONS +TREPANG +TREPANGS +TREPANNED +TREPANNER +TREPANNERS +TREPANNING +TREPANS +TREPHINATION +TREPHINATIONS +TREPHINE +TREPHINED +TREPHINES +TREPHINING +TREPID +TREPIDANT +TREPIDATION +TREPIDATIONS +TREPONEMA +TREPONEMAL +TREPONEMAS +TREPONEMATA +TREPONEMATOSES +TREPONEMATOSIS +TREPONEME +TREPONEMES +TRES +TRESPASS +TRESPASSED +TRESPASSER +TRESPASSERS +TRESPASSES +TRESPASSING +TRESS +TRESSED +TRESSEL +TRESSELS +TRESSES +TRESSIER +TRESSIEST +TRESSOUR +TRESSOURS +TRESSURE +TRESSURES +TRESSY +TRESTLE +TRESTLES +TRESTLEWORK +TRESTLEWORKS +TRET +TRETINOIN +TRETINOINS +TRETS +TREVALLIES +TREVALLY +TREVALLYS +TREVET +TREVETS +TREWS +TREY +TREYS +TRIABLE +TRIAC +TRIACETATE +TRIACETATES +TRIACID +TRIACIDS +TRIACS +TRIAD +TRIADIC +TRIADICALLY +TRIADICS +TRIADISM +TRIADISMS +TRIADS +TRIAGE +TRIAGED +TRIAGES +TRIAGING +TRIAL +TRIALOGUE +TRIALOGUES +TRIALS +TRIAMCINOLONE +TRIAMCINOLONES +TRIANGLE +TRIANGLED +TRIANGLES +TRIANGULAR +TRIANGULARITIES +TRIANGULARITY +TRIANGULARLY +TRIANGULATE +TRIANGULATED +TRIANGULATES +TRIANGULATING +TRIANGULATION +TRIANGULATIONS +TRIARCHIES +TRIARCHY +TRIASSIC +TRIATHLETE +TRIATHLETES +TRIATHLON +TRIATHLONS +TRIATOMIC +TRIAXIAL +TRIAXIALITIES +TRIAXIALITY +TRIAZIN +TRIAZINE +TRIAZINES +TRIAZINS +TRIAZOLE +TRIAZOLES +TRIBADE +TRIBADES +TRIBADIC +TRIBADISM +TRIBADISMS +TRIBAL +TRIBALISM +TRIBALISMS +TRIBALIST +TRIBALISTS +TRIBALLY +TRIBALS +TRIBASIC +TRIBE +TRIBES +TRIBESMAN +TRIBESMEN +TRIBESPEOPLE +TRIBOELECTRIC +TRIBOLOGICAL +TRIBOLOGIES +TRIBOLOGIST +TRIBOLOGISTS +TRIBOLOGY +TRIBRACH +TRIBRACHIC +TRIBRACHS +TRIBULATE +TRIBULATED +TRIBULATES +TRIBULATING +TRIBULATION +TRIBULATIONS +TRIBUNAL +TRIBUNALS +TRIBUNARY +TRIBUNATE +TRIBUNATES +TRIBUNE +TRIBUNES +TRIBUNESHIP +TRIBUNESHIPS +TRIBUTARIES +TRIBUTARY +TRIBUTE +TRIBUTES +TRICARBOXYLIC +TRICE +TRICED +TRICEP +TRICEPS +TRICEPSES +TRICERATOPS +TRICERATOPSES +TRICES +TRICHIASES +TRICHIASIS +TRICHINA +TRICHINAE +TRICHINAL +TRICHINAS +TRICHINIZE +TRICHINIZED +TRICHINIZES +TRICHINIZING +TRICHINOSES +TRICHINOSIS +TRICHINOUS +TRICHITE +TRICHITES +TRICHLORFON +TRICHLORFONS +TRICHLORPHON +TRICHLORPHONS +TRICHOCYST +TRICHOCYSTS +TRICHOGYNE +TRICHOGYNES +TRICHOID +TRICHOLOGIES +TRICHOLOGIST +TRICHOLOGISTS +TRICHOLOGY +TRICHOME +TRICHOMES +TRICHOMIC +TRICHOMONACIDAL +TRICHOMONACIDE +TRICHOMONACIDES +TRICHOMONAD +TRICHOMONADS +TRICHOMONAL +TRICHOMONIASES +TRICHOMONIASIS +TRICHOPTERAN +TRICHOPTERANS +TRICHOSES +TRICHOSIS +TRICHOTHECENE +TRICHOTHECENES +TRICHOTOMIES +TRICHOTOMOUS +TRICHOTOMOUSLY +TRICHOTOMY +TRICHROIC +TRICHROMAT +TRICHROMATIC +TRICHROMATISM +TRICHROMATISMS +TRICHROMATS +TRICHROME +TRICING +TRICK +TRICKED +TRICKER +TRICKERIES +TRICKERS +TRICKERY +TRICKIE +TRICKIER +TRICKIEST +TRICKILY +TRICKINESS +TRICKINESSES +TRICKING +TRICKISH +TRICKISHLY +TRICKISHNESS +TRICKISHNESSES +TRICKLE +TRICKLED +TRICKLES +TRICKLIER +TRICKLIEST +TRICKLING +TRICKLY +TRICKS +TRICKSIER +TRICKSIEST +TRICKSINESS +TRICKSINESSES +TRICKSTER +TRICKSTERS +TRICKSY +TRICKY +TRICLAD +TRICLADS +TRICLINIA +TRICLINIC +TRICLINIUM +TRICLOSAN +TRICLOSANS +TRICOLETTE +TRICOLETTES +TRICOLOR +TRICOLORED +TRICOLORS +TRICOLOUR +TRICOLOURS +TRICORN +TRICORNE +TRICORNERED +TRICORNES +TRICORNS +TRICOT +TRICOTINE +TRICOTINES +TRICOTS +TRICROTIC +TRICTRAC +TRICTRACS +TRICUSPID +TRICUSPIDS +TRICYCLE +TRICYCLES +TRICYCLIC +TRICYCLICS +TRIDACTYL +TRIDENT +TRIDENTAL +TRIDENTS +TRIDIMENSIONAL +TRIDUUM +TRIDUUMS +TRIED +TRIENE +TRIENES +TRIENNIA +TRIENNIAL +TRIENNIALLY +TRIENNIALS +TRIENNIUM +TRIENNIUMS +TRIENS +TRIENTES +TRIER +TRIERARCH +TRIERARCHIES +TRIERARCHS +TRIERARCHY +TRIERS +TRIES +TRIETHYL +TRIFACIAL +TRIFACIALS +TRIFECTA +TRIFECTAS +TRIFID +TRIFLE +TRIFLED +TRIFLER +TRIFLERS +TRIFLES +TRIFLING +TRIFLINGS +TRIFLUOPERAZINE +TRIFLURALIN +TRIFLURALINS +TRIFOCAL +TRIFOCALS +TRIFOLD +TRIFOLIATE +TRIFOLIOLATE +TRIFOLIUM +TRIFOLIUMS +TRIFORIA +TRIFORIUM +TRIFORM +TRIFORMED +TRIFURCATE +TRIFURCATED +TRIFURCATES +TRIFURCATING +TRIFURCATION +TRIFURCATIONS +TRIG +TRIGEMINAL +TRIGEMINALS +TRIGGED +TRIGGER +TRIGGERED +TRIGGERFISH +TRIGGERFISHES +TRIGGERING +TRIGGERMAN +TRIGGERMEN +TRIGGERS +TRIGGEST +TRIGGING +TRIGLY +TRIGLYCERIDE +TRIGLYCERIDES +TRIGLYPH +TRIGLYPHIC +TRIGLYPHICAL +TRIGLYPHS +TRIGNESS +TRIGNESSES +TRIGO +TRIGON +TRIGONAL +TRIGONALLY +TRIGONOMETRIC +TRIGONOMETRICAL +TRIGONOMETRIES +TRIGONOMETRY +TRIGONOUS +TRIGONS +TRIGOS +TRIGRAM +TRIGRAMS +TRIGRAPH +TRIGRAPHIC +TRIGRAPHS +TRIGS +TRIHALOMETHANE +TRIHALOMETHANES +TRIHEDRA +TRIHEDRAL +TRIHEDRALS +TRIHEDRON +TRIHEDRONS +TRIHYBRID +TRIHYBRIDS +TRIHYDROXY +TRIJET +TRIJETS +TRIJUGATE +TRIJUGOUS +TRIKE +TRIKES +TRILATERAL +TRILBIES +TRILBY +TRILINEAR +TRILINGUAL +TRILINGUALLY +TRILITERAL +TRILITERALISM +TRILITERALISMS +TRILITERALS +TRILITH +TRILITHON +TRILITHONS +TRILITHS +TRILL +TRILLED +TRILLER +TRILLERS +TRILLING +TRILLION +TRILLIONS +TRILLIONTH +TRILLIONTHS +TRILLIUM +TRILLIUMS +TRILLS +TRILOBAL +TRILOBATE +TRILOBED +TRILOBITE +TRILOBITES +TRILOGIES +TRILOGY +TRIM +TRIMARAN +TRIMARANS +TRIMER +TRIMERIC +TRIMERISM +TRIMERISMS +TRIMEROUS +TRIMERS +TRIMESTER +TRIMESTERS +TRIMETER +TRIMETERS +TRIMETHOPRIM +TRIMETHOPRIMS +TRIMETRIC +TRIMETROGON +TRIMETROGONS +TRIMLY +TRIMMED +TRIMMER +TRIMMERS +TRIMMEST +TRIMMING +TRIMMINGS +TRIMNESS +TRIMNESSES +TRIMONTHLY +TRIMORPH +TRIMORPHIC +TRIMORPHS +TRIMOTOR +TRIMOTORS +TRIMS +TRINAL +TRINARY +TRINDLE +TRINDLED +TRINDLES +TRINDLING +TRINE +TRINED +TRINES +TRINING +TRINITARIAN +TRINITIES +TRINITROTOLUENE +TRINITY +TRINKET +TRINKETED +TRINKETER +TRINKETERS +TRINKETING +TRINKETRIES +TRINKETRY +TRINKETS +TRINKUMS +TRINOCULAR +TRINODAL +TRINOMIAL +TRINOMIALS +TRINUCLEOTIDE +TRINUCLEOTIDES +TRIO +TRIODE +TRIODES +TRIOL +TRIOLET +TRIOLETS +TRIOLS +TRIOS +TRIOSE +TRIOSES +TRIOXID +TRIOXIDE +TRIOXIDES +TRIOXIDS +TRIP +TRIPACK +TRIPACKS +TRIPART +TRIPARTITE +TRIPE +TRIPEDAL +TRIPES +TRIPHASE +TRIPHOSPHATE +TRIPHOSPHATES +TRIPHTHONG +TRIPHTHONGAL +TRIPHTHONGS +TRIPINNATE +TRIPINNATELY +TRIPLANE +TRIPLANES +TRIPLE +TRIPLED +TRIPLES +TRIPLET +TRIPLETAIL +TRIPLETAILS +TRIPLETS +TRIPLEX +TRIPLEXES +TRIPLICATE +TRIPLICATED +TRIPLICATES +TRIPLICATING +TRIPLICATION +TRIPLICATIONS +TRIPLICITIES +TRIPLICITY +TRIPLING +TRIPLITE +TRIPLITES +TRIPLOBLASTIC +TRIPLOID +TRIPLOIDIES +TRIPLOIDS +TRIPLOIDY +TRIPLY +TRIPOD +TRIPODAL +TRIPODIC +TRIPODIES +TRIPODS +TRIPODY +TRIPOLI +TRIPOLIS +TRIPOS +TRIPOSES +TRIPPED +TRIPPER +TRIPPERS +TRIPPET +TRIPPETS +TRIPPIER +TRIPPIEST +TRIPPING +TRIPPINGLY +TRIPPINGS +TRIPPY +TRIPS +TRIPTAN +TRIPTANE +TRIPTANES +TRIPTANS +TRIPTYCA +TRIPTYCAS +TRIPTYCH +TRIPTYCHS +TRIPWIRE +TRIPWIRES +TRIQUETROUS +TRIRADIATE +TRIREME +TRIREMES +TRISACCHARIDE +TRISACCHARIDES +TRISCELE +TRISCELES +TRISECT +TRISECTED +TRISECTING +TRISECTION +TRISECTIONS +TRISECTOR +TRISECTORS +TRISECTS +TRISEME +TRISEMES +TRISEMIC +TRISHAW +TRISHAWS +TRISKELE +TRISKELES +TRISKELIA +TRISKELION +TRISKELIONS +TRISMIC +TRISMUS +TRISMUSES +TRISOCTAHEDRA +TRISOCTAHEDRON +TRISOCTAHEDRONS +TRISODIUM +TRISOME +TRISOMES +TRISOMIC +TRISOMICS +TRISOMIES +TRISOMY +TRISTATE +TRISTE +TRISTEARIN +TRISTEARINS +TRISTEZA +TRISTEZAS +TRISTFUL +TRISTFULLY +TRISTFULNESS +TRISTFULNESSES +TRISTICH +TRISTICHS +TRISTIMULUS +TRISUBSTITUTED +TRISULFIDE +TRISULFIDES +TRISYLLABIC +TRISYLLABLE +TRISYLLABLES +TRITE +TRITELY +TRITENESS +TRITENESSES +TRITER +TRITEST +TRITHEISM +TRITHEISMS +TRITHEIST +TRITHEISTIC +TRITHEISTICAL +TRITHEISTS +TRITHING +TRITHINGS +TRITIATED +TRITICALE +TRITICALES +TRITICUM +TRITICUMS +TRITIUM +TRITIUMS +TRITOMA +TRITOMAS +TRITON +TRITONE +TRITONES +TRITONS +TRITURABLE +TRITURATE +TRITURATED +TRITURATES +TRITURATING +TRITURATION +TRITURATIONS +TRITURATOR +TRITURATORS +TRIUMPH +TRIUMPHAL +TRIUMPHALISM +TRIUMPHALISMS +TRIUMPHALIST +TRIUMPHALISTS +TRIUMPHANT +TRIUMPHANTLY +TRIUMPHED +TRIUMPHING +TRIUMPHS +TRIUMVIR +TRIUMVIRATE +TRIUMVIRATES +TRIUMVIRI +TRIUMVIRS +TRIUNE +TRIUNES +TRIUNITIES +TRIUNITY +TRIVALENT +TRIVALVE +TRIVALVES +TRIVET +TRIVETS +TRIVIA +TRIVIAL +TRIVIALISE +TRIVIALISED +TRIVIALISES +TRIVIALISING +TRIVIALIST +TRIVIALISTS +TRIVIALITIES +TRIVIALITY +TRIVIALIZATION +TRIVIALIZATIONS +TRIVIALIZE +TRIVIALIZED +TRIVIALIZES +TRIVIALIZING +TRIVIALLY +TRIVIUM +TRIWEEKLIES +TRIWEEKLY +TROAK +TROAKED +TROAKING +TROAKS +TROCAR +TROCARS +TROCHAIC +TROCHAICS +TROCHAL +TROCHANTER +TROCHANTERAL +TROCHANTERIC +TROCHANTERS +TROCHAR +TROCHARS +TROCHE +TROCHEE +TROCHEES +TROCHES +TROCHIL +TROCHILI +TROCHILS +TROCHILUS +TROCHLEA +TROCHLEAE +TROCHLEAR +TROCHLEARS +TROCHLEAS +TROCHOID +TROCHOIDAL +TROCHOIDS +TROCHOPHORE +TROCHOPHORES +TROCK +TROCKED +TROCKING +TROCKS +TROD +TRODDEN +TRODE +TROFFER +TROFFERS +TROG +TROGLODYTE +TROGLODYTES +TROGLODYTIC +TROGON +TROGONS +TROGS +TROIKA +TROIKAS +TROILISM +TROILISMS +TROILITE +TROILITES +TROILUS +TROILUSES +TROIS +TROKE +TROKED +TROKES +TROKING +TROLAND +TROLANDS +TROLL +TROLLED +TROLLER +TROLLERS +TROLLEY +TROLLEYBUS +TROLLEYBUSES +TROLLEYBUSSES +TROLLEYED +TROLLEYING +TROLLEYS +TROLLIED +TROLLIES +TROLLING +TROLLINGS +TROLLOP +TROLLOPS +TROLLOPY +TROLLS +TROLLY +TROLLYING +TROMBONE +TROMBONES +TROMBONIST +TROMBONISTS +TROMMEL +TROMMELS +TROMP +TROMPE +TROMPED +TROMPES +TROMPING +TROMPS +TRONA +TRONAS +TRONE +TRONES +TROOP +TROOPED +TROOPER +TROOPERS +TROOPIAL +TROOPIALS +TROOPING +TROOPS +TROOPSHIP +TROOPSHIPS +TROOSTITE +TROOSTITES +TROOZ +TROP +TROPAEOLA +TROPAEOLUM +TROPAEOLUMS +TROPE +TROPEOLIN +TROPEOLINS +TROPES +TROPHALLAXES +TROPHALLAXIS +TROPHIC +TROPHICALLY +TROPHIED +TROPHIES +TROPHOBLAST +TROPHOBLASTIC +TROPHOBLASTS +TROPHOZOITE +TROPHOZOITES +TROPHY +TROPHYING +TROPIC +TROPICAL +TROPICALIZE +TROPICALIZED +TROPICALIZES +TROPICALIZING +TROPICALLY +TROPICALS +TROPICS +TROPIN +TROPINE +TROPINES +TROPINS +TROPISM +TROPISMS +TROPISTIC +TROPOCOLLAGEN +TROPOCOLLAGENS +TROPOLOGIC +TROPOLOGICAL +TROPOLOGICALLY +TROPOLOGIES +TROPOLOGY +TROPOMYOSIN +TROPOMYOSINS +TROPONIN +TROPONINS +TROPOPAUSE +TROPOPAUSES +TROPOSPHERE +TROPOSPHERES +TROPOSPHERIC +TROPOTAXES +TROPOTAXIS +TROT +TROTH +TROTHED +TROTHING +TROTHPLIGHT +TROTHPLIGHTED +TROTHPLIGHTING +TROTHPLIGHTS +TROTHS +TROTLINE +TROTLINES +TROTS +TROTTED +TROTTER +TROTTERS +TROTTING +TROTYL +TROTYLS +TROUBADOUR +TROUBADOURS +TROUBLE +TROUBLED +TROUBLEMAKER +TROUBLEMAKERS +TROUBLEMAKING +TROUBLEMAKINGS +TROUBLER +TROUBLERS +TROUBLES +TROUBLESHOOT +TROUBLESHOOTER +TROUBLESHOOTERS +TROUBLESHOOTING +TROUBLESHOOTS +TROUBLESHOT +TROUBLESOME +TROUBLESOMELY +TROUBLESOMENESS +TROUBLING +TROUBLOUS +TROUBLOUSLY +TROUBLOUSNESS +TROUBLOUSNESSES +TROUGH +TROUGHS +TROUNCE +TROUNCED +TROUNCER +TROUNCERS +TROUNCES +TROUNCING +TROUPE +TROUPED +TROUPER +TROUPERS +TROUPES +TROUPIAL +TROUPIALS +TROUPING +TROUSER +TROUSERS +TROUSSEAU +TROUSSEAUS +TROUSSEAUX +TROUT +TROUTIER +TROUTIEST +TROUTS +TROUTY +TROUVERE +TROUVERES +TROUVEUR +TROUVEURS +TROVE +TROVER +TROVERS +TROVES +TROW +TROWED +TROWEL +TROWELED +TROWELER +TROWELERS +TROWELING +TROWELLED +TROWELLER +TROWELLERS +TROWELLING +TROWELS +TROWING +TROWS +TROWSERS +TROWTH +TROWTHS +TROY +TROYS +TRUANCIES +TRUANCY +TRUANT +TRUANTED +TRUANTING +TRUANTLY +TRUANTRIES +TRUANTRY +TRUANTS +TRUCE +TRUCED +TRUCELESS +TRUCES +TRUCING +TRUCK +TRUCKABLE +TRUCKAGE +TRUCKAGES +TRUCKED +TRUCKER +TRUCKERS +TRUCKFUL +TRUCKFULS +TRUCKING +TRUCKINGS +TRUCKLE +TRUCKLED +TRUCKLER +TRUCKLERS +TRUCKLES +TRUCKLINE +TRUCKLINES +TRUCKLING +TRUCKLOAD +TRUCKLOADS +TRUCKMAN +TRUCKMASTER +TRUCKMASTERS +TRUCKMEN +TRUCKS +TRUCULENCE +TRUCULENCES +TRUCULENCIES +TRUCULENCY +TRUCULENT +TRUCULENTLY +TRUDGE +TRUDGED +TRUDGEN +TRUDGENS +TRUDGEON +TRUDGEONS +TRUDGER +TRUDGERS +TRUDGES +TRUDGING +TRUE +TRUEBLUE +TRUEBLUES +TRUEBORN +TRUEBRED +TRUED +TRUEHEARTED +TRUEHEARTEDNESS +TRUEING +TRUELOVE +TRUELOVES +TRUENESS +TRUENESSES +TRUEPENNIES +TRUEPENNY +TRUER +TRUES +TRUEST +TRUFFE +TRUFFES +TRUFFLE +TRUFFLED +TRUFFLES +TRUG +TRUGS +TRUING +TRUISM +TRUISMS +TRUISTIC +TRULL +TRULLS +TRULY +TRUMEAU +TRUMEAUX +TRUMP +TRUMPED +TRUMPERIES +TRUMPERY +TRUMPET +TRUMPETED +TRUMPETER +TRUMPETERS +TRUMPETING +TRUMPETLIKE +TRUMPETS +TRUMPING +TRUMPS +TRUNCATE +TRUNCATED +TRUNCATES +TRUNCATING +TRUNCATION +TRUNCATIONS +TRUNCHEON +TRUNCHEONED +TRUNCHEONING +TRUNCHEONS +TRUNDLE +TRUNDLED +TRUNDLER +TRUNDLERS +TRUNDLES +TRUNDLING +TRUNK +TRUNKED +TRUNKFISH +TRUNKFISHES +TRUNKFUL +TRUNKFULS +TRUNKS +TRUNNEL +TRUNNELS +TRUNNION +TRUNNIONS +TRUSS +TRUSSED +TRUSSER +TRUSSERS +TRUSSES +TRUSSING +TRUSSINGS +TRUST +TRUSTABILITIES +TRUSTABILITY +TRUSTABLE +TRUSTBUSTER +TRUSTBUSTERS +TRUSTED +TRUSTEE +TRUSTEED +TRUSTEEING +TRUSTEES +TRUSTEESHIP +TRUSTEESHIPS +TRUSTER +TRUSTERS +TRUSTFUL +TRUSTFULLY +TRUSTFULNESS +TRUSTFULNESSES +TRUSTIER +TRUSTIES +TRUSTIEST +TRUSTILY +TRUSTINESS +TRUSTINESSES +TRUSTING +TRUSTINGLY +TRUSTINGNESS +TRUSTINGNESSES +TRUSTLESS +TRUSTOR +TRUSTORS +TRUSTS +TRUSTWORTHILY +TRUSTWORTHINESS +TRUSTWORTHY +TRUSTY +TRUTH +TRUTHFUL +TRUTHFULLY +TRUTHFULNESS +TRUTHFULNESSES +TRUTHLESS +TRUTHS +TRY +TRYING +TRYINGLY +TRYMA +TRYMATA +TRYOUT +TRYOUTS +TRYPANOSOME +TRYPANOSOMES +TRYPANOSOMIASES +TRYPANOSOMIASIS +TRYPSIN +TRYPSINOGEN +TRYPSINOGENS +TRYPSINS +TRYPTAMINE +TRYPTAMINES +TRYPTIC +TRYPTOPHAN +TRYPTOPHANE +TRYPTOPHANES +TRYPTOPHANS +TRYSAIL +TRYSAILS +TRYST +TRYSTE +TRYSTED +TRYSTER +TRYSTERS +TRYSTES +TRYSTING +TRYSTS +TRYWORKS +TSADDIK +TSADDIKIM +TSADE +TSADES +TSADI +TSADIS +TSAR +TSARDOM +TSARDOMS +TSAREVNA +TSAREVNAS +TSARINA +TSARINAS +TSARISM +TSARISMS +TSARIST +TSARISTS +TSARITZA +TSARITZAS +TSARS +TSATSKE +TSATSKES +TSETSE +TSETSES +TSIMMES +TSK +TSKED +TSKING +TSKS +TSKTSK +TSKTSKED +TSKTSKING +TSKTSKS +TSOORIS +TSORES +TSORIS +TSORRISS +TSOURIS +TSUBA +TSUNAMI +TSUNAMIC +TSUNAMIS +TSURIS +TSUTSUGAMUSHI +TSUTSUGAMUSHIS +TUATARA +TUATARAS +TUATERA +TUATERAS +TUB +TUBA +TUBAE +TUBAIST +TUBAISTS +TUBAL +TUBAS +TUBATE +TUBBABLE +TUBBED +TUBBER +TUBBERS +TUBBIER +TUBBIEST +TUBBINESS +TUBBINESSES +TUBBING +TUBBY +TUBE +TUBED +TUBELESS +TUBELIKE +TUBENOSE +TUBENOSES +TUBER +TUBERCLE +TUBERCLES +TUBERCULAR +TUBERCULARS +TUBERCULATE +TUBERCULATED +TUBERCULIN +TUBERCULINS +TUBERCULOID +TUBERCULOSES +TUBERCULOSIS +TUBERCULOUS +TUBEROID +TUBEROSE +TUBEROSES +TUBEROSITIES +TUBEROSITY +TUBEROUS +TUBERS +TUBES +TUBEWORK +TUBEWORKS +TUBEWORM +TUBEWORMS +TUBFUL +TUBFULS +TUBIFEX +TUBIFEXES +TUBIFICID +TUBIFICIDS +TUBIFORM +TUBING +TUBINGS +TUBIST +TUBISTS +TUBLIKE +TUBOCURARINE +TUBOCURARINES +TUBS +TUBULAR +TUBULARLY +TUBULATE +TUBULATED +TUBULATES +TUBULATING +TUBULATOR +TUBULATORS +TUBULE +TUBULES +TUBULIN +TUBULINS +TUBULOSE +TUBULOUS +TUBULURE +TUBULURES +TUCHUN +TUCHUNS +TUCK +TUCKAHOE +TUCKAHOES +TUCKED +TUCKER +TUCKERED +TUCKERING +TUCKERS +TUCKET +TUCKETS +TUCKING +TUCKS +TUCKSHOP +TUCKSHOPS +TUFA +TUFACEOUS +TUFAS +TUFF +TUFFACEOUS +TUFFET +TUFFETS +TUFFS +TUFOLI +TUFT +TUFTED +TUFTER +TUFTERS +TUFTIER +TUFTIEST +TUFTILY +TUFTING +TUFTINGS +TUFTS +TUFTY +TUG +TUGBOAT +TUGBOATS +TUGGED +TUGGER +TUGGERS +TUGGING +TUGHRIK +TUGHRIKS +TUGLESS +TUGRIK +TUGRIKS +TUGS +TUI +TUILLE +TUILLES +TUIS +TUITION +TUITIONAL +TUITIONS +TULADI +TULADIS +TULAREMIA +TULAREMIAS +TULAREMIC +TULE +TULES +TULIP +TULIPLIKE +TULIPS +TULIPWOOD +TULIPWOODS +TULLE +TULLES +TULLIBEE +TULLIBEES +TUMBLE +TUMBLEBUG +TUMBLEBUGS +TUMBLED +TUMBLEDOWN +TUMBLER +TUMBLERFUL +TUMBLERFULS +TUMBLERS +TUMBLERSFUL +TUMBLES +TUMBLESET +TUMBLESETS +TUMBLEWEED +TUMBLEWEEDS +TUMBLING +TUMBLINGS +TUMBREL +TUMBRELS +TUMBRIL +TUMBRILS +TUMEFACTION +TUMEFACTIONS +TUMEFIED +TUMEFIES +TUMEFY +TUMEFYING +TUMESCE +TUMESCED +TUMESCENCE +TUMESCENCES +TUMESCENT +TUMESCES +TUMESCING +TUMID +TUMIDITIES +TUMIDITY +TUMIDLY +TUMIDNESS +TUMIDNESSES +TUMMIES +TUMMLER +TUMMLERS +TUMMY +TUMOR +TUMORAL +TUMORIGENESES +TUMORIGENESIS +TUMORIGENIC +TUMORIGENICITY +TUMORLIKE +TUMOROUS +TUMORS +TUMOUR +TUMOURS +TUMP +TUMPED +TUMPING +TUMPLINE +TUMPLINES +TUMPS +TUMULAR +TUMULI +TUMULOSE +TUMULOUS +TUMULT +TUMULTS +TUMULTUARY +TUMULTUOUS +TUMULTUOUSLY +TUMULTUOUSNESS +TUMULUS +TUMULUSES +TUN +TUNA +TUNABILITIES +TUNABILITY +TUNABLE +TUNABLENESS +TUNABLENESSES +TUNABLY +TUNAS +TUNDISH +TUNDISHES +TUNDRA +TUNDRAS +TUNE +TUNEABLE +TUNEABLY +TUNED +TUNEFUL +TUNEFULLY +TUNEFULNESS +TUNEFULNESSES +TUNELESS +TUNELESSLY +TUNER +TUNERS +TUNES +TUNESMITH +TUNESMITHS +TUNEUP +TUNEUPS +TUNG +TUNGS +TUNGSTATE +TUNGSTATES +TUNGSTEN +TUNGSTENS +TUNGSTIC +TUNGSTITE +TUNGSTITES +TUNIC +TUNICA +TUNICAE +TUNICATE +TUNICATED +TUNICATES +TUNICLE +TUNICLES +TUNICS +TUNING +TUNNAGE +TUNNAGES +TUNNED +TUNNEL +TUNNELED +TUNNELER +TUNNELERS +TUNNELING +TUNNELINGS +TUNNELLED +TUNNELLER +TUNNELLERS +TUNNELLIKE +TUNNELLING +TUNNELS +TUNNIES +TUNNING +TUNNY +TUNS +TUP +TUPELO +TUPELOS +TUPIK +TUPIKS +TUPPED +TUPPENCE +TUPPENCES +TUPPENNY +TUPPING +TUPS +TUQUE +TUQUES +TURACO +TURACOS +TURACOU +TURACOUS +TURBAN +TURBANED +TURBANNED +TURBANS +TURBARIES +TURBARY +TURBELLARIAN +TURBELLARIANS +TURBETH +TURBETHS +TURBID +TURBIDIMETER +TURBIDIMETERS +TURBIDIMETRIC +TURBIDIMETRIES +TURBIDIMETRY +TURBIDITE +TURBIDITES +TURBIDITIES +TURBIDITY +TURBIDLY +TURBIDNESS +TURBIDNESSES +TURBINAL +TURBINALS +TURBINATE +TURBINATED +TURBINATES +TURBINE +TURBINES +TURBIT +TURBITH +TURBITHS +TURBITS +TURBO +TURBOCAR +TURBOCARS +TURBOCHARGED +TURBOCHARGER +TURBOCHARGERS +TURBOELECTRIC +TURBOFAN +TURBOFANS +TURBOGENERATOR +TURBOGENERATORS +TURBOJET +TURBOJETS +TURBOMACHINERY +TURBOPROP +TURBOPROPS +TURBOS +TURBOSHAFT +TURBOSHAFTS +TURBOT +TURBOTS +TURBULENCE +TURBULENCES +TURBULENCIES +TURBULENCY +TURBULENT +TURBULENTLY +TURD +TURDINE +TURDS +TUREEN +TUREENS +TURF +TURFED +TURFGRASS +TURFGRASSES +TURFIER +TURFIEST +TURFING +TURFLESS +TURFLIKE +TURFMAN +TURFMEN +TURFS +TURFSKI +TURFSKIING +TURFSKIINGS +TURFSKIS +TURFY +TURGENCIES +TURGENCY +TURGENT +TURGESCENCE +TURGESCENCES +TURGESCENT +TURGID +TURGIDITIES +TURGIDITY +TURGIDLY +TURGIDNESS +TURGIDNESSES +TURGITE +TURGITES +TURGOR +TURGORS +TURION +TURIONS +TURISTA +TURISTAS +TURK +TURKEY +TURKEYS +TURKOIS +TURKOISES +TURKS +TURMERIC +TURMERICS +TURMOIL +TURMOILED +TURMOILING +TURMOILS +TURN +TURNABLE +TURNABOUT +TURNABOUTS +TURNAROUND +TURNAROUNDS +TURNBUCKLE +TURNBUCKLES +TURNCOAT +TURNCOATS +TURNDOWN +TURNDOWNS +TURNED +TURNER +TURNERIES +TURNERS +TURNERY +TURNHALL +TURNHALLS +TURNING +TURNINGS +TURNIP +TURNIPS +TURNKEY +TURNKEYS +TURNOFF +TURNOFFS +TURNON +TURNONS +TURNOUT +TURNOUTS +TURNOVER +TURNOVERS +TURNPIKE +TURNPIKES +TURNS +TURNSOLE +TURNSOLES +TURNSPIT +TURNSPITS +TURNSTILE +TURNSTILES +TURNSTONE +TURNSTONES +TURNTABLE +TURNTABLES +TURNUP +TURNUPS +TURNVEREIN +TURNVEREINS +TUROPHILE +TUROPHILES +TURPENTINE +TURPENTINED +TURPENTINES +TURPENTINING +TURPETH +TURPETHS +TURPITUDE +TURPITUDES +TURPS +TURQUOIS +TURQUOISE +TURQUOISES +TURRET +TURRETED +TURRETS +TURRICAL +TURTLE +TURTLEBACK +TURTLEBACKS +TURTLED +TURTLEDOVE +TURTLEDOVES +TURTLEHEAD +TURTLEHEADS +TURTLENECK +TURTLENECKED +TURTLENECKS +TURTLER +TURTLERS +TURTLES +TURTLING +TURTLINGS +TURVES +TUSCHE +TUSCHES +TUSH +TUSHED +TUSHERIES +TUSHERY +TUSHES +TUSHIE +TUSHIES +TUSHING +TUSHY +TUSK +TUSKED +TUSKER +TUSKERS +TUSKING +TUSKLESS +TUSKLIKE +TUSKS +TUSSAH +TUSSAHS +TUSSAL +TUSSAR +TUSSARS +TUSSEH +TUSSEHS +TUSSER +TUSSERS +TUSSES +TUSSIS +TUSSISES +TUSSIVE +TUSSLE +TUSSLED +TUSSLES +TUSSLING +TUSSOCK +TUSSOCKED +TUSSOCKS +TUSSOCKY +TUSSOR +TUSSORE +TUSSORES +TUSSORS +TUSSUCK +TUSSUCKS +TUSSUR +TUSSURS +TUT +TUTEE +TUTEES +TUTELAGE +TUTELAGES +TUTELAR +TUTELARIES +TUTELARS +TUTELARY +TUTOR +TUTORAGE +TUTORAGES +TUTORED +TUTORESS +TUTORESSES +TUTORIAL +TUTORIALS +TUTORING +TUTORS +TUTORSHIP +TUTORSHIPS +TUTOYED +TUTOYER +TUTOYERED +TUTOYERING +TUTOYERS +TUTS +TUTTED +TUTTI +TUTTIES +TUTTING +TUTTIS +TUTTY +TUTU +TUTUED +TUTUS +TUX +TUXEDO +TUXEDOED +TUXEDOES +TUXEDOS +TUXES +TUYER +TUYERE +TUYERES +TUYERS +TWA +TWADDLE +TWADDLED +TWADDLER +TWADDLERS +TWADDLES +TWADDLING +TWAE +TWAES +TWAIN +TWAINS +TWANG +TWANGED +TWANGER +TWANGERS +TWANGIER +TWANGIEST +TWANGING +TWANGLE +TWANGLED +TWANGLER +TWANGLERS +TWANGLES +TWANGLING +TWANGS +TWANGY +TWANKIES +TWANKY +TWAS +TWASOME +TWASOMES +TWAT +TWATS +TWATTLE +TWATTLED +TWATTLES +TWATTLING +TWAYBLADE +TWAYBLADES +TWEAK +TWEAKED +TWEAKIER +TWEAKIEST +TWEAKING +TWEAKS +TWEAKY +TWEE +TWEED +TWEEDIER +TWEEDIEST +TWEEDINESS +TWEEDINESSES +TWEEDLE +TWEEDLED +TWEEDLES +TWEEDLING +TWEEDS +TWEEDY +TWEEN +TWEENER +TWEENERS +TWEENESS +TWEENESSES +TWEENIES +TWEENS +TWEENY +TWEET +TWEETED +TWEETER +TWEETERS +TWEETING +TWEETS +TWEEZE +TWEEZED +TWEEZER +TWEEZERS +TWEEZES +TWEEZING +TWELFTH +TWELFTHS +TWELVE +TWELVEMO +TWELVEMONTH +TWELVEMONTHS +TWELVEMOS +TWELVES +TWENTIES +TWENTIETH +TWENTIETHS +TWENTY +TWERP +TWERPS +TWIBIL +TWIBILL +TWIBILLS +TWIBILS +TWICE +TWIDDLE +TWIDDLED +TWIDDLER +TWIDDLERS +TWIDDLES +TWIDDLIER +TWIDDLIEST +TWIDDLING +TWIDDLY +TWIER +TWIERS +TWIG +TWIGGED +TWIGGEN +TWIGGIER +TWIGGIEST +TWIGGING +TWIGGY +TWIGLESS +TWIGLIKE +TWIGS +TWILIGHT +TWILIGHTS +TWILIT +TWILL +TWILLED +TWILLING +TWILLINGS +TWILLS +TWIN +TWINBERRIES +TWINBERRY +TWINBORN +TWINE +TWINED +TWINER +TWINERS +TWINES +TWINFLOWER +TWINFLOWERS +TWINGE +TWINGED +TWINGEING +TWINGES +TWINGING +TWINIER +TWINIEST +TWINIGHT +TWINING +TWINJET +TWINJETS +TWINKIE +TWINKIES +TWINKLE +TWINKLED +TWINKLER +TWINKLERS +TWINKLES +TWINKLING +TWINKLINGS +TWINKLY +TWINNED +TWINNING +TWINNINGS +TWINS +TWINSET +TWINSETS +TWINSHIP +TWINSHIPS +TWINY +TWIRL +TWIRLED +TWIRLER +TWIRLERS +TWIRLIER +TWIRLIEST +TWIRLING +TWIRLS +TWIRLY +TWIRP +TWIRPS +TWIST +TWISTABLE +TWISTED +TWISTER +TWISTERS +TWISTIER +TWISTIEST +TWISTING +TWISTINGS +TWISTS +TWISTY +TWIT +TWITCH +TWITCHED +TWITCHER +TWITCHERS +TWITCHES +TWITCHIER +TWITCHIEST +TWITCHILY +TWITCHING +TWITCHY +TWITS +TWITTED +TWITTER +TWITTERED +TWITTERER +TWITTERERS +TWITTERING +TWITTERS +TWITTERY +TWITTING +TWIXT +TWO +TWOFER +TWOFERS +TWOFOLD +TWOFOLDS +TWOONIE +TWOONIES +TWOPENCE +TWOPENCES +TWOPENNY +TWOS +TWOSOME +TWOSOMES +TWYER +TWYERS +TYCOON +TYCOONS +TYE +TYEE +TYEES +TYER +TYERS +TYES +TYIN +TYING +TYIYN +TYKE +TYKES +TYLOSIN +TYLOSINS +TYMBAL +TYMBALS +TYMPAN +TYMPANA +TYMPANAL +TYMPANI +TYMPANIC +TYMPANIES +TYMPANIST +TYMPANISTS +TYMPANITES +TYMPANITESES +TYMPANITIC +TYMPANO +TYMPANS +TYMPANUM +TYMPANUMS +TYMPANY +TYNE +TYNED +TYNES +TYNING +TYPABLE +TYPAL +TYPE +TYPEABLE +TYPEBAR +TYPEBARS +TYPECASE +TYPECASES +TYPECAST +TYPECASTING +TYPECASTS +TYPED +TYPEFACE +TYPEFACES +TYPEFOUNDER +TYPEFOUNDERS +TYPEFOUNDING +TYPEFOUNDINGS +TYPES +TYPESCRIPT +TYPESCRIPTS +TYPESET +TYPESETS +TYPESETTER +TYPESETTERS +TYPESETTING +TYPESETTINGS +TYPESTYLE +TYPESTYLES +TYPEWRITE +TYPEWRITER +TYPEWRITERS +TYPEWRITES +TYPEWRITING +TYPEWRITINGS +TYPEWRITTEN +TYPEWROTE +TYPEY +TYPHLITIC +TYPHLITIS +TYPHLITISES +TYPHLOSOLE +TYPHLOSOLES +TYPHOID +TYPHOIDAL +TYPHOIDS +TYPHON +TYPHONIC +TYPHONS +TYPHOON +TYPHOONS +TYPHOSE +TYPHOUS +TYPHUS +TYPHUSES +TYPIC +TYPICAL +TYPICALITIES +TYPICALITY +TYPICALLY +TYPICALNESS +TYPICALNESSES +TYPIER +TYPIEST +TYPIFICATION +TYPIFICATIONS +TYPIFIED +TYPIFIER +TYPIFIERS +TYPIFIES +TYPIFY +TYPIFYING +TYPING +TYPIST +TYPISTS +TYPO +TYPOGRAPH +TYPOGRAPHED +TYPOGRAPHER +TYPOGRAPHERS +TYPOGRAPHIC +TYPOGRAPHICAL +TYPOGRAPHICALLY +TYPOGRAPHIES +TYPOGRAPHING +TYPOGRAPHS +TYPOGRAPHY +TYPOLOGIC +TYPOLOGICAL +TYPOLOGICALLY +TYPOLOGIES +TYPOLOGIST +TYPOLOGISTS +TYPOLOGY +TYPOS +TYPP +TYPPS +TYPY +TYRAMINE +TYRAMINES +TYRANNIC +TYRANNICAL +TYRANNICALLY +TYRANNICALNESS +TYRANNICIDE +TYRANNICIDES +TYRANNIES +TYRANNISE +TYRANNISED +TYRANNISES +TYRANNISING +TYRANNIZE +TYRANNIZED +TYRANNIZER +TYRANNIZERS +TYRANNIZES +TYRANNIZING +TYRANNOSAUR +TYRANNOSAURS +TYRANNOSAURUS +TYRANNOSAURUSES +TYRANNOUS +TYRANNOUSLY +TYRANNY +TYRANT +TYRANTS +TYRE +TYRED +TYRES +TYRING +TYRO +TYROCIDIN +TYROCIDINE +TYROCIDINES +TYROCIDINS +TYRONIC +TYROS +TYROSINASE +TYROSINASES +TYROSINE +TYROSINES +TYROTHRICIN +TYROTHRICINS +TYTHE +TYTHED +TYTHES +TYTHING +TZADDIK +TZADDIKIM +TZAR +TZARDOM +TZARDOMS +TZAREVNA +TZAREVNAS +TZARINA +TZARINAS +TZARISM +TZARISMS +TZARIST +TZARISTS +TZARITZA +TZARITZAS +TZARS +TZETZE +TZETZES +TZIGANE +TZIGANES +TZIMMES +TZITZIS +TZITZIT +TZITZITH +TZURIS +UAKARI +UAKARIS +UBIETIES +UBIETY +UBIQUE +UBIQUINONE +UBIQUINONES +UBIQUITIES +UBIQUITOUS +UBIQUITOUSLY +UBIQUITOUSNESS +UBIQUITY +UDDER +UDDERS +UDO +UDOMETER +UDOMETERS +UDOMETRIES +UDOMETRY +UDON +UDONS +UDOS +UFOLOGICAL +UFOLOGIES +UFOLOGIST +UFOLOGISTS +UFOLOGY +UGH +UGHS +UGLIER +UGLIES +UGLIEST +UGLIFICATION +UGLIFICATIONS +UGLIFIED +UGLIFIER +UGLIFIERS +UGLIFIES +UGLIFY +UGLIFYING +UGLILY +UGLINESS +UGLINESSES +UGLY +UGSOME +UH +UHLAN +UHLANS +UINTAHITE +UINTAHITES +UINTAITE +UINTAITES +UITLANDER +UITLANDERS +UKASE +UKASES +UKE +UKELELE +UKELELES +UKES +UKULELE +UKULELES +ULAMA +ULAMAS +ULAN +ULANS +ULCER +ULCERATE +ULCERATED +ULCERATES +ULCERATING +ULCERATION +ULCERATIONS +ULCERATIVE +ULCERED +ULCERING +ULCEROGENIC +ULCEROUS +ULCERS +ULEMA +ULEMAS +ULEXITE +ULEXITES +ULLAGE +ULLAGED +ULLAGES +ULNA +ULNAD +ULNAE +ULNAR +ULNAS +ULPAN +ULPANIM +ULSTER +ULSTERS +ULTERIOR +ULTERIORLY +ULTIMA +ULTIMACIES +ULTIMACY +ULTIMAS +ULTIMATA +ULTIMATE +ULTIMATED +ULTIMATELY +ULTIMATENESS +ULTIMATENESSES +ULTIMATES +ULTIMATING +ULTIMATUM +ULTIMATUMS +ULTIMO +ULTIMOGENITURE +ULTIMOGENITURES +ULTRA +ULTRABASIC +ULTRABASICS +ULTRACAREFUL +ULTRACASUAL +ULTRACAUTIOUS +ULTRACENTRIFUGE +ULTRACHIC +ULTRACIVILIZED +ULTRACLEAN +ULTRACOLD +ULTRACOMMERCIAL +ULTRACOMPACT +ULTRACOMPETENT +ULTRACONVENIENT +ULTRACOOL +ULTRACRITICAL +ULTRADEMOCRATIC +ULTRADENSE +ULTRADISTANCE +ULTRADISTANT +ULTRADRY +ULTRAEFFICIENT +ULTRAENERGETIC +ULTRAEXCLUSIVE +ULTRAFAMILIAR +ULTRAFAST +ULTRAFASTIDIOUS +ULTRAFEMININE +ULTRAFICHE +ULTRAFICHES +ULTRAFILTRATE +ULTRAFILTRATES +ULTRAFILTRATION +ULTRAFINE +ULTRAGLAMOROUS +ULTRAHAZARDOUS +ULTRAHEAT +ULTRAHEATED +ULTRAHEATING +ULTRAHEATS +ULTRAHEAVY +ULTRAHIGH +ULTRAHIP +ULTRAHOT +ULTRAHUMAN +ULTRAISM +ULTRAISMS +ULTRAIST +ULTRAISTIC +ULTRAISTS +ULTRALEFT +ULTRALEFTISM +ULTRALEFTISMS +ULTRALEFTIST +ULTRALEFTISTS +ULTRALIBERAL +ULTRALIBERALISM +ULTRALIBERALS +ULTRALIGHT +ULTRALIGHTS +ULTRALOW +ULTRAMAFIC +ULTRAMARATHON +ULTRAMARATHONER +ULTRAMARATHONS +ULTRAMARINE +ULTRAMARINES +ULTRAMASCULINE +ULTRAMICRO +ULTRAMICROSCOPE +ULTRAMICROTOME +ULTRAMICROTOMES +ULTRAMICROTOMY +ULTRAMILITANT +ULTRAMILITANTS +ULTRAMINIATURE +ULTRAMODERN +ULTRAMODERNIST +ULTRAMODERNISTS +ULTRAMONTANE +ULTRAMONTANES +ULTRAMONTANISM +ULTRAMONTANISMS +ULTRAORTHODOX +ULTRAPATRIOTIC +ULTRAPHYSICAL +ULTRAPOSH +ULTRAPOWERFUL +ULTRAPRACTICAL +ULTRAPRECISE +ULTRAPRECISION +ULTRAPURE +ULTRAQUIET +ULTRARADICAL +ULTRARADICALS +ULTRARAPID +ULTRARARE +ULTRARAREFIED +ULTRARATIONAL +ULTRAREALISM +ULTRAREALISMS +ULTRAREALIST +ULTRAREALISTIC +ULTRAREALISTS +ULTRARED +ULTRAREDS +ULTRAREFINED +ULTRARELIABLE +ULTRARICH +ULTRARIGHT +ULTRARIGHTIST +ULTRARIGHTISTS +ULTRAROMANTIC +ULTRAROYALIST +ULTRAROYALISTS +ULTRAS +ULTRASAFE +ULTRASECRET +ULTRASENSITIVE +ULTRASERIOUS +ULTRASHARP +ULTRASHORT +ULTRASIMPLE +ULTRASLICK +ULTRASLOW +ULTRASMALL +ULTRASMART +ULTRASMOOTH +ULTRASOFT +ULTRASONIC +ULTRASONICALLY +ULTRASONICS +ULTRASONOGRAPHY +ULTRASOUND +ULTRASOUNDS +ULTRASTRUCTURAL +ULTRASTRUCTURE +ULTRASTRUCTURES +ULTRATHIN +ULTRATINY +ULTRAVACUA +ULTRAVACUUM +ULTRAVACUUMS +ULTRAVIOLENCE +ULTRAVIOLENCES +ULTRAVIOLENT +ULTRAVIOLET +ULTRAVIOLETS +ULTRAVIRILE +ULTRAVIRILITIES +ULTRAVIRILITY +ULTRAWIDE +ULU +ULULANT +ULULATE +ULULATED +ULULATES +ULULATING +ULULATION +ULULATIONS +ULUS +ULVA +ULVAS +UM +UMAMI +UMAMIS +UMANGITE +UMANGITES +UMBEL +UMBELED +UMBELLAR +UMBELLATE +UMBELLED +UMBELLET +UMBELLETS +UMBELLIFER +UMBELLIFEROUS +UMBELLIFERS +UMBELLULE +UMBELLULES +UMBELS +UMBER +UMBERED +UMBERING +UMBERS +UMBILICAL +UMBILICALS +UMBILICATE +UMBILICATED +UMBILICATION +UMBILICATIONS +UMBILICI +UMBILICUS +UMBILICUSES +UMBLES +UMBO +UMBONAL +UMBONATE +UMBONES +UMBONIC +UMBOS +UMBRA +UMBRAE +UMBRAGE +UMBRAGEOUS +UMBRAGEOUSLY +UMBRAGEOUSNESS +UMBRAGES +UMBRAL +UMBRAS +UMBRELLA +UMBRELLAED +UMBRELLAING +UMBRELLAS +UMBRETTE +UMBRETTES +UMIAC +UMIACK +UMIACKS +UMIACS +UMIAK +UMIAKS +UMIAQ +UMIAQS +UMLAUT +UMLAUTED +UMLAUTING +UMLAUTS +UMM +UMP +UMPED +UMPING +UMPIRAGE +UMPIRAGES +UMPIRE +UMPIRED +UMPIRES +UMPIRING +UMPS +UMPTEEN +UMPTEENTH +UMTEENTH +UN +UNABASHED +UNABASHEDLY +UNABATED +UNABATEDLY +UNABATING +UNABETTED +UNABIDING +UNABJURED +UNABLE +UNABORTED +UNABRADED +UNABRIDGED +UNABSORBED +UNABSORBENT +UNABUSED +UNABUSIVE +UNACADEMIC +UNACADEMICALLY +UNACCENTED +UNACCEPTABILITY +UNACCEPTABLE +UNACCEPTABLY +UNACCEPTED +UNACCLIMATED +UNACCLIMATIZED +UNACCOMMODATED +UNACCOMMODATING +UNACCOMPANIED +UNACCOUNTABLE +UNACCOUNTABLY +UNACCOUNTED +UNACCREDITED +UNACCRUED +UNACCULTURATED +UNACCUSTOMED +UNACCUSTOMEDLY +UNACERBIC +UNACHIEVED +UNACIDIC +UNACKNOWLEDGED +UNACQUAINTED +UNACTABLE +UNACTED +UNACTORISH +UNADAPTABLE +UNADAPTED +UNADDED +UNADDRESSED +UNADEPT +UNADEPTLY +UNADJUDICATED +UNADJUSTED +UNADMIRED +UNADMITTED +UNADOPTABLE +UNADOPTED +UNADORNED +UNADULT +UNADULTERATED +UNADULTERATEDLY +UNADVENTUROUS +UNADVERTISED +UNADVISED +UNADVISEDLY +UNAESTHETIC +UNAFFECTED +UNAFFECTEDLY +UNAFFECTEDNESS +UNAFFECTING +UNAFFECTIONATE +UNAFFILIATED +UNAFFLUENT +UNAFFORDABLE +UNAFRAID +UNAGED +UNAGEING +UNAGGRESSIVE +UNAGILE +UNAGING +UNAGREED +UNAI +UNAIDED +UNAIDEDLY +UNAIMED +UNAIRED +UNAIS +UNAKIN +UNAKITE +UNAKITES +UNALARMED +UNALERTED +UNALIENABLE +UNALIENATED +UNALIGNED +UNALIKE +UNALLAYED +UNALLEGED +UNALLEVIATED +UNALLIED +UNALLOCATED +UNALLOWED +UNALLOYED +UNALLURING +UNALTERABILITY +UNALTERABLE +UNALTERABLENESS +UNALTERABLY +UNALTERED +UNAMASSED +UNAMAZED +UNAMBIGUOUS +UNAMBIGUOUSLY +UNAMBITIOUS +UNAMBIVALENT +UNAMBIVALENTLY +UNAMENABLE +UNAMENDED +UNAMIABLE +UNAMORTIZED +UNAMPLIFIED +UNAMUSED +UNAMUSING +UNANALYZABLE +UNANALYZED +UNANCHOR +UNANCHORED +UNANCHORING +UNANCHORS +UNANELED +UNANESTHETIZED +UNANIMITIES +UNANIMITY +UNANIMOUS +UNANIMOUSLY +UNANNEXED +UNANNOTATED +UNANNOUNCED +UNANNOYED +UNANSWERABILITY +UNANSWERABLE +UNANSWERABLY +UNANSWERED +UNANTICIPATED +UNANTICIPATEDLY +UNAPOLOGETIC +UNAPOLOGIZING +UNAPPARENT +UNAPPEALABLE +UNAPPEALING +UNAPPEALINGLY +UNAPPEASABLE +UNAPPEASABLY +UNAPPEASED +UNAPPETIZING +UNAPPETIZINGLY +UNAPPLIED +UNAPPRECIATED +UNAPPRECIATION +UNAPPRECIATIONS +UNAPPRECIATIVE +UNAPPROACHABLE +UNAPPROACHABLY +UNAPPROPRIATED +UNAPPROVED +UNAPT +UNAPTLY +UNAPTNESS +UNAPTNESSES +UNARCHED +UNARGUABLE +UNARGUABLY +UNARGUED +UNARM +UNARMED +UNARMING +UNARMORED +UNARMS +UNAROUSED +UNARRAYED +UNARROGANT +UNARTFUL +UNARTICULATED +UNARTISTIC +UNARY +UNASHAMED +UNASHAMEDLY +UNASKED +UNASPIRATED +UNASSAILABILITY +UNASSAILABLE +UNASSAILABLY +UNASSAILED +UNASSAYED +UNASSEMBLED +UNASSERTIVE +UNASSERTIVELY +UNASSIGNED +UNASSIMILABLE +UNASSIMILATED +UNASSISTED +UNASSOCIATED +UNASSUAGEABLE +UNASSUAGED +UNASSUMING +UNASSUMINGNESS +UNASSURED +UNATHLETIC +UNATONED +UNATTACHED +UNATTAINABLE +UNATTENDED +UNATTENUATED +UNATTESTED +UNATTIRED +UNATTRACTIVE +UNATTRACTIVELY +UNATTRIBUTABLE +UNATTRIBUTED +UNATTUNED +UNAU +UNAUDITED +UNAUS +UNAUTHENTIC +UNAUTHORIZED +UNAUTOMATED +UNAVAILABILITY +UNAVAILABLE +UNAVAILING +UNAVAILINGLY +UNAVAILINGNESS +UNAVENGED +UNAVERAGE +UNAVERTED +UNAVOIDABLE +UNAVOIDABLY +UNAVOWED +UNAWAKE +UNAWAKED +UNAWAKENED +UNAWARDED +UNAWARE +UNAWARELY +UNAWARENESS +UNAWARENESSES +UNAWARES +UNAWED +UNAWESOME +UNAXED +UNBACKED +UNBAKED +UNBALANCE +UNBALANCED +UNBALANCES +UNBALANCING +UNBALE +UNBALED +UNBALES +UNBALING +UNBALLASTED +UNBAN +UNBANDAGE +UNBANDAGED +UNBANDAGES +UNBANDAGING +UNBANDED +UNBANNED +UNBANNING +UNBANS +UNBAPTIZED +UNBAR +UNBARBED +UNBARBERED +UNBARRED +UNBARRICADED +UNBARRING +UNBARS +UNBASED +UNBASTED +UNBATED +UNBATHED +UNBE +UNBEAR +UNBEARABLE +UNBEARABLY +UNBEARDED +UNBEARED +UNBEARING +UNBEARS +UNBEATABLE +UNBEATABLY +UNBEATEN +UNBEAUTIFUL +UNBEAUTIFULLY +UNBECOMING +UNBECOMINGLY +UNBECOMINGNESS +UNBEHOLDEN +UNBEING +UNBEKNOWN +UNBEKNOWNST +UNBELIEF +UNBELIEFS +UNBELIEVABLE +UNBELIEVABLY +UNBELIEVER +UNBELIEVERS +UNBELIEVING +UNBELIEVINGLY +UNBELLIGERENT +UNBELOVED +UNBELT +UNBELTED +UNBELTING +UNBELTS +UNBEMUSED +UNBEND +UNBENDABLE +UNBENDED +UNBENDING +UNBENDINGS +UNBENDS +UNBENIGN +UNBENT +UNBESEEMING +UNBIASED +UNBIASEDNESS +UNBIASEDNESSES +UNBIASSED +UNBIBLICAL +UNBID +UNBIDDEN +UNBIGOTED +UNBILLED +UNBIND +UNBINDING +UNBINDS +UNBITTED +UNBITTEN +UNBITTER +UNBLAMED +UNBLEACHED +UNBLEMISHED +UNBLENCHED +UNBLENDED +UNBLESSED +UNBLEST +UNBLINDED +UNBLINKING +UNBLINKINGLY +UNBLOCK +UNBLOCKED +UNBLOCKING +UNBLOCKS +UNBLOODED +UNBLOODY +UNBLURRED +UNBLUSHING +UNBLUSHINGLY +UNBOARDED +UNBOBBED +UNBODIED +UNBOILED +UNBOLT +UNBOLTED +UNBOLTING +UNBOLTS +UNBONDED +UNBONED +UNBONNET +UNBONNETED +UNBONNETING +UNBONNETS +UNBOOKISH +UNBOOTED +UNBORN +UNBOSOM +UNBOSOMED +UNBOSOMER +UNBOSOMERS +UNBOSOMING +UNBOSOMS +UNBOTTLE +UNBOTTLED +UNBOTTLES +UNBOTTLING +UNBOUGHT +UNBOUNCY +UNBOUND +UNBOUNDED +UNBOUNDEDNESS +UNBOUNDEDNESSES +UNBOWDLERIZED +UNBOWED +UNBOWING +UNBOX +UNBOXED +UNBOXES +UNBOXING +UNBRACE +UNBRACED +UNBRACES +UNBRACING +UNBRACKETED +UNBRAID +UNBRAIDED +UNBRAIDING +UNBRAIDS +UNBRAKE +UNBRAKED +UNBRAKES +UNBRAKING +UNBRANCHED +UNBRANDED +UNBREACHABLE +UNBREAKABLE +UNBREATHABLE +UNBRED +UNBREECH +UNBREECHED +UNBREECHES +UNBREECHING +UNBRIDGEABLE +UNBRIDGED +UNBRIDLE +UNBRIDLED +UNBRIDLES +UNBRIDLING +UNBRIEFED +UNBRIGHT +UNBRILLIANT +UNBROILED +UNBROKE +UNBROKEN +UNBROWNED +UNBRUISED +UNBRUSHED +UNBUCKLE +UNBUCKLED +UNBUCKLES +UNBUCKLING +UNBUDGEABLE +UNBUDGEABLY +UNBUDGETED +UNBUDGING +UNBUDGINGLY +UNBUFFERED +UNBUILD +UNBUILDABLE +UNBUILDING +UNBUILDS +UNBUILT +UNBULKY +UNBUNDLE +UNBUNDLED +UNBUNDLES +UNBUNDLING +UNBURDEN +UNBURDENED +UNBURDENING +UNBURDENS +UNBUREAUCRATIC +UNBURIED +UNBURNABLE +UNBURNED +UNBURNT +UNBUSINESSLIKE +UNBUSTED +UNBUSY +UNBUTTERED +UNBUTTON +UNBUTTONED +UNBUTTONING +UNBUTTONS +UNCAGE +UNCAGED +UNCAGES +UNCAGING +UNCAKE +UNCAKED +UNCAKES +UNCAKING +UNCALCIFIED +UNCALCINED +UNCALCULATED +UNCALCULATING +UNCALIBRATED +UNCALLED +UNCALLOUSED +UNCANCELED +UNCANDID +UNCANDIDLY +UNCANDLED +UNCANNED +UNCANNIER +UNCANNIEST +UNCANNILY +UNCANNINESS +UNCANNINESSES +UNCANNY +UNCANONICAL +UNCAP +UNCAPABLE +UNCAPITALIZED +UNCAPPED +UNCAPPING +UNCAPS +UNCAPTIONED +UNCAPTURABLE +UNCARDED +UNCARING +UNCARPETED +UNCARTED +UNCARVED +UNCASE +UNCASED +UNCASES +UNCASHED +UNCASING +UNCASKED +UNCAST +UNCASTRATED +UNCATALOGED +UNCATCHABLE +UNCATCHY +UNCATEGORIZABLE +UNCATERED +UNCAUGHT +UNCAUSED +UNCEASING +UNCEASINGLY +UNCEDED +UNCELEBRATED +UNCENSORED +UNCENSORIOUS +UNCENSURED +UNCEREMONIOUS +UNCEREMONIOUSLY +UNCERTAIN +UNCERTAINLY +UNCERTAINNESS +UNCERTAINNESSES +UNCERTAINTIES +UNCERTAINTY +UNCERTIFIED +UNCHAIN +UNCHAINED +UNCHAINING +UNCHAINS +UNCHAIR +UNCHAIRED +UNCHAIRING +UNCHAIRS +UNCHALLENGEABLE +UNCHALLENGED +UNCHALLENGING +UNCHANCY +UNCHANGEABILITY +UNCHANGEABLE +UNCHANGEABLY +UNCHANGED +UNCHANGING +UNCHANGINGLY +UNCHANGINGNESS +UNCHANNELED +UNCHAPERONED +UNCHARGE +UNCHARGED +UNCHARGES +UNCHARGING +UNCHARISMATIC +UNCHARITABLE +UNCHARITABLY +UNCHARMING +UNCHARRED +UNCHARTED +UNCHARTERED +UNCHARY +UNCHASTE +UNCHASTELY +UNCHASTENESS +UNCHASTENESSES +UNCHASTER +UNCHASTEST +UNCHASTITIES +UNCHASTITY +UNCHAUVINISTIC +UNCHECKABLE +UNCHECKED +UNCHEWABLE +UNCHEWED +UNCHIC +UNCHICLY +UNCHILDLIKE +UNCHILLED +UNCHIVALROUS +UNCHIVALROUSLY +UNCHLORINATED +UNCHOKE +UNCHOKED +UNCHOKES +UNCHOKING +UNCHOREOGRAPHED +UNCHOSEN +UNCHRISTENED +UNCHRISTIAN +UNCHRONICLED +UNCHRONOLOGICAL +UNCHURCH +UNCHURCHED +UNCHURCHES +UNCHURCHING +UNCHURCHLY +UNCI +UNCIA +UNCIAE +UNCIAL +UNCIALLY +UNCIALS +UNCIFORM +UNCIFORMS +UNCILIATED +UNCINAL +UNCINARIA +UNCINARIAS +UNCINARIASES +UNCINARIASIS +UNCINATE +UNCINEMATIC +UNCINI +UNCINUS +UNCIRCULATED +UNCIRCUMCISED +UNCIRCUMCISION +UNCIRCUMCISIONS +UNCIVIL +UNCIVILIZED +UNCIVILLY +UNCLAD +UNCLAIMED +UNCLAMP +UNCLAMPED +UNCLAMPING +UNCLAMPS +UNCLARIFIED +UNCLARITIES +UNCLARITY +UNCLASP +UNCLASPED +UNCLASPING +UNCLASPS +UNCLASSICAL +UNCLASSIFIABLE +UNCLASSIFIED +UNCLASSY +UNCLAWED +UNCLE +UNCLEAN +UNCLEANED +UNCLEANER +UNCLEANEST +UNCLEANLIER +UNCLEANLIEST +UNCLEANLINESS +UNCLEANLINESSES +UNCLEANLY +UNCLEANNESS +UNCLEANNESSES +UNCLEAR +UNCLEARED +UNCLEARER +UNCLEAREST +UNCLEARLY +UNCLEFT +UNCLENCH +UNCLENCHED +UNCLENCHES +UNCLENCHING +UNCLES +UNCLICHED +UNCLIMBABLE +UNCLIMBABLENESS +UNCLINCH +UNCLINCHED +UNCLINCHES +UNCLINCHING +UNCLIP +UNCLIPPED +UNCLIPPING +UNCLIPS +UNCLOAK +UNCLOAKED +UNCLOAKING +UNCLOAKS +UNCLOG +UNCLOGGED +UNCLOGGING +UNCLOGS +UNCLOSE +UNCLOSED +UNCLOSES +UNCLOSING +UNCLOTHE +UNCLOTHED +UNCLOTHES +UNCLOTHING +UNCLOUD +UNCLOUDED +UNCLOUDEDLY +UNCLOUDING +UNCLOUDS +UNCLOUDY +UNCLOYED +UNCLOYING +UNCLUBBABLE +UNCLUTTER +UNCLUTTERED +UNCLUTTERING +UNCLUTTERS +UNCO +UNCOALESCE +UNCOALESCED +UNCOALESCES +UNCOALESCING +UNCOATED +UNCOATING +UNCOATINGS +UNCOBBLED +UNCOCK +UNCOCKED +UNCOCKING +UNCOCKS +UNCODED +UNCODIFIED +UNCOERCED +UNCOERCIVE +UNCOERCIVELY +UNCOFFIN +UNCOFFINED +UNCOFFINING +UNCOFFINS +UNCOIL +UNCOILED +UNCOILING +UNCOILS +UNCOINED +UNCOLLECTED +UNCOLLECTIBLE +UNCOLLECTIBLES +UNCOLORED +UNCOMBATIVE +UNCOMBED +UNCOMBINED +UNCOMELY +UNCOMFORTABLE +UNCOMFORTABLY +UNCOMIC +UNCOMMERCIAL +UNCOMMITTED +UNCOMMON +UNCOMMONER +UNCOMMONEST +UNCOMMONLY +UNCOMMONNESS +UNCOMMONNESSES +UNCOMMUNICABLE +UNCOMMUNICATIVE +UNCOMPASSIONATE +UNCOMPELLING +UNCOMPENSATED +UNCOMPETITIVE +UNCOMPLACENT +UNCOMPLAINING +UNCOMPLAININGLY +UNCOMPLETED +UNCOMPLICATED +UNCOMPLIMENTARY +UNCOMPOUNDED +UNCOMPREHENDED +UNCOMPREHENDING +UNCOMPROMISABLE +UNCOMPROMISING +UNCOMPUTERIZED +UNCONCEALED +UNCONCEIVABLE +UNCONCERN +UNCONCERNED +UNCONCERNEDLY +UNCONCERNEDNESS +UNCONCERNS +UNCONDITIONAL +UNCONDITIONALLY +UNCONDITIONED +UNCONFESSED +UNCONFINED +UNCONFIRMED +UNCONFORMABLE +UNCONFORMABLY +UNCONFORMITIES +UNCONFORMITY +UNCONFOUNDED +UNCONFUSE +UNCONFUSED +UNCONFUSES +UNCONFUSING +UNCONGENIAL +UNCONGENIALITY +UNCONJUGATED +UNCONNECTED +UNCONQUERABLE +UNCONQUERABLY +UNCONQUERED +UNCONSCIONABLE +UNCONSCIONABLY +UNCONSCIOUS +UNCONSCIOUSES +UNCONSCIOUSLY +UNCONSCIOUSNESS +UNCONSECRATED +UNCONSIDERED +UNCONSOLIDATED +UNCONSTRAINED +UNCONSTRAINT +UNCONSTRAINTS +UNCONSTRICTED +UNCONSTRUCTED +UNCONSTRUCTIVE +UNCONSUMED +UNCONSUMMATED +UNCONTAINABLE +UNCONTAMINATED +UNCONTEMPLATED +UNCONTEMPORARY +UNCONTENTIOUS +UNCONTESTED +UNCONTRACTED +UNCONTRADICTED +UNCONTRIVED +UNCONTROLLABLE +UNCONTROLLABLY +UNCONTROLLED +UNCONTROVERSIAL +UNCONVENTIONAL +UNCONVERTED +UNCONVINCED +UNCONVINCING +UNCONVINCINGLY +UNCONVOYED +UNCOOKED +UNCOOL +UNCOOLED +UNCOOPERATIVE +UNCOORDINATED +UNCOPYRIGHTABLE +UNCORK +UNCORKED +UNCORKING +UNCORKS +UNCORRECTABLE +UNCORRECTED +UNCORRELATED +UNCORROBORATED +UNCORRUPT +UNCORSETED +UNCOS +UNCOUNTABLE +UNCOUNTED +UNCOUPLE +UNCOUPLED +UNCOUPLER +UNCOUPLERS +UNCOUPLES +UNCOUPLING +UNCOURAGEOUS +UNCOUTH +UNCOUTHLY +UNCOUTHNESS +UNCOUTHNESSES +UNCOVENANTED +UNCOVER +UNCOVERED +UNCOVERING +UNCOVERS +UNCOY +UNCRACKED +UNCRATE +UNCRATED +UNCRATES +UNCRATING +UNCRAZY +UNCREATE +UNCREATED +UNCREATES +UNCREATING +UNCREATIVE +UNCREDENTIALED +UNCREDITED +UNCREWED +UNCRIPPLED +UNCRITICAL +UNCRITICALLY +UNCROPPED +UNCROSS +UNCROSSABLE +UNCROSSED +UNCROSSES +UNCROSSING +UNCROWDED +UNCROWN +UNCROWNED +UNCROWNING +UNCROWNS +UNCRUMPLE +UNCRUMPLED +UNCRUMPLES +UNCRUMPLING +UNCRUSHABLE +UNCRUSHED +UNCRYSTALLIZED +UNCTION +UNCTIONS +UNCTUOUS +UNCTUOUSLY +UNCTUOUSNESS +UNCTUOUSNESSES +UNCUFF +UNCUFFED +UNCUFFING +UNCUFFS +UNCULTIVABLE +UNCULTIVATED +UNCULTURED +UNCURABLE +UNCURABLY +UNCURB +UNCURBED +UNCURBING +UNCURBS +UNCURED +UNCURIOUS +UNCURL +UNCURLED +UNCURLING +UNCURLS +UNCURRENT +UNCURSED +UNCURTAINED +UNCUS +UNCUSTOMARILY +UNCUSTOMARY +UNCUT +UNCUTE +UNCYNICAL +UNCYNICALLY +UNDAMAGED +UNDAMPED +UNDANCEABLE +UNDARING +UNDATABLE +UNDATED +UNDAUNTABLE +UNDAUNTED +UNDAUNTEDLY +UNDE +UNDEAD +UNDEBATABLE +UNDEBATABLY +UNDEBATED +UNDECADENT +UNDECAYED +UNDECEIVE +UNDECEIVED +UNDECEIVES +UNDECEIVING +UNDECIDABILITY +UNDECIDABLE +UNDECIDED +UNDECIDEDS +UNDECILLION +UNDECILLIONS +UNDECIPHERABLE +UNDECIPHERED +UNDECKED +UNDECLARED +UNDECOMPOSED +UNDECORATED +UNDEDICATED +UNDEE +UNDEFACED +UNDEFEATED +UNDEFENDED +UNDEFILED +UNDEFINABLE +UNDEFINED +UNDEFOLIATED +UNDEFORMED +UNDELEGATED +UNDELETED +UNDELIVERABLE +UNDELIVERED +UNDELUDED +UNDEMANDING +UNDEMOCRATIC +UNDEMONSTRATIVE +UNDENIABLE +UNDENIABLENESS +UNDENIABLY +UNDENIED +UNDENTED +UNDEPENDABLE +UNDER +UNDERACHIEVE +UNDERACHIEVED +UNDERACHIEVER +UNDERACHIEVERS +UNDERACHIEVES +UNDERACHIEVING +UNDERACT +UNDERACTED +UNDERACTING +UNDERACTIVE +UNDERACTIVITIES +UNDERACTIVITY +UNDERACTS +UNDERAGE +UNDERAGED +UNDERAGES +UNDERARM +UNDERARMS +UNDERATE +UNDERBAKE +UNDERBAKED +UNDERBAKES +UNDERBAKING +UNDERBELLIES +UNDERBELLY +UNDERBID +UNDERBIDDER +UNDERBIDDERS +UNDERBIDDING +UNDERBIDS +UNDERBITE +UNDERBITES +UNDERBODIES +UNDERBODY +UNDERBOSS +UNDERBOSSES +UNDERBOUGHT +UNDERBRED +UNDERBRIM +UNDERBRIMS +UNDERBRUSH +UNDERBRUSHES +UNDERBUD +UNDERBUDDED +UNDERBUDDING +UNDERBUDGETED +UNDERBUDS +UNDERBUY +UNDERBUYING +UNDERBUYS +UNDERCARD +UNDERCARDS +UNDERCARRIAGE +UNDERCARRIAGES +UNDERCHARGE +UNDERCHARGED +UNDERCHARGES +UNDERCHARGING +UNDERCLAD +UNDERCLASS +UNDERCLASSES +UNDERCLASSMAN +UNDERCLASSMEN +UNDERCLAY +UNDERCLAYS +UNDERCLOTHES +UNDERCLOTHING +UNDERCLOTHINGS +UNDERCOAT +UNDERCOATED +UNDERCOATING +UNDERCOATINGS +UNDERCOATS +UNDERCOOK +UNDERCOOKED +UNDERCOOKING +UNDERCOOKS +UNDERCOOL +UNDERCOOLED +UNDERCOOLING +UNDERCOOLS +UNDERCOUNT +UNDERCOUNTED +UNDERCOUNTING +UNDERCOUNTS +UNDERCOVER +UNDERCROFT +UNDERCROFTS +UNDERCURRENT +UNDERCURRENTS +UNDERCUT +UNDERCUTS +UNDERCUTTING +UNDERDEVELOPED +UNDERDID +UNDERDO +UNDERDOES +UNDERDOG +UNDERDOGS +UNDERDOING +UNDERDONE +UNDERDOSE +UNDERDOSED +UNDERDOSES +UNDERDOSING +UNDERDRAWERS +UNDEREAT +UNDEREATEN +UNDEREATING +UNDEREATS +UNDEREDUCATED +UNDEREMPHASES +UNDEREMPHASIS +UNDEREMPHASIZE +UNDEREMPHASIZED +UNDEREMPHASIZES +UNDEREMPLOYED +UNDEREMPLOYMENT +UNDERESTIMATE +UNDERESTIMATED +UNDERESTIMATES +UNDERESTIMATING +UNDERESTIMATION +UNDEREXPOSE +UNDEREXPOSED +UNDEREXPOSES +UNDEREXPOSING +UNDEREXPOSURE +UNDEREXPOSURES +UNDERFED +UNDERFEED +UNDERFEEDING +UNDERFEEDS +UNDERFINANCED +UNDERFLOW +UNDERFLOWS +UNDERFOOT +UNDERFUND +UNDERFUNDED +UNDERFUNDING +UNDERFUNDS +UNDERFUR +UNDERFURS +UNDERGARMENT +UNDERGARMENTS +UNDERGIRD +UNDERGIRDED +UNDERGIRDING +UNDERGIRDS +UNDERGIRT +UNDERGLAZE +UNDERGLAZES +UNDERGO +UNDERGOD +UNDERGODS +UNDERGOER +UNDERGOERS +UNDERGOES +UNDERGOING +UNDERGONE +UNDERGRAD +UNDERGRADS +UNDERGRADUATE +UNDERGRADUATES +UNDERGROUND +UNDERGROUNDER +UNDERGROUNDERS +UNDERGROUNDS +UNDERGROWTH +UNDERGROWTHS +UNDERHAIR +UNDERHAIRS +UNDERHAND +UNDERHANDED +UNDERHANDEDLY +UNDERHANDEDNESS +UNDERHANDS +UNDERHEAT +UNDERHEATED +UNDERHEATING +UNDERHEATS +UNDERHUNG +UNDERINFLATED +UNDERINFLATION +UNDERINFLATIONS +UNDERINSURED +UNDERINVESTMENT +UNDERIVED +UNDERJAW +UNDERJAWS +UNDERKILL +UNDERKILLS +UNDERLAID +UNDERLAIN +UNDERLAP +UNDERLAPPED +UNDERLAPPING +UNDERLAPS +UNDERLAY +UNDERLAYING +UNDERLAYMENT +UNDERLAYMENTS +UNDERLAYS +UNDERLET +UNDERLETS +UNDERLETTING +UNDERLIE +UNDERLIES +UNDERLINE +UNDERLINED +UNDERLINES +UNDERLING +UNDERLINGS +UNDERLINING +UNDERLIP +UNDERLIPS +UNDERLIT +UNDERLOAD +UNDERLOADED +UNDERLOADING +UNDERLOADS +UNDERLYING +UNDERLYINGLY +UNDERMANNED +UNDERMINE +UNDERMINED +UNDERMINES +UNDERMINING +UNDERMOST +UNDERNEATH +UNDERNOURISHED +UNDERNUTRITION +UNDERNUTRITIONS +UNDERPAID +UNDERPAINTING +UNDERPAINTINGS +UNDERPANTS +UNDERPART +UNDERPARTS +UNDERPASS +UNDERPASSES +UNDERPAY +UNDERPAYING +UNDERPAYMENT +UNDERPAYMENTS +UNDERPAYS +UNDERPIN +UNDERPINNED +UNDERPINNING +UNDERPINNINGS +UNDERPINS +UNDERPLAY +UNDERPLAYED +UNDERPLAYING +UNDERPLAYS +UNDERPLOT +UNDERPLOTS +UNDERPOPULATED +UNDERPOWERED +UNDERPREPARED +UNDERPRICE +UNDERPRICED +UNDERPRICES +UNDERPRICING +UNDERPRIVILEGED +UNDERPRODUCTION +UNDERPROOF +UNDERPROP +UNDERPROPPED +UNDERPROPPING +UNDERPROPS +UNDERPUBLICIZED +UNDERRAN +UNDERRATE +UNDERRATED +UNDERRATES +UNDERRATING +UNDERREACT +UNDERREACTED +UNDERREACTING +UNDERREACTS +UNDERREPORT +UNDERREPORTED +UNDERREPORTING +UNDERREPORTS +UNDERRIPE +UNDERRUN +UNDERRUNNING +UNDERRUNS +UNDERSATURATED +UNDERSCORE +UNDERSCORED +UNDERSCORES +UNDERSCORING +UNDERSEA +UNDERSEAS +UNDERSECRETARY +UNDERSELL +UNDERSELLING +UNDERSELLS +UNDERSERVED +UNDERSET +UNDERSETS +UNDERSEXED +UNDERSHIRT +UNDERSHIRTED +UNDERSHIRTS +UNDERSHOOT +UNDERSHOOTING +UNDERSHOOTS +UNDERSHORTS +UNDERSHOT +UNDERSHRUB +UNDERSHRUBS +UNDERSIDE +UNDERSIDES +UNDERSIGN +UNDERSIGNED +UNDERSIGNING +UNDERSIGNS +UNDERSIZE +UNDERSIZED +UNDERSKIRT +UNDERSKIRTS +UNDERSLUNG +UNDERSOIL +UNDERSOILS +UNDERSOLD +UNDERSONG +UNDERSONGS +UNDERSPIN +UNDERSPINS +UNDERSTAFFED +UNDERSTAFFING +UNDERSTAFFINGS +UNDERSTAND +UNDERSTANDABLE +UNDERSTANDABLY +UNDERSTANDING +UNDERSTANDINGLY +UNDERSTANDINGS +UNDERSTANDS +UNDERSTATE +UNDERSTATED +UNDERSTATEDLY +UNDERSTATEMENT +UNDERSTATEMENTS +UNDERSTATES +UNDERSTATING +UNDERSTEER +UNDERSTEERED +UNDERSTEERING +UNDERSTEERS +UNDERSTOOD +UNDERSTORIES +UNDERSTORY +UNDERSTRAPPER +UNDERSTRAPPERS +UNDERSTRENGTH +UNDERSTUDIED +UNDERSTUDIES +UNDERSTUDY +UNDERSTUDYING +UNDERSUPPLIES +UNDERSUPPLY +UNDERSURFACE +UNDERSURFACES +UNDERTAKE +UNDERTAKEN +UNDERTAKER +UNDERTAKERS +UNDERTAKES +UNDERTAKING +UNDERTAKINGS +UNDERTAX +UNDERTAXED +UNDERTAXES +UNDERTAXING +UNDERTENANT +UNDERTENANTS +UNDERTHRUST +UNDERTHRUSTING +UNDERTHRUSTS +UNDERTINT +UNDERTINTS +UNDERTONE +UNDERTONES +UNDERTOOK +UNDERTOW +UNDERTOWS +UNDERTRICK +UNDERTRICKS +UNDERUSE +UNDERUSED +UNDERUSES +UNDERUSING +UNDERUTILIZE +UNDERUTILIZED +UNDERUTILIZES +UNDERUTILIZING +UNDERVALUATION +UNDERVALUATIONS +UNDERVALUE +UNDERVALUED +UNDERVALUES +UNDERVALUING +UNDERVEST +UNDERVESTS +UNDERVOTE +UNDERVOTES +UNDERWATER +UNDERWAY +UNDERWEAR +UNDERWEIGHT +UNDERWEIGHTS +UNDERWENT +UNDERWHELM +UNDERWHELMED +UNDERWHELMING +UNDERWHELMS +UNDERWING +UNDERWINGS +UNDERWIRE +UNDERWIRES +UNDERWOOD +UNDERWOODS +UNDERWOOL +UNDERWOOLS +UNDERWORK +UNDERWORKED +UNDERWORKING +UNDERWORKS +UNDERWORLD +UNDERWORLDS +UNDERWRITE +UNDERWRITER +UNDERWRITERS +UNDERWRITES +UNDERWRITING +UNDERWRITTEN +UNDERWROTE +UNDESCENDED +UNDESCRIBABLE +UNDESERVED +UNDESERVING +UNDESIGNATED +UNDESIGNING +UNDESIRABILITY +UNDESIRABLE +UNDESIRABLENESS +UNDESIRABLES +UNDESIRABLY +UNDESIRED +UNDETECTABLE +UNDETECTED +UNDETERMINABLE +UNDETERMINED +UNDETERRED +UNDEVELOPED +UNDEVIATING +UNDEVIATINGLY +UNDEVOUT +UNDIAGNOSABLE +UNDIAGNOSED +UNDIALECTICAL +UNDID +UNDIDACTIC +UNDIES +UNDIGESTED +UNDIGESTIBLE +UNDIGNIFIED +UNDILUTED +UNDIMINISHED +UNDIMMED +UNDINE +UNDINES +UNDIPLOMATIC +UNDIRECTED +UNDISCHARGED +UNDISCIPLINED +UNDISCLOSED +UNDISCOURAGED +UNDISCOVERABLE +UNDISCOVERED +UNDISCUSSED +UNDISGUISED +UNDISGUISEDLY +UNDISMAYED +UNDISPUTABLE +UNDISPUTED +UNDISSOCIATED +UNDISSOLVED +UNDISTINGUISHED +UNDISTORTED +UNDISTRACTED +UNDISTRIBUTED +UNDISTURBED +UNDIVIDED +UNDO +UNDOABLE +UNDOCILE +UNDOCK +UNDOCKED +UNDOCKING +UNDOCKS +UNDOCTORED +UNDOCTRINAIRE +UNDOCUMENTED +UNDOER +UNDOERS +UNDOES +UNDOGMATIC +UNDOGMATICALLY +UNDOING +UNDOINGS +UNDOMESTIC +UNDOMESTICATED +UNDONE +UNDOTTED +UNDOUBLE +UNDOUBLED +UNDOUBLES +UNDOUBLING +UNDOUBTABLE +UNDOUBTED +UNDOUBTEDLY +UNDOUBTING +UNDRAINED +UNDRAMATIC +UNDRAMATICALLY +UNDRAMATIZED +UNDRAPE +UNDRAPED +UNDRAPES +UNDRAPING +UNDRAW +UNDRAWING +UNDRAWN +UNDRAWS +UNDREAMED +UNDREAMT +UNDRESS +UNDRESSED +UNDRESSES +UNDRESSING +UNDREST +UNDREW +UNDRIED +UNDRILLED +UNDRINKABLE +UNDRUNK +UNDUBBED +UNDUE +UNDULANCE +UNDULANCES +UNDULANT +UNDULAR +UNDULATE +UNDULATED +UNDULATES +UNDULATING +UNDULATION +UNDULATIONS +UNDULATOR +UNDULATORS +UNDULATORY +UNDULLED +UNDULY +UNDUPLICATED +UNDUTIFUL +UNDUTIFULLY +UNDUTIFULNESS +UNDUTIFULNESSES +UNDY +UNDYED +UNDYING +UNDYINGLY +UNDYNAMIC +UNEAGER +UNEAGERLY +UNEARMARKED +UNEARNED +UNEARTH +UNEARTHED +UNEARTHING +UNEARTHLIER +UNEARTHLIEST +UNEARTHLINESS +UNEARTHLINESSES +UNEARTHLY +UNEARTHS +UNEASE +UNEASES +UNEASIER +UNEASIEST +UNEASILY +UNEASINESS +UNEASINESSES +UNEASY +UNEATABLE +UNEATEN +UNECCENTRIC +UNECOLOGICAL +UNECONOMIC +UNECONOMICAL +UNEDIBLE +UNEDIFYING +UNEDITED +UNEDUCABLE +UNEDUCATED +UNEFFACED +UNELABORATE +UNELECTABLE +UNELECTED +UNELECTRIFIED +UNEMBARRASSED +UNEMBELLISHED +UNEMBITTERED +UNEMOTIONAL +UNEMOTIONALLY +UNEMPHATIC +UNEMPHATICALLY +UNEMPIRICAL +UNEMPLOYABILITY +UNEMPLOYABLE +UNEMPLOYABLES +UNEMPLOYED +UNEMPLOYEDS +UNEMPLOYMENT +UNEMPLOYMENTS +UNENCHANTED +UNENCLOSED +UNENCOURAGING +UNENCUMBERED +UNENDEARING +UNENDED +UNENDING +UNENDINGLY +UNENDOWED +UNENDURABLE +UNENDURABLENESS +UNENDURABLY +UNENFORCEABLE +UNENFORCED +UNENGAGED +UNENJOYED +UNENLARGED +UNENLIGHTENED +UNENLIGHTENING +UNENRICHED +UNENSURED +UNENTERED +UNENTERPRISING +UNENTHUSIASTIC +UNENVIABLE +UNENVIED +UNENVIOUS +UNEQUAL +UNEQUALED +UNEQUALLED +UNEQUALLY +UNEQUALS +UNEQUIVOCABLY +UNEQUIVOCAL +UNEQUIVOCALLY +UNERASED +UNEROTIC +UNERRING +UNERRINGLY +UNESCAPABLE +UNESSAYED +UNESSENTIAL +UNESTABLISHED +UNETHICAL +UNEVADED +UNEVALUATED +UNEVEN +UNEVENER +UNEVENEST +UNEVENLY +UNEVENNESS +UNEVENNESSES +UNEVENTFUL +UNEVENTFULLY +UNEVENTFULNESS +UNEVOLVED +UNEXALTED +UNEXAMINED +UNEXAMPLED +UNEXCELLED +UNEXCEPTIONABLE +UNEXCEPTIONABLY +UNEXCEPTIONAL +UNEXCITABLE +UNEXCITED +UNEXCITING +UNEXCUSED +UNEXERCISED +UNEXOTIC +UNEXPECTED +UNEXPECTEDLY +UNEXPECTEDNESS +UNEXPENDED +UNEXPERT +UNEXPIRED +UNEXPLAINABLE +UNEXPLAINED +UNEXPLODED +UNEXPLOITED +UNEXPLORED +UNEXPOSED +UNEXPRESSED +UNEXPRESSIVE +UNEXPURGATED +UNEXTRAORDINARY +UNFADED +UNFADING +UNFADINGLY +UNFAILING +UNFAILINGLY +UNFAIR +UNFAIRER +UNFAIREST +UNFAIRLY +UNFAIRNESS +UNFAIRNESSES +UNFAITH +UNFAITHFUL +UNFAITHFULLY +UNFAITHFULNESS +UNFAITHS +UNFAKED +UNFALLEN +UNFALSIFIABLE +UNFALTERING +UNFALTERINGLY +UNFAMILIAR +UNFAMILIARITIES +UNFAMILIARITY +UNFAMILIARLY +UNFAMOUS +UNFANCY +UNFASHIONABLE +UNFASHIONABLY +UNFASTEN +UNFASTENED +UNFASTENING +UNFASTENS +UNFASTIDIOUS +UNFATHERED +UNFATHOMABLE +UNFAVORABLE +UNFAVORABLENESS +UNFAVORABLY +UNFAVORED +UNFAVORITE +UNFAZED +UNFEARED +UNFEARFUL +UNFEARING +UNFEASIBLE +UNFED +UNFEELING +UNFEELINGLY +UNFEELINGNESS +UNFEELINGNESSES +UNFEIGNED +UNFEIGNEDLY +UNFELT +UNFELTED +UNFEMININE +UNFENCE +UNFENCED +UNFENCES +UNFENCING +UNFERMENTED +UNFERTILE +UNFERTILIZED +UNFETTER +UNFETTERED +UNFETTERING +UNFETTERS +UNFILIAL +UNFILIALLY +UNFILLED +UNFILMED +UNFILTERED +UNFINDABLE +UNFINISHED +UNFIRED +UNFISHED +UNFIT +UNFITLY +UNFITNESS +UNFITNESSES +UNFITS +UNFITTED +UNFITTING +UNFIX +UNFIXED +UNFIXES +UNFIXING +UNFIXT +UNFLAGGING +UNFLAGGINGLY +UNFLAMBOYANT +UNFLAPPABILITY +UNFLAPPABLE +UNFLAPPABLY +UNFLAPPED +UNFLASHY +UNFLATTERING +UNFLATTERINGLY +UNFLAWED +UNFLEDGED +UNFLEXED +UNFLINCHING +UNFLINCHINGLY +UNFLUTED +UNFLYABLE +UNFOCUSED +UNFOCUSSED +UNFOILED +UNFOLD +UNFOLDED +UNFOLDER +UNFOLDERS +UNFOLDING +UNFOLDMENT +UNFOLDMENTS +UNFOLDS +UNFOND +UNFORCED +UNFORESEEABLE +UNFORESEEN +UNFORESTED +UNFORGED +UNFORGETTABLE +UNFORGETTABLY +UNFORGIVABLE +UNFORGIVING +UNFORGIVINGNESS +UNFORGOT +UNFORKED +UNFORMED +UNFORMULATED +UNFORTHCOMING +UNFORTIFIED +UNFORTUNATE +UNFORTUNATELY +UNFORTUNATES +UNFOSSILIFEROUS +UNFOUGHT +UNFOUND +UNFOUNDED +UNFRAMED +UNFREE +UNFREED +UNFREEDOM +UNFREEDOMS +UNFREEING +UNFREES +UNFREEZE +UNFREEZES +UNFREEZING +UNFREQUENTED +UNFRIENDED +UNFRIENDLINESS +UNFRIENDLY +UNFRIVOLOUS +UNFROCK +UNFROCKED +UNFROCKING +UNFROCKS +UNFROZE +UNFROZEN +UNFRUITFUL +UNFRUITFULLY +UNFRUITFULNESS +UNFULFILLABLE +UNFULFILLED +UNFUNDED +UNFUNNY +UNFURL +UNFURLED +UNFURLING +UNFURLS +UNFURNISHED +UNFUSED +UNFUSSILY +UNFUSSY +UNGAINLIER +UNGAINLIEST +UNGAINLINESS +UNGAINLINESSES +UNGAINLY +UNGALLANT +UNGALLANTLY +UNGALLED +UNGARBED +UNGARNISHED +UNGATED +UNGAZING +UNGELDED +UNGENEROSITIES +UNGENEROSITY +UNGENEROUS +UNGENEROUSLY +UNGENIAL +UNGENTEEL +UNGENTLE +UNGENTLEMANLY +UNGENTLY +UNGENTRIFIED +UNGENUINE +UNGERMINATED +UNGIFTED +UNGIMMICKY +UNGIRD +UNGIRDED +UNGIRDING +UNGIRDS +UNGIRT +UNGIVING +UNGLAMORIZED +UNGLAMOROUS +UNGLAZED +UNGLOSSED +UNGLOVE +UNGLOVED +UNGLOVES +UNGLOVING +UNGLUE +UNGLUED +UNGLUES +UNGLUING +UNGODLIER +UNGODLIEST +UNGODLINESS +UNGODLINESSES +UNGODLY +UNGOT +UNGOTTEN +UNGOVERNABLE +UNGOWNED +UNGRACED +UNGRACEFUL +UNGRACEFULLY +UNGRACIOUS +UNGRACIOUSLY +UNGRACIOUSNESS +UNGRADED +UNGRAMMATICAL +UNGRASPABLE +UNGRATEFUL +UNGRATEFULLY +UNGRATEFULNESS +UNGREASED +UNGREEDY +UNGROOMED +UNGROUND +UNGROUPED +UNGRUDGING +UNGUAL +UNGUARD +UNGUARDED +UNGUARDEDLY +UNGUARDEDNESS +UNGUARDEDNESSES +UNGUARDING +UNGUARDS +UNGUENT +UNGUENTA +UNGUENTS +UNGUENTUM +UNGUES +UNGUESSABLE +UNGUIDED +UNGUINOUS +UNGUIS +UNGULA +UNGULAE +UNGULAR +UNGULATE +UNGULATES +UNHACKNEYED +UNHAILED +UNHAIR +UNHAIRED +UNHAIRER +UNHAIRERS +UNHAIRING +UNHAIRS +UNHALLOW +UNHALLOWED +UNHALLOWING +UNHALLOWS +UNHALVED +UNHAMPERED +UNHAND +UNHANDED +UNHANDIER +UNHANDIEST +UNHANDILY +UNHANDINESS +UNHANDINESSES +UNHANDING +UNHANDLED +UNHANDS +UNHANDSOME +UNHANDSOMELY +UNHANDY +UNHANG +UNHANGED +UNHANGING +UNHANGS +UNHAPPIER +UNHAPPIEST +UNHAPPILY +UNHAPPINESS +UNHAPPINESSES +UNHAPPY +UNHARMED +UNHARMFUL +UNHARNESS +UNHARNESSED +UNHARNESSES +UNHARNESSING +UNHARRIED +UNHARVESTED +UNHASTY +UNHAT +UNHATCHED +UNHATS +UNHATTED +UNHATTING +UNHEALED +UNHEALTHFUL +UNHEALTHIER +UNHEALTHIEST +UNHEALTHILY +UNHEALTHINESS +UNHEALTHINESSES +UNHEALTHY +UNHEARD +UNHEATED +UNHEDGED +UNHEEDED +UNHEEDFUL +UNHEEDING +UNHELM +UNHELMED +UNHELMING +UNHELMS +UNHELPED +UNHELPFUL +UNHELPFULLY +UNHERALDED +UNHEROIC +UNHESITATING +UNHESITATINGLY +UNHEWN +UNHINDERED +UNHINGE +UNHINGED +UNHINGES +UNHINGING +UNHIP +UNHIRABLE +UNHIRED +UNHISTORICAL +UNHITCH +UNHITCHED +UNHITCHES +UNHITCHING +UNHOLIER +UNHOLIEST +UNHOLILY +UNHOLINESS +UNHOLINESSES +UNHOLY +UNHOMOGENIZED +UNHONORED +UNHOOD +UNHOODED +UNHOODING +UNHOODS +UNHOOK +UNHOOKED +UNHOOKING +UNHOOKS +UNHOPED +UNHOPEFUL +UNHORSE +UNHORSED +UNHORSES +UNHORSING +UNHOSTILE +UNHOUSE +UNHOUSED +UNHOUSELED +UNHOUSES +UNHOUSING +UNHUMAN +UNHUMANLY +UNHUMBLED +UNHUMOROUS +UNHUNG +UNHURRIED +UNHURRIEDLY +UNHURT +UNHUSK +UNHUSKED +UNHUSKING +UNHUSKS +UNHYDROLYZED +UNHYGIENIC +UNHYPHENATED +UNHYSTERICAL +UNHYSTERICALLY +UNIALGAL +UNIAXIAL +UNIBODY +UNICAMERAL +UNICAMERALLY +UNICELLULAR +UNICOLOR +UNICORN +UNICORNS +UNICYCLE +UNICYCLED +UNICYCLES +UNICYCLING +UNICYCLIST +UNICYCLISTS +UNIDEAED +UNIDEAL +UNIDENTIFIABLE +UNIDENTIFIED +UNIDEOLOGICAL +UNIDIMENSIONAL +UNIDIOMATIC +UNIDIRECTIONAL +UNIFACE +UNIFACES +UNIFIABLE +UNIFIC +UNIFICATION +UNIFICATIONS +UNIFIED +UNIFIER +UNIFIERS +UNIFIES +UNIFILAR +UNIFOLIATE +UNIFOLIOLATE +UNIFORM +UNIFORMED +UNIFORMER +UNIFORMEST +UNIFORMING +UNIFORMITARIAN +UNIFORMITARIANS +UNIFORMITIES +UNIFORMITY +UNIFORMLY +UNIFORMNESS +UNIFORMNESSES +UNIFORMS +UNIFY +UNIFYING +UNIGNORABLE +UNIJUGATE +UNILATERAL +UNILATERALLY +UNILINEAL +UNILINEAR +UNILINGUAL +UNILLUMINATING +UNILLUSIONED +UNILOBED +UNILOCULAR +UNIMAGINABLE +UNIMAGINABLY +UNIMAGINATIVE +UNIMAGINATIVELY +UNIMBUED +UNIMMUNIZED +UNIMPAIRED +UNIMPASSIONED +UNIMPEACHABLE +UNIMPEACHABLY +UNIMPEDED +UNIMPORTANT +UNIMPOSING +UNIMPRESSED +UNIMPRESSIVE +UNIMPROVED +UNINCORPORATED +UNINDEXED +UNINDICTED +UNINFECTED +UNINFLATED +UNINFLECTED +UNINFLUENCED +UNINFORMATIVE +UNINFORMATIVELY +UNINFORMED +UNINGRATIATING +UNINHABITABLE +UNINHABITED +UNINHIBITED +UNINHIBITEDLY +UNINHIBITEDNESS +UNINITIATE +UNINITIATED +UNINITIATES +UNINJURED +UNINOCULATED +UNINSPECTED +UNINSPIRED +UNINSPIRING +UNINSTALL +UNINSTALLED +UNINSTALLING +UNINSTALLS +UNINSTRUCTED +UNINSTRUCTIVE +UNINSULATED +UNINSURABLE +UNINSURED +UNINSUREDS +UNINTEGRATED +UNINTELLECTUAL +UNINTELLIGENT +UNINTELLIGENTLY +UNINTELLIGIBLE +UNINTELLIGIBLY +UNINTENDED +UNINTENTIONAL +UNINTENTIONALLY +UNINTEREST +UNINTERESTED +UNINTERESTING +UNINTERESTS +UNINTERRUPTED +UNINTERRUPTEDLY +UNINTIMIDATED +UNINUCLEATE +UNINVENTIVE +UNINVITED +UNINVITING +UNINVOKED +UNINVOLVED +UNION +UNIONISATION +UNIONISATIONS +UNIONISE +UNIONISED +UNIONISES +UNIONISING +UNIONISM +UNIONISMS +UNIONIST +UNIONISTS +UNIONIZATION +UNIONIZATIONS +UNIONIZE +UNIONIZED +UNIONIZER +UNIONIZERS +UNIONIZES +UNIONIZING +UNIONS +UNIPARENTAL +UNIPARENTALLY +UNIPAROUS +UNIPLANAR +UNIPOD +UNIPODS +UNIPOLAR +UNIPOTENT +UNIQUE +UNIQUELY +UNIQUENESS +UNIQUENESSES +UNIQUER +UNIQUES +UNIQUEST +UNIRAMOUS +UNIRONED +UNIRONIC +UNIRONICALLY +UNIRRADIATED +UNIRRIGATED +UNISEX +UNISEXES +UNISEXUAL +UNISEXUALITIES +UNISEXUALITY +UNISIZE +UNISON +UNISONAL +UNISONANT +UNISONOUS +UNISONS +UNISSUED +UNIT +UNITAGE +UNITAGES +UNITARD +UNITARDS +UNITARIAN +UNITARIANISM +UNITARIANISMS +UNITARIANS +UNITARILY +UNITARY +UNITE +UNITED +UNITEDLY +UNITER +UNITERS +UNITES +UNITIES +UNITING +UNITIVE +UNITIVELY +UNITIZATION +UNITIZATIONS +UNITIZE +UNITIZED +UNITIZER +UNITIZERS +UNITIZES +UNITIZING +UNITRUST +UNITRUSTS +UNITS +UNITY +UNIVALENT +UNIVALENTS +UNIVALVE +UNIVALVED +UNIVALVES +UNIVARIATE +UNIVERSAL +UNIVERSALISM +UNIVERSALISMS +UNIVERSALIST +UNIVERSALISTIC +UNIVERSALISTS +UNIVERSALITIES +UNIVERSALITY +UNIVERSALIZE +UNIVERSALIZED +UNIVERSALIZES +UNIVERSALIZING +UNIVERSALLY +UNIVERSALNESS +UNIVERSALNESSES +UNIVERSALS +UNIVERSE +UNIVERSES +UNIVERSITIES +UNIVERSITY +UNIVOCAL +UNIVOCALLY +UNIVOCALS +UNJADED +UNJAM +UNJAMMED +UNJAMMING +UNJAMS +UNJOINED +UNJOINT +UNJOINTED +UNJOINTING +UNJOINTS +UNJOYFUL +UNJUDGED +UNJUST +UNJUSTIFIABLE +UNJUSTIFIABLY +UNJUSTIFIED +UNJUSTLY +UNJUSTNESS +UNJUSTNESSES +UNKEELED +UNKEMPT +UNKEND +UNKENNED +UNKENNEL +UNKENNELED +UNKENNELING +UNKENNELLED +UNKENNELLING +UNKENNELS +UNKENT +UNKEPT +UNKIND +UNKINDER +UNKINDEST +UNKINDLED +UNKINDLIER +UNKINDLIEST +UNKINDLINESS +UNKINDLINESSES +UNKINDLY +UNKINDNESS +UNKINDNESSES +UNKINGLY +UNKINK +UNKINKED +UNKINKING +UNKINKS +UNKISSED +UNKNIT +UNKNITS +UNKNITTED +UNKNITTING +UNKNOT +UNKNOTS +UNKNOTTED +UNKNOTTING +UNKNOWABILITIES +UNKNOWABILITY +UNKNOWABLE +UNKNOWING +UNKNOWINGLY +UNKNOWINGS +UNKNOWLEDGEABLE +UNKNOWN +UNKNOWNS +UNKOSHER +UNLABELED +UNLABORED +UNLACE +UNLACED +UNLACES +UNLACING +UNLADE +UNLADED +UNLADEN +UNLADES +UNLADING +UNLADYLIKE +UNLAID +UNLAMENTED +UNLASH +UNLASHED +UNLASHES +UNLASHING +UNLATCH +UNLATCHED +UNLATCHES +UNLATCHING +UNLAUNDERED +UNLAWFUL +UNLAWFULLY +UNLAWFULNESS +UNLAWFULNESSES +UNLAY +UNLAYING +UNLAYS +UNLEAD +UNLEADED +UNLEADEDS +UNLEADING +UNLEADS +UNLEARN +UNLEARNABLE +UNLEARNED +UNLEARNING +UNLEARNS +UNLEARNT +UNLEASED +UNLEASH +UNLEASHED +UNLEASHES +UNLEASHING +UNLEAVENED +UNLED +UNLESS +UNLET +UNLETHAL +UNLETTED +UNLETTERED +UNLEVEL +UNLEVELED +UNLEVELING +UNLEVELLED +UNLEVELLING +UNLEVELS +UNLEVIED +UNLIBERATED +UNLICENSED +UNLICKED +UNLIGHTED +UNLIKABLE +UNLIKE +UNLIKED +UNLIKELIER +UNLIKELIEST +UNLIKELIHOOD +UNLIKELIHOODS +UNLIKELINESS +UNLIKELINESSES +UNLIKELY +UNLIKENESS +UNLIKENESSES +UNLIMBER +UNLIMBERED +UNLIMBERING +UNLIMBERS +UNLIMITED +UNLIMITEDLY +UNLINED +UNLINK +UNLINKED +UNLINKING +UNLINKS +UNLISTED +UNLISTENABLE +UNLIT +UNLITERARY +UNLIVABLE +UNLIVE +UNLIVED +UNLIVELY +UNLIVES +UNLIVING +UNLOAD +UNLOADED +UNLOADER +UNLOADERS +UNLOADING +UNLOADS +UNLOBED +UNLOCALIZED +UNLOCATED +UNLOCK +UNLOCKED +UNLOCKING +UNLOCKS +UNLOOSE +UNLOOSED +UNLOOSEN +UNLOOSENED +UNLOOSENING +UNLOOSENS +UNLOOSES +UNLOOSING +UNLOVABLE +UNLOVED +UNLOVELIER +UNLOVELIEST +UNLOVELINESS +UNLOVELINESSES +UNLOVELY +UNLOVING +UNLUCKIER +UNLUCKIEST +UNLUCKILY +UNLUCKINESS +UNLUCKINESSES +UNLUCKY +UNLYRICAL +UNMACHO +UNMADE +UNMAGNIFIED +UNMAILED +UNMAKE +UNMAKER +UNMAKERS +UNMAKES +UNMAKING +UNMALICIOUS +UNMALICIOUSLY +UNMAN +UNMANAGEABLE +UNMANAGEABLY +UNMANAGED +UNMANFUL +UNMANIPULATED +UNMANLIER +UNMANLIEST +UNMANLINESS +UNMANLINESSES +UNMANLY +UNMANNED +UNMANNERED +UNMANNEREDLY +UNMANNERLINESS +UNMANNERLY +UNMANNING +UNMANNISH +UNMANS +UNMAPPED +UNMARKED +UNMARKETABLE +UNMARRED +UNMARRIED +UNMARRIEDS +UNMASCULINE +UNMASK +UNMASKED +UNMASKER +UNMASKERS +UNMASKING +UNMASKS +UNMATCHABLE +UNMATCHED +UNMATED +UNMATTED +UNMATURED +UNMEANING +UNMEANT +UNMEASURABLE +UNMEASURED +UNMECHANIZED +UNMEDIATED +UNMEDICATED +UNMEET +UNMEETLY +UNMELLOW +UNMELODIOUS +UNMELODIOUSNESS +UNMELTED +UNMEMORABLE +UNMEMORABLY +UNMENDED +UNMENTIONABLE +UNMENTIONABLES +UNMERCIFUL +UNMERCIFULLY +UNMERITED +UNMERRY +UNMESH +UNMESHED +UNMESHES +UNMESHING +UNMET +UNMETABOLIZED +UNMEW +UNMEWED +UNMEWING +UNMEWS +UNMILITARY +UNMILLED +UNMINDFUL +UNMINED +UNMINGLE +UNMINGLED +UNMINGLES +UNMINGLING +UNMISTAKABLE +UNMISTAKABLY +UNMITER +UNMITERED +UNMITERING +UNMITERS +UNMITIGATED +UNMITIGATEDLY +UNMITIGATEDNESS +UNMITRE +UNMITRED +UNMITRES +UNMITRING +UNMIX +UNMIXABLE +UNMIXED +UNMIXEDLY +UNMIXES +UNMIXING +UNMIXT +UNMODERNIZED +UNMODIFIED +UNMODISH +UNMOLD +UNMOLDED +UNMOLDING +UNMOLDS +UNMOLESTED +UNMOLTEN +UNMONITORED +UNMOOR +UNMOORED +UNMOORING +UNMOORS +UNMORAL +UNMORALITIES +UNMORALITY +UNMORALLY +UNMORTISE +UNMORTISED +UNMORTISES +UNMORTISING +UNMOTIVATED +UNMOUNTED +UNMOURNED +UNMOVABLE +UNMOVED +UNMOVING +UNMOWN +UNMUFFLE +UNMUFFLED +UNMUFFLES +UNMUFFLING +UNMUSICAL +UNMUZZLE +UNMUZZLED +UNMUZZLES +UNMUZZLING +UNMYELINATED +UNNAIL +UNNAILED +UNNAILING +UNNAILS +UNNAMABLE +UNNAMEABLE +UNNAMED +UNNATURAL +UNNATURALLY +UNNATURALNESS +UNNATURALNESSES +UNNECESSARILY +UNNECESSARY +UNNEEDED +UNNEEDFUL +UNNEGOTIABLE +UNNERVE +UNNERVED +UNNERVES +UNNERVING +UNNERVINGLY +UNNEUROTIC +UNNEWSWORTHY +UNNILHEXIUM +UNNILHEXIUMS +UNNILPENTIUM +UNNILPENTIUMS +UNNILQUADIUM +UNNILQUADIUMS +UNNOISY +UNNOTED +UNNOTICEABLE +UNNOTICED +UNNOURISHING +UNNUANCED +UNNUMBERED +UNOBJECTIONABLE +UNOBSERVABLE +UNOBSERVED +UNOBSTRUCTED +UNOBTAINABLE +UNOBTRUSIVE +UNOBTRUSIVELY +UNOBTRUSIVENESS +UNOCCUPIED +UNOFFERED +UNOFFICIAL +UNOFFICIALLY +UNOILED +UNOPEN +UNOPENABLE +UNOPENED +UNOPPOSED +UNORDERED +UNORDERLY +UNORGANIZED +UNORIGINAL +UNORNAMENTED +UNORNATE +UNORTHODOX +UNORTHODOXIES +UNORTHODOXLY +UNORTHODOXY +UNOSTENTATIOUS +UNOWNED +UNOXYGENATED +UNPACK +UNPACKED +UNPACKER +UNPACKERS +UNPACKING +UNPACKS +UNPADDED +UNPAGED +UNPAID +UNPAINFUL +UNPAINTED +UNPAIRED +UNPALATABILITY +UNPALATABLE +UNPARALLELED +UNPARASITIZED +UNPARDONABLE +UNPARLIAMENTARY +UNPARTED +UNPASSABLE +UNPASTEURIZED +UNPASTORAL +UNPATCHED +UNPATENTABLE +UNPATRIOTIC +UNPAVED +UNPAYING +UNPEDANTIC +UNPEELED +UNPEG +UNPEGGED +UNPEGGING +UNPEGS +UNPEN +UNPENNED +UNPENNING +UNPENS +UNPENT +UNPEOPLE +UNPEOPLED +UNPEOPLES +UNPEOPLING +UNPERCEIVED +UNPERCEPTIVE +UNPERFECT +UNPERFORMABLE +UNPERFORMED +UNPERSON +UNPERSONS +UNPERSUADED +UNPERSUASIVE +UNPERTURBED +UNPICK +UNPICKED +UNPICKING +UNPICKS +UNPICTURESQUE +UNPIERCED +UNPILE +UNPILED +UNPILES +UNPILING +UNPIN +UNPINNED +UNPINNING +UNPINS +UNPITIED +UNPITTED +UNPITYING +UNPLACED +UNPLAIT +UNPLAITED +UNPLAITING +UNPLAITS +UNPLANNED +UNPLANTED +UNPLAUSIBLE +UNPLAYABLE +UNPLAYED +UNPLEASANT +UNPLEASANTLY +UNPLEASANTNESS +UNPLEASED +UNPLEASING +UNPLEDGED +UNPLIABLE +UNPLIANT +UNPLOWED +UNPLUCKED +UNPLUG +UNPLUGGED +UNPLUGGING +UNPLUGS +UNPLUMBED +UNPOETIC +UNPOINTED +UNPOISED +UNPOLARIZED +UNPOLICED +UNPOLISHED +UNPOLITE +UNPOLITIC +UNPOLITICAL +UNPOLLED +UNPOLLUTED +UNPOPULAR +UNPOPULARITIES +UNPOPULARITY +UNPOSED +UNPOSTED +UNPOTTED +UNPRACTICAL +UNPRECEDENTED +UNPRECEDENTEDLY +UNPREDICTABLE +UNPREDICTABLES +UNPREDICTABLY +UNPREGNANT +UNPREJUDICED +UNPREMEDITATED +UNPREPARED +UNPREPAREDNESS +UNPREPOSSESSING +UNPRESSED +UNPRESSURED +UNPRESSURIZED +UNPRETENDING +UNPRETENTIOUS +UNPRETENTIOUSLY +UNPRETTY +UNPRICED +UNPRIMED +UNPRINCIPLED +UNPRINTABLE +UNPRINTED +UNPRIVILEGED +UNPRIZED +UNPROBED +UNPROBLEMATIC +UNPROCESSED +UNPRODUCED +UNPRODUCTIVE +UNPROFESSED +UNPROFESSIONAL +UNPROFESSIONALS +UNPROFITABLE +UNPROFITABLY +UNPROGRAMMABLE +UNPROGRAMMED +UNPROGRESSIVE +UNPROMISING +UNPROMISINGLY +UNPROMPTED +UNPRONOUNCEABLE +UNPRONOUNCED +UNPROPITIOUS +UNPROSPEROUS +UNPROTECTED +UNPROVABLE +UNPROVED +UNPROVEN +UNPROVOKED +UNPRUNED +UNPUBLICIZED +UNPUBLISHABLE +UNPUBLISHED +UNPUCKER +UNPUCKERED +UNPUCKERING +UNPUCKERS +UNPUNCTUAL +UNPUNCTUALITIES +UNPUNCTUALITY +UNPUNCTUATED +UNPUNISHED +UNPURE +UNPURELY +UNPURGED +UNPUZZLE +UNPUZZLED +UNPUZZLES +UNPUZZLING +UNQUAKING +UNQUALIFIED +UNQUALIFIEDLY +UNQUANTIFIABLE +UNQUELLED +UNQUENCHABLE +UNQUESTIONABLE +UNQUESTIONABLY +UNQUESTIONED +UNQUESTIONING +UNQUESTIONINGLY +UNQUIET +UNQUIETER +UNQUIETEST +UNQUIETLY +UNQUIETNESS +UNQUIETNESSES +UNQUIETS +UNQUOTE +UNQUOTED +UNQUOTES +UNQUOTING +UNRAISED +UNRAKED +UNRANKED +UNRATED +UNRAVAGED +UNRAVEL +UNRAVELED +UNRAVELING +UNRAVELLED +UNRAVELLING +UNRAVELS +UNRAVISHED +UNRAZED +UNREACHABLE +UNREACHED +UNREAD +UNREADABLE +UNREADIER +UNREADIEST +UNREADILY +UNREADINESS +UNREADINESSES +UNREADY +UNREAL +UNREALISTIC +UNREALISTICALLY +UNREALITIES +UNREALITY +UNREALIZABLE +UNREALIZED +UNREALLY +UNREASON +UNREASONABLE +UNREASONABLY +UNREASONED +UNREASONING +UNREASONINGLY +UNREASONS +UNREBUKED +UNRECEPTIVE +UNRECLAIMABLE +UNRECLAIMED +UNRECOGNIZABLE +UNRECOGNIZABLY +UNRECOGNIZED +UNRECONCILABLE +UNRECONCILED +UNRECONSTRUCTED +UNRECORDED +UNRECOVERABLE +UNRECOVERED +UNRECYCLABLE +UNREDEEMABLE +UNREDEEMED +UNREDRESSED +UNREEL +UNREELED +UNREELER +UNREELERS +UNREELING +UNREELS +UNREEVE +UNREEVED +UNREEVES +UNREEVING +UNREFINED +UNREFLECTIVE +UNREFORMED +UNREFRIGERATED +UNREGENERATE +UNREGENERATELY +UNREGISTERED +UNREGULATED +UNREHEARSED +UNREINFORCED +UNRELATED +UNRELAXED +UNRELENTING +UNRELENTINGLY +UNRELIABILITIES +UNRELIABILITY +UNRELIABLE +UNRELIEVED +UNRELIEVEDLY +UNRELUCTANT +UNREMARKABLE +UNREMARKABLY +UNREMARKED +UNREMEMBERED +UNREMINISCENT +UNREMITTING +UNREMITTINGLY +UNREMOVABLE +UNRENEWED +UNRENT +UNRENTED +UNREPAID +UNREPAIR +UNREPAIRS +UNREPEATABLE +UNREPENTANT +UNREPENTANTLY +UNREPORTED +UNREPRESENTED +UNREPRESSED +UNREQUITED +UNRESERVE +UNRESERVED +UNRESERVEDLY +UNRESERVEDNESS +UNRESERVES +UNRESISTANT +UNRESOLVABLE +UNRESOLVED +UNRESPECTABLE +UNRESPONSIVE +UNRESPONSIVELY +UNREST +UNRESTED +UNRESTFUL +UNRESTING +UNRESTORED +UNRESTRAINED +UNRESTRAINEDLY +UNRESTRAINT +UNRESTRAINTS +UNRESTRICTED +UNRESTS +UNRETIRE +UNRETIRED +UNRETIRES +UNRETIRING +UNRETOUCHED +UNRETURNABLE +UNREVEALED +UNREVIEWABLE +UNREVIEWED +UNREVISED +UNREVOKED +UNREVOLUTIONARY +UNREWARDED +UNREWARDING +UNRHETORICAL +UNRHYMED +UNRHYTHMIC +UNRIBBED +UNRIDABLE +UNRIDDLE +UNRIDDLED +UNRIDDLER +UNRIDDLERS +UNRIDDLES +UNRIDDLING +UNRIFLED +UNRIG +UNRIGGED +UNRIGGING +UNRIGHTEOUS +UNRIGHTEOUSLY +UNRIGHTEOUSNESS +UNRIGS +UNRIMED +UNRINSED +UNRIP +UNRIPE +UNRIPELY +UNRIPENED +UNRIPENESS +UNRIPENESSES +UNRIPER +UNRIPEST +UNRIPPED +UNRIPPING +UNRIPS +UNRISEN +UNRIVALED +UNRIVALLED +UNROASTED +UNROBE +UNROBED +UNROBES +UNROBING +UNROLL +UNROLLED +UNROLLING +UNROLLS +UNROMANTIC +UNROMANTICALLY +UNROMANTICIZED +UNROOF +UNROOFED +UNROOFING +UNROOFS +UNROOT +UNROOTED +UNROOTING +UNROOTS +UNROPED +UNROUGH +UNROUND +UNROUNDED +UNROUNDING +UNROUNDS +UNROVE +UNROVEN +UNRUFFLED +UNRULED +UNRULIER +UNRULIEST +UNRULINESS +UNRULINESSES +UNRULY +UNRUMPLED +UNRUSHED +UNRUSTED +UNS +UNSADDLE +UNSADDLED +UNSADDLES +UNSADDLING +UNSAFE +UNSAFELY +UNSAFETIES +UNSAFETY +UNSAID +UNSAINTLY +UNSALABLE +UNSALABLY +UNSALARIED +UNSALTED +UNSALVAGEABLE +UNSAMPLED +UNSANCTIONED +UNSANITARY +UNSATED +UNSATISFACTORY +UNSATISFIED +UNSATURATE +UNSATURATED +UNSATURATES +UNSAVED +UNSAVORY +UNSAVOURY +UNSAWED +UNSAWN +UNSAY +UNSAYABLE +UNSAYABLES +UNSAYING +UNSAYS +UNSCALABLE +UNSCALED +UNSCANNED +UNSCARRED +UNSCATHED +UNSCENTED +UNSCHEDULED +UNSCHOLARLY +UNSCHOOLED +UNSCIENTIFIC +UNSCRAMBLE +UNSCRAMBLED +UNSCRAMBLER +UNSCRAMBLERS +UNSCRAMBLES +UNSCRAMBLING +UNSCREENED +UNSCREW +UNSCREWED +UNSCREWING +UNSCREWS +UNSCRIPTED +UNSCRIPTURAL +UNSCRUPULOUS +UNSCRUPULOUSLY +UNSEAL +UNSEALED +UNSEALING +UNSEALS +UNSEAM +UNSEAMED +UNSEAMING +UNSEAMS +UNSEARCHABLE +UNSEARCHABLY +UNSEARED +UNSEASONABLE +UNSEASONABLY +UNSEASONED +UNSEAT +UNSEATED +UNSEATING +UNSEATS +UNSEAWORTHY +UNSECURED +UNSEEABLE +UNSEEDED +UNSEEING +UNSEEMLIER +UNSEEMLIEST +UNSEEMLINESS +UNSEEMLINESSES +UNSEEMLY +UNSEEN +UNSEGMENTED +UNSEGREGATED +UNSEIZED +UNSELECTED +UNSELECTIVE +UNSELECTIVELY +UNSELFISH +UNSELFISHLY +UNSELFISHNESS +UNSELFISHNESSES +UNSELL +UNSELLABLE +UNSELLING +UNSELLS +UNSENSATIONAL +UNSENSITIZED +UNSENT +UNSENTIMENTAL +UNSEPARATED +UNSERIOUS +UNSERIOUSNESS +UNSERIOUSNESSES +UNSERVED +UNSERVICEABLE +UNSET +UNSETS +UNSETTING +UNSETTLE +UNSETTLED +UNSETTLEDNESS +UNSETTLEDNESSES +UNSETTLEMENT +UNSETTLEMENTS +UNSETTLES +UNSETTLING +UNSETTLINGLY +UNSEW +UNSEWED +UNSEWING +UNSEWN +UNSEWS +UNSEX +UNSEXED +UNSEXES +UNSEXING +UNSEXUAL +UNSEXY +UNSHACKLE +UNSHACKLED +UNSHACKLES +UNSHACKLING +UNSHADED +UNSHAKABLE +UNSHAKABLY +UNSHAKEN +UNSHAMED +UNSHAPED +UNSHAPELY +UNSHAPEN +UNSHARED +UNSHARP +UNSHAVED +UNSHAVEN +UNSHEATHE +UNSHEATHED +UNSHEATHES +UNSHEATHING +UNSHED +UNSHELL +UNSHELLED +UNSHELLING +UNSHELLS +UNSHIFT +UNSHIFTED +UNSHIFTING +UNSHIFTS +UNSHIP +UNSHIPPED +UNSHIPPING +UNSHIPS +UNSHIRTED +UNSHOCKABLE +UNSHOD +UNSHORN +UNSHOWY +UNSHRUNK +UNSHUT +UNSICKER +UNSIFTED +UNSIGHT +UNSIGHTED +UNSIGHTING +UNSIGHTLIER +UNSIGHTLIEST +UNSIGHTLINESS +UNSIGHTLINESSES +UNSIGHTLY +UNSIGHTS +UNSIGNED +UNSILENT +UNSIMILAR +UNSINFUL +UNSINKABLE +UNSIZED +UNSKILFUL +UNSKILLED +UNSKILLFUL +UNSKILLFULLY +UNSKILLFULNESS +UNSLAKABLE +UNSLAKED +UNSLICED +UNSLICK +UNSLING +UNSLINGING +UNSLINGS +UNSLUNG +UNSMART +UNSMILING +UNSMOKED +UNSMOOTHED +UNSNAG +UNSNAGGED +UNSNAGGING +UNSNAGS +UNSNAP +UNSNAPPED +UNSNAPPING +UNSNAPS +UNSNARL +UNSNARLED +UNSNARLING +UNSNARLS +UNSOAKED +UNSOBER +UNSOBERLY +UNSOCIABILITIES +UNSOCIABILITY +UNSOCIABLE +UNSOCIABLENESS +UNSOCIABLY +UNSOCIAL +UNSOCIALLY +UNSOILED +UNSOLD +UNSOLDER +UNSOLDERED +UNSOLDERING +UNSOLDERS +UNSOLDIERLY +UNSOLICITED +UNSOLID +UNSOLVABLE +UNSOLVED +UNSONCY +UNSONSIE +UNSONSY +UNSOOTHED +UNSOPHISTICATED +UNSORTED +UNSOUGHT +UNSOUND +UNSOUNDED +UNSOUNDER +UNSOUNDEST +UNSOUNDLY +UNSOUNDNESS +UNSOUNDNESSES +UNSOURCED +UNSOURED +UNSOWED +UNSOWN +UNSPARING +UNSPARINGLY +UNSPEAK +UNSPEAKABLE +UNSPEAKABLY +UNSPEAKING +UNSPEAKS +UNSPECIALIZED +UNSPECIFIABLE +UNSPECIFIC +UNSPECIFIED +UNSPECTACULAR +UNSPENT +UNSPHERE +UNSPHERED +UNSPHERES +UNSPHERING +UNSPILLED +UNSPILT +UNSPIRITUAL +UNSPLIT +UNSPOILED +UNSPOILT +UNSPOKE +UNSPOKEN +UNSPOOL +UNSPOOLED +UNSPOOLING +UNSPOOLS +UNSPORTSMANLIKE +UNSPOTTED +UNSPRAYED +UNSPRUNG +UNSPUN +UNSQUARED +UNSTABLE +UNSTABLENESS +UNSTABLENESSES +UNSTABLER +UNSTABLEST +UNSTABLY +UNSTACK +UNSTACKED +UNSTACKING +UNSTACKS +UNSTAINED +UNSTALKED +UNSTAMPED +UNSTANDARDIZED +UNSTARRED +UNSTARTLING +UNSTATE +UNSTATED +UNSTATES +UNSTATING +UNSTAYED +UNSTEADIED +UNSTEADIER +UNSTEADIES +UNSTEADIEST +UNSTEADILY +UNSTEADINESS +UNSTEADINESSES +UNSTEADY +UNSTEADYING +UNSTEEL +UNSTEELED +UNSTEELING +UNSTEELS +UNSTEMMED +UNSTEP +UNSTEPPED +UNSTEPPING +UNSTEPS +UNSTERILE +UNSTERILIZED +UNSTICK +UNSTICKING +UNSTICKS +UNSTINTED +UNSTINTING +UNSTINTINGLY +UNSTITCH +UNSTITCHED +UNSTITCHES +UNSTITCHING +UNSTOCKED +UNSTONED +UNSTOP +UNSTOPPABLE +UNSTOPPABLY +UNSTOPPED +UNSTOPPER +UNSTOPPERED +UNSTOPPERING +UNSTOPPERS +UNSTOPPING +UNSTOPS +UNSTRAINED +UNSTRAP +UNSTRAPPED +UNSTRAPPING +UNSTRAPS +UNSTRATIFIED +UNSTRESS +UNSTRESSED +UNSTRESSES +UNSTRING +UNSTRINGING +UNSTRINGS +UNSTRIPED +UNSTRUCTURED +UNSTRUNG +UNSTUCK +UNSTUDIED +UNSTUFFED +UNSTUFFY +UNSTUNG +UNSTYLISH +UNSUBDUED +UNSUBSIDIZED +UNSUBSTANTIAL +UNSUBSTANTIALLY +UNSUBSTANTIATED +UNSUBTLE +UNSUBTLY +UNSUCCESS +UNSUCCESSES +UNSUCCESSFUL +UNSUCCESSFULLY +UNSUITABILITIES +UNSUITABILITY +UNSUITABLE +UNSUITABLY +UNSUITED +UNSULLIED +UNSUNG +UNSUNK +UNSUPERVISED +UNSUPPORTABLE +UNSUPPORTED +UNSURE +UNSURELY +UNSURPASSABLE +UNSURPASSED +UNSURPRISED +UNSURPRISING +UNSURPRISINGLY +UNSUSCEPTIBLE +UNSUSPECTED +UNSUSPECTING +UNSUSPICIOUS +UNSUSTAINABLE +UNSWATHE +UNSWATHED +UNSWATHES +UNSWATHING +UNSWAYED +UNSWEAR +UNSWEARING +UNSWEARS +UNSWEETENED +UNSWEPT +UNSWERVING +UNSWOLLEN +UNSWORE +UNSWORN +UNSYMMETRICAL +UNSYMMETRICALLY +UNSYMPATHETIC +UNSYNCHRONIZED +UNSYSTEMATIC +UNSYSTEMATIZED +UNTACK +UNTACKED +UNTACKING +UNTACKS +UNTACTFUL +UNTAGGED +UNTAINTED +UNTAKEN +UNTALENTED +UNTAMABLE +UNTAME +UNTAMED +UNTANGLE +UNTANGLED +UNTANGLES +UNTANGLING +UNTANNED +UNTAPPED +UNTARNISHED +UNTASTED +UNTAUGHT +UNTAXED +UNTEACH +UNTEACHABLE +UNTEACHES +UNTEACHING +UNTECHNICAL +UNTEMPERED +UNTENABILITIES +UNTENABILITY +UNTENABLE +UNTENABLY +UNTENANTED +UNTENDED +UNTENTED +UNTENURED +UNTESTABLE +UNTESTED +UNTETHER +UNTETHERED +UNTETHERING +UNTETHERS +UNTHANKED +UNTHAWED +UNTHEORETICAL +UNTHINK +UNTHINKABILITY +UNTHINKABLE +UNTHINKABLY +UNTHINKING +UNTHINKINGLY +UNTHINKS +UNTHOUGHT +UNTHREAD +UNTHREADED +UNTHREADING +UNTHREADS +UNTHREATENING +UNTHRIFTY +UNTHRONE +UNTHRONED +UNTHRONES +UNTHRONING +UNTIDIED +UNTIDIER +UNTIDIES +UNTIDIEST +UNTIDILY +UNTIDINESS +UNTIDINESSES +UNTIDY +UNTIDYING +UNTIE +UNTIED +UNTIEING +UNTIES +UNTIL +UNTILLABLE +UNTILLED +UNTILTED +UNTIMED +UNTIMELIER +UNTIMELIEST +UNTIMELINESS +UNTIMELINESSES +UNTIMELY +UNTIMEOUS +UNTINGED +UNTIPPED +UNTIRED +UNTIRING +UNTIRINGLY +UNTITLED +UNTO +UNTOGETHER +UNTOLD +UNTORN +UNTOUCHABILITY +UNTOUCHABLE +UNTOUCHABLES +UNTOUCHED +UNTOWARD +UNTOWARDLY +UNTOWARDNESS +UNTOWARDNESSES +UNTRACEABLE +UNTRACED +UNTRACK +UNTRACKED +UNTRACKING +UNTRACKS +UNTRADITIONAL +UNTRADITIONALLY +UNTRAINED +UNTRAMMELED +UNTRANSFORMED +UNTRANSLATABLE +UNTRANSLATED +UNTRAPPED +UNTRAVELED +UNTRAVERSED +UNTREAD +UNTREADED +UNTREADING +UNTREADS +UNTREATED +UNTRENDY +UNTRIED +UNTRIM +UNTRIMMED +UNTRIMMING +UNTRIMS +UNTROD +UNTRODDEN +UNTROUBLED +UNTRUE +UNTRUER +UNTRUEST +UNTRULY +UNTRUSS +UNTRUSSED +UNTRUSSES +UNTRUSSING +UNTRUSTING +UNTRUSTWORTHY +UNTRUSTY +UNTRUTH +UNTRUTHFUL +UNTRUTHFULLY +UNTRUTHFULNESS +UNTRUTHS +UNTUCK +UNTUCKED +UNTUCKING +UNTUCKS +UNTUFTED +UNTUNABLE +UNTUNE +UNTUNED +UNTUNEFUL +UNTUNES +UNTUNING +UNTURNED +UNTUTORED +UNTWILLED +UNTWINE +UNTWINED +UNTWINES +UNTWINING +UNTWIST +UNTWISTED +UNTWISTING +UNTWISTS +UNTYING +UNTYPICAL +UNTYPICALLY +UNUNBIUM +UNUNBIUMS +UNUNITED +UNUNUNIUM +UNUNUNIUMS +UNURGED +UNUSABLE +UNUSED +UNUSUAL +UNUSUALLY +UNUSUALNESS +UNUSUALNESSES +UNUTILIZED +UNUTTERABLE +UNUTTERABLY +UNUTTERED +UNVACCINATED +UNVALUED +UNVARIED +UNVARNISHED +UNVARYING +UNVEIL +UNVEILED +UNVEILING +UNVEILINGS +UNVEILS +UNVEINED +UNVENTILATED +UNVERBALIZED +UNVERIFIABLE +UNVERSED +UNVESTED +UNVEXED +UNVEXT +UNVIABLE +UNVISITED +UNVOCAL +UNVOICE +UNVOICED +UNVOICES +UNVOICING +UNWAKENED +UNWALLED +UNWANING +UNWANTED +UNWARIER +UNWARIEST +UNWARILY +UNWARINESS +UNWARINESSES +UNWARLIKE +UNWARMED +UNWARNED +UNWARPED +UNWARRANTABLE +UNWARRANTABLY +UNWARRANTED +UNWARY +UNWASHED +UNWASHEDNESS +UNWASHEDNESSES +UNWASHEDS +UNWASTED +UNWATCHABLE +UNWATCHED +UNWATERED +UNWAVERING +UNWAVERINGLY +UNWAXED +UNWEANED +UNWEARABLE +UNWEARIED +UNWEARIEDLY +UNWEARY +UNWEATHERED +UNWEAVE +UNWEAVES +UNWEAVING +UNWED +UNWEDDED +UNWEEDED +UNWEETING +UNWEETINGLY +UNWEIGHED +UNWEIGHT +UNWEIGHTED +UNWEIGHTING +UNWEIGHTS +UNWELCOME +UNWELDED +UNWELL +UNWEPT +UNWET +UNWETTED +UNWHIPPED +UNWHITE +UNWHOLESOME +UNWHOLESOMELY +UNWIELDIER +UNWIELDIEST +UNWIELDILY +UNWIELDINESS +UNWIELDINESSES +UNWIELDY +UNWIFELY +UNWILLED +UNWILLING +UNWILLINGLY +UNWILLINGNESS +UNWILLINGNESSES +UNWIND +UNWINDER +UNWINDERS +UNWINDING +UNWINDS +UNWINKING +UNWINNABLE +UNWISDOM +UNWISDOMS +UNWISE +UNWISELY +UNWISER +UNWISEST +UNWISH +UNWISHED +UNWISHES +UNWISHING +UNWIT +UNWITS +UNWITTED +UNWITTING +UNWITTINGLY +UNWOMANLY +UNWON +UNWONTED +UNWONTEDLY +UNWONTEDNESS +UNWONTEDNESSES +UNWOODED +UNWOOED +UNWORKABILITIES +UNWORKABILITY +UNWORKABLE +UNWORKED +UNWORLDLIER +UNWORLDLIEST +UNWORLDLINESS +UNWORLDLINESSES +UNWORLDLY +UNWORN +UNWORRIED +UNWORTHIER +UNWORTHIES +UNWORTHIEST +UNWORTHILY +UNWORTHINESS +UNWORTHINESSES +UNWORTHY +UNWOUND +UNWOUNDED +UNWOVE +UNWOVEN +UNWRAP +UNWRAPPED +UNWRAPPING +UNWRAPS +UNWREATHE +UNWREATHED +UNWREATHES +UNWREATHING +UNWRINKLE +UNWRINKLED +UNWRINKLES +UNWRINKLING +UNWRITTEN +UNWROUGHT +UNWRUNG +UNYEANED +UNYIELDING +UNYIELDINGLY +UNYOKE +UNYOKED +UNYOKES +UNYOKING +UNYOUNG +UNZEALOUS +UNZIP +UNZIPPED +UNZIPPING +UNZIPS +UNZONED +UP +UPAS +UPASES +UPBEAR +UPBEARER +UPBEARERS +UPBEARING +UPBEARS +UPBEAT +UPBEATS +UPBIND +UPBINDING +UPBINDS +UPBOIL +UPBOILED +UPBOILING +UPBOILS +UPBORE +UPBORNE +UPBOUND +UPBOW +UPBOWS +UPBRAID +UPBRAIDED +UPBRAIDER +UPBRAIDERS +UPBRAIDING +UPBRAIDS +UPBRINGING +UPBRINGINGS +UPBUILD +UPBUILDER +UPBUILDERS +UPBUILDING +UPBUILDS +UPBUILT +UPBY +UPBYE +UPCAST +UPCASTING +UPCASTS +UPCHUCK +UPCHUCKED +UPCHUCKING +UPCHUCKS +UPCLIMB +UPCLIMBED +UPCLIMBING +UPCLIMBS +UPCOAST +UPCOIL +UPCOILED +UPCOILING +UPCOILS +UPCOMING +UPCOUNTRIES +UPCOUNTRY +UPCOURT +UPCURL +UPCURLED +UPCURLING +UPCURLS +UPCURVE +UPCURVED +UPCURVES +UPCURVING +UPDART +UPDARTED +UPDARTING +UPDARTS +UPDATE +UPDATED +UPDATER +UPDATERS +UPDATES +UPDATING +UPDIVE +UPDIVED +UPDIVES +UPDIVING +UPDO +UPDOS +UPDOVE +UPDRAFT +UPDRAFTS +UPDRIED +UPDRIES +UPDRY +UPDRYING +UPEND +UPENDED +UPENDING +UPENDS +UPFIELD +UPFLING +UPFLINGING +UPFLINGS +UPFLOW +UPFLOWED +UPFLOWING +UPFLOWS +UPFLUNG +UPFOLD +UPFOLDED +UPFOLDING +UPFOLDS +UPFRONT +UPGATHER +UPGATHERED +UPGATHERING +UPGATHERS +UPGAZE +UPGAZED +UPGAZES +UPGAZING +UPGIRD +UPGIRDED +UPGIRDING +UPGIRDS +UPGIRT +UPGOING +UPGRADABILITIES +UPGRADABILITY +UPGRADABLE +UPGRADE +UPGRADEABILITY +UPGRADEABLE +UPGRADED +UPGRADES +UPGRADING +UPGREW +UPGROW +UPGROWING +UPGROWN +UPGROWS +UPGROWTH +UPGROWTHS +UPHEAP +UPHEAPED +UPHEAPING +UPHEAPS +UPHEAVAL +UPHEAVALS +UPHEAVE +UPHEAVED +UPHEAVER +UPHEAVERS +UPHEAVES +UPHEAVING +UPHELD +UPHILL +UPHILLS +UPHOARD +UPHOARDED +UPHOARDING +UPHOARDS +UPHOLD +UPHOLDER +UPHOLDERS +UPHOLDING +UPHOLDS +UPHOLSTER +UPHOLSTERED +UPHOLSTERER +UPHOLSTERERS +UPHOLSTERIES +UPHOLSTERING +UPHOLSTERS +UPHOLSTERY +UPHOVE +UPHROE +UPHROES +UPKEEP +UPKEEPS +UPLAND +UPLANDER +UPLANDERS +UPLANDS +UPLEAP +UPLEAPED +UPLEAPING +UPLEAPS +UPLEAPT +UPLIFT +UPLIFTED +UPLIFTER +UPLIFTERS +UPLIFTING +UPLIFTS +UPLIGHT +UPLIGHTED +UPLIGHTING +UPLIGHTS +UPLINK +UPLINKED +UPLINKING +UPLINKS +UPLIT +UPLOAD +UPLOADED +UPLOADING +UPLOADS +UPMANSHIP +UPMANSHIPS +UPMARKET +UPMOST +UPO +UPON +UPPED +UPPER +UPPERCASE +UPPERCASED +UPPERCASES +UPPERCASING +UPPERCLASSMAN +UPPERCLASSMEN +UPPERCUT +UPPERCUTS +UPPERCUTTING +UPPERMOST +UPPERPART +UPPERPARTS +UPPERS +UPPILE +UPPILED +UPPILES +UPPILING +UPPING +UPPINGS +UPPISH +UPPISHLY +UPPISHNESS +UPPISHNESSES +UPPITINESS +UPPITINESSES +UPPITY +UPPITYNESS +UPPITYNESSES +UPPROP +UPPROPPED +UPPROPPING +UPPROPS +UPRAISE +UPRAISED +UPRAISER +UPRAISERS +UPRAISES +UPRAISING +UPRATE +UPRATED +UPRATES +UPRATING +UPREACH +UPREACHED +UPREACHES +UPREACHING +UPREAR +UPREARED +UPREARING +UPREARS +UPRIGHT +UPRIGHTED +UPRIGHTING +UPRIGHTLY +UPRIGHTNESS +UPRIGHTNESSES +UPRIGHTS +UPRISE +UPRISEN +UPRISER +UPRISERS +UPRISES +UPRISING +UPRISINGS +UPRIVER +UPRIVERS +UPROAR +UPROARIOUS +UPROARIOUSLY +UPROARIOUSNESS +UPROARS +UPROOT +UPROOTAL +UPROOTALS +UPROOTED +UPROOTEDNESS +UPROOTEDNESSES +UPROOTER +UPROOTERS +UPROOTING +UPROOTS +UPROSE +UPROUSE +UPROUSED +UPROUSES +UPROUSING +UPRUSH +UPRUSHED +UPRUSHES +UPRUSHING +UPS +UPSADAISY +UPSCALE +UPSCALED +UPSCALES +UPSCALING +UPSEND +UPSENDING +UPSENDS +UPSENT +UPSET +UPSETS +UPSETTER +UPSETTERS +UPSETTING +UPSHIFT +UPSHIFTED +UPSHIFTING +UPSHIFTS +UPSHOOT +UPSHOOTING +UPSHOOTS +UPSHOT +UPSHOTS +UPSIDE +UPSIDES +UPSILON +UPSILONS +UPSIZE +UPSIZED +UPSIZES +UPSIZING +UPSLOPE +UPSOAR +UPSOARED +UPSOARING +UPSOARS +UPSPRANG +UPSPRING +UPSPRINGING +UPSPRINGS +UPSPRUNG +UPSTAGE +UPSTAGED +UPSTAGER +UPSTAGERS +UPSTAGES +UPSTAGING +UPSTAIR +UPSTAIRS +UPSTAND +UPSTANDING +UPSTANDINGNESS +UPSTANDS +UPSTARE +UPSTARED +UPSTARES +UPSTARING +UPSTART +UPSTARTED +UPSTARTING +UPSTARTS +UPSTATE +UPSTATER +UPSTATERS +UPSTATES +UPSTEP +UPSTEPPED +UPSTEPPING +UPSTEPS +UPSTIR +UPSTIRRED +UPSTIRRING +UPSTIRS +UPSTOOD +UPSTREAM +UPSTROKE +UPSTROKES +UPSURGE +UPSURGED +UPSURGES +UPSURGING +UPSWEEP +UPSWEEPING +UPSWEEPS +UPSWELL +UPSWELLED +UPSWELLING +UPSWELLS +UPSWEPT +UPSWING +UPSWINGING +UPSWINGS +UPSWOLLEN +UPSWUNG +UPTAKE +UPTAKES +UPTALK +UPTALKED +UPTALKING +UPTALKS +UPTEAR +UPTEARING +UPTEARS +UPTEMPO +UPTEMPOS +UPTHREW +UPTHROW +UPTHROWING +UPTHROWN +UPTHROWS +UPTHRUST +UPTHRUSTED +UPTHRUSTING +UPTHRUSTS +UPTICK +UPTICKS +UPTIGHT +UPTIGHTNESS +UPTIGHTNESSES +UPTILT +UPTILTED +UPTILTING +UPTILTS +UPTIME +UPTIMES +UPTORE +UPTORN +UPTOSS +UPTOSSED +UPTOSSES +UPTOSSING +UPTOWN +UPTOWNER +UPTOWNERS +UPTOWNS +UPTREND +UPTRENDS +UPTURN +UPTURNED +UPTURNING +UPTURNS +UPWAFT +UPWAFTED +UPWAFTING +UPWAFTS +UPWARD +UPWARDLY +UPWARDNESS +UPWARDNESSES +UPWARDS +UPWELL +UPWELLED +UPWELLING +UPWELLINGS +UPWELLS +UPWIND +UPWINDS +URACIL +URACILS +URAEI +URAEMIA +URAEMIAS +URAEMIC +URAEUS +URAEUSES +URALITE +URALITES +URALITIC +URANIA +URANIAS +URANIC +URANIDE +URANIDES +URANINITE +URANINITES +URANISM +URANISMS +URANITE +URANITES +URANITIC +URANIUM +URANIUMS +URANOGRAPHIES +URANOGRAPHY +URANOLOGIES +URANOLOGY +URANOUS +URANYL +URANYLIC +URANYLS +URARE +URARES +URARI +URARIS +URASE +URASES +URATE +URATES +URATIC +URB +URBAN +URBANE +URBANELY +URBANER +URBANEST +URBANISATION +URBANISATIONS +URBANISE +URBANISED +URBANISES +URBANISING +URBANISM +URBANISMS +URBANIST +URBANISTIC +URBANISTICALLY +URBANISTS +URBANITE +URBANITES +URBANITIES +URBANITY +URBANIZATION +URBANIZATIONS +URBANIZE +URBANIZED +URBANIZES +URBANIZING +URBANOLOGIES +URBANOLOGIST +URBANOLOGISTS +URBANOLOGY +URBIA +URBIAS +URBS +URCEOLATE +URCHIN +URCHINS +URD +URDS +UREA +UREAL +UREAS +UREASE +UREASES +UREDIA +UREDIAL +UREDINIA +UREDINIAL +UREDINIOSPORE +UREDINIOSPORES +UREDINIUM +UREDIOSPORE +UREDIOSPORES +UREDIUM +UREDO +UREDOS +UREDOSPORE +UREDOSPORES +UREIC +UREIDE +UREIDES +UREMIA +UREMIAS +UREMIC +UREOTELIC +UREOTELISM +UREOTELISMS +URETER +URETERAL +URETERIC +URETERS +URETHAN +URETHANE +URETHANES +URETHANS +URETHRA +URETHRAE +URETHRAL +URETHRAS +URETHRITIS +URETHRITISES +URETHROSCOPE +URETHROSCOPES +URETIC +URGE +URGED +URGENCIES +URGENCY +URGENT +URGENTLY +URGER +URGERS +URGES +URGING +URGINGLY +URIAL +URIALS +URIC +URICOSURIC +URICOTELIC +URICOTELISM +URICOTELISMS +URIDINE +URIDINES +URINAL +URINALS +URINALYSES +URINALYSIS +URINARIES +URINARY +URINATE +URINATED +URINATES +URINATING +URINATION +URINATIONS +URINATIVE +URINATOR +URINATORS +URINE +URINEMIA +URINEMIAS +URINEMIC +URINES +URINOGENITAL +URINOMETER +URINOMETERS +URINOSE +URINOUS +URN +URNLIKE +URNS +UROCHORD +UROCHORDATE +UROCHORDATES +UROCHORDS +UROCHROME +UROCHROMES +URODELE +URODELES +UROGENITAL +UROGENOUS +UROKINASE +UROKINASES +UROLITH +UROLITHIASES +UROLITHIASIS +UROLITHIC +UROLITHS +UROLOGIC +UROLOGICAL +UROLOGIES +UROLOGIST +UROLOGISTS +UROLOGY +UROPOD +UROPODAL +UROPODOUS +UROPODS +UROPYGIA +UROPYGIAL +UROPYGIUM +UROPYGIUMS +UROSCOPIC +UROSCOPIES +UROSCOPY +UROSTYLE +UROSTYLES +URP +URPED +URPING +URPS +URSA +URSAE +URSID +URSIDS +URSIFORM +URSINE +URTEXT +URTEXTS +URTICANT +URTICANTS +URTICARIA +URTICARIAL +URTICARIAS +URTICATE +URTICATED +URTICATES +URTICATING +URTICATION +URTICATIONS +URUS +URUSES +URUSHIOL +URUSHIOLS +US +USABILITIES +USABILITY +USABLE +USABLENESS +USABLENESSES +USABLY +USAGE +USAGES +USANCE +USANCES +USAUNCE +USAUNCES +USE +USEABLE +USEABLY +USED +USEFUL +USEFULLY +USEFULNESS +USEFULNESSES +USELESS +USELESSLY +USELESSNESS +USELESSNESSES +USER +USERNAME +USERNAMES +USERS +USES +USHER +USHERED +USHERETTE +USHERETTES +USHERING +USHERS +USING +USNEA +USNEAS +USQUABAE +USQUABAES +USQUE +USQUEBAE +USQUEBAES +USQUEBAUGH +USQUEBAUGHS +USQUES +USTULATE +USUAL +USUALLY +USUALNESS +USUALNESSES +USUALS +USUFRUCT +USUFRUCTS +USUFRUCTUARIES +USUFRUCTUARY +USURER +USURERS +USURIES +USURIOUS +USURIOUSLY +USURIOUSNESS +USURIOUSNESSES +USURP +USURPATION +USURPATIONS +USURPED +USURPER +USURPERS +USURPING +USURPS +USURY +UT +UTA +UTAS +UTE +UTENSIL +UTENSILS +UTERI +UTERINE +UTERUS +UTERUSES +UTES +UTILE +UTILIDOR +UTILIDORS +UTILISE +UTILISED +UTILISER +UTILISERS +UTILISES +UTILISING +UTILITARIAN +UTILITARIANISM +UTILITARIANISMS +UTILITARIANS +UTILITIES +UTILITY +UTILIZABLE +UTILIZATION +UTILIZATIONS +UTILIZE +UTILIZED +UTILIZER +UTILIZERS +UTILIZES +UTILIZING +UTMOST +UTMOSTS +UTOPIA +UTOPIAN +UTOPIANISM +UTOPIANISMS +UTOPIANS +UTOPIAS +UTOPISM +UTOPISMS +UTOPIST +UTOPISTIC +UTOPISTS +UTRICLE +UTRICLES +UTRICULAR +UTRICULI +UTRICULUS +UTS +UTTER +UTTERABLE +UTTERANCE +UTTERANCES +UTTERED +UTTERER +UTTERERS +UTTERING +UTTERLY +UTTERMOST +UTTERMOSTS +UTTERNESS +UTTERNESSES +UTTERS +UVAROVITE +UVAROVITES +UVEA +UVEAL +UVEAS +UVEITIC +UVEITIS +UVEITISES +UVEOUS +UVULA +UVULAE +UVULAR +UVULARLY +UVULARS +UVULAS +UVULITIS +UVULITISES +UXORIAL +UXORIALLY +UXORICIDE +UXORICIDES +UXORIOUS +UXORIOUSLY +UXORIOUSNESS +UXORIOUSNESSES +VAC +VACANCIES +VACANCY +VACANT +VACANTLY +VACANTNESS +VACANTNESSES +VACATABLE +VACATE +VACATED +VACATES +VACATING +VACATION +VACATIONED +VACATIONER +VACATIONERS +VACATIONING +VACATIONIST +VACATIONISTS +VACATIONLAND +VACATIONLANDS +VACATIONS +VACCINA +VACCINAL +VACCINAS +VACCINATE +VACCINATED +VACCINATES +VACCINATING +VACCINATION +VACCINATIONS +VACCINATOR +VACCINATORS +VACCINE +VACCINEE +VACCINEES +VACCINES +VACCINIA +VACCINIAL +VACCINIAS +VACILLANT +VACILLATE +VACILLATED +VACILLATES +VACILLATING +VACILLATINGLY +VACILLATION +VACILLATIONS +VACILLATOR +VACILLATORS +VACS +VACUA +VACUITIES +VACUITY +VACUOLAR +VACUOLATE +VACUOLATED +VACUOLATION +VACUOLATIONS +VACUOLE +VACUOLES +VACUOUS +VACUOUSLY +VACUOUSNESS +VACUOUSNESSES +VACUUM +VACUUMED +VACUUMING +VACUUMS +VADOSE +VAGABOND +VAGABONDAGE +VAGABONDAGES +VAGABONDED +VAGABONDING +VAGABONDISH +VAGABONDISM +VAGABONDISMS +VAGABONDS +VAGAL +VAGALLY +VAGARIES +VAGARIOUS +VAGARIOUSLY +VAGARY +VAGI +VAGILE +VAGILITIES +VAGILITY +VAGINA +VAGINAE +VAGINAL +VAGINALLY +VAGINAS +VAGINATE +VAGINATED +VAGINISMUS +VAGINISMUSES +VAGINITIS +VAGINITISES +VAGINOSES +VAGINOSIS +VAGOTOMIES +VAGOTOMY +VAGOTONIA +VAGOTONIAS +VAGOTONIC +VAGRANCIES +VAGRANCY +VAGRANT +VAGRANTLY +VAGRANTS +VAGROM +VAGUE +VAGUELY +VAGUENESS +VAGUENESSES +VAGUER +VAGUEST +VAGUS +VAHINE +VAHINES +VAIL +VAILED +VAILING +VAILS +VAIN +VAINER +VAINEST +VAINGLORIES +VAINGLORIOUS +VAINGLORIOUSLY +VAINGLORY +VAINLY +VAINNESS +VAINNESSES +VAIR +VAIRS +VAKEEL +VAKEELS +VAKIL +VAKILS +VALANCE +VALANCED +VALANCES +VALANCING +VALE +VALEDICTION +VALEDICTIONS +VALEDICTORIAN +VALEDICTORIANS +VALEDICTORIES +VALEDICTORY +VALENCE +VALENCES +VALENCIA +VALENCIAS +VALENCIES +VALENCY +VALENTINE +VALENTINES +VALERATE +VALERATES +VALERIAN +VALERIANS +VALERIC +VALES +VALET +VALETED +VALETING +VALETS +VALETUDINARIAN +VALETUDINARIANS +VALETUDINARIES +VALETUDINARY +VALGOID +VALGUS +VALGUSES +VALIANCE +VALIANCES +VALIANCIES +VALIANCY +VALIANT +VALIANTLY +VALIANTNESS +VALIANTNESSES +VALIANTS +VALID +VALIDATE +VALIDATED +VALIDATES +VALIDATING +VALIDATION +VALIDATIONS +VALIDITIES +VALIDITY +VALIDLY +VALIDNESS +VALIDNESSES +VALINE +VALINES +VALISE +VALISES +VALKYR +VALKYRIE +VALKYRIES +VALKYRS +VALLATE +VALLATION +VALLATIONS +VALLECULA +VALLECULAE +VALLECULAR +VALLEY +VALLEYED +VALLEYS +VALONIA +VALONIAS +VALOR +VALORISE +VALORISED +VALORISES +VALORISING +VALORIZATION +VALORIZATIONS +VALORIZE +VALORIZED +VALORIZES +VALORIZING +VALOROUS +VALOROUSLY +VALORS +VALOUR +VALOURS +VALPOLICELLA +VALPOLICELLAS +VALSE +VALSES +VALUABLE +VALUABLENESS +VALUABLENESSES +VALUABLES +VALUABLY +VALUATE +VALUATED +VALUATES +VALUATING +VALUATION +VALUATIONAL +VALUATIONALLY +VALUATIONS +VALUATOR +VALUATORS +VALUE +VALUED +VALUELESS +VALUELESSNESS +VALUELESSNESSES +VALUER +VALUERS +VALUES +VALUING +VALUTA +VALUTAS +VALVAL +VALVAR +VALVATE +VALVE +VALVED +VALVELESS +VALVELET +VALVELETS +VALVELIKE +VALVES +VALVING +VALVULA +VALVULAE +VALVULAR +VALVULE +VALVULES +VALVULITIS +VALVULITISES +VAMBRACE +VAMBRACED +VAMBRACES +VAMOOSE +VAMOOSED +VAMOOSES +VAMOOSING +VAMOSE +VAMOSED +VAMOSES +VAMOSING +VAMP +VAMPED +VAMPER +VAMPERS +VAMPIER +VAMPIEST +VAMPING +VAMPIRE +VAMPIRES +VAMPIRIC +VAMPIRISH +VAMPIRISM +VAMPIRISMS +VAMPISH +VAMPISHLY +VAMPS +VAMPY +VAN +VANADATE +VANADATES +VANADIATE +VANADIATES +VANADIC +VANADIUM +VANADIUMS +VANADOUS +VANASPATI +VANASPATIS +VANDA +VANDAL +VANDALIC +VANDALISE +VANDALISED +VANDALISES +VANDALISH +VANDALISING +VANDALISM +VANDALISMS +VANDALISTIC +VANDALIZATION +VANDALIZATIONS +VANDALIZE +VANDALIZED +VANDALIZES +VANDALIZING +VANDALS +VANDAS +VANDYKE +VANDYKED +VANDYKES +VANE +VANED +VANES +VANG +VANGS +VANGUARD +VANGUARDISM +VANGUARDISMS +VANGUARDIST +VANGUARDISTS +VANGUARDS +VANILLA +VANILLAS +VANILLIC +VANILLIN +VANILLINS +VANISH +VANISHED +VANISHER +VANISHERS +VANISHES +VANISHING +VANISHINGLY +VANITIED +VANITIES +VANITORIES +VANITORY +VANITY +VANLOAD +VANLOADS +VANMAN +VANMEN +VANNED +VANNER +VANNERS +VANNING +VANPOOL +VANPOOLING +VANPOOLINGS +VANPOOLS +VANQUISH +VANQUISHABLE +VANQUISHED +VANQUISHER +VANQUISHERS +VANQUISHES +VANQUISHING +VANS +VANTAGE +VANTAGES +VANWARD +VAPID +VAPIDITIES +VAPIDITY +VAPIDLY +VAPIDNESS +VAPIDNESSES +VAPOR +VAPORABLE +VAPORED +VAPORER +VAPORERS +VAPORETTI +VAPORETTO +VAPORETTOS +VAPORIFIC +VAPORING +VAPORINGS +VAPORISE +VAPORISED +VAPORISES +VAPORISH +VAPORISHNESS +VAPORISHNESSES +VAPORISING +VAPORIZABLE +VAPORIZATION +VAPORIZATIONS +VAPORIZE +VAPORIZED +VAPORIZER +VAPORIZERS +VAPORIZES +VAPORIZING +VAPORLESS +VAPORLIKE +VAPOROUS +VAPOROUSLY +VAPOROUSNESS +VAPOROUSNESSES +VAPORS +VAPORWARE +VAPORWARES +VAPORY +VAPOUR +VAPOURED +VAPOURER +VAPOURERS +VAPOURING +VAPOURS +VAPOURY +VAQUERO +VAQUEROS +VAR +VARA +VARACTOR +VARACTORS +VARAS +VARIA +VARIABILITIES +VARIABILITY +VARIABLE +VARIABLENESS +VARIABLENESSES +VARIABLES +VARIABLY +VARIANCE +VARIANCES +VARIANT +VARIANTS +VARIAS +VARIATE +VARIATED +VARIATES +VARIATING +VARIATION +VARIATIONAL +VARIATIONALLY +VARIATIONS +VARICELLA +VARICELLAS +VARICES +VARICOCELE +VARICOCELES +VARICOLORED +VARICOSE +VARICOSED +VARICOSES +VARICOSIS +VARICOSITIES +VARICOSITY +VARIED +VARIEDLY +VARIEGATE +VARIEGATED +VARIEGATES +VARIEGATING +VARIEGATION +VARIEGATIONS +VARIEGATOR +VARIEGATORS +VARIER +VARIERS +VARIES +VARIETAL +VARIETALS +VARIETIES +VARIETY +VARIFORM +VARIOLA +VARIOLAR +VARIOLAS +VARIOLATE +VARIOLATED +VARIOLATES +VARIOLATING +VARIOLE +VARIOLES +VARIOLITE +VARIOLITES +VARIOLOID +VARIOLOIDS +VARIOLOUS +VARIOMETER +VARIOMETERS +VARIORUM +VARIORUMS +VARIOUS +VARIOUSLY +VARIOUSNESS +VARIOUSNESSES +VARISIZED +VARISTOR +VARISTORS +VARIX +VARLET +VARLETRIES +VARLETRY +VARLETS +VARMENT +VARMENTS +VARMINT +VARMINTS +VARNA +VARNAS +VARNISH +VARNISHED +VARNISHER +VARNISHERS +VARNISHES +VARNISHING +VARNISHY +VAROOM +VAROOMED +VAROOMING +VAROOMS +VARS +VARSITIES +VARSITY +VARUS +VARUSES +VARVE +VARVED +VARVES +VARY +VARYING +VARYINGLY +VAS +VASA +VASAL +VASCULA +VASCULAR +VASCULARITIES +VASCULARITY +VASCULARIZATION +VASCULATURE +VASCULATURES +VASCULITIDES +VASCULITIS +VASCULUM +VASCULUMS +VASE +VASECTOMIES +VASECTOMIZE +VASECTOMIZED +VASECTOMIZES +VASECTOMIZING +VASECTOMY +VASELIKE +VASELINE +VASELINES +VASES +VASIFORM +VASOACTIVE +VASOACTIVITIES +VASOACTIVITY +VASOCONSTRICTOR +VASODILATATION +VASODILATATIONS +VASODILATION +VASODILATIONS +VASODILATOR +VASODILATORS +VASOMOTOR +VASOPRESSIN +VASOPRESSINS +VASOPRESSOR +VASOPRESSORS +VASOSPASM +VASOSPASMS +VASOSPASTIC +VASOTOCIN +VASOTOCINS +VASOTOMIES +VASOTOMY +VASOVAGAL +VASSAL +VASSALAGE +VASSALAGES +VASSALS +VAST +VASTER +VASTEST +VASTIER +VASTIEST +VASTITIES +VASTITUDE +VASTITUDES +VASTITY +VASTLY +VASTNESS +VASTNESSES +VASTS +VASTY +VAT +VATFUL +VATFULS +VATIC +VATICAL +VATICIDE +VATICIDES +VATICINAL +VATICINATE +VATICINATED +VATICINATES +VATICINATING +VATICINATION +VATICINATIONS +VATICINATOR +VATICINATORS +VATS +VATTED +VATTING +VATU +VATUS +VAU +VAUDEVILLE +VAUDEVILLES +VAUDEVILLIAN +VAUDEVILLIANS +VAULT +VAULTED +VAULTER +VAULTERS +VAULTIER +VAULTIEST +VAULTING +VAULTINGLY +VAULTINGS +VAULTS +VAULTY +VAUNT +VAUNTED +VAUNTER +VAUNTERS +VAUNTFUL +VAUNTIE +VAUNTING +VAUNTINGLY +VAUNTS +VAUNTY +VAUS +VAV +VAVASOR +VAVASORS +VAVASOUR +VAVASOURS +VAVASSOR +VAVASSORS +VAVS +VAW +VAWARD +VAWARDS +VAWNTIE +VAWS +VEAL +VEALED +VEALER +VEALERS +VEALIER +VEALIEST +VEALING +VEALS +VEALY +VECTOR +VECTORED +VECTORIAL +VECTORIALLY +VECTORING +VECTORS +VEDALIA +VEDALIAS +VEDETTE +VEDETTES +VEE +VEEJAY +VEEJAYS +VEENA +VEENAS +VEEP +VEEPEE +VEEPEES +VEEPS +VEER +VEERED +VEERIES +VEERING +VEERINGLY +VEERS +VEERY +VEES +VEG +VEGAN +VEGANISM +VEGANISMS +VEGANS +VEGES +VEGETABLE +VEGETABLES +VEGETABLY +VEGETAL +VEGETALLY +VEGETANT +VEGETARIAN +VEGETARIANISM +VEGETARIANISMS +VEGETARIANS +VEGETATE +VEGETATED +VEGETATES +VEGETATING +VEGETATION +VEGETATIONAL +VEGETATIONS +VEGETATIVE +VEGETATIVELY +VEGETATIVENESS +VEGETE +VEGETIST +VEGETISTS +VEGETIVE +VEGGED +VEGGIE +VEGGIES +VEGGING +VEGIE +VEGIES +VEHEMENCE +VEHEMENCES +VEHEMENCIES +VEHEMENCY +VEHEMENT +VEHEMENTLY +VEHICLE +VEHICLES +VEHICULAR +VEIL +VEILED +VEILEDLY +VEILER +VEILERS +VEILING +VEILINGS +VEILLIKE +VEILS +VEIN +VEINAL +VEINED +VEINER +VEINERS +VEINIER +VEINIEST +VEINING +VEININGS +VEINLESS +VEINLET +VEINLETS +VEINLIKE +VEINS +VEINSTONE +VEINSTONES +VEINULE +VEINULES +VEINULET +VEINULETS +VEINY +VELA +VELAMEN +VELAMINA +VELAR +VELARIA +VELARIUM +VELARIZATION +VELARIZATIONS +VELARIZE +VELARIZED +VELARIZES +VELARIZING +VELARS +VELATE +VELCRO +VELCROS +VELD +VELDS +VELDT +VELDTS +VELIGER +VELIGERS +VELITES +VELLEITIES +VELLEITY +VELLICATE +VELLICATED +VELLICATES +VELLICATING +VELLUM +VELLUMS +VELOCE +VELOCIMETER +VELOCIMETERS +VELOCIPEDE +VELOCIPEDES +VELOCIRAPTOR +VELOCIRAPTORS +VELOCITIES +VELOCITY +VELODROME +VELODROMES +VELOUR +VELOURS +VELOUTE +VELOUTES +VELUM +VELURE +VELURED +VELURES +VELURING +VELVERET +VELVERETS +VELVET +VELVETED +VELVETEEN +VELVETEENS +VELVETIER +VELVETIEST +VELVETLIKE +VELVETS +VELVETY +VENA +VENAE +VENAL +VENALITIES +VENALITY +VENALLY +VENATIC +VENATICAL +VENATION +VENATIONS +VEND +VENDABLE +VENDABLES +VENDACE +VENDACES +VENDED +VENDEE +VENDEES +VENDER +VENDERS +VENDETTA +VENDETTAS +VENDEUSE +VENDEUSES +VENDIBILITIES +VENDIBILITY +VENDIBLE +VENDIBLES +VENDIBLY +VENDING +VENDITION +VENDITIONS +VENDOR +VENDORS +VENDS +VENDUE +VENDUES +VENEER +VENEERED +VENEERER +VENEERERS +VENEERING +VENEERINGS +VENEERS +VENENATE +VENENATED +VENENATES +VENENATING +VENENE +VENENES +VENENOSE +VENERABILITIES +VENERABILITY +VENERABLE +VENERABLENESS +VENERABLENESSES +VENERABLES +VENERABLY +VENERATE +VENERATED +VENERATES +VENERATING +VENERATION +VENERATIONS +VENERATOR +VENERATORS +VENEREAL +VENERIES +VENERY +VENESECTION +VENESECTIONS +VENETIAN +VENETIANS +VENGE +VENGEANCE +VENGEANCES +VENGED +VENGEFUL +VENGEFULLY +VENGEFULNESS +VENGEFULNESSES +VENGES +VENGING +VENIAL +VENIALITIES +VENIALITY +VENIALLY +VENIALNESS +VENIALNESSES +VENIN +VENINE +VENINES +VENINS +VENIPUNCTURE +VENIPUNCTURES +VENIRE +VENIREMAN +VENIREMEN +VENIRES +VENISON +VENISONS +VENOGRAM +VENOGRAMS +VENOGRAPHIES +VENOGRAPHY +VENOLOGIES +VENOLOGY +VENOM +VENOMED +VENOMER +VENOMERS +VENOMING +VENOMOUS +VENOMOUSLY +VENOMOUSNESS +VENOMOUSNESSES +VENOMS +VENOSE +VENOSITIES +VENOSITY +VENOUS +VENOUSLY +VENT +VENTAGE +VENTAGES +VENTAIL +VENTAILS +VENTED +VENTER +VENTERS +VENTIFACT +VENTIFACTS +VENTILATE +VENTILATED +VENTILATES +VENTILATING +VENTILATION +VENTILATIONS +VENTILATOR +VENTILATORS +VENTILATORY +VENTING +VENTLESS +VENTRAL +VENTRALLY +VENTRALS +VENTRICLE +VENTRICLES +VENTRICOSE +VENTRICULAR +VENTRICULI +VENTRICULUS +VENTRILOQUIAL +VENTRILOQUIALLY +VENTRILOQUIES +VENTRILOQUISM +VENTRILOQUISMS +VENTRILOQUIST +VENTRILOQUISTIC +VENTRILOQUISTS +VENTRILOQUIZE +VENTRILOQUIZED +VENTRILOQUIZES +VENTRILOQUIZING +VENTRILOQUY +VENTROLATERAL +VENTROMEDIAL +VENTS +VENTURE +VENTURED +VENTURER +VENTURERS +VENTURES +VENTURESOME +VENTURESOMELY +VENTURESOMENESS +VENTURI +VENTURING +VENTURIS +VENTUROUS +VENTUROUSLY +VENTUROUSNESS +VENTUROUSNESSES +VENUE +VENUES +VENULAR +VENULE +VENULES +VENULOSE +VENULOUS +VENUS +VENUSES +VERA +VERACIOUS +VERACIOUSLY +VERACIOUSNESS +VERACIOUSNESSES +VERACITIES +VERACITY +VERANDA +VERANDAED +VERANDAH +VERANDAHED +VERANDAHS +VERANDAS +VERAPAMIL +VERAPAMILS +VERATRIA +VERATRIAS +VERATRIDINE +VERATRIDINES +VERATRIN +VERATRINE +VERATRINES +VERATRINS +VERATRUM +VERATRUMS +VERB +VERBAL +VERBALISM +VERBALISMS +VERBALIST +VERBALISTIC +VERBALISTS +VERBALIZATION +VERBALIZATIONS +VERBALIZE +VERBALIZED +VERBALIZER +VERBALIZERS +VERBALIZES +VERBALIZING +VERBALLY +VERBALS +VERBATIM +VERBENA +VERBENAS +VERBIAGE +VERBIAGES +VERBICIDE +VERBICIDES +VERBID +VERBIDS +VERBIFIED +VERBIFIES +VERBIFY +VERBIFYING +VERBIGERATION +VERBIGERATIONS +VERBILE +VERBILES +VERBLESS +VERBOSE +VERBOSELY +VERBOSENESS +VERBOSENESSES +VERBOSITIES +VERBOSITY +VERBOTEN +VERBS +VERDANCIES +VERDANCY +VERDANT +VERDANTLY +VERDERER +VERDERERS +VERDEROR +VERDERORS +VERDICT +VERDICTS +VERDIGRIS +VERDIGRISES +VERDIN +VERDINS +VERDITER +VERDITERS +VERDURE +VERDURED +VERDURES +VERDUROUS +VERECUND +VERGE +VERGED +VERGENCE +VERGENCES +VERGER +VERGERS +VERGES +VERGING +VERGLAS +VERGLASES +VERIDIC +VERIDICAL +VERIDICALITIES +VERIDICALITY +VERIDICALLY +VERIER +VERIEST +VERIFIABILITIES +VERIFIABILITY +VERIFIABLE +VERIFIABLENESS +VERIFICATION +VERIFICATIONS +VERIFIED +VERIFIER +VERIFIERS +VERIFIES +VERIFY +VERIFYING +VERILY +VERISIMILAR +VERISIMILARLY +VERISIMILITUDE +VERISIMILITUDES +VERISM +VERISMO +VERISMOS +VERISMS +VERIST +VERISTIC +VERISTS +VERITABLE +VERITABLENESS +VERITABLENESSES +VERITABLY +VERITAS +VERITATES +VERITE +VERITES +VERITIES +VERITY +VERJUICE +VERJUICES +VERMEIL +VERMEILS +VERMES +VERMIAN +VERMICELLI +VERMICELLIS +VERMICIDE +VERMICIDES +VERMICULAR +VERMICULATE +VERMICULATED +VERMICULATION +VERMICULATIONS +VERMICULITE +VERMICULITES +VERMIFORM +VERMIFUGE +VERMIFUGES +VERMILION +VERMILIONED +VERMILIONING +VERMILIONS +VERMILLION +VERMILLIONS +VERMIN +VERMINOUS +VERMIS +VERMOULU +VERMOUTH +VERMOUTHS +VERMUTH +VERMUTHS +VERNACLE +VERNACLES +VERNACULAR +VERNACULARISM +VERNACULARISMS +VERNACULARLY +VERNACULARS +VERNAL +VERNALIZATION +VERNALIZATIONS +VERNALIZE +VERNALIZED +VERNALIZES +VERNALIZING +VERNALLY +VERNATION +VERNATIONS +VERNICLE +VERNICLES +VERNIER +VERNIERS +VERNISSAGE +VERNISSAGES +VERNIX +VERNIXES +VERONICA +VERONICAS +VERRUCA +VERRUCAE +VERRUCAS +VERRUCOSE +VERRUCOUS +VERSAL +VERSANT +VERSANTS +VERSATILE +VERSATILELY +VERSATILENESS +VERSATILENESSES +VERSATILITIES +VERSATILITY +VERSE +VERSED +VERSEMAN +VERSEMEN +VERSER +VERSERS +VERSES +VERSET +VERSETS +VERSICLE +VERSICLES +VERSICULAR +VERSIFICATION +VERSIFICATIONS +VERSIFIED +VERSIFIER +VERSIFIERS +VERSIFIES +VERSIFY +VERSIFYING +VERSINE +VERSINES +VERSING +VERSION +VERSIONAL +VERSIONS +VERSO +VERSOS +VERST +VERSTE +VERSTES +VERSTS +VERSUS +VERT +VERTEBRA +VERTEBRAE +VERTEBRAL +VERTEBRAS +VERTEBRATE +VERTEBRATES +VERTEX +VERTEXES +VERTICAL +VERTICALITIES +VERTICALITY +VERTICALLY +VERTICALNESS +VERTICALNESSES +VERTICALS +VERTICES +VERTICIL +VERTICILLATE +VERTICILS +VERTIGINES +VERTIGINOUS +VERTIGINOUSLY +VERTIGO +VERTIGOES +VERTIGOS +VERTS +VERTU +VERTUS +VERVAIN +VERVAINS +VERVE +VERVES +VERVET +VERVETS +VERY +VESICA +VESICAE +VESICAL +VESICANT +VESICANTS +VESICATE +VESICATED +VESICATES +VESICATING +VESICLE +VESICLES +VESICULA +VESICULAE +VESICULAR +VESICULARITIES +VESICULARITY +VESICULATE +VESICULATED +VESICULATES +VESICULATING +VESICULATION +VESICULATIONS +VESPER +VESPERAL +VESPERALS +VESPERS +VESPERTILIAN +VESPERTINE +VESPIARIES +VESPIARY +VESPID +VESPIDS +VESPINE +VESSEL +VESSELED +VESSELS +VEST +VESTA +VESTAL +VESTALLY +VESTALS +VESTAS +VESTED +VESTEE +VESTEES +VESTIARIES +VESTIARY +VESTIBULAR +VESTIBULE +VESTIBULED +VESTIBULES +VESTIBULING +VESTIGE +VESTIGES +VESTIGIA +VESTIGIAL +VESTIGIALLY +VESTIGIUM +VESTING +VESTINGS +VESTLESS +VESTLIKE +VESTMENT +VESTMENTAL +VESTMENTS +VESTRAL +VESTRIES +VESTRY +VESTRYMAN +VESTRYMEN +VESTS +VESTURAL +VESTURE +VESTURED +VESTURES +VESTURING +VESUVIAN +VESUVIANITE +VESUVIANITES +VESUVIANS +VET +VETCH +VETCHES +VETCHLING +VETCHLINGS +VETERAN +VETERANS +VETERINARIAN +VETERINARIANS +VETERINARIES +VETERINARY +VETIVER +VETIVERS +VETIVERT +VETIVERTS +VETO +VETOED +VETOER +VETOERS +VETOES +VETOING +VETS +VETTED +VETTER +VETTERS +VETTING +VEX +VEXATION +VEXATIONS +VEXATIOUS +VEXATIOUSLY +VEXATIOUSNESS +VEXATIOUSNESSES +VEXED +VEXEDLY +VEXEDNESS +VEXEDNESSES +VEXER +VEXERS +VEXES +VEXIL +VEXILLA +VEXILLAR +VEXILLARIES +VEXILLARY +VEXILLATE +VEXILLOLOGIC +VEXILLOLOGICAL +VEXILLOLOGIES +VEXILLOLOGIST +VEXILLOLOGISTS +VEXILLOLOGY +VEXILLUM +VEXILS +VEXING +VEXINGLY +VEXT +VIA +VIABILITIES +VIABILITY +VIABLE +VIABLY +VIADUCT +VIADUCTS +VIAL +VIALED +VIALING +VIALLED +VIALLING +VIALS +VIAND +VIANDS +VIATIC +VIATICA +VIATICAL +VIATICALS +VIATICUM +VIATICUMS +VIATOR +VIATORES +VIATORS +VIBE +VIBES +VIBIST +VIBISTS +VIBRACULA +VIBRACULUM +VIBRAHARP +VIBRAHARPIST +VIBRAHARPISTS +VIBRAHARPS +VIBRANCE +VIBRANCES +VIBRANCIES +VIBRANCY +VIBRANT +VIBRANTLY +VIBRANTS +VIBRAPHONE +VIBRAPHONES +VIBRAPHONIST +VIBRAPHONISTS +VIBRATE +VIBRATED +VIBRATES +VIBRATILE +VIBRATING +VIBRATION +VIBRATIONAL +VIBRATIONLESS +VIBRATIONS +VIBRATIVE +VIBRATO +VIBRATOLESS +VIBRATOR +VIBRATORS +VIBRATORY +VIBRATOS +VIBRIO +VIBRIOID +VIBRION +VIBRIONIC +VIBRIONS +VIBRIOS +VIBRIOSES +VIBRIOSIS +VIBRISSA +VIBRISSAE +VIBRISSAL +VIBRONIC +VIBURNUM +VIBURNUMS +VICAR +VICARAGE +VICARAGES +VICARATE +VICARATES +VICARIAL +VICARIANCE +VICARIANCES +VICARIANT +VICARIANTS +VICARIATE +VICARIATES +VICARIOUS +VICARIOUSLY +VICARIOUSNESS +VICARIOUSNESSES +VICARLY +VICARS +VICARSHIP +VICARSHIPS +VICE +VICED +VICEGERAL +VICEGERENCIES +VICEGERENCY +VICEGERENT +VICEGERENTS +VICELESS +VICENARY +VICENNIAL +VICEREGAL +VICEREGALLY +VICEREINE +VICEREINES +VICEROY +VICEROYALTIES +VICEROYALTY +VICEROYS +VICEROYSHIP +VICEROYSHIPS +VICES +VICHIES +VICHY +VICHYSSOISE +VICHYSSOISES +VICINAGE +VICINAGES +VICINAL +VICING +VICINITIES +VICINITY +VICIOUS +VICIOUSLY +VICIOUSNESS +VICIOUSNESSES +VICISSITUDE +VICISSITUDES +VICISSITUDINOUS +VICOMTE +VICOMTES +VICTIM +VICTIMHOOD +VICTIMHOODS +VICTIMISE +VICTIMISED +VICTIMISES +VICTIMISING +VICTIMIZATION +VICTIMIZATIONS +VICTIMIZE +VICTIMIZED +VICTIMIZER +VICTIMIZERS +VICTIMIZES +VICTIMIZING +VICTIMLESS +VICTIMOLOGIES +VICTIMOLOGIST +VICTIMOLOGISTS +VICTIMOLOGY +VICTIMS +VICTOR +VICTORIA +VICTORIAS +VICTORIES +VICTORIOUS +VICTORIOUSLY +VICTORIOUSNESS +VICTORS +VICTORY +VICTRESS +VICTRESSES +VICTUAL +VICTUALED +VICTUALER +VICTUALERS +VICTUALING +VICTUALLED +VICTUALLER +VICTUALLERS +VICTUALLING +VICTUALS +VICUGNA +VICUGNAS +VICUNA +VICUNAS +VID +VIDE +VIDELICET +VIDEO +VIDEOCASSETTE +VIDEOCASSETTES +VIDEOCONFERENCE +VIDEODISC +VIDEODISCS +VIDEODISK +VIDEODISKS +VIDEOGRAPHER +VIDEOGRAPHERS +VIDEOGRAPHIES +VIDEOGRAPHY +VIDEOLAND +VIDEOLANDS +VIDEOPHILE +VIDEOPHILES +VIDEOPHONE +VIDEOPHONES +VIDEOS +VIDEOTAPE +VIDEOTAPED +VIDEOTAPES +VIDEOTAPING +VIDEOTEX +VIDEOTEXES +VIDEOTEXT +VIDEOTEXTS +VIDETTE +VIDETTES +VIDICON +VIDICONS +VIDS +VIDUITIES +VIDUITY +VIE +VIED +VIER +VIERS +VIES +VIEW +VIEWABLE +VIEWDATA +VIEWED +VIEWER +VIEWERS +VIEWERSHIP +VIEWERSHIPS +VIEWFINDER +VIEWFINDERS +VIEWIER +VIEWIEST +VIEWING +VIEWINGS +VIEWLESS +VIEWLESSLY +VIEWPOINT +VIEWPOINTS +VIEWS +VIEWY +VIG +VIGA +VIGAS +VIGESIMAL +VIGIA +VIGIAS +VIGIL +VIGILANCE +VIGILANCES +VIGILANT +VIGILANTE +VIGILANTES +VIGILANTISM +VIGILANTISMS +VIGILANTLY +VIGILS +VIGINTILLION +VIGINTILLIONS +VIGNERON +VIGNERONS +VIGNETTE +VIGNETTED +VIGNETTER +VIGNETTERS +VIGNETTES +VIGNETTING +VIGNETTIST +VIGNETTISTS +VIGOR +VIGORISH +VIGORISHES +VIGOROSO +VIGOROUS +VIGOROUSLY +VIGOROUSNESS +VIGOROUSNESSES +VIGORS +VIGOUR +VIGOURS +VIGS +VIKING +VIKINGS +VILAYET +VILAYETS +VILE +VILELY +VILENESS +VILENESSES +VILER +VILEST +VILIFICATION +VILIFICATIONS +VILIFIED +VILIFIER +VILIFIERS +VILIFIES +VILIFY +VILIFYING +VILIPEND +VILIPENDED +VILIPENDING +VILIPENDS +VILL +VILLA +VILLADOM +VILLADOMS +VILLAE +VILLAGE +VILLAGER +VILLAGERIES +VILLAGERS +VILLAGERY +VILLAGES +VILLAIN +VILLAINESS +VILLAINESSES +VILLAINIES +VILLAINOUS +VILLAINOUSLY +VILLAINOUSNESS +VILLAINS +VILLAINY +VILLANELLA +VILLANELLE +VILLANELLES +VILLAS +VILLATIC +VILLEIN +VILLEINS +VILLENAGE +VILLENAGES +VILLI +VILLIFORM +VILLOSE +VILLOSITIES +VILLOSITY +VILLOUS +VILLOUSLY +VILLS +VILLUS +VIM +VIMEN +VIMINA +VIMINAL +VIMINEOUS +VIMS +VINA +VINACEOUS +VINAIGRETTE +VINAIGRETTES +VINAL +VINALS +VINAS +VINASSE +VINASSES +VINBLASTINE +VINBLASTINES +VINCA +VINCAS +VINCIBLE +VINCIBLY +VINCRISTINE +VINCRISTINES +VINCULA +VINCULUM +VINCULUMS +VINDALOO +VINDALOOS +VINDICABLE +VINDICATE +VINDICATED +VINDICATES +VINDICATING +VINDICATION +VINDICATIONS +VINDICATIVE +VINDICATOR +VINDICATORS +VINDICATORY +VINDICTIVE +VINDICTIVELY +VINDICTIVENESS +VINE +VINEAL +VINED +VINEDRESSER +VINEDRESSERS +VINEGAR +VINEGARED +VINEGARISH +VINEGARS +VINEGARY +VINERIES +VINERY +VINES +VINEYARD +VINEYARDIST +VINEYARDISTS +VINEYARDS +VINIC +VINICULTURE +VINICULTURES +VINIER +VINIEST +VINIFERA +VINIFERAS +VINIFICATION +VINIFICATIONS +VINIFIED +VINIFIES +VINIFY +VINIFYING +VINING +VINO +VINOS +VINOSITIES +VINOSITY +VINOUS +VINOUSLY +VINTAGE +VINTAGER +VINTAGERS +VINTAGES +VINTNER +VINTNERS +VINY +VINYL +VINYLIC +VINYLIDENE +VINYLIDENES +VINYLS +VIOL +VIOLA +VIOLABILITIES +VIOLABILITY +VIOLABLE +VIOLABLENESS +VIOLABLENESSES +VIOLABLY +VIOLACEOUS +VIOLAS +VIOLATE +VIOLATED +VIOLATER +VIOLATERS +VIOLATES +VIOLATING +VIOLATION +VIOLATIONS +VIOLATIVE +VIOLATOR +VIOLATORS +VIOLENCE +VIOLENCES +VIOLENT +VIOLENTLY +VIOLET +VIOLETS +VIOLIN +VIOLINIST +VIOLINISTIC +VIOLINISTS +VIOLINS +VIOLIST +VIOLISTS +VIOLONCELLI +VIOLONCELLIST +VIOLONCELLISTS +VIOLONCELLO +VIOLONCELLOS +VIOLONE +VIOLONES +VIOLS +VIOMYCIN +VIOMYCINS +VIOSTEROL +VIOSTEROLS +VIPER +VIPERFISH +VIPERFISHES +VIPERINE +VIPERISH +VIPEROUS +VIPEROUSLY +VIPERS +VIRAGINOUS +VIRAGO +VIRAGOES +VIRAGOS +VIRAL +VIRALLY +VIRELAI +VIRELAIS +VIRELAY +VIRELAYS +VIREMIA +VIREMIAS +VIREMIC +VIREO +VIREONINE +VIREONINES +VIREOS +VIRES +VIRESCENCE +VIRESCENCES +VIRESCENT +VIRGA +VIRGAS +VIRGATE +VIRGATES +VIRGIN +VIRGINAL +VIRGINALIST +VIRGINALISTS +VIRGINALLY +VIRGINALS +VIRGINITIES +VIRGINITY +VIRGINS +VIRGULATE +VIRGULE +VIRGULES +VIRICIDAL +VIRICIDE +VIRICIDES +VIRID +VIRIDESCENT +VIRIDIAN +VIRIDIANS +VIRIDITIES +VIRIDITY +VIRILE +VIRILELY +VIRILISM +VIRILISMS +VIRILITIES +VIRILITY +VIRILIZE +VIRILIZED +VIRILIZES +VIRILIZING +VIRILOCAL +VIRION +VIRIONS +VIRL +VIRLS +VIROID +VIROIDS +VIROLOGIC +VIROLOGICAL +VIROLOGICALLY +VIROLOGIES +VIROLOGIST +VIROLOGISTS +VIROLOGY +VIROSES +VIROSIS +VIRTU +VIRTUAL +VIRTUALITIES +VIRTUALITY +VIRTUALLY +VIRTUE +VIRTUELESS +VIRTUES +VIRTUOSA +VIRTUOSAS +VIRTUOSE +VIRTUOSI +VIRTUOSIC +VIRTUOSITIES +VIRTUOSITY +VIRTUOSO +VIRTUOSOS +VIRTUOUS +VIRTUOUSLY +VIRTUOUSNESS +VIRTUOUSNESSES +VIRTUS +VIRUCIDAL +VIRUCIDE +VIRUCIDES +VIRULENCE +VIRULENCES +VIRULENCIES +VIRULENCY +VIRULENT +VIRULENTLY +VIRULIFEROUS +VIRUS +VIRUSES +VIRUSLIKE +VIRUSOID +VIRUSOIDS +VIS +VISA +VISAED +VISAGE +VISAGED +VISAGES +VISAING +VISARD +VISARDS +VISAS +VISCACHA +VISCACHAS +VISCERA +VISCERAL +VISCERALLY +VISCID +VISCIDITIES +VISCIDITY +VISCIDLY +VISCOELASTIC +VISCOELASTICITY +VISCOID +VISCOIDAL +VISCOMETER +VISCOMETERS +VISCOMETRIC +VISCOMETRIES +VISCOMETRY +VISCOSE +VISCOSES +VISCOSIMETER +VISCOSIMETERS +VISCOSIMETRIC +VISCOSITIES +VISCOSITY +VISCOUNT +VISCOUNTCIES +VISCOUNTCY +VISCOUNTESS +VISCOUNTESSES +VISCOUNTIES +VISCOUNTS +VISCOUNTY +VISCOUS +VISCOUSLY +VISCOUSNESS +VISCOUSNESSES +VISCUS +VISE +VISED +VISEED +VISEING +VISELIKE +VISES +VISIBILITIES +VISIBILITY +VISIBLE +VISIBLENESS +VISIBLENESSES +VISIBLY +VISING +VISION +VISIONAL +VISIONALLY +VISIONARIES +VISIONARINESS +VISIONARINESSES +VISIONARY +VISIONED +VISIONING +VISIONLESS +VISIONS +VISIT +VISITABLE +VISITANT +VISITANTS +VISITATION +VISITATIONS +VISITATORIAL +VISITED +VISITER +VISITERS +VISITING +VISITOR +VISITORS +VISITS +VISIVE +VISOR +VISORED +VISORING +VISORLESS +VISORS +VISTA +VISTAED +VISTALESS +VISTAS +VISUAL +VISUALISE +VISUALISED +VISUALISES +VISUALISING +VISUALIST +VISUALISTS +VISUALITIES +VISUALITY +VISUALIZATION +VISUALIZATIONS +VISUALIZE +VISUALIZED +VISUALIZER +VISUALIZERS +VISUALIZES +VISUALIZING +VISUALLY +VISUALS +VITA +VITAE +VITAL +VITALISE +VITALISED +VITALISES +VITALISING +VITALISM +VITALISMS +VITALIST +VITALISTIC +VITALISTS +VITALITIES +VITALITY +VITALIZATION +VITALIZATIONS +VITALIZE +VITALIZED +VITALIZER +VITALIZERS +VITALIZES +VITALIZING +VITALLY +VITALNESS +VITALNESSES +VITALS +VITAMER +VITAMERS +VITAMIN +VITAMINE +VITAMINES +VITAMINIC +VITAMINS +VITELLIN +VITELLINE +VITELLINES +VITELLINS +VITELLOGENESES +VITELLOGENESIS +VITELLUS +VITELLUSES +VITESSE +VITESSES +VITIABLE +VITIATE +VITIATED +VITIATES +VITIATING +VITIATION +VITIATIONS +VITIATOR +VITIATORS +VITICULTURAL +VITICULTURALLY +VITICULTURE +VITICULTURES +VITICULTURIST +VITICULTURISTS +VITILIGO +VITILIGOS +VITRAIN +VITRAINS +VITRECTOMIES +VITRECTOMY +VITREOUS +VITREOUSES +VITRIC +VITRICS +VITRIFIABLE +VITRIFICATION +VITRIFICATIONS +VITRIFIED +VITRIFIES +VITRIFORM +VITRIFY +VITRIFYING +VITRINE +VITRINES +VITRIOL +VITRIOLED +VITRIOLIC +VITRIOLING +VITRIOLLED +VITRIOLLING +VITRIOLS +VITTA +VITTAE +VITTATE +VITTLE +VITTLED +VITTLES +VITTLING +VITULINE +VITUPERATE +VITUPERATED +VITUPERATES +VITUPERATING +VITUPERATION +VITUPERATIONS +VITUPERATIVE +VITUPERATIVELY +VITUPERATOR +VITUPERATORS +VITUPERATORY +VIVA +VIVACE +VIVACES +VIVACIOUS +VIVACIOUSLY +VIVACIOUSNESS +VIVACIOUSNESSES +VIVACITIES +VIVACITY +VIVANDIERE +VIVANDIERES +VIVARIA +VIVARIES +VIVARIUM +VIVARIUMS +VIVARY +VIVAS +VIVE +VIVERRID +VIVERRIDS +VIVERRINE +VIVERRINES +VIVERS +VIVID +VIVIDER +VIVIDEST +VIVIDLY +VIVIDNESS +VIVIDNESSES +VIVIFIC +VIVIFICATION +VIVIFICATIONS +VIVIFIED +VIVIFIER +VIVIFIERS +VIVIFIES +VIVIFY +VIVIFYING +VIVIPARA +VIVIPARITIES +VIVIPARITY +VIVIPAROUS +VIVIPAROUSLY +VIVISECT +VIVISECTED +VIVISECTING +VIVISECTION +VIVISECTIONAL +VIVISECTIONIST +VIVISECTIONISTS +VIVISECTIONS +VIVISECTOR +VIVISECTORS +VIVISECTS +VIXEN +VIXENISH +VIXENLY +VIXENS +VIZARD +VIZARDED +VIZARDS +VIZCACHA +VIZCACHAS +VIZIER +VIZIERATE +VIZIERATES +VIZIERIAL +VIZIERS +VIZIERSHIP +VIZIERSHIPS +VIZIR +VIZIRATE +VIZIRATES +VIZIRIAL +VIZIRS +VIZOR +VIZORED +VIZORING +VIZORS +VIZSLA +VIZSLAS +VOCAB +VOCABLE +VOCABLES +VOCABLY +VOCABS +VOCABULAR +VOCABULARIES +VOCABULARY +VOCAL +VOCALESE +VOCALESES +VOCALIC +VOCALICALLY +VOCALICS +VOCALISE +VOCALISED +VOCALISES +VOCALISING +VOCALISM +VOCALISMS +VOCALIST +VOCALISTS +VOCALITIES +VOCALITY +VOCALIZATION +VOCALIZATIONS +VOCALIZE +VOCALIZED +VOCALIZER +VOCALIZERS +VOCALIZES +VOCALIZING +VOCALLY +VOCALNESS +VOCALNESSES +VOCALS +VOCATION +VOCATIONAL +VOCATIONALISM +VOCATIONALISMS +VOCATIONALIST +VOCATIONALISTS +VOCATIONALLY +VOCATIONS +VOCATIVE +VOCATIVELY +VOCATIVES +VOCES +VOCIFERANT +VOCIFERATE +VOCIFERATED +VOCIFERATES +VOCIFERATING +VOCIFERATION +VOCIFERATIONS +VOCIFERATOR +VOCIFERATORS +VOCIFEROUS +VOCIFEROUSLY +VOCIFEROUSNESS +VOCODER +VOCODERS +VODKA +VODKAS +VODOU +VODOUN +VODOUNS +VODOUS +VODUN +VODUNS +VOE +VOES +VOGIE +VOGUE +VOGUED +VOGUEING +VOGUEINGS +VOGUER +VOGUERS +VOGUES +VOGUING +VOGUINGS +VOGUISH +VOGUISHLY +VOGUISHNESS +VOGUISHNESSES +VOICE +VOICED +VOICEFUL +VOICEFULNESS +VOICEFULNESSES +VOICELESS +VOICELESSLY +VOICELESSNESS +VOICELESSNESSES +VOICEMAIL +VOICEMAILS +VOICEOVER +VOICEOVERS +VOICEPRINT +VOICEPRINTS +VOICER +VOICERS +VOICES +VOICING +VOICINGS +VOID +VOIDABLE +VOIDABLENESS +VOIDABLENESSES +VOIDANCE +VOIDANCES +VOIDED +VOIDER +VOIDERS +VOIDING +VOIDNESS +VOIDNESSES +VOIDS +VOILA +VOILE +VOILES +VOLANT +VOLANTE +VOLAR +VOLATILE +VOLATILENESS +VOLATILENESSES +VOLATILES +VOLATILISE +VOLATILISED +VOLATILISES +VOLATILISING +VOLATILITIES +VOLATILITY +VOLATILIZABLE +VOLATILIZATION +VOLATILIZATIONS +VOLATILIZE +VOLATILIZED +VOLATILIZES +VOLATILIZING +VOLCANIC +VOLCANICALLY +VOLCANICITIES +VOLCANICITY +VOLCANICS +VOLCANISM +VOLCANISMS +VOLCANIZE +VOLCANIZED +VOLCANIZES +VOLCANIZING +VOLCANO +VOLCANOES +VOLCANOLOGIC +VOLCANOLOGICAL +VOLCANOLOGIES +VOLCANOLOGIST +VOLCANOLOGISTS +VOLCANOLOGY +VOLCANOS +VOLE +VOLED +VOLERIES +VOLERY +VOLES +VOLING +VOLITANT +VOLITION +VOLITIONAL +VOLITIONS +VOLITIVE +VOLKSLIED +VOLKSLIEDER +VOLLEY +VOLLEYBALL +VOLLEYBALLS +VOLLEYED +VOLLEYER +VOLLEYERS +VOLLEYING +VOLLEYS +VOLOST +VOLOSTS +VOLPLANE +VOLPLANED +VOLPLANES +VOLPLANING +VOLT +VOLTA +VOLTAGE +VOLTAGES +VOLTAIC +VOLTAISM +VOLTAISMS +VOLTE +VOLTES +VOLTI +VOLTMETER +VOLTMETERS +VOLTS +VOLUBILITIES +VOLUBILITY +VOLUBLE +VOLUBLENESS +VOLUBLENESSES +VOLUBLY +VOLUME +VOLUMED +VOLUMES +VOLUMETER +VOLUMETERS +VOLUMETRIC +VOLUMETRICALLY +VOLUMING +VOLUMINOSITIES +VOLUMINOSITY +VOLUMINOUS +VOLUMINOUSLY +VOLUMINOUSNESS +VOLUNTARIES +VOLUNTARILY +VOLUNTARINESS +VOLUNTARINESSES +VOLUNTARISM +VOLUNTARISMS +VOLUNTARIST +VOLUNTARISTIC +VOLUNTARISTS +VOLUNTARY +VOLUNTARYISM +VOLUNTARYISMS +VOLUNTARYIST +VOLUNTARYISTS +VOLUNTEER +VOLUNTEERED +VOLUNTEERING +VOLUNTEERISM +VOLUNTEERISMS +VOLUNTEERS +VOLUPTUARIES +VOLUPTUARY +VOLUPTUOUS +VOLUPTUOUSLY +VOLUPTUOUSNESS +VOLUTE +VOLUTED +VOLUTES +VOLUTIN +VOLUTINS +VOLUTION +VOLUTIONS +VOLVA +VOLVAS +VOLVATE +VOLVOX +VOLVOXES +VOLVULI +VOLVULUS +VOLVULUSES +VOMER +VOMERINE +VOMERS +VOMICA +VOMICAE +VOMIT +VOMITED +VOMITER +VOMITERS +VOMITING +VOMITIVE +VOMITIVES +VOMITO +VOMITORIES +VOMITORY +VOMITOS +VOMITOUS +VOMITS +VOMITUS +VOMITUSES +VOODOO +VOODOOED +VOODOOING +VOODOOISM +VOODOOISMS +VOODOOIST +VOODOOISTIC +VOODOOISTS +VOODOOS +VORACIOUS +VORACIOUSLY +VORACIOUSNESS +VORACIOUSNESSES +VORACITIES +VORACITY +VORLAGE +VORLAGES +VORTEX +VORTEXES +VORTICAL +VORTICALLY +VORTICELLA +VORTICELLAE +VORTICELLAS +VORTICES +VORTICISM +VORTICISMS +VORTICIST +VORTICISTS +VORTICITIES +VORTICITY +VORTICOSE +VOTABLE +VOTARESS +VOTARESSES +VOTARIES +VOTARIST +VOTARISTS +VOTARY +VOTE +VOTEABLE +VOTED +VOTELESS +VOTER +VOTERS +VOTES +VOTING +VOTIVE +VOTIVELY +VOTIVENESS +VOTIVENESSES +VOTIVES +VOTRESS +VOTRESSES +VOUCH +VOUCHED +VOUCHEE +VOUCHEES +VOUCHER +VOUCHERED +VOUCHERING +VOUCHERS +VOUCHES +VOUCHING +VOUCHSAFE +VOUCHSAFED +VOUCHSAFEMENT +VOUCHSAFEMENTS +VOUCHSAFES +VOUCHSAFING +VOUDON +VOUDONS +VOUDOUN +VOUDOUNS +VOUSSOIR +VOUSSOIRS +VOUVRAY +VOUVRAYS +VOW +VOWED +VOWEL +VOWELIZE +VOWELIZED +VOWELIZES +VOWELIZING +VOWELS +VOWER +VOWERS +VOWING +VOWLESS +VOWS +VOX +VOYAGE +VOYAGED +VOYAGER +VOYAGERS +VOYAGES +VOYAGEUR +VOYAGEURS +VOYAGING +VOYEUR +VOYEURISM +VOYEURISMS +VOYEURISTIC +VOYEURISTICALLY +VOYEURS +VROOM +VROOMED +VROOMING +VROOMS +VROUW +VROUWS +VROW +VROWS +VUG +VUGG +VUGGIER +VUGGIEST +VUGGS +VUGGY +VUGH +VUGHS +VUGS +VULCANIAN +VULCANIC +VULCANICITIES +VULCANICITY +VULCANISATE +VULCANISATES +VULCANISATION +VULCANISATIONS +VULCANISE +VULCANISED +VULCANISES +VULCANISING +VULCANISM +VULCANISMS +VULCANITE +VULCANITES +VULCANIZATE +VULCANIZATES +VULCANIZATION +VULCANIZATIONS +VULCANIZE +VULCANIZED +VULCANIZER +VULCANIZERS +VULCANIZES +VULCANIZING +VULCANOLOGIES +VULCANOLOGIST +VULCANOLOGISTS +VULCANOLOGY +VULGAR +VULGARER +VULGAREST +VULGARIAN +VULGARIANS +VULGARISE +VULGARISED +VULGARISES +VULGARISING +VULGARISM +VULGARISMS +VULGARITIES +VULGARITY +VULGARIZATION +VULGARIZATIONS +VULGARIZE +VULGARIZED +VULGARIZER +VULGARIZERS +VULGARIZES +VULGARIZING +VULGARLY +VULGARS +VULGATE +VULGATES +VULGO +VULGUS +VULGUSES +VULNERABILITIES +VULNERABILITY +VULNERABLE +VULNERABLENESS +VULNERABLY +VULNERARIES +VULNERARY +VULPINE +VULTURE +VULTURES +VULTURINE +VULTURISH +VULTUROUS +VULVA +VULVAE +VULVAL +VULVAR +VULVAS +VULVATE +VULVIFORM +VULVITIS +VULVITISES +VULVOVAGINITIS +VUM +VYING +VYINGLY +WAB +WABBLE +WABBLED +WABBLER +WABBLERS +WABBLES +WABBLIER +WABBLIEST +WABBLING +WABBLY +WABS +WACK +WACKE +WACKER +WACKES +WACKEST +WACKIER +WACKIEST +WACKILY +WACKINESS +WACKINESSES +WACKO +WACKOS +WACKS +WACKY +WAD +WADABLE +WADDED +WADDER +WADDERS +WADDIE +WADDIED +WADDIES +WADDING +WADDINGS +WADDLE +WADDLED +WADDLER +WADDLERS +WADDLES +WADDLING +WADDLY +WADDY +WADDYING +WADE +WADEABLE +WADED +WADER +WADERS +WADES +WADI +WADIES +WADING +WADIS +WADMAAL +WADMAALS +WADMAL +WADMALS +WADMEL +WADMELS +WADMOL +WADMOLL +WADMOLLS +WADMOLS +WADS +WADSET +WADSETS +WADSETTED +WADSETTING +WADY +WAE +WAEFUL +WAENESS +WAENESSES +WAES +WAESUCK +WAESUCKS +WAFER +WAFERED +WAFERING +WAFERS +WAFERY +WAFF +WAFFED +WAFFIE +WAFFIES +WAFFING +WAFFLE +WAFFLED +WAFFLER +WAFFLERS +WAFFLES +WAFFLESTOMPER +WAFFLESTOMPERS +WAFFLIER +WAFFLIEST +WAFFLING +WAFFLINGS +WAFFLY +WAFFS +WAFT +WAFTAGE +WAFTAGES +WAFTED +WAFTER +WAFTERS +WAFTING +WAFTS +WAFTURE +WAFTURES +WAG +WAGE +WAGED +WAGELESS +WAGER +WAGERED +WAGERER +WAGERERS +WAGERING +WAGERS +WAGES +WAGEWORKER +WAGEWORKERS +WAGGED +WAGGER +WAGGERIES +WAGGERS +WAGGERY +WAGGING +WAGGISH +WAGGISHLY +WAGGISHNESS +WAGGISHNESSES +WAGGLE +WAGGLED +WAGGLES +WAGGLIER +WAGGLIEST +WAGGLING +WAGGLY +WAGGON +WAGGONED +WAGGONER +WAGGONERS +WAGGONING +WAGGONS +WAGING +WAGON +WAGONAGE +WAGONAGES +WAGONED +WAGONER +WAGONERS +WAGONETTE +WAGONETTES +WAGONING +WAGONLOAD +WAGONLOADS +WAGONS +WAGS +WAGSOME +WAGTAIL +WAGTAILS +WAHCONDA +WAHCONDAS +WAHINE +WAHINES +WAHOO +WAHOOS +WAIF +WAIFED +WAIFING +WAIFISH +WAIFLIKE +WAIFS +WAIL +WAILED +WAILER +WAILERS +WAILFUL +WAILFULLY +WAILING +WAILINGLY +WAILS +WAILSOME +WAIN +WAINS +WAINSCOT +WAINSCOTED +WAINSCOTING +WAINSCOTINGS +WAINSCOTS +WAINSCOTTED +WAINSCOTTING +WAINSCOTTINGS +WAINWRIGHT +WAINWRIGHTS +WAIR +WAIRED +WAIRING +WAIRS +WAIST +WAISTBAND +WAISTBANDS +WAISTCOAT +WAISTCOATED +WAISTCOATS +WAISTED +WAISTER +WAISTERS +WAISTING +WAISTINGS +WAISTLESS +WAISTLINE +WAISTLINES +WAISTS +WAIT +WAITED +WAITER +WAITERED +WAITERING +WAITERS +WAITING +WAITINGS +WAITLIST +WAITLISTED +WAITLISTING +WAITLISTS +WAITPERSON +WAITPERSONS +WAITRESS +WAITRESSED +WAITRESSES +WAITRESSING +WAITRON +WAITRONS +WAITS +WAITSTAFF +WAITSTAFFS +WAIVE +WAIVED +WAIVER +WAIVERS +WAIVES +WAIVING +WAKAME +WAKAMES +WAKANDA +WAKANDAS +WAKE +WAKEBOARD +WAKEBOARDER +WAKEBOARDERS +WAKEBOARDING +WAKEBOARDINGS +WAKEBOARDS +WAKED +WAKEFUL +WAKEFULLY +WAKEFULNESS +WAKEFULNESSES +WAKELESS +WAKEN +WAKENED +WAKENER +WAKENERS +WAKENING +WAKENINGS +WAKENS +WAKER +WAKERIFE +WAKERS +WAKES +WAKIKI +WAKIKIS +WAKING +WALE +WALED +WALER +WALERS +WALES +WALIES +WALING +WALK +WALKABLE +WALKABOUT +WALKABOUTS +WALKATHON +WALKATHONS +WALKAWAY +WALKAWAYS +WALKED +WALKER +WALKERS +WALKING +WALKINGS +WALKINGSTICK +WALKINGSTICKS +WALKOUT +WALKOUTS +WALKOVER +WALKOVERS +WALKS +WALKUP +WALKUPS +WALKWAY +WALKWAYS +WALKYRIE +WALKYRIES +WALL +WALLA +WALLABIES +WALLABY +WALLAH +WALLAHS +WALLAROO +WALLAROOS +WALLAS +WALLBOARD +WALLBOARDS +WALLED +WALLET +WALLETS +WALLEYE +WALLEYED +WALLEYES +WALLFLOWER +WALLFLOWERS +WALLIE +WALLIES +WALLING +WALLOP +WALLOPED +WALLOPER +WALLOPERS +WALLOPING +WALLOPINGS +WALLOPS +WALLOW +WALLOWED +WALLOWER +WALLOWERS +WALLOWING +WALLOWS +WALLPAPER +WALLPAPERED +WALLPAPERING +WALLPAPERS +WALLS +WALLY +WALLYBALL +WALLYBALLS +WALLYDRAG +WALLYDRAGS +WALLYDRAIGLE +WALLYDRAIGLES +WALNUT +WALNUTS +WALRUS +WALRUSES +WALTZ +WALTZED +WALTZER +WALTZERS +WALTZES +WALTZING +WALY +WAMBLE +WAMBLED +WAMBLES +WAMBLIER +WAMBLIEST +WAMBLING +WAMBLY +WAME +WAMEFOU +WAMEFOUS +WAMEFUL +WAMEFULS +WAMES +WAMMUS +WAMMUSES +WAMPISH +WAMPISHED +WAMPISHES +WAMPISHING +WAMPUM +WAMPUMPEAG +WAMPUMPEAGS +WAMPUMS +WAMPUS +WAMPUSES +WAMUS +WAMUSES +WAN +WAND +WANDER +WANDERED +WANDERER +WANDERERS +WANDERING +WANDERINGS +WANDERLUST +WANDERLUSTS +WANDEROO +WANDEROOS +WANDERS +WANDLE +WANDS +WANE +WANED +WANES +WANEY +WANGAN +WANGANS +WANGLE +WANGLED +WANGLER +WANGLERS +WANGLES +WANGLING +WANGUN +WANGUNS +WANIER +WANIEST +WANIGAN +WANIGANS +WANING +WANION +WANIONS +WANK +WANKED +WANKER +WANKERS +WANKING +WANKS +WANLY +WANNABE +WANNABEE +WANNABEES +WANNABES +WANNED +WANNER +WANNESS +WANNESSES +WANNEST +WANNIGAN +WANNIGANS +WANNING +WANS +WANT +WANTAGE +WANTAGES +WANTED +WANTER +WANTERS +WANTING +WANTON +WANTONED +WANTONER +WANTONERS +WANTONING +WANTONLY +WANTONNESS +WANTONNESSES +WANTONS +WANTS +WANY +WAP +WAPENTAKE +WAPENTAKES +WAPITI +WAPITIS +WAPPED +WAPPENSCHAWING +WAPPENSCHAWINGS +WAPPING +WAPS +WAR +WARBLE +WARBLED +WARBLER +WARBLERS +WARBLES +WARBLING +WARBONNET +WARBONNETS +WARCRAFT +WARCRAFTS +WARD +WARDED +WARDEN +WARDENRIES +WARDENRY +WARDENS +WARDENSHIP +WARDENSHIPS +WARDER +WARDERS +WARDING +WARDLESS +WARDRESS +WARDRESSES +WARDROBE +WARDROBED +WARDROBES +WARDROBING +WARDROOM +WARDROOMS +WARDS +WARDSHIP +WARDSHIPS +WARE +WARED +WAREHOUSE +WAREHOUSED +WAREHOUSEMAN +WAREHOUSEMEN +WAREHOUSER +WAREHOUSERS +WAREHOUSES +WAREHOUSING +WAREROOM +WAREROOMS +WARES +WARFARE +WARFARES +WARFARIN +WARFARINS +WARHEAD +WARHEADS +WARHORSE +WARHORSES +WARIER +WARIEST +WARILY +WARINESS +WARINESSES +WARING +WARISON +WARISONS +WARK +WARKED +WARKING +WARKS +WARLESS +WARLIKE +WARLOCK +WARLOCKS +WARLORD +WARLORDISM +WARLORDISMS +WARLORDS +WARM +WARMAKER +WARMAKERS +WARMED +WARMER +WARMERS +WARMEST +WARMHEARTED +WARMHEARTEDNESS +WARMING +WARMISH +WARMLY +WARMNESS +WARMNESSES +WARMONGER +WARMONGERING +WARMONGERINGS +WARMONGERS +WARMOUTH +WARMOUTHS +WARMS +WARMTH +WARMTHS +WARMUP +WARMUPS +WARN +WARNED +WARNER +WARNERS +WARNING +WARNINGLY +WARNINGS +WARNS +WARP +WARPAGE +WARPAGES +WARPATH +WARPATHS +WARPED +WARPER +WARPERS +WARPING +WARPLANE +WARPLANES +WARPOWER +WARPOWERS +WARPS +WARPWISE +WARRAGAL +WARRAGALS +WARRANT +WARRANTABLE +WARRANTABLENESS +WARRANTABLY +WARRANTED +WARRANTEE +WARRANTEES +WARRANTER +WARRANTERS +WARRANTIED +WARRANTIES +WARRANTING +WARRANTLESS +WARRANTOR +WARRANTORS +WARRANTS +WARRANTY +WARRANTYING +WARRED +WARREN +WARRENER +WARRENERS +WARRENS +WARRIGAL +WARRIGALS +WARRING +WARRIOR +WARRIORS +WARS +WARSAW +WARSAWS +WARSHIP +WARSHIPS +WARSLE +WARSLED +WARSLER +WARSLERS +WARSLES +WARSLING +WARSTLE +WARSTLED +WARSTLER +WARSTLERS +WARSTLES +WARSTLING +WART +WARTED +WARTHOG +WARTHOGS +WARTIER +WARTIEST +WARTIME +WARTIMES +WARTLESS +WARTLIKE +WARTS +WARTY +WARWORK +WARWORKS +WARWORN +WARY +WAS +WASABI +WASABIS +WASH +WASHABILITIES +WASHABILITY +WASHABLE +WASHABLES +WASHATERIA +WASHATERIAS +WASHBASIN +WASHBASINS +WASHBOARD +WASHBOARDS +WASHBOWL +WASHBOWLS +WASHCLOTH +WASHCLOTHS +WASHDAY +WASHDAYS +WASHED +WASHER +WASHERMAN +WASHERMEN +WASHERS +WASHERWOMAN +WASHERWOMEN +WASHES +WASHETERIA +WASHETERIAS +WASHHOUSE +WASHHOUSES +WASHIER +WASHIEST +WASHINESS +WASHINESSES +WASHING +WASHINGS +WASHOUT +WASHOUTS +WASHRAG +WASHRAGS +WASHROOM +WASHROOMS +WASHSTAND +WASHSTANDS +WASHTUB +WASHTUBS +WASHUP +WASHUPS +WASHWOMAN +WASHWOMEN +WASHY +WASP +WASPIER +WASPIEST +WASPILY +WASPINESS +WASPINESSES +WASPISH +WASPISHLY +WASPISHNESS +WASPISHNESSES +WASPLIKE +WASPS +WASPY +WASSAIL +WASSAILED +WASSAILER +WASSAILERS +WASSAILING +WASSAILS +WAST +WASTABLE +WASTAGE +WASTAGES +WASTE +WASTEBASKET +WASTEBASKETS +WASTED +WASTEFUL +WASTEFULLY +WASTEFULNESS +WASTEFULNESSES +WASTELAND +WASTELANDS +WASTELOT +WASTELOTS +WASTEPAPER +WASTEPAPERS +WASTER +WASTERIE +WASTERIES +WASTERS +WASTERY +WASTES +WASTEWATER +WASTEWATERS +WASTEWAY +WASTEWAYS +WASTING +WASTINGLY +WASTREL +WASTRELS +WASTRIE +WASTRIES +WASTRY +WASTS +WAT +WATAP +WATAPE +WATAPES +WATAPS +WATCH +WATCHABLE +WATCHABLES +WATCHBAND +WATCHBANDS +WATCHCASE +WATCHCASES +WATCHCRIES +WATCHCRY +WATCHDOG +WATCHDOGGED +WATCHDOGGING +WATCHDOGS +WATCHED +WATCHER +WATCHERS +WATCHES +WATCHEYE +WATCHEYES +WATCHFUL +WATCHFULLY +WATCHFULNESS +WATCHFULNESSES +WATCHING +WATCHMAKER +WATCHMAKERS +WATCHMAKING +WATCHMAKINGS +WATCHMAN +WATCHMEN +WATCHOUT +WATCHOUTS +WATCHTOWER +WATCHTOWERS +WATCHWORD +WATCHWORDS +WATER +WATERAGE +WATERAGES +WATERBED +WATERBEDS +WATERBIRD +WATERBIRDS +WATERBORNE +WATERBUCK +WATERBUCKS +WATERBUS +WATERBUSES +WATERBUSSES +WATERCOLOR +WATERCOLORIST +WATERCOLORISTS +WATERCOLORS +WATERCOOLER +WATERCOOLERS +WATERCOURSE +WATERCOURSES +WATERCRAFT +WATERCRAFTS +WATERCRESS +WATERCRESSES +WATERDOG +WATERDOGS +WATERED +WATERER +WATERERS +WATERFALL +WATERFALLS +WATERFLOOD +WATERFLOODED +WATERFLOODING +WATERFLOODS +WATERFOWL +WATERFOWLER +WATERFOWLERS +WATERFOWLING +WATERFOWLINGS +WATERFOWLS +WATERFRONT +WATERFRONTS +WATERHEAD +WATERHEADS +WATERHEN +WATERHENS +WATERIER +WATERIEST +WATERILY +WATERINESS +WATERINESSES +WATERING +WATERINGS +WATERISH +WATERISHNESS +WATERISHNESSES +WATERJET +WATERJETS +WATERLEAF +WATERLEAFS +WATERLESS +WATERLESSNESS +WATERLESSNESSES +WATERLILIES +WATERLILY +WATERLINE +WATERLINES +WATERLOG +WATERLOGGED +WATERLOGGING +WATERLOGS +WATERLOO +WATERLOOS +WATERMAN +WATERMANSHIP +WATERMANSHIPS +WATERMARK +WATERMARKED +WATERMARKING +WATERMARKS +WATERMELON +WATERMELONS +WATERMEN +WATERPOWER +WATERPOWERS +WATERPROOF +WATERPROOFED +WATERPROOFER +WATERPROOFERS +WATERPROOFING +WATERPROOFINGS +WATERPROOFNESS +WATERPROOFS +WATERS +WATERSCAPE +WATERSCAPES +WATERSHED +WATERSHEDS +WATERSIDE +WATERSIDES +WATERSKI +WATERSKIING +WATERSKIINGS +WATERSKIS +WATERSPOUT +WATERSPOUTS +WATERTHRUSH +WATERTHRUSHES +WATERTIGHT +WATERTIGHTNESS +WATERWAY +WATERWAYS +WATERWEED +WATERWEEDS +WATERWHEEL +WATERWHEELS +WATERWORK +WATERWORKS +WATERWORN +WATERY +WATERZOOI +WATERZOOIS +WATS +WATT +WATTAGE +WATTAGES +WATTAPE +WATTAPES +WATTER +WATTEST +WATTHOUR +WATTHOURS +WATTLE +WATTLEBIRD +WATTLEBIRDS +WATTLED +WATTLES +WATTLESS +WATTLING +WATTMETER +WATTMETERS +WATTS +WAUCHT +WAUCHTED +WAUCHTING +WAUCHTS +WAUGH +WAUGHT +WAUGHTED +WAUGHTING +WAUGHTS +WAUK +WAUKED +WAUKING +WAUKS +WAUL +WAULED +WAULING +WAULS +WAUR +WAVE +WAVEBAND +WAVEBANDS +WAVED +WAVEFORM +WAVEFORMS +WAVEGUIDE +WAVEGUIDES +WAVELENGTH +WAVELENGTHS +WAVELESS +WAVELESSLY +WAVELET +WAVELETS +WAVELIKE +WAVELLITE +WAVELLITES +WAVEOFF +WAVEOFFS +WAVER +WAVERED +WAVERER +WAVERERS +WAVERING +WAVERINGLY +WAVERS +WAVERY +WAVES +WAVESHAPE +WAVESHAPES +WAVEY +WAVEYS +WAVICLE +WAVICLES +WAVIER +WAVIES +WAVIEST +WAVILY +WAVINESS +WAVINESSES +WAVING +WAVY +WAW +WAWL +WAWLED +WAWLING +WAWLS +WAWS +WAX +WAXABLE +WAXBERRIES +WAXBERRY +WAXBILL +WAXBILLS +WAXED +WAXEN +WAXER +WAXERS +WAXES +WAXIER +WAXIEST +WAXILY +WAXINESS +WAXINESSES +WAXING +WAXINGS +WAXLIKE +WAXPLANT +WAXPLANTS +WAXWEED +WAXWEEDS +WAXWING +WAXWINGS +WAXWORK +WAXWORKER +WAXWORKERS +WAXWORKS +WAXWORM +WAXWORMS +WAXY +WAY +WAYBILL +WAYBILLS +WAYFARER +WAYFARERS +WAYFARING +WAYFARINGS +WAYGOING +WAYGOINGS +WAYLAID +WAYLAY +WAYLAYER +WAYLAYERS +WAYLAYING +WAYLAYS +WAYLESS +WAYPOINT +WAYPOINTS +WAYS +WAYSIDE +WAYSIDES +WAYWARD +WAYWARDLY +WAYWARDNESS +WAYWARDNESSES +WAYWORN +WAZOO +WAZOOS +WE +WEAK +WEAKEN +WEAKENED +WEAKENER +WEAKENERS +WEAKENING +WEAKENS +WEAKER +WEAKEST +WEAKFISH +WEAKFISHES +WEAKHEARTED +WEAKISH +WEAKISHLY +WEAKLIER +WEAKLIEST +WEAKLINESS +WEAKLINESSES +WEAKLING +WEAKLINGS +WEAKLY +WEAKNESS +WEAKNESSES +WEAKON +WEAKONS +WEAKSIDE +WEAKSIDES +WEAL +WEALD +WEALDS +WEALS +WEALTH +WEALTHIER +WEALTHIEST +WEALTHILY +WEALTHINESS +WEALTHINESSES +WEALTHS +WEALTHY +WEAN +WEANED +WEANER +WEANERS +WEANING +WEANLING +WEANLINGS +WEANS +WEAPON +WEAPONED +WEAPONEER +WEAPONEERING +WEAPONEERS +WEAPONING +WEAPONIZE +WEAPONIZED +WEAPONIZES +WEAPONIZING +WEAPONLESS +WEAPONRIES +WEAPONRY +WEAPONS +WEAR +WEARABILITIES +WEARABILITY +WEARABLE +WEARABLES +WEARER +WEARERS +WEARIED +WEARIER +WEARIES +WEARIEST +WEARIFUL +WEARIFULLY +WEARIFULNESS +WEARIFULNESSES +WEARILESS +WEARILESSLY +WEARILY +WEARINESS +WEARINESSES +WEARING +WEARINGLY +WEARISH +WEARISOME +WEARISOMELY +WEARISOMENESS +WEARISOMENESSES +WEARPROOF +WEARS +WEARY +WEARYING +WEASAND +WEASANDS +WEASEL +WEASELED +WEASELING +WEASELLED +WEASELLING +WEASELLY +WEASELS +WEASELY +WEASON +WEASONS +WEATHER +WEATHERABILITY +WEATHERBOARD +WEATHERBOARDED +WEATHERBOARDING +WEATHERBOARDS +WEATHERCAST +WEATHERCASTER +WEATHERCASTERS +WEATHERCASTS +WEATHERCOCK +WEATHERCOCKS +WEATHERED +WEATHERGLASS +WEATHERGLASSES +WEATHERING +WEATHERINGS +WEATHERIZATION +WEATHERIZATIONS +WEATHERIZE +WEATHERIZED +WEATHERIZES +WEATHERIZING +WEATHERLY +WEATHERMAN +WEATHERMEN +WEATHERPERSON +WEATHERPERSONS +WEATHERPROOF +WEATHERPROOFED +WEATHERPROOFING +WEATHERPROOFS +WEATHERS +WEATHERWORN +WEAVE +WEAVED +WEAVER +WEAVERBIRD +WEAVERBIRDS +WEAVERS +WEAVES +WEAVING +WEAZAND +WEAZANDS +WEB +WEBBED +WEBBIER +WEBBIEST +WEBBING +WEBBINGS +WEBBY +WEBCAM +WEBCAMS +WEBCAST +WEBCASTED +WEBCASTER +WEBCASTERS +WEBCASTING +WEBCASTS +WEBER +WEBERS +WEBFED +WEBFEET +WEBFOOT +WEBLESS +WEBLIKE +WEBLOG +WEBLOGS +WEBMASTER +WEBMASTERS +WEBPAGE +WEBPAGES +WEBS +WEBSITE +WEBSITES +WEBSTER +WEBSTERS +WEBWORK +WEBWORKS +WEBWORM +WEBWORMS +WECHT +WECHTS +WED +WEDDED +WEDDER +WEDDERS +WEDDING +WEDDINGS +WEDEL +WEDELED +WEDELING +WEDELN +WEDELNS +WEDELS +WEDGE +WEDGED +WEDGELIKE +WEDGES +WEDGIE +WEDGIER +WEDGIES +WEDGIEST +WEDGING +WEDGY +WEDLOCK +WEDLOCKS +WEDS +WEE +WEED +WEEDED +WEEDER +WEEDERS +WEEDIER +WEEDIEST +WEEDILY +WEEDINESS +WEEDINESSES +WEEDING +WEEDLESS +WEEDLIKE +WEEDS +WEEDY +WEEK +WEEKDAY +WEEKDAYS +WEEKEND +WEEKENDED +WEEKENDER +WEEKENDERS +WEEKENDING +WEEKENDS +WEEKLIES +WEEKLONG +WEEKLY +WEEKNIGHT +WEEKNIGHTS +WEEKS +WEEL +WEEN +WEENED +WEENIE +WEENIER +WEENIES +WEENIEST +WEENING +WEENS +WEENSIER +WEENSIEST +WEENSY +WEENY +WEEP +WEEPER +WEEPERS +WEEPIE +WEEPIER +WEEPIES +WEEPIEST +WEEPINESS +WEEPINESSES +WEEPING +WEEPINGLY +WEEPINGS +WEEPS +WEEPY +WEER +WEES +WEEST +WEET +WEETED +WEETING +WEETS +WEEVER +WEEVERS +WEEVIL +WEEVILED +WEEVILLY +WEEVILS +WEEVILY +WEEWEE +WEEWEED +WEEWEEING +WEEWEES +WEFT +WEFTS +WEFTWISE +WEIGELA +WEIGELAS +WEIGELIA +WEIGELIAS +WEIGH +WEIGHABLE +WEIGHED +WEIGHER +WEIGHERS +WEIGHING +WEIGHMAN +WEIGHMEN +WEIGHS +WEIGHT +WEIGHTED +WEIGHTER +WEIGHTERS +WEIGHTIER +WEIGHTIEST +WEIGHTILY +WEIGHTINESS +WEIGHTINESSES +WEIGHTING +WEIGHTLESS +WEIGHTLESSLY +WEIGHTLESSNESS +WEIGHTS +WEIGHTY +WEIMARANER +WEIMARANERS +WEINER +WEINERS +WEIR +WEIRD +WEIRDED +WEIRDER +WEIRDEST +WEIRDIE +WEIRDIES +WEIRDING +WEIRDLY +WEIRDNESS +WEIRDNESSES +WEIRDO +WEIRDOES +WEIRDOS +WEIRDS +WEIRDY +WEIRS +WEISENHEIMER +WEISENHEIMERS +WEKA +WEKAS +WELCH +WELCHED +WELCHER +WELCHERS +WELCHES +WELCHING +WELCOME +WELCOMED +WELCOMELY +WELCOMENESS +WELCOMENESSES +WELCOMER +WELCOMERS +WELCOMES +WELCOMING +WELD +WELDABLE +WELDED +WELDER +WELDERS +WELDING +WELDLESS +WELDMENT +WELDMENTS +WELDOR +WELDORS +WELDS +WELFARE +WELFARES +WELFARISM +WELFARISMS +WELFARIST +WELFARISTS +WELKIN +WELKINS +WELL +WELLADAY +WELLADAYS +WELLAWAY +WELLAWAYS +WELLBORN +WELLCURB +WELLCURBS +WELLDOER +WELLDOERS +WELLED +WELLHEAD +WELLHEADS +WELLHOLE +WELLHOLES +WELLHOUSE +WELLHOUSES +WELLIE +WELLIES +WELLING +WELLNESS +WELLNESSES +WELLS +WELLSITE +WELLSITES +WELLSPRING +WELLSPRINGS +WELLY +WELSH +WELSHED +WELSHER +WELSHERS +WELSHES +WELSHING +WELT +WELTANSCHAUUNG +WELTANSCHAUUNGS +WELTED +WELTER +WELTERED +WELTERING +WELTERS +WELTERWEIGHT +WELTERWEIGHTS +WELTING +WELTINGS +WELTS +WELTSCHMERZ +WELTSCHMERZES +WEN +WENCH +WENCHED +WENCHER +WENCHERS +WENCHES +WENCHING +WEND +WENDED +WENDIGO +WENDIGOS +WENDING +WENDS +WENNIER +WENNIEST +WENNISH +WENNY +WENS +WENT +WENTLETRAP +WENTLETRAPS +WEPT +WERE +WEREGILD +WEREGILDS +WEREWOLF +WEREWOLVES +WERGELD +WERGELDS +WERGELT +WERGELTS +WERGILD +WERGILDS +WERNERITE +WERNERITES +WERT +WERWOLF +WERWOLVES +WESKIT +WESKITS +WESSAND +WESSANDS +WEST +WESTBOUND +WESTER +WESTERED +WESTERING +WESTERLIES +WESTERLY +WESTERN +WESTERNER +WESTERNERS +WESTERNISATION +WESTERNISATIONS +WESTERNISE +WESTERNISED +WESTERNISES +WESTERNISING +WESTERNIZATION +WESTERNIZATIONS +WESTERNIZE +WESTERNIZED +WESTERNIZES +WESTERNIZING +WESTERNMOST +WESTERNS +WESTERS +WESTING +WESTINGS +WESTMOST +WESTS +WESTWARD +WESTWARDS +WET +WETBACK +WETBACKS +WETHER +WETHERS +WETLAND +WETLANDS +WETLY +WETNESS +WETNESSES +WETPROOF +WETS +WETSUIT +WETSUITS +WETTABILITIES +WETTABILITY +WETTABLE +WETTED +WETTER +WETTERS +WETTEST +WETTING +WETTINGS +WETTISH +WETWARE +WETWARES +WHA +WHACK +WHACKED +WHACKER +WHACKERS +WHACKIER +WHACKIEST +WHACKING +WHACKO +WHACKOS +WHACKS +WHACKY +WHALE +WHALEBACK +WHALEBACKS +WHALEBOAT +WHALEBOATS +WHALEBONE +WHALEBONES +WHALED +WHALELIKE +WHALEMAN +WHALEMEN +WHALER +WHALERS +WHALES +WHALING +WHALINGS +WHAM +WHAMMED +WHAMMIES +WHAMMING +WHAMMO +WHAMMY +WHAMO +WHAMS +WHANG +WHANGED +WHANGEE +WHANGEES +WHANGING +WHANGS +WHAP +WHAPPED +WHAPPER +WHAPPERS +WHAPPING +WHAPS +WHARF +WHARFAGE +WHARFAGES +WHARFED +WHARFING +WHARFINGER +WHARFINGERS +WHARFMASTER +WHARFMASTERS +WHARFS +WHARVE +WHARVES +WHAT +WHATCHAMACALLIT +WHATEVER +WHATNESS +WHATNESSES +WHATNOT +WHATNOTS +WHATS +WHATSIS +WHATSISES +WHATSIT +WHATSITS +WHATSOEVER +WHAUP +WHAUPS +WHEAL +WHEALS +WHEAT +WHEATEAR +WHEATEARS +WHEATEN +WHEATENS +WHEATLAND +WHEATLANDS +WHEATLESS +WHEATS +WHEATWORM +WHEATWORMS +WHEE +WHEEDLE +WHEEDLED +WHEEDLER +WHEEDLERS +WHEEDLES +WHEEDLING +WHEEL +WHEELBARROW +WHEELBARROWED +WHEELBARROWING +WHEELBARROWS +WHEELBASE +WHEELBASES +WHEELCHAIR +WHEELCHAIRS +WHEELED +WHEELER +WHEELERS +WHEELHORSE +WHEELHORSES +WHEELHOUSE +WHEELHOUSES +WHEELIE +WHEELIES +WHEELING +WHEELINGS +WHEELLESS +WHEELMAN +WHEELMEN +WHEELS +WHEELSMAN +WHEELSMEN +WHEELWORK +WHEELWORKS +WHEELWRIGHT +WHEELWRIGHTS +WHEEN +WHEENS +WHEEP +WHEEPED +WHEEPING +WHEEPLE +WHEEPLED +WHEEPLES +WHEEPLING +WHEEPS +WHEEZE +WHEEZED +WHEEZER +WHEEZERS +WHEEZES +WHEEZIER +WHEEZIEST +WHEEZILY +WHEEZINESS +WHEEZINESSES +WHEEZING +WHEEZY +WHELK +WHELKIER +WHELKIEST +WHELKS +WHELKY +WHELM +WHELMED +WHELMING +WHELMS +WHELP +WHELPED +WHELPING +WHELPLESS +WHELPS +WHEN +WHENAS +WHENCE +WHENCESOEVER +WHENEVER +WHENS +WHENSOEVER +WHERE +WHEREABOUT +WHEREABOUTS +WHEREAS +WHEREASES +WHEREAT +WHEREBY +WHEREFORE +WHEREFORES +WHEREFROM +WHEREIN +WHEREINTO +WHEREOF +WHEREON +WHERES +WHERESOEVER +WHERETHROUGH +WHERETO +WHEREUNTO +WHEREUPON +WHEREVER +WHEREWITH +WHEREWITHAL +WHEREWITHALS +WHEREWITHS +WHERRIED +WHERRIES +WHERRY +WHERRYING +WHERVE +WHERVES +WHET +WHETHER +WHETS +WHETSTONE +WHETSTONES +WHETTED +WHETTER +WHETTERS +WHETTING +WHEW +WHEWS +WHEY +WHEYEY +WHEYFACE +WHEYFACED +WHEYFACES +WHEYISH +WHEYLIKE +WHEYS +WHICH +WHICHEVER +WHICHSOEVER +WHICKER +WHICKERED +WHICKERING +WHICKERS +WHID +WHIDAH +WHIDAHS +WHIDDED +WHIDDING +WHIDS +WHIFF +WHIFFED +WHIFFER +WHIFFERS +WHIFFET +WHIFFETS +WHIFFING +WHIFFLE +WHIFFLED +WHIFFLER +WHIFFLERS +WHIFFLES +WHIFFLETREE +WHIFFLETREES +WHIFFLING +WHIFFS +WHIG +WHIGMALEERIE +WHIGMALEERIES +WHIGS +WHILE +WHILED +WHILES +WHILING +WHILOM +WHILST +WHIM +WHIMBREL +WHIMBRELS +WHIMPER +WHIMPERED +WHIMPERER +WHIMPERERS +WHIMPERING +WHIMPERS +WHIMS +WHIMSEY +WHIMSEYS +WHIMSICAL +WHIMSICALITIES +WHIMSICALITY +WHIMSICALLY +WHIMSICALNESS +WHIMSICALNESSES +WHIMSIED +WHIMSIES +WHIMSY +WHIN +WHINCHAT +WHINCHATS +WHINE +WHINED +WHINER +WHINERS +WHINES +WHINEY +WHINGDING +WHINGDINGS +WHINGE +WHINGED +WHINGEING +WHINGER +WHINGERS +WHINGES +WHINGING +WHINIER +WHINIEST +WHININESS +WHININESSES +WHINING +WHININGLY +WHINNIED +WHINNIER +WHINNIES +WHINNIEST +WHINNY +WHINNYING +WHINS +WHINSTONE +WHINSTONES +WHINY +WHIP +WHIPCORD +WHIPCORDS +WHIPLASH +WHIPLASHES +WHIPLIKE +WHIPPED +WHIPPER +WHIPPERS +WHIPPERSNAPPER +WHIPPERSNAPPERS +WHIPPET +WHIPPETS +WHIPPIER +WHIPPIEST +WHIPPING +WHIPPINGS +WHIPPLETREE +WHIPPLETREES +WHIPPOORWILL +WHIPPOORWILLS +WHIPPY +WHIPRAY +WHIPRAYS +WHIPS +WHIPSAW +WHIPSAWED +WHIPSAWING +WHIPSAWN +WHIPSAWS +WHIPSNAKE +WHIPSNAKES +WHIPSTALL +WHIPSTALLS +WHIPSTITCH +WHIPSTITCHED +WHIPSTITCHES +WHIPSTITCHING +WHIPSTOCK +WHIPSTOCKS +WHIPT +WHIPTAIL +WHIPTAILS +WHIPWORM +WHIPWORMS +WHIR +WHIRL +WHIRLED +WHIRLER +WHIRLERS +WHIRLIER +WHIRLIES +WHIRLIEST +WHIRLIGIG +WHIRLIGIGS +WHIRLING +WHIRLPOOL +WHIRLPOOLS +WHIRLS +WHIRLWIND +WHIRLWINDS +WHIRLY +WHIRLYBIRD +WHIRLYBIRDS +WHIRR +WHIRRED +WHIRRIED +WHIRRIES +WHIRRING +WHIRRS +WHIRRY +WHIRRYING +WHIRS +WHISH +WHISHED +WHISHES +WHISHING +WHISHT +WHISHTED +WHISHTING +WHISHTS +WHISK +WHISKED +WHISKER +WHISKERED +WHISKERS +WHISKERY +WHISKEY +WHISKEYS +WHISKIES +WHISKING +WHISKS +WHISKY +WHISPER +WHISPERED +WHISPERER +WHISPERERS +WHISPERING +WHISPERINGLY +WHISPERINGS +WHISPERS +WHISPERY +WHIST +WHISTED +WHISTING +WHISTLE +WHISTLEABLE +WHISTLED +WHISTLER +WHISTLERS +WHISTLES +WHISTLING +WHISTLINGS +WHISTS +WHIT +WHITE +WHITEBAIT +WHITEBAITS +WHITEBEARD +WHITEBEARDS +WHITECAP +WHITECAPS +WHITECOMB +WHITECOMBS +WHITED +WHITEFACE +WHITEFACES +WHITEFISH +WHITEFISHES +WHITEFLIES +WHITEFLY +WHITEHEAD +WHITEHEADS +WHITELY +WHITEN +WHITENED +WHITENER +WHITENERS +WHITENESS +WHITENESSES +WHITENING +WHITENINGS +WHITENS +WHITEOUT +WHITEOUTS +WHITER +WHITES +WHITESMITH +WHITESMITHS +WHITEST +WHITETAIL +WHITETAILS +WHITETHROAT +WHITETHROATS +WHITEWALL +WHITEWALLS +WHITEWASH +WHITEWASHED +WHITEWASHER +WHITEWASHERS +WHITEWASHES +WHITEWASHING +WHITEWASHINGS +WHITEWING +WHITEWINGS +WHITEWOOD +WHITEWOODS +WHITEY +WHITEYS +WHITHER +WHITHERSOEVER +WHITHERWARD +WHITIER +WHITIES +WHITIEST +WHITING +WHITINGS +WHITISH +WHITLOW +WHITLOWS +WHITRACK +WHITRACKS +WHITS +WHITTER +WHITTERS +WHITTLE +WHITTLED +WHITTLER +WHITTLERS +WHITTLES +WHITTLING +WHITTLINGS +WHITTRET +WHITTRETS +WHITY +WHIZ +WHIZBANG +WHIZBANGS +WHIZZ +WHIZZBANG +WHIZZBANGS +WHIZZED +WHIZZER +WHIZZERS +WHIZZES +WHIZZIER +WHIZZIEST +WHIZZING +WHIZZY +WHO +WHOA +WHODUNIT +WHODUNITS +WHODUNNIT +WHODUNNITS +WHOEVER +WHOLE +WHOLEHEARTED +WHOLEHEARTEDLY +WHOLEMEAL +WHOLENESS +WHOLENESSES +WHOLES +WHOLESALE +WHOLESALED +WHOLESALER +WHOLESALERS +WHOLESALES +WHOLESALING +WHOLESOME +WHOLESOMELY +WHOLESOMENESS +WHOLESOMENESSES +WHOLESOMER +WHOLESOMEST +WHOLISM +WHOLISMS +WHOLISTIC +WHOLLY +WHOM +WHOMEVER +WHOMP +WHOMPED +WHOMPING +WHOMPS +WHOMSO +WHOMSOEVER +WHOOF +WHOOFED +WHOOFING +WHOOFS +WHOOP +WHOOPED +WHOOPEE +WHOOPEES +WHOOPER +WHOOPERS +WHOOPIE +WHOOPIES +WHOOPING +WHOOPLA +WHOOPLAS +WHOOPS +WHOOSH +WHOOSHED +WHOOSHES +WHOOSHING +WHOOSIS +WHOOSISES +WHOP +WHOPPED +WHOPPER +WHOPPERS +WHOPPING +WHOPS +WHORE +WHORED +WHOREDOM +WHOREDOMS +WHOREHOUSE +WHOREHOUSES +WHOREMASTER +WHOREMASTERS +WHOREMONGER +WHOREMONGERS +WHORES +WHORESON +WHORESONS +WHORING +WHORISH +WHORISHLY +WHORL +WHORLED +WHORLS +WHORT +WHORTLE +WHORTLEBERRIES +WHORTLEBERRY +WHORTLES +WHORTS +WHOSE +WHOSESOEVER +WHOSEVER +WHOSIS +WHOSISES +WHOSO +WHOSOEVER +WHUMP +WHUMPED +WHUMPING +WHUMPS +WHUP +WHUPPED +WHUPPING +WHUPS +WHY +WHYDAH +WHYDAHS +WHYS +WICCA +WICCAN +WICCANS +WICCAS +WICH +WICHES +WICK +WICKAPE +WICKAPES +WICKED +WICKEDER +WICKEDEST +WICKEDLY +WICKEDNESS +WICKEDNESSES +WICKER +WICKERS +WICKERWORK +WICKERWORKS +WICKET +WICKETS +WICKING +WICKINGS +WICKIUP +WICKIUPS +WICKLESS +WICKS +WICKYUP +WICKYUPS +WICOPIES +WICOPY +WIDDER +WIDDERS +WIDDERSHINS +WIDDIE +WIDDIES +WIDDLE +WIDDLED +WIDDLES +WIDDLING +WIDDY +WIDE +WIDEAWAKE +WIDEAWAKES +WIDEBAND +WIDEBODIES +WIDEBODY +WIDELY +WIDEMOUTHED +WIDEN +WIDENED +WIDENER +WIDENERS +WIDENESS +WIDENESSES +WIDENING +WIDENS +WIDEOUT +WIDEOUTS +WIDER +WIDES +WIDESPREAD +WIDEST +WIDGEON +WIDGEONS +WIDGET +WIDGETS +WIDISH +WIDOW +WIDOWBIRD +WIDOWBIRDS +WIDOWED +WIDOWER +WIDOWERED +WIDOWERHOOD +WIDOWERHOODS +WIDOWERS +WIDOWHOOD +WIDOWHOODS +WIDOWING +WIDOWS +WIDTH +WIDTHS +WIDTHWAY +WIDTHWAYS +WIDTHWISE +WIELD +WIELDABLE +WIELDED +WIELDER +WIELDERS +WIELDIER +WIELDIEST +WIELDING +WIELDS +WIELDY +WIENER +WIENERS +WIENERWURST +WIENERWURSTS +WIENIE +WIENIES +WIFE +WIFED +WIFEDOM +WIFEDOMS +WIFEHOOD +WIFEHOODS +WIFELESS +WIFELIER +WIFELIEST +WIFELIKE +WIFELINESS +WIFELINESSES +WIFELY +WIFES +WIFEY +WIFEYS +WIFING +WIFTIER +WIFTIEST +WIFTY +WIG +WIGAN +WIGANS +WIGEON +WIGEONS +WIGGED +WIGGERIES +WIGGERY +WIGGIER +WIGGIEST +WIGGING +WIGGINGS +WIGGLE +WIGGLED +WIGGLER +WIGGLERS +WIGGLES +WIGGLIER +WIGGLIEST +WIGGLING +WIGGLY +WIGGY +WIGHT +WIGHTS +WIGLESS +WIGLET +WIGLETS +WIGLIKE +WIGMAKER +WIGMAKERS +WIGS +WIGWAG +WIGWAGGED +WIGWAGGER +WIGWAGGERS +WIGWAGGING +WIGWAGS +WIGWAM +WIGWAMS +WIKIUP +WIKIUPS +WILCO +WILD +WILDCARD +WILDCARDS +WILDCAT +WILDCATS +WILDCATTED +WILDCATTER +WILDCATTERS +WILDCATTING +WILDEBEEST +WILDEBEESTS +WILDED +WILDER +WILDERED +WILDERING +WILDERMENT +WILDERMENTS +WILDERNESS +WILDERNESSES +WILDERS +WILDEST +WILDFIRE +WILDFIRES +WILDFLOWER +WILDFLOWERS +WILDFOWL +WILDFOWLER +WILDFOWLERS +WILDFOWLING +WILDFOWLINGS +WILDFOWLS +WILDING +WILDINGS +WILDISH +WILDLAND +WILDLANDS +WILDLIFE +WILDLING +WILDLINGS +WILDLY +WILDNESS +WILDNESSES +WILDS +WILDWOOD +WILDWOODS +WILE +WILED +WILES +WILFUL +WILFULLY +WILIER +WILIEST +WILILY +WILINESS +WILINESSES +WILING +WILL +WILLABLE +WILLED +WILLEMITE +WILLEMITES +WILLER +WILLERS +WILLET +WILLETS +WILLFUL +WILLFULLY +WILLFULNESS +WILLFULNESSES +WILLIE +WILLIED +WILLIES +WILLING +WILLINGER +WILLINGEST +WILLINGLY +WILLINGNESS +WILLINGNESSES +WILLIWAU +WILLIWAUS +WILLIWAW +WILLIWAWS +WILLOW +WILLOWED +WILLOWER +WILLOWERS +WILLOWIER +WILLOWIEST +WILLOWING +WILLOWLIKE +WILLOWS +WILLOWWARE +WILLOWWARES +WILLOWY +WILLPOWER +WILLPOWERS +WILLS +WILLY +WILLYARD +WILLYART +WILLYING +WILLYWAW +WILLYWAWS +WILT +WILTED +WILTING +WILTS +WILY +WIMBLE +WIMBLED +WIMBLES +WIMBLING +WIMMIN +WIMP +WIMPED +WIMPIER +WIMPIEST +WIMPINESS +WIMPINESSES +WIMPING +WIMPISH +WIMPISHNESS +WIMPISHNESSES +WIMPLE +WIMPLED +WIMPLES +WIMPLING +WIMPS +WIMPY +WIN +WINCE +WINCED +WINCER +WINCERS +WINCES +WINCEY +WINCEYS +WINCH +WINCHED +WINCHER +WINCHERS +WINCHES +WINCHING +WINCING +WIND +WINDABLE +WINDAGE +WINDAGES +WINDBAG +WINDBAGS +WINDBELL +WINDBELLS +WINDBLAST +WINDBLASTS +WINDBLOWN +WINDBREAK +WINDBREAKER +WINDBREAKERS +WINDBREAKS +WINDBURN +WINDBURNED +WINDBURNING +WINDBURNS +WINDBURNT +WINDCHILL +WINDCHILLS +WINDED +WINDER +WINDERS +WINDFALL +WINDFALLS +WINDFLAW +WINDFLAWS +WINDFLOWER +WINDFLOWERS +WINDGALL +WINDGALLS +WINDHOVER +WINDHOVERS +WINDIER +WINDIEST +WINDIGO +WINDIGOS +WINDILY +WINDINESS +WINDINESSES +WINDING +WINDINGLY +WINDINGS +WINDJAMMER +WINDJAMMERS +WINDJAMMING +WINDJAMMINGS +WINDLASS +WINDLASSED +WINDLASSES +WINDLASSING +WINDLE +WINDLED +WINDLES +WINDLESS +WINDLESSLY +WINDLESTRAW +WINDLESTRAWS +WINDLING +WINDLINGS +WINDMILL +WINDMILLED +WINDMILLING +WINDMILLS +WINDOW +WINDOWED +WINDOWING +WINDOWLESS +WINDOWPANE +WINDOWPANES +WINDOWS +WINDOWSILL +WINDOWSILLS +WINDOWY +WINDPIPE +WINDPIPES +WINDPROOF +WINDROW +WINDROWED +WINDROWER +WINDROWERS +WINDROWING +WINDROWS +WINDS +WINDSCREEN +WINDSCREENS +WINDSHIELD +WINDSHIELDS +WINDSOCK +WINDSOCKS +WINDSTORM +WINDSTORMS +WINDSURF +WINDSURFED +WINDSURFING +WINDSURFINGS +WINDSURFS +WINDSWEPT +WINDTHROW +WINDTHROWS +WINDUP +WINDUPS +WINDWARD +WINDWARDS +WINDWAY +WINDWAYS +WINDY +WINE +WINED +WINEGLASS +WINEGLASSES +WINEGROWER +WINEGROWERS +WINELESS +WINEMAKER +WINEMAKERS +WINEPRESS +WINEPRESSES +WINERIES +WINERY +WINES +WINESAP +WINESAPS +WINESHOP +WINESHOPS +WINESKIN +WINESKINS +WINESOP +WINESOPS +WINEY +WING +WINGBACK +WINGBACKS +WINGBOW +WINGBOWS +WINGCHAIR +WINGCHAIRS +WINGDING +WINGDINGS +WINGED +WINGEDLY +WINGER +WINGERS +WINGIER +WINGIEST +WINGING +WINGLESS +WINGLESSNESS +WINGLESSNESSES +WINGLET +WINGLETS +WINGLIKE +WINGMAN +WINGMEN +WINGOVER +WINGOVERS +WINGS +WINGSPAN +WINGSPANS +WINGSPREAD +WINGSPREADS +WINGTIP +WINGTIPS +WINGY +WINIER +WINIEST +WINING +WINISH +WINK +WINKED +WINKER +WINKERS +WINKING +WINKINGLY +WINKLE +WINKLED +WINKLES +WINKLING +WINKS +WINLESS +WINNABLE +WINNED +WINNER +WINNERS +WINNING +WINNINGLY +WINNINGS +WINNOCK +WINNOCKS +WINNOW +WINNOWED +WINNOWER +WINNOWERS +WINNOWING +WINNOWS +WINO +WINOES +WINOS +WINS +WINSOME +WINSOMELY +WINSOMENESS +WINSOMENESSES +WINSOMER +WINSOMEST +WINTER +WINTERBERRIES +WINTERBERRY +WINTERED +WINTERER +WINTERERS +WINTERFED +WINTERFEED +WINTERFEEDING +WINTERFEEDS +WINTERGREEN +WINTERGREENS +WINTERIER +WINTERIEST +WINTERING +WINTERISH +WINTERIZATION +WINTERIZATIONS +WINTERIZE +WINTERIZED +WINTERIZES +WINTERIZING +WINTERKILL +WINTERKILLS +WINTERLY +WINTERS +WINTERTIDE +WINTERTIDES +WINTERTIME +WINTERTIMES +WINTERY +WINTLE +WINTLED +WINTLES +WINTLING +WINTRIER +WINTRIEST +WINTRILY +WINTRINESS +WINTRINESSES +WINTRY +WINY +WINZE +WINZES +WIPE +WIPED +WIPEOUT +WIPEOUTS +WIPER +WIPERS +WIPES +WIPING +WIRABLE +WIRE +WIRED +WIREDRAW +WIREDRAWER +WIREDRAWERS +WIREDRAWING +WIREDRAWN +WIREDRAWS +WIREDREW +WIREGRASS +WIREGRASSES +WIREHAIR +WIREHAIRED +WIREHAIRS +WIRELESS +WIRELESSED +WIRELESSES +WIRELESSING +WIRELIKE +WIREMAN +WIREMEN +WIREPHOTO +WIREPHOTOS +WIRER +WIRERS +WIRES +WIRETAP +WIRETAPPED +WIRETAPPER +WIRETAPPERS +WIRETAPPING +WIRETAPS +WIREWAY +WIREWAYS +WIREWORK +WIREWORKS +WIREWORM +WIREWORMS +WIRIER +WIRIEST +WIRILY +WIRINESS +WIRINESSES +WIRING +WIRINGS +WIRRA +WIRY +WIS +WISDOM +WISDOMS +WISE +WISEACRE +WISEACRES +WISEASS +WISEASSES +WISECRACK +WISECRACKED +WISECRACKER +WISECRACKERS +WISECRACKING +WISECRACKS +WISED +WISEGUY +WISEGUYS +WISELIER +WISELIEST +WISELY +WISENESS +WISENESSES +WISENHEIMER +WISENHEIMERS +WISENT +WISENTS +WISER +WISES +WISEST +WISEWOMAN +WISEWOMEN +WISH +WISHA +WISHBONE +WISHBONES +WISHED +WISHER +WISHERS +WISHES +WISHFUL +WISHFULLY +WISHFULNESS +WISHFULNESSES +WISHING +WISHLESS +WISING +WISP +WISPED +WISPIER +WISPIEST +WISPILY +WISPINESS +WISPINESSES +WISPING +WISPISH +WISPLIKE +WISPS +WISPY +WISS +WISSED +WISSES +WISSING +WIST +WISTARIA +WISTARIAS +WISTED +WISTERIA +WISTERIAS +WISTFUL +WISTFULLY +WISTFULNESS +WISTFULNESSES +WISTING +WISTS +WIT +WITAN +WITANS +WITCH +WITCHCRAFT +WITCHCRAFTS +WITCHED +WITCHERIES +WITCHERY +WITCHES +WITCHGRASS +WITCHGRASSES +WITCHHOOD +WITCHHOODS +WITCHIER +WITCHIEST +WITCHING +WITCHINGS +WITCHLIKE +WITCHWEED +WITCHWEEDS +WITCHY +WITE +WITED +WITENAGEMOT +WITENAGEMOTE +WITENAGEMOTES +WITENAGEMOTS +WITES +WITH +WITHAL +WITHDRAW +WITHDRAWABLE +WITHDRAWAL +WITHDRAWALS +WITHDRAWING +WITHDRAWN +WITHDRAWNNESS +WITHDRAWNNESSES +WITHDRAWS +WITHDREW +WITHE +WITHED +WITHER +WITHERED +WITHERER +WITHERERS +WITHERING +WITHERINGLY +WITHERITE +WITHERITES +WITHEROD +WITHERODS +WITHERS +WITHERSHINS +WITHES +WITHHELD +WITHHOLD +WITHHOLDER +WITHHOLDERS +WITHHOLDING +WITHHOLDS +WITHIER +WITHIES +WITHIEST +WITHIN +WITHINDOORS +WITHING +WITHINS +WITHOUT +WITHOUTDOORS +WITHOUTS +WITHSTAND +WITHSTANDING +WITHSTANDS +WITHSTOOD +WITHY +WITING +WITLESS +WITLESSLY +WITLESSNESS +WITLESSNESSES +WITLING +WITLINGS +WITLOOF +WITLOOFS +WITNESS +WITNESSED +WITNESSER +WITNESSERS +WITNESSES +WITNESSING +WITNEY +WITNEYS +WITS +WITTED +WITTICISM +WITTICISMS +WITTIER +WITTIEST +WITTILY +WITTINESS +WITTINESSES +WITTING +WITTINGLY +WITTINGS +WITTOL +WITTOLS +WITTY +WIVE +WIVED +WIVER +WIVERN +WIVERNS +WIVERS +WIVES +WIVING +WIZ +WIZARD +WIZARDLY +WIZARDRIES +WIZARDRY +WIZARDS +WIZEN +WIZENED +WIZENING +WIZENS +WIZES +WIZZEN +WIZZENS +WIZZES +WO +WOAD +WOADED +WOADS +WOADWAX +WOADWAXEN +WOADWAXENS +WOADWAXES +WOALD +WOALDS +WOBBLE +WOBBLED +WOBBLER +WOBBLERS +WOBBLES +WOBBLIER +WOBBLIES +WOBBLIEST +WOBBLINESS +WOBBLINESSES +WOBBLING +WOBBLY +WOBEGONE +WODGE +WODGES +WOE +WOEBEGONE +WOEBEGONENESS +WOEBEGONENESSES +WOEFUL +WOEFULLER +WOEFULLEST +WOEFULLY +WOEFULNESS +WOEFULNESSES +WOENESS +WOENESSES +WOES +WOESOME +WOFUL +WOFULLER +WOFULLEST +WOFULLY +WOG +WOGGISH +WOGS +WOK +WOKE +WOKEN +WOKS +WOLD +WOLDS +WOLF +WOLFBERRIES +WOLFBERRY +WOLFED +WOLFER +WOLFERS +WOLFFISH +WOLFFISHES +WOLFHOUND +WOLFHOUNDS +WOLFING +WOLFISH +WOLFISHLY +WOLFISHNESS +WOLFISHNESSES +WOLFLIKE +WOLFRAM +WOLFRAMITE +WOLFRAMITES +WOLFRAMS +WOLFS +WOLFSBANE +WOLFSBANES +WOLLASTONITE +WOLLASTONITES +WOLVER +WOLVERINE +WOLVERINES +WOLVERS +WOLVES +WOMAN +WOMANED +WOMANHOOD +WOMANHOODS +WOMANING +WOMANISE +WOMANISED +WOMANISES +WOMANISH +WOMANISHLY +WOMANISHNESS +WOMANISHNESSES +WOMANISING +WOMANISM +WOMANISMS +WOMANIST +WOMANISTS +WOMANIZE +WOMANIZED +WOMANIZER +WOMANIZERS +WOMANIZES +WOMANIZING +WOMANKIND +WOMANLESS +WOMANLIER +WOMANLIEST +WOMANLIKE +WOMANLINESS +WOMANLINESSES +WOMANLY +WOMANNESS +WOMANNESSES +WOMANPOWER +WOMANPOWERS +WOMANS +WOMB +WOMBAT +WOMBATS +WOMBED +WOMBIER +WOMBIEST +WOMBS +WOMBY +WOMEN +WOMENFOLK +WOMENFOLKS +WOMENKIND +WOMERA +WOMERAS +WOMMERA +WOMMERAS +WOMYN +WON +WONDER +WONDERED +WONDERER +WONDERERS +WONDERFUL +WONDERFULLY +WONDERFULNESS +WONDERFULNESSES +WONDERING +WONDERLAND +WONDERLANDS +WONDERMENT +WONDERMENTS +WONDERS +WONDERWORK +WONDERWORKS +WONDROUS +WONDROUSLY +WONDROUSNESS +WONDROUSNESSES +WONK +WONKIER +WONKIEST +WONKS +WONKY +WONNED +WONNER +WONNERS +WONNING +WONS +WONT +WONTED +WONTEDLY +WONTEDNESS +WONTEDNESSES +WONTING +WONTON +WONTONS +WONTS +WOO +WOOD +WOODBIN +WOODBIND +WOODBINDS +WOODBINE +WOODBINES +WOODBINS +WOODBLOCK +WOODBLOCKS +WOODBORER +WOODBORERS +WOODBOX +WOODBOXES +WOODCHAT +WOODCHATS +WOODCHOPPER +WOODCHOPPERS +WOODCHUCK +WOODCHUCKS +WOODCOCK +WOODCOCKS +WOODCRAFT +WOODCRAFTS +WOODCUT +WOODCUTS +WOODCUTTER +WOODCUTTERS +WOODCUTTING +WOODCUTTINGS +WOODED +WOODEN +WOODENER +WOODENEST +WOODENHEAD +WOODENHEADED +WOODENHEADS +WOODENLY +WOODENNESS +WOODENNESSES +WOODENWARE +WOODENWARES +WOODGRAIN +WOODGRAINS +WOODHEN +WOODHENS +WOODIE +WOODIER +WOODIES +WOODIEST +WOODINESS +WOODINESSES +WOODING +WOODLAND +WOODLANDER +WOODLANDERS +WOODLANDS +WOODLARK +WOODLARKS +WOODLESS +WOODLORE +WOODLORES +WOODLOT +WOODLOTS +WOODMAN +WOODMEN +WOODNOTE +WOODNOTES +WOODPECKER +WOODPECKERS +WOODPILE +WOODPILES +WOODRUFF +WOODRUFFS +WOODS +WOODSHED +WOODSHEDDED +WOODSHEDDING +WOODSHEDS +WOODSIA +WOODSIAS +WOODSIER +WOODSIEST +WOODSMAN +WOODSMEN +WOODSTOVE +WOODSTOVES +WOODSY +WOODTONE +WOODTONES +WOODWAX +WOODWAXEN +WOODWAXENS +WOODWAXES +WOODWIND +WOODWINDS +WOODWORK +WOODWORKER +WOODWORKERS +WOODWORKING +WOODWORKINGS +WOODWORKS +WOODWORM +WOODWORMS +WOODY +WOOED +WOOER +WOOERS +WOOF +WOOFED +WOOFER +WOOFERS +WOOFING +WOOFS +WOOING +WOOINGLY +WOOL +WOOLED +WOOLEN +WOOLENS +WOOLER +WOOLERS +WOOLFELL +WOOLFELLS +WOOLGATHERER +WOOLGATHERERS +WOOLGATHERING +WOOLGATHERINGS +WOOLHAT +WOOLHATS +WOOLIE +WOOLIER +WOOLIES +WOOLIEST +WOOLINESS +WOOLINESSES +WOOLLED +WOOLLEN +WOOLLENS +WOOLLIER +WOOLLIES +WOOLLIEST +WOOLLIKE +WOOLLILY +WOOLLINESS +WOOLLINESSES +WOOLLY +WOOLMAN +WOOLMEN +WOOLPACK +WOOLPACKS +WOOLS +WOOLSACK +WOOLSACKS +WOOLSHED +WOOLSHEDS +WOOLSKIN +WOOLSKINS +WOOLWORK +WOOLWORKS +WOOLY +WOOMERA +WOOMERAS +WOOPS +WOOPSED +WOOPSES +WOOPSING +WOORALI +WOORALIS +WOORARI +WOORARIS +WOOS +WOOSH +WOOSHED +WOOSHES +WOOSHING +WOOZIER +WOOZIEST +WOOZILY +WOOZINESS +WOOZINESSES +WOOZY +WOP +WOPS +WORD +WORDAGE +WORDAGES +WORDBOOK +WORDBOOKS +WORDED +WORDIER +WORDIEST +WORDILY +WORDINESS +WORDINESSES +WORDING +WORDINGS +WORDLESS +WORDLESSLY +WORDLESSNESS +WORDLESSNESSES +WORDMONGER +WORDMONGERS +WORDPLAY +WORDPLAYS +WORDS +WORDSMITH +WORDSMITHERIES +WORDSMITHERY +WORDSMITHS +WORDY +WORE +WORK +WORKABILITIES +WORKABILITY +WORKABLE +WORKABLENESS +WORKABLENESSES +WORKABLY +WORKADAY +WORKAHOLIC +WORKAHOLICS +WORKAHOLISM +WORKAHOLISMS +WORKBAG +WORKBAGS +WORKBASKET +WORKBASKETS +WORKBENCH +WORKBENCHES +WORKBOAT +WORKBOATS +WORKBOOK +WORKBOOKS +WORKBOX +WORKBOXES +WORKDAY +WORKDAYS +WORKED +WORKER +WORKERS +WORKFARE +WORKFARES +WORKFLOW +WORKFLOWS +WORKFOLK +WORKFOLKS +WORKFORCE +WORKFORCES +WORKHORSE +WORKHORSES +WORKHOUR +WORKHOURS +WORKHOUSE +WORKHOUSES +WORKING +WORKINGMAN +WORKINGMEN +WORKINGS +WORKINGWOMAN +WORKINGWOMEN +WORKLESS +WORKLESSNESS +WORKLESSNESSES +WORKLOAD +WORKLOADS +WORKMAN +WORKMANLIKE +WORKMANLY +WORKMANSHIP +WORKMANSHIPS +WORKMATE +WORKMATES +WORKMEN +WORKOUT +WORKOUTS +WORKPEOPLE +WORKPIECE +WORKPIECES +WORKPLACE +WORKPLACES +WORKPRINT +WORKPRINTS +WORKROOM +WORKROOMS +WORKS +WORKSHEET +WORKSHEETS +WORKSHOP +WORKSHOPS +WORKSPACE +WORKSPACES +WORKSTATION +WORKSTATIONS +WORKTABLE +WORKTABLES +WORKUP +WORKUPS +WORKWEEK +WORKWEEKS +WORKWOMAN +WORKWOMEN +WORLD +WORLDBEAT +WORLDBEATS +WORLDLIER +WORLDLIEST +WORLDLINESS +WORLDLINESSES +WORLDLING +WORLDLINGS +WORLDLY +WORLDS +WORLDVIEW +WORLDVIEWS +WORLDWIDE +WORM +WORMED +WORMER +WORMERS +WORMGEAR +WORMGEARS +WORMHOLE +WORMHOLES +WORMIER +WORMIEST +WORMIL +WORMILS +WORMINESS +WORMINESSES +WORMING +WORMISH +WORMLIKE +WORMROOT +WORMROOTS +WORMS +WORMSEED +WORMSEEDS +WORMWOOD +WORMWOODS +WORMY +WORN +WORNNESS +WORNNESSES +WORRIED +WORRIEDLY +WORRIER +WORRIERS +WORRIES +WORRIMENT +WORRIMENTS +WORRISOME +WORRISOMELY +WORRISOMENESS +WORRISOMENESSES +WORRIT +WORRITED +WORRITING +WORRITS +WORRY +WORRYING +WORRYWART +WORRYWARTS +WORSE +WORSEN +WORSENED +WORSENING +WORSENS +WORSER +WORSES +WORSET +WORSETS +WORSHIP +WORSHIPED +WORSHIPER +WORSHIPERS +WORSHIPFUL +WORSHIPFULLY +WORSHIPFULNESS +WORSHIPING +WORSHIPLESS +WORSHIPPED +WORSHIPPER +WORSHIPPERS +WORSHIPPING +WORSHIPS +WORST +WORSTED +WORSTEDS +WORSTING +WORSTS +WORT +WORTH +WORTHED +WORTHFUL +WORTHIER +WORTHIES +WORTHIEST +WORTHILY +WORTHINESS +WORTHINESSES +WORTHING +WORTHLESS +WORTHLESSLY +WORTHLESSNESS +WORTHLESSNESSES +WORTHS +WORTHWHILE +WORTHWHILENESS +WORTHY +WORTS +WOS +WOST +WOT +WOTS +WOTTED +WOTTING +WOULD +WOULDEST +WOULDST +WOUND +WOUNDED +WOUNDEDLY +WOUNDING +WOUNDLESS +WOUNDS +WOUNDWORT +WOUNDWORTS +WOVE +WOVEN +WOVENS +WOW +WOWED +WOWING +WOWS +WOWSER +WOWSERS +WRACK +WRACKED +WRACKFUL +WRACKING +WRACKS +WRAITH +WRAITHLIKE +WRAITHS +WRANG +WRANGLE +WRANGLED +WRANGLER +WRANGLERS +WRANGLES +WRANGLING +WRANGS +WRAP +WRAPAROUND +WRAPAROUNDS +WRAPPED +WRAPPER +WRAPPERS +WRAPPING +WRAPPINGS +WRAPS +WRAPT +WRASSE +WRASSES +WRASSLE +WRASSLED +WRASSLES +WRASSLING +WRASTLE +WRASTLED +WRASTLES +WRASTLING +WRATH +WRATHED +WRATHFUL +WRATHFULLY +WRATHFULNESS +WRATHFULNESSES +WRATHIER +WRATHIEST +WRATHILY +WRATHING +WRATHS +WRATHY +WREAK +WREAKED +WREAKER +WREAKERS +WREAKING +WREAKS +WREATH +WREATHE +WREATHED +WREATHEN +WREATHER +WREATHERS +WREATHES +WREATHING +WREATHS +WREATHY +WRECK +WRECKAGE +WRECKAGES +WRECKED +WRECKER +WRECKERS +WRECKFUL +WRECKING +WRECKINGS +WRECKS +WREN +WRENCH +WRENCHED +WRENCHER +WRENCHERS +WRENCHES +WRENCHING +WRENCHINGLY +WRENS +WREST +WRESTED +WRESTER +WRESTERS +WRESTING +WRESTLE +WRESTLED +WRESTLER +WRESTLERS +WRESTLES +WRESTLING +WRESTLINGS +WRESTS +WRETCH +WRETCHED +WRETCHEDER +WRETCHEDEST +WRETCHEDLY +WRETCHEDNESS +WRETCHEDNESSES +WRETCHES +WRICK +WRICKED +WRICKING +WRICKS +WRIED +WRIER +WRIES +WRIEST +WRIGGLE +WRIGGLED +WRIGGLER +WRIGGLERS +WRIGGLES +WRIGGLIER +WRIGGLIEST +WRIGGLING +WRIGGLY +WRIGHT +WRIGHTS +WRING +WRINGED +WRINGER +WRINGERS +WRINGING +WRINGS +WRINKLE +WRINKLED +WRINKLES +WRINKLIER +WRINKLIEST +WRINKLING +WRINKLY +WRIST +WRISTBAND +WRISTBANDS +WRISTIER +WRISTIEST +WRISTLET +WRISTLETS +WRISTLOCK +WRISTLOCKS +WRISTS +WRISTWATCH +WRISTWATCHES +WRISTY +WRIT +WRITABLE +WRITE +WRITEABLE +WRITER +WRITERLY +WRITERS +WRITES +WRITHE +WRITHED +WRITHEN +WRITHER +WRITHERS +WRITHES +WRITHING +WRITING +WRITINGS +WRITS +WRITTEN +WRONG +WRONGDOER +WRONGDOERS +WRONGDOING +WRONGDOINGS +WRONGED +WRONGER +WRONGERS +WRONGEST +WRONGFUL +WRONGFULLY +WRONGFULNESS +WRONGFULNESSES +WRONGHEADED +WRONGHEADEDLY +WRONGHEADEDNESS +WRONGING +WRONGLY +WRONGNESS +WRONGNESSES +WRONGS +WROTE +WROTH +WROTHFUL +WROUGHT +WRUNG +WRY +WRYER +WRYEST +WRYING +WRYLY +WRYNECK +WRYNECKS +WRYNESS +WRYNESSES +WUD +WULFENITE +WULFENITES +WUNDERKIND +WUNDERKINDER +WURST +WURSTS +WURTZITE +WURTZITES +WURZEL +WURZELS +WUSHU +WUSS +WUSSES +WUSSIER +WUSSIES +WUSSIEST +WUSSY +WUTHER +WUTHERED +WUTHERING +WUTHERS +WYANDOTTE +WYANDOTTES +WYCH +WYCHES +WYE +WYES +WYLE +WYLED +WYLES +WYLIECOAT +WYLIECOATS +WYLING +WYN +WYND +WYNDS +WYNN +WYNNS +WYNS +WYTE +WYTED +WYTES +WYTING +WYVERN +WYVERNS +XANTHAN +XANTHANS +XANTHATE +XANTHATES +XANTHEIN +XANTHEINS +XANTHENE +XANTHENES +XANTHIC +XANTHIN +XANTHINE +XANTHINES +XANTHINS +XANTHOMA +XANTHOMAS +XANTHOMATA +XANTHONE +XANTHONES +XANTHOPHYLL +XANTHOPHYLLS +XANTHOUS +XEBEC +XEBECS +XENIA +XENIAL +XENIAS +XENIC +XENOBIOTIC +XENOBIOTICS +XENOBLAST +XENOBLASTS +XENOCRYST +XENOCRYSTS +XENODIAGNOSES +XENODIAGNOSIS +XENODIAGNOSTIC +XENOGAMIES +XENOGAMY +XENOGENEIC +XENOGENIC +XENOGENIES +XENOGENY +XENOGRAFT +XENOGRAFTS +XENOLITH +XENOLITHIC +XENOLITHS +XENON +XENONS +XENOPHILE +XENOPHILES +XENOPHOBE +XENOPHOBES +XENOPHOBIA +XENOPHOBIAS +XENOPHOBIC +XENOPHOBICALLY +XENOPUS +XENOPUSES +XENOTROPIC +XERARCH +XERIC +XERICALLY +XERISCAPE +XERISCAPES +XERODERMA +XERODERMAE +XERODERMAS +XEROGRAPHIC +XEROGRAPHICALLY +XEROGRAPHIES +XEROGRAPHY +XEROPHILE +XEROPHILIES +XEROPHILOUS +XEROPHILY +XEROPHTHALMIA +XEROPHTHALMIAS +XEROPHTHALMIC +XEROPHYTE +XEROPHYTES +XEROPHYTIC +XEROPHYTISM +XEROPHYTISMS +XERORADIOGRAPHY +XEROSERE +XEROSERES +XEROSES +XEROSIS +XEROTHERMIC +XEROTIC +XEROX +XEROXED +XEROXES +XEROXING +XERUS +XERUSES +XI +XIPHISTERNA +XIPHISTERNUM +XIPHOID +XIPHOIDS +XIS +XU +XYLAN +XYLANS +XYLEM +XYLEMS +XYLENE +XYLENES +XYLIDIN +XYLIDINE +XYLIDINES +XYLIDINS +XYLITOL +XYLITOLS +XYLOCARP +XYLOCARPS +XYLOGRAPH +XYLOGRAPHED +XYLOGRAPHER +XYLOGRAPHERS +XYLOGRAPHIC +XYLOGRAPHICAL +XYLOGRAPHIES +XYLOGRAPHING +XYLOGRAPHS +XYLOGRAPHY +XYLOID +XYLOL +XYLOLS +XYLOPHAGE +XYLOPHAGES +XYLOPHAGOUS +XYLOPHONE +XYLOPHONES +XYLOPHONIST +XYLOPHONISTS +XYLOSE +XYLOSES +XYLOTOMIES +XYLOTOMY +XYLYL +XYLYLS +XYST +XYSTER +XYSTERS +XYSTI +XYSTOI +XYSTOS +XYSTS +XYSTUS +YA +YABBER +YABBERED +YABBERING +YABBERS +YABBIE +YABBIES +YABBY +YACHT +YACHTED +YACHTER +YACHTERS +YACHTING +YACHTINGS +YACHTMAN +YACHTMEN +YACHTS +YACHTSMAN +YACHTSMEN +YACK +YACKED +YACKING +YACKS +YAFF +YAFFED +YAFFING +YAFFS +YAG +YAGER +YAGERS +YAGI +YAGIS +YAGS +YAH +YAHOO +YAHOOISM +YAHOOISMS +YAHOOS +YAHRZEIT +YAHRZEITS +YAIRD +YAIRDS +YAK +YAKITORI +YAKITORIS +YAKKED +YAKKER +YAKKERS +YAKKING +YAKS +YAKUZA +YALD +YAM +YAMALKA +YAMALKAS +YAMEN +YAMENS +YAMMER +YAMMERED +YAMMERER +YAMMERERS +YAMMERING +YAMMERS +YAMS +YAMULKA +YAMULKAS +YAMUN +YAMUNS +YANG +YANGS +YANK +YANKED +YANKING +YANKS +YANQUI +YANQUIS +YANTRA +YANTRAS +YAP +YAPOCK +YAPOCKS +YAPOK +YAPOKS +YAPON +YAPONS +YAPPED +YAPPER +YAPPERS +YAPPING +YAPPINGLY +YAPS +YAR +YARD +YARDAGE +YARDAGES +YARDARM +YARDARMS +YARDBIRD +YARDBIRDS +YARDED +YARDER +YARDERS +YARDING +YARDLAND +YARDLANDS +YARDMAN +YARDMASTER +YARDMASTERS +YARDMEN +YARDS +YARDSTICK +YARDSTICKS +YARDWAND +YARDWANDS +YARDWORK +YARDWORKS +YARE +YARELY +YARER +YAREST +YARMELKE +YARMELKES +YARMULKE +YARMULKES +YARN +YARNED +YARNER +YARNERS +YARNING +YARNS +YARROW +YARROWS +YASHMAC +YASHMACS +YASHMAK +YASHMAKS +YASMAK +YASMAKS +YATAGAN +YATAGANS +YATAGHAN +YATAGHANS +YATTER +YATTERED +YATTERING +YATTERS +YAUD +YAUDS +YAULD +YAUP +YAUPED +YAUPER +YAUPERS +YAUPING +YAUPON +YAUPONS +YAUPS +YAUTIA +YAUTIAS +YAW +YAWED +YAWEY +YAWING +YAWL +YAWLED +YAWLING +YAWLS +YAWMETER +YAWMETERS +YAWN +YAWNED +YAWNER +YAWNERS +YAWNING +YAWNINGLY +YAWNS +YAWP +YAWPED +YAWPER +YAWPERS +YAWPING +YAWPINGS +YAWPS +YAWS +YAY +YAYS +YCLAD +YCLEPED +YCLEPT +YE +YEA +YEAH +YEAHS +YEALING +YEALINGS +YEAN +YEANED +YEANING +YEANLING +YEANLINGS +YEANS +YEAR +YEARBOOK +YEARBOOKS +YEAREND +YEARENDS +YEARLIES +YEARLING +YEARLINGS +YEARLONG +YEARLY +YEARN +YEARNED +YEARNER +YEARNERS +YEARNING +YEARNINGLY +YEARNINGS +YEARNS +YEARS +YEAS +YEASAYER +YEASAYERS +YEAST +YEASTED +YEASTIER +YEASTIEST +YEASTILY +YEASTINESS +YEASTINESSES +YEASTING +YEASTLESS +YEASTLIKE +YEASTS +YEASTY +YECCH +YECCHS +YECH +YECHS +YECHY +YEELIN +YEELINS +YEGG +YEGGMAN +YEGGMEN +YEGGS +YEH +YELD +YELK +YELKS +YELL +YELLED +YELLER +YELLERS +YELLING +YELLOW +YELLOWED +YELLOWER +YELLOWEST +YELLOWFIN +YELLOWFINS +YELLOWHAMMER +YELLOWHAMMERS +YELLOWING +YELLOWISH +YELLOWLEGS +YELLOWLY +YELLOWS +YELLOWTAIL +YELLOWTAILS +YELLOWTHROAT +YELLOWTHROATS +YELLOWWARE +YELLOWWARES +YELLOWWOOD +YELLOWWOODS +YELLOWY +YELLS +YELP +YELPED +YELPER +YELPERS +YELPING +YELPS +YEN +YENNED +YENNING +YENS +YENTA +YENTAS +YENTE +YENTES +YEOMAN +YEOMANLY +YEOMANRIES +YEOMANRY +YEOMEN +YEP +YEPS +YERBA +YERBAS +YERK +YERKED +YERKING +YERKS +YES +YESES +YESHIVA +YESHIVAH +YESHIVAHS +YESHIVAS +YESHIVOT +YESHIVOTH +YESSED +YESSES +YESSING +YESTER +YESTERDAY +YESTERDAYS +YESTEREVE +YESTEREVES +YESTERN +YESTERNIGHT +YESTERNIGHTS +YESTERYEAR +YESTERYEARS +YESTREEN +YESTREENS +YET +YETI +YETIS +YETT +YETTS +YEUK +YEUKED +YEUKING +YEUKS +YEUKY +YEW +YEWS +YID +YIDS +YIELD +YIELDABLE +YIELDED +YIELDER +YIELDERS +YIELDING +YIELDS +YIKES +YILL +YILLS +YIN +YINCE +YINS +YIP +YIPE +YIPES +YIPPED +YIPPEE +YIPPIE +YIPPIES +YIPPING +YIPS +YIRD +YIRDS +YIRR +YIRRED +YIRRING +YIRRS +YIRTH +YIRTHS +YLEM +YLEMS +YO +YOB +YOBBO +YOBBOES +YOBBOS +YOBS +YOCK +YOCKED +YOCKING +YOCKS +YOCTOSECOND +YOCTOSECONDS +YOD +YODEL +YODELED +YODELER +YODELERS +YODELING +YODELLED +YODELLER +YODELLERS +YODELLING +YODELS +YODH +YODHS +YODLE +YODLED +YODLER +YODLERS +YODLES +YODLING +YODS +YOGA +YOGAS +YOGEE +YOGEES +YOGH +YOGHOURT +YOGHOURTS +YOGHS +YOGHURT +YOGHURTS +YOGI +YOGIC +YOGIN +YOGINI +YOGINIS +YOGINS +YOGIS +YOGURT +YOGURTS +YOHIMBE +YOHIMBES +YOHIMBINE +YOHIMBINES +YOICKS +YOK +YOKE +YOKED +YOKEFELLOW +YOKEFELLOWS +YOKEL +YOKELESS +YOKELISH +YOKELS +YOKEMATE +YOKEMATES +YOKES +YOKING +YOKOZUNA +YOKOZUNAS +YOKS +YOLK +YOLKED +YOLKIER +YOLKIEST +YOLKS +YOLKY +YOM +YOMIM +YON +YOND +YONDER +YONI +YONIC +YONIS +YONKER +YONKERS +YORE +YORES +YOTTABYTE +YOTTABYTES +YOU +YOUNG +YOUNGBERRIES +YOUNGBERRY +YOUNGER +YOUNGERS +YOUNGEST +YOUNGISH +YOUNGLING +YOUNGLINGS +YOUNGNESS +YOUNGNESSES +YOUNGS +YOUNGSTER +YOUNGSTERS +YOUNKER +YOUNKERS +YOUPON +YOUPONS +YOUR +YOURN +YOURS +YOURSELF +YOURSELVES +YOUS +YOUSE +YOUTH +YOUTHEN +YOUTHENED +YOUTHENING +YOUTHENS +YOUTHFUL +YOUTHFULLY +YOUTHFULNESS +YOUTHFULNESSES +YOUTHQUAKE +YOUTHQUAKES +YOUTHS +YOW +YOWE +YOWED +YOWES +YOWIE +YOWIES +YOWING +YOWL +YOWLED +YOWLER +YOWLERS +YOWLING +YOWLS +YOWS +YPERITE +YPERITES +YTTERBIA +YTTERBIAS +YTTERBIC +YTTERBIUM +YTTERBIUMS +YTTERBOUS +YTTRIA +YTTRIAS +YTTRIC +YTTRIUM +YTTRIUMS +YUAN +YUANS +YUCA +YUCAS +YUCCA +YUCCAS +YUCCH +YUCH +YUCK +YUCKED +YUCKIER +YUCKIEST +YUCKINESS +YUCKINESSES +YUCKING +YUCKS +YUCKY +YUGA +YUGAS +YUK +YUKKED +YUKKIER +YUKKIEST +YUKKING +YUKKY +YUKS +YULAN +YULANS +YULE +YULES +YULETIDE +YULETIDES +YUM +YUMMIER +YUMMIES +YUMMIEST +YUMMINESS +YUMMINESSES +YUMMY +YUP +YUPON +YUPONS +YUPPIE +YUPPIEDOM +YUPPIEDOMS +YUPPIEISH +YUPPIES +YUPPIFIED +YUPPIFIES +YUPPIFY +YUPPIFYING +YUPPY +YUPS +YURT +YURTA +YURTS +YUTZ +YUTZES +YWIS +ZA +ZABAGLIONE +ZABAGLIONES +ZABAIONE +ZABAIONES +ZABAJONE +ZABAJONES +ZACATON +ZACATONS +ZADDICK +ZADDIK +ZADDIKIM +ZAFFAR +ZAFFARS +ZAFFER +ZAFFERS +ZAFFIR +ZAFFIRS +ZAFFRE +ZAFFRES +ZAFTIG +ZAG +ZAGGED +ZAGGING +ZAGS +ZAIBATSU +ZAIKAI +ZAIKAIS +ZAIRE +ZAIRES +ZAMARRA +ZAMARRAS +ZAMARRO +ZAMARROS +ZAMIA +ZAMIAS +ZAMINDAR +ZAMINDARI +ZAMINDARIS +ZAMINDARS +ZANANA +ZANANAS +ZANDER +ZANDERS +ZANIER +ZANIES +ZANIEST +ZANILY +ZANINESS +ZANINESSES +ZANY +ZANYISH +ZANZA +ZANZAS +ZAP +ZAPATEADO +ZAPATEADOS +ZAPATEO +ZAPATEOS +ZAPPED +ZAPPER +ZAPPERS +ZAPPIER +ZAPPIEST +ZAPPING +ZAPPY +ZAPS +ZAPTIAH +ZAPTIAHS +ZAPTIEH +ZAPTIEHS +ZARATITE +ZARATITES +ZAREBA +ZAREBAS +ZAREEBA +ZAREEBAS +ZARF +ZARFS +ZARIBA +ZARIBAS +ZARZUELA +ZARZUELAS +ZAS +ZASTRUGA +ZASTRUGI +ZAX +ZAXES +ZAYIN +ZAYINS +ZAZEN +ZAZENS +ZEAL +ZEALOT +ZEALOTRIES +ZEALOTRY +ZEALOTS +ZEALOUS +ZEALOUSLY +ZEALOUSNESS +ZEALOUSNESSES +ZEALS +ZEATIN +ZEATINS +ZEBEC +ZEBECK +ZEBECKS +ZEBECS +ZEBRA +ZEBRAFISH +ZEBRAFISHES +ZEBRAIC +ZEBRANO +ZEBRANOS +ZEBRAS +ZEBRASS +ZEBRASSES +ZEBRAWOOD +ZEBRAWOODS +ZEBRINE +ZEBRINES +ZEBROID +ZEBU +ZEBUS +ZECCHIN +ZECCHINI +ZECCHINO +ZECCHINOS +ZECCHINS +ZECHIN +ZECHINS +ZED +ZEDOARIES +ZEDOARY +ZEDS +ZEE +ZEES +ZEIN +ZEINS +ZEITGEBER +ZEITGEBERS +ZEITGEIST +ZEITGEISTS +ZEK +ZEKS +ZELKOVA +ZELKOVAS +ZEMINDAR +ZEMINDARIES +ZEMINDARS +ZEMINDARY +ZEMSTVA +ZEMSTVO +ZEMSTVOS +ZENAIDA +ZENAIDAS +ZENANA +ZENANAS +ZENITH +ZENITHAL +ZENITHS +ZEOLITE +ZEOLITES +ZEOLITIC +ZEP +ZEPHYR +ZEPHYRS +ZEPPELIN +ZEPPELINS +ZEPPOLE +ZEPPOLES +ZEPPOLI +ZEPS +ZEPTOSECOND +ZEPTOSECONDS +ZERK +ZERKS +ZERO +ZEROED +ZEROES +ZEROING +ZEROS +ZEROTH +ZEST +ZESTED +ZESTER +ZESTERS +ZESTFUL +ZESTFULLY +ZESTFULNESS +ZESTFULNESSES +ZESTIER +ZESTIEST +ZESTILY +ZESTING +ZESTLESS +ZESTS +ZESTY +ZETA +ZETAS +ZETTABYTE +ZETTABYTES +ZEUGMA +ZEUGMAS +ZEUGMATIC +ZIBELINE +ZIBELINES +ZIBELLINE +ZIBELLINES +ZIBET +ZIBETH +ZIBETHS +ZIBETS +ZIDOVUDINE +ZIDOVUDINES +ZIG +ZIGGED +ZIGGING +ZIGGURAT +ZIGGURATS +ZIGS +ZIGZAG +ZIGZAGGED +ZIGZAGGER +ZIGZAGGERS +ZIGZAGGING +ZIGZAGGY +ZIGZAGS +ZIKKURAT +ZIKKURATS +ZIKURAT +ZIKURATS +ZILCH +ZILCHES +ZILL +ZILLAH +ZILLAHS +ZILLION +ZILLIONAIRE +ZILLIONAIRES +ZILLIONS +ZILLIONTH +ZILLS +ZIN +ZINC +ZINCATE +ZINCATES +ZINCED +ZINCIC +ZINCIFIED +ZINCIFIES +ZINCIFY +ZINCIFYING +ZINCING +ZINCITE +ZINCITES +ZINCKED +ZINCKING +ZINCKY +ZINCOID +ZINCOUS +ZINCS +ZINCY +ZINE +ZINEB +ZINEBS +ZINES +ZINFANDEL +ZINFANDELS +ZING +ZINGANI +ZINGANO +ZINGARA +ZINGARE +ZINGARI +ZINGARO +ZINGED +ZINGER +ZINGERS +ZINGIER +ZINGIEST +ZINGING +ZINGS +ZINGY +ZINKENITE +ZINKENITES +ZINKIFIED +ZINKIFIES +ZINKIFY +ZINKIFYING +ZINKY +ZINNIA +ZINNIAS +ZINS +ZIP +ZIPLESS +ZIPLOCK +ZIPPED +ZIPPER +ZIPPERED +ZIPPERING +ZIPPERS +ZIPPIER +ZIPPIEST +ZIPPING +ZIPPY +ZIPS +ZIRAM +ZIRAMS +ZIRCALOY +ZIRCALOYS +ZIRCON +ZIRCONIA +ZIRCONIAS +ZIRCONIC +ZIRCONIUM +ZIRCONIUMS +ZIRCONS +ZIT +ZITHER +ZITHERIST +ZITHERISTS +ZITHERN +ZITHERNS +ZITHERS +ZITI +ZITIS +ZITS +ZIZIT +ZIZITH +ZIZZLE +ZIZZLED +ZIZZLES +ZIZZLING +ZLOTE +ZLOTIES +ZLOTY +ZLOTYCH +ZLOTYS +ZOA +ZOANTHARIAN +ZOANTHARIANS +ZOARIA +ZOARIAL +ZOARIUM +ZOCALO +ZOCALOS +ZODIAC +ZODIACAL +ZODIACS +ZOEA +ZOEAE +ZOEAL +ZOEAS +ZOECIA +ZOECIUM +ZOFTIG +ZOIC +ZOISITE +ZOISITES +ZOMBI +ZOMBIE +ZOMBIELIKE +ZOMBIES +ZOMBIFICATION +ZOMBIFICATIONS +ZOMBIFIED +ZOMBIFIES +ZOMBIFY +ZOMBIFYING +ZOMBIISM +ZOMBIISMS +ZOMBIS +ZONA +ZONAE +ZONAL +ZONALLY +ZONARY +ZONATE +ZONATED +ZONATION +ZONATIONS +ZONE +ZONED +ZONELESS +ZONER +ZONERS +ZONES +ZONETIME +ZONETIMES +ZONING +ZONK +ZONKED +ZONKING +ZONKS +ZONULA +ZONULAE +ZONULAR +ZONULAS +ZONULE +ZONULES +ZOO +ZOOCHORE +ZOOCHORES +ZOOECIA +ZOOECIUM +ZOOEY +ZOOGAMETE +ZOOGAMETES +ZOOGENIC +ZOOGENIES +ZOOGENOUS +ZOOGENY +ZOOGEOGRAPHER +ZOOGEOGRAPHERS +ZOOGEOGRAPHIC +ZOOGEOGRAPHICAL +ZOOGEOGRAPHIES +ZOOGEOGRAPHY +ZOOGLEA +ZOOGLEAE +ZOOGLEAL +ZOOGLEAS +ZOOGLOEA +ZOOGLOEAE +ZOOGLOEAL +ZOOGLOEAS +ZOOGLOEIC +ZOOGRAPHIES +ZOOGRAPHY +ZOOID +ZOOIDAL +ZOOIDS +ZOOIER +ZOOIEST +ZOOKEEPER +ZOOKEEPERS +ZOOKS +ZOOLATER +ZOOLATERS +ZOOLATRIES +ZOOLATRY +ZOOLOGIC +ZOOLOGICAL +ZOOLOGICALLY +ZOOLOGIES +ZOOLOGIST +ZOOLOGISTS +ZOOLOGY +ZOOM +ZOOMANIA +ZOOMANIAS +ZOOMED +ZOOMETRIC +ZOOMETRIES +ZOOMETRY +ZOOMING +ZOOMORPH +ZOOMORPHIC +ZOOMORPHS +ZOOMS +ZOON +ZOONAL +ZOONED +ZOONING +ZOONOSES +ZOONOSIS +ZOONOTIC +ZOONS +ZOOPHILE +ZOOPHILES +ZOOPHILIA +ZOOPHILIAS +ZOOPHILIC +ZOOPHILIES +ZOOPHILOUS +ZOOPHILY +ZOOPHOBE +ZOOPHOBES +ZOOPHOBIA +ZOOPHOBIAS +ZOOPHYTE +ZOOPHYTES +ZOOPHYTIC +ZOOPLANKTER +ZOOPLANKTERS +ZOOPLANKTON +ZOOPLANKTONIC +ZOOPLANKTONS +ZOOS +ZOOSPERM +ZOOSPERMS +ZOOSPORANGIA +ZOOSPORANGIUM +ZOOSPORE +ZOOSPORES +ZOOSPORIC +ZOOSTEROL +ZOOSTEROLS +ZOOTECHNICAL +ZOOTECHNICS +ZOOTIER +ZOOTIEST +ZOOTOMIC +ZOOTOMIES +ZOOTOMIST +ZOOTOMISTS +ZOOTOMY +ZOOTY +ZOOXANTHELLA +ZOOXANTHELLAE +ZORI +ZORIL +ZORILLA +ZORILLAS +ZORILLE +ZORILLES +ZORILLO +ZORILLOS +ZORILS +ZORIS +ZOSTER +ZOSTERS +ZOUAVE +ZOUAVES +ZOUK +ZOUKS +ZOUNDS +ZOWIE +ZOYSIA +ZOYSIAS +ZUCCHETTI +ZUCCHETTO +ZUCCHETTOS +ZUCCHINI +ZUCCHINIS +ZUGZWANG +ZUGZWANGS +ZUZ +ZUZIM +ZWIEBACK +ZWIEBACKS +ZWITTERION +ZWITTERIONIC +ZWITTERIONS +ZYDECO +ZYDECOS +ZYGAPOPHYSES +ZYGAPOPHYSIS +ZYGODACTYL +ZYGODACTYLOUS +ZYGOID +ZYGOMA +ZYGOMAS +ZYGOMATA +ZYGOMATIC +ZYGOMATICS +ZYGOMORPHIC +ZYGOMORPHIES +ZYGOMORPHY +ZYGOSE +ZYGOSES +ZYGOSIS +ZYGOSITIES +ZYGOSITY +ZYGOSPORE +ZYGOSPORES +ZYGOTE +ZYGOTENE +ZYGOTENES +ZYGOTES +ZYGOTIC +ZYMASE +ZYMASES +ZYME +ZYMES +ZYMOGEN +ZYMOGENE +ZYMOGENES +ZYMOGENIC +ZYMOGENS +ZYMOGRAM +ZYMOGRAMS +ZYMOLOGIC +ZYMOLOGIES +ZYMOLOGY +ZYMOLYSES +ZYMOLYSIS +ZYMOLYTIC +ZYMOMETER +ZYMOMETERS +ZYMOSAN +ZYMOSANS +ZYMOSES +ZYMOSIS +ZYMOTIC +ZYMURGIES +ZYMURGY +ZYZZYVA +ZYZZYVAS +ZZZ \ No newline at end of file diff --git a/core-java-io/src/test/resources/test.find b/core-java-io/src/test/resources/test.find new file mode 100644 index 0000000000..0cb7d51df1 --- /dev/null +++ b/core-java-io/src/test/resources/test.find @@ -0,0 +1 @@ +Test of JNDI on file. \ No newline at end of file diff --git a/core-java-io/src/test/resources/testFolder/sample_file_1.in b/core-java-io/src/test/resources/testFolder/sample_file_1.in new file mode 100644 index 0000000000..70c379b63f --- /dev/null +++ b/core-java-io/src/test/resources/testFolder/sample_file_1.in @@ -0,0 +1 @@ +Hello world \ No newline at end of file diff --git a/core-java-io/src/test/resources/testFolder/sample_file_2.in b/core-java-io/src/test/resources/testFolder/sample_file_2.in new file mode 100644 index 0000000000..93b493a513 --- /dev/null +++ b/core-java-io/src/test/resources/testFolder/sample_file_2.in @@ -0,0 +1 @@ +Hello world ! \ No newline at end of file diff --git a/core-java-io/src/test/resources/test_read.in b/core-java-io/src/test/resources/test_read.in new file mode 100644 index 0000000000..70c379b63f --- /dev/null +++ b/core-java-io/src/test/resources/test_read.in @@ -0,0 +1 @@ +Hello world \ No newline at end of file diff --git a/core-java-io/src/test/resources/test_read1.in b/core-java-io/src/test/resources/test_read1.in new file mode 100644 index 0000000000..1e46242993 --- /dev/null +++ b/core-java-io/src/test/resources/test_read1.in @@ -0,0 +1 @@ +Hello world 1 \ No newline at end of file diff --git a/core-java-io/src/test/resources/test_read2.in b/core-java-io/src/test/resources/test_read2.in new file mode 100644 index 0000000000..fe47dc003b --- /dev/null +++ b/core-java-io/src/test/resources/test_read2.in @@ -0,0 +1 @@ +2,3 4 \ No newline at end of file diff --git a/core-java-io/src/test/resources/test_read3.in b/core-java-io/src/test/resources/test_read3.in new file mode 100644 index 0000000000..db9f25a672 --- /dev/null +++ b/core-java-io/src/test/resources/test_read3.in @@ -0,0 +1 @@ +Hello 1 \ No newline at end of file diff --git a/core-java-io/src/test/resources/test_read4.in b/core-java-io/src/test/resources/test_read4.in new file mode 100644 index 0000000000000000000000000000000000000000..5727d54bfcb2046f4989fd13cf5dcf408201fa2a GIT binary patch literal 7 OcmZQz^+?Uh$p-)htO5D} literal 0 HcmV?d00001 diff --git a/core-java-io/src/test/resources/test_read7.in b/core-java-io/src/test/resources/test_read7.in new file mode 100644 index 0000000000..28d4d45d43 --- /dev/null +++ b/core-java-io/src/test/resources/test_read7.in @@ -0,0 +1 @@ +é’空 \ No newline at end of file diff --git a/core-java-io/src/test/resources/test_read8.in b/core-java-io/src/test/resources/test_read8.in new file mode 100644 index 0000000000..10fc1aac8a --- /dev/null +++ b/core-java-io/src/test/resources/test_read8.in @@ -0,0 +1,2 @@ +Hello world + Test line diff --git a/core-java-io/src/test/resources/test_read_d.in b/core-java-io/src/test/resources/test_read_d.in new file mode 100644 index 0000000000..82bbb4071f --- /dev/null +++ b/core-java-io/src/test/resources/test_read_d.in @@ -0,0 +1 @@ +John,Adam-Tom \ No newline at end of file diff --git a/core-java-io/src/test/resources/test_read_multiple.in b/core-java-io/src/test/resources/test_read_multiple.in new file mode 100644 index 0000000000..7d64000a76 --- /dev/null +++ b/core-java-io/src/test/resources/test_read_multiple.in @@ -0,0 +1,2 @@ +Hello world +Hi, John \ No newline at end of file diff --git a/core-java/README.md b/core-java/README.md index 5f69f12c6f..27f210a0c3 100644 --- a/core-java/README.md +++ b/core-java/README.md @@ -4,19 +4,13 @@ ### Relevant Articles: - [Immutable ArrayList in Java](http://www.baeldung.com/java-immutable-list) -- [Java - Reading a Large File Efficiently](http://www.baeldung.com/java-read-lines-large-file) -- [Java InputStream to String](http://www.baeldung.com/convert-input-stream-to-string) - [Converting between an Array and a List in Java](http://www.baeldung.com/convert-array-to-list-and-list-to-array) - [Converting between an Array and a Set in Java](http://www.baeldung.com/convert-array-to-set-and-set-to-array) - [Converting between a List and a Set in Java](http://www.baeldung.com/convert-list-to-set-and-set-to-list) - [Convert a Map to an Array, List or Set in Java](http://www.baeldung.com/convert-map-values-to-array-list-set) -- [Java – Write to File](http://www.baeldung.com/java-write-to-file) -- [Java - Convert File to InputStream](http://www.baeldung.com/convert-file-to-input-stream) - [Java – Random Long, Float, Integer and Double](http://www.baeldung.com/java-generate-random-long-float-integer-double) - [Java – Generate Random String](http://www.baeldung.com/java-random-string) -- [Java Scanner](http://www.baeldung.com/java-scanner) - [Java Timer](http://www.baeldung.com/java-timer-and-timertask) -- [Java – Byte Array to Writer](http://www.baeldung.com/java-convert-byte-array-to-writer) - [How to Run a Shell Command in Java](http://www.baeldung.com/run-shell-command-in-java) - [MD5 Hashing in Java](http://www.baeldung.com/java-md5) - [Guide to the Java ArrayList](http://www.baeldung.com/java-arraylist) @@ -25,7 +19,6 @@ - [Convert char to String in Java](http://www.baeldung.com/java-convert-char-to-string) - [Random List Element](http://www.baeldung.com/java-random-list-element) - [Convert String to int or Integer in Java](http://www.baeldung.com/java-convert-string-to-int-or-integer) -- [Java – Directory Size](http://www.baeldung.com/java-folder-size) - [Java – Try with Resources](http://www.baeldung.com/java-try-with-resources) - [Guide to the Fork/Join Framework in Java](http://www.baeldung.com/java-fork-join) - [How to Print Screen in Java](http://www.baeldung.com/print-screen-in-java) @@ -39,10 +32,8 @@ - [Java - Combine Multiple Collections](http://www.baeldung.com/java-combine-multiple-collections) - [Simulated Annealing for Travelling Salesman Problem](http://www.baeldung.com/java-simulated-annealing-for-traveling-salesman) - [Slope One Algorithm: Collaborative Filtering Recommendation Systems](http://www.baeldung.com/java-collaborative-filtering-recommendations) -- [Differences Between the Java WatchService API and the Apache Commons IO Monitor Library](http://www.baeldung.com/java-watchservice-vs-apache-commons-io-monitor-library) - [Pattern Search with Grep in Java](http://www.baeldung.com/grep-in-java) - [URL Encoding and Decoding in Java](http://www.baeldung.com/java-url-encoding-decoding) -- [Calculate the Size of a File in Java](http://www.baeldung.com/java-file-size) - [The Basics of Java Generics](http://www.baeldung.com/java-generics) - [The Traveling Salesman Problem in Java](http://www.baeldung.com/java-simulated-annealing-for-traveling-salesman) - [How to Create an Executable JAR with Maven](http://www.baeldung.com/executable-jar-with-maven) @@ -53,7 +44,6 @@ - [AWS Lambda With Java](http://www.baeldung.com/java-aws-lambda) - [Introduction to Nashorn](http://www.baeldung.com/java-nashorn) - [Guide to the Guava BiMap](http://www.baeldung.com/guava-bimap) -- [Iterable to Stream in Java](http://www.baeldung.com/java-iterable-to-stream) - [Chained Exceptions in Java](http://www.baeldung.com/java-chained-exceptions) - [The Java HashMap Under the Hood](http://www.baeldung.com/java-hashmap) - [A Guide to LinkedHashMap in Java](http://www.baeldung.com/java-linked-hashmap) @@ -73,15 +63,12 @@ - [How to Perform a Simple HTTP Request in Java](http://www.baeldung.com/java-http-request) - [Call Methods at Runtime Using Java Reflection](http://www.baeldung.com/java-method-reflection) - [Guide to UUID in JAVA](http://www.baeldung.com/guide-to-uuid-in-java) -- [Comparing getPath(), getAbsolutePath(), and getCanonicalPath() in Java](http://www.baeldung.com/java-path) - [How to Add a Single Element to a Stream](http://www.baeldung.com/java-stream-append-prepend) - [Iterating Over Enum Values in Java](http://www.baeldung.com/java-enum-iteration) - [Kotlin Java Interoperability](http://www.baeldung.com/kotlin-java-interoperability) -- [Using Java MappedByteBuffer](http://www.baeldung.com/java-mapped-byte-buffer) - [How to Round a Number to N Decimal Places in Java](http://www.baeldung.com/java-round-decimal-number) - [Changing Annotation Parameters At Runtime](http://www.baeldung.com/java-reflection-change-annotation-params) - [How to Find all Getters Returning Null](http://www.baeldung.com/java-getters-returning-null) -- [Converting String to Stream of chars](http://www.baeldung.com/java-string-to-stream) - [Changing the Order in a Sum Operation Can Produce Different Results?](http://www.baeldung.com/java-floating-point-sum-order) - [How to Get a Name of a Method Being Executed?](http://www.baeldung.com/java-name-of-executing-method) - [Iterate over a Map in Java](http://www.baeldung.com/java-iterate-map) @@ -110,7 +97,6 @@ - [Singletons in Java](http://www.baeldung.com/java-singleton) - [“Sneaky Throws†in Java](http://www.baeldung.com/java-sneaky-throws) - [OutOfMemoryError: GC Overhead Limit Exceeded](http://www.baeldung.com/java-gc-overhead-limit-exceeded) -- [How to Iterate Over a Stream With Indices](http://www.baeldung.com/java-stream-indices) - [StringBuilder and StringBuffer in Java](http://www.baeldung.com/java-string-builder-string-buffer) - [Number of Digits in an Integer in Java](http://www.baeldung.com/java-number-of-digits-in-int) - [Proxy, Decorator, Adapter and Bridge Patterns](http://www.baeldung.com/java-structural-design-patterns) @@ -118,12 +104,10 @@ - [A Guide to the Static Keyword in Java](http://www.baeldung.com/java-static) - [Initializing Arrays in Java](http://www.baeldung.com/java-initialize-array) - [Guide to Java String Pool](http://www.baeldung.com/java-string-pool) -- [Copy a File with Java](http://www.baeldung.com/java-copy-file) - [Introduction to Creational Design Patterns](http://www.baeldung.com/creational-design-patterns) - [Quick Example - Comparator vs Comparable in Java](http://www.baeldung.com/java-comparator-comparable) - [Quick Guide to Java Stack](http://www.baeldung.com/java-stack) - [The Java continue and break Keywords](http://www.baeldung.com/java-continue-and-break) -- [Java – Append Data to a File](http://www.baeldung.com/java-append-to-file) - [Introduction to the Java ArrayDeque](http://www.baeldung.com/java-array-deque) - [Guide to java.util.Formatter](http://www.baeldung.com/java-string-formatter) - [Batch Processing in JDBC](http://www.baeldung.com/jdbc-batch-processing) diff --git a/core-java/src/main/resources/fileTest.txt b/core-java/src/main/resources/fileTest.txt deleted file mode 100644 index ce4bea208b..0000000000 --- a/core-java/src/main/resources/fileTest.txt +++ /dev/null @@ -1 +0,0 @@ -Hello World from fileTest.txt!!! \ No newline at end of file diff --git a/pom.xml b/pom.xml index 73f1b27f7e..508a8f5bb6 100644 --- a/pom.xml +++ b/pom.xml @@ -47,6 +47,7 @@ cdi core-java + core-java-io core-java-8 core-java-concurrency couchbase From b684064d53c1c616f9ede5e55649bbd6d48f0014 Mon Sep 17 00:00:00 2001 From: DOHA Date: Fri, 12 Jan 2018 22:43:06 +0200 Subject: [PATCH 058/391] move stream API to core-java-8 --- core-java-8/README.md | 3 +++ core-java-8/pom.xml | 20 +++++++++++++++++++ .../com/baeldung/stream/StreamIndices.java | 0 .../IterableStreamConversionUnitTest.java | 0 .../baeldung/stream/StreamIndicesTest.java | 0 .../string/StringToCharStreamUnitTest.java | 0 core-java-io/README.md | 3 --- 7 files changed, 23 insertions(+), 3 deletions(-) rename {core-java-io => core-java-8}/src/main/java/com/baeldung/stream/StreamIndices.java (100%) rename {core-java-io => core-java-8}/src/test/java/com/baeldung/java/conversion/IterableStreamConversionUnitTest.java (100%) rename {core-java-io => core-java-8}/src/test/java/com/baeldung/stream/StreamIndicesTest.java (100%) rename {core-java-io => core-java-8}/src/test/java/com/baeldung/string/StringToCharStreamUnitTest.java (100%) diff --git a/core-java-8/README.md b/core-java-8/README.md index 862d8c2224..53e8e1a44a 100644 --- a/core-java-8/README.md +++ b/core-java-8/README.md @@ -34,3 +34,6 @@ - [Copy a File with Java](http://www.baeldung.com/java-copy-file) - [Generating Prime Numbers in Java](http://www.baeldung.com/java-generate-prime-numbers) - [Static and Default Methods in Interfaces in Java](http://www.baeldung.com/java-static-default-methods) +- [Iterable to Stream in Java](http://www.baeldung.com/java-iterable-to-stream) +- [Converting String to Stream of chars](http://www.baeldung.com/java-string-to-stream) +- [How to Iterate Over a Stream With Indices](http://www.baeldung.com/java-stream-indices) diff --git a/core-java-8/pom.xml b/core-java-8/pom.xml index 17d330b3b8..75728ecd13 100644 --- a/core-java-8/pom.xml +++ b/core-java-8/pom.xml @@ -101,6 +101,23 @@ 1.19 + + com.codepoetics + protonpack + ${protonpack.version} + + + + io.vavr + vavr + ${vavr.version} + + + + one.util + streamex + ${streamex.version} + @@ -267,6 +284,9 @@ 4.01 1.10 1.16.12 + 0.9.0 + 1.13 + 0.6.5 3.6.1 diff --git a/core-java-io/src/main/java/com/baeldung/stream/StreamIndices.java b/core-java-8/src/main/java/com/baeldung/stream/StreamIndices.java similarity index 100% rename from core-java-io/src/main/java/com/baeldung/stream/StreamIndices.java rename to core-java-8/src/main/java/com/baeldung/stream/StreamIndices.java diff --git a/core-java-io/src/test/java/com/baeldung/java/conversion/IterableStreamConversionUnitTest.java b/core-java-8/src/test/java/com/baeldung/java/conversion/IterableStreamConversionUnitTest.java similarity index 100% rename from core-java-io/src/test/java/com/baeldung/java/conversion/IterableStreamConversionUnitTest.java rename to core-java-8/src/test/java/com/baeldung/java/conversion/IterableStreamConversionUnitTest.java diff --git a/core-java-io/src/test/java/com/baeldung/stream/StreamIndicesTest.java b/core-java-8/src/test/java/com/baeldung/stream/StreamIndicesTest.java similarity index 100% rename from core-java-io/src/test/java/com/baeldung/stream/StreamIndicesTest.java rename to core-java-8/src/test/java/com/baeldung/stream/StreamIndicesTest.java diff --git a/core-java-io/src/test/java/com/baeldung/string/StringToCharStreamUnitTest.java b/core-java-8/src/test/java/com/baeldung/string/StringToCharStreamUnitTest.java similarity index 100% rename from core-java-io/src/test/java/com/baeldung/string/StringToCharStreamUnitTest.java rename to core-java-8/src/test/java/com/baeldung/string/StringToCharStreamUnitTest.java diff --git a/core-java-io/README.md b/core-java-io/README.md index 79974ab523..52485acfd5 100644 --- a/core-java-io/README.md +++ b/core-java-io/README.md @@ -12,11 +12,8 @@ - [Java – Directory Size](http://www.baeldung.com/java-folder-size) - [Differences Between the Java WatchService API and the Apache Commons IO Monitor Library](http://www.baeldung.com/java-watchservice-vs-apache-commons-io-monitor-library) - [Calculate the Size of a File in Java](http://www.baeldung.com/java-file-size) -- [Iterable to Stream in Java](http://www.baeldung.com/java-iterable-to-stream) - [Comparing getPath(), getAbsolutePath(), and getCanonicalPath() in Java](http://www.baeldung.com/java-path) - [Using Java MappedByteBuffer](http://www.baeldung.com/java-mapped-byte-buffer) -- [Converting String to Stream of chars](http://www.baeldung.com/java-string-to-stream) -- [How to Iterate Over a Stream With Indices](http://www.baeldung.com/java-stream-indices) - [Copy a File with Java](http://www.baeldung.com/java-copy-file) - [Java – Append Data to a File](http://www.baeldung.com/java-append-to-file) - [FileNotFoundException in Java](http://www.baeldung.com/java-filenotfound-exception) From 9fe3d2761ea7db32e69b9476ac257544735c78fd Mon Sep 17 00:00:00 2001 From: Chris Oberle Date: Sun, 14 Jan 2018 08:19:17 -0500 Subject: [PATCH 059/391] BAEL-1418 - spring security with extra login fields --- spring-5/pom.xml | 512 +++++++++--------- ...gSecurity5ExtraLoginFieldsApplication.java | 15 + .../CustomAuthFailureHandler.java | 20 + .../CustomAuthenticationFilter.java | 53 ++ .../CustomUserDetailsService.java | 32 ++ .../CustomUserRepository.java | 26 + .../securityextrafields/SecurityConfig.java | 63 +++ .../baeldung/securityextrafields/User.java | 23 + .../securityextrafields/UserRepository.java | 7 + .../securityextrafields/WebController.java | 51 ++ .../src/main/resources/static/css/main.css | 18 + .../src/main/resources/templates/index.html | 24 + .../src/main/resources/templates/login.html | 23 + .../main/resources/templates/user/index.html | 13 + .../SecurityExtraFieldsTest.java | 108 ++++ 15 files changed, 738 insertions(+), 250 deletions(-) create mode 100644 spring-5/src/main/java/com/baeldung/SpringSecurity5ExtraLoginFieldsApplication.java create mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthFailureHandler.java create mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java create mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java create mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java create mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java create mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/User.java create mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/UserRepository.java create mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/WebController.java create mode 100644 spring-5/src/main/resources/static/css/main.css create mode 100644 spring-5/src/main/resources/templates/index.html create mode 100644 spring-5/src/main/resources/templates/login.html create mode 100644 spring-5/src/main/resources/templates/user/index.html create mode 100644 spring-5/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java diff --git a/spring-5/pom.xml b/spring-5/pom.xml index 19dd65d78f..71f355f41a 100644 --- a/spring-5/pom.xml +++ b/spring-5/pom.xml @@ -1,250 +1,262 @@ - - - 4.0.0 - - com.baeldung - spring-5 - 0.0.1-SNAPSHOT - jar - - spring-5 - spring 5 sample project about new features - - - org.springframework.boot - spring-boot-starter-parent - 2.0.0.M7 - - - - - - org.springframework.boot - spring-boot-starter-data-jpa - - - org.springframework.boot - spring-boot-starter-security - - - org.springframework.boot - spring-boot-starter-validation - - - org.springframework.boot - spring-boot-starter-web - - - org.springframework.boot - spring-boot-starter-webflux - - - org.springframework.boot - spring-boot-starter-hateoas - - - org.projectreactor - reactor-spring - ${reactor-spring.version} - - - javax.json.bind - javax.json.bind-api - ${jsonb-api.version} - - - - - - - - - - - - - - - org.apache.geronimo.specs - geronimo-json_1.1_spec - ${geronimo-json_1.1_spec.version} - - - org.apache.johnzon - johnzon-jsonb - ${johnzon.version} - - - - org.apache.commons - commons-lang3 - - - - - - org.springframework.boot - spring-boot-devtools - runtime - - - com.h2database - h2 - runtime - - - - org.springframework - spring-test - - - org.springframework.boot - spring-boot-starter-test - test - - - org.springframework.security - spring-security-test - test - - - - org.apache.commons - commons-collections4 - 4.1 - test - - - - org.junit.jupiter - junit-jupiter-api - ${junit.jupiter.version} - - - org.junit.jupiter - junit-jupiter-engine - ${junit.jupiter.version} - test - - - org.junit.platform - junit-platform-surefire-provider - ${junit.platform.version} - test - - - org.junit.platform - junit-platform-runner - ${junit.platform.version} - test - - - - org.springframework.restdocs - spring-restdocs-mockmvc - test - - - org.springframework.restdocs - spring-restdocs-webtestclient - test - - - org.springframework.restdocs - spring-restdocs-restassured - test - - - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - com.baeldung.Spring5Application - JAR - - - - - org.apache.maven.plugins - maven-surefire-plugin - - 3 - true - methods - true - - **/*IntegrationTest.java - **/*LiveTest.java - - - - - org.asciidoctor - asciidoctor-maven-plugin - ${asciidoctor-plugin.version} - - - generate-docs - package - - process-asciidoc - - - html - book - - ${snippetsDirectory} - - src/docs/asciidocs - target/generated-docs - - - - - - - - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - false - - - - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - false - - - - - - UTF-8 - UTF-8 - 1.8 - 1.0.0 - 5.0.0 - 2.20 - 5.0.2.RELEASE - 1.0.1.RELEASE - 1.1.3 - 1.0 - 1.0 - 1.5.6 - ${project.build.directory}/generated-snippets - - - + + + 4.0.0 + + com.baeldung + spring-5 + 0.0.1-SNAPSHOT + jar + + spring-5 + spring 5 sample project about new features + + + org.springframework.boot + spring-boot-starter-parent + 2.0.0.M7 + + + + + + org.springframework.boot + spring-boot-starter-data-jpa + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-validation + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-thymeleaf + + + org.thymeleaf.extras + thymeleaf-extras-springsecurity4 + + + org.springframework.boot + spring-boot-starter-webflux + + + org.springframework.boot + spring-boot-starter-hateoas + + + org.projectreactor + reactor-spring + ${reactor-spring.version} + + + javax.json.bind + javax.json.bind-api + ${jsonb-api.version} + + + + + + + + + + + + + + + org.apache.geronimo.specs + geronimo-json_1.1_spec + ${geronimo-json_1.1_spec.version} + + + org.apache.johnzon + johnzon-jsonb + ${johnzon.version} + + + + org.apache.commons + commons-lang3 + + + + + + org.springframework.boot + spring-boot-devtools + runtime + + + com.h2database + h2 + runtime + + + + org.springframework + spring-test + + + org.springframework.boot + spring-boot-starter-test + test + + + org.springframework.security + spring-security-test + test + + + + org.apache.commons + commons-collections4 + 4.1 + test + + + + org.junit.jupiter + junit-jupiter-api + ${junit.jupiter.version} + + + org.junit.jupiter + junit-jupiter-engine + ${junit.jupiter.version} + test + + + org.junit.platform + junit-platform-surefire-provider + ${junit.platform.version} + test + + + org.junit.platform + junit-platform-runner + ${junit.platform.version} + test + + + + org.springframework.restdocs + spring-restdocs-mockmvc + test + + + org.springframework.restdocs + spring-restdocs-webtestclient + test + + + org.springframework.restdocs + spring-restdocs-restassured + test + + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + com.baeldung.Spring5Application + JAR + + + + + org.apache.maven.plugins + maven-surefire-plugin + + 3 + true + methods + true + + **/*IntegrationTest.java + **/*LiveTest.java + + + + + org.asciidoctor + asciidoctor-maven-plugin + ${asciidoctor-plugin.version} + + + generate-docs + package + + process-asciidoc + + + html + book + + ${snippetsDirectory} + + src/docs/asciidocs + target/generated-docs + + + + + + + + + + spring-milestones + Spring Milestones + https://repo.spring.io/milestone + + false + + + + + + spring-milestones + Spring Milestones + https://repo.spring.io/milestone + + false + + + + + + UTF-8 + UTF-8 + 1.8 + 1.0.0 + 5.0.0 + 2.20 + 5.0.2.RELEASE + 1.0.1.RELEASE + 1.1.3 + 1.0 + 1.0 + 1.5.6 + ${project.build.directory}/generated-snippets + + + diff --git a/spring-5/src/main/java/com/baeldung/SpringSecurity5ExtraLoginFieldsApplication.java b/spring-5/src/main/java/com/baeldung/SpringSecurity5ExtraLoginFieldsApplication.java new file mode 100644 index 0000000000..b6285dfc71 --- /dev/null +++ b/spring-5/src/main/java/com/baeldung/SpringSecurity5ExtraLoginFieldsApplication.java @@ -0,0 +1,15 @@ +package com.baeldung; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.context.annotation.ComponentScan; + +@ComponentScan(basePackages = {"com.baeldung.securityextrafields"}) +@SpringBootApplication +public class SpringSecurity5ExtraLoginFieldsApplication { + + public static void main(String[] args) { + SpringApplication.run(SpringSecurity5ExtraLoginFieldsApplication.class, args); + } + +} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthFailureHandler.java b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthFailureHandler.java new file mode 100644 index 0000000000..ef99ef55ce --- /dev/null +++ b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthFailureHandler.java @@ -0,0 +1,20 @@ +package com.baeldung.securityextrafields; + +import java.io.IOException; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler; + +public class CustomAuthFailureHandler extends SimpleUrlAuthenticationFailureHandler { + + @Override + public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, AuthenticationException exception) + throws IOException, ServletException { + getRedirectStrategy().sendRedirect(request, response, "/login?error=true"); + } + +} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java new file mode 100644 index 0000000000..5a54552dfd --- /dev/null +++ b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java @@ -0,0 +1,53 @@ +package com.baeldung.securityextrafields; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.security.authentication.AuthenticationServiceException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; + +public class CustomAuthenticationFilter extends UsernamePasswordAuthenticationFilter { + + public static final String SPRING_SECURITY_FORM_DOMAIN_KEY = "domain"; + + @Override + public Authentication attemptAuthentication(HttpServletRequest request, HttpServletResponse response) + throws AuthenticationException { + + if (!request.getMethod() + .equals("POST")) { + throw new AuthenticationServiceException("Authentication method not supported: " + request.getMethod()); + } + + UsernamePasswordAuthenticationToken authRequest = getAuthRequest(request); + setDetails(request, authRequest); + return this.getAuthenticationManager() + .authenticate(authRequest); + } + + private UsernamePasswordAuthenticationToken getAuthRequest(HttpServletRequest request) { + String username = obtainUsername(request); + String password = obtainPassword(request); + String domain = obtainDomain(request); + + if (username == null) { + username = ""; + } + if (password == null) { + password = ""; + } + if (domain == null) { + domain = ""; + } + + username = username.trim(); + return new UsernamePasswordAuthenticationToken(username + ":" + domain, password); + } + + private String obtainDomain(HttpServletRequest request) { + return request.getParameter(SPRING_SECURITY_FORM_DOMAIN_KEY); + } +} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java new file mode 100644 index 0000000000..0e2858c68f --- /dev/null +++ b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java @@ -0,0 +1,32 @@ +package com.baeldung.securityextrafields; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +@Service("userDetailsService") +public class CustomUserDetailsService implements UserDetailsService { + + private final UserRepository userRepository; + + public CustomUserDetailsService(UserRepository userRepository) { + this.userRepository = userRepository; + } + + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + String[] usernameAndDomain = StringUtils.split(username, ":"); + if (usernameAndDomain == null || usernameAndDomain.length != 2) { + throw new UsernameNotFoundException("Username and domain must be provided"); + } + User user = userRepository.findUser(usernameAndDomain[0], usernameAndDomain[1]); + if (user == null) { + throw new UsernameNotFoundException( + String.format("Username not found for domain, username=%s, domain=%s", + usernameAndDomain[0], usernameAndDomain[1])); + } + return user; + } +} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java new file mode 100644 index 0000000000..c86769b016 --- /dev/null +++ b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java @@ -0,0 +1,26 @@ +package com.baeldung.securityextrafields; + +import java.util.ArrayList; +import java.util.Collection; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.stereotype.Repository; + +@Repository("userRepository") +public class CustomUserRepository implements UserRepository { + + @Override + public User findUser(String username, String domain) { + if (StringUtils.isAnyBlank(username, domain)) { + return null; + } else { + Collection authorities = new ArrayList<>(); + User user = new User(username, domain, + "$2a$10$U3GhSMpsMSOE8Kqsbn58/edxDBKlVuYMh7qk/7ErApYFjJzi2VG5K", true, + true, true, true, authorities); + return user; + } + } + +} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java b/spring-5/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java new file mode 100644 index 0000000000..becb4631f2 --- /dev/null +++ b/spring-5/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java @@ -0,0 +1,63 @@ +package com.baeldung.securityextrafields; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.authentication.AuthenticationProvider; +import org.springframework.security.authentication.dao.DaoAuthenticationProvider; +import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; + +@EnableWebSecurity +public class SecurityConfig extends WebSecurityConfigurerAdapter { + + @Autowired + private UserDetailsService userDetailsService; + + @Override + protected void configure(HttpSecurity http) throws Exception { + + http + .addFilterBefore(authenticationFilter(), UsernamePasswordAuthenticationFilter.class) + .authorizeRequests() + .antMatchers("/css/**", "/index").permitAll() + .antMatchers("/user/**").authenticated() + .and() + .formLogin().loginPage("/login") + .and() + .logout() + .logoutUrl("/logout"); + } + + public CustomAuthenticationFilter authenticationFilter() throws Exception { + CustomAuthenticationFilter filter = new CustomAuthenticationFilter(); + filter.setAuthenticationManager(authenticationManagerBean()); + filter.setAuthenticationFailureHandler(failureHandler()); + return filter; + } + + @Autowired + public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception { + auth.authenticationProvider(authProvider()); + } + + public AuthenticationProvider authProvider() { + DaoAuthenticationProvider provider = new DaoAuthenticationProvider(); + provider.setUserDetailsService(userDetailsService); + provider.setPasswordEncoder(passwordEncoder()); + return provider; + } + + + public CustomAuthFailureHandler failureHandler() { + return new CustomAuthFailureHandler(); + } + + public PasswordEncoder passwordEncoder() { + return new BCryptPasswordEncoder(); + } +} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/User.java b/spring-5/src/main/java/com/baeldung/securityextrafields/User.java new file mode 100644 index 0000000000..a5b3a434ae --- /dev/null +++ b/spring-5/src/main/java/com/baeldung/securityextrafields/User.java @@ -0,0 +1,23 @@ +package com.baeldung.securityextrafields; + +import java.util.Collection; + +import org.springframework.security.core.GrantedAuthority; + +public class User extends org.springframework.security.core.userdetails.User { + + private static final long serialVersionUID = 1L; + + private final String domain; + + public User(String username, String domain, String password, boolean enabled, + boolean accountNonExpired, boolean credentialsNonExpired, + boolean accountNonLocked, Collection authorities) { + super(username, password, enabled, accountNonExpired, credentialsNonExpired, accountNonLocked, authorities); + this.domain = domain; + } + + public String getDomain() { + return domain; + } +} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/UserRepository.java b/spring-5/src/main/java/com/baeldung/securityextrafields/UserRepository.java new file mode 100644 index 0000000000..4ca65b13d5 --- /dev/null +++ b/spring-5/src/main/java/com/baeldung/securityextrafields/UserRepository.java @@ -0,0 +1,7 @@ +package com.baeldung.securityextrafields; + +public interface UserRepository { + + public User findUser(String username, String domain); + +} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/WebController.java b/spring-5/src/main/java/com/baeldung/securityextrafields/WebController.java new file mode 100644 index 0000000000..4a8abb4a83 --- /dev/null +++ b/spring-5/src/main/java/com/baeldung/securityextrafields/WebController.java @@ -0,0 +1,51 @@ +package com.baeldung.securityextrafields; + +import java.util.Optional; + +import org.springframework.security.authentication.AnonymousAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.RequestMapping; + +@Controller +public class WebController { + + @RequestMapping("/") + public String root() { + return "redirect:/index"; + } + + @RequestMapping("/index") + public String index(Model model) { + getDomain().ifPresent(d -> { + model.addAttribute("domain", d); + }); + return "index"; + } + + @RequestMapping("/user/index") + public String userIndex(Model model) { + getDomain().ifPresent(d -> { + model.addAttribute("domain", d); + }); + return "user/index"; + } + + @RequestMapping("/login") + public String login() { + return "login"; + } + + private Optional getDomain() { + Authentication auth = SecurityContextHolder.getContext() + .getAuthentication(); + String domain = null; + if (auth != null && !auth.getClass().equals(AnonymousAuthenticationToken.class)) { + User user = (User) auth.getPrincipal(); + domain = user.getDomain(); + } + return Optional.ofNullable(domain); + } +} diff --git a/spring-5/src/main/resources/static/css/main.css b/spring-5/src/main/resources/static/css/main.css new file mode 100644 index 0000000000..9299ee6158 --- /dev/null +++ b/spring-5/src/main/resources/static/css/main.css @@ -0,0 +1,18 @@ +body { + font-family: sans; + font-size: 1em; +} + +p.error { + font-weight: bold; + color: red; +} + +div.logout { + float: right; +} + +.formfield { + margin: 0.5em; + padding: 0.3em; +} \ No newline at end of file diff --git a/spring-5/src/main/resources/templates/index.html b/spring-5/src/main/resources/templates/index.html new file mode 100644 index 0000000000..52f6224dfb --- /dev/null +++ b/spring-5/src/main/resources/templates/index.html @@ -0,0 +1,24 @@ + + + + Spring Security - Login With Extra Fields + + + + +
+ Logged in user: | + domain: Some Domain +
+
+ +
+
+
+

Hello Spring Security

+

This is an unsecured page, but you can access the secured pages after authenticating.

+ + + diff --git a/spring-5/src/main/resources/templates/login.html b/spring-5/src/main/resources/templates/login.html new file mode 100644 index 0000000000..cafec89c15 --- /dev/null +++ b/spring-5/src/main/resources/templates/login.html @@ -0,0 +1,23 @@ + + + + Login page + + + + +

Login page

+

Example: user / domain / password

+

Invalid user, password, or domain

+
+ : +
+ : +
+ : +
+ +
+

Back to home page

+ + diff --git a/spring-5/src/main/resources/templates/user/index.html b/spring-5/src/main/resources/templates/user/index.html new file mode 100644 index 0000000000..a4c1535100 --- /dev/null +++ b/spring-5/src/main/resources/templates/user/index.html @@ -0,0 +1,13 @@ + + + + Spring Security - Login With Extra Fields + + + + +
+

This is a secured page!

+

Back to home page

+ + diff --git a/spring-5/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java b/spring-5/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java new file mode 100644 index 0000000000..09ee0e66a0 --- /dev/null +++ b/spring-5/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java @@ -0,0 +1,108 @@ +package com.baeldung.securityextrafields; + +import static org.junit.Assert.assertEquals; +import static org.springframework.security.test.web.servlet.request.SecurityMockMvcRequestPostProcessors.csrf; +import static org.springframework.security.test.web.servlet.setup.SecurityMockMvcConfigurers.springSecurity; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.redirectedUrlPattern; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; + +import java.util.ArrayList; +import java.util.Collection; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.mock.web.MockHttpSession; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.context.SecurityContext; +import org.springframework.security.web.FilterChainProxy; +import org.springframework.security.web.context.HttpSessionSecurityContextRepository; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit.jupiter.web.SpringJUnitWebConfig; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.context.web.WebAppConfiguration; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; +import org.springframework.web.context.WebApplicationContext; + +import com.baeldung.SpringSecurity5ExtraLoginFieldsApplication; + +@WebAppConfiguration +@SpringJUnitWebConfig +@RunWith(SpringRunner.class) +@ContextConfiguration(classes = SpringSecurity5ExtraLoginFieldsApplication.class) +public class SecurityExtraFieldsTest { + + @Autowired + private FilterChainProxy springSecurityFilterChain; + + private MockMvc mockMvc; + + @BeforeEach + public void setup(WebApplicationContext wac) { + this.mockMvc = MockMvcBuilders.webAppContextSetup(wac) + .apply(springSecurity(springSecurityFilterChain)).build(); + } + + @DisplayName("Access of root path redirects to index") + @Test + public void givenRootPathAccess_thenRedirectToIndex() throws Exception { + this.mockMvc.perform(get("/")) + .andExpect(status().is3xxRedirection()) + .andExpect(redirectedUrlPattern("/index*")); + } + + @DisplayName("Unauthenticated access of secured resource redirects to login page") + @Test + public void givenSecuredResource_whenAccessUnauthenticated_thenRequiresAuthentication() throws Exception { + this.mockMvc.perform(get("/user/index")) + .andExpect(status().is3xxRedirection()) + .andExpect(redirectedUrlPattern("**/login")); + } + + @DisplayName("Succesfull auth on login page redirects and extra field exists") + @Test + public void givenAccessSecuredResource_whenAuthenticated_thenAuthHasExtraFields() throws Exception { + MockHttpServletRequestBuilder securedResourceAccess = get("/user/index"); + MvcResult unauthenticatedResult = mockMvc.perform(securedResourceAccess) + .andExpect(status().is3xxRedirection()) + .andReturn(); + + MockHttpSession session = (MockHttpSession) unauthenticatedResult.getRequest() + .getSession(); + String loginUrl = unauthenticatedResult.getResponse() + .getRedirectedUrl(); + + User user = getUser(); + + mockMvc.perform(post(loginUrl) + .param("username", user.getUsername()) + .param("password", user.getPassword()) + .param("domain", user.getDomain()) + .session(session) + .with(csrf())) + .andExpect(status().is3xxRedirection()) + .andExpect(redirectedUrlPattern("**/user/index")) + .andReturn(); + + mockMvc.perform(securedResourceAccess.session(session)) + .andExpect(status().isOk()); + + SecurityContext securityContext + = (SecurityContext) session.getAttribute(HttpSessionSecurityContextRepository.SPRING_SECURITY_CONTEXT_KEY); + Authentication auth = securityContext.getAuthentication(); + assertEquals(((User)auth.getPrincipal()).getDomain(), user.getDomain()); + } + + private User getUser() { + Collection authorities = new ArrayList<>(); + return new User("myusername", "mydomain", "password", true, true, true, true, authorities); + } +} From f0175dd4f5d1062123245543de6fe33f943f77d0 Mon Sep 17 00:00:00 2001 From: Chris Oberle Date: Sun, 14 Jan 2018 09:05:52 -0500 Subject: [PATCH 060/391] change delimeter for username/domain concatenation --- .../securityextrafields/CustomAuthenticationFilter.java | 5 +++-- .../securityextrafields/CustomUserDetailsService.java | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java index 5a54552dfd..b5d628628d 100644 --- a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java +++ b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java @@ -43,8 +43,9 @@ public class CustomAuthenticationFilter extends UsernamePasswordAuthenticationFi domain = ""; } - username = username.trim(); - return new UsernamePasswordAuthenticationToken(username + ":" + domain, password); + String usernameDomain = String.format("%s%s%s", username.trim(), + String.valueOf(Character.LINE_SEPARATOR), domain); + return new UsernamePasswordAuthenticationToken(usernameDomain, password); } private String obtainDomain(HttpServletRequest request) { diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java index 0e2858c68f..be02834852 100644 --- a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java +++ b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java @@ -17,7 +17,7 @@ public class CustomUserDetailsService implements UserDetailsService { @Override public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { - String[] usernameAndDomain = StringUtils.split(username, ":"); + String[] usernameAndDomain = StringUtils.split(username, String.valueOf(Character.LINE_SEPARATOR)); if (usernameAndDomain == null || usernameAndDomain.length != 2) { throw new UsernameNotFoundException("Username and domain must be provided"); } From 2346d074c523d95c6dcb9256a5a7f24cbc298203 Mon Sep 17 00:00:00 2001 From: mkuligowski Date: Sun, 14 Jan 2018 20:41:42 +0100 Subject: [PATCH 061/391] Initialize smooks subproject --- smooks/README.md | 0 smooks/pom.xml | 24 ++++++++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 smooks/README.md create mode 100644 smooks/pom.xml diff --git a/smooks/README.md b/smooks/README.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/smooks/pom.xml b/smooks/pom.xml new file mode 100644 index 0000000000..632ec9d12f --- /dev/null +++ b/smooks/pom.xml @@ -0,0 +1,24 @@ + + + 4.0.0 + com.baeldung.examples.smooks + smooks + 1.0-SNAPSHOT + jar + + + com.baeldung + parent-modules + 1.0.0-SNAPSHOT + + + + org.milyn + milyn-smooks-all + 1.7.0 + + + + smooks + From 2b78cdbafa800694f7b5314a8c89a66c8d49a0cf Mon Sep 17 00:00:00 2001 From: Chris Oberle Date: Mon, 15 Jan 2018 18:34:55 -0500 Subject: [PATCH 062/391] remove unnecessary class --- .../CustomAuthFailureHandler.java | 20 ------------------- .../securityextrafields/SecurityConfig.java | 6 +++--- 2 files changed, 3 insertions(+), 23 deletions(-) delete mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthFailureHandler.java diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthFailureHandler.java b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthFailureHandler.java deleted file mode 100644 index ef99ef55ce..0000000000 --- a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthFailureHandler.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.baeldung.securityextrafields; - -import java.io.IOException; - -import javax.servlet.ServletException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.springframework.security.core.AuthenticationException; -import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler; - -public class CustomAuthFailureHandler extends SimpleUrlAuthenticationFailureHandler { - - @Override - public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, AuthenticationException exception) - throws IOException, ServletException { - getRedirectStrategy().sendRedirect(request, response, "/login?error=true"); - } - -} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java b/spring-5/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java index becb4631f2..e8e8567773 100644 --- a/spring-5/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java +++ b/spring-5/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java @@ -10,6 +10,7 @@ import org.springframework.security.config.annotation.web.configuration.WebSecur import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler; import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; @EnableWebSecurity @@ -51,10 +52,9 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { provider.setPasswordEncoder(passwordEncoder()); return provider; } - - public CustomAuthFailureHandler failureHandler() { - return new CustomAuthFailureHandler(); + public SimpleUrlAuthenticationFailureHandler failureHandler() { + return new SimpleUrlAuthenticationFailureHandler("/login?error=true"); } public PasswordEncoder passwordEncoder() { From a5f6f5e03518100b572c2924efe5f09cae1baf63 Mon Sep 17 00:00:00 2001 From: Chris Oberle Date: Tue, 16 Jan 2018 16:59:57 -0500 Subject: [PATCH 063/391] move source to spring-5-security module --- spring-5-security/pom.xml | 203 ++++++++++-------- .../CustomAuthenticationFilter.java | 54 +++++ .../CustomUserDetailsService.java | 32 +++ .../CustomUserRepository.java | 26 +++ .../securityextrafields/SecurityConfig.java | 65 ++++++ .../SpringExtraLoginFieldsApplication.java | 13 ++ .../baeldung/securityextrafields/User.java | 23 ++ .../securityextrafields/UserRepository.java | 7 + .../securityextrafields/WebController.java | 51 +++++ .../application-extrafields.properties | 1 + .../src/main/resources/static/css/main.css | 18 ++ .../resources/templatesextrafields/index.html | 24 +++ .../resources/templatesextrafields/login.html | 23 ++ .../templatesextrafields/user/index.html | 13 ++ 14 files changed, 459 insertions(+), 94 deletions(-) create mode 100644 spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java create mode 100644 spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java create mode 100644 spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java create mode 100644 spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java create mode 100644 spring-5-security/src/main/java/com/baeldung/securityextrafields/SpringExtraLoginFieldsApplication.java create mode 100644 spring-5-security/src/main/java/com/baeldung/securityextrafields/User.java create mode 100644 spring-5-security/src/main/java/com/baeldung/securityextrafields/UserRepository.java create mode 100644 spring-5-security/src/main/java/com/baeldung/securityextrafields/WebController.java create mode 100644 spring-5-security/src/main/resources/application-extrafields.properties create mode 100644 spring-5-security/src/main/resources/static/css/main.css create mode 100644 spring-5-security/src/main/resources/templatesextrafields/index.html create mode 100644 spring-5-security/src/main/resources/templatesextrafields/login.html create mode 100644 spring-5-security/src/main/resources/templatesextrafields/user/index.html diff --git a/spring-5-security/pom.xml b/spring-5-security/pom.xml index c0f73b1bdd..c94e921a03 100644 --- a/spring-5-security/pom.xml +++ b/spring-5-security/pom.xml @@ -1,95 +1,110 @@ - - 4.0.0 - com.baeldung - spring-5-security - 0.0.1-SNAPSHOT - jar - - spring-5-security - spring 5 security sample project - - - org.springframework.boot - spring-boot-starter-parent - 2.0.0.M7 - - - - - - - org.springframework.boot - spring-boot-starter-security - - - org.springframework.boot - spring-boot-starter-web - - - org.springframework.boot - spring-boot-starter-thymeleaf - - - - - org.springframework.security - spring-security-oauth2-client - - - org.springframework.security - spring-security-oauth2-jose - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - org.apache.maven.plugins - maven-surefire-plugin - - 3 - true - methods - true - - **/*IntegrationTest.java - **/*LiveTest.java - - - - - - - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - false - - - - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - false - - - - - - UTF-8 - UTF-8 - 1.8 - + + 4.0.0 + com.baeldung + spring-5-security + 0.0.1-SNAPSHOT + jar + + spring-5-security + spring 5 security sample project + + + org.springframework.boot + spring-boot-starter-parent + 2.0.0.M7 + + + + + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-thymeleaf + + + org.thymeleaf.extras + thymeleaf-extras-springsecurity4 + + + + + org.springframework.security + spring-security-oauth2-client + + + org.springframework.security + spring-security-oauth2-jose + + + + org.springframework.boot + spring-boot-starter-test + test + + + org.springframework.security + spring-security-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + org.apache.maven.plugins + maven-surefire-plugin + + 3 + true + methods + true + + **/*IntegrationTest.java + **/*LiveTest.java + + + + + + + + + spring-milestones + Spring Milestones + https://repo.spring.io/milestone + + false + + + + + + spring-milestones + Spring Milestones + https://repo.spring.io/milestone + + false + + + + + + UTF-8 + UTF-8 + 1.8 + \ No newline at end of file diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java b/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java new file mode 100644 index 0000000000..b5d628628d --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java @@ -0,0 +1,54 @@ +package com.baeldung.securityextrafields; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.security.authentication.AuthenticationServiceException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; + +public class CustomAuthenticationFilter extends UsernamePasswordAuthenticationFilter { + + public static final String SPRING_SECURITY_FORM_DOMAIN_KEY = "domain"; + + @Override + public Authentication attemptAuthentication(HttpServletRequest request, HttpServletResponse response) + throws AuthenticationException { + + if (!request.getMethod() + .equals("POST")) { + throw new AuthenticationServiceException("Authentication method not supported: " + request.getMethod()); + } + + UsernamePasswordAuthenticationToken authRequest = getAuthRequest(request); + setDetails(request, authRequest); + return this.getAuthenticationManager() + .authenticate(authRequest); + } + + private UsernamePasswordAuthenticationToken getAuthRequest(HttpServletRequest request) { + String username = obtainUsername(request); + String password = obtainPassword(request); + String domain = obtainDomain(request); + + if (username == null) { + username = ""; + } + if (password == null) { + password = ""; + } + if (domain == null) { + domain = ""; + } + + String usernameDomain = String.format("%s%s%s", username.trim(), + String.valueOf(Character.LINE_SEPARATOR), domain); + return new UsernamePasswordAuthenticationToken(usernameDomain, password); + } + + private String obtainDomain(HttpServletRequest request) { + return request.getParameter(SPRING_SECURITY_FORM_DOMAIN_KEY); + } +} diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java b/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java new file mode 100644 index 0000000000..be02834852 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java @@ -0,0 +1,32 @@ +package com.baeldung.securityextrafields; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +@Service("userDetailsService") +public class CustomUserDetailsService implements UserDetailsService { + + private final UserRepository userRepository; + + public CustomUserDetailsService(UserRepository userRepository) { + this.userRepository = userRepository; + } + + @Override + public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { + String[] usernameAndDomain = StringUtils.split(username, String.valueOf(Character.LINE_SEPARATOR)); + if (usernameAndDomain == null || usernameAndDomain.length != 2) { + throw new UsernameNotFoundException("Username and domain must be provided"); + } + User user = userRepository.findUser(usernameAndDomain[0], usernameAndDomain[1]); + if (user == null) { + throw new UsernameNotFoundException( + String.format("Username not found for domain, username=%s, domain=%s", + usernameAndDomain[0], usernameAndDomain[1])); + } + return user; + } +} diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java b/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java new file mode 100644 index 0000000000..c86769b016 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java @@ -0,0 +1,26 @@ +package com.baeldung.securityextrafields; + +import java.util.ArrayList; +import java.util.Collection; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.stereotype.Repository; + +@Repository("userRepository") +public class CustomUserRepository implements UserRepository { + + @Override + public User findUser(String username, String domain) { + if (StringUtils.isAnyBlank(username, domain)) { + return null; + } else { + Collection authorities = new ArrayList<>(); + User user = new User(username, domain, + "$2a$10$U3GhSMpsMSOE8Kqsbn58/edxDBKlVuYMh7qk/7ErApYFjJzi2VG5K", true, + true, true, true, authorities); + return user; + } + } + +} diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java b/spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java new file mode 100644 index 0000000000..257cc42692 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java @@ -0,0 +1,65 @@ +package com.baeldung.securityextrafields; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.PropertySource; +import org.springframework.security.authentication.AuthenticationProvider; +import org.springframework.security.authentication.dao.DaoAuthenticationProvider; +import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler; +import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; + +@EnableWebSecurity +@PropertySource("application-extrafields.properties") +public class SecurityConfig extends WebSecurityConfigurerAdapter { + + @Autowired + private UserDetailsService userDetailsService; + + @Override + protected void configure(HttpSecurity http) throws Exception { + + http + .addFilterBefore(authenticationFilter(), UsernamePasswordAuthenticationFilter.class) + .authorizeRequests() + .antMatchers("/css/**", "/index").permitAll() + .antMatchers("/user/**").authenticated() + .and() + .formLogin().loginPage("/login") + .and() + .logout() + .logoutUrl("/logout"); + } + + public CustomAuthenticationFilter authenticationFilter() throws Exception { + CustomAuthenticationFilter filter = new CustomAuthenticationFilter(); + filter.setAuthenticationManager(authenticationManagerBean()); + filter.setAuthenticationFailureHandler(failureHandler()); + return filter; + } + + @Autowired + public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception { + auth.authenticationProvider(authProvider()); + } + + public AuthenticationProvider authProvider() { + DaoAuthenticationProvider provider = new DaoAuthenticationProvider(); + provider.setUserDetailsService(userDetailsService); + provider.setPasswordEncoder(passwordEncoder()); + return provider; + } + + public SimpleUrlAuthenticationFailureHandler failureHandler() { + return new SimpleUrlAuthenticationFailureHandler("/login?error=true"); + } + + public PasswordEncoder passwordEncoder() { + return new BCryptPasswordEncoder(); + } +} diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/SpringExtraLoginFieldsApplication.java b/spring-5-security/src/main/java/com/baeldung/securityextrafields/SpringExtraLoginFieldsApplication.java new file mode 100644 index 0000000000..a779acc75e --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/securityextrafields/SpringExtraLoginFieldsApplication.java @@ -0,0 +1,13 @@ +package com.baeldung.securityextrafields; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class SpringExtraLoginFieldsApplication { + + public static void main(String[] args) { + SpringApplication.run(SpringExtraLoginFieldsApplication.class, args); + } + +} diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/User.java b/spring-5-security/src/main/java/com/baeldung/securityextrafields/User.java new file mode 100644 index 0000000000..a5b3a434ae --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/securityextrafields/User.java @@ -0,0 +1,23 @@ +package com.baeldung.securityextrafields; + +import java.util.Collection; + +import org.springframework.security.core.GrantedAuthority; + +public class User extends org.springframework.security.core.userdetails.User { + + private static final long serialVersionUID = 1L; + + private final String domain; + + public User(String username, String domain, String password, boolean enabled, + boolean accountNonExpired, boolean credentialsNonExpired, + boolean accountNonLocked, Collection authorities) { + super(username, password, enabled, accountNonExpired, credentialsNonExpired, accountNonLocked, authorities); + this.domain = domain; + } + + public String getDomain() { + return domain; + } +} diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/UserRepository.java b/spring-5-security/src/main/java/com/baeldung/securityextrafields/UserRepository.java new file mode 100644 index 0000000000..4ca65b13d5 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/securityextrafields/UserRepository.java @@ -0,0 +1,7 @@ +package com.baeldung.securityextrafields; + +public interface UserRepository { + + public User findUser(String username, String domain); + +} diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/WebController.java b/spring-5-security/src/main/java/com/baeldung/securityextrafields/WebController.java new file mode 100644 index 0000000000..4a8abb4a83 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/securityextrafields/WebController.java @@ -0,0 +1,51 @@ +package com.baeldung.securityextrafields; + +import java.util.Optional; + +import org.springframework.security.authentication.AnonymousAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.RequestMapping; + +@Controller +public class WebController { + + @RequestMapping("/") + public String root() { + return "redirect:/index"; + } + + @RequestMapping("/index") + public String index(Model model) { + getDomain().ifPresent(d -> { + model.addAttribute("domain", d); + }); + return "index"; + } + + @RequestMapping("/user/index") + public String userIndex(Model model) { + getDomain().ifPresent(d -> { + model.addAttribute("domain", d); + }); + return "user/index"; + } + + @RequestMapping("/login") + public String login() { + return "login"; + } + + private Optional getDomain() { + Authentication auth = SecurityContextHolder.getContext() + .getAuthentication(); + String domain = null; + if (auth != null && !auth.getClass().equals(AnonymousAuthenticationToken.class)) { + User user = (User) auth.getPrincipal(); + domain = user.getDomain(); + } + return Optional.ofNullable(domain); + } +} diff --git a/spring-5-security/src/main/resources/application-extrafields.properties b/spring-5-security/src/main/resources/application-extrafields.properties new file mode 100644 index 0000000000..ab4134ce3e --- /dev/null +++ b/spring-5-security/src/main/resources/application-extrafields.properties @@ -0,0 +1 @@ +spring.thymeleaf.prefix = classpath:/templatesextrafields/ \ No newline at end of file diff --git a/spring-5-security/src/main/resources/static/css/main.css b/spring-5-security/src/main/resources/static/css/main.css new file mode 100644 index 0000000000..9299ee6158 --- /dev/null +++ b/spring-5-security/src/main/resources/static/css/main.css @@ -0,0 +1,18 @@ +body { + font-family: sans; + font-size: 1em; +} + +p.error { + font-weight: bold; + color: red; +} + +div.logout { + float: right; +} + +.formfield { + margin: 0.5em; + padding: 0.3em; +} \ No newline at end of file diff --git a/spring-5-security/src/main/resources/templatesextrafields/index.html b/spring-5-security/src/main/resources/templatesextrafields/index.html new file mode 100644 index 0000000000..52f6224dfb --- /dev/null +++ b/spring-5-security/src/main/resources/templatesextrafields/index.html @@ -0,0 +1,24 @@ + + + + Spring Security - Login With Extra Fields + + + + +
+ Logged in user: | + domain: Some Domain +
+
+ +
+
+
+

Hello Spring Security

+

This is an unsecured page, but you can access the secured pages after authenticating.

+ + + diff --git a/spring-5-security/src/main/resources/templatesextrafields/login.html b/spring-5-security/src/main/resources/templatesextrafields/login.html new file mode 100644 index 0000000000..cafec89c15 --- /dev/null +++ b/spring-5-security/src/main/resources/templatesextrafields/login.html @@ -0,0 +1,23 @@ + + + + Login page + + + + +

Login page

+

Example: user / domain / password

+

Invalid user, password, or domain

+
+ : +
+ : +
+ : +
+ +
+

Back to home page

+ + diff --git a/spring-5-security/src/main/resources/templatesextrafields/user/index.html b/spring-5-security/src/main/resources/templatesextrafields/user/index.html new file mode 100644 index 0000000000..a4c1535100 --- /dev/null +++ b/spring-5-security/src/main/resources/templatesextrafields/user/index.html @@ -0,0 +1,13 @@ + + + + Spring Security - Login With Extra Fields + + + + +
+

This is a secured page!

+

Back to home page

+ + From 99887d2f1b2a2ef5257b3a3dbe06eb7dd195c939 Mon Sep 17 00:00:00 2001 From: Chris Oberle Date: Tue, 16 Jan 2018 18:26:43 -0500 Subject: [PATCH 064/391] finish moving example code to spring-5-security module --- spring-5-security/pom.xml | 222 ++++---- .../securityextrafields/SecurityConfig.java | 2 +- .../SecurityExtraFieldsTest.java | 25 +- spring-5/pom.xml | 512 +++++++++--------- ...gSecurity5ExtraLoginFieldsApplication.java | 15 - .../CustomAuthenticationFilter.java | 54 -- .../CustomUserDetailsService.java | 32 -- .../CustomUserRepository.java | 26 - .../securityextrafields/SecurityConfig.java | 63 --- .../baeldung/securityextrafields/User.java | 23 - .../securityextrafields/UserRepository.java | 7 - .../securityextrafields/WebController.java | 51 -- .../src/main/resources/static/css/main.css | 18 - .../src/main/resources/templates/index.html | 24 - .../src/main/resources/templates/login.html | 23 - .../main/resources/templates/user/index.html | 13 - 16 files changed, 374 insertions(+), 736 deletions(-) rename {spring-5 => spring-5-security}/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java (83%) delete mode 100644 spring-5/src/main/java/com/baeldung/SpringSecurity5ExtraLoginFieldsApplication.java delete mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java delete mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java delete mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java delete mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java delete mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/User.java delete mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/UserRepository.java delete mode 100644 spring-5/src/main/java/com/baeldung/securityextrafields/WebController.java delete mode 100644 spring-5/src/main/resources/static/css/main.css delete mode 100644 spring-5/src/main/resources/templates/index.html delete mode 100644 spring-5/src/main/resources/templates/login.html delete mode 100644 spring-5/src/main/resources/templates/user/index.html diff --git a/spring-5-security/pom.xml b/spring-5-security/pom.xml index c94e921a03..9300882459 100644 --- a/spring-5-security/pom.xml +++ b/spring-5-security/pom.xml @@ -1,110 +1,114 @@ - - 4.0.0 - com.baeldung - spring-5-security - 0.0.1-SNAPSHOT - jar - - spring-5-security - spring 5 security sample project - - - org.springframework.boot - spring-boot-starter-parent - 2.0.0.M7 - - - - - - - org.springframework.boot - spring-boot-starter-security - - - org.springframework.boot - spring-boot-starter-web - - - org.springframework.boot - spring-boot-starter-thymeleaf - - - org.thymeleaf.extras - thymeleaf-extras-springsecurity4 - - - - - org.springframework.security - spring-security-oauth2-client - - - org.springframework.security - spring-security-oauth2-jose - - - - org.springframework.boot - spring-boot-starter-test - test - - - org.springframework.security - spring-security-test - test - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - org.apache.maven.plugins - maven-surefire-plugin - - 3 - true - methods - true - - **/*IntegrationTest.java - **/*LiveTest.java - - - - - - - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - false - - - - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - false - - - - - - UTF-8 - UTF-8 - 1.8 - + + 4.0.0 + com.baeldung + spring-5-security + 0.0.1-SNAPSHOT + jar + + spring-5-security + spring 5 security sample project + + + org.springframework.boot + spring-boot-starter-parent + 2.0.0.M7 + + + + + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-thymeleaf + + + org.thymeleaf.extras + thymeleaf-extras-springsecurity4 + + + + + org.springframework.security + spring-security-oauth2-client + + + org.springframework.security + spring-security-oauth2-jose + + + + org.springframework + spring-test + + + org.springframework.boot + spring-boot-starter-test + test + + + org.springframework.security + spring-security-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + org.apache.maven.plugins + maven-surefire-plugin + + 3 + true + methods + true + + **/*IntegrationTest.java + **/*LiveTest.java + + + + + + + + + spring-milestones + Spring Milestones + https://repo.spring.io/milestone + + false + + + + + + spring-milestones + Spring Milestones + https://repo.spring.io/milestone + + false + + + + + + UTF-8 + UTF-8 + 1.8 + \ No newline at end of file diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java b/spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java index 257cc42692..affb6d436d 100644 --- a/spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java +++ b/spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java @@ -15,7 +15,7 @@ import org.springframework.security.web.authentication.SimpleUrlAuthenticationFa import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; @EnableWebSecurity -@PropertySource("application-extrafields.properties") +@PropertySource("classpath:/application-extrafields.properties") public class SecurityConfig extends WebSecurityConfigurerAdapter { @Autowired diff --git a/spring-5/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java b/spring-5-security/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java similarity index 83% rename from spring-5/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java rename to spring-5-security/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java index 09ee0e66a0..cf0701708d 100644 --- a/spring-5/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java +++ b/spring-5-security/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java @@ -11,47 +11,44 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. import java.util.ArrayList; import java.util.Collection; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.DisplayName; -import org.junit.jupiter.api.Test; +import org.junit.Before; +import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; import org.springframework.mock.web.MockHttpSession; import org.springframework.security.core.Authentication; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.context.SecurityContext; import org.springframework.security.web.FilterChainProxy; import org.springframework.security.web.context.HttpSessionSecurityContextRepository; -import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit.jupiter.web.SpringJUnitWebConfig; import org.springframework.test.context.junit4.SpringRunner; -import org.springframework.test.context.web.WebAppConfiguration; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.MvcResult; import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; import org.springframework.test.web.servlet.setup.MockMvcBuilders; import org.springframework.web.context.WebApplicationContext; -import com.baeldung.SpringSecurity5ExtraLoginFieldsApplication; - -@WebAppConfiguration -@SpringJUnitWebConfig @RunWith(SpringRunner.class) -@ContextConfiguration(classes = SpringSecurity5ExtraLoginFieldsApplication.class) +@SpringJUnitWebConfig +@SpringBootTest(classes = SpringExtraLoginFieldsApplication.class) public class SecurityExtraFieldsTest { @Autowired private FilterChainProxy springSecurityFilterChain; + @Autowired + private WebApplicationContext wac; + private MockMvc mockMvc; - @BeforeEach - public void setup(WebApplicationContext wac) { + @Before + public void setup() { this.mockMvc = MockMvcBuilders.webAppContextSetup(wac) .apply(springSecurity(springSecurityFilterChain)).build(); } - @DisplayName("Access of root path redirects to index") @Test public void givenRootPathAccess_thenRedirectToIndex() throws Exception { this.mockMvc.perform(get("/")) @@ -59,7 +56,6 @@ public class SecurityExtraFieldsTest { .andExpect(redirectedUrlPattern("/index*")); } - @DisplayName("Unauthenticated access of secured resource redirects to login page") @Test public void givenSecuredResource_whenAccessUnauthenticated_thenRequiresAuthentication() throws Exception { this.mockMvc.perform(get("/user/index")) @@ -67,7 +63,6 @@ public class SecurityExtraFieldsTest { .andExpect(redirectedUrlPattern("**/login")); } - @DisplayName("Succesfull auth on login page redirects and extra field exists") @Test public void givenAccessSecuredResource_whenAuthenticated_thenAuthHasExtraFields() throws Exception { MockHttpServletRequestBuilder securedResourceAccess = get("/user/index"); diff --git a/spring-5/pom.xml b/spring-5/pom.xml index 71f355f41a..19dd65d78f 100644 --- a/spring-5/pom.xml +++ b/spring-5/pom.xml @@ -1,262 +1,250 @@ - - - 4.0.0 - - com.baeldung - spring-5 - 0.0.1-SNAPSHOT - jar - - spring-5 - spring 5 sample project about new features - - - org.springframework.boot - spring-boot-starter-parent - 2.0.0.M7 - - - - - - org.springframework.boot - spring-boot-starter-data-jpa - - - org.springframework.boot - spring-boot-starter-security - - - org.springframework.boot - spring-boot-starter-validation - - - org.springframework.boot - spring-boot-starter-web - - - org.springframework.boot - spring-boot-starter-web - - - org.springframework.boot - spring-boot-starter-thymeleaf - - - org.thymeleaf.extras - thymeleaf-extras-springsecurity4 - - - org.springframework.boot - spring-boot-starter-webflux - - - org.springframework.boot - spring-boot-starter-hateoas - - - org.projectreactor - reactor-spring - ${reactor-spring.version} - - - javax.json.bind - javax.json.bind-api - ${jsonb-api.version} - - - - - - - - - - - - - - - org.apache.geronimo.specs - geronimo-json_1.1_spec - ${geronimo-json_1.1_spec.version} - - - org.apache.johnzon - johnzon-jsonb - ${johnzon.version} - - - - org.apache.commons - commons-lang3 - - - - - - org.springframework.boot - spring-boot-devtools - runtime - - - com.h2database - h2 - runtime - - - - org.springframework - spring-test - - - org.springframework.boot - spring-boot-starter-test - test - - - org.springframework.security - spring-security-test - test - - - - org.apache.commons - commons-collections4 - 4.1 - test - - - - org.junit.jupiter - junit-jupiter-api - ${junit.jupiter.version} - - - org.junit.jupiter - junit-jupiter-engine - ${junit.jupiter.version} - test - - - org.junit.platform - junit-platform-surefire-provider - ${junit.platform.version} - test - - - org.junit.platform - junit-platform-runner - ${junit.platform.version} - test - - - - org.springframework.restdocs - spring-restdocs-mockmvc - test - - - org.springframework.restdocs - spring-restdocs-webtestclient - test - - - org.springframework.restdocs - spring-restdocs-restassured - test - - - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - com.baeldung.Spring5Application - JAR - - - - - org.apache.maven.plugins - maven-surefire-plugin - - 3 - true - methods - true - - **/*IntegrationTest.java - **/*LiveTest.java - - - - - org.asciidoctor - asciidoctor-maven-plugin - ${asciidoctor-plugin.version} - - - generate-docs - package - - process-asciidoc - - - html - book - - ${snippetsDirectory} - - src/docs/asciidocs - target/generated-docs - - - - - - - - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - false - - - - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - false - - - - - - UTF-8 - UTF-8 - 1.8 - 1.0.0 - 5.0.0 - 2.20 - 5.0.2.RELEASE - 1.0.1.RELEASE - 1.1.3 - 1.0 - 1.0 - 1.5.6 - ${project.build.directory}/generated-snippets - - - + + + 4.0.0 + + com.baeldung + spring-5 + 0.0.1-SNAPSHOT + jar + + spring-5 + spring 5 sample project about new features + + + org.springframework.boot + spring-boot-starter-parent + 2.0.0.M7 + + + + + + org.springframework.boot + spring-boot-starter-data-jpa + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-validation + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-webflux + + + org.springframework.boot + spring-boot-starter-hateoas + + + org.projectreactor + reactor-spring + ${reactor-spring.version} + + + javax.json.bind + javax.json.bind-api + ${jsonb-api.version} + + + + + + + + + + + + + + + org.apache.geronimo.specs + geronimo-json_1.1_spec + ${geronimo-json_1.1_spec.version} + + + org.apache.johnzon + johnzon-jsonb + ${johnzon.version} + + + + org.apache.commons + commons-lang3 + + + + + + org.springframework.boot + spring-boot-devtools + runtime + + + com.h2database + h2 + runtime + + + + org.springframework + spring-test + + + org.springframework.boot + spring-boot-starter-test + test + + + org.springframework.security + spring-security-test + test + + + + org.apache.commons + commons-collections4 + 4.1 + test + + + + org.junit.jupiter + junit-jupiter-api + ${junit.jupiter.version} + + + org.junit.jupiter + junit-jupiter-engine + ${junit.jupiter.version} + test + + + org.junit.platform + junit-platform-surefire-provider + ${junit.platform.version} + test + + + org.junit.platform + junit-platform-runner + ${junit.platform.version} + test + + + + org.springframework.restdocs + spring-restdocs-mockmvc + test + + + org.springframework.restdocs + spring-restdocs-webtestclient + test + + + org.springframework.restdocs + spring-restdocs-restassured + test + + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + com.baeldung.Spring5Application + JAR + + + + + org.apache.maven.plugins + maven-surefire-plugin + + 3 + true + methods + true + + **/*IntegrationTest.java + **/*LiveTest.java + + + + + org.asciidoctor + asciidoctor-maven-plugin + ${asciidoctor-plugin.version} + + + generate-docs + package + + process-asciidoc + + + html + book + + ${snippetsDirectory} + + src/docs/asciidocs + target/generated-docs + + + + + + + + + + spring-milestones + Spring Milestones + https://repo.spring.io/milestone + + false + + + + + + spring-milestones + Spring Milestones + https://repo.spring.io/milestone + + false + + + + + + UTF-8 + UTF-8 + 1.8 + 1.0.0 + 5.0.0 + 2.20 + 5.0.2.RELEASE + 1.0.1.RELEASE + 1.1.3 + 1.0 + 1.0 + 1.5.6 + ${project.build.directory}/generated-snippets + + + diff --git a/spring-5/src/main/java/com/baeldung/SpringSecurity5ExtraLoginFieldsApplication.java b/spring-5/src/main/java/com/baeldung/SpringSecurity5ExtraLoginFieldsApplication.java deleted file mode 100644 index b6285dfc71..0000000000 --- a/spring-5/src/main/java/com/baeldung/SpringSecurity5ExtraLoginFieldsApplication.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.baeldung; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.context.annotation.ComponentScan; - -@ComponentScan(basePackages = {"com.baeldung.securityextrafields"}) -@SpringBootApplication -public class SpringSecurity5ExtraLoginFieldsApplication { - - public static void main(String[] args) { - SpringApplication.run(SpringSecurity5ExtraLoginFieldsApplication.class, args); - } - -} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java deleted file mode 100644 index b5d628628d..0000000000 --- a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.baeldung.securityextrafields; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.springframework.security.authentication.AuthenticationServiceException; -import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; -import org.springframework.security.core.Authentication; -import org.springframework.security.core.AuthenticationException; -import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; - -public class CustomAuthenticationFilter extends UsernamePasswordAuthenticationFilter { - - public static final String SPRING_SECURITY_FORM_DOMAIN_KEY = "domain"; - - @Override - public Authentication attemptAuthentication(HttpServletRequest request, HttpServletResponse response) - throws AuthenticationException { - - if (!request.getMethod() - .equals("POST")) { - throw new AuthenticationServiceException("Authentication method not supported: " + request.getMethod()); - } - - UsernamePasswordAuthenticationToken authRequest = getAuthRequest(request); - setDetails(request, authRequest); - return this.getAuthenticationManager() - .authenticate(authRequest); - } - - private UsernamePasswordAuthenticationToken getAuthRequest(HttpServletRequest request) { - String username = obtainUsername(request); - String password = obtainPassword(request); - String domain = obtainDomain(request); - - if (username == null) { - username = ""; - } - if (password == null) { - password = ""; - } - if (domain == null) { - domain = ""; - } - - String usernameDomain = String.format("%s%s%s", username.trim(), - String.valueOf(Character.LINE_SEPARATOR), domain); - return new UsernamePasswordAuthenticationToken(usernameDomain, password); - } - - private String obtainDomain(HttpServletRequest request) { - return request.getParameter(SPRING_SECURITY_FORM_DOMAIN_KEY); - } -} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java deleted file mode 100644 index be02834852..0000000000 --- a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.baeldung.securityextrafields; - -import org.apache.commons.lang3.StringUtils; -import org.springframework.security.core.userdetails.UserDetails; -import org.springframework.security.core.userdetails.UserDetailsService; -import org.springframework.security.core.userdetails.UsernameNotFoundException; -import org.springframework.stereotype.Service; - -@Service("userDetailsService") -public class CustomUserDetailsService implements UserDetailsService { - - private final UserRepository userRepository; - - public CustomUserDetailsService(UserRepository userRepository) { - this.userRepository = userRepository; - } - - @Override - public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { - String[] usernameAndDomain = StringUtils.split(username, String.valueOf(Character.LINE_SEPARATOR)); - if (usernameAndDomain == null || usernameAndDomain.length != 2) { - throw new UsernameNotFoundException("Username and domain must be provided"); - } - User user = userRepository.findUser(usernameAndDomain[0], usernameAndDomain[1]); - if (user == null) { - throw new UsernameNotFoundException( - String.format("Username not found for domain, username=%s, domain=%s", - usernameAndDomain[0], usernameAndDomain[1])); - } - return user; - } -} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java b/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java deleted file mode 100644 index c86769b016..0000000000 --- a/spring-5/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.baeldung.securityextrafields; - -import java.util.ArrayList; -import java.util.Collection; - -import org.apache.commons.lang3.StringUtils; -import org.springframework.security.core.GrantedAuthority; -import org.springframework.stereotype.Repository; - -@Repository("userRepository") -public class CustomUserRepository implements UserRepository { - - @Override - public User findUser(String username, String domain) { - if (StringUtils.isAnyBlank(username, domain)) { - return null; - } else { - Collection authorities = new ArrayList<>(); - User user = new User(username, domain, - "$2a$10$U3GhSMpsMSOE8Kqsbn58/edxDBKlVuYMh7qk/7ErApYFjJzi2VG5K", true, - true, true, true, authorities); - return user; - } - } - -} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java b/spring-5/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java deleted file mode 100644 index e8e8567773..0000000000 --- a/spring-5/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.baeldung.securityextrafields; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.authentication.AuthenticationProvider; -import org.springframework.security.authentication.dao.DaoAuthenticationProvider; -import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; -import org.springframework.security.config.annotation.web.builders.HttpSecurity; -import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; -import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; -import org.springframework.security.core.userdetails.UserDetailsService; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; -import org.springframework.security.crypto.password.PasswordEncoder; -import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler; -import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; - -@EnableWebSecurity -public class SecurityConfig extends WebSecurityConfigurerAdapter { - - @Autowired - private UserDetailsService userDetailsService; - - @Override - protected void configure(HttpSecurity http) throws Exception { - - http - .addFilterBefore(authenticationFilter(), UsernamePasswordAuthenticationFilter.class) - .authorizeRequests() - .antMatchers("/css/**", "/index").permitAll() - .antMatchers("/user/**").authenticated() - .and() - .formLogin().loginPage("/login") - .and() - .logout() - .logoutUrl("/logout"); - } - - public CustomAuthenticationFilter authenticationFilter() throws Exception { - CustomAuthenticationFilter filter = new CustomAuthenticationFilter(); - filter.setAuthenticationManager(authenticationManagerBean()); - filter.setAuthenticationFailureHandler(failureHandler()); - return filter; - } - - @Autowired - public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception { - auth.authenticationProvider(authProvider()); - } - - public AuthenticationProvider authProvider() { - DaoAuthenticationProvider provider = new DaoAuthenticationProvider(); - provider.setUserDetailsService(userDetailsService); - provider.setPasswordEncoder(passwordEncoder()); - return provider; - } - - public SimpleUrlAuthenticationFailureHandler failureHandler() { - return new SimpleUrlAuthenticationFailureHandler("/login?error=true"); - } - - public PasswordEncoder passwordEncoder() { - return new BCryptPasswordEncoder(); - } -} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/User.java b/spring-5/src/main/java/com/baeldung/securityextrafields/User.java deleted file mode 100644 index a5b3a434ae..0000000000 --- a/spring-5/src/main/java/com/baeldung/securityextrafields/User.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.baeldung.securityextrafields; - -import java.util.Collection; - -import org.springframework.security.core.GrantedAuthority; - -public class User extends org.springframework.security.core.userdetails.User { - - private static final long serialVersionUID = 1L; - - private final String domain; - - public User(String username, String domain, String password, boolean enabled, - boolean accountNonExpired, boolean credentialsNonExpired, - boolean accountNonLocked, Collection authorities) { - super(username, password, enabled, accountNonExpired, credentialsNonExpired, accountNonLocked, authorities); - this.domain = domain; - } - - public String getDomain() { - return domain; - } -} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/UserRepository.java b/spring-5/src/main/java/com/baeldung/securityextrafields/UserRepository.java deleted file mode 100644 index 4ca65b13d5..0000000000 --- a/spring-5/src/main/java/com/baeldung/securityextrafields/UserRepository.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.baeldung.securityextrafields; - -public interface UserRepository { - - public User findUser(String username, String domain); - -} diff --git a/spring-5/src/main/java/com/baeldung/securityextrafields/WebController.java b/spring-5/src/main/java/com/baeldung/securityextrafields/WebController.java deleted file mode 100644 index 4a8abb4a83..0000000000 --- a/spring-5/src/main/java/com/baeldung/securityextrafields/WebController.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.baeldung.securityextrafields; - -import java.util.Optional; - -import org.springframework.security.authentication.AnonymousAuthenticationToken; -import org.springframework.security.core.Authentication; -import org.springframework.security.core.context.SecurityContextHolder; -import org.springframework.stereotype.Controller; -import org.springframework.ui.Model; -import org.springframework.web.bind.annotation.RequestMapping; - -@Controller -public class WebController { - - @RequestMapping("/") - public String root() { - return "redirect:/index"; - } - - @RequestMapping("/index") - public String index(Model model) { - getDomain().ifPresent(d -> { - model.addAttribute("domain", d); - }); - return "index"; - } - - @RequestMapping("/user/index") - public String userIndex(Model model) { - getDomain().ifPresent(d -> { - model.addAttribute("domain", d); - }); - return "user/index"; - } - - @RequestMapping("/login") - public String login() { - return "login"; - } - - private Optional getDomain() { - Authentication auth = SecurityContextHolder.getContext() - .getAuthentication(); - String domain = null; - if (auth != null && !auth.getClass().equals(AnonymousAuthenticationToken.class)) { - User user = (User) auth.getPrincipal(); - domain = user.getDomain(); - } - return Optional.ofNullable(domain); - } -} diff --git a/spring-5/src/main/resources/static/css/main.css b/spring-5/src/main/resources/static/css/main.css deleted file mode 100644 index 9299ee6158..0000000000 --- a/spring-5/src/main/resources/static/css/main.css +++ /dev/null @@ -1,18 +0,0 @@ -body { - font-family: sans; - font-size: 1em; -} - -p.error { - font-weight: bold; - color: red; -} - -div.logout { - float: right; -} - -.formfield { - margin: 0.5em; - padding: 0.3em; -} \ No newline at end of file diff --git a/spring-5/src/main/resources/templates/index.html b/spring-5/src/main/resources/templates/index.html deleted file mode 100644 index 52f6224dfb..0000000000 --- a/spring-5/src/main/resources/templates/index.html +++ /dev/null @@ -1,24 +0,0 @@ - - - - Spring Security - Login With Extra Fields - - - - -
- Logged in user: | - domain: Some Domain -
-
- -
-
-
-

Hello Spring Security

-

This is an unsecured page, but you can access the secured pages after authenticating.

- - - diff --git a/spring-5/src/main/resources/templates/login.html b/spring-5/src/main/resources/templates/login.html deleted file mode 100644 index cafec89c15..0000000000 --- a/spring-5/src/main/resources/templates/login.html +++ /dev/null @@ -1,23 +0,0 @@ - - - - Login page - - - - -

Login page

-

Example: user / domain / password

-

Invalid user, password, or domain

-
- : -
- : -
- : -
- -
-

Back to home page

- - diff --git a/spring-5/src/main/resources/templates/user/index.html b/spring-5/src/main/resources/templates/user/index.html deleted file mode 100644 index a4c1535100..0000000000 --- a/spring-5/src/main/resources/templates/user/index.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - Spring Security - Login With Extra Fields - - - - -
-

This is a secured page!

-

Back to home page

- - From 5a0899ff25c1f54f890566e84840f668d660b444 Mon Sep 17 00:00:00 2001 From: Chris Oberle Date: Tue, 16 Jan 2018 18:31:42 -0500 Subject: [PATCH 065/391] fix formatting in pom --- spring-5-security/pom.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/spring-5-security/pom.xml b/spring-5-security/pom.xml index 9300882459..0a1d1f5df0 100644 --- a/spring-5-security/pom.xml +++ b/spring-5-security/pom.xml @@ -30,10 +30,10 @@ org.springframework.boot spring-boot-starter-thymeleaf - - org.thymeleaf.extras - thymeleaf-extras-springsecurity4 - + + org.thymeleaf.extras + thymeleaf-extras-springsecurity4 + From 29abf338f0aec14770562204fa558088f7b213d0 Mon Sep 17 00:00:00 2001 From: Chris Oberle Date: Tue, 16 Jan 2018 20:39:53 -0500 Subject: [PATCH 066/391] adjust spacing --- .../java/com/baeldung/securityextrafields/SecurityConfig.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java b/spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java index affb6d436d..429f6df972 100644 --- a/spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java +++ b/spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java @@ -45,7 +45,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { @Autowired public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception { - auth.authenticationProvider(authProvider()); + auth.authenticationProvider(authProvider()); } public AuthenticationProvider authProvider() { From 71abd78dff6065b5ceb6c96ce8eae0a857141355 Mon Sep 17 00:00:00 2001 From: Dominik Date: Wed, 10 Jan 2018 22:57:28 +0100 Subject: [PATCH 067/391] Fixes. --- .../com/baeldung/rxjava/FlowableTest.java | 79 +++++++++---------- 1 file changed, 39 insertions(+), 40 deletions(-) diff --git a/rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java b/rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java index 71d4f87b35..26b17ec163 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java @@ -5,12 +5,11 @@ import io.reactivex.Flowable; import io.reactivex.FlowableOnSubscribe; import io.reactivex.Observable; import io.reactivex.exceptions.MissingBackpressureException; -import io.reactivex.exceptions.OnErrorNotImplementedException; import io.reactivex.schedulers.Schedulers; import io.reactivex.subscribers.TestSubscriber; + import org.junit.Test; -import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; import java.util.stream.IntStream; @@ -34,61 +33,61 @@ public class FlowableTest { } @Test public void whenFlowableIsCreatedFromFlowableOnSubscribe_thenItIsProperlyInitialized() throws InterruptedException { - FlowableOnSubscribe flowableOnSubscribe = flowableEmitter -> { - flowableEmitter.onNext(1); - }; + FlowableOnSubscribe flowableOnSubscribe = flowableEmitter -> flowableEmitter.onNext(1); Flowable integerFlowable = Flowable.create(flowableOnSubscribe, BackpressureStrategy.BUFFER); assertNotNull(integerFlowable); } - @Test public void givenFlowableWithBufferStrategy_whenSourceEmitsFasterThanConsumerConsumes_thenAllValuesAreBufferedAndReceived() throws InterruptedException { + @Test public void whenFlowableUsesBufferStragegy_thenOnBackpressureAllValuesAreBufferedAndReceived() { + List testList = IntStream.range(0, 100000).boxed().collect(Collectors.toList()); + Observable observable = Observable.fromIterable(testList); + TestSubscriber testSubscriber = observable.toFlowable(BackpressureStrategy.BUFFER).observeOn(Schedulers.computation()).test(); + + testSubscriber.awaitTerminalEvent(); + + List receivedInts = testSubscriber.getEvents().get(0).stream().mapToInt(object -> (int) object).boxed().collect(Collectors.toList()); + + assertEquals(testList, receivedInts); + } + + @Test public void whenFlowableUsesDropStrategy_thenOnBackpressureNotAllValuesAreReceivedAndTheLastElementIsNotReceived() { List testList = IntStream.range(0, 100000).boxed().collect(Collectors.toList()); - List listToFill = new ArrayList(); Observable observable = Observable.fromIterable(testList); - observable.toFlowable(BackpressureStrategy.BUFFER).observeOn(Schedulers.computation()).subscribe(listToFill::add); - Thread.sleep(5000); - assertEquals(testList, listToFill); + TestSubscriber testSubscriber = observable.toFlowable(BackpressureStrategy.DROP).observeOn(Schedulers.computation()).test(); + testSubscriber.awaitTerminalEvent(); + List receivedInts = testSubscriber.getEvents().get(0).stream().mapToInt(object -> (int) object).boxed().collect(Collectors.toList()); + + assertThat(receivedInts.size() < testList.size()); + assertThat(!receivedInts.contains(100000)); } - @Test public void givenFlowableWithDropStrategy_whenSourceEmitsFasterThanConsumerConsumes_thenNotAllValuesAreReceived() throws InterruptedException { - List testList = IntStream.range(0, 100000).boxed().collect(Collectors.toList()); - List listToFill = new ArrayList(); - - Observable observable = Observable.fromIterable(testList); - observable.toFlowable(BackpressureStrategy.DROP).observeOn(Schedulers.computation()).subscribe(listToFill::add); - Thread.sleep(5000); - assertThat(listToFill.size() < testList.size()); - assertThat(!listToFill.contains(100000)); - } - - @Test - public void givenFlowableWithMissingStrategy_whenSourceEmitsFasterThanConsumerConsumes_thenExceptionIsThrown() throws InterruptedException { + @Test public void whenFlowableUsesMissingStrategy_thenExceptionIsThrownOnBackpressure() { Observable observable = Observable.range(1, 100000); - TestSubscriber subscriber =observable.toFlowable(BackpressureStrategy.MISSING).observeOn(Schedulers.computation()).test(); - subscriber.awaitTerminalEvent(); - subscriber.assertError(MissingBackpressureException.class); - } - - @Test - public void givenFlowableWithErrorStrategy_whenSourceEmitsFasterThanConsumerConsumes_thenExceptionIsThrown() throws InterruptedException { - Observable observable = Observable.range(1, 100000); - TestSubscriber subscriber =observable.toFlowable(BackpressureStrategy.ERROR).observeOn(Schedulers.computation()).test(); + TestSubscriber subscriber = observable.toFlowable(BackpressureStrategy.MISSING).observeOn(Schedulers.computation()).test(); subscriber.awaitTerminalEvent(); subscriber.assertError(MissingBackpressureException.class); } - @Test - public void givenFlowableWithLatestStrategy_whenSourceEmitsFasterThanConsumerConsumes_thenExceptionIsThrown() throws InterruptedException { - List testList = IntStream.range(0, 100000).boxed().collect(Collectors.toList()); - List listToFill = new ArrayList(); + @Test public void whenFlowableUsesErrorStrategy_thenExceptionIsThrownOnBackpressure() { + Observable observable = Observable.range(1, 100000); + TestSubscriber subscriber = observable.toFlowable(BackpressureStrategy.ERROR).observeOn(Schedulers.computation()).test(); + subscriber.awaitTerminalEvent(); + subscriber.assertError(MissingBackpressureException.class); + } + + @Test public void whenFlowableUsesLatesStrategy_thenNotElementsAreReceivedButTheLastElementIs() { + List testList = IntStream.range(0, 100000).boxed().collect(Collectors.toList()); Observable observable = Observable.fromIterable(testList); - observable.toFlowable(BackpressureStrategy.LATEST).observeOn(Schedulers.computation()).subscribe(listToFill::add); - Thread.sleep(6000); - assertThat(listToFill.size() < testList.size()); - assertThat(listToFill.contains(100000)); + TestSubscriber testSubscriber = observable.toFlowable(BackpressureStrategy.LATEST).observeOn(Schedulers.computation()).test(); + + testSubscriber.awaitTerminalEvent(); + List receivedInts = testSubscriber.getEvents().get(0).stream().mapToInt(object -> (int) object).boxed().collect(Collectors.toList()); + + assertThat(receivedInts.size() < testList.size()); + assertThat(receivedInts.contains(100000)); } } \ No newline at end of file From 6089ef64abe521e6f8259fb441fccc49b8ed7ec5 Mon Sep 17 00:00:00 2001 From: DOHA Date: Wed, 17 Jan 2018 20:14:37 +0200 Subject: [PATCH 068/391] upgrade opened to spring boot 2 --- spring-security-openid/pom.xml | 37 +++++++++++++++---- .../config/SpringOpenidApplication.java | 2 +- 2 files changed, 31 insertions(+), 8 deletions(-) diff --git a/spring-security-openid/pom.xml b/spring-security-openid/pom.xml index 2149334a5c..4c8112a163 100644 --- a/spring-security-openid/pom.xml +++ b/spring-security-openid/pom.xml @@ -11,12 +11,12 @@ spring-security-openid Spring OpenID sample project - - parent-boot-5 - com.baeldung - 0.0.1-SNAPSHOT - ../parent-boot-5 - + + org.springframework.boot + spring-boot-starter-parent + 2.0.0.M7 + + @@ -37,13 +37,36 @@ org.springframework.security.oauth spring-security-oauth2 + 2.2.1.RELEASE org.springframework.security spring-security-jwt + 1.0.9.RELEASE - + + + + spring-milestones + Spring Milestones + https://repo.spring.io/milestone + + false + + + + + + spring-milestones + Spring Milestones + https://repo.spring.io/milestone + + false + + + +
diff --git a/spring-security-openid/src/main/java/org/baeldung/config/SpringOpenidApplication.java b/spring-security-openid/src/main/java/org/baeldung/config/SpringOpenidApplication.java index ed57088c56..1acdba0623 100644 --- a/spring-security-openid/src/main/java/org/baeldung/config/SpringOpenidApplication.java +++ b/spring-security-openid/src/main/java/org/baeldung/config/SpringOpenidApplication.java @@ -2,7 +2,7 @@ package org.baeldung.config; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.boot.web.support.SpringBootServletInitializer; +import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; @SpringBootApplication public class SpringOpenidApplication extends SpringBootServletInitializer { From 33b93d18f64f83f1c46ecf07f1f351fa49f27b13 Mon Sep 17 00:00:00 2001 From: Chris Franklin Date: Sat, 20 Jan 2018 02:36:26 -0500 Subject: [PATCH 069/391] Christopher Franklin A Simple Tagging Implementation with Elasticsearch Modifying the existing Spring Data Elasticsearch example to use the tags already on the model. Also added a number of tests as examples of how to use the tags. --- .../data/es/repository/ArticleRepository.java | 9 +++++++- .../data/es/service/ArticleService.java | 7 +++++- .../data/es/service/ArticleServiceImpl.java | 15 +++++++++++-- .../data/es/ElasticSearchIntegrationTest.java | 22 ++++++++++++++++++- .../es/ElasticSearchQueryIntegrationTest.java | 12 ++++++++++ 5 files changed, 60 insertions(+), 5 deletions(-) diff --git a/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/repository/ArticleRepository.java b/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/repository/ArticleRepository.java index 8aef865401..93812a3cea 100644 --- a/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/repository/ArticleRepository.java +++ b/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/repository/ArticleRepository.java @@ -1,12 +1,13 @@ package com.baeldung.spring.data.es.repository; -import com.baeldung.spring.data.es.model.Article; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; import org.springframework.data.elasticsearch.annotations.Query; import org.springframework.data.elasticsearch.repository.ElasticsearchRepository; import org.springframework.stereotype.Repository; +import com.baeldung.spring.data.es.model.Article; + @Repository public interface ArticleRepository extends ElasticsearchRepository { @@ -14,4 +15,10 @@ public interface ArticleRepository extends ElasticsearchRepository findByAuthorsNameUsingCustomQuery(String name, Pageable pageable); + + @Query("{\"bool\": {\"must\": {\"match_all\": {}}, \"filter\": {\"term\": {\"tags\": \"?0\" }}}}") + Page
findByFilteredTagQuery(String tag, Pageable pageable); + + @Query("{\"bool\": {\"must\": {\"match\": {\"authors.name\": \"?0\"}}, \"filter\": {\"term\": {\"tags\": \"?1\" }}}}") + Page
findByAuthorsNameAndFilteredTagQuery(String name, String tag, Pageable pageable); } diff --git a/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleService.java b/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleService.java index b5a8fde633..63e2d91fa7 100644 --- a/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleService.java +++ b/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleService.java @@ -1,9 +1,10 @@ package com.baeldung.spring.data.es.service; -import com.baeldung.spring.data.es.model.Article; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; +import com.baeldung.spring.data.es.model.Article; + public interface ArticleService { Article save(Article article); @@ -15,6 +16,10 @@ public interface ArticleService { Page
findByAuthorNameUsingCustomQuery(String name, Pageable pageable); + Page
findByFilteredTagQuery(String tag, Pageable pageable); + + Page
findByAuthorsNameAndFilteredTagQuery(String name, String tag, Pageable pageable); + long count(); void delete(Article article); diff --git a/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleServiceImpl.java b/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleServiceImpl.java index 2a31b52602..0908ffa70e 100644 --- a/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleServiceImpl.java +++ b/spring-data-elasticsearch/src/main/java/com/baeldung/spring/data/es/service/ArticleServiceImpl.java @@ -1,12 +1,13 @@ package com.baeldung.spring.data.es.service; -import com.baeldung.spring.data.es.repository.ArticleRepository; -import com.baeldung.spring.data.es.model.Article; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; +import com.baeldung.spring.data.es.model.Article; +import com.baeldung.spring.data.es.repository.ArticleRepository; + @Service public class ArticleServiceImpl implements ArticleService { @@ -42,6 +43,16 @@ public class ArticleServiceImpl implements ArticleService { return articleRepository.findByAuthorsNameUsingCustomQuery(name, pageable); } + @Override + public Page
findByFilteredTagQuery(String tag, Pageable pageable) { + return articleRepository.findByFilteredTagQuery(tag, pageable); + } + + @Override + public Page
findByAuthorsNameAndFilteredTagQuery(String name, String tag, Pageable pageable) { + return articleRepository.findByAuthorsNameAndFilteredTagQuery(name, tag, pageable); + } + @Override public long count() { return articleRepository.count(); diff --git a/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchIntegrationTest.java b/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchIntegrationTest.java index 1280c8e1de..4a4cadb550 100644 --- a/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchIntegrationTest.java +++ b/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchIntegrationTest.java @@ -47,14 +47,22 @@ public class ElasticSearchIntegrationTest { Article article = new Article("Spring Data Elasticsearch"); article.setAuthors(asList(johnSmith, johnDoe)); + article.setTags("elasticsearch", "spring data"); articleService.save(article); article = new Article("Search engines"); article.setAuthors(asList(johnDoe)); + article.setTags("search engines", "tutorial"); articleService.save(article); article = new Article("Second Article About Elasticsearch"); article.setAuthors(asList(johnSmith)); + article.setTags("elasticsearch", "spring data"); + articleService.save(article); + + article = new Article("Elasticsearch Tutorial"); + article.setAuthors(asList(johnDoe)); + article.setTags("elasticsearch"); articleService.save(article); } @@ -79,10 +87,22 @@ public class ElasticSearchIntegrationTest { @Test public void givenCustomQuery_whenSearchByAuthorsName_thenArticleIsFound() { - final Page
articleByAuthorName = articleService.findByAuthorNameUsingCustomQuery("John Smith", new PageRequest(0, 10)); + final Page
articleByAuthorName = articleService.findByAuthorNameUsingCustomQuery("Smith", new PageRequest(0, 10)); + assertEquals(2L, articleByAuthorName.getTotalElements()); + } + + @Test + public void givenTagFilterQuery_whenSearchByTag_thenArticleIsFound() { + final Page
articleByAuthorName = articleService.findByFilteredTagQuery("elasticsearch", new PageRequest(0, 10)); assertEquals(3L, articleByAuthorName.getTotalElements()); } + @Test + public void givenTagFilterQuery_whenSearchByAuthorsName_thenArticleIsFound() { + final Page
articleByAuthorName = articleService.findByAuthorsNameAndFilteredTagQuery("Doe", "elasticsearch", new PageRequest(0, 10)); + assertEquals(2L, articleByAuthorName.getTotalElements()); + } + @Test public void givenPersistedArticles_whenUseRegexQuery_thenRightArticlesFound() { diff --git a/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchQueryIntegrationTest.java b/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchQueryIntegrationTest.java index cc4bce0c75..af69f74c1b 100644 --- a/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchQueryIntegrationTest.java +++ b/spring-data-elasticsearch/src/test/java/com/baeldung/spring/data/es/ElasticSearchQueryIntegrationTest.java @@ -174,4 +174,16 @@ public class ElasticSearchQueryIntegrationTest { final List
articles = elasticsearchTemplate.queryForList(searchQuery, Article.class); assertEquals(2, articles.size()); } + + @Test + public void givenBoolQuery_whenQueryByAuthorsName_thenFoundArticlesByThatAuthorAndFilteredTag() { + final QueryBuilder builder = boolQuery().must(nestedQuery("authors", boolQuery().must(termQuery("authors.name", "doe")))) + .filter(termQuery("tags", "elasticsearch")); + + final SearchQuery searchQuery = new NativeSearchQueryBuilder().withQuery(builder) + .build(); + final List
articles = elasticsearchTemplate.queryForList(searchQuery, Article.class); + + assertEquals(2, articles.size()); + } } From a20a4c9c23a4ef5636c4dca1862321d98a865cdb Mon Sep 17 00:00:00 2001 From: Chris Oberle Date: Sun, 21 Jan 2018 08:56:59 -0500 Subject: [PATCH 070/391] BAEL-1418 Spring Security with Extra Login Fields * added additional custom example * refactored and added tests --- .../CustomAuthenticationFilter.java | 50 ++++++++++ .../CustomAuthenticationToken.java | 30 ++++++ ...stomUserDetailsAuthenticationProvider.java | 92 +++++++++++++++++++ .../CustomUserDetailsService.java | 10 ++ .../CustomUserDetailsServiceImpl.java | 30 ++++++ .../CustomUserRepository.java | 2 +- .../ExtraLoginFieldsApplication.java} | 6 +- .../SecurityConfig.java | 62 +++++++++++++ .../User.java | 2 +- .../UserRepository.java | 2 +- .../WebController.java | 2 +- .../ExtraLoginFieldsApplication.java | 13 +++ .../SecurityConfig.java | 6 +- .../SimpleAuthenticationFilter.java} | 4 +- .../SimpleUserDetailsService.java} | 6 +- .../SimpleUserRepository.java | 26 ++++++ .../baeldung/loginextrafieldssimple/User.java | 23 +++++ .../UserRepository.java | 7 ++ .../loginextrafieldssimple/WebController.java | 51 ++++++++++ .../src/main/resources/static/css/main.css | 12 +-- .../resources/templatesextrafields/index.html | 22 +++-- .../resources/templatesextrafields/login.html | 49 ++++++---- .../templatesextrafields/user/index.html | 29 +++--- .../AbstractExtraLoginFieldsTest.java | 46 ++++++++++ .../LoginFieldsFullTest.java} | 45 ++------- .../LoginFieldsSimpleTest.java | 72 +++++++++++++++ 26 files changed, 599 insertions(+), 100 deletions(-) create mode 100644 spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomAuthenticationFilter.java create mode 100644 spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomAuthenticationToken.java create mode 100644 spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsAuthenticationProvider.java create mode 100644 spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsService.java create mode 100644 spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsServiceImpl.java rename spring-5-security/src/main/java/com/baeldung/{securityextrafields => loginextrafieldscustom}/CustomUserRepository.java (91%) rename spring-5-security/src/main/java/com/baeldung/{securityextrafields/SpringExtraLoginFieldsApplication.java => loginextrafieldscustom/ExtraLoginFieldsApplication.java} (54%) create mode 100644 spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/SecurityConfig.java rename spring-5-security/src/main/java/com/baeldung/{securityextrafields => loginextrafieldscustom}/User.java (91%) rename spring-5-security/src/main/java/com/baeldung/{securityextrafields => loginextrafieldscustom}/UserRepository.java (66%) rename spring-5-security/src/main/java/com/baeldung/{securityextrafields => loginextrafieldscustom}/WebController.java (93%) create mode 100644 spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/ExtraLoginFieldsApplication.java rename spring-5-security/src/main/java/com/baeldung/{securityextrafields => loginextrafieldssimple}/SecurityConfig.java (91%) rename spring-5-security/src/main/java/com/baeldung/{securityextrafields/CustomAuthenticationFilter.java => loginextrafieldssimple/SimpleAuthenticationFilter.java} (92%) rename spring-5-security/src/main/java/com/baeldung/{securityextrafields/CustomUserDetailsService.java => loginextrafieldssimple/SimpleUserDetailsService.java} (85%) create mode 100644 spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleUserRepository.java create mode 100644 spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/User.java create mode 100644 spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/UserRepository.java create mode 100644 spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/WebController.java create mode 100644 spring-5-security/src/test/java/com/baeldung/loginextrafields/AbstractExtraLoginFieldsTest.java rename spring-5-security/src/test/java/com/baeldung/{securityextrafields/SecurityExtraFieldsTest.java => loginextrafields/LoginFieldsFullTest.java} (65%) create mode 100644 spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsSimpleTest.java diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomAuthenticationFilter.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomAuthenticationFilter.java new file mode 100644 index 0000000000..2a5c5f0368 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomAuthenticationFilter.java @@ -0,0 +1,50 @@ +package com.baeldung.loginextrafieldscustom; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.security.authentication.AuthenticationServiceException; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; + +public class CustomAuthenticationFilter extends UsernamePasswordAuthenticationFilter { + + public static final String SPRING_SECURITY_FORM_DOMAIN_KEY = "domain"; + + @Override + public Authentication attemptAuthentication(HttpServletRequest request, HttpServletResponse response) + throws AuthenticationException { + + if (!request.getMethod().equals("POST")) { + throw new AuthenticationServiceException("Authentication method not supported: " + + request.getMethod()); + } + + CustomAuthenticationToken authRequest = getAuthRequest(request); + setDetails(request, authRequest); + return this.getAuthenticationManager().authenticate(authRequest); + } + + private CustomAuthenticationToken getAuthRequest(HttpServletRequest request) { + String username = obtainUsername(request); + String password = obtainPassword(request); + String domain = obtainDomain(request); + + if (username == null) { + username = ""; + } + if (password == null) { + password = ""; + } + if (domain == null) { + domain = ""; + } + + return new CustomAuthenticationToken(username, password, domain); + } + + private String obtainDomain(HttpServletRequest request) { + return request.getParameter(SPRING_SECURITY_FORM_DOMAIN_KEY); + } +} diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomAuthenticationToken.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomAuthenticationToken.java new file mode 100644 index 0000000000..6de842f2e0 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomAuthenticationToken.java @@ -0,0 +1,30 @@ +package com.baeldung.loginextrafieldscustom; + +import java.util.Collection; + +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.GrantedAuthority; + +public class CustomAuthenticationToken extends UsernamePasswordAuthenticationToken { + + private static final long serialVersionUID = 1L; + + private final String domain; + + public CustomAuthenticationToken(Object principal, Object credentials, String domain) { + super(principal, credentials); + this.domain = domain; + super.setAuthenticated(false); + } + + public CustomAuthenticationToken(Object principal, Object credentials, String domain, + Collection authorities) { + super(principal, credentials, authorities); + this.domain = domain; + super.setAuthenticated(true); // must use super, as we override + } + + public String getDomain() { + return this.domain; + } +} diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsAuthenticationProvider.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsAuthenticationProvider.java new file mode 100644 index 0000000000..97a589077e --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsAuthenticationProvider.java @@ -0,0 +1,92 @@ +package com.baeldung.loginextrafieldscustom; + +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.InternalAuthenticationServiceException; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.authentication.dao.AbstractUserDetailsAuthenticationProvider; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.util.Assert; + +public class CustomUserDetailsAuthenticationProvider extends AbstractUserDetailsAuthenticationProvider { + + /** + * The plaintext password used to perform + * PasswordEncoder#matches(CharSequence, String)} on when the user is + * not found to avoid SEC-2056. + */ + private static final String USER_NOT_FOUND_PASSWORD = "userNotFoundPassword"; + + private final PasswordEncoder passwordEncoder; + private final CustomUserDetailsService userDetailsService; + + /** + * The password used to perform + * {@link PasswordEncoder#matches(CharSequence, String)} on when the user is + * not found to avoid SEC-2056. This is necessary, because some + * {@link PasswordEncoder} implementations will short circuit if the password is not + * in a valid format. + */ + private String userNotFoundEncodedPassword; + + public CustomUserDetailsAuthenticationProvider(PasswordEncoder passwordEncoder, CustomUserDetailsService userDetailsService) { + this.passwordEncoder = passwordEncoder; + this.userDetailsService = userDetailsService; + } + + @Override + protected void additionalAuthenticationChecks(UserDetails userDetails, UsernamePasswordAuthenticationToken authentication) + throws AuthenticationException { + + if (authentication.getCredentials() == null) { + logger.debug("Authentication failed: no credentials provided"); + throw new BadCredentialsException( + messages.getMessage("AbstractUserDetailsAuthenticationProvider.badCredentials", "Bad credentials")); + } + + String presentedPassword = authentication.getCredentials() + .toString(); + + if (!passwordEncoder.matches(presentedPassword, userDetails.getPassword())) { + logger.debug("Authentication failed: password does not match stored value"); + throw new BadCredentialsException( + messages.getMessage("AbstractUserDetailsAuthenticationProvider.badCredentials", "Bad credentials")); + } + } + + @Override + protected void doAfterPropertiesSet() throws Exception { + Assert.notNull(this.userDetailsService, "A UserDetailsService must be set"); + this.userNotFoundEncodedPassword = this.passwordEncoder.encode(USER_NOT_FOUND_PASSWORD); + } + + @Override + protected UserDetails retrieveUser(String username, UsernamePasswordAuthenticationToken authentication) + throws AuthenticationException { + CustomAuthenticationToken auth = (CustomAuthenticationToken) authentication; + UserDetails loadedUser; + + try { + loadedUser = this.userDetailsService.loadUserByUsernameAndDomain(auth.getPrincipal() + .toString(), auth.getDomain()); + } catch (UsernameNotFoundException notFound) { + if (authentication.getCredentials() != null) { + String presentedPassword = authentication.getCredentials() + .toString(); + passwordEncoder.matches(presentedPassword, userNotFoundEncodedPassword); + } + throw notFound; + } catch (Exception repositoryProblem) { + throw new InternalAuthenticationServiceException(repositoryProblem.getMessage(), repositoryProblem); + } + + if (loadedUser == null) { + throw new InternalAuthenticationServiceException("UserDetailsService returned null, " + + "which is an interface contract violation"); + } + return loadedUser; + } + +} diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsService.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsService.java new file mode 100644 index 0000000000..358129173d --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsService.java @@ -0,0 +1,10 @@ +package com.baeldung.loginextrafieldscustom; + +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UsernameNotFoundException; + +public interface CustomUserDetailsService { + + UserDetails loadUserByUsernameAndDomain(String username, String domain) throws UsernameNotFoundException; + +} diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsServiceImpl.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsServiceImpl.java new file mode 100644 index 0000000000..bf53170205 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsServiceImpl.java @@ -0,0 +1,30 @@ +package com.baeldung.loginextrafieldscustom; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.stereotype.Service; + +@Service("userDetailsService") +public class CustomUserDetailsServiceImpl implements CustomUserDetailsService { + + private final UserRepository userRepository; + + public CustomUserDetailsServiceImpl(UserRepository userRepository) { + this.userRepository = userRepository; + } + + @Override + public UserDetails loadUserByUsernameAndDomain(String username, String domain) throws UsernameNotFoundException { + if (StringUtils.isAnyBlank(username, domain)) { + throw new UsernameNotFoundException("Username and domain must be provided"); + } + User user = userRepository.findUser(username, domain); + if (user == null) { + throw new UsernameNotFoundException( + String.format("Username not found for domain, username=%s, domain=%s", + username, domain)); + } + return user; + } +} diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserRepository.java similarity index 91% rename from spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java rename to spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserRepository.java index c86769b016..428c8bf532 100644 --- a/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserRepository.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserRepository.java @@ -1,4 +1,4 @@ -package com.baeldung.securityextrafields; +package com.baeldung.loginextrafieldscustom; import java.util.ArrayList; import java.util.Collection; diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/SpringExtraLoginFieldsApplication.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/ExtraLoginFieldsApplication.java similarity index 54% rename from spring-5-security/src/main/java/com/baeldung/securityextrafields/SpringExtraLoginFieldsApplication.java rename to spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/ExtraLoginFieldsApplication.java index a779acc75e..0cf934f288 100644 --- a/spring-5-security/src/main/java/com/baeldung/securityextrafields/SpringExtraLoginFieldsApplication.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/ExtraLoginFieldsApplication.java @@ -1,13 +1,13 @@ -package com.baeldung.securityextrafields; +package com.baeldung.loginextrafieldscustom; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication -public class SpringExtraLoginFieldsApplication { +public class ExtraLoginFieldsApplication { public static void main(String[] args) { - SpringApplication.run(SpringExtraLoginFieldsApplication.class, args); + SpringApplication.run(ExtraLoginFieldsApplication.class, args); } } diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/SecurityConfig.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/SecurityConfig.java new file mode 100644 index 0000000000..def85ab978 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/SecurityConfig.java @@ -0,0 +1,62 @@ +package com.baeldung.loginextrafieldscustom; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.PropertySource; +import org.springframework.security.authentication.AuthenticationProvider; +import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler; +import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; + +@EnableWebSecurity +@PropertySource("classpath:/application-extrafields.properties") +public class SecurityConfig extends WebSecurityConfigurerAdapter { + + @Autowired + private CustomUserDetailsService userDetailsService; + + @Override + protected void configure(HttpSecurity http) throws Exception { + + http + .addFilterBefore(authenticationFilter(), UsernamePasswordAuthenticationFilter.class) + .authorizeRequests() + .antMatchers("/css/**", "/index").permitAll() + .antMatchers("/user/**").authenticated() + .and() + .formLogin().loginPage("/login") + .and() + .logout() + .logoutUrl("/logout"); + } + + public CustomAuthenticationFilter authenticationFilter() throws Exception { + CustomAuthenticationFilter filter = new CustomAuthenticationFilter(); + filter.setAuthenticationManager(authenticationManagerBean()); + filter.setAuthenticationFailureHandler(failureHandler()); + return filter; + } + + @Autowired + public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception { + auth.authenticationProvider(authProvider()); + } + + public AuthenticationProvider authProvider() { + CustomUserDetailsAuthenticationProvider provider + = new CustomUserDetailsAuthenticationProvider(passwordEncoder(), userDetailsService); + return provider; + } + + public SimpleUrlAuthenticationFailureHandler failureHandler() { + return new SimpleUrlAuthenticationFailureHandler("/login?error=true"); + } + + public PasswordEncoder passwordEncoder() { + return new BCryptPasswordEncoder(); + } +} diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/User.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/User.java similarity index 91% rename from spring-5-security/src/main/java/com/baeldung/securityextrafields/User.java rename to spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/User.java index a5b3a434ae..2d684d96e4 100644 --- a/spring-5-security/src/main/java/com/baeldung/securityextrafields/User.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/User.java @@ -1,4 +1,4 @@ -package com.baeldung.securityextrafields; +package com.baeldung.loginextrafieldscustom; import java.util.Collection; diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/UserRepository.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/UserRepository.java similarity index 66% rename from spring-5-security/src/main/java/com/baeldung/securityextrafields/UserRepository.java rename to spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/UserRepository.java index 4ca65b13d5..e2358e055b 100644 --- a/spring-5-security/src/main/java/com/baeldung/securityextrafields/UserRepository.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/UserRepository.java @@ -1,4 +1,4 @@ -package com.baeldung.securityextrafields; +package com.baeldung.loginextrafieldscustom; public interface UserRepository { diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/WebController.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/WebController.java similarity index 93% rename from spring-5-security/src/main/java/com/baeldung/securityextrafields/WebController.java rename to spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/WebController.java index 4a8abb4a83..b5e0b511ac 100644 --- a/spring-5-security/src/main/java/com/baeldung/securityextrafields/WebController.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/WebController.java @@ -1,4 +1,4 @@ -package com.baeldung.securityextrafields; +package com.baeldung.loginextrafieldscustom; import java.util.Optional; diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/ExtraLoginFieldsApplication.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/ExtraLoginFieldsApplication.java new file mode 100644 index 0000000000..c82a13de1a --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/ExtraLoginFieldsApplication.java @@ -0,0 +1,13 @@ +package com.baeldung.loginextrafieldssimple; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class ExtraLoginFieldsApplication { + + public static void main(String[] args) { + SpringApplication.run(ExtraLoginFieldsApplication.class, args); + } + +} diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SecurityConfig.java similarity index 91% rename from spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java rename to spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SecurityConfig.java index 429f6df972..d8c5ea8147 100644 --- a/spring-5-security/src/main/java/com/baeldung/securityextrafields/SecurityConfig.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SecurityConfig.java @@ -1,4 +1,4 @@ -package com.baeldung.securityextrafields; +package com.baeldung.loginextrafieldssimple; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.PropertySource; @@ -36,8 +36,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { .logoutUrl("/logout"); } - public CustomAuthenticationFilter authenticationFilter() throws Exception { - CustomAuthenticationFilter filter = new CustomAuthenticationFilter(); + public SimpleAuthenticationFilter authenticationFilter() throws Exception { + SimpleAuthenticationFilter filter = new SimpleAuthenticationFilter(); filter.setAuthenticationManager(authenticationManagerBean()); filter.setAuthenticationFailureHandler(failureHandler()); return filter; diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleAuthenticationFilter.java similarity index 92% rename from spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java rename to spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleAuthenticationFilter.java index b5d628628d..9dcb524157 100644 --- a/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomAuthenticationFilter.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleAuthenticationFilter.java @@ -1,4 +1,4 @@ -package com.baeldung.securityextrafields; +package com.baeldung.loginextrafieldssimple; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -9,7 +9,7 @@ import org.springframework.security.core.Authentication; import org.springframework.security.core.AuthenticationException; import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; -public class CustomAuthenticationFilter extends UsernamePasswordAuthenticationFilter { +public class SimpleAuthenticationFilter extends UsernamePasswordAuthenticationFilter { public static final String SPRING_SECURITY_FORM_DOMAIN_KEY = "domain"; diff --git a/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleUserDetailsService.java similarity index 85% rename from spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java rename to spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleUserDetailsService.java index be02834852..0b20c350b9 100644 --- a/spring-5-security/src/main/java/com/baeldung/securityextrafields/CustomUserDetailsService.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleUserDetailsService.java @@ -1,4 +1,4 @@ -package com.baeldung.securityextrafields; +package com.baeldung.loginextrafieldssimple; import org.apache.commons.lang3.StringUtils; import org.springframework.security.core.userdetails.UserDetails; @@ -7,11 +7,11 @@ import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.stereotype.Service; @Service("userDetailsService") -public class CustomUserDetailsService implements UserDetailsService { +public class SimpleUserDetailsService implements UserDetailsService { private final UserRepository userRepository; - public CustomUserDetailsService(UserRepository userRepository) { + public SimpleUserDetailsService(UserRepository userRepository) { this.userRepository = userRepository; } diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleUserRepository.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleUserRepository.java new file mode 100644 index 0000000000..e8aaa774a1 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleUserRepository.java @@ -0,0 +1,26 @@ +package com.baeldung.loginextrafieldssimple; + +import java.util.ArrayList; +import java.util.Collection; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.stereotype.Repository; + +@Repository("userRepository") +public class SimpleUserRepository implements UserRepository { + + @Override + public User findUser(String username, String domain) { + if (StringUtils.isAnyBlank(username, domain)) { + return null; + } else { + Collection authorities = new ArrayList<>(); + User user = new User(username, domain, + "$2a$10$U3GhSMpsMSOE8Kqsbn58/edxDBKlVuYMh7qk/7ErApYFjJzi2VG5K", true, + true, true, true, authorities); + return user; + } + } + +} diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/User.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/User.java new file mode 100644 index 0000000000..97b81f85e5 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/User.java @@ -0,0 +1,23 @@ +package com.baeldung.loginextrafieldssimple; + +import java.util.Collection; + +import org.springframework.security.core.GrantedAuthority; + +public class User extends org.springframework.security.core.userdetails.User { + + private static final long serialVersionUID = 1L; + + private final String domain; + + public User(String username, String domain, String password, boolean enabled, + boolean accountNonExpired, boolean credentialsNonExpired, + boolean accountNonLocked, Collection authorities) { + super(username, password, enabled, accountNonExpired, credentialsNonExpired, accountNonLocked, authorities); + this.domain = domain; + } + + public String getDomain() { + return domain; + } +} diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/UserRepository.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/UserRepository.java new file mode 100644 index 0000000000..919e611b9c --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/UserRepository.java @@ -0,0 +1,7 @@ +package com.baeldung.loginextrafieldssimple; + +public interface UserRepository { + + public User findUser(String username, String domain); + +} diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/WebController.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/WebController.java new file mode 100644 index 0000000000..1b17de7bec --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/WebController.java @@ -0,0 +1,51 @@ +package com.baeldung.loginextrafieldssimple; + +import java.util.Optional; + +import org.springframework.security.authentication.AnonymousAuthenticationToken; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.RequestMapping; + +@Controller +public class WebController { + + @RequestMapping("/") + public String root() { + return "redirect:/index"; + } + + @RequestMapping("/index") + public String index(Model model) { + getDomain().ifPresent(d -> { + model.addAttribute("domain", d); + }); + return "index"; + } + + @RequestMapping("/user/index") + public String userIndex(Model model) { + getDomain().ifPresent(d -> { + model.addAttribute("domain", d); + }); + return "user/index"; + } + + @RequestMapping("/login") + public String login() { + return "login"; + } + + private Optional getDomain() { + Authentication auth = SecurityContextHolder.getContext() + .getAuthentication(); + String domain = null; + if (auth != null && !auth.getClass().equals(AnonymousAuthenticationToken.class)) { + User user = (User) auth.getPrincipal(); + domain = user.getDomain(); + } + return Optional.ofNullable(domain); + } +} diff --git a/spring-5-security/src/main/resources/static/css/main.css b/spring-5-security/src/main/resources/static/css/main.css index 9299ee6158..febc353af7 100644 --- a/spring-5-security/src/main/resources/static/css/main.css +++ b/spring-5-security/src/main/resources/static/css/main.css @@ -1,18 +1,8 @@ -body { - font-family: sans; - font-size: 1em; -} - p.error { font-weight: bold; color: red; } div.logout { - float: right; + margin-right: 2em;; } - -.formfield { - margin: 0.5em; - padding: 0.3em; -} \ No newline at end of file diff --git a/spring-5-security/src/main/resources/templatesextrafields/index.html b/spring-5-security/src/main/resources/templatesextrafields/index.html index 52f6224dfb..37833ff0d2 100644 --- a/spring-5-security/src/main/resources/templatesextrafields/index.html +++ b/spring-5-security/src/main/resources/templatesextrafields/index.html @@ -1,24 +1,32 @@ - + - Spring Security - Login With Extra Fields + Spring Security with Extra Fields + + + + + -
- Logged in user: | - domain: Some Domain +
+
+

Logged in: | Some Domain +

- +
-

Hello Spring Security

+ +

Hello Spring Security

This is an unsecured page, but you can access the secured pages after authenticating.

+
diff --git a/spring-5-security/src/main/resources/templatesextrafields/login.html b/spring-5-security/src/main/resources/templatesextrafields/login.html index cafec89c15..5c51ea3b2c 100644 --- a/spring-5-security/src/main/resources/templatesextrafields/login.html +++ b/spring-5-security/src/main/resources/templatesextrafields/login.html @@ -1,23 +1,36 @@ - - - Login page - - - - -

Login page

+ + + Login page + + + + + + + + + +
+ +

+ + +

+

+ + +

+

+ + +

+

Back to home page

- + +
+ diff --git a/spring-5-security/src/main/resources/templatesextrafields/user/index.html b/spring-5-security/src/main/resources/templatesextrafields/user/index.html index a4c1535100..9c41f0e78c 100644 --- a/spring-5-security/src/main/resources/templatesextrafields/user/index.html +++ b/spring-5-security/src/main/resources/templatesextrafields/user/index.html @@ -1,13 +1,20 @@ - - - Spring Security - Login With Extra Fields - - - - -
-

This is a secured page!

-

Back to home page

- + + + Secured Page + + + + + + + + + +
+
+

This is a secured page!

+

Back to home page

+
+ diff --git a/spring-5-security/src/test/java/com/baeldung/loginextrafields/AbstractExtraLoginFieldsTest.java b/spring-5-security/src/test/java/com/baeldung/loginextrafields/AbstractExtraLoginFieldsTest.java new file mode 100644 index 0000000000..30b869714f --- /dev/null +++ b/spring-5-security/src/test/java/com/baeldung/loginextrafields/AbstractExtraLoginFieldsTest.java @@ -0,0 +1,46 @@ +package com.baeldung.loginextrafields; + +import static org.springframework.security.test.web.servlet.setup.SecurityMockMvcConfigurers.springSecurity; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.redirectedUrlPattern; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; + +import org.junit.Before; +import org.junit.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.web.FilterChainProxy; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; +import org.springframework.web.context.WebApplicationContext; + +public abstract class AbstractExtraLoginFieldsTest { + + @Autowired + private FilterChainProxy springSecurityFilterChain; + + @Autowired + private WebApplicationContext wac; + + protected MockMvc mockMvc; + + @Before + public void setup() { + this.mockMvc = MockMvcBuilders.webAppContextSetup(wac) + .apply(springSecurity(springSecurityFilterChain)) + .build(); + } + + @Test + public void givenRootPathAccess_thenRedirectToIndex() throws Exception { + this.mockMvc.perform(get("/")) + .andExpect(status().is3xxRedirection()) + .andExpect(redirectedUrlPattern("/index*")); + } + + @Test + public void givenSecuredResource_whenAccessUnauthenticated_thenRequiresAuthentication() throws Exception { + this.mockMvc.perform(get("/user/index")) + .andExpect(status().is3xxRedirection()) + .andExpect(redirectedUrlPattern("**/login")); + } +} diff --git a/spring-5-security/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java b/spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsFullTest.java similarity index 65% rename from spring-5-security/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java rename to spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsFullTest.java index cf0701708d..38c219cb5e 100644 --- a/spring-5-security/src/test/java/com/baeldung/securityextrafields/SecurityExtraFieldsTest.java +++ b/spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsFullTest.java @@ -1,8 +1,7 @@ -package com.baeldung.securityextrafields; +package com.baeldung.loginextrafields; import static org.junit.Assert.assertEquals; import static org.springframework.security.test.web.servlet.request.SecurityMockMvcRequestPostProcessors.csrf; -import static org.springframework.security.test.web.servlet.setup.SecurityMockMvcConfigurers.springSecurity; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.redirectedUrlPattern; @@ -11,57 +10,26 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. import java.util.ArrayList; import java.util.Collection; -import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.mock.web.MockHttpSession; import org.springframework.security.core.Authentication; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.context.SecurityContext; -import org.springframework.security.web.FilterChainProxy; import org.springframework.security.web.context.HttpSessionSecurityContextRepository; import org.springframework.test.context.junit.jupiter.web.SpringJUnitWebConfig; import org.springframework.test.context.junit4.SpringRunner; -import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.MvcResult; import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; -import org.springframework.test.web.servlet.setup.MockMvcBuilders; -import org.springframework.web.context.WebApplicationContext; + +import com.baeldung.loginextrafieldscustom.ExtraLoginFieldsApplication; +import com.baeldung.loginextrafieldscustom.User; @RunWith(SpringRunner.class) @SpringJUnitWebConfig -@SpringBootTest(classes = SpringExtraLoginFieldsApplication.class) -public class SecurityExtraFieldsTest { - - @Autowired - private FilterChainProxy springSecurityFilterChain; - - @Autowired - private WebApplicationContext wac; - - private MockMvc mockMvc; - - @Before - public void setup() { - this.mockMvc = MockMvcBuilders.webAppContextSetup(wac) - .apply(springSecurity(springSecurityFilterChain)).build(); - } - - @Test - public void givenRootPathAccess_thenRedirectToIndex() throws Exception { - this.mockMvc.perform(get("/")) - .andExpect(status().is3xxRedirection()) - .andExpect(redirectedUrlPattern("/index*")); - } - - @Test - public void givenSecuredResource_whenAccessUnauthenticated_thenRequiresAuthentication() throws Exception { - this.mockMvc.perform(get("/user/index")) - .andExpect(status().is3xxRedirection()) - .andExpect(redirectedUrlPattern("**/login")); - } +@SpringBootTest(classes = ExtraLoginFieldsApplication.class) +public class LoginFieldsFullTest extends AbstractExtraLoginFieldsTest { @Test public void givenAccessSecuredResource_whenAuthenticated_thenAuthHasExtraFields() throws Exception { @@ -100,4 +68,5 @@ public class SecurityExtraFieldsTest { Collection authorities = new ArrayList<>(); return new User("myusername", "mydomain", "password", true, true, true, true, authorities); } + } diff --git a/spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsSimpleTest.java b/spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsSimpleTest.java new file mode 100644 index 0000000000..5c0d462772 --- /dev/null +++ b/spring-5-security/src/test/java/com/baeldung/loginextrafields/LoginFieldsSimpleTest.java @@ -0,0 +1,72 @@ +package com.baeldung.loginextrafields; + +import static org.junit.Assert.assertEquals; +import static org.springframework.security.test.web.servlet.request.SecurityMockMvcRequestPostProcessors.csrf; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.redirectedUrlPattern; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; + +import java.util.ArrayList; +import java.util.Collection; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.mock.web.MockHttpSession; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.context.SecurityContext; +import org.springframework.security.web.context.HttpSessionSecurityContextRepository; +import org.springframework.test.context.junit.jupiter.web.SpringJUnitWebConfig; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder; + +import com.baeldung.loginextrafieldssimple.ExtraLoginFieldsApplication; +import com.baeldung.loginextrafieldssimple.User; + +@RunWith(SpringRunner.class) +@SpringJUnitWebConfig +@SpringBootTest(classes = ExtraLoginFieldsApplication.class) +public class LoginFieldsSimpleTest extends AbstractExtraLoginFieldsTest { + + @Test + public void givenAccessSecuredResource_whenAuthenticated_thenAuthHasExtraFields() throws Exception { + MockHttpServletRequestBuilder securedResourceAccess = get("/user/index"); + MvcResult unauthenticatedResult = mockMvc.perform(securedResourceAccess) + .andExpect(status().is3xxRedirection()) + .andReturn(); + + MockHttpSession session = (MockHttpSession) unauthenticatedResult.getRequest() + .getSession(); + String loginUrl = unauthenticatedResult.getResponse() + .getRedirectedUrl(); + + User user = getUser(); + + mockMvc.perform(post(loginUrl) + .param("username", user.getUsername()) + .param("password", user.getPassword()) + .param("domain", user.getDomain()) + .session(session) + .with(csrf())) + .andExpect(status().is3xxRedirection()) + .andExpect(redirectedUrlPattern("**/user/index")) + .andReturn(); + + mockMvc.perform(securedResourceAccess.session(session)) + .andExpect(status().isOk()); + + SecurityContext securityContext + = (SecurityContext) session.getAttribute(HttpSessionSecurityContextRepository.SPRING_SECURITY_CONTEXT_KEY); + Authentication auth = securityContext.getAuthentication(); + assertEquals(((User)auth.getPrincipal()).getDomain(), user.getDomain()); + } + + private User getUser() { + Collection authorities = new ArrayList<>(); + return new User("myusername", "mydomain", "password", true, true, true, true, authorities); + } + +} From 8e321ce2779943c88a466b17b11b9916cde3b326 Mon Sep 17 00:00:00 2001 From: Chris Oberle Date: Sun, 21 Jan 2018 11:38:16 -0500 Subject: [PATCH 071/391] remove final keywords and serialVersionUID constants --- .../loginextrafieldscustom/CustomAuthenticationToken.java | 4 +--- .../CustomUserDetailsAuthenticationProvider.java | 4 ++-- .../loginextrafieldscustom/CustomUserDetailsServiceImpl.java | 2 +- .../main/java/com/baeldung/loginextrafieldscustom/User.java | 2 +- .../loginextrafieldssimple/SimpleUserDetailsService.java | 2 +- .../main/java/com/baeldung/loginextrafieldssimple/User.java | 4 +--- 6 files changed, 7 insertions(+), 11 deletions(-) diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomAuthenticationToken.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomAuthenticationToken.java index 6de842f2e0..50995169a1 100644 --- a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomAuthenticationToken.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomAuthenticationToken.java @@ -7,9 +7,7 @@ import org.springframework.security.core.GrantedAuthority; public class CustomAuthenticationToken extends UsernamePasswordAuthenticationToken { - private static final long serialVersionUID = 1L; - - private final String domain; + private String domain; public CustomAuthenticationToken(Object principal, Object credentials, String domain) { super(principal, credentials); diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsAuthenticationProvider.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsAuthenticationProvider.java index 97a589077e..693900d843 100644 --- a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsAuthenticationProvider.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsAuthenticationProvider.java @@ -19,8 +19,8 @@ public class CustomUserDetailsAuthenticationProvider extends AbstractUserDetails */ private static final String USER_NOT_FOUND_PASSWORD = "userNotFoundPassword"; - private final PasswordEncoder passwordEncoder; - private final CustomUserDetailsService userDetailsService; + private PasswordEncoder passwordEncoder; + private CustomUserDetailsService userDetailsService; /** * The password used to perform diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsServiceImpl.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsServiceImpl.java index bf53170205..ea979e2fab 100644 --- a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsServiceImpl.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/CustomUserDetailsServiceImpl.java @@ -8,7 +8,7 @@ import org.springframework.stereotype.Service; @Service("userDetailsService") public class CustomUserDetailsServiceImpl implements CustomUserDetailsService { - private final UserRepository userRepository; + private UserRepository userRepository; public CustomUserDetailsServiceImpl(UserRepository userRepository) { this.userRepository = userRepository; diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/User.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/User.java index 2d684d96e4..aa03f15b6a 100644 --- a/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/User.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldscustom/User.java @@ -8,7 +8,7 @@ public class User extends org.springframework.security.core.userdetails.User { private static final long serialVersionUID = 1L; - private final String domain; + private String domain; public User(String username, String domain, String password, boolean enabled, boolean accountNonExpired, boolean credentialsNonExpired, diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleUserDetailsService.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleUserDetailsService.java index 0b20c350b9..2fad50ad01 100644 --- a/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleUserDetailsService.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/SimpleUserDetailsService.java @@ -9,7 +9,7 @@ import org.springframework.stereotype.Service; @Service("userDetailsService") public class SimpleUserDetailsService implements UserDetailsService { - private final UserRepository userRepository; + private UserRepository userRepository; public SimpleUserDetailsService(UserRepository userRepository) { this.userRepository = userRepository; diff --git a/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/User.java b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/User.java index 97b81f85e5..b76da65638 100644 --- a/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/User.java +++ b/spring-5-security/src/main/java/com/baeldung/loginextrafieldssimple/User.java @@ -6,9 +6,7 @@ import org.springframework.security.core.GrantedAuthority; public class User extends org.springframework.security.core.userdetails.User { - private static final long serialVersionUID = 1L; - - private final String domain; + private String domain; public User(String username, String domain, String password, boolean enabled, boolean accountNonExpired, boolean credentialsNonExpired, From 511a86fb99b7e2954bee009ffc76b4cd9037e95d Mon Sep 17 00:00:00 2001 From: mkuligowski Date: Wed, 24 Jan 2018 23:01:21 +0100 Subject: [PATCH 072/391] Add Smooks dependency --- libraries/pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libraries/pom.xml b/libraries/pom.xml index 09c8cb8335..1fa1c30667 100644 --- a/libraries/pom.xml +++ b/libraries/pom.xml @@ -705,6 +705,11 @@ test test + + org.milyn + milyn-smooks-all + ${smooks.version} + @@ -785,6 +790,7 @@ 1.23.0 v4-rev493-1.21.0 1.0.0 + 1.7.0 3.0.14 \ No newline at end of file From 42a6a0b530a157f1553efe00d9a7fd058b163815 Mon Sep 17 00:00:00 2001 From: mkuligowski Date: Wed, 24 Jan 2018 23:02:15 +0100 Subject: [PATCH 073/391] Delete files form badly created submodule --- smooks/README.md | 0 smooks/pom.xml | 24 ------------------------ 2 files changed, 24 deletions(-) delete mode 100644 smooks/README.md delete mode 100644 smooks/pom.xml diff --git a/smooks/README.md b/smooks/README.md deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/smooks/pom.xml b/smooks/pom.xml deleted file mode 100644 index 632ec9d12f..0000000000 --- a/smooks/pom.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - 4.0.0 - com.baeldung.examples.smooks - smooks - 1.0-SNAPSHOT - jar - - - com.baeldung - parent-modules - 1.0.0-SNAPSHOT - - - - org.milyn - milyn-smooks-all - 1.7.0 - - - - smooks - From 086a01ff2c586709909851998d301240831d1d15 Mon Sep 17 00:00:00 2001 From: mkuligowski Date: Wed, 24 Jan 2018 23:03:31 +0100 Subject: [PATCH 074/391] Add domain classes --- .../java/com/baeldung/smooks/model/Item.java | 71 +++++++++++++++++++ .../java/com/baeldung/smooks/model/Order.java | 52 ++++++++++++++ .../com/baeldung/smooks/model/Status.java | 5 ++ .../com/baeldung/smooks/model/Supplier.java | 49 +++++++++++++ 4 files changed, 177 insertions(+) create mode 100644 libraries/src/main/java/com/baeldung/smooks/model/Item.java create mode 100644 libraries/src/main/java/com/baeldung/smooks/model/Order.java create mode 100644 libraries/src/main/java/com/baeldung/smooks/model/Status.java create mode 100644 libraries/src/main/java/com/baeldung/smooks/model/Supplier.java diff --git a/libraries/src/main/java/com/baeldung/smooks/model/Item.java b/libraries/src/main/java/com/baeldung/smooks/model/Item.java new file mode 100644 index 0000000000..a7f7783b3f --- /dev/null +++ b/libraries/src/main/java/com/baeldung/smooks/model/Item.java @@ -0,0 +1,71 @@ +package com.baeldung.smooks.model; + +public class Item { + + public Item() { + } + + public Item(String code, Double price, Integer quantity) { + this.code = code; + this.price = price; + this.quantity = quantity; + } + + private String code; + private Double price; + private Integer quantity; + + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public Double getPrice() { + return price; + } + + public void setPrice(Double price) { + this.price = price; + } + + public Integer getQuantity() { + return quantity; + } + + public void setQuantity(Integer quantity) { + this.quantity = quantity; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + + Item item = (Item) o; + + if (code != null ? !code.equals(item.code) : item.code != null) return false; + if (price != null ? !price.equals(item.price) : item.price != null) return false; + return quantity != null ? quantity.equals(item.quantity) : item.quantity == null; + } + + @Override + public int hashCode() { + int result = code != null ? code.hashCode() : 0; + result = 31 * result + (price != null ? price.hashCode() : 0); + result = 31 * result + (quantity != null ? quantity.hashCode() : 0); + return result; + } + + @Override + public String toString() { + return "Item{" + + "code='" + code + '\'' + + ", price=" + price + + ", quantity=" + quantity + + '}'; + } +} diff --git a/libraries/src/main/java/com/baeldung/smooks/model/Order.java b/libraries/src/main/java/com/baeldung/smooks/model/Order.java new file mode 100644 index 0000000000..047e1fe8a3 --- /dev/null +++ b/libraries/src/main/java/com/baeldung/smooks/model/Order.java @@ -0,0 +1,52 @@ +package com.baeldung.smooks.model; + +import java.util.Date; +import java.util.List; + +public class Order { + private Date creationDate; + private Long number; + private Status status; + private Supplier supplier; + private List items; + + public Date getCreationDate() { + return creationDate; + } + + public void setCreationDate(Date creationDate) { + this.creationDate = creationDate; + } + + public Long getNumber() { + return number; + } + + public void setNumber(Long number) { + this.number = number; + } + + public Status getStatus() { + return status; + } + + public void setStatus(Status status) { + this.status = status; + } + + public Supplier getSupplier() { + return supplier; + } + + public void setSupplier(Supplier supplier) { + this.supplier = supplier; + } + + public List getItems() { + return items; + } + + public void setItems(List items) { + this.items = items; + } +} diff --git a/libraries/src/main/java/com/baeldung/smooks/model/Status.java b/libraries/src/main/java/com/baeldung/smooks/model/Status.java new file mode 100644 index 0000000000..53c50bdf46 --- /dev/null +++ b/libraries/src/main/java/com/baeldung/smooks/model/Status.java @@ -0,0 +1,5 @@ +package com.baeldung.smooks.model; + +public enum Status { + NEW, IN_PROGRESS, FINISHED +} diff --git a/libraries/src/main/java/com/baeldung/smooks/model/Supplier.java b/libraries/src/main/java/com/baeldung/smooks/model/Supplier.java new file mode 100644 index 0000000000..31a9e1f43f --- /dev/null +++ b/libraries/src/main/java/com/baeldung/smooks/model/Supplier.java @@ -0,0 +1,49 @@ +package com.baeldung.smooks.model; + +public class Supplier { + + private String name; + private String phoneNumber; + + public Supplier() { + } + + public Supplier(String name, String phoneNumber) { + this.name = name; + this.phoneNumber = phoneNumber; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getPhoneNumber() { + return phoneNumber; + } + + public void setPhoneNumber(String phoneNumber) { + this.phoneNumber = phoneNumber; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + + Supplier supplier = (Supplier) o; + + if (name != null ? !name.equals(supplier.name) : supplier.name != null) return false; + return phoneNumber != null ? phoneNumber.equals(supplier.phoneNumber) : supplier.phoneNumber == null; + } + + @Override + public int hashCode() { + int result = name != null ? name.hashCode() : 0; + result = 31 * result + (phoneNumber != null ? phoneNumber.hashCode() : 0); + return result; + } +} From 2335c79c2575784a8a6572ca159fae5f367129e0 Mon Sep 17 00:00:00 2001 From: mkuligowski Date: Wed, 24 Jan 2018 23:04:09 +0100 Subject: [PATCH 075/391] Create class responsible for converting Orders --- .../smooks/converter/OrderConverter.java | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 libraries/src/main/java/com/baeldung/smooks/converter/OrderConverter.java diff --git a/libraries/src/main/java/com/baeldung/smooks/converter/OrderConverter.java b/libraries/src/main/java/com/baeldung/smooks/converter/OrderConverter.java new file mode 100644 index 0000000000..b4b81a6f52 --- /dev/null +++ b/libraries/src/main/java/com/baeldung/smooks/converter/OrderConverter.java @@ -0,0 +1,56 @@ +package com.baeldung.smooks.converter; + +import com.baeldung.smooks.model.Order; +import org.milyn.Smooks; +import org.milyn.payload.JavaResult; +import org.milyn.payload.StringResult; +import org.xml.sax.SAXException; + +import javax.xml.transform.stream.StreamSource; +import java.io.IOException; + +public class OrderConverter { + + public Order convertOrderXMLToOrderObject(String path) throws IOException, SAXException { + Smooks smooks = new Smooks(OrderConverter.class.getResourceAsStream("/smooks/smooks-mapping.xml")); + try { + JavaResult javaResult = new JavaResult(); + smooks.filterSource(new StreamSource(OrderConverter.class.getResourceAsStream(path)), javaResult); + return (Order) javaResult.getBean("order"); + } finally { + smooks.close(); + } + } + + public Order convertOrderJSONToOrderObject(String path) throws IOException, SAXException { + Smooks smooks = new Smooks(OrderConverter.class.getResourceAsStream("/smooks/smooks-mapping-json.xml")); + try { + JavaResult javaResult = new JavaResult(); + smooks.filterSource(new StreamSource(OrderConverter.class.getResourceAsStream(path)), javaResult); + return (Order) javaResult.getBean("order"); + } finally { + smooks.close(); + } + } + + + public String convertOrderXMLtoEDIFACT(String path) throws IOException, SAXException { + return convertDocumentWithTempalte(path, "/smooks/smooks-transform-edi.xml"); + } + + public String convertOrderXMLtoEmailMessage(String path) throws IOException, SAXException { + return convertDocumentWithTempalte(path, "/smooks/smooks-transform-email.xml"); + } + + private String convertDocumentWithTempalte(String path, String config) throws IOException, SAXException { + Smooks smooks = new Smooks(config); + + try { + StringResult stringResult = new StringResult(); + smooks.filterSource(new StreamSource(OrderConverter.class.getResourceAsStream(path)), stringResult); + return stringResult.toString(); + } finally { + smooks.close(); + } + } +} From 7d73e49adbf1e943ac5169bfa977b5bb405eda93 Mon Sep 17 00:00:00 2001 From: mkuligowski Date: Wed, 24 Jan 2018 23:04:53 +0100 Subject: [PATCH 076/391] Create class responsible for validating messages --- .../smooks/converter/OrderValidator.java | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 libraries/src/main/java/com/baeldung/smooks/converter/OrderValidator.java diff --git a/libraries/src/main/java/com/baeldung/smooks/converter/OrderValidator.java b/libraries/src/main/java/com/baeldung/smooks/converter/OrderValidator.java new file mode 100644 index 0000000000..3975921da0 --- /dev/null +++ b/libraries/src/main/java/com/baeldung/smooks/converter/OrderValidator.java @@ -0,0 +1,27 @@ +package com.baeldung.smooks.converter; + +import org.milyn.Smooks; +import org.milyn.payload.JavaResult; +import org.milyn.payload.StringResult; +import org.milyn.validation.ValidationResult; +import org.xml.sax.SAXException; + +import javax.xml.transform.stream.StreamSource; +import java.io.IOException; + +public class OrderValidator { + + public ValidationResult validate(String path) throws IOException, SAXException { + Smooks smooks = new Smooks(OrderValidator.class.getResourceAsStream("/smooks/smooks-validation.xml")); + + try { + StringResult xmlResult = new StringResult(); + JavaResult javaResult = new JavaResult(); + ValidationResult validationResult = new ValidationResult(); + smooks.filterSource(new StreamSource(OrderValidator.class.getResourceAsStream(path)), xmlResult, javaResult, validationResult); + return validationResult; + } finally { + smooks.close(); + } + } +} From a90b396f60b3fe0c679cfa94b9ebec2da6da7724 Mon Sep 17 00:00:00 2001 From: mkuligowski Date: Wed, 24 Jan 2018 23:05:31 +0100 Subject: [PATCH 077/391] Add configuration file --- libraries/src/main/resources/smooks/email.ftl | 7 +++++ .../src/main/resources/smooks/item-rules.csv | 1 + libraries/src/main/resources/smooks/order.ftl | 6 ++++ .../src/main/resources/smooks/order.json | 21 ++++++++++++++ libraries/src/main/resources/smooks/order.xml | 20 +++++++++++++ .../resources/smooks/smooks-mapping-json.xml | 29 +++++++++++++++++++ .../main/resources/smooks/smooks-mapping.xml | 29 +++++++++++++++++++ .../resources/smooks/smooks-transform-edi.xml | 11 +++++++ .../smooks/smooks-transform-email.xml | 12 ++++++++ .../resources/smooks/smooks-validation.xml | 17 +++++++++++ .../main/resources/smooks/supplier.properties | 2 ++ 11 files changed, 155 insertions(+) create mode 100644 libraries/src/main/resources/smooks/email.ftl create mode 100644 libraries/src/main/resources/smooks/item-rules.csv create mode 100644 libraries/src/main/resources/smooks/order.ftl create mode 100644 libraries/src/main/resources/smooks/order.json create mode 100644 libraries/src/main/resources/smooks/order.xml create mode 100644 libraries/src/main/resources/smooks/smooks-mapping-json.xml create mode 100644 libraries/src/main/resources/smooks/smooks-mapping.xml create mode 100644 libraries/src/main/resources/smooks/smooks-transform-edi.xml create mode 100644 libraries/src/main/resources/smooks/smooks-transform-email.xml create mode 100644 libraries/src/main/resources/smooks/smooks-validation.xml create mode 100644 libraries/src/main/resources/smooks/supplier.properties diff --git a/libraries/src/main/resources/smooks/email.ftl b/libraries/src/main/resources/smooks/email.ftl new file mode 100644 index 0000000000..c84a91352a --- /dev/null +++ b/libraries/src/main/resources/smooks/email.ftl @@ -0,0 +1,7 @@ +Hi, +Order number #${order.number} created on ${order.creationDate?date} is currently in ${order.status} status. +Consider contact supplier "${supplier.name}" with phone number: "${supplier.phoneNumber}". +Order items: +<#list items as item> +${item.quantity} X ${item.code} (total price ${item.price * item.quantity}) + \ No newline at end of file diff --git a/libraries/src/main/resources/smooks/item-rules.csv b/libraries/src/main/resources/smooks/item-rules.csv new file mode 100644 index 0000000000..c93c453f25 --- /dev/null +++ b/libraries/src/main/resources/smooks/item-rules.csv @@ -0,0 +1 @@ +"max_total","item.quantity * item.price < 300.00" diff --git a/libraries/src/main/resources/smooks/order.ftl b/libraries/src/main/resources/smooks/order.ftl new file mode 100644 index 0000000000..fb5bb5fa39 --- /dev/null +++ b/libraries/src/main/resources/smooks/order.ftl @@ -0,0 +1,6 @@ +UNA:+.? ' +UNH+${order.number}+${order.status}+${order.creationDate?date}' +CTA+${supplier.name}+${supplier.phoneNumber}' +<#list items as item> +LIN+${item.quantity}+${item.code}+${item.price}' + \ No newline at end of file diff --git a/libraries/src/main/resources/smooks/order.json b/libraries/src/main/resources/smooks/order.json new file mode 100644 index 0000000000..bf6bc5fe93 --- /dev/null +++ b/libraries/src/main/resources/smooks/order.json @@ -0,0 +1,21 @@ +{ + "creationDate":"2018-01-14", + "orderNumber":771, + "orderStatus":"IN_PROGRESS", + "supplier":{ + "name":"CompanyX", + "phone":"1234567" + }, + "orderItems":[ + { + "quantity":1, + "code":"PX1234", + "price":9.99 + }, + { + "quantity":2, + "code":"RX1990", + "price":120.32 + } + ] +} \ No newline at end of file diff --git a/libraries/src/main/resources/smooks/order.xml b/libraries/src/main/resources/smooks/order.xml new file mode 100644 index 0000000000..343c5cab38 --- /dev/null +++ b/libraries/src/main/resources/smooks/order.xml @@ -0,0 +1,20 @@ + + 771 + IN_PROGRESS + + CompanyX + 1234567 + + + + 1 + PX1234 + 9.99 + + + 2 + RX990 + 120.32 + + + \ No newline at end of file diff --git a/libraries/src/main/resources/smooks/smooks-mapping-json.xml b/libraries/src/main/resources/smooks/smooks-mapping-json.xml new file mode 100644 index 0000000000..014bb9d3e5 --- /dev/null +++ b/libraries/src/main/resources/smooks/smooks-mapping-json.xml @@ -0,0 +1,29 @@ + + + + + + + + yyyy-MM-dd + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libraries/src/main/resources/smooks/smooks-mapping.xml b/libraries/src/main/resources/smooks/smooks-mapping.xml new file mode 100644 index 0000000000..7996834e38 --- /dev/null +++ b/libraries/src/main/resources/smooks/smooks-mapping.xml @@ -0,0 +1,29 @@ + + + + + + + + yyyy-MM-dd + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libraries/src/main/resources/smooks/smooks-transform-edi.xml b/libraries/src/main/resources/smooks/smooks-transform-edi.xml new file mode 100644 index 0000000000..1dae4055a8 --- /dev/null +++ b/libraries/src/main/resources/smooks/smooks-transform-edi.xml @@ -0,0 +1,11 @@ + + + + + + + /smooks/order.ftl + + + \ No newline at end of file diff --git a/libraries/src/main/resources/smooks/smooks-transform-email.xml b/libraries/src/main/resources/smooks/smooks-transform-email.xml new file mode 100644 index 0000000000..101aa67f0d --- /dev/null +++ b/libraries/src/main/resources/smooks/smooks-transform-email.xml @@ -0,0 +1,12 @@ + + + + + + + + /smooks/email.ftl + + + \ No newline at end of file diff --git a/libraries/src/main/resources/smooks/smooks-validation.xml b/libraries/src/main/resources/smooks/smooks-validation.xml new file mode 100644 index 0000000000..b66722ffc5 --- /dev/null +++ b/libraries/src/main/resources/smooks/smooks-validation.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + diff --git a/libraries/src/main/resources/smooks/supplier.properties b/libraries/src/main/resources/smooks/supplier.properties new file mode 100644 index 0000000000..cc17e45eb4 --- /dev/null +++ b/libraries/src/main/resources/smooks/supplier.properties @@ -0,0 +1,2 @@ +supplierName=[A-Za-z0-9]* +supplierPhone=^[0-9\\-\\+]{9,15}$ From 34cf9fc6f80264e924014ecd77b09d68f72b4d89 Mon Sep 17 00:00:00 2001 From: mkuligowski Date: Wed, 24 Jan 2018 23:06:11 +0100 Subject: [PATCH 078/391] Add integration tests for Smooks converters and validators --- .../converter/SmooksIntegrationTest.java | 67 +++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 libraries/src/test/java/com/baeldung/smooks/converter/SmooksIntegrationTest.java diff --git a/libraries/src/test/java/com/baeldung/smooks/converter/SmooksIntegrationTest.java b/libraries/src/test/java/com/baeldung/smooks/converter/SmooksIntegrationTest.java new file mode 100644 index 0000000000..45de8830e1 --- /dev/null +++ b/libraries/src/test/java/com/baeldung/smooks/converter/SmooksIntegrationTest.java @@ -0,0 +1,67 @@ +package com.baeldung.smooks.converter; + +import com.baeldung.smooks.model.Item; +import com.baeldung.smooks.model.Order; +import com.baeldung.smooks.model.Status; +import com.baeldung.smooks.model.Supplier; +import org.junit.Test; +import org.milyn.validation.ValidationResult; +import java.text.SimpleDateFormat; +import static org.hamcrest.Matchers.*; +import static org.junit.Assert.*; + + +public class SmooksIntegrationTest { + + private static final String EDIFACT_MESSAGE = + "UNA:+.? '\r\n" + + "UNH+771+IN_PROGRESS+2018-01-14'\r\n" + + "CTA+CompanyX+1234567'\r\n" + + "LIN+1+PX1234+9,99'\r\n" + + "LIN+2+RX990+120,32'\r\n"; + private static final String EMAIL_MESSAGE = + "Hi,\r\n" + + "Order number #771 created on 2018-01-14 is currently in IN_PROGRESS status.\r\n" + + "Consider contact supplier \"CompanyX\" with phone number: \"1234567\".\r\n" + + "Order items:\r\n" + + "1 X PX1234 (total price 9,99)\r\n" + + "2 X RX990 (total price 240,64)\r\n"; + + @Test + public void givenOrderXML_whenConvert_thenPOJOsConstructedCorrectly() throws Exception { + + OrderConverter xmlToJavaOrderConverter = new OrderConverter(); + Order order = xmlToJavaOrderConverter.convertOrderXMLToOrderObject("/smooks/order.xml"); + + assertThat(order.getNumber(),is(771L)); + assertThat(order.getStatus(),is(Status.IN_PROGRESS)); + assertThat(order.getCreationDate(),is(new SimpleDateFormat("yyyy-MM-dd").parse("2018-01-14"))); + assertThat(order.getSupplier(),is(new Supplier("CompanyX","1234567"))); + assertThat(order.getItems(),containsInAnyOrder( + new Item("PX1234",9.99,1), + new Item("RX990",120.32,2)) + ); + + } + + @Test + public void givenIncorrectOrderXML_whenValidate_thenExpectValidationErrors() throws Exception { + OrderValidator orderValidator = new OrderValidator(); + ValidationResult validationResult = orderValidator.validate("/smooks/order.xml"); + assertThat(validationResult.getErrors(), hasSize(1)); + } + + @Test + public void givenOrderXML_whenApplyEDITemplate_thenConvertedToEDIFACT() throws Exception { + OrderConverter orderConverter = new OrderConverter(); + String edifact = orderConverter.convertOrderXMLtoEDIFACT("/smooks/order.xml"); + assertThat(edifact,is(EDIFACT_MESSAGE)); + } + + @Test + public void givenOrderXML_whenApplyEmailTemplate_thenConvertedToEmailMessage() throws Exception { + OrderConverter orderConverter = new OrderConverter(); + String emailMessage = orderConverter.convertOrderXMLtoEmailMessage("/smooks/order.xml"); + assertThat(emailMessage,is(EMAIL_MESSAGE)); + } +} \ No newline at end of file From dafe2f55539d357b1f89513d143555f3520134c4 Mon Sep 17 00:00:00 2001 From: Raksha Rao Date: Thu, 25 Jan 2018 10:31:34 +0530 Subject: [PATCH 079/391] Bean injection types --- .../AccountDetails.java | 40 +++++++++++++++++++ .../BankAccountApplication.java | 19 +++++++++ .../BankAccountService.java | 9 +++++ .../BankAccountWithConstructorInjection.java | 17 ++++++++ .../BankAccountWithSetterInjection.java | 22 ++++++++++ .../samplebeaninjectiontypes-context.xml | 21 ++++++++++ .../SampleBeanInjectionTest.java | 40 +++++++++++++++++++ 7 files changed, 168 insertions(+) create mode 100644 spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/AccountDetails.java create mode 100644 spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountApplication.java create mode 100644 spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountService.java create mode 100644 spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithConstructorInjection.java create mode 100644 spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithSetterInjection.java create mode 100644 spring-core/src/main/resources/samplebeaninjectiontypes-context.xml create mode 100644 spring-core/src/test/java/com/baeldung/samplebeaninjectiontypes/SampleBeanInjectionTest.java diff --git a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/AccountDetails.java b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/AccountDetails.java new file mode 100644 index 0000000000..2e4eb3b894 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/AccountDetails.java @@ -0,0 +1,40 @@ +package com.baeldung.samplebeaninjectionypes; + +public class AccountDetails { + + private Long accountNumber; + + private String accountType; + + private String accountName; + + public AccountDetails(Long accountNumber, String accountType, String accountName) { + this.accountNumber = accountNumber; + this.accountType = accountType; + this.accountName = accountName; + } + + public Long getAccountNumber() { + return accountNumber; + } + + public void setAccountNumber(Long accountNumber) { + this.accountNumber = accountNumber; + } + + public String getAccountType() { + return accountType; + } + + public void setAccountType(String accountType) { + this.accountType = accountType; + } + + public String getAccountName() { + return accountName; + } + + public void setAccountName(String accountName) { + this.accountName = accountName; + } +} diff --git a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountApplication.java b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountApplication.java new file mode 100644 index 0000000000..466255fd2e --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountApplication.java @@ -0,0 +1,19 @@ +package com.baeldung.samplebeaninjectionypes; + +import org.springframework.context.ApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +public class BankAccountApplication { + + + public static void main(String[] args) { + ApplicationContext context = new ClassPathXmlApplicationContext("samplebeaninjectiontypes-context.xml"); + BankAccountWithSetterInjection bankAccountWithSetterInjection = (BankAccountWithSetterInjection) context.getBean("bankAccountWithSetterInjectionBean"); + + bankAccountWithSetterInjection.openAccount(12345L,"Savings","John Doe"); + + BankAccountWithConstructorInjection bankAccountWithConstructorInjection = (BankAccountWithConstructorInjection) context.getBean("bankAccountWithConstructorInjectionBean"); + bankAccountWithSetterInjection.openAccount(12345L,"Savings","John Doe"); + + } +} diff --git a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountService.java b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountService.java new file mode 100644 index 0000000000..0f62db3655 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountService.java @@ -0,0 +1,9 @@ +package com.baeldung.samplebeaninjectionypes; + +public class BankAccountService { + + public AccountDetails openAccount(Long accountNumber, String accountType, String owner) { + AccountDetails accountDetails = new AccountDetails(accountNumber,accountType,owner); + return accountDetails; + } +} diff --git a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithConstructorInjection.java b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithConstructorInjection.java new file mode 100644 index 0000000000..1bc75d15e0 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithConstructorInjection.java @@ -0,0 +1,17 @@ +package com.baeldung.samplebeaninjectionypes; + +import org.springframework.beans.factory.annotation.Autowired; + +public class BankAccountWithConstructorInjection { + private BankAccountService bankAccountService; + + @Autowired + public BankAccountWithConstructorInjection(BankAccountService service) { + this.bankAccountService = service; + } + + public AccountDetails openAccount(Long accountNumber, String accountType, String owner) { + return bankAccountService.openAccount(accountNumber, accountType, owner); + } + +} diff --git a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithSetterInjection.java b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithSetterInjection.java new file mode 100644 index 0000000000..69c1fec4cc --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithSetterInjection.java @@ -0,0 +1,22 @@ +package com.baeldung.samplebeaninjectionypes; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; + +public class BankAccountWithSetterInjection { + + private BankAccountService bankAccountService; + + public BankAccountWithSetterInjection(BankAccountService service) { + this.bankAccountService = service; + } + + @Autowired + public void setBankAccountService(BankAccountService bankAccountService) { + this.bankAccountService = bankAccountService; + } + + public AccountDetails openAccount(Long accountNumber, String accountType, String owner) { + return bankAccountService.openAccount(accountNumber, accountType, owner); + } +} diff --git a/spring-core/src/main/resources/samplebeaninjectiontypes-context.xml b/spring-core/src/main/resources/samplebeaninjectiontypes-context.xml new file mode 100644 index 0000000000..307abd508e --- /dev/null +++ b/spring-core/src/main/resources/samplebeaninjectiontypes-context.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/spring-core/src/test/java/com/baeldung/samplebeaninjectiontypes/SampleBeanInjectionTest.java b/spring-core/src/test/java/com/baeldung/samplebeaninjectiontypes/SampleBeanInjectionTest.java new file mode 100644 index 0000000000..f054a89a85 --- /dev/null +++ b/spring-core/src/test/java/com/baeldung/samplebeaninjectiontypes/SampleBeanInjectionTest.java @@ -0,0 +1,40 @@ +package com.baeldung.samplebeaninjectiontypes; + +import com.baeldung.dependencyinjectiontypes.ArticleWithSetterInjection; +import com.baeldung.samplebeaninjectionypes.AccountDetails; +import com.baeldung.samplebeaninjectionypes.BankAccountWithConstructorInjection; +import com.baeldung.samplebeaninjectionypes.BankAccountWithSetterInjection; +import org.junit.Test; +import org.springframework.context.ApplicationContext; +import org.springframework.context.annotation.AnnotationConfigApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +import static org.junit.Assert.assertTrue; + +public class SampleBeanInjectionTest { + + @Test + public void testSetterInjectionValid() { + + ApplicationContext context = new ClassPathXmlApplicationContext("samplebeaninjectiontypes-context.xml"); + BankAccountWithSetterInjection bankAccountWithSetterInjection = (BankAccountWithSetterInjection) context.getBean("bankAccountWithSetterInjection"); + + String owner = "John Doe"; + AccountDetails accountDetails = bankAccountWithSetterInjection.openAccount(12345L,"Savings",owner); + + assertTrue(accountDetails.getAccountName().equals(owner)); + + } + + @Test + public void testConstructorInjectionValid() { + + ApplicationContext context = new ClassPathXmlApplicationContext("samplebeaninjectiontypes-context.xml"); + BankAccountWithConstructorInjection bankAccountWithConstructorInjection = (BankAccountWithConstructorInjection) context.getBean("bankAccountWithConstructorInjectionBean"); + + String owner = "John Doe"; + AccountDetails accountDetails = bankAccountWithConstructorInjection.openAccount(12345L,"Savings",owner); + + assertTrue(accountDetails.getAccountName().equals(owner)); + } +} From f12497c18beb7e1156d3143a7d73daab469a4445 Mon Sep 17 00:00:00 2001 From: Raksha Rao Date: Sat, 27 Jan 2018 14:28:19 +0530 Subject: [PATCH 080/391] test case minor changes --- .../SampleBeanInjectionTest.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/spring-core/src/test/java/com/baeldung/samplebeaninjectiontypes/SampleBeanInjectionTest.java b/spring-core/src/test/java/com/baeldung/samplebeaninjectiontypes/SampleBeanInjectionTest.java index f054a89a85..fb7234e5c5 100644 --- a/spring-core/src/test/java/com/baeldung/samplebeaninjectiontypes/SampleBeanInjectionTest.java +++ b/spring-core/src/test/java/com/baeldung/samplebeaninjectiontypes/SampleBeanInjectionTest.java @@ -4,6 +4,7 @@ import com.baeldung.dependencyinjectiontypes.ArticleWithSetterInjection; import com.baeldung.samplebeaninjectionypes.AccountDetails; import com.baeldung.samplebeaninjectionypes.BankAccountWithConstructorInjection; import com.baeldung.samplebeaninjectionypes.BankAccountWithSetterInjection; +import org.junit.Before; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; @@ -12,11 +13,16 @@ import org.springframework.context.support.ClassPathXmlApplicationContext; import static org.junit.Assert.assertTrue; public class SampleBeanInjectionTest { + ApplicationContext context; + + @Before + public void before(){ + context = new ClassPathXmlApplicationContext("dependencyinjectiontypes-context.xml"); + } @Test - public void testSetterInjectionValid() { + public void givenAutowiredAnnotation_WhenSetOnSetter_ThenDependencyValid() { - ApplicationContext context = new ClassPathXmlApplicationContext("samplebeaninjectiontypes-context.xml"); BankAccountWithSetterInjection bankAccountWithSetterInjection = (BankAccountWithSetterInjection) context.getBean("bankAccountWithSetterInjection"); String owner = "John Doe"; @@ -27,9 +33,8 @@ public class SampleBeanInjectionTest { } @Test - public void testConstructorInjectionValid() { + public void givenAutowiredAnnotation_WhenSetOnConstructor_ThenDependencyValid() { - ApplicationContext context = new ClassPathXmlApplicationContext("samplebeaninjectiontypes-context.xml"); BankAccountWithConstructorInjection bankAccountWithConstructorInjection = (BankAccountWithConstructorInjection) context.getBean("bankAccountWithConstructorInjectionBean"); String owner = "John Doe"; From 8f4df6b903866dac1725832d06ee7382fc89d0ce Mon Sep 17 00:00:00 2001 From: orrym Date: Sat, 27 Jan 2018 18:11:07 +0200 Subject: [PATCH 081/391] Add XML, JavaConfig and Autowired examples. --- .../BeanInjectorAutowiredExample.java | 18 ++++++++++++ .../autowiredexample/SimpleAutowiredBean.java | 16 ++++++++++ .../SimpleAutowiredDependency.java | 12 ++++++++ .../javaconfigexample/BeanInjectorConfig.java | 29 +++++++++++++++++++ .../BeanInjectorJavaConfigExample.java | 19 ++++++++++++ .../SimpleBeanConstructorInjection.java | 16 ++++++++++ .../SimpleBeanSetterInjection.java | 16 ++++++++++ .../javaconfigexample/SimpleDependency.java | 9 ++++++ .../BeanInjectorXMLExample.java | 17 +++++++++++ .../SimpleBeanConstructorInjection.java | 16 ++++++++++ .../SimpleBeanSetterInjection.java | 16 ++++++++++ .../xmlconfigexample/SimpleDependency.java | 9 ++++++ .../src/main/resources/bean-injector.xml | 19 ++++++++++++ 13 files changed, 212 insertions(+) create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/BeanInjectorAutowiredExample.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredBean.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredDependency.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorConfig.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorJavaConfigExample.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanConstructorInjection.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanSetterInjection.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleDependency.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/BeanInjectorXMLExample.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanConstructorInjection.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanSetterInjection.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleDependency.java create mode 100644 spring-core/src/main/resources/bean-injector.xml diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/BeanInjectorAutowiredExample.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/BeanInjectorAutowiredExample.java new file mode 100644 index 0000000000..43c0314619 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/BeanInjectorAutowiredExample.java @@ -0,0 +1,18 @@ +package com.baeldung.beaninjectiontypes.autowiredexample; + +import org.springframework.context.ApplicationContext; +import org.springframework.context.annotation.AnnotationConfigApplicationContext; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; + +@Configuration +@ComponentScan +public class BeanInjectorAutowiredExample { + + public static void main(String[] args) { + ApplicationContext ctx = new AnnotationConfigApplicationContext(BeanInjectorAutowiredExample.class); + SimpleAutowiredBean simpleBean = (SimpleAutowiredBean) ctx.getBean("simpleAutowiredBean"); + simpleBean.doSomething(); + } + +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredBean.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredBean.java new file mode 100644 index 0000000000..1dcd35196b --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredBean.java @@ -0,0 +1,16 @@ +package com.baeldung.beaninjectiontypes.autowiredexample; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Component +public class SimpleAutowiredBean { + + @Autowired + private SimpleAutowiredDependency simpleAutowiredDependency; + + public void doSomething() { + System.out.println("I'm a Simple Bean. I'm doing something!"); + simpleAutowiredDependency.doSomethingElse(); + } +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredDependency.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredDependency.java new file mode 100644 index 0000000000..f456bafe4a --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredDependency.java @@ -0,0 +1,12 @@ +package com.baeldung.beaninjectiontypes.autowiredexample; + +import org.springframework.stereotype.Component; + +@Component +public class SimpleAutowiredDependency { + + public void doSomethingElse() { + System.out.println("I'm a simple autowired dependency! I'm doing something!"); + } + +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorConfig.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorConfig.java new file mode 100644 index 0000000000..14e73187a8 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorConfig.java @@ -0,0 +1,29 @@ +package com.baeldung.beaninjectiontypes.javaconfigexample; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class BeanInjectorConfig { + + @Bean + public SimpleDependency simpleDependency() { + return new SimpleDependency(); + } + + // The following illustrates constructor injection: + + @Bean + public SimpleBeanConstructorInjection simpleBeanConstructorInjection() { + return new SimpleBeanConstructorInjection(simpleDependency()); + } + + // The following illustrates setter injection: + + @Bean + public SimpleBeanSetterInjection simpleBeanSetterInjection() { + SimpleBeanSetterInjection simpleBeanSetterInjection = new SimpleBeanSetterInjection(); + simpleBeanSetterInjection.setSimpleDependency(new SimpleDependency()); + return simpleBeanSetterInjection; + } +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorJavaConfigExample.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorJavaConfigExample.java new file mode 100644 index 0000000000..fd6e00105e --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorJavaConfigExample.java @@ -0,0 +1,19 @@ +package com.baeldung.beaninjectiontypes.javaconfigexample; + +import org.springframework.context.ApplicationContext; +import org.springframework.context.annotation.AnnotationConfigApplicationContext; + +public class BeanInjectorJavaConfigExample { + + public static void main(String[] args) { + ApplicationContext ctx = new AnnotationConfigApplicationContext(BeanInjectorConfig.class); + SimpleBeanConstructorInjection simpleBeanConstructorInjection = (SimpleBeanConstructorInjection) ctx.getBean("simpleBeanConstructorInjection"); + simpleBeanConstructorInjection.doSomething(); + + System.out.println("******************"); + + SimpleBeanSetterInjection simpleBeanSetterInjection = (SimpleBeanSetterInjection) ctx.getBean("simpleBeanSetterInjection"); + simpleBeanSetterInjection.doSomething(); + } + +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanConstructorInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanConstructorInjection.java new file mode 100644 index 0000000000..03918602c0 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanConstructorInjection.java @@ -0,0 +1,16 @@ +package com.baeldung.beaninjectiontypes.javaconfigexample; + +public class SimpleBeanConstructorInjection { + + private SimpleDependency simpleDependency; + + SimpleBeanConstructorInjection(SimpleDependency simpleDependency) { + this.simpleDependency = simpleDependency; + } + + public void doSomething() { + System.out.println("I'm a Simple Bean. My dependency is wired using constructor injection - I'm doing something!"); + simpleDependency.doSomethingElse(); + } + +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanSetterInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanSetterInjection.java new file mode 100644 index 0000000000..60c3d17997 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanSetterInjection.java @@ -0,0 +1,16 @@ +package com.baeldung.beaninjectiontypes.javaconfigexample; + +public class SimpleBeanSetterInjection { + + private SimpleDependency simpleDependency; + + public void doSomething() { + System.out.println("I'm a Simple Bean. My dependency is wired using setter injection - I'm doing something!"); + simpleDependency.doSomethingElse(); + } + + public void setSimpleDependency(SimpleDependency simpleDependency) { + this.simpleDependency = simpleDependency; + } + +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleDependency.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleDependency.java new file mode 100644 index 0000000000..1867518b12 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleDependency.java @@ -0,0 +1,9 @@ +package com.baeldung.beaninjectiontypes.javaconfigexample; + +public class SimpleDependency { + + public void doSomethingElse() { + System.out.println("I'm a simple dependency! I'm doing something (else)!"); + } + +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/BeanInjectorXMLExample.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/BeanInjectorXMLExample.java new file mode 100644 index 0000000000..a637d0f4a4 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/BeanInjectorXMLExample.java @@ -0,0 +1,17 @@ +package com.baeldung.beaninjectiontypes.xmlconfigexample; + +import org.springframework.context.ApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; + +public class BeanInjectorXMLExample { + + public static void main(String[] args) { + ApplicationContext ctx = new ClassPathXmlApplicationContext("bean-injector.xml"); + SimpleBeanConstructorInjection simpleBeanConstructorInjection = (SimpleBeanConstructorInjection) ctx.getBean("simpleBeanConstructorInjection"); + simpleBeanConstructorInjection.doSomething(); + + System.out.println("********************"); + SimpleBeanSetterInjection simpleBeanSetterInjection = (SimpleBeanSetterInjection) ctx.getBean("simpleBeanSetterInjection"); + simpleBeanSetterInjection.doSomething(); + } +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanConstructorInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanConstructorInjection.java new file mode 100644 index 0000000000..db6f58d10d --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanConstructorInjection.java @@ -0,0 +1,16 @@ +package com.baeldung.beaninjectiontypes.xmlconfigexample; + +public class SimpleBeanConstructorInjection { + + private SimpleDependency simpleDependency; + + SimpleBeanConstructorInjection(SimpleDependency simpleDependency) { + this.simpleDependency = simpleDependency; + } + + public void doSomething() { + System.out.println("I'm a Simple Bean. My dependency is wired using constructor injection - I'm doing something!"); + simpleDependency.doSomethingElse(); + } + +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanSetterInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanSetterInjection.java new file mode 100644 index 0000000000..7e845c3cd1 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanSetterInjection.java @@ -0,0 +1,16 @@ +package com.baeldung.beaninjectiontypes.xmlconfigexample; + +public class SimpleBeanSetterInjection { + + private SimpleDependency simpleDependency; + + public void setSimpleDependency(SimpleDependency simpleDependency) { + this.simpleDependency = simpleDependency; + } + + public void doSomething() { + System.out.println("I'm a Simple Bean. My dependency is wired using setter injection - I'm doing something!"); + simpleDependency.doSomethingElse(); + } + +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleDependency.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleDependency.java new file mode 100644 index 0000000000..7b1f2ad35a --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleDependency.java @@ -0,0 +1,9 @@ +package com.baeldung.beaninjectiontypes.xmlconfigexample; + +public class SimpleDependency { + + public void doSomethingElse() { + System.out.println("I'm a simple dependency! I'm doing something (else)!"); + } + +} diff --git a/spring-core/src/main/resources/bean-injector.xml b/spring-core/src/main/resources/bean-injector.xml new file mode 100644 index 0000000000..cb084a405f --- /dev/null +++ b/spring-core/src/main/resources/bean-injector.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + \ No newline at end of file From 914abdb9a498b75e206f91f53c264e7f4d848283 Mon Sep 17 00:00:00 2001 From: iaforek Date: Sun, 28 Jan 2018 18:14:29 +0000 Subject: [PATCH 082/391] Updated code - mostly with CONSTANTS. Extracted methods. --- .../sudoku/BacktrackingAlgorithm.java | 119 ++++++++++-------- .../sudoku/DancingLinksAlgorithm.java | 86 +++++++------ 2 files changed, 114 insertions(+), 91 deletions(-) diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java index effdcd9c04..25c8285e0e 100644 --- a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java @@ -1,18 +1,28 @@ package com.baeldung.algorithms.sudoku; -public class BacktrackingAlgorithm { +import java.util.stream.IntStream; - static char[][] board = { - { '8', '.', '.', '.', '.', '.', '.', '.', '.' }, - { '.', '.', '3', '6', '.', '.', '.', '.', '.' }, - { '.', '7', '.', '.', '9', '.', '2', '.', '.' }, - { '.', '5', '.', '.', '.', '7', '.', '.', '.' }, - { '.', '.', '.', '.', '4', '5', '7', '.', '.' }, - { '.', '.', '.', '1', '.', '.', '.', '3', '.' }, - { '.', '.', '1', '.', '.', '.', '.', '6', '8' }, - { '.', '.', '8', '5', '.', '.', '.', '1', '.' }, - { '.', '9', '.', '.', '.', '.', '4', '.', '.' } - }; +public class BacktrackingAlgorithm { + + private static int BOARD_SIZE = 9; + private static int SUBSECTION_SIZE = 3; + private static int BOARD_INDEX_START = 0; + + private static int NO_VALUE = 0; + private static int MIN_VALUE = 1; + private static int MAX_VALUE = 9; + + public static int[][] board = { + { 8, 0, 0, 0, 0, 0, 0, 0, 0 }, + { 0, 0, 3, 6, 0, 0, 0, 0, 0 }, + { 0, 7, 0, 0, 9, 0, 2, 0, 0 }, + { 0, 5, 0, 0, 0, 7, 0, 0, 0 }, + { 0, 0, 0, 0, 4, 5, 7, 0, 0 }, + { 0, 0, 0, 1, 0, 0, 0, 3, 0 }, + { 0, 0, 1, 0, 0, 0, 0, 6, 8 }, + { 0, 0, 8, 5, 0, 0, 0, 1, 0 }, + { 0, 9, 0, 0, 0, 0, 4, 0, 0 } + }; public static void main(String[] args) { BacktrackingAlgorithm solver = new BacktrackingAlgorithm(); @@ -21,24 +31,24 @@ public class BacktrackingAlgorithm { } public void printBoard() { - for (int i = 0; i < 9; i++) { - for (int j = 0; j < 9; j++) { - System.out.print(board[i][j] + " "); - } + IntStream.range(BOARD_INDEX_START, BOARD_SIZE).forEach(row -> { + IntStream.range(BOARD_INDEX_START, BOARD_SIZE).forEach(column -> { + System.out.print(board[row][column] + " "); + }); System.out.println(); - } + }); } - public boolean solve(char[][] board) { - for (int r = 0; r < board.length; r++) { - for (int c = 0; c < board[0].length; c++) { - if (board[r][c] == '.') { - for (int k = 1; k <= 9; k++) { - board[r][c] = (char) ('0' + k); + public boolean solve(int[][] board) { + for (int r = BOARD_INDEX_START; r < BOARD_SIZE; r++) { + for (int c = BOARD_INDEX_START; c < BOARD_SIZE; c++) { + if (board[r][c] == NO_VALUE) { + for (int k = MIN_VALUE; k <= MAX_VALUE; k++) { + board[r][c] = k; if (isValid(board, r, c) && solve(board)) { return true; } else { - board[r][c] = '.'; + board[r][c] = NO_VALUE; } } return false; @@ -48,39 +58,44 @@ public class BacktrackingAlgorithm { return true; } - public boolean isValid(char[][] board, int r, int c) { - boolean[] row = new boolean[9]; - for (int i = 0; i < 9; i++) { - if (board[r][i] >= '1' && board[r][i] <= '9') { - if (row[board[r][i] - '1'] == false) { - row[board[r][i] - '1'] = true; - } else { - return false; - } + public boolean isValid(int[][] board, int r, int c) { + return (rowConstraint(board, r) && + columnConstraint(board, c) && + subsectionConstraint(board, r, c)); + } + + private boolean subsectionConstraint(int[][] board, int r, int c) { + boolean[] constraint = new boolean[BOARD_SIZE]; + for (int i = (r / SUBSECTION_SIZE) * SUBSECTION_SIZE; i < (r / SUBSECTION_SIZE) * SUBSECTION_SIZE + SUBSECTION_SIZE; i++) { + for (int j = (c / SUBSECTION_SIZE) * SUBSECTION_SIZE; j < (c / SUBSECTION_SIZE) * SUBSECTION_SIZE + SUBSECTION_SIZE; j++) { + if (!checkConstraint(board, i, constraint, j)) return false; } } + return true; + } - boolean[] col = new boolean[9]; - for (int i = 0; i < 9; i++) { - if (board[i][c] >= '1' && board[i][c] <= '9') { - if (col[board[i][c] - '1'] == false) { - col[board[i][c] - '1'] = true; - } else { - return false; - } - } + private boolean columnConstraint(int[][] board, int c) { + boolean[] constraint = new boolean[BOARD_SIZE]; + for (int i = BOARD_INDEX_START; i < BOARD_SIZE; i++) { + if (!checkConstraint(board, i, constraint, c)) return false; } + return true; + } - boolean[] grid = new boolean[9]; - for (int i = (r / 3) * 3; i < (r / 3) * 3 + 3; i++) { - for (int j = (c / 3) * 3; j < (c / 3) * 3 + 3; j++) { - if (board[i][j] >= '1' && board[i][j] <= '9') { - if (grid[board[i][j] - '1'] == false) { - grid[board[i][j] - '1'] = true; - } else { - return false; - } - } + private boolean rowConstraint(int[][] board, int r) { + boolean[] constraint = new boolean[BOARD_SIZE]; + for (int i = BOARD_INDEX_START; i < BOARD_SIZE; i++) { + if (!checkConstraint(board, r, constraint, i)) return false; + } + return true; + } + + private boolean checkConstraint(int[][] board, int r, boolean[] constraint, int c) { + if (board[r][c] >= MIN_VALUE && board[r][c] <= MAX_VALUE) { + if (constraint[board[r][c] - 1] == false) { + constraint[board[r][c] - 1] = true; + } else { + return false; } } return true; diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java index 5cff88c644..057a15c594 100644 --- a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java @@ -3,28 +3,32 @@ package com.baeldung.algorithms.sudoku; import java.util.*; public class DancingLinksAlgorithm { - private static int S = 9; - private static int SIDE = 3; + private static int BOARD_SIZE = 9; + private static int SUBSECTION_SIZE = 3; + private static int NO_VALUE = 0; + private static int CONSTRAINTS = 4; + private static int MIN_VALUE = 1; + private static int MAX_VALUE = 9; + private static int COVER_START_INDEX = 1; - static char[][] board = { - { '8', '.', '.', '.', '.', '.', '.', '.', '.' }, - { '.', '.', '3', '6', '.', '.', '.', '.', '.' }, - { '.', '7', '.', '.', '9', '.', '2', '.', '.' }, - { '.', '5', '.', '.', '.', '7', '.', '.', '.' }, - { '.', '.', '.', '.', '4', '5', '7', '.', '.' }, - { '.', '.', '.', '1', '.', '.', '.', '3', '.' }, - { '.', '.', '1', '.', '.', '.', '.', '6', '8' }, - { '.', '.', '8', '5', '.', '.', '.', '1', '.' }, - { '.', '9', '.', '.', '.', '.', '4', '.', '.' } + public static int[][] board = { + { 8, 0, 0, 0, 0, 0, 0, 0, 0 }, + { 0, 0, 3, 6, 0, 0, 0, 0, 0 }, + { 0, 7, 0, 0, 9, 0, 2, 0, 0 }, + { 0, 5, 0, 0, 0, 7, 0, 0, 0 }, + { 0, 0, 0, 0, 4, 5, 7, 0, 0 }, + { 0, 0, 0, 1, 0, 0, 0, 3, 0 }, + { 0, 0, 1, 0, 0, 0, 0, 6, 8 }, + { 0, 0, 8, 5, 0, 0, 0, 1, 0 }, + { 0, 9, 0, 0, 0, 0, 4, 0, 0 } }; public static void main(String[] args) { - DancingLinksAlgorithm solver = new DancingLinksAlgorithm(); solver.solve(board); } - public boolean solve(char[][] board) { + public boolean solve(int[][] board) { boolean[][] cover = initializeExactCoverBoard(board); DancingLinks dlx = new DancingLinks(cover); dlx.runSolver(); @@ -33,46 +37,50 @@ public class DancingLinksAlgorithm { } private int getIndex(int row, int col, int num) { - return (row - 1) * S * S + (col - 1) * S + (num - 1); + return (row - 1) * BOARD_SIZE * BOARD_SIZE + (col - 1) * BOARD_SIZE + (num - 1); } private boolean[][] createExactCoverBoard() { - boolean[][] R = new boolean[9 * 9 * 9][9 * 9 * 4]; + boolean[][] R = new boolean[BOARD_SIZE * BOARD_SIZE * MAX_VALUE][BOARD_SIZE * BOARD_SIZE * CONSTRAINTS]; int hBase = 0; - for (int r = 1; r <= S; r++) { - for (int c = 1; c <= S; c++, hBase++) { - for (int n = 1; n <= S; n++) { + // Cell constraint. + for (int r = COVER_START_INDEX; r <= BOARD_SIZE; r++) { + for (int c = COVER_START_INDEX; c <= BOARD_SIZE; c++, hBase++) { + for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++) { int index = getIndex(r, c, n); R[index][hBase] = true; } } } - - for (int r = 1; r <= S; r++) { - for (int n = 1; n <= S; n++, hBase++) { - for (int c1 = 1; c1 <= S; c1++) { + + // Row constrain. + for (int r = COVER_START_INDEX; r <= BOARD_SIZE; r++) { + for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { + for (int c1 = COVER_START_INDEX; c1 <= BOARD_SIZE; c1++) { int index = getIndex(r, c1, n); R[index][hBase] = true; } } } - for (int c = 1; c <= S; c++) { - for (int n = 1; n <= S; n++, hBase++) { - for (int r1 = 1; r1 <= S; r1++) { + // Column constraint. + for (int c = COVER_START_INDEX; c <= BOARD_SIZE; c++) { + for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { + for (int r1 = COVER_START_INDEX; r1 <= BOARD_SIZE; r1++) { int index = getIndex(r1, c, n); R[index][hBase] = true; } } } - - for (int br = 1; br <= S; br += SIDE) { - for (int bc = 1; bc <= S; bc += SIDE) { - for (int n = 1; n <= S; n++, hBase++) { - for (int rDelta = 0; rDelta < SIDE; rDelta++) { - for (int cDelta = 0; cDelta < SIDE; cDelta++) { + + // Subsection constraint + for (int br = COVER_START_INDEX; br <= BOARD_SIZE; br += SUBSECTION_SIZE) { + for (int bc = COVER_START_INDEX; bc <= BOARD_SIZE; bc += SUBSECTION_SIZE) { + for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { + for (int rDelta = 0; rDelta < SUBSECTION_SIZE; rDelta++) { + for (int cDelta = 0; cDelta < SUBSECTION_SIZE; cDelta++) { int index = getIndex(br + rDelta, bc + cDelta, n); R[index][hBase] = true; } @@ -83,14 +91,14 @@ public class DancingLinksAlgorithm { return R; } - private boolean[][] initializeExactCoverBoard(char[][] sudoku) { + private boolean[][] initializeExactCoverBoard(int[][] board) { boolean[][] R = createExactCoverBoard(); - for (int i = 1; i <= S; i++) { - for (int j = 1; j <= S; j++) { - char n = sudoku[i - 1][j - 1]; - if (n != '.') { - for (int num = 1; num <= S; num++) { - if ((char) ('0' + num) != n) { + for (int i = COVER_START_INDEX; i <= BOARD_SIZE; i++) { + for (int j = COVER_START_INDEX; j <= BOARD_SIZE; j++) { + int n = board[i - 1][j - 1]; + if (n != NO_VALUE) { + for (int num = MIN_VALUE; num <= MAX_VALUE; num++) { + if (num != n) { Arrays.fill(R[getIndex(i, j, num)], false); } } From 2dbb293e669cf23c1d41a1cac120ab75f9a30045 Mon Sep 17 00:00:00 2001 From: iaforek Date: Sun, 28 Jan 2018 18:18:18 +0000 Subject: [PATCH 083/391] Removed pointless Java8 code. Renamed constant --- .../sudoku/BacktrackingAlgorithm.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java index 25c8285e0e..127e78900c 100644 --- a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java @@ -6,7 +6,7 @@ public class BacktrackingAlgorithm { private static int BOARD_SIZE = 9; private static int SUBSECTION_SIZE = 3; - private static int BOARD_INDEX_START = 0; + private static int BOARD_START_INDEX = 0; private static int NO_VALUE = 0; private static int MIN_VALUE = 1; @@ -31,17 +31,17 @@ public class BacktrackingAlgorithm { } public void printBoard() { - IntStream.range(BOARD_INDEX_START, BOARD_SIZE).forEach(row -> { - IntStream.range(BOARD_INDEX_START, BOARD_SIZE).forEach(column -> { + for (int row = BOARD_START_INDEX; row < BOARD_SIZE; row++) { + for (int column = BOARD_START_INDEX; column < BOARD_SIZE; column++) { System.out.print(board[row][column] + " "); - }); + } System.out.println(); - }); + } } public boolean solve(int[][] board) { - for (int r = BOARD_INDEX_START; r < BOARD_SIZE; r++) { - for (int c = BOARD_INDEX_START; c < BOARD_SIZE; c++) { + for (int r = BOARD_START_INDEX; r < BOARD_SIZE; r++) { + for (int c = BOARD_START_INDEX; c < BOARD_SIZE; c++) { if (board[r][c] == NO_VALUE) { for (int k = MIN_VALUE; k <= MAX_VALUE; k++) { board[r][c] = k; @@ -76,7 +76,7 @@ public class BacktrackingAlgorithm { private boolean columnConstraint(int[][] board, int c) { boolean[] constraint = new boolean[BOARD_SIZE]; - for (int i = BOARD_INDEX_START; i < BOARD_SIZE; i++) { + for (int i = BOARD_START_INDEX; i < BOARD_SIZE; i++) { if (!checkConstraint(board, i, constraint, c)) return false; } return true; @@ -84,7 +84,7 @@ public class BacktrackingAlgorithm { private boolean rowConstraint(int[][] board, int r) { boolean[] constraint = new boolean[BOARD_SIZE]; - for (int i = BOARD_INDEX_START; i < BOARD_SIZE; i++) { + for (int i = BOARD_START_INDEX; i < BOARD_SIZE; i++) { if (!checkConstraint(board, r, constraint, i)) return false; } return true; From 7e9794256ddeae1e45733ea388b503989e3d18ff Mon Sep 17 00:00:00 2001 From: "korneliusz.wandzel" Date: Mon, 29 Jan 2018 01:03:39 +0100 Subject: [PATCH 084/391] =?UTF-8?q?Commit=20for=20Different=20Types=20of?= =?UTF-8?q?=20Bean=20Injection=20in=20Spring=20=E2=80=94=20Draft=20article?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/baeldung/beaninjectiontypes/Boat.java | 19 +++++++++++++++ .../com/baeldung/beaninjectiontypes/Car.java | 18 +++++++++++++++ .../baeldung/beaninjectiontypes/Config.java | 10 ++++++++ .../baeldung/beaninjectiontypes/Engine.java | 8 +++++++ .../beaninjectiontypes/LawnMower.java | 19 +++++++++++++++ .../baeldung/beaninjectiontypes/Rocket.java | 20 ++++++++++++++++ .../baeldung/beaninjectiontypes/BoatTest.java | 23 +++++++++++++++++++ .../baeldung/beaninjectiontypes/CarTest.java | 23 +++++++++++++++++++ .../beaninjectiontypes/LawnMowerTest.java | 23 +++++++++++++++++++ .../beaninjectiontypes/RocketTest.java | 23 +++++++++++++++++++ 10 files changed, 186 insertions(+) create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/Boat.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/Car.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/Engine.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/LawnMower.java create mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/Rocket.java create mode 100644 spring-core/src/test/java/com/baeldung/beaninjectiontypes/BoatTest.java create mode 100644 spring-core/src/test/java/com/baeldung/beaninjectiontypes/CarTest.java create mode 100644 spring-core/src/test/java/com/baeldung/beaninjectiontypes/LawnMowerTest.java create mode 100644 spring-core/src/test/java/com/baeldung/beaninjectiontypes/RocketTest.java diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Boat.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Boat.java new file mode 100644 index 0000000000..a7138aff40 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Boat.java @@ -0,0 +1,19 @@ +package com.baeldung.beaninjectiontypes; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Component +public class Boat { + + private Engine engine; + + @Autowired + public void setEngine(Engine engine) { + this.engine = engine; + } + + public Engine getEngine() { + return engine; + } +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Car.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Car.java new file mode 100644 index 0000000000..d943a0a839 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Car.java @@ -0,0 +1,18 @@ +package com.baeldung.beaninjectiontypes; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Component +public class Car { + @Autowired + private Engine engine; + + public void setEngine(Engine engine) { + this.engine = engine; + } + + public Engine getEngine() { + return engine; + } +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java new file mode 100644 index 0000000000..928ea1d794 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java @@ -0,0 +1,10 @@ +package com.baeldung.beaninjectiontypes; + +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; + +@Configuration +@ComponentScan("com.baeldung.beaninjectiontypes") +public class Config { + +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Engine.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Engine.java new file mode 100644 index 0000000000..71c9a5855b --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Engine.java @@ -0,0 +1,8 @@ +package com.baeldung.beaninjectiontypes; + +import org.springframework.stereotype.Component; + +@Component +public class Engine { + +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/LawnMower.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/LawnMower.java new file mode 100644 index 0000000000..19b71bf8d3 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/LawnMower.java @@ -0,0 +1,19 @@ +package com.baeldung.beaninjectiontypes; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Component +public class LawnMower { + + @Autowired + private Engine engine; + + public LawnMower(Engine engine) { + this.engine = engine; + } + + public Engine getEngine() { + return engine; + } +} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Rocket.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Rocket.java new file mode 100644 index 0000000000..7bfbc6fc01 --- /dev/null +++ b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Rocket.java @@ -0,0 +1,20 @@ +package com.baeldung.beaninjectiontypes; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Component +public class Rocket { + + private Engine engine; + + @Autowired + public Rocket(Engine engine) { + this.engine = engine; + } + + public Engine getEngine() { + return engine; + } + +} diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BoatTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BoatTest.java new file mode 100644 index 0000000000..f89a14e942 --- /dev/null +++ b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BoatTest.java @@ -0,0 +1,23 @@ +package com.baeldung.beaninjectiontypes; + +import static org.junit.Assert.assertNotNull; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(classes = Config.class) +public class BoatTest { + + @Autowired + Boat boat; + + @Test + public void engineInjectionTest() { + assertNotNull(boat); + assertNotNull(boat.getEngine()); + } +} diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/CarTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/CarTest.java new file mode 100644 index 0000000000..7c022f891b --- /dev/null +++ b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/CarTest.java @@ -0,0 +1,23 @@ +package com.baeldung.beaninjectiontypes; + +import static org.junit.Assert.assertNotNull; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(classes = Config.class) +public class CarTest { + + @Autowired + Car car; + + @Test + public void engineInjectionTest() { + assertNotNull(car); + assertNotNull(car.getEngine()); + } +} diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/LawnMowerTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/LawnMowerTest.java new file mode 100644 index 0000000000..84595c717d --- /dev/null +++ b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/LawnMowerTest.java @@ -0,0 +1,23 @@ +package com.baeldung.beaninjectiontypes; + +import static org.junit.Assert.assertNotNull; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(classes = Config.class) +public class LawnMowerTest { + + @Autowired + LawnMower lawnMower; + + @Test + public void engineInjectionTest() { + assertNotNull(lawnMower); + assertNotNull(lawnMower.getEngine()); + } +} diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/RocketTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/RocketTest.java new file mode 100644 index 0000000000..3fe44d266e --- /dev/null +++ b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/RocketTest.java @@ -0,0 +1,23 @@ +package com.baeldung.beaninjectiontypes; + +import static org.junit.Assert.assertNotNull; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(classes = Config.class) +public class RocketTest { + + @Autowired + Rocket rocket; + + @Test + public void engineInjectionTest() { + assertNotNull(rocket); + assertNotNull(rocket.getEngine()); + } +} From 89a1600dc11b0afa2377bc1d86d0282cf2dbe83a Mon Sep 17 00:00:00 2001 From: mkuligowski Date: Tue, 30 Jan 2018 08:52:14 +0100 Subject: [PATCH 085/391] ADd en_US locale and fix date format --- libraries/src/main/resources/smooks/email.ftl | 3 ++- libraries/src/main/resources/smooks/order.ftl | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/libraries/src/main/resources/smooks/email.ftl b/libraries/src/main/resources/smooks/email.ftl index c84a91352a..8413046508 100644 --- a/libraries/src/main/resources/smooks/email.ftl +++ b/libraries/src/main/resources/smooks/email.ftl @@ -1,5 +1,6 @@ +<#setting locale="en_US"> Hi, -Order number #${order.number} created on ${order.creationDate?date} is currently in ${order.status} status. +Order number #${order.number} created on ${order.creationDate?string["yyyy-MM-dd"]} is currently in ${order.status} status. Consider contact supplier "${supplier.name}" with phone number: "${supplier.phoneNumber}". Order items: <#list items as item> diff --git a/libraries/src/main/resources/smooks/order.ftl b/libraries/src/main/resources/smooks/order.ftl index fb5bb5fa39..9d40eb55c7 100644 --- a/libraries/src/main/resources/smooks/order.ftl +++ b/libraries/src/main/resources/smooks/order.ftl @@ -1,5 +1,6 @@ +<#setting locale="en_US"> UNA:+.? ' -UNH+${order.number}+${order.status}+${order.creationDate?date}' +UNH+${order.number}+${order.status}+${order.creationDate?string["yyyy-MM-dd"]}' CTA+${supplier.name}+${supplier.phoneNumber}' <#list items as item> LIN+${item.quantity}+${item.code}+${item.price}' From c00749bf16068a6fef22ce0ae144c2a6867db65b Mon Sep 17 00:00:00 2001 From: mkuligowski Date: Tue, 30 Jan 2018 08:54:07 +0100 Subject: [PATCH 086/391] Fix number format in expected messages --- .../smooks/converter/SmooksIntegrationTest.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/libraries/src/test/java/com/baeldung/smooks/converter/SmooksIntegrationTest.java b/libraries/src/test/java/com/baeldung/smooks/converter/SmooksIntegrationTest.java index 45de8830e1..bce2ee8c9f 100644 --- a/libraries/src/test/java/com/baeldung/smooks/converter/SmooksIntegrationTest.java +++ b/libraries/src/test/java/com/baeldung/smooks/converter/SmooksIntegrationTest.java @@ -17,15 +17,15 @@ public class SmooksIntegrationTest { "UNA:+.? '\r\n" + "UNH+771+IN_PROGRESS+2018-01-14'\r\n" + "CTA+CompanyX+1234567'\r\n" + - "LIN+1+PX1234+9,99'\r\n" + - "LIN+2+RX990+120,32'\r\n"; + "LIN+1+PX1234+9.99'\r\n" + + "LIN+2+RX990+120.32'\r\n"; private static final String EMAIL_MESSAGE = "Hi,\r\n" + "Order number #771 created on 2018-01-14 is currently in IN_PROGRESS status.\r\n" + "Consider contact supplier \"CompanyX\" with phone number: \"1234567\".\r\n" + "Order items:\r\n" + - "1 X PX1234 (total price 9,99)\r\n" + - "2 X RX990 (total price 240,64)\r\n"; + "1 X PX1234 (total price 9.99)\r\n" + + "2 X RX990 (total price 240.64)\r\n"; @Test public void givenOrderXML_whenConvert_thenPOJOsConstructedCorrectly() throws Exception { @@ -43,7 +43,7 @@ public class SmooksIntegrationTest { ); } - + @Test public void givenIncorrectOrderXML_whenValidate_thenExpectValidationErrors() throws Exception { OrderValidator orderValidator = new OrderValidator(); From 9bc66b943aa887417b34526f6a24b86d2959858a Mon Sep 17 00:00:00 2001 From: mkuligowski Date: Tue, 30 Jan 2018 08:55:58 +0100 Subject: [PATCH 087/391] Delete unused mapping --- .../resources/smooks/smooks-mapping-json.xml | 29 ------------------- 1 file changed, 29 deletions(-) delete mode 100644 libraries/src/main/resources/smooks/smooks-mapping-json.xml diff --git a/libraries/src/main/resources/smooks/smooks-mapping-json.xml b/libraries/src/main/resources/smooks/smooks-mapping-json.xml deleted file mode 100644 index 014bb9d3e5..0000000000 --- a/libraries/src/main/resources/smooks/smooks-mapping-json.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - yyyy-MM-dd - - - - - - - - - - - - - - - - - - - - \ No newline at end of file From 77c8c65f0d2e2f3d602f2493404550a7c69fdfc7 Mon Sep 17 00:00:00 2001 From: mkuligowski Date: Tue, 30 Jan 2018 08:56:43 +0100 Subject: [PATCH 088/391] Remove unused conversion to JSON --- .../baeldung/smooks/converter/OrderConverter.java | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/libraries/src/main/java/com/baeldung/smooks/converter/OrderConverter.java b/libraries/src/main/java/com/baeldung/smooks/converter/OrderConverter.java index b4b81a6f52..d11f5a29b2 100644 --- a/libraries/src/main/java/com/baeldung/smooks/converter/OrderConverter.java +++ b/libraries/src/main/java/com/baeldung/smooks/converter/OrderConverter.java @@ -21,18 +21,7 @@ public class OrderConverter { smooks.close(); } } - - public Order convertOrderJSONToOrderObject(String path) throws IOException, SAXException { - Smooks smooks = new Smooks(OrderConverter.class.getResourceAsStream("/smooks/smooks-mapping-json.xml")); - try { - JavaResult javaResult = new JavaResult(); - smooks.filterSource(new StreamSource(OrderConverter.class.getResourceAsStream(path)), javaResult); - return (Order) javaResult.getBean("order"); - } finally { - smooks.close(); - } - } - + public String convertOrderXMLtoEDIFACT(String path) throws IOException, SAXException { return convertDocumentWithTempalte(path, "/smooks/smooks-transform-edi.xml"); From cc8e1f121b4fa70d3990f41f70afc71f64ce99b6 Mon Sep 17 00:00:00 2001 From: mkuligowski Date: Tue, 30 Jan 2018 09:11:04 +0100 Subject: [PATCH 089/391] Add assertion for ruleName in givenIncorrectOrderXML_whenValidate_thenExpectValidationErrors --- .../com/baeldung/smooks/converter/SmooksIntegrationTest.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libraries/src/test/java/com/baeldung/smooks/converter/SmooksIntegrationTest.java b/libraries/src/test/java/com/baeldung/smooks/converter/SmooksIntegrationTest.java index bce2ee8c9f..4d2cb71329 100644 --- a/libraries/src/test/java/com/baeldung/smooks/converter/SmooksIntegrationTest.java +++ b/libraries/src/test/java/com/baeldung/smooks/converter/SmooksIntegrationTest.java @@ -48,7 +48,10 @@ public class SmooksIntegrationTest { public void givenIncorrectOrderXML_whenValidate_thenExpectValidationErrors() throws Exception { OrderValidator orderValidator = new OrderValidator(); ValidationResult validationResult = orderValidator.validate("/smooks/order.xml"); + assertThat(validationResult.getErrors(), hasSize(1)); + // 1234567 didn't match ^[0-9\\-\\+]{9,15}$ + assertThat(validationResult.getErrors().get(0).getFailRuleResult().getRuleName(),is("supplierPhone")); } @Test From 8b8a6a6e5471c1575fc8467355644113cf290efd Mon Sep 17 00:00:00 2001 From: Korneliusz Wandzel Date: Tue, 30 Jan 2018 18:58:25 +0100 Subject: [PATCH 090/391] test names refactoring to given when then --- .../src/test/java/com/baeldung/beaninjectiontypes/BoatTest.java | 2 +- .../src/test/java/com/baeldung/beaninjectiontypes/CarTest.java | 2 +- .../java/com/baeldung/beaninjectiontypes/LawnMowerTest.java | 2 +- .../test/java/com/baeldung/beaninjectiontypes/RocketTest.java | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BoatTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BoatTest.java index f89a14e942..1ffe6a752f 100644 --- a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BoatTest.java +++ b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BoatTest.java @@ -16,7 +16,7 @@ public class BoatTest { Boat boat; @Test - public void engineInjectionTest() { + public void givenAutowired_whenOnSetter_thenInjected() { assertNotNull(boat); assertNotNull(boat.getEngine()); } diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/CarTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/CarTest.java index 7c022f891b..7bb9b31dde 100644 --- a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/CarTest.java +++ b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/CarTest.java @@ -16,7 +16,7 @@ public class CarTest { Car car; @Test - public void engineInjectionTest() { + public void givenAutowired_whenOnField_thenSetterInjected() { assertNotNull(car); assertNotNull(car.getEngine()); } diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/LawnMowerTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/LawnMowerTest.java index 84595c717d..f59ef05247 100644 --- a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/LawnMowerTest.java +++ b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/LawnMowerTest.java @@ -16,7 +16,7 @@ public class LawnMowerTest { LawnMower lawnMower; @Test - public void engineInjectionTest() { + public void givenAutowired_whenOnField_thenConstructorInjected() { assertNotNull(lawnMower); assertNotNull(lawnMower.getEngine()); } diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/RocketTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/RocketTest.java index 3fe44d266e..4723cc450e 100644 --- a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/RocketTest.java +++ b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/RocketTest.java @@ -16,7 +16,7 @@ public class RocketTest { Rocket rocket; @Test - public void engineInjectionTest() { + public void givenAutowired_whenOnConstructor_thenInjected() { assertNotNull(rocket); assertNotNull(rocket.getEngine()); } From 4344479d7a724932efb897b279d040d3f157abb3 Mon Sep 17 00:00:00 2001 From: orrym Date: Sat, 3 Feb 2018 13:06:31 +0200 Subject: [PATCH 091/391] BAEL-1517: Added Java7 style assertions --- .../exceptions/Java7StyleAssertions.java | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java7StyleAssertions.java diff --git a/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java7StyleAssertions.java b/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java7StyleAssertions.java new file mode 100644 index 0000000000..0dff8d2964 --- /dev/null +++ b/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java7StyleAssertions.java @@ -0,0 +1,23 @@ +package com.baeldung.testing.assertj.exceptions; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.fail; +import static org.assertj.core.api.Assertions.failBecauseExceptionWasNotThrown; + +import org.junit.Test; + +public class Java7StyleAssertions { + + @Test + public void whenDividingByZero_thenArithmeticException() { + try { + int numerator = 10; + int denominator = 0; + int quotient = numerator / denominator; + fail("ArithmeticException expected because dividing by zero yields an ArithmeticException."); + failBecauseExceptionWasNotThrown(IndexOutOfBoundsException.class); + } catch (ArithmeticException e) { + assertThat(e).hasMessage("/ by zero"); + } + } +} From 145db059499a055bb1eba4677d6e3215701bb270 Mon Sep 17 00:00:00 2001 From: orrym Date: Sat, 3 Feb 2018 15:45:17 +0200 Subject: [PATCH 092/391] BAEL-1517: Upgrade AssertJ to 3.9.0; add Java 8 style assertion tests --- testing-modules/testing/pom.xml | 2 +- .../exceptions/Java7StyleAssertions.java | 5 ++- .../exceptions/Java8StyleAssertions.java | 42 +++++++++++++++++++ 3 files changed, 46 insertions(+), 3 deletions(-) create mode 100644 testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java8StyleAssertions.java diff --git a/testing-modules/testing/pom.xml b/testing-modules/testing/pom.xml index c76045380b..91792a4681 100644 --- a/testing-modules/testing/pom.xml +++ b/testing-modules/testing/pom.xml @@ -173,7 +173,7 @@ 0.7.7.201606060606 21.0 3.1.0 - 3.6.1 + 3.9.0 2.1.0 0.32 1.1.0 diff --git a/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java7StyleAssertions.java b/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java7StyleAssertions.java index 0dff8d2964..07a5be1118 100644 --- a/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java7StyleAssertions.java +++ b/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java7StyleAssertions.java @@ -15,9 +15,10 @@ public class Java7StyleAssertions { int denominator = 0; int quotient = numerator / denominator; fail("ArithmeticException expected because dividing by zero yields an ArithmeticException."); - failBecauseExceptionWasNotThrown(IndexOutOfBoundsException.class); - } catch (ArithmeticException e) { + failBecauseExceptionWasNotThrown(ArithmeticException.class); + } catch (Exception e) { assertThat(e).hasMessage("/ by zero"); + assertThat(e).isInstanceOf(ArithmeticException.class); } } } diff --git a/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java8StyleAssertions.java b/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java8StyleAssertions.java new file mode 100644 index 0000000000..53f192bb2f --- /dev/null +++ b/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java8StyleAssertions.java @@ -0,0 +1,42 @@ +package com.baeldung.testing.assertj.exceptions; + +import static org.assertj.core.api.Assertions.assertThatThrownBy; +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatExceptionOfType; +import static org.assertj.core.api.Assertions.catchThrowable; + +import org.junit.Test; + +public class Java8StyleAssertions { + + @Test + public void whenDividingByZero_thenArithmeticException() { + assertThatThrownBy(() -> { + int numerator = 10; + int denominator = 0; + int quotient = numerator / denominator; + }).isInstanceOf(ArithmeticException.class) + .hasMessageContaining("/ by zero"); + + assertThatExceptionOfType(ArithmeticException.class).isThrownBy(() -> { + int numerator = 10; + int denominator = 0; + int quotient = numerator / denominator; + }) + .withMessageContaining("/ by zero"); + + // BDD style: + + // when + Throwable thrown = catchThrowable(() -> { + int numerator = 10; + int denominator = 0; + int quotient = numerator / denominator; + }); + + // then + assertThat(thrown).isInstanceOf(ArithmeticException.class) + .hasMessageContaining("/ by zero"); + + } +} From f6efb65fa628bc5a478ffac2305fa0b12f617659 Mon Sep 17 00:00:00 2001 From: Loredana Crusoveanu Date: Sun, 4 Feb 2018 00:41:09 +0200 Subject: [PATCH 093/391] custom dsl ex --- .../baeldung/dsl/ClientErrorLoggingDsl.java | 32 +++++++++++ .../dsl/ClientErrorLoggingFilter.java | 54 +++++++++++++++++++ .../baeldung/dsl/CustomDslApplication.java | 13 +++++ .../java/com/baeldung/dsl/MyController.java | 14 +++++ .../java/com/baeldung/dsl/SecurityConfig.java | 50 +++++++++++++++++ .../src/main/resources/application.properties | 4 +- 6 files changed, 166 insertions(+), 1 deletion(-) create mode 100644 spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingDsl.java create mode 100644 spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingFilter.java create mode 100644 spring-5-security/src/main/java/com/baeldung/dsl/CustomDslApplication.java create mode 100644 spring-5-security/src/main/java/com/baeldung/dsl/MyController.java create mode 100644 spring-5-security/src/main/java/com/baeldung/dsl/SecurityConfig.java diff --git a/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingDsl.java b/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingDsl.java new file mode 100644 index 0000000000..6c7c0d2717 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingDsl.java @@ -0,0 +1,32 @@ +package com.baeldung.dsl; + +import java.util.List; + +import org.springframework.http.HttpStatus; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer; +import org.springframework.security.web.access.intercept.FilterSecurityInterceptor; + +public class ClientErrorLoggingDsl extends AbstractHttpConfigurer { + + private List errorCodes; + + public ClientErrorLoggingDsl(List errorCodes) { + this.errorCodes = errorCodes; + } + + public ClientErrorLoggingDsl() { + + } + + @Override + public void init(HttpSecurity http) throws Exception { + // initialization code + } + + @Override + public void configure(HttpSecurity http) throws Exception { + http.addFilterAfter(new ClientErrorLoggingFilter(errorCodes), FilterSecurityInterceptor.class); + } + +} diff --git a/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingFilter.java b/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingFilter.java new file mode 100644 index 0000000000..56f7cea3b8 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingFilter.java @@ -0,0 +1,54 @@ +package com.baeldung.dsl; + +import java.io.IOException; +import java.util.List; + +import javax.servlet.FilterChain; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.http.HttpServletResponse; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.springframework.http.HttpStatus; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.web.filter.GenericFilterBean; + +public class ClientErrorLoggingFilter extends GenericFilterBean { + + private static final Logger logger = LogManager.getLogger(ClientErrorLoggingFilter.class); + + private List errorCodes; + + public ClientErrorLoggingFilter(List errorCodes) { + this.errorCodes = errorCodes; + } + + @Override + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { + + Authentication auth = SecurityContextHolder.getContext() + .getAuthentication(); + + if (auth != null) { + int status = ((HttpServletResponse) response).getStatus(); + if (status >= 400 && status < 500) { + if (errorCodes == null) { + logger.debug("User " + auth.getName() + " encountered error " + status); + } else { + if (errorCodes.stream() + .filter(s -> s.value() == status) + .findFirst() + .isPresent()) { + logger.debug("User " + auth.getName() + " encountered error " + status); + } + } + } + } + + chain.doFilter(request, response); + } + +} diff --git a/spring-5-security/src/main/java/com/baeldung/dsl/CustomDslApplication.java b/spring-5-security/src/main/java/com/baeldung/dsl/CustomDslApplication.java new file mode 100644 index 0000000000..3e58bccaf4 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/dsl/CustomDslApplication.java @@ -0,0 +1,13 @@ +package com.baeldung.dsl; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class CustomDslApplication { + + public static void main(String[] args) { + SpringApplication.run(CustomDslApplication.class, args); + } + +} diff --git a/spring-5-security/src/main/java/com/baeldung/dsl/MyController.java b/spring-5-security/src/main/java/com/baeldung/dsl/MyController.java new file mode 100644 index 0000000000..c69046afb5 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/dsl/MyController.java @@ -0,0 +1,14 @@ +package com.baeldung.dsl; + +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +public class MyController { + + @GetMapping("/admin") + public String getAdminPage() { + return "Hello Admin"; + } + +} diff --git a/spring-5-security/src/main/java/com/baeldung/dsl/SecurityConfig.java b/spring-5-security/src/main/java/com/baeldung/dsl/SecurityConfig.java new file mode 100644 index 0000000000..4494aaa131 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/dsl/SecurityConfig.java @@ -0,0 +1,50 @@ +package com.baeldung.dsl; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.password.PasswordEncoder; + +@Configuration +public class SecurityConfig extends WebSecurityConfigurerAdapter { + + @Override + protected void configure(HttpSecurity http) throws Exception { + http.authorizeRequests() + .antMatchers("/admin*") + .hasAnyRole("ADMIN") + .anyRequest() + .authenticated() + .and() + .formLogin() + .and() + .apply(clientErrorLogging()); + } + + @Bean + public ClientErrorLoggingDsl clientErrorLogging() { + return new ClientErrorLoggingDsl(); + } + + @Override + protected void configure(AuthenticationManagerBuilder auth) throws Exception { + auth.inMemoryAuthentication() + .passwordEncoder(passwordEncoder()) + .withUser("user1") + .password(passwordEncoder().encode("user")) + .roles("USER") + .and() + .withUser("admin") + .password(passwordEncoder().encode("admin")) + .roles("ADMIN"); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return new BCryptPasswordEncoder(); + } + +} diff --git a/spring-5-security/src/main/resources/application.properties b/spring-5-security/src/main/resources/application.properties index ccec014c2b..5912b0f755 100644 --- a/spring-5-security/src/main/resources/application.properties +++ b/spring-5-security/src/main/resources/application.properties @@ -1,3 +1,5 @@ server.port=8081 -logging.level.root=INFO \ No newline at end of file +logging.level.root=INFO + +logging.level.com.baeldung.dsl.ClientErrorLoggingFilter=DEBUG \ No newline at end of file From 66f5474f7ffb24d3cca9a5ced245b60b17a39e4c Mon Sep 17 00:00:00 2001 From: iaforek Date: Sun, 4 Feb 2018 11:02:54 +0000 Subject: [PATCH 094/391] Extracted 'constraints' methods and renamed coverBoard variable --- .../sudoku/DancingLinksAlgorithm.java | 87 +++++++++++-------- 1 file changed, 50 insertions(+), 37 deletions(-) diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java index 70cf5b9e11..76b686afa6 100644 --- a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java @@ -39,70 +39,83 @@ public class DancingLinksAlgorithm { } private boolean[][] createExactCoverBoard() { - boolean[][] R = new boolean[BOARD_SIZE * BOARD_SIZE * MAX_VALUE][BOARD_SIZE * BOARD_SIZE * CONSTRAINTS]; + boolean[][] coverBoard = new boolean[BOARD_SIZE * BOARD_SIZE * MAX_VALUE][BOARD_SIZE * BOARD_SIZE * CONSTRAINTS]; int hBase = 0; - - // Cell constraint. - for (int r = COVER_START_INDEX; r <= BOARD_SIZE; r++) { - for (int c = COVER_START_INDEX; c <= BOARD_SIZE; c++, hBase++) { - for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++) { - int index = getIndex(r, c, n); - R[index][hBase] = true; - } - } - } - - // Row constrain. - for (int r = COVER_START_INDEX; r <= BOARD_SIZE; r++) { - for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { - for (int c1 = COVER_START_INDEX; c1 <= BOARD_SIZE; c1++) { - int index = getIndex(r, c1, n); - R[index][hBase] = true; - } - } - } - - // Column constraint. - for (int c = COVER_START_INDEX; c <= BOARD_SIZE; c++) { - for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { - for (int r1 = COVER_START_INDEX; r1 <= BOARD_SIZE; r1++) { - int index = getIndex(r1, c, n); - R[index][hBase] = true; - } - } - } + hBase = checkCellConstraint(coverBoard, hBase); + hBase = checkRowConstraint(coverBoard, hBase); + hBase = checkColumnConstraint(coverBoard, hBase); + checkSubsectionConstraint(coverBoard, hBase); - // Subsection constraint + return coverBoard; + } + + private int checkSubsectionConstraint(boolean[][] coverBoard, int hBase) { for (int br = COVER_START_INDEX; br <= BOARD_SIZE; br += SUBSECTION_SIZE) { for (int bc = COVER_START_INDEX; bc <= BOARD_SIZE; bc += SUBSECTION_SIZE) { for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { for (int rDelta = 0; rDelta < SUBSECTION_SIZE; rDelta++) { for (int cDelta = 0; cDelta < SUBSECTION_SIZE; cDelta++) { int index = getIndex(br + rDelta, bc + cDelta, n); - R[index][hBase] = true; + coverBoard[index][hBase] = true; } } } } } - return R; + return hBase; + } + + private int checkColumnConstraint(boolean[][] coverBoard, int hBase) { + for (int c = COVER_START_INDEX; c <= BOARD_SIZE; c++) { + for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { + for (int r1 = COVER_START_INDEX; r1 <= BOARD_SIZE; r1++) { + int index = getIndex(r1, c, n); + coverBoard[index][hBase] = true; + } + } + } + return hBase; + } + + private int checkRowConstraint(boolean[][] coverBoard, int hBase) { + for (int r = COVER_START_INDEX; r <= BOARD_SIZE; r++) { + for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { + for (int c1 = COVER_START_INDEX; c1 <= BOARD_SIZE; c1++) { + int index = getIndex(r, c1, n); + coverBoard[index][hBase] = true; + } + } + } + return hBase; + } + + private int checkCellConstraint(boolean[][] coverBoard, int hBase) { + for (int r = COVER_START_INDEX; r <= BOARD_SIZE; r++) { + for (int c = COVER_START_INDEX; c <= BOARD_SIZE; c++, hBase++) { + for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++) { + int index = getIndex(r, c, n); + coverBoard[index][hBase] = true; + } + } + } + return hBase; } private boolean[][] initializeExactCoverBoard(int[][] board) { - boolean[][] R = createExactCoverBoard(); + boolean[][] coverBoard = createExactCoverBoard(); for (int i = COVER_START_INDEX; i <= BOARD_SIZE; i++) { for (int j = COVER_START_INDEX; j <= BOARD_SIZE; j++) { int n = board[i - 1][j - 1]; if (n != NO_VALUE) { for (int num = MIN_VALUE; num <= MAX_VALUE; num++) { if (num != n) { - Arrays.fill(R[getIndex(i, j, num)], false); + Arrays.fill(coverBoard[getIndex(i, j, num)], false); } } } } } - return R; + return coverBoard; } } \ No newline at end of file From fb427ce68051bf011a8a4d9e44271f35c06dc792 Mon Sep 17 00:00:00 2001 From: iaforek Date: Sun, 4 Feb 2018 11:02:54 +0000 Subject: [PATCH 095/391] Extracted 'constraints' methods and renamed coverBoard variable --- .../algorithms/sudoku/DancingLinks.java | 4 +- .../sudoku/DancingLinksAlgorithm.java | 87 +++++++++++-------- 2 files changed, 52 insertions(+), 39 deletions(-) diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinks.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinks.java index e5a02b7c91..d3cbb2bd02 100644 --- a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinks.java +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinks.java @@ -120,10 +120,10 @@ public class DancingLinks { } private static void printSolution(int[][] result) { - int N = result.length; + int size = result.length; for (int[] aResult : result) { StringBuilder ret = new StringBuilder(); - for (int j = 0; j < N; j++) { + for (int j = 0; j < size; j++) { ret.append(aResult[j]).append(" "); } System.out.println(ret); diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java index 70cf5b9e11..76b686afa6 100644 --- a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java @@ -39,70 +39,83 @@ public class DancingLinksAlgorithm { } private boolean[][] createExactCoverBoard() { - boolean[][] R = new boolean[BOARD_SIZE * BOARD_SIZE * MAX_VALUE][BOARD_SIZE * BOARD_SIZE * CONSTRAINTS]; + boolean[][] coverBoard = new boolean[BOARD_SIZE * BOARD_SIZE * MAX_VALUE][BOARD_SIZE * BOARD_SIZE * CONSTRAINTS]; int hBase = 0; - - // Cell constraint. - for (int r = COVER_START_INDEX; r <= BOARD_SIZE; r++) { - for (int c = COVER_START_INDEX; c <= BOARD_SIZE; c++, hBase++) { - for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++) { - int index = getIndex(r, c, n); - R[index][hBase] = true; - } - } - } - - // Row constrain. - for (int r = COVER_START_INDEX; r <= BOARD_SIZE; r++) { - for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { - for (int c1 = COVER_START_INDEX; c1 <= BOARD_SIZE; c1++) { - int index = getIndex(r, c1, n); - R[index][hBase] = true; - } - } - } - - // Column constraint. - for (int c = COVER_START_INDEX; c <= BOARD_SIZE; c++) { - for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { - for (int r1 = COVER_START_INDEX; r1 <= BOARD_SIZE; r1++) { - int index = getIndex(r1, c, n); - R[index][hBase] = true; - } - } - } + hBase = checkCellConstraint(coverBoard, hBase); + hBase = checkRowConstraint(coverBoard, hBase); + hBase = checkColumnConstraint(coverBoard, hBase); + checkSubsectionConstraint(coverBoard, hBase); - // Subsection constraint + return coverBoard; + } + + private int checkSubsectionConstraint(boolean[][] coverBoard, int hBase) { for (int br = COVER_START_INDEX; br <= BOARD_SIZE; br += SUBSECTION_SIZE) { for (int bc = COVER_START_INDEX; bc <= BOARD_SIZE; bc += SUBSECTION_SIZE) { for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { for (int rDelta = 0; rDelta < SUBSECTION_SIZE; rDelta++) { for (int cDelta = 0; cDelta < SUBSECTION_SIZE; cDelta++) { int index = getIndex(br + rDelta, bc + cDelta, n); - R[index][hBase] = true; + coverBoard[index][hBase] = true; } } } } } - return R; + return hBase; + } + + private int checkColumnConstraint(boolean[][] coverBoard, int hBase) { + for (int c = COVER_START_INDEX; c <= BOARD_SIZE; c++) { + for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { + for (int r1 = COVER_START_INDEX; r1 <= BOARD_SIZE; r1++) { + int index = getIndex(r1, c, n); + coverBoard[index][hBase] = true; + } + } + } + return hBase; + } + + private int checkRowConstraint(boolean[][] coverBoard, int hBase) { + for (int r = COVER_START_INDEX; r <= BOARD_SIZE; r++) { + for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { + for (int c1 = COVER_START_INDEX; c1 <= BOARD_SIZE; c1++) { + int index = getIndex(r, c1, n); + coverBoard[index][hBase] = true; + } + } + } + return hBase; + } + + private int checkCellConstraint(boolean[][] coverBoard, int hBase) { + for (int r = COVER_START_INDEX; r <= BOARD_SIZE; r++) { + for (int c = COVER_START_INDEX; c <= BOARD_SIZE; c++, hBase++) { + for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++) { + int index = getIndex(r, c, n); + coverBoard[index][hBase] = true; + } + } + } + return hBase; } private boolean[][] initializeExactCoverBoard(int[][] board) { - boolean[][] R = createExactCoverBoard(); + boolean[][] coverBoard = createExactCoverBoard(); for (int i = COVER_START_INDEX; i <= BOARD_SIZE; i++) { for (int j = COVER_START_INDEX; j <= BOARD_SIZE; j++) { int n = board[i - 1][j - 1]; if (n != NO_VALUE) { for (int num = MIN_VALUE; num <= MAX_VALUE; num++) { if (num != n) { - Arrays.fill(R[getIndex(i, j, num)], false); + Arrays.fill(coverBoard[getIndex(i, j, num)], false); } } } } } - return R; + return coverBoard; } } \ No newline at end of file From 2f31b4a8cc1d996329fbf0b8daa5a78cc2f286f7 Mon Sep 17 00:00:00 2001 From: Raksha Rao Date: Mon, 5 Feb 2018 11:09:34 +0530 Subject: [PATCH 096/391] classloader example --- .../classloader/SampleClassLoader.java | 22 +++++++++++++++++++ .../classloader/SampleClassLoaderTest.java | 15 +++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 core-java/src/main/java/com/baeldung/classloader/SampleClassLoader.java create mode 100644 core-java/src/test/java/com/baeldung/classloader/SampleClassLoaderTest.java diff --git a/core-java/src/main/java/com/baeldung/classloader/SampleClassLoader.java b/core-java/src/main/java/com/baeldung/classloader/SampleClassLoader.java new file mode 100644 index 0000000000..ba858b62d3 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/classloader/SampleClassLoader.java @@ -0,0 +1,22 @@ +package com.baeldung.classloader; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.net.MalformedURLException; +import java.net.URL; +import java.net.URLConnection; + +public class SampleClassLoader { + + public void loadClass() throws ClassNotFoundException { + + System.out.println("Classloader of this class:"+SampleClassLoader.class.getClassLoader()); + + Class.forName("com.baeldung.classloader.SampleClassLoader", true + , SampleClassLoader.class.getClassLoader().getParent()); + + } + + +} diff --git a/core-java/src/test/java/com/baeldung/classloader/SampleClassLoaderTest.java b/core-java/src/test/java/com/baeldung/classloader/SampleClassLoaderTest.java new file mode 100644 index 0000000000..60d0b4d75b --- /dev/null +++ b/core-java/src/test/java/com/baeldung/classloader/SampleClassLoaderTest.java @@ -0,0 +1,15 @@ +package com.baeldung.classloader; + +import org.junit.Test; + +import static org.junit.Assert.*; + +public class SampleClassLoaderTest { + @Test(expected = ClassNotFoundException.class) + public void givenAppClassLoader_whenParentClassLoader_thenClassNotFoundException() throws Exception { + SampleClassLoader sampleClassLoader = (SampleClassLoader) Class.forName(SampleClassLoader.class.getName()).newInstance(); + sampleClassLoader.loadClass(); + + } + +} \ No newline at end of file From 20b8dbffc4a3aa1b1b27d724c230a10da8bc70cf Mon Sep 17 00:00:00 2001 From: Raksha Rao Date: Mon, 5 Feb 2018 15:45:51 +0530 Subject: [PATCH 097/391] sample class loader --- .../baeldung/classloader/SampleClassLoader.java | 17 +++++++++-------- .../classloader/SampleClassLoaderTest.java | 1 - 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/classloader/SampleClassLoader.java b/core-java/src/main/java/com/baeldung/classloader/SampleClassLoader.java index ba858b62d3..b300e3d0ab 100644 --- a/core-java/src/main/java/com/baeldung/classloader/SampleClassLoader.java +++ b/core-java/src/main/java/com/baeldung/classloader/SampleClassLoader.java @@ -1,22 +1,23 @@ package com.baeldung.classloader; +import com.sun.javafx.util.Logging; + import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.MalformedURLException; import java.net.URL; import java.net.URLConnection; +import java.util.ArrayList; public class SampleClassLoader { - public void loadClass() throws ClassNotFoundException { - - System.out.println("Classloader of this class:"+SampleClassLoader.class.getClassLoader()); - - Class.forName("com.baeldung.classloader.SampleClassLoader", true - , SampleClassLoader.class.getClassLoader().getParent()); - - } + public void loadClass() throws ClassNotFoundException { + System.out.println("Classloader of this class:" + SampleClassLoader.class.getClassLoader()); + System.out.println("Classloader of Logging:" + Logging.class.getClassLoader()); + System.out.println("Classloader of ArrayList:" + ArrayList.class.getClassLoader()); + Class.forName("com.baeldung.classloader.SampleClassLoader", true, SampleClassLoader.class.getClassLoader().getParent()); + } } diff --git a/core-java/src/test/java/com/baeldung/classloader/SampleClassLoaderTest.java b/core-java/src/test/java/com/baeldung/classloader/SampleClassLoaderTest.java index 60d0b4d75b..aea5611553 100644 --- a/core-java/src/test/java/com/baeldung/classloader/SampleClassLoaderTest.java +++ b/core-java/src/test/java/com/baeldung/classloader/SampleClassLoaderTest.java @@ -11,5 +11,4 @@ public class SampleClassLoaderTest { sampleClassLoader.loadClass(); } - } \ No newline at end of file From 91dedcc9cb07ac0c74de50c44c557744c10b449e Mon Sep 17 00:00:00 2001 From: Raksha Rao Date: Mon, 5 Feb 2018 16:36:21 +0530 Subject: [PATCH 098/391] remove unnecessary sample files --- .../AccountDetails.java | 40 ----------------- .../BankAccountApplication.java | 19 -------- .../BankAccountService.java | 9 ---- .../BankAccountWithConstructorInjection.java | 17 ------- .../BankAccountWithSetterInjection.java | 22 --------- .../SampleBeanInjectionTest.java | 45 ------------------- 6 files changed, 152 deletions(-) delete mode 100644 spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/AccountDetails.java delete mode 100644 spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountApplication.java delete mode 100644 spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountService.java delete mode 100644 spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithConstructorInjection.java delete mode 100644 spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithSetterInjection.java delete mode 100644 spring-core/src/test/java/com/baeldung/samplebeaninjectiontypes/SampleBeanInjectionTest.java diff --git a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/AccountDetails.java b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/AccountDetails.java deleted file mode 100644 index 2e4eb3b894..0000000000 --- a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/AccountDetails.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.baeldung.samplebeaninjectionypes; - -public class AccountDetails { - - private Long accountNumber; - - private String accountType; - - private String accountName; - - public AccountDetails(Long accountNumber, String accountType, String accountName) { - this.accountNumber = accountNumber; - this.accountType = accountType; - this.accountName = accountName; - } - - public Long getAccountNumber() { - return accountNumber; - } - - public void setAccountNumber(Long accountNumber) { - this.accountNumber = accountNumber; - } - - public String getAccountType() { - return accountType; - } - - public void setAccountType(String accountType) { - this.accountType = accountType; - } - - public String getAccountName() { - return accountName; - } - - public void setAccountName(String accountName) { - this.accountName = accountName; - } -} diff --git a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountApplication.java b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountApplication.java deleted file mode 100644 index 466255fd2e..0000000000 --- a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountApplication.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.baeldung.samplebeaninjectionypes; - -import org.springframework.context.ApplicationContext; -import org.springframework.context.support.ClassPathXmlApplicationContext; - -public class BankAccountApplication { - - - public static void main(String[] args) { - ApplicationContext context = new ClassPathXmlApplicationContext("samplebeaninjectiontypes-context.xml"); - BankAccountWithSetterInjection bankAccountWithSetterInjection = (BankAccountWithSetterInjection) context.getBean("bankAccountWithSetterInjectionBean"); - - bankAccountWithSetterInjection.openAccount(12345L,"Savings","John Doe"); - - BankAccountWithConstructorInjection bankAccountWithConstructorInjection = (BankAccountWithConstructorInjection) context.getBean("bankAccountWithConstructorInjectionBean"); - bankAccountWithSetterInjection.openAccount(12345L,"Savings","John Doe"); - - } -} diff --git a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountService.java b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountService.java deleted file mode 100644 index 0f62db3655..0000000000 --- a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountService.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.baeldung.samplebeaninjectionypes; - -public class BankAccountService { - - public AccountDetails openAccount(Long accountNumber, String accountType, String owner) { - AccountDetails accountDetails = new AccountDetails(accountNumber,accountType,owner); - return accountDetails; - } -} diff --git a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithConstructorInjection.java b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithConstructorInjection.java deleted file mode 100644 index 1bc75d15e0..0000000000 --- a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithConstructorInjection.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.baeldung.samplebeaninjectionypes; - -import org.springframework.beans.factory.annotation.Autowired; - -public class BankAccountWithConstructorInjection { - private BankAccountService bankAccountService; - - @Autowired - public BankAccountWithConstructorInjection(BankAccountService service) { - this.bankAccountService = service; - } - - public AccountDetails openAccount(Long accountNumber, String accountType, String owner) { - return bankAccountService.openAccount(accountNumber, accountType, owner); - } - -} diff --git a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithSetterInjection.java b/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithSetterInjection.java deleted file mode 100644 index 69c1fec4cc..0000000000 --- a/spring-core/src/main/java/com/baeldung/samplebeaninjectionypes/BankAccountWithSetterInjection.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.baeldung.samplebeaninjectionypes; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Qualifier; - -public class BankAccountWithSetterInjection { - - private BankAccountService bankAccountService; - - public BankAccountWithSetterInjection(BankAccountService service) { - this.bankAccountService = service; - } - - @Autowired - public void setBankAccountService(BankAccountService bankAccountService) { - this.bankAccountService = bankAccountService; - } - - public AccountDetails openAccount(Long accountNumber, String accountType, String owner) { - return bankAccountService.openAccount(accountNumber, accountType, owner); - } -} diff --git a/spring-core/src/test/java/com/baeldung/samplebeaninjectiontypes/SampleBeanInjectionTest.java b/spring-core/src/test/java/com/baeldung/samplebeaninjectiontypes/SampleBeanInjectionTest.java deleted file mode 100644 index fb7234e5c5..0000000000 --- a/spring-core/src/test/java/com/baeldung/samplebeaninjectiontypes/SampleBeanInjectionTest.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.baeldung.samplebeaninjectiontypes; - -import com.baeldung.dependencyinjectiontypes.ArticleWithSetterInjection; -import com.baeldung.samplebeaninjectionypes.AccountDetails; -import com.baeldung.samplebeaninjectionypes.BankAccountWithConstructorInjection; -import com.baeldung.samplebeaninjectionypes.BankAccountWithSetterInjection; -import org.junit.Before; -import org.junit.Test; -import org.springframework.context.ApplicationContext; -import org.springframework.context.annotation.AnnotationConfigApplicationContext; -import org.springframework.context.support.ClassPathXmlApplicationContext; - -import static org.junit.Assert.assertTrue; - -public class SampleBeanInjectionTest { - ApplicationContext context; - - @Before - public void before(){ - context = new ClassPathXmlApplicationContext("dependencyinjectiontypes-context.xml"); - } - - @Test - public void givenAutowiredAnnotation_WhenSetOnSetter_ThenDependencyValid() { - - BankAccountWithSetterInjection bankAccountWithSetterInjection = (BankAccountWithSetterInjection) context.getBean("bankAccountWithSetterInjection"); - - String owner = "John Doe"; - AccountDetails accountDetails = bankAccountWithSetterInjection.openAccount(12345L,"Savings",owner); - - assertTrue(accountDetails.getAccountName().equals(owner)); - - } - - @Test - public void givenAutowiredAnnotation_WhenSetOnConstructor_ThenDependencyValid() { - - BankAccountWithConstructorInjection bankAccountWithConstructorInjection = (BankAccountWithConstructorInjection) context.getBean("bankAccountWithConstructorInjectionBean"); - - String owner = "John Doe"; - AccountDetails accountDetails = bankAccountWithConstructorInjection.openAccount(12345L,"Savings",owner); - - assertTrue(accountDetails.getAccountName().equals(owner)); - } -} From f7518c0c052a8bc76e25651628c481ea33603bab Mon Sep 17 00:00:00 2001 From: Raksha Rao Date: Mon, 5 Feb 2018 16:39:20 +0530 Subject: [PATCH 099/391] remove xml file --- .../samplebeaninjectiontypes-context.xml | 21 ------------------- 1 file changed, 21 deletions(-) delete mode 100644 spring-core/src/main/resources/samplebeaninjectiontypes-context.xml diff --git a/spring-core/src/main/resources/samplebeaninjectiontypes-context.xml b/spring-core/src/main/resources/samplebeaninjectiontypes-context.xml deleted file mode 100644 index 307abd508e..0000000000 --- a/spring-core/src/main/resources/samplebeaninjectiontypes-context.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - \ No newline at end of file From c9006942c2716f542e275b0bbd1c4c60bc37d6bd Mon Sep 17 00:00:00 2001 From: orrym Date: Tue, 6 Feb 2018 19:54:52 +0200 Subject: [PATCH 100/391] Revert "Add XML, JavaConfig and Autowired examples." This reverts commit 8f4df6b903866dac1725832d06ee7382fc89d0ce. --- .../BeanInjectorAutowiredExample.java | 18 ------------ .../autowiredexample/SimpleAutowiredBean.java | 16 ---------- .../SimpleAutowiredDependency.java | 12 -------- .../javaconfigexample/BeanInjectorConfig.java | 29 ------------------- .../BeanInjectorJavaConfigExample.java | 19 ------------ .../SimpleBeanConstructorInjection.java | 16 ---------- .../SimpleBeanSetterInjection.java | 16 ---------- .../javaconfigexample/SimpleDependency.java | 9 ------ .../BeanInjectorXMLExample.java | 17 ----------- .../SimpleBeanConstructorInjection.java | 16 ---------- .../SimpleBeanSetterInjection.java | 16 ---------- .../xmlconfigexample/SimpleDependency.java | 9 ------ .../src/main/resources/bean-injector.xml | 19 ------------ 13 files changed, 212 deletions(-) delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/BeanInjectorAutowiredExample.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredBean.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredDependency.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorConfig.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorJavaConfigExample.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanConstructorInjection.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanSetterInjection.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleDependency.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/BeanInjectorXMLExample.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanConstructorInjection.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanSetterInjection.java delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleDependency.java delete mode 100644 spring-core/src/main/resources/bean-injector.xml diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/BeanInjectorAutowiredExample.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/BeanInjectorAutowiredExample.java deleted file mode 100644 index 43c0314619..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/BeanInjectorAutowiredExample.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.baeldung.beaninjectiontypes.autowiredexample; - -import org.springframework.context.ApplicationContext; -import org.springframework.context.annotation.AnnotationConfigApplicationContext; -import org.springframework.context.annotation.ComponentScan; -import org.springframework.context.annotation.Configuration; - -@Configuration -@ComponentScan -public class BeanInjectorAutowiredExample { - - public static void main(String[] args) { - ApplicationContext ctx = new AnnotationConfigApplicationContext(BeanInjectorAutowiredExample.class); - SimpleAutowiredBean simpleBean = (SimpleAutowiredBean) ctx.getBean("simpleAutowiredBean"); - simpleBean.doSomething(); - } - -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredBean.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredBean.java deleted file mode 100644 index 1dcd35196b..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredBean.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.baeldung.beaninjectiontypes.autowiredexample; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Component -public class SimpleAutowiredBean { - - @Autowired - private SimpleAutowiredDependency simpleAutowiredDependency; - - public void doSomething() { - System.out.println("I'm a Simple Bean. I'm doing something!"); - simpleAutowiredDependency.doSomethingElse(); - } -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredDependency.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredDependency.java deleted file mode 100644 index f456bafe4a..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/autowiredexample/SimpleAutowiredDependency.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.baeldung.beaninjectiontypes.autowiredexample; - -import org.springframework.stereotype.Component; - -@Component -public class SimpleAutowiredDependency { - - public void doSomethingElse() { - System.out.println("I'm a simple autowired dependency! I'm doing something!"); - } - -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorConfig.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorConfig.java deleted file mode 100644 index 14e73187a8..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorConfig.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.baeldung.beaninjectiontypes.javaconfigexample; - -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -@Configuration -public class BeanInjectorConfig { - - @Bean - public SimpleDependency simpleDependency() { - return new SimpleDependency(); - } - - // The following illustrates constructor injection: - - @Bean - public SimpleBeanConstructorInjection simpleBeanConstructorInjection() { - return new SimpleBeanConstructorInjection(simpleDependency()); - } - - // The following illustrates setter injection: - - @Bean - public SimpleBeanSetterInjection simpleBeanSetterInjection() { - SimpleBeanSetterInjection simpleBeanSetterInjection = new SimpleBeanSetterInjection(); - simpleBeanSetterInjection.setSimpleDependency(new SimpleDependency()); - return simpleBeanSetterInjection; - } -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorJavaConfigExample.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorJavaConfigExample.java deleted file mode 100644 index fd6e00105e..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/BeanInjectorJavaConfigExample.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.baeldung.beaninjectiontypes.javaconfigexample; - -import org.springframework.context.ApplicationContext; -import org.springframework.context.annotation.AnnotationConfigApplicationContext; - -public class BeanInjectorJavaConfigExample { - - public static void main(String[] args) { - ApplicationContext ctx = new AnnotationConfigApplicationContext(BeanInjectorConfig.class); - SimpleBeanConstructorInjection simpleBeanConstructorInjection = (SimpleBeanConstructorInjection) ctx.getBean("simpleBeanConstructorInjection"); - simpleBeanConstructorInjection.doSomething(); - - System.out.println("******************"); - - SimpleBeanSetterInjection simpleBeanSetterInjection = (SimpleBeanSetterInjection) ctx.getBean("simpleBeanSetterInjection"); - simpleBeanSetterInjection.doSomething(); - } - -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanConstructorInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanConstructorInjection.java deleted file mode 100644 index 03918602c0..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanConstructorInjection.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.baeldung.beaninjectiontypes.javaconfigexample; - -public class SimpleBeanConstructorInjection { - - private SimpleDependency simpleDependency; - - SimpleBeanConstructorInjection(SimpleDependency simpleDependency) { - this.simpleDependency = simpleDependency; - } - - public void doSomething() { - System.out.println("I'm a Simple Bean. My dependency is wired using constructor injection - I'm doing something!"); - simpleDependency.doSomethingElse(); - } - -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanSetterInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanSetterInjection.java deleted file mode 100644 index 60c3d17997..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleBeanSetterInjection.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.baeldung.beaninjectiontypes.javaconfigexample; - -public class SimpleBeanSetterInjection { - - private SimpleDependency simpleDependency; - - public void doSomething() { - System.out.println("I'm a Simple Bean. My dependency is wired using setter injection - I'm doing something!"); - simpleDependency.doSomethingElse(); - } - - public void setSimpleDependency(SimpleDependency simpleDependency) { - this.simpleDependency = simpleDependency; - } - -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleDependency.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleDependency.java deleted file mode 100644 index 1867518b12..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/javaconfigexample/SimpleDependency.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.baeldung.beaninjectiontypes.javaconfigexample; - -public class SimpleDependency { - - public void doSomethingElse() { - System.out.println("I'm a simple dependency! I'm doing something (else)!"); - } - -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/BeanInjectorXMLExample.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/BeanInjectorXMLExample.java deleted file mode 100644 index a637d0f4a4..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/BeanInjectorXMLExample.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.baeldung.beaninjectiontypes.xmlconfigexample; - -import org.springframework.context.ApplicationContext; -import org.springframework.context.support.ClassPathXmlApplicationContext; - -public class BeanInjectorXMLExample { - - public static void main(String[] args) { - ApplicationContext ctx = new ClassPathXmlApplicationContext("bean-injector.xml"); - SimpleBeanConstructorInjection simpleBeanConstructorInjection = (SimpleBeanConstructorInjection) ctx.getBean("simpleBeanConstructorInjection"); - simpleBeanConstructorInjection.doSomething(); - - System.out.println("********************"); - SimpleBeanSetterInjection simpleBeanSetterInjection = (SimpleBeanSetterInjection) ctx.getBean("simpleBeanSetterInjection"); - simpleBeanSetterInjection.doSomething(); - } -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanConstructorInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanConstructorInjection.java deleted file mode 100644 index db6f58d10d..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanConstructorInjection.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.baeldung.beaninjectiontypes.xmlconfigexample; - -public class SimpleBeanConstructorInjection { - - private SimpleDependency simpleDependency; - - SimpleBeanConstructorInjection(SimpleDependency simpleDependency) { - this.simpleDependency = simpleDependency; - } - - public void doSomething() { - System.out.println("I'm a Simple Bean. My dependency is wired using constructor injection - I'm doing something!"); - simpleDependency.doSomethingElse(); - } - -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanSetterInjection.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanSetterInjection.java deleted file mode 100644 index 7e845c3cd1..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleBeanSetterInjection.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.baeldung.beaninjectiontypes.xmlconfigexample; - -public class SimpleBeanSetterInjection { - - private SimpleDependency simpleDependency; - - public void setSimpleDependency(SimpleDependency simpleDependency) { - this.simpleDependency = simpleDependency; - } - - public void doSomething() { - System.out.println("I'm a Simple Bean. My dependency is wired using setter injection - I'm doing something!"); - simpleDependency.doSomethingElse(); - } - -} diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleDependency.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleDependency.java deleted file mode 100644 index 7b1f2ad35a..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/xmlconfigexample/SimpleDependency.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.baeldung.beaninjectiontypes.xmlconfigexample; - -public class SimpleDependency { - - public void doSomethingElse() { - System.out.println("I'm a simple dependency! I'm doing something (else)!"); - } - -} diff --git a/spring-core/src/main/resources/bean-injector.xml b/spring-core/src/main/resources/bean-injector.xml deleted file mode 100644 index cb084a405f..0000000000 --- a/spring-core/src/main/resources/bean-injector.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - \ No newline at end of file From 62d9eed9fd95910b17bcf7c3e35b48c0093ebf8a Mon Sep 17 00:00:00 2001 From: Holger Steinhauer Date: Wed, 7 Feb 2018 12:45:24 +0000 Subject: [PATCH 101/391] BAEL-1489: Introducing Red13PasswordEncoder Something to nether use, but explain the idea of delegation and prefixing. --- .../passwordstorage/Rot13PasswordEncoder.java | 30 ++++++++++++++++ .../Rot13PasswordEncoderTest.java | 36 +++++++++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 spring-5-security/src/main/java/com/baeldung/passwordstorage/Rot13PasswordEncoder.java create mode 100644 spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java diff --git a/spring-5-security/src/main/java/com/baeldung/passwordstorage/Rot13PasswordEncoder.java b/spring-5-security/src/main/java/com/baeldung/passwordstorage/Rot13PasswordEncoder.java new file mode 100644 index 0000000000..85cf987e1d --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/passwordstorage/Rot13PasswordEncoder.java @@ -0,0 +1,30 @@ +package com.baeldung.passwordstorage; + +import org.springframework.security.crypto.password.PasswordEncoder; + +/** + * DISCLAIMER: Never ever use this in any production environment! + *

+ * Does only work for characters. + */ +public class Rot13PasswordEncoder implements PasswordEncoder { + + @Override + public String encode(CharSequence rawPassword) { + StringBuffer result = new StringBuffer(rawPassword.length()); + rawPassword.chars().forEach(charCode -> { + if (charCode >= 65 && charCode <= 77 || charCode >= 97 && charCode <= 109) { + result.append(Character.toChars(charCode + 13)); + } else if (charCode >= 78 && charCode <= 90 || charCode >= 110 && charCode <= 133) { + result.append(Character.toChars(charCode - 13)); + } + }); + + return result.toString(); + } + + @Override + public boolean matches(CharSequence rawPassword, String encodedPassword) { + return encode(rawPassword).equals(encodedPassword); + } +} diff --git a/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java b/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java new file mode 100644 index 0000000000..08221e0185 --- /dev/null +++ b/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java @@ -0,0 +1,36 @@ +package com.baeldung.passwordstorage; + +import org.junit.Test; + +import static org.hamcrest.CoreMatchers.is; +import static org.junit.Assert.assertThat; + +public class Rot13PasswordEncoderTest { + + private final Rot13PasswordEncoder encoder = new Rot13PasswordEncoder(); + + @Test + public void given_theEncodedPassword_should_returnTheClearTextPassword() { + String password = "baeldung"; + String encoded = encoder.encode(password); + String actualResult = encoder.encode(encoded); + + assertThat(actualResult, is(password)); + } + + @Test + public void given_correctPassword_should_returnTrue() { + String password = "baeldung"; + String encoded = encoder.encode(password); + boolean actualResult = encoder.matches(password, encoded); + + assertThat(actualResult, is(true)); + } + + @Test + public void given_incorrectPassword_should_returnFalse() { + boolean actualResult = encoder.matches("baeldung", "spring"); + + assertThat(actualResult, is(false)); + } +} \ No newline at end of file From e61b157057768d60661e6dcee1eec1587895be60 Mon Sep 17 00:00:00 2001 From: Holger Steinhauer Date: Wed, 7 Feb 2018 21:13:00 +0000 Subject: [PATCH 102/391] BAEL-1489: Applying Baeldung code styles and cleaning up --- .../BaeldungPasswordEncoderSetup.java | 33 +++++++++++++++ .../passwordstorage/Rot13PasswordEncoder.java | 34 ++++++++-------- .../Rot13PasswordEncoderTest.java | 40 +++++++++---------- 3 files changed, 71 insertions(+), 36 deletions(-) create mode 100644 spring-5-security/src/main/java/com/baeldung/passwordstorage/BaeldungPasswordEncoderSetup.java diff --git a/spring-5-security/src/main/java/com/baeldung/passwordstorage/BaeldungPasswordEncoderSetup.java b/spring-5-security/src/main/java/com/baeldung/passwordstorage/BaeldungPasswordEncoderSetup.java new file mode 100644 index 0000000000..89eeb0f826 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/passwordstorage/BaeldungPasswordEncoderSetup.java @@ -0,0 +1,33 @@ +package com.baeldung.passwordstorage; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.password.DelegatingPasswordEncoder; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.crypto.scrypt.SCryptPasswordEncoder; + +import java.util.HashMap; +import java.util.Map; + +@Configuration +public class BaeldungPasswordEncoderSetup { + + @Bean + public PasswordEncoder passwordEncoder() { + // set up the list of supported encoders and their prefixes + String encodingId = "rot13"; + Map encoders = new HashMap<>(); + encoders.put(encodingId, new Rot13PasswordEncoder()); + encoders.put("scrypt", new SCryptPasswordEncoder()); + encoders.put("bcrypt", new BCryptPasswordEncoder()); + + // get an instance of the DelegatingPasswordEncoder, set up to use our instance as default encoder + DelegatingPasswordEncoder delegatingPasswordEncoder = new DelegatingPasswordEncoder(encodingId, encoders); + + // configure our instance as default encoder for actual matching + delegatingPasswordEncoder.setDefaultPasswordEncoderForMatches(encoders.get(encodingId)); + + return delegatingPasswordEncoder; + } +} diff --git a/spring-5-security/src/main/java/com/baeldung/passwordstorage/Rot13PasswordEncoder.java b/spring-5-security/src/main/java/com/baeldung/passwordstorage/Rot13PasswordEncoder.java index 85cf987e1d..52de412de7 100644 --- a/spring-5-security/src/main/java/com/baeldung/passwordstorage/Rot13PasswordEncoder.java +++ b/spring-5-security/src/main/java/com/baeldung/passwordstorage/Rot13PasswordEncoder.java @@ -9,22 +9,24 @@ import org.springframework.security.crypto.password.PasswordEncoder; */ public class Rot13PasswordEncoder implements PasswordEncoder { - @Override - public String encode(CharSequence rawPassword) { - StringBuffer result = new StringBuffer(rawPassword.length()); - rawPassword.chars().forEach(charCode -> { - if (charCode >= 65 && charCode <= 77 || charCode >= 97 && charCode <= 109) { - result.append(Character.toChars(charCode + 13)); - } else if (charCode >= 78 && charCode <= 90 || charCode >= 110 && charCode <= 133) { - result.append(Character.toChars(charCode - 13)); - } - }); + @Override + public String encode(CharSequence rawPassword) { + StringBuffer result = new StringBuffer(rawPassword.length()); + rawPassword + .chars() + .forEach(charCode -> { + if (charCode >= 65 && charCode <= 77 || charCode >= 97 && charCode <= 109) { + result.append(Character.toChars(charCode + 13)); + } else if (charCode >= 78 && charCode <= 90 || charCode >= 110 && charCode <= 133) { + result.append(Character.toChars(charCode - 13)); + } + }); - return result.toString(); - } + return result.toString(); + } - @Override - public boolean matches(CharSequence rawPassword, String encodedPassword) { - return encode(rawPassword).equals(encodedPassword); - } + @Override + public boolean matches(CharSequence rawPassword, String encodedPassword) { + return encode(rawPassword).equals(encodedPassword); + } } diff --git a/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java b/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java index 08221e0185..fce83a33df 100644 --- a/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java +++ b/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java @@ -7,30 +7,30 @@ import static org.junit.Assert.assertThat; public class Rot13PasswordEncoderTest { - private final Rot13PasswordEncoder encoder = new Rot13PasswordEncoder(); + private final Rot13PasswordEncoder encoder = new Rot13PasswordEncoder(); - @Test - public void given_theEncodedPassword_should_returnTheClearTextPassword() { - String password = "baeldung"; - String encoded = encoder.encode(password); - String actualResult = encoder.encode(encoded); + @Test + public void given_theEncodedPassword_should_returnTheClearTextPassword() { + String password = "baeldung"; + String encoded = encoder.encode(password); + String actualResult = encoder.encode(encoded); - assertThat(actualResult, is(password)); - } + assertThat(actualResult, is(password)); + } - @Test - public void given_correctPassword_should_returnTrue() { - String password = "baeldung"; - String encoded = encoder.encode(password); - boolean actualResult = encoder.matches(password, encoded); + @Test + public void given_correctPassword_should_returnTrue() { + String password = "baeldung"; + String encoded = encoder.encode(password); + boolean actualResult = encoder.matches(password, encoded); - assertThat(actualResult, is(true)); - } + assertThat(actualResult, is(true)); + } - @Test - public void given_incorrectPassword_should_returnFalse() { - boolean actualResult = encoder.matches("baeldung", "spring"); + @Test + public void given_incorrectPassword_should_returnFalse() { + boolean actualResult = encoder.matches("baeldung", "spring"); - assertThat(actualResult, is(false)); - } + assertThat(actualResult, is(false)); + } } \ No newline at end of file From 99ef66b2cbc7aeb753d83074a9ab0a6d554c454d Mon Sep 17 00:00:00 2001 From: Holger Steinhauer Date: Wed, 7 Feb 2018 21:21:48 +0000 Subject: [PATCH 103/391] BAEL-1489: Naming test methods correctly --- .../baeldung/passwordstorage/Rot13PasswordEncoderTest.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java b/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java index fce83a33df..b515d47fbc 100644 --- a/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java +++ b/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java @@ -10,7 +10,7 @@ public class Rot13PasswordEncoderTest { private final Rot13PasswordEncoder encoder = new Rot13PasswordEncoder(); @Test - public void given_theEncodedPassword_should_returnTheClearTextPassword() { + public void givenEncodedPassword_whenEncodeIsCalledWithTheEncodedPassword_thenTheClearTextPassword() { String password = "baeldung"; String encoded = encoder.encode(password); String actualResult = encoder.encode(encoded); @@ -19,7 +19,7 @@ public class Rot13PasswordEncoderTest { } @Test - public void given_correctPassword_should_returnTrue() { + public void givenCorrectPassword_whenMatchesIsCalled_thenReturnTrue() { String password = "baeldung"; String encoded = encoder.encode(password); boolean actualResult = encoder.matches(password, encoded); @@ -28,7 +28,7 @@ public class Rot13PasswordEncoderTest { } @Test - public void given_incorrectPassword_should_returnFalse() { + public void givenIncorrectPassword_whenMatchesIsCalled_thenReturnFalse() { boolean actualResult = encoder.matches("baeldung", "spring"); assertThat(actualResult, is(false)); From d0ff2aa57d12e8fac11c64a8e0974ff3c46e2453 Mon Sep 17 00:00:00 2001 From: Chris Franklin Date: Fri, 9 Feb 2018 14:37:58 -0500 Subject: [PATCH 104/391] Code samples for Simple Tagging with JPA --- .../persistence/dao/StudentRepository.java | 11 +++++ .../inmemory/persistence/model/Student.java | 13 ++++++ .../repository/InMemoryDBIntegrationTest.java | 45 +++++++++++++++++++ 3 files changed, 69 insertions(+) diff --git a/persistence-modules/spring-jpa/src/main/java/org/baeldung/inmemory/persistence/dao/StudentRepository.java b/persistence-modules/spring-jpa/src/main/java/org/baeldung/inmemory/persistence/dao/StudentRepository.java index bfcf6f5cdc..f856b78c52 100644 --- a/persistence-modules/spring-jpa/src/main/java/org/baeldung/inmemory/persistence/dao/StudentRepository.java +++ b/persistence-modules/spring-jpa/src/main/java/org/baeldung/inmemory/persistence/dao/StudentRepository.java @@ -2,6 +2,17 @@ package org.baeldung.inmemory.persistence.dao; import org.baeldung.inmemory.persistence.model.Student; import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.query.Param; + +import java.util.List; public interface StudentRepository extends JpaRepository { + + @Query("SELECT s FROM Student s JOIN s.tags t WHERE t = LOWER(:tag)") + List retrieveByTag(@Param("tag") String tag); + + @Query("SELECT s FROM Student s JOIN s.tags t WHERE s.name = LOWER(:name) AND t = LOWER(:tag)") + List retrieveByNameFilterByTag(@Param("name") String name, @Param("tag") String tag); + } diff --git a/persistence-modules/spring-jpa/src/main/java/org/baeldung/inmemory/persistence/model/Student.java b/persistence-modules/spring-jpa/src/main/java/org/baeldung/inmemory/persistence/model/Student.java index b50fe9122e..2e4e3ea2cb 100644 --- a/persistence-modules/spring-jpa/src/main/java/org/baeldung/inmemory/persistence/model/Student.java +++ b/persistence-modules/spring-jpa/src/main/java/org/baeldung/inmemory/persistence/model/Student.java @@ -1,7 +1,10 @@ package org.baeldung.inmemory.persistence.model; +import javax.persistence.ElementCollection; import javax.persistence.Entity; import javax.persistence.Id; +import java.util.ArrayList; +import java.util.List; @Entity public class Student { @@ -10,6 +13,9 @@ public class Student { private long id; private String name; + @ElementCollection + private List tags = new ArrayList<>(); + public Student() { } @@ -35,4 +41,11 @@ public class Student { this.name = name; } + public List getTags() { + return tags; + } + + public void setTags(List tags) { + this.tags.addAll(tags); + } } diff --git a/persistence-modules/spring-jpa/src/test/java/org/baeldung/persistence/repository/InMemoryDBIntegrationTest.java b/persistence-modules/spring-jpa/src/test/java/org/baeldung/persistence/repository/InMemoryDBIntegrationTest.java index 8380ab5434..28d7e3772c 100644 --- a/persistence-modules/spring-jpa/src/test/java/org/baeldung/persistence/repository/InMemoryDBIntegrationTest.java +++ b/persistence-modules/spring-jpa/src/test/java/org/baeldung/persistence/repository/InMemoryDBIntegrationTest.java @@ -12,6 +12,9 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; +import java.util.Arrays; +import java.util.List; + import static org.junit.Assert.assertEquals; @RunWith(SpringJUnit4ClassRunner.class) @@ -34,4 +37,46 @@ public class InMemoryDBIntegrationTest { assertEquals("name incorrect", NAME, student2.getName()); } + @Test + public void givenStudentWithTags_whenSave_thenGetByTagOk(){ + Student student = new Student(ID, NAME); + student.setTags(Arrays.asList("full time", "computer science")); + studentRepository.save(student); + + Student student2 = studentRepository.retrieveByTag("full time").get(0); + assertEquals("name incorrect", NAME, student2.getName()); + } + + @Test + public void givenMultipleStudentsWithTags_whenSave_thenGetByTagReturnsCorrectCount(){ + Student student = new Student(0, "Larry"); + student.setTags(Arrays.asList("full time", "computer science")); + studentRepository.save(student); + + Student student2 = new Student(1, "Curly"); + student2.setTags(Arrays.asList("part time", "rocket science")); + studentRepository.save(student2); + + Student student3 = new Student(2, "Moe"); + student3.setTags(Arrays.asList("full time", "philosophy")); + studentRepository.save(student3); + + Student student4 = new Student(3, "Shemp"); + student4.setTags(Arrays.asList("part time", "mathematics")); + studentRepository.save(student4); + + List students = studentRepository.retrieveByTag("full time"); + assertEquals("size incorrect", 2, students.size()); + } + + @Test + public void givenStudentWithTags_whenSave_thenGetByNameAndTagOk(){ + Student student = new Student(ID, NAME); + student.setTags(Arrays.asList("full time", "computer science")); + studentRepository.save(student); + + Student student2 = studentRepository.retrieveByNameFilterByTag("John", "full time").get(0); + assertEquals("name incorrect", NAME, student2.getName()); + } + } From f6a5b7063f2e40045bbd8a7be0cb20893c774ecf Mon Sep 17 00:00:00 2001 From: kornelihno Date: Sat, 10 Feb 2018 17:52:26 +0100 Subject: [PATCH 105/391] Create README.MD --- spring-security-thymeleaf/README.MD | 1 + 1 file changed, 1 insertion(+) create mode 100644 spring-security-thymeleaf/README.MD diff --git a/spring-security-thymeleaf/README.MD b/spring-security-thymeleaf/README.MD new file mode 100644 index 0000000000..be5c138cd6 --- /dev/null +++ b/spring-security-thymeleaf/README.MD @@ -0,0 +1 @@ +This module is for Spring Security Thymeleaf tutorial. From 49d880bf5898865019c092b5837b97768fc5b797 Mon Sep 17 00:00:00 2001 From: kornelihno Date: Sat, 10 Feb 2018 18:26:52 +0100 Subject: [PATCH 106/391] Create pom.xml --- spring-security-thymeleaf/pom.xml | 62 +++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 spring-security-thymeleaf/pom.xml diff --git a/spring-security-thymeleaf/pom.xml b/spring-security-thymeleaf/pom.xml new file mode 100644 index 0000000000..14e4e5210b --- /dev/null +++ b/spring-security-thymeleaf/pom.xml @@ -0,0 +1,62 @@ + + + 4.0.0 + + com.baeldung + spring-security-thymeleaf + 0.0.1-SNAPSHOT + jar + + spring-security-thymeleaf + Spring Security with Thymeleaf tutorial + + + org.springframework.boot + spring-boot-starter-parent + 2.0.0.BUILD-SNAPSHOT + + + + + UTF-8 + UTF-8 + 1.8 + + + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-thymeleaf + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-test + test + + + org.springframework.security + spring-security-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + From 0b71d385f0507cd28b8cedb6bae789de94d47f0b Mon Sep 17 00:00:00 2001 From: orrym Date: Sun, 11 Feb 2018 10:33:00 +0200 Subject: [PATCH 107/391] BAEL-1517: Editor Review changes --- .../exceptions/Java8StyleAssertions.java | 43 ++++++++++++++++--- 1 file changed, 36 insertions(+), 7 deletions(-) diff --git a/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java8StyleAssertions.java b/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java8StyleAssertions.java index 53f192bb2f..15b41dc896 100644 --- a/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java8StyleAssertions.java +++ b/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java8StyleAssertions.java @@ -3,21 +3,50 @@ package com.baeldung.testing.assertj.exceptions; import static org.assertj.core.api.Assertions.assertThatThrownBy; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatExceptionOfType; +import static org.assertj.core.api.Assertions.assertThatIllegalArgumentException; +import static org.assertj.core.api.Assertions.assertThatIllegalStateException; +import static org.assertj.core.api.Assertions.assertThatIOException; +import static org.assertj.core.api.Assertions.assertThatNullPointerException; import static org.assertj.core.api.Assertions.catchThrowable; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; + import org.junit.Test; public class Java8StyleAssertions { @Test - public void whenDividingByZero_thenArithmeticException() { + public void whenGettingOutOfBoundsItem_thenIndexOutOfBoundsException() { assertThatThrownBy(() -> { - int numerator = 10; - int denominator = 0; - int quotient = numerator / denominator; - }).isInstanceOf(ArithmeticException.class) - .hasMessageContaining("/ by zero"); + ArrayList myStringList = new ArrayList(Arrays.asList("Strine one", "String two")); + myStringList.get(2); + }).isInstanceOf(IndexOutOfBoundsException.class) + .hasMessageStartingWith("Index: 2") + .hasMessageContaining("2") + .hasMessageEndingWith("Size: 2") + .hasMessageContaining("Index: 2, Size: 2") + .hasMessage("Index: %s, Size: %s", 2, 2) + .hasMessageMatching("Index: \\d+, Size: \\d+") + .hasNoCause(); + } + @Test + public void whenWrappingException_thenCauseInstanceOfWrappedExceptionType() { + assertThatThrownBy(() -> { + try { + throw new IOException(); + } catch (IOException e) { + throw new RuntimeException(e); + } + }).isInstanceOf(RuntimeException.class) + .hasCauseInstanceOf(IOException.class) + .hasStackTraceContaining("java.io.IOException"); + } + + @Test + public void whenDividingByZero_thenArithmeticException() { assertThatExceptionOfType(ArithmeticException.class).isThrownBy(() -> { int numerator = 10; int denominator = 0; @@ -25,7 +54,7 @@ public class Java8StyleAssertions { }) .withMessageContaining("/ by zero"); - // BDD style: + // Alternatively: // when Throwable thrown = catchThrowable(() -> { From febfb466a60d97e98cc718c5ea9e2f160bb95d12 Mon Sep 17 00:00:00 2001 From: orrym Date: Sun, 11 Feb 2018 10:33:28 +0200 Subject: [PATCH 108/391] BAEL-1517: Formatting... --- .../testing/assertj/exceptions/Java8StyleAssertions.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java8StyleAssertions.java b/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java8StyleAssertions.java index 15b41dc896..2fbbf6d8d3 100644 --- a/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java8StyleAssertions.java +++ b/testing-modules/testing/src/test/java/com/baeldung/testing/assertj/exceptions/Java8StyleAssertions.java @@ -42,7 +42,7 @@ public class Java8StyleAssertions { } }).isInstanceOf(RuntimeException.class) .hasCauseInstanceOf(IOException.class) - .hasStackTraceContaining("java.io.IOException"); + .hasStackTraceContaining("IOException"); } @Test From 45b4ccf8f6c397fe7a010c3d639ac558eaa51a9c Mon Sep 17 00:00:00 2001 From: Loredana Crusoveanu Date: Sun, 11 Feb 2018 21:58:03 +0200 Subject: [PATCH 109/391] refactor if --- .../dsl/ClientErrorLoggingFilter.java | 31 +++++++++++-------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingFilter.java b/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingFilter.java index 56f7cea3b8..e4a88c8592 100644 --- a/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingFilter.java +++ b/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingFilter.java @@ -32,19 +32,24 @@ public class ClientErrorLoggingFilter extends GenericFilterBean { Authentication auth = SecurityContextHolder.getContext() .getAuthentication(); - if (auth != null) { - int status = ((HttpServletResponse) response).getStatus(); - if (status >= 400 && status < 500) { - if (errorCodes == null) { - logger.debug("User " + auth.getName() + " encountered error " + status); - } else { - if (errorCodes.stream() - .filter(s -> s.value() == status) - .findFirst() - .isPresent()) { - logger.debug("User " + auth.getName() + " encountered error " + status); - } - } + if (auth == null) { + chain.doFilter(request, response); + return; + } + int status = ((HttpServletResponse) response).getStatus(); + if (status < 400 || status >= 500) { + chain.doFilter(request, response); + return; + } + + if (errorCodes == null) { + logger.debug("User " + auth.getName() + " encountered error " + status); + } else { + if (errorCodes.stream() + .filter(s -> s.value() == status) + .findFirst() + .isPresent()) { + logger.debug("User " + auth.getName() + " encountered error " + status); } } From dc6c89efbeb5f956c3a1921b8a02a4886651e823 Mon Sep 17 00:00:00 2001 From: Tom Hombergs Date: Mon, 12 Feb 2018 20:12:51 +0100 Subject: [PATCH 110/391] added article link --- testing-modules/testing/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/testing-modules/testing/README.md b/testing-modules/testing/README.md index 2894da3496..c9c656dde9 100644 --- a/testing-modules/testing/README.md +++ b/testing-modules/testing/README.md @@ -18,3 +18,4 @@ - [Custom JUnit 4 Test Runners](http://www.baeldung.com/junit-4-custom-runners) - [Guide to JSpec](http://www.baeldung.com/jspec) - [Custom Assertions with AssertJ](http://www.baeldung.com/assertj-custom-assertion) +- [Using Conditions with AssertJ](http://www.baeldung.com/assertj-conditions) From 42ffe6cb7c3da4c13dec442477c26615c23f4b31 Mon Sep 17 00:00:00 2001 From: Chris Franklin Date: Mon, 12 Feb 2018 15:16:59 -0500 Subject: [PATCH 111/391] Fix pom relative path for spring-jpa --- persistence-modules/spring-jpa/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/persistence-modules/spring-jpa/pom.xml b/persistence-modules/spring-jpa/pom.xml index 04c64fafc3..bc0b2381f3 100644 --- a/persistence-modules/spring-jpa/pom.xml +++ b/persistence-modules/spring-jpa/pom.xml @@ -13,7 +13,7 @@ com.baeldung parent-modules 1.0.0-SNAPSHOT - ../ + ../../ From 4760816cfb2c6bde7375f5190dde90d7eb7159c0 Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 13 Feb 2018 09:02:23 +0000 Subject: [PATCH 112/391] Renamed variables --- .../sudoku/BacktrackingAlgorithm.java | 48 +++++++++---------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java index ff426cbe68..4b37558aab 100644 --- a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/BacktrackingAlgorithm.java @@ -40,15 +40,15 @@ public class BacktrackingAlgorithm { } private boolean solve(int[][] board) { - for (int r = BOARD_START_INDEX; r < BOARD_SIZE; r++) { - for (int c = BOARD_START_INDEX; c < BOARD_SIZE; c++) { - if (board[r][c] == NO_VALUE) { + for (int row = BOARD_START_INDEX; row < BOARD_SIZE; row++) { + for (int column = BOARD_START_INDEX; column < BOARD_SIZE; column++) { + if (board[row][column] == NO_VALUE) { for (int k = MIN_VALUE; k <= MAX_VALUE; k++) { - board[r][c] = k; - if (isValid(board, r, c) && solve(board)) { + board[row][column] = k; + if (isValid(board, row, column) && solve(board)) { return true; } - board[r][c] = NO_VALUE; + board[row][column] = NO_VALUE; } return false; } @@ -57,44 +57,44 @@ public class BacktrackingAlgorithm { return true; } - private boolean isValid(int[][] board, int r, int c) { - return rowConstraint(board, r) && - columnConstraint(board, c) && - subsectionConstraint(board, r, c); + private boolean isValid(int[][] board, int row, int column) { + return rowConstraint(board, row) && + columnConstraint(board, column) && + subsectionConstraint(board, row, column); } - private boolean subsectionConstraint(int[][] board, int r, int c) { + private boolean subsectionConstraint(int[][] board, int row, int column) { boolean[] constraint = new boolean[BOARD_SIZE]; - int subsectionRowStart = (r / SUBSECTION_SIZE) * SUBSECTION_SIZE; + int subsectionRowStart = (row / SUBSECTION_SIZE) * SUBSECTION_SIZE; int subsectionRowEnd = subsectionRowStart + SUBSECTION_SIZE; - int subsectionColumnStart = (c / SUBSECTION_SIZE) * SUBSECTION_SIZE; + int subsectionColumnStart = (column / SUBSECTION_SIZE) * SUBSECTION_SIZE; int subsectionColumnEnd = subsectionColumnStart + SUBSECTION_SIZE; - for (int i = subsectionRowStart; i < subsectionRowEnd; i++) { - for (int j = subsectionColumnStart; j < subsectionColumnEnd; j++) { - if (!checkConstraint(board, i, constraint, j)) return false; + for (int r = subsectionRowStart; r < subsectionRowEnd; r++) { + for (int c = subsectionColumnStart; c < subsectionColumnEnd; c++) { + if (!checkConstraint(board, r, constraint, c)) return false; } } return true; } - private boolean columnConstraint(int[][] board, int c) { + private boolean columnConstraint(int[][] board, int column) { boolean[] constraint = new boolean[BOARD_SIZE]; return IntStream.range(BOARD_START_INDEX, BOARD_SIZE) - .allMatch(i -> checkConstraint(board, i, constraint, c)); + .allMatch(row -> checkConstraint(board, row, constraint, column)); } - private boolean rowConstraint(int[][] board, int r) { + private boolean rowConstraint(int[][] board, int row) { boolean[] constraint = new boolean[BOARD_SIZE]; return IntStream.range(BOARD_START_INDEX, BOARD_SIZE) - .allMatch(i -> checkConstraint(board, r, constraint, i)); + .allMatch(column -> checkConstraint(board, row, constraint, column)); } - private boolean checkConstraint(int[][] board, int r, boolean[] constraint, int c) { - if (board[r][c] != NO_VALUE) { - if (!constraint[board[r][c] - 1]) { - constraint[board[r][c] - 1] = true; + private boolean checkConstraint(int[][] board, int row, boolean[] constraint, int column) { + if (board[row][column] != NO_VALUE) { + if (!constraint[board[row][column] - 1]) { + constraint[board[row][column] - 1] = true; } else { return false; } From 0c6aff4c8b60f148634fe644f4a560d8a2eacae5 Mon Sep 17 00:00:00 2001 From: iaforek Date: Tue, 13 Feb 2018 09:33:02 +0000 Subject: [PATCH 113/391] More variable renames --- .../sudoku/DancingLinksAlgorithm.java | 40 +++++++++---------- .../algorithms/sudoku/DancingNode.java | 26 ++++++------ 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java index 76b686afa6..df02ff3d11 100644 --- a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingLinksAlgorithm.java @@ -34,8 +34,8 @@ public class DancingLinksAlgorithm { dlx.runSolver(); } - private int getIndex(int row, int col, int num) { - return (row - 1) * BOARD_SIZE * BOARD_SIZE + (col - 1) * BOARD_SIZE + (num - 1); + private int getIndex(int row, int column, int num) { + return (row - 1) * BOARD_SIZE * BOARD_SIZE + (column - 1) * BOARD_SIZE + (num - 1); } private boolean[][] createExactCoverBoard() { @@ -51,12 +51,12 @@ public class DancingLinksAlgorithm { } private int checkSubsectionConstraint(boolean[][] coverBoard, int hBase) { - for (int br = COVER_START_INDEX; br <= BOARD_SIZE; br += SUBSECTION_SIZE) { - for (int bc = COVER_START_INDEX; bc <= BOARD_SIZE; bc += SUBSECTION_SIZE) { + for (int row = COVER_START_INDEX; row <= BOARD_SIZE; row += SUBSECTION_SIZE) { + for (int column = COVER_START_INDEX; column <= BOARD_SIZE; column += SUBSECTION_SIZE) { for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { - for (int rDelta = 0; rDelta < SUBSECTION_SIZE; rDelta++) { - for (int cDelta = 0; cDelta < SUBSECTION_SIZE; cDelta++) { - int index = getIndex(br + rDelta, bc + cDelta, n); + for (int rowDelta = 0; rowDelta < SUBSECTION_SIZE; rowDelta++) { + for (int columnDelta = 0; columnDelta < SUBSECTION_SIZE; columnDelta++) { + int index = getIndex(row + rowDelta, column + columnDelta, n); coverBoard[index][hBase] = true; } } @@ -67,10 +67,10 @@ public class DancingLinksAlgorithm { } private int checkColumnConstraint(boolean[][] coverBoard, int hBase) { - for (int c = COVER_START_INDEX; c <= BOARD_SIZE; c++) { + for (int column = COVER_START_INDEX; column <= BOARD_SIZE; column++) { for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { - for (int r1 = COVER_START_INDEX; r1 <= BOARD_SIZE; r1++) { - int index = getIndex(r1, c, n); + for (int row = COVER_START_INDEX; row <= BOARD_SIZE; row++) { + int index = getIndex(row, column, n); coverBoard[index][hBase] = true; } } @@ -79,10 +79,10 @@ public class DancingLinksAlgorithm { } private int checkRowConstraint(boolean[][] coverBoard, int hBase) { - for (int r = COVER_START_INDEX; r <= BOARD_SIZE; r++) { + for (int row = COVER_START_INDEX; row <= BOARD_SIZE; row++) { for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++, hBase++) { - for (int c1 = COVER_START_INDEX; c1 <= BOARD_SIZE; c1++) { - int index = getIndex(r, c1, n); + for (int column = COVER_START_INDEX; column <= BOARD_SIZE; column++) { + int index = getIndex(row, column, n); coverBoard[index][hBase] = true; } } @@ -91,10 +91,10 @@ public class DancingLinksAlgorithm { } private int checkCellConstraint(boolean[][] coverBoard, int hBase) { - for (int r = COVER_START_INDEX; r <= BOARD_SIZE; r++) { - for (int c = COVER_START_INDEX; c <= BOARD_SIZE; c++, hBase++) { + for (int row = COVER_START_INDEX; row <= BOARD_SIZE; row++) { + for (int column = COVER_START_INDEX; column <= BOARD_SIZE; column++, hBase++) { for (int n = COVER_START_INDEX; n <= BOARD_SIZE; n++) { - int index = getIndex(r, c, n); + int index = getIndex(row, column, n); coverBoard[index][hBase] = true; } } @@ -104,13 +104,13 @@ public class DancingLinksAlgorithm { private boolean[][] initializeExactCoverBoard(int[][] board) { boolean[][] coverBoard = createExactCoverBoard(); - for (int i = COVER_START_INDEX; i <= BOARD_SIZE; i++) { - for (int j = COVER_START_INDEX; j <= BOARD_SIZE; j++) { - int n = board[i - 1][j - 1]; + for (int row = COVER_START_INDEX; row <= BOARD_SIZE; row++) { + for (int column = COVER_START_INDEX; column <= BOARD_SIZE; column++) { + int n = board[row - 1][column - 1]; if (n != NO_VALUE) { for (int num = MIN_VALUE; num <= MAX_VALUE; num++) { if (num != n) { - Arrays.fill(coverBoard[getIndex(i, j, num)], false); + Arrays.fill(coverBoard[getIndex(row, column, num)], false); } } } diff --git a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingNode.java b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingNode.java index b494eba9ef..2422ff0dff 100644 --- a/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingNode.java +++ b/algorithms/src/main/java/com/baeldung/algorithms/sudoku/DancingNode.java @@ -4,21 +4,21 @@ class DancingNode { DancingNode L, R, U, D; ColumnNode C; - DancingNode hookDown(DancingNode n1) { - assert (this.C == n1.C); - n1.D = this.D; - n1.D.U = n1; - n1.U = this; - this.D = n1; - return n1; + DancingNode hookDown(DancingNode node) { + assert (this.C == node.C); + node.D = this.D; + node.D.U = node; + node.U = this; + this.D = node; + return node; } - DancingNode hookRight(DancingNode n1) { - n1.R = this.R; - n1.R.L = n1; - n1.L = this; - this.R = n1; - return n1; + DancingNode hookRight(DancingNode node) { + node.R = this.R; + node.R.L = node; + node.L = this; + this.R = node; + return node; } void unlinkLR() { From 5842c877f3c77141d6da6f5167ac18bafe3d4323 Mon Sep 17 00:00:00 2001 From: Loredana Crusoveanu Date: Tue, 13 Feb 2018 23:00:49 +0200 Subject: [PATCH 114/391] refactor stream --- .../main/java/com/baeldung/dsl/ClientErrorLoggingFilter.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingFilter.java b/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingFilter.java index e4a88c8592..cb174cad28 100644 --- a/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingFilter.java +++ b/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingFilter.java @@ -46,9 +46,7 @@ public class ClientErrorLoggingFilter extends GenericFilterBean { logger.debug("User " + auth.getName() + " encountered error " + status); } else { if (errorCodes.stream() - .filter(s -> s.value() == status) - .findFirst() - .isPresent()) { + .anyMatch(s -> s.value() == status)) { logger.debug("User " + auth.getName() + " encountered error " + status); } } From a67d99a09a774a67dc16ec6dfd24c5bff5a56eef Mon Sep 17 00:00:00 2001 From: Nam Thai Nguyen Date: Wed, 14 Feb 2018 17:10:18 +0700 Subject: [PATCH 115/391] Initial commit for List TDD --- .../com/baeldung/java/list/CustomList.java | 232 ++++++++++++++ .../java/list/CustomListUnitTest.java | 284 ++++++++++++++++++ 2 files changed, 516 insertions(+) create mode 100644 core-java/src/main/java/com/baeldung/java/list/CustomList.java create mode 100644 core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java diff --git a/core-java/src/main/java/com/baeldung/java/list/CustomList.java b/core-java/src/main/java/com/baeldung/java/list/CustomList.java new file mode 100644 index 0000000000..bed9cefeee --- /dev/null +++ b/core-java/src/main/java/com/baeldung/java/list/CustomList.java @@ -0,0 +1,232 @@ +package com.baeldung.java.list; + +import java.util.Arrays; +import java.util.Collection; +import java.util.Iterator; +import java.util.List; +import java.util.ListIterator; + +public class CustomList implements List { + private Object[] internal = {}; + + @Override + public boolean add(E element) { + // the first cycle + // internal = new Object[1]; + // internal[0] = element; + // return true; + + Object[] temp = new Object[internal.length + 1]; + System.arraycopy(internal, 0, temp, 0, internal.length); + temp[internal.length] = element; + internal = temp; + return true; + } + + @SuppressWarnings("unchecked") + @Override + public E get(int index) { + return (E) internal[index]; + } + + @Override + public void add(int index, E element) { + throw new UnsupportedOperationException(); + } + + @Override + public boolean addAll(Collection collection) { + throw new UnsupportedOperationException(); + } + + @Override + public boolean addAll(int index, Collection collection) { + throw new UnsupportedOperationException(); + } + + @Override + public E remove(int index) { + throw new UnsupportedOperationException(); + } + + @Override + public boolean remove(Object object) { + throw new UnsupportedOperationException(); + } + + @Override + public boolean removeAll(Collection collection) { + throw new UnsupportedOperationException(); + } + + @Override + public boolean retainAll(Collection collection) { + throw new UnsupportedOperationException(); + } + + @Override + public int size() { + return internal.length; + } + + @Override + public boolean isEmpty() { + return internal.length == 0; + } + + @Override + public boolean contains(Object object) { + // the first cycle + // if (object.equals(internal[0])) { + // return true; + // } + + for (Object element : internal) { + if (object.equals(element)) { + return true; + } + } + return false; + } + + @Override + public boolean containsAll(Collection collection) { + // the first cycle + // for (Object element : collection) { + // if (element.equals(internal[0])) { + // return true; + // } + // } + // return false; + + for (Object element : collection) + if (!contains(element)) { + return false; + } + return true; + } + + @SuppressWarnings("unchecked") + @Override + public E set(int index, E element) { + E oldElement = (E) internal[index]; + internal[index] = element; + return oldElement; + } + + @Override + public void clear() { + internal = new Object[0]; + } + + @Override + public int indexOf(Object object) { + // the first cycle + // if (object.equals(internal[0])) { + // return 0; + // } + // return -1; + + for (int i = 0; i < internal.length; i++) { + if (object.equals(internal[i])) { + return i; + } + } + return -1; + } + + @Override + public int lastIndexOf(Object object) { + // the first cycle + // if (object.equals(internal[0])) { + // return 0; + // } + // return -1; + + for (int i = internal.length - 1; i >= 0; i--) { + if (object.equals(internal[i])) { + return i; + } + } + return -1; + } + + @SuppressWarnings("unchecked") + @Override + public List subList(int fromIndex, int toIndex) { + // the first cycle + // return (List) Arrays.asList(internal); + + Object[] temp = new Object[toIndex - fromIndex]; + System.arraycopy(internal, fromIndex, temp, 0, temp.length); + return (List) Arrays.asList(temp); + } + + @Override + public Object[] toArray() { + return Arrays.copyOf(internal, internal.length); + } + + @SuppressWarnings("unchecked") + @Override + public T[] toArray(T[] array) { + // the first cycle + // for (int i = 0; i < array.length; i++) { + // array[i] = (T) internal[i]; + // } + // return array; + + // the second cycle + // if (array.length < internal.length) { + // return (T[]) Arrays.copyOf(internal, internal.length, array.getClass()); + // } + // return (T[]) Arrays.copyOf(internal, internal.length, array.getClass()); + + if (array.length < internal.length) { + return (T[]) Arrays.copyOf(internal, internal.length, array.getClass()); + } + System.arraycopy(internal, 0, array, 0, internal.length); + if (array.length > internal.length) { + array[internal.length] = null; + } + return array; + } + + @Override + public Iterator iterator() { + return new CustomIterator(); + } + + @Override + public ListIterator listIterator() { + return null; + } + + @Override + public ListIterator listIterator(int index) { + return null; + } + + private class CustomIterator implements Iterator { + int index; + + @Override + public boolean hasNext() { + // the first cycle + // return true; + + return index != internal.length; + } + + @SuppressWarnings("unchecked") + @Override + public E next() { + // the first cycle + // return (E) CustomList.this.internal[0]; + + E element = (E) CustomList.this.internal[index]; + index++; + return element; + } + } +} diff --git a/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java b/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java new file mode 100644 index 0000000000..bc4c95dc79 --- /dev/null +++ b/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java @@ -0,0 +1,284 @@ +package com.baeldung.java.list; + +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.Iterator; +import java.util.List; + +import org.junit.Test; + +public class CustomListUnitTest { + @Test + public void givenAddToTheEndAndGetImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + boolean succeeded = list.add("baeldung"); + Object element = list.get(0); + + assertTrue(succeeded); + assertEquals("baeldung", element); + } + + @Test(expected = UnsupportedOperationException.class) + public void givenAddToSpecifiedIndexImpl_whenCycle1_thenPasses() { + new CustomList<>().add(0, null); + } + + @Test(expected = UnsupportedOperationException.class) + public void givenAddAllToTheEndImpl_whenCycle1_thenPasses() { + Collection collection = new ArrayList<>(); + List list = new CustomList<>(); + list.addAll(collection); + } + + @Test(expected = UnsupportedOperationException.class) + public void givenAddAllToSpecifiedIndexImpl_whenCycle1_thenPasses() { + Collection collection = new ArrayList<>(); + List list = new CustomList<>(); + list.addAll(0, collection); + } + + @Test(expected = UnsupportedOperationException.class) + public void givenRemoveAtSpecifiedIndexImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + list.remove(0); + } + + @Test(expected = UnsupportedOperationException.class) + public void givenRemoveSpecifiedElementImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + list.remove("baeldung"); + } + + @Test(expected = UnsupportedOperationException.class) + public void givenRemoveAllImpl_whenCycle1_thenPasses() { + Collection collection = new ArrayList<>(); + collection.add("baeldung"); + List list = new CustomList<>(); + list.removeAll(collection); + } + + @Test(expected = UnsupportedOperationException.class) + public void givenRetainAllImpl_whenCycle1_thenPasses() { + Collection collection = new ArrayList<>(); + collection.add("baeldung"); + List list = new CustomList<>(); + list.add("baeldung"); + list.retainAll(collection); + } + + @Test + public void givenSizeImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + + assertEquals(0, list.size()); + } + + @Test + public void givenIsEmptyImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + + assertTrue(list.isEmpty()); + } + + @Test + public void givenContainsImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + + assertTrue(list.contains("baeldung")); + } + + @Test + public void givenContainsAllImpl_whenCycle1_thenPasses() { + Collection collection = new ArrayList<>(); + collection.add("baeldung"); + List list = new CustomList<>(); + list.add("baeldung"); + + assertTrue(list.containsAll(collection)); + } + + @Test + public void givenSetImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + Object element = list.set(0, null); + + assertEquals("baeldung", element); + assertNull(list.get(0)); + } + + @Test + public void givenClearImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + list.clear(); + + assertTrue(list.isEmpty()); + } + + @Test + public void givenIndexOfImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + + assertEquals(0, list.indexOf("baeldung")); + } + + @Test + public void givenLastIndexOfImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + + assertEquals(0, list.lastIndexOf("baeldung")); + } + + @Test + public void givenSubListImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + List subList = list.subList(0, 1); + + assertEquals("baeldung", subList.get(0)); + } + + @Test + public void givenToNewArrayImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + Object[] array = list.toArray(); + + assertEquals("baeldung", array[0]); + } + + @Test + public void givenToExistingArrayImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + String[] input = new String[1]; + String[] output = list.toArray(input); + + assertEquals("baeldung", output[0]); + } + + @Test + public void givenIteratorImpl_whenCycle1_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + Iterator iterator = list.iterator(); + + assertTrue(iterator.hasNext()); + assertEquals("baeldung", iterator.next()); + } + + @Test + public void givenAddToTheEndAndGetImpl_whenCycle2_thenPasses() { + List list = new CustomList<>(); + boolean succeeded1 = list.add("baeldung"); + boolean succeeded2 = list.add(".com"); + Object element1 = list.get(0); + Object element2 = list.get(1); + + assertTrue(succeeded1); + assertTrue(succeeded2); + assertEquals("baeldung", element1); + assertEquals(".com", element2); + } + + @Test + public void givenContainsImpl_whenCycle2_thenPasses() { + List list = new CustomList<>(); + assertFalse(list.contains("baeldung")); + + list.add("baeldung"); + assertTrue(list.contains("baeldung")); + } + + @Test + public void givenContainsAllImpl_whenCycle2_thenPasses() { + Collection collection1 = new ArrayList<>(); + collection1.add("baeldung"); + collection1.add(".com"); + Collection collection2 = new ArrayList<>(); + collection2.add("baeldung"); + + List list = new CustomList<>(); + list.add("baeldung"); + + assertFalse(list.containsAll(collection1)); + assertTrue(list.containsAll(collection2)); + } + + @Test + public void givenIndexOfImpl_whenCycle2_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + list.add(".com"); + list.add(".com"); + + assertEquals(1, list.indexOf(".com")); + assertEquals(-1, list.indexOf("com")); + } + + @Test + public void givenLastIndexOfImpl_whenCycle2_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + list.add("baeldung"); + list.add(".com"); + + assertEquals(1, list.lastIndexOf("baeldung")); + assertEquals(-1, list.indexOf("com")); + } + + @Test + public void givenSubListImpl_whenCycle2_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + list.add("."); + list.add("com"); + List subList = list.subList(1, 2); + + assertEquals(1, subList.size()); + assertEquals(".", subList.get(0)); + } + + @Test + public void givenToExistingArrayImpl_whenCycle2_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + String[] input = {}; + String[] output = list.toArray(input); + + assertArrayEquals(new String[] { "baeldung" }, output); + } + + @Test + public void givenIteratorImpl_whenCycle2_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + Iterator iterator = list.iterator(); + + assertTrue(iterator.hasNext()); + assertEquals("baeldung", iterator.next()); + assertFalse(iterator.hasNext()); + } + + @Test + public void givenToExistingArrayImpl_whenCycle3_thenPasses() { + List list = new CustomList<>(); + list.add("baeldung"); + String[] input = new String[2]; + String[] output = list.toArray(input); + + assertArrayEquals(new String[] { "baeldung", null }, output); + } +} From 666c07c7bee789f5f4c07c56f3b3172645879644 Mon Sep 17 00:00:00 2001 From: Harshil Sharma Date: Fri, 16 Feb 2018 19:03:34 +0530 Subject: [PATCH 116/391] BAEL-1539 shuffling collections (#3567) * BAEL-1539 Added list, set and map shuffling code exaamples * #BAEL-1539 fixed a typo * #BAEL-1539 refactored sample code, added unit tests * #BAEL-1539 Added unit tests and example for shuffling with custom randomness * #BAEL-1539 removed source code and kept only tests as tests are sufficient code sample themselves * #BAEL-1539 updated map shuffling example to use lambdas * #BAEL-1539 lambda refactoring * Fixed an indentation --- .../ShufflingCollectionsUnitTest.java | 70 +++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 core-java-8/src/test/java/com/baeldung/shufflingcollections/ShufflingCollectionsUnitTest.java diff --git a/core-java-8/src/test/java/com/baeldung/shufflingcollections/ShufflingCollectionsUnitTest.java b/core-java-8/src/test/java/com/baeldung/shufflingcollections/ShufflingCollectionsUnitTest.java new file mode 100644 index 0000000000..4823c7178a --- /dev/null +++ b/core-java-8/src/test/java/com/baeldung/shufflingcollections/ShufflingCollectionsUnitTest.java @@ -0,0 +1,70 @@ +package com.baeldung.shufflingcollections; + +import org.junit.Test; + +import java.util.*; +import java.util.stream.Collectors; + +import static org.assertj.core.api.Assertions.assertThat; + +public class ShufflingCollectionsUnitTest { + + @Test + public void whenShufflingList_thenListIsShuffled() { + List students = Arrays.asList("Foo", "Bar", "Baz", "Qux"); + + System.out.println("List before shuffling:"); + System.out.println(students); + + Collections.shuffle(students); + System.out.println("List after shuffling:"); + System.out.println(students); + } + + @Test + public void whenShufflingMapKeys_thenValuesAreShuffled() { + Map studentsById = new HashMap<>(); + studentsById.put(1, "Foo"); + studentsById.put(2, "Bar"); + studentsById.put(3, "Baz"); + studentsById.put(4, "Qux"); + + System.out.println("Students before shuffling:"); + System.out.println(studentsById.values()); + + List shuffledStudentIds = new ArrayList<>(studentsById.keySet()); + Collections.shuffle(shuffledStudentIds); + + List shuffledStudents = shuffledStudentIds.stream() + .map(id -> studentsById.get(id)) + .collect(Collectors.toList()); + + System.out.println("Students after shuffling"); + System.out.println(shuffledStudents); + } + + @Test + public void whenShufflingSet_thenElementsAreShuffled() { + Set students = new HashSet<>(Arrays.asList("Foo", "Bar", "Baz", "Qux")); + + System.out.println("Set before shuffling:"); + System.out.println(students); + + List studentList = new ArrayList<>(students); + + Collections.shuffle(studentList); + System.out.println("Shuffled set elements:"); + System.out.println(studentList); + } + + @Test + public void whenShufflingWithSameRandomness_thenElementsAreShuffledDeterministically() { + List students_1 = Arrays.asList("Foo", "Bar", "Baz", "Qux"); + List students_2 = Arrays.asList("Foo", "Bar", "Baz", "Qux"); + + Collections.shuffle(students_1, new Random(5)); + Collections.shuffle(students_2, new Random(5)); + + assertThat(students_1).isEqualTo(students_2); + } +} From 53529f0c50e1d56af366b972bc75cb65e4f903f6 Mon Sep 17 00:00:00 2001 From: Loredana Crusoveanu Date: Fri, 16 Feb 2018 21:35:11 +0200 Subject: [PATCH 117/391] fix spring-cloud-gateway project setup, update boot version --- .../gateway-service/pom.xml | 79 ------------------- spring-cloud/spring-cloud-gateway/pom.xml | 61 ++++++++++++-- .../spring/cloud/GatewayApplication.java | 0 .../src/main/resources/application.yml | 0 4 files changed, 55 insertions(+), 85 deletions(-) delete mode 100644 spring-cloud/spring-cloud-gateway/gateway-service/pom.xml rename spring-cloud/spring-cloud-gateway/{gateway-service => }/src/main/java/com/baeldung/spring/cloud/GatewayApplication.java (100%) rename spring-cloud/spring-cloud-gateway/{gateway-service => }/src/main/resources/application.yml (100%) diff --git a/spring-cloud/spring-cloud-gateway/gateway-service/pom.xml b/spring-cloud/spring-cloud-gateway/gateway-service/pom.xml deleted file mode 100644 index 14cde4901a..0000000000 --- a/spring-cloud/spring-cloud-gateway/gateway-service/pom.xml +++ /dev/null @@ -1,79 +0,0 @@ - - 4.0.0 - - gateway-service - 1.0.0-SNAPSHOT - jar - - Spring Cloud Gateway Service - - - com.baeldung.spring.cloud - spring-cloud-gateway - 1.0.0-SNAPSHOT - .. - - - - 2.0.0.M2 - - - - - org.springframework.boot - spring-boot-actuator - ${version} - - - org.springframework.boot - spring-boot-starter-webflux - ${version} - - - org.springframework.cloud - spring-cloud-gateway-core - ${version} - - - org.springframework.cloud - spring-cloud-starter-eureka - ${version} - - - org.hibernate - hibernate-validator-cdi - 6.0.2.Final - - - javax.validation - validation-api - 2.0.0.Final - - - io.projectreactor.ipc - reactor-netty - 0.7.0.M1 - - - - - - spring-snapshots - Spring Snapshots - https://repo.spring.io/snapshot - - true - - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - false - - - - - \ No newline at end of file diff --git a/spring-cloud/spring-cloud-gateway/pom.xml b/spring-cloud/spring-cloud-gateway/pom.xml index 5142b25400..90737f369d 100644 --- a/spring-cloud/spring-cloud-gateway/pom.xml +++ b/spring-cloud/spring-cloud-gateway/pom.xml @@ -4,13 +4,8 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 - com.baeldung.spring.cloud spring-cloud-gateway - 1.0.0-SNAPSHOT - - gateway-service - - pom + jar Spring Cloud Gateway @@ -25,7 +20,61 @@ UTF-8 3.7.0 1.4.2.RELEASE + 2.0.0.M6 + + + + org.springframework.boot + spring-boot-actuator + ${version} + + + org.springframework.boot + spring-boot-starter-webflux + ${version} + + + org.springframework.cloud + spring-cloud-gateway-core + ${version} + + + + org.hibernate + hibernate-validator-cdi + 6.0.2.Final + + + javax.validation + validation-api + 2.0.0.Final + + + io.projectreactor.ipc + reactor-netty + 0.7.0.M1 + + + + + + spring-snapshots + Spring Snapshots + https://repo.spring.io/snapshot + + true + + + + spring-milestones + Spring Milestones + https://repo.spring.io/milestone + + false + + + diff --git a/spring-cloud/spring-cloud-gateway/gateway-service/src/main/java/com/baeldung/spring/cloud/GatewayApplication.java b/spring-cloud/spring-cloud-gateway/src/main/java/com/baeldung/spring/cloud/GatewayApplication.java similarity index 100% rename from spring-cloud/spring-cloud-gateway/gateway-service/src/main/java/com/baeldung/spring/cloud/GatewayApplication.java rename to spring-cloud/spring-cloud-gateway/src/main/java/com/baeldung/spring/cloud/GatewayApplication.java diff --git a/spring-cloud/spring-cloud-gateway/gateway-service/src/main/resources/application.yml b/spring-cloud/spring-cloud-gateway/src/main/resources/application.yml similarity index 100% rename from spring-cloud/spring-cloud-gateway/gateway-service/src/main/resources/application.yml rename to spring-cloud/spring-cloud-gateway/src/main/resources/application.yml From 8af29e8df5729ae1d4b9c3eb3b3d306741427f2a Mon Sep 17 00:00:00 2001 From: Magdalena Krause Date: Fri, 16 Feb 2018 16:54:04 -0300 Subject: [PATCH 118/391] BAEL-1543: Logging to console instead of file. --- spring-batch/src/main/resources/logback.xml | 23 +++++---------------- 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/spring-batch/src/main/resources/logback.xml b/spring-batch/src/main/resources/logback.xml index dc9218caf3..b110d1c226 100644 --- a/spring-batch/src/main/resources/logback.xml +++ b/spring-batch/src/main/resources/logback.xml @@ -1,33 +1,20 @@ - - C:\Users\admin\Desktop\Baeldung\repo\magkrause\tutorials\spring-batch\src\main\resources\taskletsvschunks\logs.log - + + %d{yyyy-MM-dd HH:mm:ss} [%thread] %level %logger{35} - %msg%n - - - - - ${DEV_HOME}/archived/debug.%d{yyyy-MM-dd}.%i.log - - - 10MB - - - + - + - + \ No newline at end of file From 1372a565e2fba6a8a03e5fb427007fdb45488183 Mon Sep 17 00:00:00 2001 From: Alex Vargas Date: Fri, 16 Feb 2018 12:01:12 -0800 Subject: [PATCH 119/391] Adding solidity example file --- libraries/src/main/resources/Greeting.sol | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 libraries/src/main/resources/Greeting.sol diff --git a/libraries/src/main/resources/Greeting.sol b/libraries/src/main/resources/Greeting.sol new file mode 100644 index 0000000000..dde7b36cc3 --- /dev/null +++ b/libraries/src/main/resources/Greeting.sol @@ -0,0 +1,19 @@ +pragma solidity ^0.4.0; + +contract Greeting { + address creator; + string message; + + function Greeting(string _message) { + message = _message; + creator = msg.sender; + } + + function greet() constant returns (string) { + return message; + } + + function setGreeting(string _message) { + message = _message; + } +} \ No newline at end of file From 9dd6ca91795d3658b1fe451949909310b81dff28 Mon Sep 17 00:00:00 2001 From: lol Date: Fri, 16 Feb 2018 22:31:53 +0100 Subject: [PATCH 120/391] BAEL-1556 --- spring-security-thymeleaf/pom.xml | 17 +++++++-- .../SecurityConfiguration.java | 38 +++++++++++++++++++ .../SpringSecurityThymeleafApplication.java | 12 ++++++ .../ViewController.java | 24 ++++++++++++ .../src/main/resources/application.properties | 0 .../src/main/resources/templates/index.html | 12 ++++++ .../src/main/resources/templates/login.html | 15 ++++++++ .../main/resources/templates/loginError.html | 9 +++++ ...ringSecurityThymeleafApplicationTests.java | 27 +++++++++++++ .../ViewControllerIntegrationTest.java | 27 +++++++++++++ 10 files changed, 177 insertions(+), 4 deletions(-) create mode 100644 spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SecurityConfiguration.java create mode 100644 spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplication.java create mode 100644 spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/ViewController.java create mode 100644 spring-security-thymeleaf/src/main/resources/application.properties create mode 100644 spring-security-thymeleaf/src/main/resources/templates/index.html create mode 100644 spring-security-thymeleaf/src/main/resources/templates/login.html create mode 100644 spring-security-thymeleaf/src/main/resources/templates/loginError.html create mode 100644 spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplicationTests.java create mode 100644 spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/ViewControllerIntegrationTest.java diff --git a/spring-security-thymeleaf/pom.xml b/spring-security-thymeleaf/pom.xml index 14e4e5210b..0f44cf7032 100644 --- a/spring-security-thymeleaf/pom.xml +++ b/spring-security-thymeleaf/pom.xml @@ -12,10 +12,10 @@ Spring Security with Thymeleaf tutorial - org.springframework.boot - spring-boot-starter-parent - 2.0.0.BUILD-SNAPSHOT - + parent-boot-5 + com.baeldung + 0.0.1-SNAPSHOT + ../parent-boot-5 @@ -48,6 +48,15 @@ spring-security-test test + + org.thymeleaf.extras + thymeleaf-extras-springsecurity4 + + + + org.springframework.security + spring-security-taglibs + diff --git a/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SecurityConfiguration.java b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SecurityConfiguration.java new file mode 100644 index 0000000000..185093adfa --- /dev/null +++ b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SecurityConfiguration.java @@ -0,0 +1,38 @@ +package com.baeldung.springsecuritythymeleaf; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.web.util.matcher.AntPathRequestMatcher; + +@Configuration +@EnableWebSecurity +public class SecurityConfiguration extends WebSecurityConfigurerAdapter { + + @Override + protected void configure(HttpSecurity http) throws Exception { + http + .authorizeRequests() + .anyRequest().authenticated() + .and() + .formLogin() + .loginPage("/login") + .permitAll().failureUrl("/loginError").successForwardUrl("/index") + .and() + .logout() + .permitAll() + .logoutRequestMatcher(new AntPathRequestMatcher("/logout")) + .logoutSuccessUrl("/login"); + } + + @Autowired + public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception { + auth + .inMemoryAuthentication() + .withUser("user").password("password").roles("USER").and() + .withUser("admin").password("admin").roles("ADMIN"); + } +} diff --git a/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplication.java b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplication.java new file mode 100644 index 0000000000..c6e4dc1469 --- /dev/null +++ b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplication.java @@ -0,0 +1,12 @@ +package com.baeldung.springsecuritythymeleaf; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class SpringSecurityThymeleafApplication { + + public static void main(String[] args) { + SpringApplication.run(SpringSecurityThymeleafApplication.class, args); + } +} diff --git a/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/ViewController.java b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/ViewController.java new file mode 100644 index 0000000000..2f2fa69608 --- /dev/null +++ b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/ViewController.java @@ -0,0 +1,24 @@ +package com.baeldung.springsecuritythymeleaf; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; + +@Controller +public class ViewController { + + @RequestMapping("/login") + public String login() { + return "login"; + } + + @RequestMapping({"/index", "/"}) + public String index() { + return "index"; + } + + @RequestMapping("/loginError") + public String loginError() { + return "loginError"; + } + +} diff --git a/spring-security-thymeleaf/src/main/resources/application.properties b/spring-security-thymeleaf/src/main/resources/application.properties new file mode 100644 index 0000000000..e69de29bb2 diff --git a/spring-security-thymeleaf/src/main/resources/templates/index.html b/spring-security-thymeleaf/src/main/resources/templates/index.html new file mode 100644 index 0000000000..6cbc8f867e --- /dev/null +++ b/spring-security-thymeleaf/src/main/resources/templates/index.html @@ -0,0 +1,12 @@ + + + +Welcome to Spring Security Thymeleaf tutorial + + +

Welcome

+

Spring Security Thymeleaf tutorial

+
Text visible to user.
+
Text visible to admin.
+ + \ No newline at end of file diff --git a/spring-security-thymeleaf/src/main/resources/templates/login.html b/spring-security-thymeleaf/src/main/resources/templates/login.html new file mode 100644 index 0000000000..49cbedabf2 --- /dev/null +++ b/spring-security-thymeleaf/src/main/resources/templates/login.html @@ -0,0 +1,15 @@ + + + +Insert title here + + +

Custom Login Page

+
+ :
:
+
+ + \ No newline at end of file diff --git a/spring-security-thymeleaf/src/main/resources/templates/loginError.html b/spring-security-thymeleaf/src/main/resources/templates/loginError.html new file mode 100644 index 0000000000..1e05cb4a87 --- /dev/null +++ b/spring-security-thymeleaf/src/main/resources/templates/loginError.html @@ -0,0 +1,9 @@ + + + +Login error page + + +

Login Error Page

+ + \ No newline at end of file diff --git a/spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplicationTests.java b/spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplicationTests.java new file mode 100644 index 0000000000..dea254dd31 --- /dev/null +++ b/spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplicationTests.java @@ -0,0 +1,27 @@ +package com.baeldung.springsecuritythymeleaf; + +import static org.junit.Assert.assertNotNull; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.web.context.WebApplicationContext; + +@RunWith(SpringRunner.class) +@SpringBootTest +public class SpringSecurityThymeleafApplicationTests { + + @Autowired + ViewController viewController; + @Autowired + WebApplicationContext wac; + + @Test + public void whenConfigured_thenLoadsContext() { + assertNotNull(viewController); + assertNotNull(wac); + } + +} diff --git a/spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/ViewControllerIntegrationTest.java b/spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/ViewControllerIntegrationTest.java new file mode 100644 index 0000000000..d2e7354d2d --- /dev/null +++ b/spring-security-thymeleaf/src/test/java/com/baeldung/springsecuritythymeleaf/ViewControllerIntegrationTest.java @@ -0,0 +1,27 @@ +package com.baeldung.springsecuritythymeleaf; + +import static org.springframework.security.test.web.servlet.request.SecurityMockMvcRequestPostProcessors.user; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.view; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.web.servlet.MockMvc; + +@RunWith(SpringRunner.class) +@WebMvcTest +public class ViewControllerIntegrationTest { + + @Autowired + MockMvc mockMvc; + + @Test + public void givenUser_whenPerformingGet_thenReturnsIndex() throws Exception { + mockMvc.perform(get("/index").with(user("user").password("password"))).andExpect(status().isOk()).andExpect(view().name("index")); + } + +} From 6642fc53a4feaff8ce9051e2f0018b11e22b937a Mon Sep 17 00:00:00 2001 From: kwandzel Date: Fri, 16 Feb 2018 22:59:09 +0100 Subject: [PATCH 121/391] cleaning dependencies --- spring-security-thymeleaf/pom.xml | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/spring-security-thymeleaf/pom.xml b/spring-security-thymeleaf/pom.xml index 0f44cf7032..f40aabcf8b 100644 --- a/spring-security-thymeleaf/pom.xml +++ b/spring-security-thymeleaf/pom.xml @@ -48,15 +48,10 @@ spring-security-test test - - org.thymeleaf.extras - thymeleaf-extras-springsecurity4 - - - - org.springframework.security - spring-security-taglibs - + + org.thymeleaf.extras + thymeleaf-extras-springsecurity4 + From 5d4bfa2e73e13eb0f889dbff1f42d8977aa38439 Mon Sep 17 00:00:00 2001 From: Eugen Paraschiv Date: Sat, 17 Feb 2018 01:02:20 +0200 Subject: [PATCH 122/391] renaming the DSL to configurer --- ...rorLoggingDsl.java => ClientErrorLoggingConfigurer.java} | 6 +++--- .../src/main/java/com/baeldung/dsl/SecurityConfig.java | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) rename spring-5-security/src/main/java/com/baeldung/dsl/{ClientErrorLoggingDsl.java => ClientErrorLoggingConfigurer.java} (76%) diff --git a/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingDsl.java b/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingConfigurer.java similarity index 76% rename from spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingDsl.java rename to spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingConfigurer.java index 6c7c0d2717..5a9479b664 100644 --- a/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingDsl.java +++ b/spring-5-security/src/main/java/com/baeldung/dsl/ClientErrorLoggingConfigurer.java @@ -7,15 +7,15 @@ import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer; import org.springframework.security.web.access.intercept.FilterSecurityInterceptor; -public class ClientErrorLoggingDsl extends AbstractHttpConfigurer { +public class ClientErrorLoggingConfigurer extends AbstractHttpConfigurer { private List errorCodes; - public ClientErrorLoggingDsl(List errorCodes) { + public ClientErrorLoggingConfigurer(List errorCodes) { this.errorCodes = errorCodes; } - public ClientErrorLoggingDsl() { + public ClientErrorLoggingConfigurer() { } diff --git a/spring-5-security/src/main/java/com/baeldung/dsl/SecurityConfig.java b/spring-5-security/src/main/java/com/baeldung/dsl/SecurityConfig.java index 4494aaa131..382e222f64 100644 --- a/spring-5-security/src/main/java/com/baeldung/dsl/SecurityConfig.java +++ b/spring-5-security/src/main/java/com/baeldung/dsl/SecurityConfig.java @@ -25,8 +25,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { } @Bean - public ClientErrorLoggingDsl clientErrorLogging() { - return new ClientErrorLoggingDsl(); + public ClientErrorLoggingConfigurer clientErrorLogging() { + return new ClientErrorLoggingConfigurer(); } @Override From 414d805f6b854cc772a8232cba882eac4d3deae9 Mon Sep 17 00:00:00 2001 From: Eugen Paraschiv Date: Sat, 17 Feb 2018 01:03:29 +0200 Subject: [PATCH 123/391] renaming the DSL to configurer --- ...omDslApplication.java => CustomConfigurerApplication.java} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename spring-5-security/src/main/java/com/baeldung/dsl/{CustomDslApplication.java => CustomConfigurerApplication.java} (66%) diff --git a/spring-5-security/src/main/java/com/baeldung/dsl/CustomDslApplication.java b/spring-5-security/src/main/java/com/baeldung/dsl/CustomConfigurerApplication.java similarity index 66% rename from spring-5-security/src/main/java/com/baeldung/dsl/CustomDslApplication.java rename to spring-5-security/src/main/java/com/baeldung/dsl/CustomConfigurerApplication.java index 3e58bccaf4..2cd3d7fc7f 100644 --- a/spring-5-security/src/main/java/com/baeldung/dsl/CustomDslApplication.java +++ b/spring-5-security/src/main/java/com/baeldung/dsl/CustomConfigurerApplication.java @@ -4,10 +4,10 @@ import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication -public class CustomDslApplication { +public class CustomConfigurerApplication { public static void main(String[] args) { - SpringApplication.run(CustomDslApplication.class, args); + SpringApplication.run(CustomConfigurerApplication.class, args); } } From b219245e5b22110d555ec44b9db2da5c4d4ca12e Mon Sep 17 00:00:00 2001 From: Gurinder Singh Date: Sat, 17 Feb 2018 07:39:35 +0530 Subject: [PATCH 124/391] Gurinder spring cloud contract (#3547) * adding producer side sample for spring-cloud-contract * adding consumer side sample for spring-cloud-contract * removing un neccessary code * adding latest version for spring-cloud-contract in both producer and consumer * adding producer dependency in consumer * refactoring after review-1 * refactoring after review-2 * refactoring after review-3 --- spring-cloud/pom.xml | 3 +- spring-cloud/spring-cloud-contract/pom.xml | 23 ++++++ .../spring-cloud-contract-consumer/pom.xml | 68 +++++++++++++++++ ...pringCloudContractConsumerApplication.java | 18 +++++ .../controller/BasicMathController.java | 31 ++++++++ .../src/main/resources/application.yml | 0 .../BasicMathControllerIntegrationTest.java | 44 +++++++++++ .../spring-cloud-contract-producer/pom.xml | 74 +++++++++++++++++++ ...pringCloudContractProducerApplication.java | 11 +++ .../controller/EvenOddController.java | 15 ++++ .../src/main/resources/application.properties | 0 .../BaseTestClass.java | 29 ++++++++ ...uldReturnEvenWhenRequestParamIsEven.groovy | 17 +++++ ...houldReturnOddWhenRequestParamIsOdd.groovy | 17 +++++ 14 files changed, 349 insertions(+), 1 deletion(-) create mode 100644 spring-cloud/spring-cloud-contract/pom.xml create mode 100644 spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/pom.xml create mode 100644 spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/main/java/com/baeldung/spring/cloud/springcloudcontractconsumer/SpringCloudContractConsumerApplication.java create mode 100644 spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/main/java/com/baeldung/spring/cloud/springcloudcontractconsumer/controller/BasicMathController.java create mode 100644 spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/main/resources/application.yml create mode 100644 spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/test/java/com/baeldung/spring/cloud/springcloudcontractconsumer/controller/BasicMathControllerIntegrationTest.java create mode 100644 spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/pom.xml create mode 100644 spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/main/java/com/baeldung/spring/cloud/springcloudcontractproducer/SpringCloudContractProducerApplication.java create mode 100644 spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/main/java/com/baeldung/spring/cloud/springcloudcontractproducer/controller/EvenOddController.java create mode 100644 spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/main/resources/application.properties create mode 100644 spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/test/java/com/baeldung/spring/cloud/springcloudcontractproducer/BaseTestClass.java create mode 100644 spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/test/resources/contracts/shouldReturnEvenWhenRequestParamIsEven.groovy create mode 100644 spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/test/resources/contracts/shouldReturnOddWhenRequestParamIsOdd.groovy diff --git a/spring-cloud/pom.xml b/spring-cloud/pom.xml index d94b334bc8..c093b87be3 100644 --- a/spring-cloud/pom.xml +++ b/spring-cloud/pom.xml @@ -21,7 +21,8 @@ spring-cloud-aws spring-cloud-consul spring-cloud-zuul-eureka-integration - + spring-cloud-contract + pom spring-cloud diff --git a/spring-cloud/spring-cloud-contract/pom.xml b/spring-cloud/spring-cloud-contract/pom.xml new file mode 100644 index 0000000000..3981aae2ac --- /dev/null +++ b/spring-cloud/spring-cloud-contract/pom.xml @@ -0,0 +1,23 @@ + + + 4.0.0 + + + com.baeldung.spring.cloud + spring-cloud + 1.0.0-SNAPSHOT + + + spring-cloud-contract-producer + spring-cloud-contract-consumer + + pom + + com.baeldung.spring.cloud + spring-cloud-contract + 1.0.0-SNAPSHOT + + + \ No newline at end of file diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/pom.xml b/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/pom.xml new file mode 100644 index 0000000000..67fea178eb --- /dev/null +++ b/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/pom.xml @@ -0,0 +1,68 @@ + + + 4.0.0 + + com.baeldung.spring.cloud + spring-cloud-contract-consumer + 1.0.0-SNAPSHOT + jar + + spring-cloud-contract-consumer + Spring Cloud Consumer Sample + + + com.baeldung.spring.cloud + spring-cloud-contract + 1.0.0-SNAPSHOT + .. + + + + UTF-8 + UTF-8 + 1.8 + + + + + org.springframework.cloud + spring-cloud-contract-wiremock + 1.2.2.RELEASE + test + + + org.springframework.cloud + spring-cloud-contract-stub-runner + 1.2.2.RELEASE + test + + + org.springframework.boot + spring-boot-starter-web + 1.5.9.RELEASE + + + org.springframework.boot + spring-boot-starter-data-rest + 1.5.9.RELEASE + + + com.baeldung.spring.cloud + spring-cloud-contract-producer + 1.0.0-SNAPSHOT + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + + diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/main/java/com/baeldung/spring/cloud/springcloudcontractconsumer/SpringCloudContractConsumerApplication.java b/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/main/java/com/baeldung/spring/cloud/springcloudcontractconsumer/SpringCloudContractConsumerApplication.java new file mode 100644 index 0000000000..7383ae5afa --- /dev/null +++ b/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/main/java/com/baeldung/spring/cloud/springcloudcontractconsumer/SpringCloudContractConsumerApplication.java @@ -0,0 +1,18 @@ +package com.baeldung.spring.cloud.springcloudcontractconsumer; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.context.annotation.Bean; +import org.springframework.web.client.RestTemplate; + +@SpringBootApplication +public class SpringCloudContractConsumerApplication { + public static void main(String[] args) { + SpringApplication.run(SpringCloudContractConsumerApplication.class, args); + } + + @Bean + RestTemplate restTemplate() { + return new RestTemplate(); + } +} diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/main/java/com/baeldung/spring/cloud/springcloudcontractconsumer/controller/BasicMathController.java b/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/main/java/com/baeldung/spring/cloud/springcloudcontractconsumer/controller/BasicMathController.java new file mode 100644 index 0000000000..f164af89e6 --- /dev/null +++ b/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/main/java/com/baeldung/spring/cloud/springcloudcontractconsumer/controller/BasicMathController.java @@ -0,0 +1,31 @@ +package com.baeldung.spring.cloud.springcloudcontractconsumer.controller; + + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.*; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.client.RestTemplate; + + +@RestController +public class BasicMathController { + + @Autowired + private RestTemplate restTemplate; + + @GetMapping("/calculate") + public String checkOddAndEven(@RequestParam("number") String number) { + HttpHeaders httpHeaders = new HttpHeaders(); + httpHeaders.add("Content-Type", "application/json"); + + ResponseEntity responseEntity = restTemplate.exchange( + "http://localhost:8090/validate/prime-number?number=" + number, + HttpMethod.GET, + new HttpEntity<>(httpHeaders), + String.class); + + return responseEntity.getBody(); + } +} diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/main/resources/application.yml b/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/main/resources/application.yml new file mode 100644 index 0000000000..e69de29bb2 diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/test/java/com/baeldung/spring/cloud/springcloudcontractconsumer/controller/BasicMathControllerIntegrationTest.java b/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/test/java/com/baeldung/spring/cloud/springcloudcontractconsumer/controller/BasicMathControllerIntegrationTest.java new file mode 100644 index 0000000000..5cf5c6d3b8 --- /dev/null +++ b/spring-cloud/spring-cloud-contract/spring-cloud-contract-consumer/src/test/java/com/baeldung/spring/cloud/springcloudcontractconsumer/controller/BasicMathControllerIntegrationTest.java @@ -0,0 +1,44 @@ +package com.baeldung.spring.cloud.springcloudcontractconsumer.controller; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.json.AutoConfigureJsonTesters; +import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.cloud.contract.stubrunner.spring.AutoConfigureStubRunner; +import org.springframework.http.MediaType; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; + +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; + +@RunWith(SpringRunner.class) +@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.MOCK) +@AutoConfigureMockMvc +@AutoConfigureJsonTesters +@AutoConfigureStubRunner(workOffline = true, + ids = "com.baeldung.spring.cloud:spring-cloud-contract-producer:+:stubs:8090") +public class BasicMathControllerIntegrationTest { + + @Autowired + private MockMvc mockMvc; + + @Test + public void given_WhenPassEvenNumberInQueryParam_ThenReturnEven() throws Exception { + mockMvc.perform(MockMvcRequestBuilders.get("/calculate?number=2") + .contentType(MediaType.APPLICATION_JSON)) + .andExpect(status().isOk()) + .andExpect(content().string("Even")); + } + + @Test + public void given_WhenPassOddNumberInQueryParam_ThenReturnOdd() throws Exception { + mockMvc.perform(MockMvcRequestBuilders.get("/calculate?number=1") + .contentType(MediaType.APPLICATION_JSON)) + .andExpect(status().isOk()) + .andExpect(content().string("Odd")); + } +} diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/pom.xml b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/pom.xml new file mode 100644 index 0000000000..ac27dbb645 --- /dev/null +++ b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/pom.xml @@ -0,0 +1,74 @@ + + + 4.0.0 + + com.baeldung.spring.cloud + spring-cloud-contract-producer + 1.0.0-SNAPSHOT + jar + + spring-cloud-contract-producer + Spring Cloud Producer Sample + + + com.baeldung.spring.cloud + spring-cloud-contract + 1.0.0-SNAPSHOT + .. + + + + UTF-8 + UTF-8 + 1.8 + Edgware.SR1 + + + + + org.springframework.cloud + spring-cloud-starter-contract-verifier + test + + + org.springframework.boot + spring-boot-starter-web + 1.5.9.RELEASE + + + org.springframework.boot + spring-boot-starter-data-rest + 1.5.9.RELEASE + + + + + + org.springframework.cloud + spring-cloud-contract-maven-plugin + 1.2.2.RELEASE + true + + com.baeldung.spring.cloud.springcloudcontractproducer.BaseTestClass + + + + + + + + + + + org.springframework.cloud + spring-cloud-dependencies + ${spring-cloud.version} + pom + import + + + + + + diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/main/java/com/baeldung/spring/cloud/springcloudcontractproducer/SpringCloudContractProducerApplication.java b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/main/java/com/baeldung/spring/cloud/springcloudcontractproducer/SpringCloudContractProducerApplication.java new file mode 100644 index 0000000000..770c68c817 --- /dev/null +++ b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/main/java/com/baeldung/spring/cloud/springcloudcontractproducer/SpringCloudContractProducerApplication.java @@ -0,0 +1,11 @@ +package com.baeldung.spring.cloud.springcloudcontractproducer; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class SpringCloudContractProducerApplication { + public static void main(String[] args) { + SpringApplication.run(SpringCloudContractProducerApplication.class, args); + } +} diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/main/java/com/baeldung/spring/cloud/springcloudcontractproducer/controller/EvenOddController.java b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/main/java/com/baeldung/spring/cloud/springcloudcontractproducer/controller/EvenOddController.java new file mode 100644 index 0000000000..e61cc1120c --- /dev/null +++ b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/main/java/com/baeldung/spring/cloud/springcloudcontractproducer/controller/EvenOddController.java @@ -0,0 +1,15 @@ +package com.baeldung.spring.cloud.springcloudcontractproducer.controller; + + +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +@RestController +public class EvenOddController { + + @GetMapping("/validate/prime-number") + public String isNumberPrime(@RequestParam("number") String number) { + return Integer.parseInt(number) % 2 == 0 ? "Even" : "Odd"; + } +} diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/main/resources/application.properties b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/main/resources/application.properties new file mode 100644 index 0000000000..e69de29bb2 diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/test/java/com/baeldung/spring/cloud/springcloudcontractproducer/BaseTestClass.java b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/test/java/com/baeldung/spring/cloud/springcloudcontractproducer/BaseTestClass.java new file mode 100644 index 0000000000..253924b247 --- /dev/null +++ b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/test/java/com/baeldung/spring/cloud/springcloudcontractproducer/BaseTestClass.java @@ -0,0 +1,29 @@ +package com.baeldung.spring.cloud.springcloudcontractproducer; + +import com.baeldung.spring.cloud.springcloudcontractproducer.controller.EvenOddController; +import io.restassured.module.mockmvc.RestAssuredMockMvc; +import org.junit.Before; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.cloud.contract.verifier.messaging.boot.AutoConfigureMessageVerifier; +import org.springframework.test.annotation.DirtiesContext; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; +import org.springframework.test.web.servlet.setup.StandaloneMockMvcBuilder; + +@RunWith(SpringRunner.class) +@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.MOCK) +@DirtiesContext +@AutoConfigureMessageVerifier +public class BaseTestClass { + + @Autowired + private EvenOddController evenOddController; + + @Before + public void setup() { + StandaloneMockMvcBuilder standaloneMockMvcBuilder = MockMvcBuilders.standaloneSetup(evenOddController); + RestAssuredMockMvc.standaloneSetup(standaloneMockMvcBuilder); + } +} diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/test/resources/contracts/shouldReturnEvenWhenRequestParamIsEven.groovy b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/test/resources/contracts/shouldReturnEvenWhenRequestParamIsEven.groovy new file mode 100644 index 0000000000..78c36d7334 --- /dev/null +++ b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/test/resources/contracts/shouldReturnEvenWhenRequestParamIsEven.groovy @@ -0,0 +1,17 @@ +import org.springframework.cloud.contract.spec.Contract + +Contract.make { + description "should return even when number input is even" + request { + method GET() + url("/validate/prime-number") { + queryParameters { + parameter("number", "2") + } + } + } + response { + body("Even") + status 200 + } +} \ No newline at end of file diff --git a/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/test/resources/contracts/shouldReturnOddWhenRequestParamIsOdd.groovy b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/test/resources/contracts/shouldReturnOddWhenRequestParamIsOdd.groovy new file mode 100644 index 0000000000..215f987bbf --- /dev/null +++ b/spring-cloud/spring-cloud-contract/spring-cloud-contract-producer/src/test/resources/contracts/shouldReturnOddWhenRequestParamIsOdd.groovy @@ -0,0 +1,17 @@ +import org.springframework.cloud.contract.spec.Contract + +Contract.make { + description "should return odd when number input is odd" + request { + method GET() + url("/validate/prime-number") { + queryParameters { + parameter("number", "1") + } + } + } + response { + body("Odd") + status 200 + } +} \ No newline at end of file From 08d53a2cbb9685611a3969dba15786723e222510 Mon Sep 17 00:00:00 2001 From: Nam Thai Nguyen Date: Sat, 17 Feb 2018 11:45:03 +0700 Subject: [PATCH 125/391] Change the names of test methods --- .../com/baeldung/java/list/CustomList.java | 51 ++-- .../java/list/CustomListUnitTest.java | 244 +++++++++--------- 2 files changed, 145 insertions(+), 150 deletions(-) diff --git a/core-java/src/main/java/com/baeldung/java/list/CustomList.java b/core-java/src/main/java/com/baeldung/java/list/CustomList.java index bed9cefeee..bc1321b1a3 100644 --- a/core-java/src/main/java/com/baeldung/java/list/CustomList.java +++ b/core-java/src/main/java/com/baeldung/java/list/CustomList.java @@ -9,26 +9,6 @@ import java.util.ListIterator; public class CustomList implements List { private Object[] internal = {}; - @Override - public boolean add(E element) { - // the first cycle - // internal = new Object[1]; - // internal[0] = element; - // return true; - - Object[] temp = new Object[internal.length + 1]; - System.arraycopy(internal, 0, temp, 0, internal.length); - temp[internal.length] = element; - internal = temp; - return true; - } - - @SuppressWarnings("unchecked") - @Override - public E get(int index) { - return (E) internal[index]; - } - @Override public void add(int index, E element) { throw new UnsupportedOperationException(); @@ -75,11 +55,28 @@ public class CustomList implements List { } @Override - public boolean contains(Object object) { + public boolean add(E element) { // the first cycle - // if (object.equals(internal[0])) { - // return true; - // } + // internal = new Object[1]; + // internal[0] = element; + // return true; + + Object[] temp = new Object[internal.length + 1]; + System.arraycopy(internal, 0, temp, 0, internal.length); + temp[internal.length] = element; + internal = temp; + return true; + } + + @SuppressWarnings("unchecked") + @Override + public E get(int index) { + return (E) internal[index]; + } + + @Override + public boolean contains(Object object) { + // return false for (Object element : internal) { if (object.equals(element)) { @@ -171,9 +168,7 @@ public class CustomList implements List { @Override public T[] toArray(T[] array) { // the first cycle - // for (int i = 0; i < array.length; i++) { - // array[i] = (T) internal[i]; - // } + // array[0] = (T) internal[0]; // return array; // the second cycle @@ -185,6 +180,7 @@ public class CustomList implements List { if (array.length < internal.length) { return (T[]) Arrays.copyOf(internal, internal.length, array.getClass()); } + System.arraycopy(internal, 0, array, 0, internal.length); if (array.length > internal.length) { array[internal.length] = null; @@ -204,6 +200,7 @@ public class CustomList implements List { @Override public ListIterator listIterator(int index) { + // ignored for brevity return null; } diff --git a/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java b/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java index bc4c95dc79..471d4f8a63 100644 --- a/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java +++ b/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java @@ -14,51 +14,41 @@ import java.util.List; import org.junit.Test; public class CustomListUnitTest { - @Test - public void givenAddToTheEndAndGetImpl_whenCycle1_thenPasses() { - List list = new CustomList<>(); - boolean succeeded = list.add("baeldung"); - Object element = list.get(0); - - assertTrue(succeeded); - assertEquals("baeldung", element); - } - @Test(expected = UnsupportedOperationException.class) - public void givenAddToSpecifiedIndexImpl_whenCycle1_thenPasses() { + public void whenAddToSpecifiedIndex_thenExceptionIsThrown() { new CustomList<>().add(0, null); } @Test(expected = UnsupportedOperationException.class) - public void givenAddAllToTheEndImpl_whenCycle1_thenPasses() { + public void whenAddAllToTheEnd_thenExceptionIsThrown() { Collection collection = new ArrayList<>(); List list = new CustomList<>(); list.addAll(collection); } @Test(expected = UnsupportedOperationException.class) - public void givenAddAllToSpecifiedIndexImpl_whenCycle1_thenPasses() { + public void whenAddAllToSpecifiedIndex_thenExceptionIsThrown() { Collection collection = new ArrayList<>(); List list = new CustomList<>(); list.addAll(0, collection); } @Test(expected = UnsupportedOperationException.class) - public void givenRemoveAtSpecifiedIndexImpl_whenCycle1_thenPasses() { + public void whenRemoveAtSpecifiedIndex_thenExceptionIsThrown() { List list = new CustomList<>(); list.add("baeldung"); list.remove(0); } @Test(expected = UnsupportedOperationException.class) - public void givenRemoveSpecifiedElementImpl_whenCycle1_thenPasses() { + public void whenRemoveSpecifiedElement_thenExceptionIsThrown() { List list = new CustomList<>(); list.add("baeldung"); list.remove("baeldung"); } @Test(expected = UnsupportedOperationException.class) - public void givenRemoveAllImpl_whenCycle1_thenPasses() { + public void whenRemoveAll_thenExceptionIsThrown() { Collection collection = new ArrayList<>(); collection.add("baeldung"); List list = new CustomList<>(); @@ -66,7 +56,7 @@ public class CustomListUnitTest { } @Test(expected = UnsupportedOperationException.class) - public void givenRetainAllImpl_whenCycle1_thenPasses() { + public void whenRetainAll_thenExceptionIsThrown() { Collection collection = new ArrayList<>(); collection.add("baeldung"); List list = new CustomList<>(); @@ -75,112 +65,31 @@ public class CustomListUnitTest { } @Test - public void givenSizeImpl_whenCycle1_thenPasses() { + public void whenSize_thenNumberOfElementsIsReturned() { List list = new CustomList<>(); assertEquals(0, list.size()); } @Test - public void givenIsEmptyImpl_whenCycle1_thenPasses() { + public void whenIsEmpty_thenWhetherListIsEmptyIsReturned() { List list = new CustomList<>(); assertTrue(list.isEmpty()); } @Test - public void givenContainsImpl_whenCycle1_thenPasses() { + public void whenAddToTheEndAndGet_thenAddedElementIsReturned() { List list = new CustomList<>(); - list.add("baeldung"); - - assertTrue(list.contains("baeldung")); - } - - @Test - public void givenContainsAllImpl_whenCycle1_thenPasses() { - Collection collection = new ArrayList<>(); - collection.add("baeldung"); - List list = new CustomList<>(); - list.add("baeldung"); - - assertTrue(list.containsAll(collection)); - } - - @Test - public void givenSetImpl_whenCycle1_thenPasses() { - List list = new CustomList<>(); - list.add("baeldung"); - Object element = list.set(0, null); + boolean succeeded = list.add("baeldung"); + Object element = list.get(0); + assertTrue(succeeded); assertEquals("baeldung", element); - assertNull(list.get(0)); } @Test - public void givenClearImpl_whenCycle1_thenPasses() { - List list = new CustomList<>(); - list.add("baeldung"); - list.clear(); - - assertTrue(list.isEmpty()); - } - - @Test - public void givenIndexOfImpl_whenCycle1_thenPasses() { - List list = new CustomList<>(); - list.add("baeldung"); - - assertEquals(0, list.indexOf("baeldung")); - } - - @Test - public void givenLastIndexOfImpl_whenCycle1_thenPasses() { - List list = new CustomList<>(); - list.add("baeldung"); - - assertEquals(0, list.lastIndexOf("baeldung")); - } - - @Test - public void givenSubListImpl_whenCycle1_thenPasses() { - List list = new CustomList<>(); - list.add("baeldung"); - List subList = list.subList(0, 1); - - assertEquals("baeldung", subList.get(0)); - } - - @Test - public void givenToNewArrayImpl_whenCycle1_thenPasses() { - List list = new CustomList<>(); - list.add("baeldung"); - Object[] array = list.toArray(); - - assertEquals("baeldung", array[0]); - } - - @Test - public void givenToExistingArrayImpl_whenCycle1_thenPasses() { - List list = new CustomList<>(); - list.add("baeldung"); - String[] input = new String[1]; - String[] output = list.toArray(input); - - assertEquals("baeldung", output[0]); - } - - @Test - public void givenIteratorImpl_whenCycle1_thenPasses() { - List list = new CustomList<>(); - list.add("baeldung"); - Iterator iterator = list.iterator(); - - assertTrue(iterator.hasNext()); - assertEquals("baeldung", iterator.next()); - } - - @Test - public void givenAddToTheEndAndGetImpl_whenCycle2_thenPasses() { + public void whenAddToTheEndAndGet_thenAddedElemenetsAreReturned() { List list = new CustomList<>(); boolean succeeded1 = list.add("baeldung"); boolean succeeded2 = list.add(".com"); @@ -194,16 +103,32 @@ public class CustomListUnitTest { } @Test - public void givenContainsImpl_whenCycle2_thenPasses() { + public void whenContains_thenFalseIsReturned() { List list = new CustomList<>(); - assertFalse(list.contains("baeldung")); + assertFalse(list.contains("baeldung")); + } + + @Test + public void whenContains_thenTrueIsReturned() { + List list = new CustomList<>(); list.add("baeldung"); + assertTrue(list.contains("baeldung")); } @Test - public void givenContainsAllImpl_whenCycle2_thenPasses() { + public void whenContainsAll_thenTrueIsReturned() { + Collection collection = new ArrayList<>(); + collection.add("baeldung"); + List list = new CustomList<>(); + list.add("baeldung"); + + assertTrue(list.containsAll(collection)); + } + + @Test + public void whenContainsAll_thenEitherTrueOfFalseIsReturned() { Collection collection1 = new ArrayList<>(); collection1.add("baeldung"); collection1.add(".com"); @@ -218,7 +143,34 @@ public class CustomListUnitTest { } @Test - public void givenIndexOfImpl_whenCycle2_thenPasses() { + public void whenSet_thenOldElementIsReturned() { + List list = new CustomList<>(); + list.add("baeldung"); + Object element = list.set(0, null); + + assertEquals("baeldung", element); + assertNull(list.get(0)); + } + + @Test + public void whenClear_thenAllElementsAreRemoved() { + List list = new CustomList<>(); + list.add("baeldung"); + list.clear(); + + assertTrue(list.isEmpty()); + } + + @Test + public void whenIndexOf_thenIndexZeroIsReturned() { + List list = new CustomList<>(); + list.add("baeldung"); + + assertEquals(0, list.indexOf("baeldung")); + } + + @Test + public void whenIndexOf_thenPositiveOrNegativeIndexIsReturned() { List list = new CustomList<>(); list.add("baeldung"); list.add(".com"); @@ -229,7 +181,15 @@ public class CustomListUnitTest { } @Test - public void givenLastIndexOfImpl_whenCycle2_thenPasses() { + public void whenLastIndexOf_thenIndexZeroIsReturned() { + List list = new CustomList<>(); + list.add("baeldung"); + + assertEquals(0, list.lastIndexOf("baeldung")); + } + + @Test + public void whenLastIndexOf_thenPositiveOrNegativeIndexIsReturned() { List list = new CustomList<>(); list.add("baeldung"); list.add("baeldung"); @@ -240,7 +200,16 @@ public class CustomListUnitTest { } @Test - public void givenSubListImpl_whenCycle2_thenPasses() { + public void whenSubList_thenListContainingFirstElementIsReturned() { + List list = new CustomList<>(); + list.add("baeldung"); + List subList = list.subList(0, 1); + + assertEquals("baeldung", subList.get(0)); + } + + @Test + public void whenSubList_thenListContainingSecondElementIsReturned() { List list = new CustomList<>(); list.add("baeldung"); list.add("."); @@ -252,7 +221,26 @@ public class CustomListUnitTest { } @Test - public void givenToExistingArrayImpl_whenCycle2_thenPasses() { + public void whenToNewArray_thenArrayIsReturned() { + List list = new CustomList<>(); + list.add("baeldung"); + Object[] array = list.toArray(); + + assertEquals("baeldung", array[0]); + } + + @Test + public void whenToArray_thenOldArrayIsReturned() { + List list = new CustomList<>(); + list.add("baeldung"); + String[] input = new String[1]; + String[] output = list.toArray(input); + + assertArrayEquals(new String[] { "baeldung" }, input); + } + + @Test + public void whenToArray_thenNewArrayIsReturned() { List list = new CustomList<>(); list.add("baeldung"); String[] input = {}; @@ -262,7 +250,27 @@ public class CustomListUnitTest { } @Test - public void givenIteratorImpl_whenCycle2_thenPasses() { + public void whenToArray_thenNewArrayWithTrailingNullIsReturned() { + List list = new CustomList<>(); + list.add("baeldung"); + String[] input = new String[2]; + String[] output = list.toArray(input); + + assertArrayEquals(new String[] { "baeldung", null }, output); + } + + @Test + public void whenIterator_thenOneCheckIsCorrect() { + List list = new CustomList<>(); + list.add("baeldung"); + Iterator iterator = list.iterator(); + + assertTrue(iterator.hasNext()); + assertEquals("baeldung", iterator.next()); + } + + @Test + public void whenIterator_thenTwoChecksAreCorrect() { List list = new CustomList<>(); list.add("baeldung"); Iterator iterator = list.iterator(); @@ -271,14 +279,4 @@ public class CustomListUnitTest { assertEquals("baeldung", iterator.next()); assertFalse(iterator.hasNext()); } - - @Test - public void givenToExistingArrayImpl_whenCycle3_thenPasses() { - List list = new CustomList<>(); - list.add("baeldung"); - String[] input = new String[2]; - String[] output = list.toArray(input); - - assertArrayEquals(new String[] { "baeldung", null }, output); - } } From 77735a57fd196e683dfb49c0c8deedab652d2bcf Mon Sep 17 00:00:00 2001 From: kwandzel Date: Sat, 17 Feb 2018 16:59:50 +0100 Subject: [PATCH 126/391] improvements, additional security dialect --- .../springsecuritythymeleaf/SecurityConfiguration.java | 7 +++---- .../baeldung/springsecuritythymeleaf/ViewController.java | 8 ++++---- .../src/main/resources/templates/index.html | 3 +++ .../src/main/resources/templates/login.html | 2 +- 4 files changed, 11 insertions(+), 9 deletions(-) diff --git a/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SecurityConfiguration.java b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SecurityConfiguration.java index 185093adfa..9c734a6b2d 100644 --- a/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SecurityConfiguration.java +++ b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SecurityConfiguration.java @@ -30,9 +30,8 @@ public class SecurityConfiguration extends WebSecurityConfigurerAdapter { @Autowired public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception { - auth - .inMemoryAuthentication() - .withUser("user").password("password").roles("USER").and() - .withUser("admin").password("admin").roles("ADMIN"); + auth.inMemoryAuthentication() + .withUser("user").password("password").roles("USER").and() + .withUser("admin").password("admin").roles("ADMIN"); } } diff --git a/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/ViewController.java b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/ViewController.java index 2f2fa69608..81b891dad8 100644 --- a/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/ViewController.java +++ b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/ViewController.java @@ -5,17 +5,17 @@ import org.springframework.web.bind.annotation.RequestMapping; @Controller public class ViewController { - + @RequestMapping("/login") public String login() { return "login"; } - - @RequestMapping({"/index", "/"}) + + @RequestMapping({ "/index", "/" }) public String index() { return "index"; } - + @RequestMapping("/loginError") public String loginError() { return "loginError"; diff --git a/spring-security-thymeleaf/src/main/resources/templates/index.html b/spring-security-thymeleaf/src/main/resources/templates/index.html index 6cbc8f867e..c127f7c663 100644 --- a/spring-security-thymeleaf/src/main/resources/templates/index.html +++ b/spring-security-thymeleaf/src/main/resources/templates/index.html @@ -8,5 +8,8 @@

Spring Security Thymeleaf tutorial

Text visible to user.
Text visible to admin.
+
Text visible only to authenticated users.
+ Authenticated username:
+ Authenticated user roles:
\ No newline at end of file diff --git a/spring-security-thymeleaf/src/main/resources/templates/login.html b/spring-security-thymeleaf/src/main/resources/templates/login.html index 49cbedabf2..92cade03ec 100644 --- a/spring-security-thymeleaf/src/main/resources/templates/login.html +++ b/spring-security-thymeleaf/src/main/resources/templates/login.html @@ -1,7 +1,7 @@ -Insert title here +Custom Login Page

Custom Login Page

From 1b18720fb3394179707a9087cf6308b808b3a66a Mon Sep 17 00:00:00 2001 From: kornelihno Date: Sat, 17 Feb 2018 17:26:45 +0100 Subject: [PATCH 127/391] Delete Boat.java --- .../com/baeldung/beaninjectiontypes/Boat.java | 19 ------------------- 1 file changed, 19 deletions(-) delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/Boat.java diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Boat.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Boat.java deleted file mode 100644 index a7138aff40..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Boat.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Component -public class Boat { - - private Engine engine; - - @Autowired - public void setEngine(Engine engine) { - this.engine = engine; - } - - public Engine getEngine() { - return engine; - } -} From c0220b2a3404340462eaf0381f529ca125e00a57 Mon Sep 17 00:00:00 2001 From: kornelihno Date: Sat, 17 Feb 2018 17:27:43 +0100 Subject: [PATCH 128/391] Delete Car.java --- .../com/baeldung/beaninjectiontypes/Car.java | 18 ------------------ 1 file changed, 18 deletions(-) delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/Car.java diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Car.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Car.java deleted file mode 100644 index d943a0a839..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Car.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Component -public class Car { - @Autowired - private Engine engine; - - public void setEngine(Engine engine) { - this.engine = engine; - } - - public Engine getEngine() { - return engine; - } -} From 3148bebd72ff18eeda2cec17f4d2708a60b1a90a Mon Sep 17 00:00:00 2001 From: kornelihno Date: Sat, 17 Feb 2018 17:28:02 +0100 Subject: [PATCH 129/391] Delete Config.java --- .../java/com/baeldung/beaninjectiontypes/Config.java | 10 ---------- 1 file changed, 10 deletions(-) delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java deleted file mode 100644 index 928ea1d794..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Config.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import org.springframework.context.annotation.ComponentScan; -import org.springframework.context.annotation.Configuration; - -@Configuration -@ComponentScan("com.baeldung.beaninjectiontypes") -public class Config { - -} From 15481af880feaf4e60f40a89536e4a0a99331ba8 Mon Sep 17 00:00:00 2001 From: kornelihno Date: Sat, 17 Feb 2018 17:28:10 +0100 Subject: [PATCH 130/391] Delete Engine.java --- .../main/java/com/baeldung/beaninjectiontypes/Engine.java | 8 -------- 1 file changed, 8 deletions(-) delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/Engine.java diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Engine.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Engine.java deleted file mode 100644 index 71c9a5855b..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Engine.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import org.springframework.stereotype.Component; - -@Component -public class Engine { - -} From 34cbaab012ca092d4b659d838002218011b6c03e Mon Sep 17 00:00:00 2001 From: kornelihno Date: Sat, 17 Feb 2018 17:28:19 +0100 Subject: [PATCH 131/391] Delete LawnMower.java --- .../beaninjectiontypes/LawnMower.java | 19 ------------------- 1 file changed, 19 deletions(-) delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/LawnMower.java diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/LawnMower.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/LawnMower.java deleted file mode 100644 index 19b71bf8d3..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/LawnMower.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Component -public class LawnMower { - - @Autowired - private Engine engine; - - public LawnMower(Engine engine) { - this.engine = engine; - } - - public Engine getEngine() { - return engine; - } -} From 099678fd50c4042c46657fcec3e7c747520cca70 Mon Sep 17 00:00:00 2001 From: kornelihno Date: Sat, 17 Feb 2018 17:28:30 +0100 Subject: [PATCH 132/391] Delete Rocket.java --- .../baeldung/beaninjectiontypes/Rocket.java | 20 ------------------- 1 file changed, 20 deletions(-) delete mode 100644 spring-core/src/main/java/com/baeldung/beaninjectiontypes/Rocket.java diff --git a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Rocket.java b/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Rocket.java deleted file mode 100644 index 7bfbc6fc01..0000000000 --- a/spring-core/src/main/java/com/baeldung/beaninjectiontypes/Rocket.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -@Component -public class Rocket { - - private Engine engine; - - @Autowired - public Rocket(Engine engine) { - this.engine = engine; - } - - public Engine getEngine() { - return engine; - } - -} From f9d3687435bedd6325e7b96578f4ee9511ed9fcb Mon Sep 17 00:00:00 2001 From: kornelihno Date: Sat, 17 Feb 2018 17:32:46 +0100 Subject: [PATCH 133/391] adding module --- pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/pom.xml b/pom.xml index ca6d4afe82..ea20aebde0 100644 --- a/pom.xml +++ b/pom.xml @@ -279,6 +279,7 @@ lucene vraptor persistence-modules/java-cockroachdb + spring-security-thymeleaf From 5b4d0fb58391ac180776dc12a3d717f935a4fbe5 Mon Sep 17 00:00:00 2001 From: kornelihno Date: Sat, 17 Feb 2018 17:38:05 +0100 Subject: [PATCH 134/391] Delete BoatTest.java --- .../baeldung/beaninjectiontypes/BoatTest.java | 23 ------------------- 1 file changed, 23 deletions(-) delete mode 100644 spring-core/src/test/java/com/baeldung/beaninjectiontypes/BoatTest.java diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BoatTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BoatTest.java deleted file mode 100644 index 1ffe6a752f..0000000000 --- a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/BoatTest.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import static org.junit.Assert.assertNotNull; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration(classes = Config.class) -public class BoatTest { - - @Autowired - Boat boat; - - @Test - public void givenAutowired_whenOnSetter_thenInjected() { - assertNotNull(boat); - assertNotNull(boat.getEngine()); - } -} From 250feb50a05e46475911f15de129b9a92532d085 Mon Sep 17 00:00:00 2001 From: kornelihno Date: Sat, 17 Feb 2018 17:38:14 +0100 Subject: [PATCH 135/391] Delete CarTest.java --- .../baeldung/beaninjectiontypes/CarTest.java | 23 ------------------- 1 file changed, 23 deletions(-) delete mode 100644 spring-core/src/test/java/com/baeldung/beaninjectiontypes/CarTest.java diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/CarTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/CarTest.java deleted file mode 100644 index 7bb9b31dde..0000000000 --- a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/CarTest.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import static org.junit.Assert.assertNotNull; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration(classes = Config.class) -public class CarTest { - - @Autowired - Car car; - - @Test - public void givenAutowired_whenOnField_thenSetterInjected() { - assertNotNull(car); - assertNotNull(car.getEngine()); - } -} From 2e65942cb25a98e5a75d8bab18c9f019f261309e Mon Sep 17 00:00:00 2001 From: kornelihno Date: Sat, 17 Feb 2018 17:38:23 +0100 Subject: [PATCH 136/391] Delete LawnMowerTest.java --- .../beaninjectiontypes/LawnMowerTest.java | 23 ------------------- 1 file changed, 23 deletions(-) delete mode 100644 spring-core/src/test/java/com/baeldung/beaninjectiontypes/LawnMowerTest.java diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/LawnMowerTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/LawnMowerTest.java deleted file mode 100644 index f59ef05247..0000000000 --- a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/LawnMowerTest.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import static org.junit.Assert.assertNotNull; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration(classes = Config.class) -public class LawnMowerTest { - - @Autowired - LawnMower lawnMower; - - @Test - public void givenAutowired_whenOnField_thenConstructorInjected() { - assertNotNull(lawnMower); - assertNotNull(lawnMower.getEngine()); - } -} From e60ed53788f84aa0c8fbdbccce5687d3d0868f81 Mon Sep 17 00:00:00 2001 From: kornelihno Date: Sat, 17 Feb 2018 17:38:30 +0100 Subject: [PATCH 137/391] Delete RocketTest.java --- .../beaninjectiontypes/RocketTest.java | 23 ------------------- 1 file changed, 23 deletions(-) delete mode 100644 spring-core/src/test/java/com/baeldung/beaninjectiontypes/RocketTest.java diff --git a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/RocketTest.java b/spring-core/src/test/java/com/baeldung/beaninjectiontypes/RocketTest.java deleted file mode 100644 index 4723cc450e..0000000000 --- a/spring-core/src/test/java/com/baeldung/beaninjectiontypes/RocketTest.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.baeldung.beaninjectiontypes; - -import static org.junit.Assert.assertNotNull; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration(classes = Config.class) -public class RocketTest { - - @Autowired - Rocket rocket; - - @Test - public void givenAutowired_whenOnConstructor_thenInjected() { - assertNotNull(rocket); - assertNotNull(rocket.getEngine()); - } -} From b63caab3976ce6c8abed41d3bec15183e24e8c58 Mon Sep 17 00:00:00 2001 From: andrea Date: Sat, 17 Feb 2018 18:30:36 +0100 Subject: [PATCH 138/391] . --- .../DecimalFormatExamplesTest.java | 116 ++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesTest.java diff --git a/core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesTest.java b/core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesTest.java new file mode 100644 index 0000000000..8acd4e023e --- /dev/null +++ b/core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesTest.java @@ -0,0 +1,116 @@ +package com.baeldung.decimalformat; + +import static org.assertj.core.api.Assertions.assertThat; + +import java.math.BigDecimal; +import java.text.DecimalFormat; +import java.text.DecimalFormatSymbols; +import java.text.NumberFormat; +import java.text.ParseException; +import java.util.Locale; + +import org.junit.Test; + +public class DecimalFormatExamplesTest { + + double d = 1234567.89; + + @Test + public void givenSimpleDecimal_WhenFormatting_ThenCorrectOutput() { + + assertThat(new DecimalFormat("#.##", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1234567.89"); + + assertThat(new DecimalFormat("0.00", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1234567.89"); + + assertThat(new DecimalFormat("#########.###", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1234567.89"); + + assertThat(new DecimalFormat("000000000.000", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("001234567.890"); + + } + + @Test + public void givenSmallerDecimalPattern_WhenFormatting_ThenRounding() { + + assertThat(new DecimalFormat("#.#", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)).isEqualTo("1234567.9"); + + assertThat(new DecimalFormat("#", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)).isEqualTo("1234568"); + + } + + @Test + public void givenGroupingSeparator_WhenFormatting_ThenGroupedOutput() { + + assertThat(new DecimalFormat("#,###.#", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1,234,567.9"); + + assertThat(new DecimalFormat("#,###", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1,234,568"); + + } + + @Test + public void givenMixedPattern_WhenFormatting_ThenCorrectOutput() { + + assertThat(new DecimalFormat("The # number", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("The 1234568 number"); + + assertThat(new DecimalFormat("The '#' # number", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("The # 1234568 number"); + + } + + @Test + public void givenLocales_WhenFormatting_ThenCorrectOutput() { + + assertThat(new DecimalFormat("#,###.##", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1,234,567.89"); + + assertThat(new DecimalFormat("#,###.##", new DecimalFormatSymbols(Locale.ITALIAN)).format(d)) + .isEqualTo("1.234.567,89"); + + assertThat(new DecimalFormat("#,###.##", DecimalFormatSymbols.getInstance(new Locale("it", "IT"))).format(d)) + .isEqualTo("1.234.567,89"); + + } + + @Test + public void givenE_WhenFormatting_ThenScientificNotation() { + + assertThat(new DecimalFormat("00.#######E0", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("12.3456789E5"); + + assertThat(new DecimalFormat("000.000000E0", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("123.456789E4"); + + assertThat(new DecimalFormat("##0.######E0", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1.23456789E6"); + + assertThat(new DecimalFormat("###.000000E0", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1.23456789E6"); + + } + + @Test + public void givenString_WhenParsing_ThenCorrectOutput() throws ParseException { + + assertThat(new DecimalFormat("", new DecimalFormatSymbols(Locale.ENGLISH)).parse("1234567.89")) + .isEqualTo(1234567.89); + + assertThat(new DecimalFormat("", new DecimalFormatSymbols(Locale.ITALIAN)).parse("1.234.567,89")) + .isEqualTo(1234567.89); + + } + + @Test + public void givenStringAndBigDecimalFlag_WhenParsing_ThenCorrectOutput() throws ParseException { + + NumberFormat nf = new DecimalFormat("", new DecimalFormatSymbols(Locale.ENGLISH)); + ((DecimalFormat) nf).setParseBigDecimal(true); + assertThat(nf.parse("1234567.89")).isEqualTo(BigDecimal.valueOf(1234567.89)); + } + +} From 2a127b3df3e9225b5e8eab5d1bf1b124a7326fff Mon Sep 17 00:00:00 2001 From: Andrea Ligios Date: Sat, 17 Feb 2018 21:40:01 +0100 Subject: [PATCH 139/391] . (#3687) --- .../DecimalFormatExamplesTest.java | 116 ++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesTest.java diff --git a/core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesTest.java b/core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesTest.java new file mode 100644 index 0000000000..8acd4e023e --- /dev/null +++ b/core-java/src/test/java/com/baeldung/decimalformat/DecimalFormatExamplesTest.java @@ -0,0 +1,116 @@ +package com.baeldung.decimalformat; + +import static org.assertj.core.api.Assertions.assertThat; + +import java.math.BigDecimal; +import java.text.DecimalFormat; +import java.text.DecimalFormatSymbols; +import java.text.NumberFormat; +import java.text.ParseException; +import java.util.Locale; + +import org.junit.Test; + +public class DecimalFormatExamplesTest { + + double d = 1234567.89; + + @Test + public void givenSimpleDecimal_WhenFormatting_ThenCorrectOutput() { + + assertThat(new DecimalFormat("#.##", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1234567.89"); + + assertThat(new DecimalFormat("0.00", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1234567.89"); + + assertThat(new DecimalFormat("#########.###", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1234567.89"); + + assertThat(new DecimalFormat("000000000.000", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("001234567.890"); + + } + + @Test + public void givenSmallerDecimalPattern_WhenFormatting_ThenRounding() { + + assertThat(new DecimalFormat("#.#", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)).isEqualTo("1234567.9"); + + assertThat(new DecimalFormat("#", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)).isEqualTo("1234568"); + + } + + @Test + public void givenGroupingSeparator_WhenFormatting_ThenGroupedOutput() { + + assertThat(new DecimalFormat("#,###.#", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1,234,567.9"); + + assertThat(new DecimalFormat("#,###", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1,234,568"); + + } + + @Test + public void givenMixedPattern_WhenFormatting_ThenCorrectOutput() { + + assertThat(new DecimalFormat("The # number", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("The 1234568 number"); + + assertThat(new DecimalFormat("The '#' # number", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("The # 1234568 number"); + + } + + @Test + public void givenLocales_WhenFormatting_ThenCorrectOutput() { + + assertThat(new DecimalFormat("#,###.##", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1,234,567.89"); + + assertThat(new DecimalFormat("#,###.##", new DecimalFormatSymbols(Locale.ITALIAN)).format(d)) + .isEqualTo("1.234.567,89"); + + assertThat(new DecimalFormat("#,###.##", DecimalFormatSymbols.getInstance(new Locale("it", "IT"))).format(d)) + .isEqualTo("1.234.567,89"); + + } + + @Test + public void givenE_WhenFormatting_ThenScientificNotation() { + + assertThat(new DecimalFormat("00.#######E0", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("12.3456789E5"); + + assertThat(new DecimalFormat("000.000000E0", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("123.456789E4"); + + assertThat(new DecimalFormat("##0.######E0", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1.23456789E6"); + + assertThat(new DecimalFormat("###.000000E0", new DecimalFormatSymbols(Locale.ENGLISH)).format(d)) + .isEqualTo("1.23456789E6"); + + } + + @Test + public void givenString_WhenParsing_ThenCorrectOutput() throws ParseException { + + assertThat(new DecimalFormat("", new DecimalFormatSymbols(Locale.ENGLISH)).parse("1234567.89")) + .isEqualTo(1234567.89); + + assertThat(new DecimalFormat("", new DecimalFormatSymbols(Locale.ITALIAN)).parse("1.234.567,89")) + .isEqualTo(1234567.89); + + } + + @Test + public void givenStringAndBigDecimalFlag_WhenParsing_ThenCorrectOutput() throws ParseException { + + NumberFormat nf = new DecimalFormat("", new DecimalFormatSymbols(Locale.ENGLISH)); + ((DecimalFormat) nf).setParseBigDecimal(true); + assertThat(nf.parse("1234567.89")).isEqualTo(BigDecimal.valueOf(1234567.89)); + } + +} From 1b0e859d3a85970462c7daefc646e37155b87c0b Mon Sep 17 00:00:00 2001 From: Dassi orleando Date: Sun, 18 Feb 2018 00:08:19 +0100 Subject: [PATCH 140/391] BAEL-1273: RSS improvements with a custom model (#3665) * BAEL-1216: improve tests * BAEL-1448: Update Spring 5 articles to use the release version * Setting up the Maven Wrapper on a maven project * Add Maven Wrapper on spring-boot module * simple add * BAEL-976: Update spring version * BAEL-1273: Display RSS feed with spring mvc (AbstractRssFeedView) * Move RSS feed with Spring MVC from spring-boot to spring-mvc-simple * BAEL-1285: Update Jackson articles * BAEL-1273: implement both MVC and Rest approach to serve RSS content * RSS(XML & Json) with a custom model * BAEL-1273: remove a resource --- spring-mvc-simple/pom.xml | 24 ++++++++ .../ApplicationConfiguration.java | 30 ++++++++-- .../spring/controller/rss/ArticleFeed.java | 27 +++++++++ .../spring/controller/rss/ArticleItem.java | 25 +++++++++ .../controller/rss/ArticleRssController.java | 30 ++++------ .../spring/controller/rss/RssData.java | 56 +++++++++++++++++++ 6 files changed, 169 insertions(+), 23 deletions(-) create mode 100644 spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleFeed.java create mode 100644 spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleItem.java create mode 100644 spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/RssData.java diff --git a/spring-mvc-simple/pom.xml b/spring-mvc-simple/pom.xml index 595e58f5f3..e722573ab1 100644 --- a/spring-mvc-simple/pom.xml +++ b/spring-mvc-simple/pom.xml @@ -31,9 +31,16 @@ 5.0.2 1.0.2 1.9.0 + 2.9.4 + 1.4.9 + + org.springframework + spring-oxm + 5.0.2.RELEASE + javax.servlet javax.servlet-api @@ -121,6 +128,23 @@ rome ${rome.version} + + + com.fasterxml.jackson.core + jackson-databind + ${jackson.version} + + + com.fasterxml.jackson.dataformat + jackson-dataformat-xml + ${jackson.version} + + + + com.thoughtworks.xstream + xstream + ${xstream.version} + diff --git a/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/ApplicationConfiguration.java b/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/ApplicationConfiguration.java index 69c45d90b3..7f1182bb50 100644 --- a/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/ApplicationConfiguration.java +++ b/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/ApplicationConfiguration.java @@ -1,26 +1,33 @@ package com.baeldung.spring.configuration; import com.baeldung.spring.controller.rss.ArticleRssFeedViewResolver; +import com.fasterxml.jackson.dataformat.xml.XmlMapper; +import com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; +import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.http.converter.feed.RssChannelHttpMessageConverter; +import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; +import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; +import org.springframework.http.converter.xml.MappingJackson2XmlHttpMessageConverter; +import org.springframework.web.accept.ContentNegotiationManager; import org.springframework.web.multipart.MultipartResolver; import org.springframework.web.multipart.commons.CommonsMultipartResolver; import org.springframework.web.servlet.ViewResolver; import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer; import org.springframework.web.servlet.config.annotation.EnableWebMvc; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; import org.springframework.web.servlet.view.ContentNegotiatingViewResolver; import org.springframework.web.servlet.view.InternalResourceViewResolver; -import org.springframework.web.accept.ContentNegotiationManager; -import java.util.List; import java.util.ArrayList; +import java.util.List; @Configuration @EnableWebMvc @ComponentScan(basePackages = { "com.baeldung.springmvcforms", "com.baeldung.spring.controller", "com.baeldung.spring.validator" }) -class ApplicationConfiguration implements WebMvcConfigurer { +class ApplicationConfiguration extends WebMvcConfigurerAdapter { @Override public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) { @@ -49,4 +56,19 @@ class ApplicationConfiguration implements WebMvcConfigurer { multipartResolver.setMaxUploadSize(5242880); return multipartResolver; } + + @Override + public void configureMessageConverters(List> converters) { + Jackson2ObjectMapperBuilder builder = Jackson2ObjectMapperBuilder.xml(); + builder.indentOutput(true); + + XmlMapper xmlMapper = builder.createXmlMapper(true).build(); + xmlMapper.configure(ToXmlGenerator.Feature.WRITE_XML_DECLARATION, true); + + converters.add(new RssChannelHttpMessageConverter()); + converters.add(new MappingJackson2HttpMessageConverter()); + converters.add(new MappingJackson2XmlHttpMessageConverter(xmlMapper)); + + super.configureMessageConverters(converters); + } } diff --git a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleFeed.java b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleFeed.java new file mode 100644 index 0000000000..514c9a2353 --- /dev/null +++ b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleFeed.java @@ -0,0 +1,27 @@ +package com.baeldung.spring.controller.rss; + +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +@JacksonXmlRootElement(localName="articles") +public class ArticleFeed extends RssData implements Serializable { + + @JacksonXmlElementWrapper(localName = "items", useWrapping = true) + private List items = new ArrayList(); + + public void addItem(ArticleItem articleItem) { + this.items.add(articleItem); + } + + public List getItems() { + return items; + } + + public void setItems(List items) { + this.items = items; + } +} diff --git a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleItem.java b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleItem.java new file mode 100644 index 0000000000..01b2cde1ba --- /dev/null +++ b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleItem.java @@ -0,0 +1,25 @@ +package com.baeldung.spring.controller.rss; + +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; + +import java.io.Serializable; + +@JacksonXmlRootElement(localName="article") +public class ArticleItem extends RssData implements Serializable { + private String author; + + public String getAuthor() { + return author; + } + + public void setAuthor(String author) { + this.author = author; + } + + @Override + public String toString() { + return "ArticleItem{" + + "author='" + author + '\'' + + '}'; + } +} diff --git a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleRssController.java b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleRssController.java index 8f23076e8e..77b8aceb73 100644 --- a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleRssController.java +++ b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleRssController.java @@ -14,46 +14,38 @@ import java.util.List; @Controller public class ArticleRssController { - @GetMapping(value = "/rssMvc") + @GetMapping(value = "/rss1") public String articleMvcFeed() { return "articleFeedView"; } - @GetMapping(value = "/rssRest", produces = "application/rss+xml") + @GetMapping(value = "/rss2") @ResponseBody - public String articleRestFeed() throws FeedException { - SyndFeed feed = new SyndFeedImpl(); - feed.setFeedType("rss_2.0"); + public ArticleFeed articleRestFeed2() { + ArticleFeed feed = new ArticleFeed(); feed.setLink("http://localhost:8080/spring-mvc-simple/rss"); feed.setTitle("Article Feed"); feed.setDescription("Article Feed Description"); feed.setPublishedDate(new Date()); - List list = new ArrayList(); - - SyndEntry item1 = new SyndEntryImpl(); + ArticleItem item1 = new ArticleItem(); item1.setLink("http://www.baeldung.com/netty-exception-handling"); item1.setTitle("Exceptions in Netty"); - SyndContent description1 = new SyndContentImpl(); - description1.setValue("In this quick article, we’ll be looking at exception handling in Netty."); - item1.setDescription(description1); + item1.setDescription("In this quick article, we’ll be looking at exception handling in Netty."); item1.setPublishedDate(new Date()); item1.setAuthor("Carlos"); - SyndEntry item2 = new SyndEntryImpl(); + ArticleItem item2 = new ArticleItem(); item2.setLink("http://www.baeldung.com/cockroachdb-java"); item2.setTitle("Guide to CockroachDB in Java"); - SyndContent description2 = new SyndContentImpl(); - description2.setValue("This tutorial is an introductory guide to using CockroachDB with Java."); - item2.setDescription(description2); + item2.setDescription("This tutorial is an introductory guide to using CockroachDB with Java."); item2.setPublishedDate(new Date()); item2.setAuthor("Baeldung"); - list.add(item1); - list.add(item2); - feed.setEntries(list); + feed.addItem(item1); + feed.addItem(item2); - return new SyndFeedOutput().outputString(feed); + return feed; } } diff --git a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/RssData.java b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/RssData.java new file mode 100644 index 0000000000..258712eb2d --- /dev/null +++ b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/RssData.java @@ -0,0 +1,56 @@ +package com.baeldung.spring.controller.rss; + +import java.io.Serializable; +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.util.Date; + +public class RssData implements Serializable { + private String link; + private String title; + private String description; + private String publishedDate; + + public String getLink() { + return link; + } + + public void setLink(String link) { + this.link = link; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public String getPublishedDate() { + return publishedDate; + } + + public void setPublishedDate(Date publishedDate) { + DateFormat df = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss"); + this.publishedDate = df.format(publishedDate); + } + + @Override + public String toString() { + return "RssData{" + + "link='" + link + '\'' + + ", title='" + title + '\'' + + ", description='" + description + '\'' + + ", publishedDate=" + publishedDate + + '}'; + } +} From c1787cc07a3943885c3064fb08a7782c251b05d5 Mon Sep 17 00:00:00 2001 From: Nguyen Nam Thai Date: Sun, 18 Feb 2018 11:05:00 +0700 Subject: [PATCH 141/391] Change the test method names --- .../java/list/CustomListUnitTest.java | 48 +++++++++---------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java b/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java index 471d4f8a63..898ea02f16 100644 --- a/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java +++ b/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java @@ -65,21 +65,21 @@ public class CustomListUnitTest { } @Test - public void whenSize_thenNumberOfElementsIsReturned() { + public void givenEmptyList_whenSize_thenZeroIsReturned() { List list = new CustomList<>(); assertEquals(0, list.size()); } @Test - public void whenIsEmpty_thenWhetherListIsEmptyIsReturned() { + public void givenEmptyList_whenIsEmpty_thenTrueIsReturned() { List list = new CustomList<>(); assertTrue(list.isEmpty()); } @Test - public void whenAddToTheEndAndGet_thenAddedElementIsReturned() { + public void givenEmptyList_whenElementIsAdded_thenGetReturnsThatElement() { List list = new CustomList<>(); boolean succeeded = list.add("baeldung"); Object element = list.get(0); @@ -89,7 +89,7 @@ public class CustomListUnitTest { } @Test - public void whenAddToTheEndAndGet_thenAddedElemenetsAreReturned() { + public void givenListWithAnElement_whenAnotherIsAdded_thenGetReturnsBoth() { List list = new CustomList<>(); boolean succeeded1 = list.add("baeldung"); boolean succeeded2 = list.add(".com"); @@ -103,14 +103,14 @@ public class CustomListUnitTest { } @Test - public void whenContains_thenFalseIsReturned() { + public void givenEmptyList_whenContains_thenFalseIsReturned() { List list = new CustomList<>(); - assertFalse(list.contains("baeldung")); + assertFalse(list.contains(null)); } @Test - public void whenContains_thenTrueIsReturned() { + public void givenListWithAnElement_whenContains_thenTrueIsReturned() { List list = new CustomList<>(); list.add("baeldung"); @@ -118,7 +118,7 @@ public class CustomListUnitTest { } @Test - public void whenContainsAll_thenTrueIsReturned() { + public void givenListWithAnElement_whenContainsAll_thenTrueIsReturned() { Collection collection = new ArrayList<>(); collection.add("baeldung"); List list = new CustomList<>(); @@ -128,7 +128,7 @@ public class CustomListUnitTest { } @Test - public void whenContainsAll_thenEitherTrueOfFalseIsReturned() { + public void givenList_whenContainsAll_thenEitherTrueOrFalseIsReturned() { Collection collection1 = new ArrayList<>(); collection1.add("baeldung"); collection1.add(".com"); @@ -143,7 +143,7 @@ public class CustomListUnitTest { } @Test - public void whenSet_thenOldElementIsReturned() { + public void givenList_whenSet_thenOldElementIsReturned() { List list = new CustomList<>(); list.add("baeldung"); Object element = list.set(0, null); @@ -153,7 +153,7 @@ public class CustomListUnitTest { } @Test - public void whenClear_thenAllElementsAreRemoved() { + public void givenList_whenClear_thenAllElementsAreRemoved() { List list = new CustomList<>(); list.add("baeldung"); list.clear(); @@ -162,7 +162,7 @@ public class CustomListUnitTest { } @Test - public void whenIndexOf_thenIndexZeroIsReturned() { + public void givenList_whenIndexOf_thenIndexZeroIsReturned() { List list = new CustomList<>(); list.add("baeldung"); @@ -170,7 +170,7 @@ public class CustomListUnitTest { } @Test - public void whenIndexOf_thenPositiveOrNegativeIndexIsReturned() { + public void givenList_whenIndexOf_thenPositiveIndexOrMinusOneIsReturned() { List list = new CustomList<>(); list.add("baeldung"); list.add(".com"); @@ -189,7 +189,7 @@ public class CustomListUnitTest { } @Test - public void whenLastIndexOf_thenPositiveOrNegativeIndexIsReturned() { + public void whenLastIndexOf_thenPositiveIndexOrMinusOneIsReturned() { List list = new CustomList<>(); list.add("baeldung"); list.add("baeldung"); @@ -200,7 +200,7 @@ public class CustomListUnitTest { } @Test - public void whenSubList_thenListContainingFirstElementIsReturned() { + public void whenSubListZeroToOne_thenListContainingFirstElementIsReturned() { List list = new CustomList<>(); list.add("baeldung"); List subList = list.subList(0, 1); @@ -209,7 +209,7 @@ public class CustomListUnitTest { } @Test - public void whenSubList_thenListContainingSecondElementIsReturned() { + public void whenSubListOneToTwo_thenListContainingSecondElementIsReturned() { List list = new CustomList<>(); list.add("baeldung"); list.add("."); @@ -221,16 +221,17 @@ public class CustomListUnitTest { } @Test - public void whenToNewArray_thenArrayIsReturned() { + public void givenListWithElements_whenToArray_thenArrayContainsThose() { List list = new CustomList<>(); list.add("baeldung"); + list.add(".com"); Object[] array = list.toArray(); - assertEquals("baeldung", array[0]); + assertArrayEquals(new Object[] { "baeldung", ".com" }, array); } @Test - public void whenToArray_thenOldArrayIsReturned() { + public void givenListWithAnElement_whenToArray_thenInputArrayIsReturned() { List list = new CustomList<>(); list.add("baeldung"); String[] input = new String[1]; @@ -240,7 +241,7 @@ public class CustomListUnitTest { } @Test - public void whenToArray_thenNewArrayIsReturned() { + public void whenToArrayIsCalledWithEmptyInputArray_thenNewArrayIsReturned() { List list = new CustomList<>(); list.add("baeldung"); String[] input = {}; @@ -250,7 +251,7 @@ public class CustomListUnitTest { } @Test - public void whenToArray_thenNewArrayWithTrailingNullIsReturned() { + public void whenToArrayIsCalledWithLargerInput_thenOutputHasTrailingNull() { List list = new CustomList<>(); list.add("baeldung"); String[] input = new String[2]; @@ -260,7 +261,7 @@ public class CustomListUnitTest { } @Test - public void whenIterator_thenOneCheckIsCorrect() { + public void givenListWithOneElement_whenIterator_thenThisElementIsNext() { List list = new CustomList<>(); list.add("baeldung"); Iterator iterator = list.iterator(); @@ -270,13 +271,12 @@ public class CustomListUnitTest { } @Test - public void whenIterator_thenTwoChecksAreCorrect() { + public void whenIteratorNextIsCalledTwice_thenTheSecondReturnsFalse() { List list = new CustomList<>(); list.add("baeldung"); Iterator iterator = list.iterator(); assertTrue(iterator.hasNext()); - assertEquals("baeldung", iterator.next()); assertFalse(iterator.hasNext()); } } From 7debccf695d29cbdae221bd8b8795cc9073588cf Mon Sep 17 00:00:00 2001 From: Nguyen Nam Thai Date: Sun, 18 Feb 2018 11:08:00 +0700 Subject: [PATCH 142/391] Fix a test --- .../test/java/com/baeldung/java/list/CustomListUnitTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java b/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java index 898ea02f16..3ee3195e80 100644 --- a/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java +++ b/core-java/src/test/java/com/baeldung/java/list/CustomListUnitTest.java @@ -276,7 +276,7 @@ public class CustomListUnitTest { list.add("baeldung"); Iterator iterator = list.iterator(); - assertTrue(iterator.hasNext()); + iterator.next(); assertFalse(iterator.hasNext()); } } From 5aa81d9be38c6f9398ff54406e9b953cfd3b8b51 Mon Sep 17 00:00:00 2001 From: Harsh Jain Date: Sun, 18 Feb 2018 12:19:44 +0530 Subject: [PATCH 143/391] BAEL-1526 : added exmaple unit test cases for string comparison --- .../baeldung/string/StringComparisonTest.java | 154 ++++++++++++++++++ 1 file changed, 154 insertions(+) create mode 100644 core-java/src/test/java/com/baeldung/string/StringComparisonTest.java diff --git a/core-java/src/test/java/com/baeldung/string/StringComparisonTest.java b/core-java/src/test/java/com/baeldung/string/StringComparisonTest.java new file mode 100644 index 0000000000..17b7f1f981 --- /dev/null +++ b/core-java/src/test/java/com/baeldung/string/StringComparisonTest.java @@ -0,0 +1,154 @@ +package com.baeldung.string; + +import org.apache.commons.lang3.StringUtils; +import org.junit.Test; + +import java.util.Objects; + +import static org.assertj.core.api.Assertions.assertThat; + +public class StringComparisonTest { + + @Test + public void whenUsingComparisonOperator_ThenComparingStrings(){ + + String string1 = "using comparison operator"; + String string2 = "using comparison operator"; + String string3 = new String("using comparison operator"); + + assertThat(string1 == string2).isTrue(); + assertThat(string1 == string3).isFalse(); + } + + @Test + public void whenUsingEqualsMethod_ThenComparingStrings(){ + + String string1 = "using equals method"; + String string2 = "using equals method"; + + String string3 = "using EQUALS method"; + String string4 = new String("using equals method"); + + assertThat(string1.equals(string2)).isTrue(); + assertThat(string1.equals(string4)).isTrue(); + + assertThat(string1.equals(null)).isFalse(); + assertThat(string1.equals(string3)).isFalse(); + } + + @Test + public void whenUsingEqualsIgnoreCase_ThenComparingStrings(){ + + String string1 = "using equals ignore case"; + String string2 = "USING EQUALS IGNORE CASE"; + + assertThat(string1.equalsIgnoreCase(string2)).isTrue(); + } + + @Test + public void whenUsingCompareTo_ThenComparingStrings(){ + + String Author = "author"; + String Book = "book"; + String duplicateBook = "book"; + + assertThat(Author.compareTo(Book)).isEqualTo(-1); + assertThat(Book.compareTo(Author)).isEqualTo(1); + assertThat(duplicateBook.compareTo(Book)).isEqualTo(0); + } + + @Test + public void whenUsingCompareToIgnoreCase_ThenComparingStrings(){ + + String Author = "Author"; + String Book = "book"; + String duplicateBook = "BOOK"; + + assertThat(Author.compareToIgnoreCase(Book)).isEqualTo(-1); + assertThat(Book.compareToIgnoreCase(Author)).isEqualTo(1); + assertThat(duplicateBook.compareToIgnoreCase(Book)).isEqualTo(0); + } + + @Test + public void whenUsingObjectsEqualsMethod_ThenComparingStrings(){ + + String string1 = "using objects equals"; + String string2 = "using objects equals"; + String string3 = new String("using objects equals"); + + assertThat(Objects.equals(string1, string2)).isTrue(); + assertThat(Objects.equals(string1, string3)).isTrue(); + + assertThat(Objects.equals(null, null)).isTrue(); + assertThat(Objects.equals(null, string1)).isFalse(); + } + + @Test + public void whenUsingEqualsOfApacheCommons_ThenComparingStrings(){ + + assertThat(StringUtils.equals(null, null)).isTrue(); + assertThat(StringUtils.equals(null, "equals method")).isFalse(); + assertThat(StringUtils.equals("equals method", "equals method")).isTrue(); + assertThat(StringUtils.equals("equals method", "EQUALS METHOD")).isFalse(); + } + + @Test + public void whenUsingEqualsIgnoreCaseOfApacheCommons_ThenComparingStrings(){ + + assertThat(StringUtils.equalsIgnoreCase(null, null)).isTrue(); + assertThat(StringUtils.equalsIgnoreCase(null, "equals method")).isFalse(); + assertThat(StringUtils.equalsIgnoreCase("equals method", "equals method")).isTrue(); + assertThat(StringUtils.equalsIgnoreCase("equals method", "EQUALS METHOD")).isTrue(); + } + + @Test + public void whenUsingEqualsAnyOf_ThenComparingStrings(){ + + assertThat(StringUtils.equalsAny(null, null, null)).isTrue(); + assertThat(StringUtils.equalsAny("equals any", "equals any", "any")).isTrue(); + assertThat(StringUtils.equalsAny("equals any", null, "equals any")).isTrue(); + assertThat(StringUtils.equalsAny(null, "equals", "any")).isFalse(); + assertThat(StringUtils.equalsAny("equals any", "EQUALS ANY", "ANY")).isFalse(); + } + + @Test + public void whenUsingEqualsAnyIgnoreCase_ThenComparingStrings(){ + + assertThat(StringUtils.equalsAnyIgnoreCase(null, null, null)).isTrue(); + assertThat(StringUtils.equalsAnyIgnoreCase("equals any", "equals any", "any")).isTrue(); + assertThat(StringUtils.equalsAnyIgnoreCase("equals any", null, "equals any")).isTrue(); + assertThat(StringUtils.equalsAnyIgnoreCase(null, "equals", "any")).isFalse(); + assertThat(StringUtils.equalsAnyIgnoreCase( + "equals any ignore case", "EQUALS ANY IGNORE CASE", "any")).isTrue(); + } + + @Test + public void whenUsingCompare_thenComparingStringsWithNulls(){ + + assertThat(StringUtils.compare(null, null)).isEqualTo(0); + assertThat(StringUtils.compare(null, "abc")).isEqualTo(-1); + + assertThat(StringUtils.compare("abc", "bbc")).isEqualTo(-1); + assertThat(StringUtils.compare("bbc", "abc")).isEqualTo(1); + assertThat(StringUtils.compare("abc", "abc")).isEqualTo(0); + } + + @Test + public void whenUsingCompareIgnoreCase_ThenComparingStringsWithNulls(){ + + assertThat(StringUtils.compareIgnoreCase(null, null)).isEqualTo(0); + assertThat(StringUtils.compareIgnoreCase(null, "abc")).isEqualTo(-1); + + assertThat(StringUtils.compareIgnoreCase("Abc", "bbc")).isEqualTo(-1); + assertThat(StringUtils.compareIgnoreCase("bbc", "ABC")).isEqualTo(1); + assertThat(StringUtils.compareIgnoreCase("abc", "ABC")).isEqualTo(0); + } + + @Test + public void whenUsingCompareWithNullIsLessOption_ThenComparingStrings(){ + + assertThat(StringUtils.compare(null, "abc", true)).isEqualTo(-1); + assertThat(StringUtils.compare(null, "abc", false)).isEqualTo(1); + } + +} From 476ed301f638b1b6f65e827934c384db17044a91 Mon Sep 17 00:00:00 2001 From: Loredana Crusoveanu Date: Sun, 18 Feb 2018 13:59:42 +0200 Subject: [PATCH 144/391] rename vars --- .../baeldung/string/StringComparisonTest.java | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/core-java/src/test/java/com/baeldung/string/StringComparisonTest.java b/core-java/src/test/java/com/baeldung/string/StringComparisonTest.java index 17b7f1f981..5869676004 100644 --- a/core-java/src/test/java/com/baeldung/string/StringComparisonTest.java +++ b/core-java/src/test/java/com/baeldung/string/StringComparisonTest.java @@ -48,25 +48,25 @@ public class StringComparisonTest { @Test public void whenUsingCompareTo_ThenComparingStrings(){ - String Author = "author"; - String Book = "book"; + String author = "author"; + String book = "book"; String duplicateBook = "book"; - assertThat(Author.compareTo(Book)).isEqualTo(-1); - assertThat(Book.compareTo(Author)).isEqualTo(1); - assertThat(duplicateBook.compareTo(Book)).isEqualTo(0); + assertThat(author.compareTo(book)).isEqualTo(-1); + assertThat(book.compareTo(author)).isEqualTo(1); + assertThat(duplicateBook.compareTo(book)).isEqualTo(0); } @Test public void whenUsingCompareToIgnoreCase_ThenComparingStrings(){ - String Author = "Author"; - String Book = "book"; + String author = "Author"; + String book = "book"; String duplicateBook = "BOOK"; - assertThat(Author.compareToIgnoreCase(Book)).isEqualTo(-1); - assertThat(Book.compareToIgnoreCase(Author)).isEqualTo(1); - assertThat(duplicateBook.compareToIgnoreCase(Book)).isEqualTo(0); + assertThat(author.compareToIgnoreCase(book)).isEqualTo(-1); + assertThat(book.compareToIgnoreCase(author)).isEqualTo(1); + assertThat(duplicateBook.compareToIgnoreCase(book)).isEqualTo(0); } @Test From 76dbe454f5370e56a827aa527fd6b0cda7986f04 Mon Sep 17 00:00:00 2001 From: DOHA Date: Sun, 18 Feb 2018 14:18:20 +0200 Subject: [PATCH 145/391] add verify signature --- .../org/baeldung/security/OpenIdConnectFilter.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/spring-security-openid/src/main/java/org/baeldung/security/OpenIdConnectFilter.java b/spring-security-openid/src/main/java/org/baeldung/security/OpenIdConnectFilter.java index c0970ab3cf..ddae3ceeab 100644 --- a/spring-security-openid/src/main/java/org/baeldung/security/OpenIdConnectFilter.java +++ b/spring-security-openid/src/main/java/org/baeldung/security/OpenIdConnectFilter.java @@ -1,12 +1,14 @@ package org.baeldung.security; import java.io.IOException; +import java.math.BigInteger; import java.util.Map; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.commons.codec.binary.Base64; import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.authentication.BadCredentialsException; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; @@ -14,6 +16,7 @@ import org.springframework.security.core.Authentication; import org.springframework.security.core.AuthenticationException; import org.springframework.security.jwt.Jwt; import org.springframework.security.jwt.JwtHelper; +import org.springframework.security.jwt.crypto.sign.RsaVerifier; import org.springframework.security.oauth2.client.OAuth2RestOperations; import org.springframework.security.oauth2.client.OAuth2RestTemplate; import org.springframework.security.oauth2.common.OAuth2AccessToken; @@ -42,7 +45,7 @@ public class OpenIdConnectFilter extends AbstractAuthenticationProcessingFilter } try { final String idToken = accessToken.getAdditionalInformation().get("id_token").toString(); - final Jwt tokenDecoded = JwtHelper.decode(idToken); + final Jwt tokenDecoded = JwtHelper.decodeAndVerify(idToken, verifier()); System.out.println("===== : " + tokenDecoded.getClaims()); final Map authInfo = new ObjectMapper().readValue(tokenDecoded.getClaims(), Map.class); @@ -60,6 +63,15 @@ public class OpenIdConnectFilter extends AbstractAuthenticationProcessingFilter } + // details can be found at https://www.googleapis.com/oauth2/v2/certs + private RsaVerifier verifier() { + byte[] nbytes = Base64.decodeBase64("vmyoDT6ND_YJa1ItdvULuTJr2pw4MvN3Z5kmSiJBm9glVoakcDEBGF4b5crKiPW7WDh2PZ0_yXY9ikDaTux7hxtgUtmm96KjmdBn_FYwv3SlsBRnzZw1oAG-2OdjlFWvlx4rXOhAzZ04ngPb3ELywwtKoO90hCy2DrNOMMSCuSu8zrFLw5oREawPcUFEQReipy_KRFf02VxFbK4Tj2FHVdBPPLW3W1KJD4S-NNwPnoeDrI6zWMv7WWAeSLAT0hX36r5FM9dM2uXTxPRCZzs-nqrUiHxn4duFIGgzuxCVbyigDrnfsmHx-B5tG1m7ts74xwf2P_PJwNNJ8qRihMsS2Q=="); + byte[] ebytes = Base64.decodeBase64("AQAB"); + BigInteger n = new BigInteger(1, nbytes); + BigInteger e = new BigInteger(1, ebytes); + return new RsaVerifier(n, e); + } + private static class NoopAuthenticationManager implements AuthenticationManager { @Override From 12a311083c13a24ba263ef3f8ce12331b0f18a61 Mon Sep 17 00:00:00 2001 From: Raksha Rao Date: Mon, 19 Feb 2018 01:50:24 +0530 Subject: [PATCH 146/391] Custom class loader example --- .../classloader/CustomClassLoader.java | 29 +++++++++++++++++++ .../classloader/PrintClassLoader.java | 22 ++++++++++++++ .../classloader/SampleClassLoader.java | 23 --------------- .../classloader/CustomClassLoaderTest.java | 23 +++++++++++++++ .../classloader/PrintClassLoaderTest.java | 14 +++++++++ .../classloader/SampleClassLoaderTest.java | 14 --------- 6 files changed, 88 insertions(+), 37 deletions(-) create mode 100644 core-java/src/main/java/com/baeldung/classloader/CustomClassLoader.java create mode 100644 core-java/src/main/java/com/baeldung/classloader/PrintClassLoader.java delete mode 100644 core-java/src/main/java/com/baeldung/classloader/SampleClassLoader.java create mode 100644 core-java/src/test/java/com/baeldung/classloader/CustomClassLoaderTest.java create mode 100644 core-java/src/test/java/com/baeldung/classloader/PrintClassLoaderTest.java delete mode 100644 core-java/src/test/java/com/baeldung/classloader/SampleClassLoaderTest.java diff --git a/core-java/src/main/java/com/baeldung/classloader/CustomClassLoader.java b/core-java/src/main/java/com/baeldung/classloader/CustomClassLoader.java new file mode 100644 index 0000000000..c44e863776 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/classloader/CustomClassLoader.java @@ -0,0 +1,29 @@ +package com.baeldung.classloader; + +import java.io.*; + +public class CustomClassLoader extends ClassLoader { + + + public Class getClass(String name) throws ClassNotFoundException { + byte[] b = loadClassFromFile(name); + return defineClass(name, b, 0, b.length); + } + + private byte[] loadClassFromFile(String fileName) { + InputStream inputStream = getClass().getClassLoader().getResourceAsStream( + fileName.replace('.', File.separatorChar) + ".class"); + byte[] buffer; + ByteArrayOutputStream byteStream = new ByteArrayOutputStream(); + int nextValue = 0; + try { + while ( (nextValue = inputStream.read()) != -1 ) { + byteStream.write(nextValue); + } + } catch (IOException e) { + e.printStackTrace(); + } + buffer = byteStream.toByteArray(); + return buffer; + } +} diff --git a/core-java/src/main/java/com/baeldung/classloader/PrintClassLoader.java b/core-java/src/main/java/com/baeldung/classloader/PrintClassLoader.java new file mode 100644 index 0000000000..09ee68bf6e --- /dev/null +++ b/core-java/src/main/java/com/baeldung/classloader/PrintClassLoader.java @@ -0,0 +1,22 @@ +package com.baeldung.classloader; + +import com.sun.javafx.util.Logging; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.net.MalformedURLException; +import java.net.URL; +import java.net.URLConnection; +import java.util.ArrayList; + +public class PrintClassLoader { + + public void printClassLoaders() throws ClassNotFoundException { + + System.out.println("Classloader of this class:" + PrintClassLoader.class.getClassLoader()); + System.out.println("Classloader of Logging:" + Logging.class.getClassLoader()); + System.out.println("Classloader of ArrayList:" + ArrayList.class.getClassLoader()); + + } +} diff --git a/core-java/src/main/java/com/baeldung/classloader/SampleClassLoader.java b/core-java/src/main/java/com/baeldung/classloader/SampleClassLoader.java deleted file mode 100644 index b300e3d0ab..0000000000 --- a/core-java/src/main/java/com/baeldung/classloader/SampleClassLoader.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.baeldung.classloader; - -import com.sun.javafx.util.Logging; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; - -public class SampleClassLoader { - - public void loadClass() throws ClassNotFoundException { - - System.out.println("Classloader of this class:" + SampleClassLoader.class.getClassLoader()); - System.out.println("Classloader of Logging:" + Logging.class.getClassLoader()); - System.out.println("Classloader of ArrayList:" + ArrayList.class.getClassLoader()); - - Class.forName("com.baeldung.classloader.SampleClassLoader", true, SampleClassLoader.class.getClassLoader().getParent()); - } -} diff --git a/core-java/src/test/java/com/baeldung/classloader/CustomClassLoaderTest.java b/core-java/src/test/java/com/baeldung/classloader/CustomClassLoaderTest.java new file mode 100644 index 0000000000..9f3c751805 --- /dev/null +++ b/core-java/src/test/java/com/baeldung/classloader/CustomClassLoaderTest.java @@ -0,0 +1,23 @@ +package com.baeldung.classloader; + +import org.junit.Test; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; + +public class CustomClassLoaderTest { + + @Test + public void customLoader() throws ClassNotFoundException, IllegalAccessException, InstantiationException, NoSuchMethodException, InvocationTargetException { + + CustomClassLoader customClassLoader = new CustomClassLoader(); + Class c = customClassLoader.getClass(PrintClassLoader.class.getName()); + + Object ob = c.newInstance(); + + Method md = c.getMethod("printClassLoaders"); + md.invoke(ob); + + } + +} diff --git a/core-java/src/test/java/com/baeldung/classloader/PrintClassLoaderTest.java b/core-java/src/test/java/com/baeldung/classloader/PrintClassLoaderTest.java new file mode 100644 index 0000000000..f44a5cef09 --- /dev/null +++ b/core-java/src/test/java/com/baeldung/classloader/PrintClassLoaderTest.java @@ -0,0 +1,14 @@ +package com.baeldung.classloader; + +import org.junit.Test; + +import static org.junit.Assert.*; + +public class PrintClassLoaderTest { + @Test(expected = ClassNotFoundException.class) + public void givenAppClassLoader_whenParentClassLoader_thenClassNotFoundException() throws Exception { + PrintClassLoader sampleClassLoader = (PrintClassLoader) Class.forName(PrintClassLoader.class.getName()).newInstance(); + sampleClassLoader.printClassLoaders(); + Class.forName(PrintClassLoader.class.getName(), true, PrintClassLoader.class.getClassLoader().getParent()); + } +} \ No newline at end of file diff --git a/core-java/src/test/java/com/baeldung/classloader/SampleClassLoaderTest.java b/core-java/src/test/java/com/baeldung/classloader/SampleClassLoaderTest.java deleted file mode 100644 index aea5611553..0000000000 --- a/core-java/src/test/java/com/baeldung/classloader/SampleClassLoaderTest.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.baeldung.classloader; - -import org.junit.Test; - -import static org.junit.Assert.*; - -public class SampleClassLoaderTest { - @Test(expected = ClassNotFoundException.class) - public void givenAppClassLoader_whenParentClassLoader_thenClassNotFoundException() throws Exception { - SampleClassLoader sampleClassLoader = (SampleClassLoader) Class.forName(SampleClassLoader.class.getName()).newInstance(); - sampleClassLoader.loadClass(); - - } -} \ No newline at end of file From 20ef3b0299bc085cc98eabcb3cca05c1dd405422 Mon Sep 17 00:00:00 2001 From: Holger Steinhauer Date: Sun, 18 Feb 2018 21:44:54 +0000 Subject: [PATCH 147/391] BAEL-1489: Refactoring and successful login event handling --- .../BaeldungPasswordEncoderSetup.java | 44 ++++++++------ .../PasswordStorageApplication.java | 13 +++++ .../PasswordStorageWebSecurityConfigurer.java | 57 +++++++++++++++++++ .../passwordstorage/Rot13PasswordEncoder.java | 32 ----------- .../Rot13PasswordEncoderTest.java | 36 ------------ 5 files changed, 96 insertions(+), 86 deletions(-) create mode 100644 spring-5-security/src/main/java/com/baeldung/passwordstorage/PasswordStorageApplication.java create mode 100644 spring-5-security/src/main/java/com/baeldung/passwordstorage/PasswordStorageWebSecurityConfigurer.java delete mode 100644 spring-5-security/src/main/java/com/baeldung/passwordstorage/Rot13PasswordEncoder.java delete mode 100644 spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java diff --git a/spring-5-security/src/main/java/com/baeldung/passwordstorage/BaeldungPasswordEncoderSetup.java b/spring-5-security/src/main/java/com/baeldung/passwordstorage/BaeldungPasswordEncoderSetup.java index 89eeb0f826..94edf85631 100644 --- a/spring-5-security/src/main/java/com/baeldung/passwordstorage/BaeldungPasswordEncoderSetup.java +++ b/spring-5-security/src/main/java/com/baeldung/passwordstorage/BaeldungPasswordEncoderSetup.java @@ -1,33 +1,41 @@ package com.baeldung.passwordstorage; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.context.ApplicationEventPublisher; +import org.springframework.context.ApplicationListener; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; -import org.springframework.security.crypto.password.DelegatingPasswordEncoder; +import org.springframework.security.authentication.AuthenticationEventPublisher; +import org.springframework.security.authentication.DefaultAuthenticationEventPublisher; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.authentication.event.AuthenticationSuccessEvent; +import org.springframework.security.core.Authentication; import org.springframework.security.crypto.password.PasswordEncoder; -import org.springframework.security.crypto.scrypt.SCryptPasswordEncoder; - -import java.util.HashMap; -import java.util.Map; @Configuration public class BaeldungPasswordEncoderSetup { + private final static Logger LOG = LoggerFactory.getLogger(BaeldungPasswordEncoderSetup.class); + @Bean - public PasswordEncoder passwordEncoder() { - // set up the list of supported encoders and their prefixes - String encodingId = "rot13"; - Map encoders = new HashMap<>(); - encoders.put(encodingId, new Rot13PasswordEncoder()); - encoders.put("scrypt", new SCryptPasswordEncoder()); - encoders.put("bcrypt", new BCryptPasswordEncoder()); + public AuthenticationEventPublisher authenticationEventPublisher(final ApplicationEventPublisher publisher) { + return new DefaultAuthenticationEventPublisher(publisher); + } - // get an instance of the DelegatingPasswordEncoder, set up to use our instance as default encoder - DelegatingPasswordEncoder delegatingPasswordEncoder = new DelegatingPasswordEncoder(encodingId, encoders); + @Bean + public ApplicationListener authenticationSuccessListener(final PasswordEncoder encoder) { + return (AuthenticationSuccessEvent event) -> { + final Authentication authentication = event.getAuthentication(); - // configure our instance as default encoder for actual matching - delegatingPasswordEncoder.setDefaultPasswordEncoderForMatches(encoders.get(encodingId)); + if (authentication instanceof UsernamePasswordAuthenticationToken && authentication.getCredentials() != null) { + final CharSequence clearTextPassword = (CharSequence) authentication.getCredentials(); // 1 + final String newPasswordHash = encoder.encode(clearTextPassword); // 2 - return delegatingPasswordEncoder; + LOG.info("New password hash {} for user {}", newPasswordHash, authentication.getName()); + + ((UsernamePasswordAuthenticationToken) authentication).eraseCredentials(); // 3 + } + }; } } diff --git a/spring-5-security/src/main/java/com/baeldung/passwordstorage/PasswordStorageApplication.java b/spring-5-security/src/main/java/com/baeldung/passwordstorage/PasswordStorageApplication.java new file mode 100644 index 0000000000..173d979a45 --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/passwordstorage/PasswordStorageApplication.java @@ -0,0 +1,13 @@ +package com.baeldung.passwordstorage; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class PasswordStorageApplication { + + public static void main(String[] args) { + SpringApplication.run(PasswordStorageApplication.class, args); + } + +} diff --git a/spring-5-security/src/main/java/com/baeldung/passwordstorage/PasswordStorageWebSecurityConfigurer.java b/spring-5-security/src/main/java/com/baeldung/passwordstorage/PasswordStorageWebSecurityConfigurer.java new file mode 100644 index 0000000000..c73461daaa --- /dev/null +++ b/spring-5-security/src/main/java/com/baeldung/passwordstorage/PasswordStorageWebSecurityConfigurer.java @@ -0,0 +1,57 @@ +package com.baeldung.passwordstorage; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.authentication.AuthenticationEventPublisher; +import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.core.userdetails.UserDetailsService; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.password.DelegatingPasswordEncoder; +import org.springframework.security.crypto.password.MessageDigestPasswordEncoder; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.crypto.scrypt.SCryptPasswordEncoder; + +import java.util.HashMap; +import java.util.Map; + +@Configuration +public class PasswordStorageWebSecurityConfigurer extends WebSecurityConfigurerAdapter { + + private final AuthenticationEventPublisher eventPublisher; + private final UserDetailsService userDetailsService; + + @Autowired + public PasswordStorageWebSecurityConfigurer(AuthenticationEventPublisher eventPublisher, UserDetailsService userDetailsService) { + this.eventPublisher = eventPublisher; + this.userDetailsService = userDetailsService; + } + + @Override + protected void configure(AuthenticationManagerBuilder auth) throws Exception { + auth.eraseCredentials(false) // 4 + .authenticationEventPublisher(eventPublisher) + .userDetailsService(userDetailsService) + .passwordEncoder(passwordEncoder()); + } + + @Bean + public PasswordEncoder passwordEncoder() { + // set up the list of supported encoders and their prefixes + String encodingId = "bcrypt"; + Map encoders = new HashMap<>(); + encoders.put(encodingId, new BCryptPasswordEncoder()); + encoders.put("scrypt", new SCryptPasswordEncoder()); + encoders.put("SHA-256", new MessageDigestPasswordEncoder("SHA-256")); + + // get an instance of the DelegatingPasswordEncoder, set up to use our instance as default encoder + DelegatingPasswordEncoder delegatingPasswordEncoder = new DelegatingPasswordEncoder(encodingId, encoders); + + // configure our instance as default encoder for actual matching + delegatingPasswordEncoder.setDefaultPasswordEncoderForMatches(encoders.get(encodingId)); + + return delegatingPasswordEncoder; + } + +} diff --git a/spring-5-security/src/main/java/com/baeldung/passwordstorage/Rot13PasswordEncoder.java b/spring-5-security/src/main/java/com/baeldung/passwordstorage/Rot13PasswordEncoder.java deleted file mode 100644 index 52de412de7..0000000000 --- a/spring-5-security/src/main/java/com/baeldung/passwordstorage/Rot13PasswordEncoder.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.baeldung.passwordstorage; - -import org.springframework.security.crypto.password.PasswordEncoder; - -/** - * DISCLAIMER: Never ever use this in any production environment! - *

- * Does only work for characters. - */ -public class Rot13PasswordEncoder implements PasswordEncoder { - - @Override - public String encode(CharSequence rawPassword) { - StringBuffer result = new StringBuffer(rawPassword.length()); - rawPassword - .chars() - .forEach(charCode -> { - if (charCode >= 65 && charCode <= 77 || charCode >= 97 && charCode <= 109) { - result.append(Character.toChars(charCode + 13)); - } else if (charCode >= 78 && charCode <= 90 || charCode >= 110 && charCode <= 133) { - result.append(Character.toChars(charCode - 13)); - } - }); - - return result.toString(); - } - - @Override - public boolean matches(CharSequence rawPassword, String encodedPassword) { - return encode(rawPassword).equals(encodedPassword); - } -} diff --git a/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java b/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java deleted file mode 100644 index b515d47fbc..0000000000 --- a/spring-5-security/src/test/java/com/baeldung/passwordstorage/Rot13PasswordEncoderTest.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.baeldung.passwordstorage; - -import org.junit.Test; - -import static org.hamcrest.CoreMatchers.is; -import static org.junit.Assert.assertThat; - -public class Rot13PasswordEncoderTest { - - private final Rot13PasswordEncoder encoder = new Rot13PasswordEncoder(); - - @Test - public void givenEncodedPassword_whenEncodeIsCalledWithTheEncodedPassword_thenTheClearTextPassword() { - String password = "baeldung"; - String encoded = encoder.encode(password); - String actualResult = encoder.encode(encoded); - - assertThat(actualResult, is(password)); - } - - @Test - public void givenCorrectPassword_whenMatchesIsCalled_thenReturnTrue() { - String password = "baeldung"; - String encoded = encoder.encode(password); - boolean actualResult = encoder.matches(password, encoded); - - assertThat(actualResult, is(true)); - } - - @Test - public void givenIncorrectPassword_whenMatchesIsCalled_thenReturnFalse() { - boolean actualResult = encoder.matches("baeldung", "spring"); - - assertThat(actualResult, is(false)); - } -} \ No newline at end of file From 75b3301cc345e3370492b36263709d16c1667832 Mon Sep 17 00:00:00 2001 From: Holger Steinhauer Date: Sun, 18 Feb 2018 21:46:21 +0000 Subject: [PATCH 148/391] BAEL-1489: Clean up --- .../passwordstorage/PasswordStorageWebSecurityConfigurer.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/spring-5-security/src/main/java/com/baeldung/passwordstorage/PasswordStorageWebSecurityConfigurer.java b/spring-5-security/src/main/java/com/baeldung/passwordstorage/PasswordStorageWebSecurityConfigurer.java index c73461daaa..0773de4bd6 100644 --- a/spring-5-security/src/main/java/com/baeldung/passwordstorage/PasswordStorageWebSecurityConfigurer.java +++ b/spring-5-security/src/main/java/com/baeldung/passwordstorage/PasswordStorageWebSecurityConfigurer.java @@ -45,10 +45,7 @@ public class PasswordStorageWebSecurityConfigurer extends WebSecurityConfigurerA encoders.put("scrypt", new SCryptPasswordEncoder()); encoders.put("SHA-256", new MessageDigestPasswordEncoder("SHA-256")); - // get an instance of the DelegatingPasswordEncoder, set up to use our instance as default encoder DelegatingPasswordEncoder delegatingPasswordEncoder = new DelegatingPasswordEncoder(encodingId, encoders); - - // configure our instance as default encoder for actual matching delegatingPasswordEncoder.setDefaultPasswordEncoderForMatches(encoders.get(encodingId)); return delegatingPasswordEncoder; From 6385ba4fb0cd015f85a9b2db92ca30258e8a2b25 Mon Sep 17 00:00:00 2001 From: Dassi orleando Date: Sun, 18 Feb 2018 22:51:53 +0100 Subject: [PATCH 149/391] Improve rss(BAEL-1273) and done with BAEL-1519 (#3692) * BAEL-1216: improve tests * BAEL-1448: Update Spring 5 articles to use the release version * Setting up the Maven Wrapper on a maven project * Add Maven Wrapper on spring-boot module * simple add * BAEL-976: Update spring version * BAEL-1273: Display RSS feed with spring mvc (AbstractRssFeedView) * Move RSS feed with Spring MVC from spring-boot to spring-mvc-simple * BAEL-1285: Update Jackson articles * BAEL-1273: implement both MVC and Rest approach to serve RSS content * RSS(XML & Json) with a custom model * BAEL-1273: remove a resource * BAEL-1519: Guide to scribejava * BAEL-1273: improve xml representation * Fix pom --- jsonld/.gitignore | 24 ++ jsonld/.mvn/wrapper/maven-wrapper.jar | Bin 0 -> 49502 bytes jsonld/.mvn/wrapper/maven-wrapper.properties | 1 + jsonld/README.md | 22 ++ jsonld/mvnw | 233 ++++++++++++++++++ jsonld/mvnw.cmd | 145 +++++++++++ jsonld/pom.xml | 53 ++++ .../java/com/baeldung/JsonLdApplication.java | 11 + .../src/main/resources/application.properties | 14 ++ .../com/baeldung/JsonLdSerializatorTest.java | 33 +++ ...sources.reladomo.ReladomoClassList.xml.log | 2 + .../introduction/views/index.scala.html | 20 ++ .../introduction/views/main.scala.html | 23 ++ out/production/main122/.gitignore | 13 + .../main151/com/baeldung/.gitignore | 13 + out/production/main151/com/baeldung/README.md | 2 + .../main155/com/baeldung/git/README.md | 2 + out/production/main173/log4j.properties | 9 + .../JavaEEAnnotationsSample/README.txt | 76 ++++++ .../JavaEEAnnotationsSample/pom.xml | 57 +++++ .../src/main/webapp/WEB-INF/web.xml | 10 + .../src/main/webapp/index.jsp | 16 ++ .../src/main/webapp/login.jsp | 12 + .../src/main/webapp/upload.jsp | 16 ++ .../jaxws/wsdl/employeeservicetopdown.wsdl | 42 ++++ .../com/baeldung/java/nio/selector/README.md | 2 + .../googlehttpclientguide/logging.properties | 10 + .../baeldung/wicket/examples/HelloWorld.html | 52 ++++ .../examples/cafeaddress/CafeAddress.html | 15 ++ .../examples/helloworld/HelloWorld.html | 5 + .../com/baeldung/activiti/security.rar | Bin 0 -> 3760 bytes .../main237/com/baeldung/datetime/README.md | 2 + out/production/main291/xml-bean-config.xml | 12 + .../main30/com/baeldung/factorybean/README.md | 2 + .../main330/com/baeldung/.gitignore | 13 + out/production/main330/com/baeldung/README.md | 2 + .../main330/com/baeldung/enums/README.md | 2 + .../main330/com/baeldung/networking/README.md | 5 + .../com/baeldung/printscreen/README.md | 2 + out/production/main330/log4j.properties | 9 + .../com/baeldung/produceimage/README.md | 3 + .../main96/com/baeldung/git/README.md | 2 + .../routing-in-play/views/index.scala.html | 20 ++ .../routing-in-play/views/main.scala.html | 23 ++ .../com/baeldung/cglib/proxy/README.md | 3 + out/test/test143/com/baeldung/java9/README.MD | 2 + .../test174/org/baeldung/hamcrest/README.md | 2 + .../com/baeldung/web/controller/README.md | 2 + .../test197/com/baeldung/java/nio2/README.md | 11 + out/test/test237/META-INF/persistence.xml | 20 ++ .../test95/com/baeldung/hexToAscii/README.md | 2 + .../com/baeldung/java/conversion/README.md | 2 + .../org/baeldung/java/collections/README.md | 3 + .../test95/org/baeldung/java/lists/README.md | 2 + .../com/baeldung/applicationcontext/README.md | 3 + .../test98/com/baeldung/beanfactory/README.md | 2 + spring-mvc-simple/pom.xml | 6 + .../ApplicationConfiguration.java | 2 + .../spring/controller/rss/ArticleFeed.java | 4 +- .../spring/controller/rss/ArticleItem.java | 3 - .../controller/rss/ArticleRssController.java | 5 - .../controller/scribe/ScribeController.java | 55 +++++ .../petstore/client/invoker/BuildConfig.java | 8 + .../petstore/client/invoker/Manifest.java | 7 + .../baeldung/petstore/client/invoker/R.java | 7 + 65 files changed, 1172 insertions(+), 9 deletions(-) create mode 100644 jsonld/.gitignore create mode 100644 jsonld/.mvn/wrapper/maven-wrapper.jar create mode 100644 jsonld/.mvn/wrapper/maven-wrapper.properties create mode 100644 jsonld/README.md create mode 100755 jsonld/mvnw create mode 100644 jsonld/mvnw.cmd create mode 100644 jsonld/pom.xml create mode 100644 jsonld/src/main/java/com/baeldung/JsonLdApplication.java create mode 100644 jsonld/src/main/resources/application.properties create mode 100644 jsonld/src/test/java/com/baeldung/JsonLdSerializatorTest.java create mode 100644 out/production/generated-sources8/src.main.resources.reladomo.ReladomoClassList.xml.log create mode 100644 out/production/introduction/views/index.scala.html create mode 100644 out/production/introduction/views/main.scala.html create mode 100644 out/production/main122/.gitignore create mode 100644 out/production/main151/com/baeldung/.gitignore create mode 100644 out/production/main151/com/baeldung/README.md create mode 100644 out/production/main155/com/baeldung/git/README.md create mode 100644 out/production/main173/log4j.properties create mode 100644 out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/README.txt create mode 100644 out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/pom.xml create mode 100644 out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/WEB-INF/web.xml create mode 100644 out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/index.jsp create mode 100644 out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/login.jsp create mode 100644 out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/upload.jsp create mode 100644 out/production/main180/com/baeldung/jaxws/wsdl/employeeservicetopdown.wsdl create mode 100644 out/production/main195/com/baeldung/java/nio/selector/README.md create mode 100644 out/production/main216/com/baeldung/googlehttpclientguide/logging.properties create mode 100644 out/production/main231/com/baeldung/wicket/examples/HelloWorld.html create mode 100644 out/production/main231/com/baeldung/wicket/examples/cafeaddress/CafeAddress.html create mode 100644 out/production/main231/com/baeldung/wicket/examples/helloworld/HelloWorld.html create mode 100644 out/production/main234/com/baeldung/activiti/security.rar create mode 100644 out/production/main237/com/baeldung/datetime/README.md create mode 100644 out/production/main291/xml-bean-config.xml create mode 100644 out/production/main30/com/baeldung/factorybean/README.md create mode 100644 out/production/main330/com/baeldung/.gitignore create mode 100644 out/production/main330/com/baeldung/README.md create mode 100644 out/production/main330/com/baeldung/enums/README.md create mode 100644 out/production/main330/com/baeldung/networking/README.md create mode 100644 out/production/main330/com/baeldung/printscreen/README.md create mode 100644 out/production/main330/log4j.properties create mode 100644 out/production/main351/com/baeldung/produceimage/README.md create mode 100644 out/production/main96/com/baeldung/git/README.md create mode 100644 out/production/routing-in-play/views/index.scala.html create mode 100644 out/production/routing-in-play/views/main.scala.html create mode 100644 out/test/test105/com/baeldung/cglib/proxy/README.md create mode 100644 out/test/test143/com/baeldung/java9/README.MD create mode 100644 out/test/test174/org/baeldung/hamcrest/README.md create mode 100644 out/test/test191/com/baeldung/web/controller/README.md create mode 100644 out/test/test197/com/baeldung/java/nio2/README.md create mode 100644 out/test/test237/META-INF/persistence.xml create mode 100644 out/test/test95/com/baeldung/hexToAscii/README.md create mode 100644 out/test/test95/com/baeldung/java/conversion/README.md create mode 100644 out/test/test95/org/baeldung/java/collections/README.md create mode 100644 out/test/test95/org/baeldung/java/lists/README.md create mode 100644 out/test/test98/com/baeldung/applicationcontext/README.md create mode 100644 out/test/test98/com/baeldung/beanfactory/README.md create mode 100644 spring-mvc-simple/src/main/java/com/baeldung/spring/controller/scribe/ScribeController.java create mode 100644 spring-swagger-codegen/spring-swagger-codegen-api-client/src/main/gen/com/baeldung/petstore/client/invoker/BuildConfig.java create mode 100644 spring-swagger-codegen/spring-swagger-codegen-api-client/src/main/gen/com/baeldung/petstore/client/invoker/Manifest.java create mode 100644 spring-swagger-codegen/spring-swagger-codegen-api-client/src/main/gen/com/baeldung/petstore/client/invoker/R.java diff --git a/jsonld/.gitignore b/jsonld/.gitignore new file mode 100644 index 0000000000..2af7cefb0a --- /dev/null +++ b/jsonld/.gitignore @@ -0,0 +1,24 @@ +target/ +!.mvn/wrapper/maven-wrapper.jar + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +nbproject/private/ +build/ +nbbuild/ +dist/ +nbdist/ +.nb-gradle/ \ No newline at end of file diff --git a/jsonld/.mvn/wrapper/maven-wrapper.jar b/jsonld/.mvn/wrapper/maven-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..5fd4d5023f1463b5ba3970e33c460c1eb26d748d GIT binary patch literal 49502 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%0A$pwhjXzyA0ZzErH{1@M z22-6b1SQ!SMNyqj_7MXE2cwcEm)W)YwB)ji`3Y^5ABx--A11WB3mBQB<7K!~``j&@ z8PKJ^KSa>#M(rar$h}aBFuNI9sB5uAquDlzKW+hYB&WKf9i&+q$j5P;sz2u$f`uHS zaX8$!@N2b81<<0w<{CpXzQGqSZRpfVb3R%bjsw-Kl}2UH>}1M?MLA#ojYaagiYL!P z$_@7yOl~PbidzJ8yx{Jz9&4NS99(R5R&lf~X_{xjXj|tuvPgvzbyC}#ABy^+H+FN0 z8p5U!{kxOvdv3fr35|Kb`J(eXzo*GvF6`_5GI)&6EW}&OGp=!8n`W0mr_o~Xq-t?% z_pDDfIW#L^DmX?q#mA%Jz-f86KG`^7V|1zdA#4#<=}91g$#@J`gOqMu+7H&yMdNIt zp02(*8z*i{Zu;#S#uP#q!6oNjQzC|?>fgzorE(d+S#iv4$if+$-4$8&eo zuSZJ1>R2HJ^3T9dr{tn+#JMGv#x@&C$EZapW9)uhp0`rDsISKrv`~3j)08JZlP&}HwA!z^~-?Ma(x0_AS{@r z8!(Z}5d8+5f7`r3pw_a=Z`!0r6r4%OAGYBoq3T7^xI@9xG3prNo>`}k>@VAQk>(=DIy(szD&6@u?YVdC|pJLT@lx{=IZ; zIkO4)YWp*Dpp$`H$Ok#yf;yBmHvTb@)4j)jVNF-O?$nD25z7)I!cWQ|Yt zeS<_C{i|BS4HICD=}T(|)@vd(v!?P4t4>APo7`K5RJvcTpr_KgWeB~zMLknrKMgpx zyN-EI%es5e)FNho=}qGu$`98v(QDPUMUGrY4tq>?x$md>qgNO0@aAQLMLr8XD8z%; z2Osn1D>N^22w4Xb8{~fi^i~SthAo7%ZjNb)ikgj0_AsXqF_0+W6E_doOUi0uV6Lvg z98Xk#>IK|-YHx!XV64==b(nYKMEyqPF?D)yxE=~;LS?LI_0)|1!T3ZtLa?(qd|YlXdI-e$W z(3J*FbOe3cSXvDaTHU^Hqpf2i8aH+ZzqY$cFFIH;fxMtW^(AmiMkBtb9esujw?rte zoo&0%Afb~VBn6A1@R1!OFJ0)6)Fn72x{}7n z+b#5gMommvlyz7c@XE`{ zXj(%~zhQne`$UZ5#&JH0g={XdiEKUyUZwIMH1rZTl%r@(dsvBg5PwEk^<+f_Yd~a@ z%+u%0@?lPzTD>!bR(}RQoc>?JwI|dTEmoL`T?7B zYl^`d{9)rW)|4&_Uc3J=RW25@?ygT$C4l-nsr+B0>HjK~{|+nFYWkm77qP!iX}31a z^$Mj&DlEuh+s(y*%1DHpDT`(sv4|FUgw5IwR_k{lz0o=zIzuCNz|(LMNJwongUHy#|&`T5_TnHLo4d+5bE zo*yU%b=5~wR@CN3YB0To^mV?3SuD~%_?Q{LQ+U){I8r*?&}iWNtji=w&GuF9t~=Q2 z$1cFAw1BTAh23~s$Ht$w!S2!8I;ONwQnAJ;-P4$qOx-7&)dWgIoy-8{>qC8LE?LhJ zR-L4qCha@z*X+j|V<+C(v)-UZmK0CYB?5`xkI)g2KgKl-q&7(tjcrhp5ZaBma4wAd zn`{j>KNPG>Q$xr7zxX}iRo=M#@?>}?F`Sv+j6>G9tN!g@14LUf(YfA4e=z+4f zNpL4g?eJK`S${tcfA{wbn({8i+$wMaLhSJo`-Yp@G2i0Yq~@wdyFxoVH$w9{5Ql2t zFdKG?0$ zV7nmYC@PSsDhnELrvd8}+T=C6ZcR?`uapdWLc2eaww5vKtjQQgbvEr^)ga?IF;@1(?PAE8Xx5`Ej&qg|)5L}yQA1<^}Y zp7WZpk%}L9gMMyB^(mFrl&2Ng$@#Ox3@Z6r%eJ`sGDQbT0a9ruO`T|71C;oCFwTVT zaTnu)eVKURM`1QuvrBhj;1e>1TEZW54sKUfx0Z=N*;Jpdh~Aj-3WB zR|EYVGDxSvnjeA?xxGF41Wj?~loVahklw|zJ=v3pOEVZFJG^TvR z-tJN5m;wZp!E7=z;5J*Oaq%2bc|Jw!{|O+*sja+B(0D2_X`c2)nVkzP1S~LOj~xs!@>aN z3$K2^pW}@R-70K!X&s4DHHoV&BmGWTG4vi9P1H$JxmD|t_V{GlHZv(`yJ234IVuSr z~!;~#ublS8qdL8SJG@XRCwWhkZyg_EKH(sB2}QQSv4W}|CT0ntD_4Eyp519d1%yKvc33|`yW9QzeJ4*XLP7@l=td+bwxSL~jCf-ny)IDC^~u5s)E-y^FdtU?)hkN{82Y{Lo)bCWcBOx;Jbw;)Pg9bWQQTY-3RWehpok!>D>Sa2EcEOS@ua)#G3I+GxL_ra^92Y!}tMX zwAp*Fv-aAarn`ME7N#Uyim%ynre6u?KS15L#$#rKZSgLnXx;g8TP9suMpO055p278 z%o-6eT(3gdIVFN}Gb3k$zbTyrHYel1x6OxETsk&h0E?&}KUA4>2mi0len7~*;{Io~ znf+tX?|;&u^`Bk-KYtx6Rb6!y7F)kP<5OGX(;)+Re0Y;asCLP;3yO#p>BRy*>lC$}LiEEUGJHB!a=&3CddUu?Qw>{{zm)83wYRy%i}UV2s| z9e>ZXHzuMV#R1yJZato0-F|Jl_w2sUjAw@FzM=DxH}vM>dlB&bQ!>51aGc}&WAH`b z6M6iG$AyJIAJ7-c0+(;pf=2=!B=%yoM1i9r==Q+}CK3uW%##U1rP~mwjUb8PLsi8Q zq!aTLLYK4HQ$vN1sU;d3XW{oFA{u@1$tduWmdOqc(~AqWq+`V)G&?YOOwAK20x>{q zOgII2&A_FXPzVtgrD80Y5J+_SEmyUcdM2N%q);|ZF_m z)6PBcOcAAy3kN*`8ac%zPH3^61_zn6_2FT#NCOWYx>ezqZzCC;tzM%pJC^gFAFcTs ze6C3WE-a*=nt8tErPG9zfPRn$QHqB7aHe8x3w&rWT(0F54<2uBJDYtbB}y|@9V6T( zmM!t}T5SuwxyTCma14&l|yiQRw5Pn|OiDBkx z?4tUGrIVsC9zs=F{W>zl9XeknEc+~Mz7zCnefUPUF8iF?A)QJK8=84#-TLLxq?BTM z=VYjYW%TOhrBp>3D@K{vStlEUt%e{HRc=766AQ+s7V_F|1A!)P3?y*=gUgbZO;O39 zX*BC((-XbnoaRGxxhRQRVKCDG9|qC6?7TwCz{A{OZp$Wu(~0DFo(w^P3f>4gr8@P^ zl8`!vA=_fvwTZc%-Z42}m>Q;KQ~&v;ipZzbA2;}Peg*v}TlKRmU%4WNN<%qb!cLo= zoSx;XBrv4}ErykT!)z)Qar4o?(q6!mpWLNFe~Nz0S@yI{1)Lxt<0K=Q$~>*HH+Wbp zQ~fx0aup_lZb|e6*@IJOJjw~Ypiwdq69&Y2vthfGq6u1!Joy%;v;~4`B@B*S(}}i- zmZc^*aHOK(dd(geOKg)P+J4+*eThk;P@wRjvm}e)h|#EpsV9YoqqRW{)ABhRlvGA* zL$&k5w*_-X1ITCwXiH=)=5lzjxY5tQJTBrv<{dM7$98pdK%i;RGZtiJKaSGCji7w)aNrHu_9_IPGHS-mMN5AheTn_ia^YdunCzcp2ap8eI-RQEm zj(q7_CT)o|w_noPm@MVqIjv%H4Bdo6*9*!Zj)bLx!p9POp(`$dj1QW`V=;=|`Gx8QST=OnK5jlJX3!KBz>v7j$&5b5YrhIArRVL)1C^o{@DJ}*mk*s=< zDK{e2f%fG)mK_Mz*x@#ahOO)cQQ#VH+8Wef>NKWcu4J>PIc3iz8y6PwCmY|UQ(O3!B;HtsE&jvyv^XjL7Env5#i zH4-k5GzPr-%36#%+Hvw1*UiOIk3b7F^|1dPi!-i7C^ZWp~_KI%D!sGYb@@zXa?*{XfjZ~%Y^mT!kaK_>K8 z_jL78^ zS0eRdqZ0v~WWow1CE;vDBh#{w9R4JgB!})W9N{{D=p-RMnehZ#pH*ABzDP46ryZkt z4ek|LHS{CDhTTMQa3a5fO9OLg?y$+#Gi2}Fv>QD-+ZEQKX2Fv{jr~miXz1ZpPcXvJ zNvQT@kQbBz_Y4Kg)*`E2t;tPh5_7tSGvL-|-A`lgHX3uVG4jLev9>YCZUeNNzioL? z;OBD{z+=Gs3+*ph)#bO#7IHl|rOFfvpK%cF>W??Q!Nh&B@hByD&}g|>a?GJ4uhX3g zPJXKKAh&zWv&wITO66G{PuGLsxpWSqaadFsv>_vQt?LVslVob7wylsa+O`IYWySoO z$tw#v7=&7ZGZqS}N!c##5-bC%>ze*s0H9J%d|!JgE#uZ|k1_bAn*x(Y%r{c=(HLwNkPZOUT#@j4{YfG#@=49YJ{?7? zddbK}G-@Dod&^Vf`GOo)G|`n@kq?Z=o84x{889+?F*dQz(kr@9lQ-TXhGN`)^-Li1 zb}xO2W(FvB2)EA;%qAkHbDd&#h`iW06N1LYz%)9;A&A25joc!4x+4%D@w1R+doLs= z#@(A@oWJq?1*oT>$+4=V=UnuMvEk;IcEnp4kcC<_>x=Hw9~h+03Og7#DK(3y3ohIp z-gQ$-RQIJTx%0o@PDST|NW41VgAR?CH`Sj-OTS0)?Y*M_wo|92;Oz)aya`^I0@?S{ z<%^epAw!Tw(bvSmU_k~Im^%#|0`Xkcmxj;31jX2Gg?PbzdXp9Dg~P)PW+Xi%iWiCr zV-Vv9IR5guDS2lGV!lfTWxkD8w%yz=UB`2j2Zb0eg~arRA*Q6>`q=8#4&OC|L6O}8 z)!w(idG0yk-BF#~k@Avk>an9z_ibOP*Rb;db_PsakNWYdNoygT?yRG=+5>ud<6Vxhk?P9rk!+8?xMg!x5kD*f2XOd^`O3U zlO;ImEy0SYI_J05cMW{dk@%d@iZFCNhIVtOm8$viM>=zM+EKJG%c0)dZ0D$4*-psQ zW+Fq|WmbYkBh5|^-l$w-`Uy8#T#<+3=}z!(6RadEpFlr1f6OFuQ5sG735YicWaoYR z`wuEZT2dntHGC7G*Kzk$tsm?Fd25LTHJj?Zo2RH;9rW9WY1`;@t_O3NC};dayX;Ib zgq6afb4!50qL-o5%yzgcR-1Xm-l4SE!rE>o!L=E`Jeug(IoZ36piq6d)aek0AV)EJ zaha2uBM!>RkZHRN0#w07A=yf4(DBmy(IN6NdGe$?(7h?5H)*?(Li#GjB!M{nq@C3# z^y{4CK_XQKuO>(88PRb&&8LbRDW1Ib>gl6qu(7g}zSkf<8=nFPXE1~pvmOT3pn^sa z+6oK0Bn$TBMWYTmhJzk_6)$>>W)nF^N$ld9 z8f^Y^MLVz@5b}F0fZID^9%hRL#()Xw*%yhs&~|PK|MGI8zuO!f!FqbmX9icd zXU(JOCwac|Z|=Yr(>Q3)HsXl!^$8VSzsgI#)D2XkpZ2=WOBcFF!2&d;*nF%h0I!`mRHl$91jYzqtLfNHUoYzrMzjR)u zP_|Hti4^){G?Ge6L_T^zVdS@KHwtq^+*+aBNl=hVc6#KB-It()qb&8LhnVW9Yxn&S z&^s^u1OzB(d_ByXz=xm4cpJzNzV+Txh`~H(176n4RGlY6( zg?ed(a!J?4(oL}@UfBpgPL*)KrGtM_hMIdu!RywK@d!b-{YAY?(?w3yB@Fi3g|G)| zho%)<=%Q$Lo7S-BxEjTL;M74{y+`Q^Xg#j}VvF|Y>X7s+Ps~aqT--tJNd9U6;Ej&o zj@|!`{Xy90t_Zdb>+m8tCFJ@X(Y$mR>%)gv4Vt;oGr`idhQ7H1^L3v4<_2}-UoguorcscRfdgumUVa0mK7-Wm~#vbrnX9ro}@82q=9t;lM9nH<} zLL#=1L7*f+mQWfyFnETMi*fe8AI+gdY6BM7CkRS&i4$ZRv$v*=*`oo>TjZ84sYD&T zI!DgZ4ueeJKvjBAmHNu|A?R2>?p{kQCRy zRnGg@C%oB#-;H-o-n##G`wcPWhTviRCjB{?mR20|wE9Kn3m6(%Sf_oNXWP^b;dz7( zb{blETKwpl`AT#W7E6T|0*bl?%r{}-BYdwrn0zN(DZXM1~53hGjjP9xzr$p z>ZH?35!~7LHiD7yo7-zzH18eTSAZjW>7-q5TYzDvJ$$S$Z@q)h)ZnY(3YBl+_ZK~* zd6T1UEKdrzmv2xc>eFj2^eQPu;gqBdB@TLqWgPk|#WAS0c@!t08Ph)b>F3 zGP}9_Pfp;kelV05nUfnb%*Oa{h;3Yi^B5xyDM~1r@o%v#RYi-%EYfSYY&02eW#bGb zu8(H8i9zhyn%?kx5Txx^6 z2i}CK(HeQ_R2_u?PFp#6CK zjr}k8Cx#C?DFgP`uN<;}x*Gd$-JgG3J_i3s>fk@_Po}b|JNz=Dm+<{^51m=mO;n4B&azYm{>+VhB{iyxuW+j>w@>VHcJyoSBQi=hu0;p zPw3Aj?%Ai^UeD{ySPIqsf|v0L&f_fmE7oh(s|jwbkK5^AQ9F|;a5V}EdSE?fyxdgf zHTq!f0;+-V{0oF+l_~>rMGk?f~m^wDXlxqt1@+)6Zv?BNR$+%$i z*NF93f}~4d9H2C7@?IibyqUtLL!XZW2ap4fkkxMqDZuZ>`+AfWJQ%~O2WR}NoA=OP zieg@q!mP z?=qU=EE6L0_UpzXt0qwX2tF~}c|;`#MUY2TMz6k({hpkiSz>Dxt*4-PtkAdAA*0hn zk~CK6#V=*^m5 zg$tB6rSO-=9l>GAl^DjJBHdk0wD0(L!OrcZ?qmtYbl+}s(@rtE-O=RTx*1cZq~u~5 zQPVt(IB=*?Pm;Le%#i1SFxHY|>=Y$^RF-FGAUSkBpn`|+p!4RHyv-Q(XgZ5Xg5W}J z8RcT?+4FdVQ>z~9kP5By8eM95f_LDnsnA%K;i6`OpcuJS=^n|6nH-B2EhH=dLbO@Z zuw=Ug>7gsu33`Pzy3Lji0x8OCH={?VRqFEi;@oDIS<*?dG@9X1*tlYCm4YUIMhyfo zJ~=K@-X$D z<-4dH<-5o#yMj%f@U{nfWYVdrREJ}_o4&|c*_+M6gk z-Up9-i~jM-bwR;Bf0&C5wteli>r7ZjGi+mHk3aC4mS5 zPC^{w+G%menlWun+&<#i&DJ41thvk;OKZEB`S%sZ6 zzYpO2x_Ce@fa0LuIeC=7gRHN#os!MQ7h}m9k3@u68K2$&;_mSe2`>uvV<`RgC)TKX z`J}&Kb%*f{Oznj$%-QafB}Zb$Pi%@D&^ZTcgJ0+Bk6-iOJ-P|Q10)5ie2u0JzKb2r z2C@{f?ZBcPw5%h&aKG+6%Qvhw(t1Y{hZ82YE4(Tlk`2VCgE&1x;AUt+5U*$%>P|iWLeb_PJL!VX=b4#>#QM;TGjFHBNRy+d{v>2cVXFyqaLd300 zFHWrc8lB1KSOH3dkJClJ%A5oE^31WrQZ3^-3`Zk?1GqoV7Wr62=V9C=(;#R zhzXAT03)d z9OdZ|;CjSnqQeqF-CUNR=x9x76JYnpr|T+6u#$y=7cMVG72k4f*BJIG>l1NNvyv6NQzr4U`r;= z&%W1Ri2sI5p|8%q5~zM-AMptHj_eX7FzJN7t(%+2dA)efyFbePBsClxY_yMqWbEdT z+jm?SZgH3mCzU?e^psnyd8UK zfZ$^_^}C1WYB1-$m4qwT@#=wsAq$9Xj=%IRvc#V?1azEi|RSc;M zQn;3%Gjk3D)R+3`gZplB>Pt;g?#EiwRzxON;% z#P5IK*YAh1Md<$o21R}j^8Y#t#`fP`nErnb@&CkI{`XNXulcVIXwLcS%VE4i4-!8a zpj-q)#TqXkFg&z4G9pG45A-$B_Lfacr)H85ge*yqTLAb(oY1$6Xu7Rc%^aVOmzsKd z=WEXA40~hm@7FKD9t14nSRt)m0XWkP1YbAE009nIupf`md=v&J;C}estaY0%^Z;;lf>5AF-y%Xf1QEK(}4n+ zhKsTx^bQSpwM=UWd3WRcpEQfw>P%zuhLeEdY}s%cGitMZa14Ui*Mzm%=(7<#b2gHmJ?kdeymT7H+Z8k8tgd zp-dhC)R!P!)w(n%RgOi%^)LGZX)yxC%@f@d4x@IRbq{elrCHyIuphEE6qd6l6O`;B zi0WQg;j`hcu51uYTBSSYNvY{Lkn$iu=Ae0g6o1cSTRwXmEvNcNI zv;)Z_?g>?aG`Zp}*gY8%LGI}{>J#`x;v=*ykuY@z2Erz>@b*)tMp2>=C20MI8|{Z2 z9hbyDJ7d#MdWK&fyZB>Jdm!#x_uRw%>`OuM!&QMim}baa76{L|VAuq%1UpXVHsClm zPD4}hjj{lj`)aaD;x|PJ9v@?8gZ!t5hER6!b~HJ_l9P|(h&R6js3mAfrC|c+fcH^1 zPF*w*_~+k%_~6|eE;-x}zc%qi-D-UpTcAg|5@FCEbYw6FhECLo+mVn^>@s-RqkhuDbDmM~lo<4sa`|9|$AltN_;g>$|B}Qs zpWVSnKNq69{}?|I`EOT~owb>vzQg|?@OEL`xKtkxLeMnWZ@ejqjJ%orYIs!jq3 zTfqdNelN8sLy2|MAkv`bxx`RN?4Dq{EIvjMbjI57d*`pO?Ns{7jxNsbUp=rF$GCut z7#7Dm#Gvh}E8~2Tyhj2reA%=ji|G6yr%@QV{(90cE{JYOW$0F|2MO+TM^`cAu$B7s zmBV^{IqUIbw5~muv}st`dDdIxSU@Eb>xf3$qwEcg;H+vp1^ArN@A)RtQ4hrid2B{9 zb~pG8?SC3#xctpJXWRGXt=cx6Cw!IqoJrK)kuLL&`UYYB{R6Dw)k9nKy>R#q_X|V* z%zVsST$=d(HozVBc|=9<175^~M$v$hL9azT^)TL7BIA#qt>N2^iWvMQgt;!YZt~cv zn!x^OB!3mOVj>^^{mloGiJhLI4qy3Vt-148>9j~d8coH)q|Cg5P89Xj>>hjtzq5iT z%go41Nhi}x7ZztTWj|deVpj>Oc#IrI{NxIm;qhnuNlvNZ0}d=DVa}=H0}Vi-I+wKK z*1uD=0_)b-!9S^5#(%_>3jcS-mv^;yFtq$1)!wGk2QP%=EbpoW++nvbFgbun1Eqri z<%yp)iPo|>^$*IHm@*O74Jve%nSmDeNGrZ&)N9 z)1rSz4ib+_{4ss2rSXRiDy zgh(descvk^&W|y)Oj#V@#)C658!**J#=ckpxGniX#zs0tA~NG>E#Hn3Q3wdKBfMG& zK}2y#|FLt}E`UQ6t3jK#G&e22bMBc3=C)LyqU706frdCAqa;~Q0L5)KJ4?@h*FFu4 z!s=hOC;G?Q)BRKJ1q_XJ9W5LLejp1L*187&5Bo4Of)k>T=WpQl3v#4iX$574fW`p+ z3m}r-F8Gjv1m3yTia=+2An1+E&psbXKjH2{<1xMb37`|D<%7c`0`~m0r>AQD^%nUJ`%PxS>)*{i zg?VHw)ju!$@$>xGszUyM_BsCF3*%>rxVZ8vrYB?PvDBBHQWz04T&UpxKU7{ zrb~8R4W>e)){FrKo^O5ts8O^r^t70=!se(2-(8&aTdaFU2;SR=dyECLBp|MVU@JIt z)z$TAHMKRnyX*5;O<*xm+(>Fo41G;Tk0w01ilh#uFJa{teQne`QCOHZp`&du5gkAWr@9Ywz%@P@KB0bD{lXo7PmrPC%J!A z%orlB>F}qRa$`XC2Ai_4L56#h2GWm;>sScPxhMO5a*guk2 z+56H}PZnq-sxASPn!B~W#8B1W=OQPf-lEbhOh%>%{AND;w%w;t<8%a%HNk`LQ0GpT z6au2l)=Brql2Fq{Kw316jHdW-WF<{46(Xad0uxi%3aEARVi*dKaR^jjW)$<$7QEiF z0uK-~dQ@|hxT5M|t$pBl+9IJig2o;?4>qY%<|sZ4Rk0Dc{ud;zd`g$&UcwLjY))aV z4jh&lc(;hjQaWB)K9EB@b^I)LQ~N_;SFEEWA&}`)g!E7-wzF%J8)yZaSOeR=igBiM zaU=T>5*oyz3jYaqv-RSC;r$%d^Z(cbLGwTQiT+3KCMt*OBOD@rPZ}8;)1_*l<5aBp zjl{A?HiE$Y6$NWUgPY(x@k^9)A|CC#nqZ?B&q-ceGE;Y7F{@0{lQuPnsj0~YX(VoZ zdJ})6X8821kH4_0vt$gocDeSve(SuROm_bM98&+q72$1m(x?A;;)@TWyuVXQV!{#( z41CN;(vq_a|56Yny*sb>5`lt+>?dvF0++3L!wQ_eJmXi)z_1UAmNi80_bG^|J$GZs zK^|0X@8jq9pyPt$dpiWWAG)mNg7X_BME=&UYoq>nc0gtk_YoXNb5hYb!hG ztf(P(6Bcy6`wroiv-5NLLjVBx&|;W6WwKMmB+ph%7$AJfV95||OktlFlTMqdKP0i#Y*rj`(XeYUz=adk`3hA(LvO`y z|0%R3GMWC#x}RbCNX_Cf;_wEOS}%lqj#-CXQDIpi8Qis%Radz>q0vjbY&8DdR>jXU zmvR%au!=9lMN?P=hzQpNGOJRw?Cn8@B@kEp4r5$bgdM0?Fdua~*H~mGTf}17rZog% z!Kj#>m=l>Po$A`_fcT-pHy*aya+n%rXmG0CJ6a{nF%>TfyzKC2Dit7a;!8r;X^G$~ zS03MClV}lI)S^Py2I2rLnpjR64L!#Fl!mCP0td}~3GFB3?F31>5JCwIC zC~8VAun2Z}@%MZ{PlIWpU@CJ06F_<61le-_Ws+FSmJ@j>XyyV(BH@K!JRR^~iGjAh zQ+NnRD1C)ttcyijf*{xky2tyhTpJvac8m%=FR-LL@s>rN`?kMDGf2yMliwkYj= zwEEJ0wlFp%TmE6|fiti_^wVrxJ#gh7z@f0+P!kS>c>;BHH)N`PW0JHTqA?B~fz6H+ zdQq>iwU2Kne+4kR2e~l2`>(-^qqujX*@|w7k>s=e)Y-lwoI{$Tx_2}&y$9LZzKG-w z{TH06d?a9;01ze%EvqDCEt;qAaOYdf@X)zT)ScQs**7gQ**A5+o9p#P*X5~lMpNl2 z6p=Ecy7#f++P2sk;I2Nd`w-!5Y^3QHV0RVy2<55pqQ z&Q&b+JIKTf&6N(UjwrECT(BwKhkdpc#(Aq= zyG*N2frC~4B2Ko7O)bOHP8(}XKc;_(GP&+{?#dJ;Y$YXT$y<%YZmc>C?Sik?i?6E1 zk~VKGMLlNws0d#wk-11tBrAf?Tbes4F)oqxr_*7R-?Yn4IlyyP_ce6(J&tXSFI~P^ zYG1K1&Y@OY%nE}Gsa8~iq!!=l4a+yi7?Rxi#owl|2CnVfey<;AkI<2^CN^r`;-)ob zX7Ccao0G6Ic0ENcm7#3(8Y>}hb9aL6Gi?llW(Kss_CW07Z*0rgVhbod7+2-z3EC%( zq7QLJy|>bn^fyDVwISg;I%*4-lpnL5wLoe=B5sV^!Vdseg%7piW`#>KU*HD}MZ&J=jCFG;)9zqX;~A15Xsg;+mAtJruykiiD4Qc5$;lWT@^-j>F$$|0*{U zmrM6Kwy7I0>uJ&DC#8>dW7&)!1!_uGQ@Mvr)n^bH?_w|*J_E0?B{C&x%7+%$9&Umb zMv=?f8jwV=X`(6MfQLkyXGt_A~#T^(h~B7+v?~%F6k&ziM^m_Cqb!a zf0y+(L*8N@-&FfWsxPx%V97(F{QW`L&>2NJyB_}HBTWa|xRs*TT-y}_qovhF=%OCJ zf)sDf8#yYtG3ySQ*(qqz9dXI;CfS6yLi>4H9w9ii-!j5NwHL>oEN83>IsEP+V_1~u z`?}q?(o8RjDY5V?z9HC@t*0V_hFqA|HyZ8k)T!UJQ`KEKMLlNlIq<$2s!x;)o#SW0?w*zVYU?yc(v(2qyZg z0(^T!7Qzhpm)`?PLS7z|(>s+ZUO?_>f0y8LjB9{7he}@4-%l99L!vhyLW=yQr!);4vCSd-wC1QX-%H=?#UM-D_Wg8t3W z0*rY0Q4xwb5i(lBSOs^u(IgRSP$j!PkhbcIr^rh}e})V_kU5jW{q)m0CALP$`wKi& z?444cDxl;D;SqSw0^h%eA6Ro@BhxmD!}qpGb6OxRi6;iFai!)ctW|gmF3jQz2*O}Z z*TPvZAxFr1-Dd!53U_WQMQh$aauyVf;O60e>&G;Mg83(TOZt!6;s2KT{}By>k&-_m zA1YA0q3ID6fx`!qxy=@dYO@Rn%rEb~7P_%;Dxvl(WAfiJUtti0?~ah#_1`K#A}P2n z7^D~GQL#`hC}2w`btD`i%)VBWnn*jWF=d!kI*6T5-wBdsT)$EZD=mrn&EhxJQ^3>1 zbLeDA3&BIDAv=kWsp0t6>a3lITA;khMX^(B8Ecb^U%P-|RNGB@XLq*Q5a zR9aZ8RFNDYvD`dcva-5ti*`CcV%ltLG;emYG)5Hvo^Boe6!Fu0ekZ(k<<5G3_4>Mg z-?ILGT9yB`Gy?Cnu(PO#(bsKyf9>@F_MJQFZFaBE?dA7x40K@HNwA20g&JE&q z6&$MUcmsL)Sq;;@a9!*!?ct(XynVCJutm{pZ5w3Xci1lQ!9oB`xCdL! z6i6sX5X8iljX<8L4KC)P_hyjfBo3W=8BfQ5^inG|_NhXI*k)fvrDRq;Mtl#IdM%t^ zo(9yQnnQj}I{C__YBGYykMvG(5)bL%7>X@vm&+vnDMvZ(QMVC;#;@DZ9#6!r74JA`7phVA#`JE` z>BU^K@B>jj8Maz2m^>t$!%J^m)e|Ylem4L>e=OHtOVBCDy{0or$Np^VjdNl=g3xT8 zqsE*&O{Q9{>LhP;F2vpR<1t@fO4^Fbd{cO753U@l zLFAlS*(cze1w03?ZyLxG9S&n_udo?=8ddzgt#cv5fKd+uyogyl;44IK1&z^wj=!YK zzUD&kgK%`pt9A4nks?WMImECKCAt*xUXcPbo9e1&PmWU$X9~!}HO|j@r(`+=V^^Lc zcLMKF*Yj`EaS|pmb1uaDbkZvx6m%4{=z+MdgTuv?mT=4T&n?h7T_tQNFYhz$`~(DF zx4T%9nS-@(gWPm3?tZwJIpHDGWzAJ__zZKP;Hw>~%&n=s$Pn?6CaJ>bJzY?o)(O#~ z1fxWpkgP7ukZGyitR1C364Jp*?#{WzBom;9o=XrY;V#_Y5@5*}T5v*hcW#I;Sb)H; z6^g4&{fOcGP0zWCURc5J$ExdSY5s?r-^r#;|BS)8NjQH2--6b}!Q-Aa$mx_pNnz4q z(1_zCdqOu|4b4oo+-*jjTTV_j3WmL9=u`0(l@>00B5Vg?4f?fqwWRCX*2JwC(Yd+i z5A-Rm0r4e~4ceSJnEmWF6Nk>Q;(7sYyQ<-CgPa1fO8m6_pu=Maf0e2hd92Q#i7j?U z-VR;%F~r=@Xs>J2`Nx))UK=X`Shhg3AWzbwE<#%hM+KSQ)y~F!~7j*2}qu zgT9Z6kE4Z|n9Leb=N0%JnFI$AeNrV+!>E(WT7dyOjN~44BhNVL4(%Eo(1JGjS^)Oc zjSPsu`3wT8k`$>Na;G3pMU(9;+ov}PpiRt6*)WNMy(rEUak-14^(K`73yJ1#LZna? zS)ypsH=xt_ z1V%Pk;E@JqJeE1&xI}|JylZJSsu+mw#r=)G*5DBGv*`Q|1AC+!MW979QEZ{H5*8ZW z_U8EI1(M1LDjG^#yy~(OGH)?SdmR~=ma_^2Q#k>)`v#$t=~Ih|79!ZutXQTK^S&w` z1)ONotPDL(cz!_@bFBBOo6W@;7Zz--d9JaOs{)ss4P|Mr%>FaiMR=(fn-Y3SA->6~ zp`5h}dOcY_YfweZB*^el7qqa$&_r-Lg-I+9~U z`JxVCD<$VmoiR$g^3dU%7Sij)XYi*?$#ihSxCBHGOaRRr|Lo9+E}O~M>I}tnokI`}F32Aty#b8rpABEKl|B;*o8ge^^)Kyk z0!(>gFV=c)Q2Y%>gz+sa3xYTUy_X`rK5ca{{erC9WJ3EPKG{|Nng_-78kAD{oh_=K zn*wopK3cG}MBJf%6=}9YouD;zyWbjRt%A#pWc1zb3@FB`_Q~~UI!uvse(FQfl zUt=Qy2DSjwpzAUJ048~^;@Yo{C56R_8nZEeF}vm)0xoYe0y|tYI!>Y(d}mSro0`z; zeb6Eg*(a2{5Ypj8S$-_~L)+IlozZn|Iak`$jQKd63hldhts0=m>k~HC&`@|~;XaG6 zLVxC))8>^?13P*mV#ydlkC0V6AWK(BjWpqu| zbh7#bkKuL<kv5;Emm4zkF;X>rfbzAc7!Z)i};f=*bypYUD zho5-B5n;)FP(nzq8FG3TH?7l0vS{G}G9@~zxY>CqbX^mb$|JncS3I_2RD@?I9bz>LbX13A0N_LQmd(!3AxqmR_;3bJavc81%v z)Q~pDm0d1VrVe~>X?GOUOz94e6Nbt|fe6(S@cN64Gy6{i*TPukTmfvgPR>+qe>)@w z8mS6=rvR0~cqVfEWFsL|kZ3t~m-iV}va(IjJ;Hh4R9uISa6;@9d{D+7CwskGx!7MGZ6|rdE_I{cMD}-` zoi0%doDSznN-Evavf!_d@UNJt*Fl;hNrnVT2Fal8iBh(LU^l>8I1%x!q=6A@zO6O} zs0R@~z(6E;t~6L7tclb6A}zwwIvS;W`?F>>P)INWt6N9r4JbH*;&^6B!lHNAY+v3R zwCVoTTSL`1XtRZ_9vWH*(HcV?PImcNBOtbC4{U(v-HA~xMdpP8<);Xv0y_e1i%t|f zdyL`MtgjoC^Z-wGt@&6(9Wx>;qYcYwopK7H4iejT?T|>BSm)-fV&7yB;ANW4ZRzzc z?^;uh#-bDq@QjjBiIf-00TSw~)V;r?BHNEpDb(dLsJ_Z!zT7<{oC-V^NTEs|MeD0- zzuH~jmz>@&JaYIW>X&?~S>~+R!;wQOq|+{tI&#vV^n%|7ksh!vXzONlSb4zc!X;}> zMaUjix==sr4oMiHxL@~MPL%PrMzU{DPuz`9zWln9XnqKqNo3TZc;22OZ{ zy(90FLmd!qHIv!b-q){c(0@VYnzE(k5#rf~N5m{u-X za_J$`vM`7Bh@_`N%&n~35!O^m^pyWGR65?W@EH_fG}veT4I>@L72iny$1yuwBopv> zsSxe4Htw2+2f`M-+7|iva$OjEp*e=6r{J`{W_IyMTo#x0Yayp+V8z~17Hx&~6G%t? zN=#7bc$BWFl&qzMvU^iRl>Rvj(_`fR9T%ZBYX1?fg((%9FgbGrBl_7^rRQW9GA*@E zLN~c4F@W|oNmH$kHZ)4U$u(P4S;GSPDy671d;6L8z}?RfSb0PHN)PsKViOm_PLB-7 z+-+jjpC&oGWj(BQ{|L#DFOC3+-%fvGOOx^u^Ysxsq)Ox4^;}rM$!;(?`m@wtkXb~%u$Zx% za#IBD9hq=no-2H90jB}1^>TfWp)=Sb1v9w#UAHvYbn1PpHFbB+hwSXWK(ta=^8VN< z^j!PhT^ZXf#;?$ZWkn?(vJ20u-_SsGO1os)z;s=hI)d6iN-4mC9>EtcU@Mybflo@| z82lRHB)FEu4k@P9W+a)>t{^Jl;)gL&tWZBy(gWmfXX8XiUdnU>LtbceRd2RogiprV zK3KHRpSd5n#Hy5wQ!-Fg;{(9?K%pRuAEZwPR-E)JGeljq?MUmP=K$zkEO46*td&DL z%C4c|+^C204zq3rsTdE?%Y;lc1vKitClZ79P)GU-k`VCL5(kX_>5D{)C18r$^duj) zab$~pZ#$FLi^ihhytr80x6p2DsA3IsHPguaQ&s4izcL;7qGj1rPQM)4uc!I=d^j7S zs{`eqUlX0}s<8@_Iij-NBLD<2BE3VJ&k4Z6H;z?!7!7-XeeC-aX{Tl6ml!93m*cFJ z#Z5Q7fr}UC|2wXN*{|KEWPZ(V^*agnsVlrYkAd651IAl&yHxt9OnMCJBht5xn*lR2&NabYN zSWC^|d16K9!d@LjLiX4uEhz;%>2G#@i;bdI;t=8bK>y@P)WT!mDr~z}pG- zRg0M$Qpz0mbKF!xENTw8!Wwu{`9|04Gou}nTQ_L@`rl58B6UT^4~-?*}V`fYfKSaDIH zavlsK6XsL9-WmdH$C72oMpwJp)?;)Z4K6Es0B$SXP*QhM!gvpdUyI?}p1c2yYhY~r z_VvRqI~hi$_97U@cE5#Z{Zhy&EqB*`vAMpf?Ya?h{;uuk-}E1T!ah4kx_Q*9mOjl* zv62c1x-eMCSfQ*b3b|P6*~#_2>fN2y=iJQy-I$q_TIV>AHLGvxzY#v#{w}OBR>mny zZ+4AXVq%F7d*h&{U!c8&&KUXS@X->Bu@pTF71|eeQVYw8ns~h`7|n?)2@d35c_1Jn zeG)5*kFZ<}MejgYN(?7Nw?Mod)k5v*wm{$@osr)Ywv-QvXpeI;3Qku^T}zo`go?co z|65!$tORilITCe4GfhNoqaj~NtO|@obiA%Tub@&qQ)*Sn14oz#=<2osGcxe*+@PL< zyx=_nR&*Un8g$Iu#el1FV8xS6kKlqt6Q_nLmsoyCCicctlpM=xVMApO3V7u00mxNJ zn8H5H7~1cY0)_}KJSfc2QSG+HDoQlkX^Iwi_%Qb4&1XPlDw$%cwf-dlhzTK+<_D-) z&P@=34aLr)@%x%0WcLNFBZ4im4biAYc zX48#WytT#YP@@jEfGgaR&J#HZzJa@HjxyMYHe{pLPnxkn;~Nj*Rk*wS5*frI0o^@# z&G3U*-hF=Y_v1Euf&ZeY$+hsoi~%M`iq}OU5nnKjI6qCo7#tk{_f3pIO(8(pMmgCr#+;(8d(-5n@oY{gBKSFB;sfY zEGd8%M6}wgw88w$*dURSw+YzI2N!gycd}~V$*T@AlPt*-f=web80-YsRGL; zIurEoITNgt(oy6p0G%)TAq})jmI~qDOTd#8SWUAuE(*k}kk&NIGfR#?MWZ&@WgOiL z>$#C7>im5ft}NgVUz#o-;GS~3h`u>vuPTQ6J_?slXE&+uSm7V8X2xqGN*g32wQVF? z60uDVd}|BtzXW}IHl+O9$Y${gL@oN<={bc5POfF*UaM4*ulAX=jeCFG9716kCF{ap z+Aa!D*;gIqFWp_D0@7TOln&`G=|&m}X{5WP1i2vScNypR7x`wGaTX8H zJ@~rx)5+w$k^uMixVE%C0WLCO~Q+tBA;H0@eFG) z9eC{^DN&Wg*!QSPZ&6UQTXd8o&~Nom);LFsVoC&=vbu|xNN`s-1=AH*8)z4To#%#y zdd$@UB#=RyuU6;>-mgB-YAnr|4VG~L%5Zu?2?e8cV@hX1%$C z-Y!`@^OUFtA7Pe=$M(LJiXU=J1!QUEtKOP0NQ3X zL0EH2;5m@t@SxuG%G+4`P52~ZYSYtf<5_!E_05F>!Og3NVhP<3((hbndMVWA>MlDv zn$&G-7+NQ3%TTa+SwC{12rdHZ(>d@r=%m6}QzK^c#Jf1mYV4ihwfN65H)@P8$MxDc zTjl)d2R0#MAxtC@z=02~@CN4)F3cc@}c$eNk#9s}m0 zCQU1m>8KltX-7??Rz`KAa9O`78vwc z96b`^On^}8Uq2X$nJstj(oDH3I)|mIuLz zwkCtM6CN9f((dN*4jqG4{_r(Wh z2u?7~;PfTgKZy`BNs+soV7l`vUoj0Zs59#tk&2GGS#}^vM~n9_o1()DH&=e+1J8g6 z?KqAZE{5+wu z^h1JTDHbTO>mUG#C?;6@CZ1@94=<&=#wE65{;Up>sTq@gJ?nsNSa6zE7ZoR|eSK`& ziwVJeio-qK&1`}djVaTPBHAtX-iedlv!W}@HqzoQ&gu~oM(#ZleNhagi2S^z0$`*2 zvXv*_l*3vp7N$6SniJ6keA;%N);Z;F2X+yzHXEKK>|!l-K+oBIB9Rg(r?T)}`0nwz zW>J5H2T!yBBQv!CV3wS!?e?ao$JZGHB3>?^p;I0oEq1rFbn-K-z1;UX^Zco(t|y{F z&aaht8|ducgto&gzsFOSGgDA6d{NN+DwNR7IvD2_ztxv{`PTvRQAD{R>ii;bqI6H$ zi~7*gkXL6sk*D( zRfRn^T)TGZOa5H8)%KL|b$feS+tmm`x=ir7xA_SFtXdrfwMW*l6LlqDsdN9czC4LZ zxQ1hx2G%}RlTH8PFjxmCx{XLh9X)5F)BD@x`3Yu(w&|MQ@Wn))MQ5P40oe6lq zj6&YQ)Y$fsl?yoMn2DRKmBXL&;#5@wIec)ey+_r)wLWKQ$%Nl|=)1S>2v2Br1GB0z z{26J4KqT_fthh6KL4A_nUGh|M?rQeB3d2M>f>?eF=%>&KBi ztb~177I8YO@8HV-(xw2pP4vCgNM_ODMc*XT)Vb84bZ$(aRZCi0SD4Vb5~0yzn-7uD z8&6`h4|PfG#@4O=sM;eev2gieyH}I*Rnq8!MO>k8@S&aMNX9c!hpUjKeRDUN*M<4& z`yP541rMR2;EXAYLf51%0hfLwoLO*VT(v!KEHyrD(8{a*@p_=xOtG6Ck0QfS>k&u_69rGu_Jt&YG97L`S7&3_{l%EQ)VAjX z2UV7D9)#I1Jv#8Fd6X+dOxjZTXFW0vpAv0)rZ!Ck6!Fz&&ZCezKS|5 z__!pv3>!#(zZ}MQfb=Bz4!aBypX`XnE#6B?yfTCmP8;tZVe#%QC2|cSbs$Q7mx9Wk zrhgq}S`lflHu@AX)_|0m0Dgy%FGt|ZP!H;(BN8Ff)p``6P$lT2Z4~=eFDFmYJt6Yd zs+IG46y)X4Cg=VU%>5u$6hq|9hlX$~MPeX{3SWik%ZBMETV^`}7l|$=T9oPv=>MfAuVpVuT?xQI-5MnhAwB~WKF3p#jb^%x)hgQ5w zEYy^HY%m(3qgTb0>_xhyGy49WgkavN*iwr9){qxmZ}0h)}ji`R&Z0sEAcs4@JVrXS$uNXI67&^So5DE z_wSSV)|hizP*Za+cCTn0^tCx`&1B`kM^^O^qqM)Or4WgFyEKhu_AWCV(8q?&7iiv8?d=$)b z1MCx)Px;%)v~QO*(UKzoMpj-f68L&<9G&jy%k26a6l~xWa27d=0zy9Y?Knv>uTy3B z#R4dYL0;(wG{B!VU<) zL0dQ}cE7}kSnh!@UA2Nn@KkO8%G$oaXs^?*bXW`@IS`edO zPr)lZK}u7D_99TTzwi<#blDq<%z2HzF#{9rVJal40r))tDNA4@UK9YkbOz5og)RphDfLoH8TaTJ5@i1x@Ntowsmz3c5mldGTpqbAC8z+-y z3YUgK2;tdm95YQ4$o=gR_I;ot|JG0jq~!w!JryDgGKTgLd#SK)h0Z1kh907bO~U(% zT6jiFnX@TWSv@xNo`&z|2;9Rf1$ArDtzSTk!BFYr;&ymtj4Bt1vK|q*ut&Efy?Wd; zk}_qM;ziWm-`?rC{al#%^wRcw6wOCC6Gv|Oa7>zIK{tOroHE9p3-q;DwTZq9(y|SP zOB|hi75t%%z@ZErp@owZiI?H$xHMR7h2k#XwmQmT>7xof5gx@XC`fVWVA~cioSE&K zoAYasmf;04$arj zg1&eL7=I?+WRf^o3qFw^#Y?d9v=-_zeL94x2|usB_;~yo&#*;J>I2Yf+qzIM|Bzwn zf!lXOXQspLmvN-cJ7Fy^Z9K-=NwWY4W8RL-q!b82mgurWTar+^3SwpU*Swg_MY|-s469h*lM(kJ74z%e#v1B%~p6k+k`Zr4M;9Y)5 zrQ#%yC8mb5QdUfV#)WRwxc!2-9CA{=B zX*|`We_=f<%xhLdJy`#KbR#+lj|R6pJG@ZTcZtr=Ff(n00MTQyi<~xkl6_QIxuYG4 zAn6QsfWJSaT0)kmDQ#9{(H8{k;(F3zbIvl5oA9MZn}6VxAW4VEuDJQJ_tvW3^8<=i zgp3DjuXDefv#|&0?0j(&4lc6i2+%kQ@a&fm9)1GxAuGZrRy#lIac(Y6!xvAGHrz|( z)4AuuEkq7`w4@FDUqah3+{y7xTbMo!P#&kbRy-1zFRXRTL}Q62x?q@Ltwnr zqyF|*{ZdFu!MG|}fKcf)Jk0y#Qk3t&@IZLWry+1U{!CF4(R_B8fZnVnvN#y`yJk&8 z5o|-I$t$7DEs@z0(ie7=MpaKrn9UfAR;(N*a)J1eej0*KIXkIFx?K6bYtjN0RG<87MN5Ph zVo*0Xd;_STda7fc?U{jG%U9FOdo7NOGFCBEBwR&j;4Q&)m*JVsL7mSZgs;+{K}z*uLldQDk~pDMMpTRSMayDpW3jXcP-aFaK4SRwhOg43SAApaG6v=#1q zJc}I6RObkNMZVE@gW2>|4+xVVmeNu`#F_MzWq24w2tz{n%bb;&u07(#9!N=hc`@qKm@EtkN&lDJr;L zvk}HQSsd&o7#d_Yb%Py=9{clqy|F19S81|cMmz<+n!5J&3Ck5~Y}=}arb30r5}^V2 zwD^K-=syNKf8H+4r==Oz7M~|D34$w9WiTg+r6;uognB=hj*}U3^eWO|j0up?kWWmA zbEER8t!`eQ+ApRkQmsrzPN32!_e#P_Bfh6aGOTD3gOGBH=Ob&R+Zi30Sc%Aea9H~7 zEB4j%17ym*rkGd>UA_HLZ^3@`9`Eu;NC;;HEL3An;iEgR+j-;5@XGL#4o02(SG@?! zmNW>y;+PQTA_i>3r%-PIQ`x*!@b_24mk5(I-0 zzIJW*ZBIgn{B;FFhh;m=5q`WK>P;)21@!H0ON)E1P2mW93!PsfiMK!~#1#~LLfyQC z=}TF_5|H{5J7GF~A2vvJiJs7KH5%w}$Y@iz%2sMQefiYTC#VW!XWSEusTc6L|ImO) zFuc>MCylPg;Rn_By}7kLshEh9A0guK0m6Y_KKvx}_MX5@{;8^|M4lHz59q-^n>s3N%P-)wu*Apy1c*uY%ls6{?1UoxSMsVN7r!vmY$4U1ZpCFZp zSB*$nRK#ut<0W7!D`6u+bGR?I9e<3Zx6iW5FM1YNJ5roEjQwT4gD$elG@b7S?XgGj z6?8Gv(sGLkkFv-Bz!vs_FSNi1>W-{uoLZyfxL5}8Z{yqaEK9mx*?8EyKbB&|oe3nO z8VPv6K-BGik_oh;MUxzP=SHYz+sWoU*_Pc|ZAp%rEG2OgkyA{O@|sV48aj}*$c=#ReFzE9^##pCm4G| z2ExX>|7BshOX&F%0r(Syy*@UGUX!?ky}6Zz8#t5q|1GZL;`G!$N@DbUPo4((w_%ge zvSuqV7dVNPK^Ue9v@t}A{2cJ=Vt!H6_jWRDXA_0fHLnagK+aM{WcrW(C(d1S@nS3RlL zUYh7&54coZVswV%&><$802)Ds6(5Ty!)=(|2PPPUY}b*5H@uVe7@L=Qb0@q9St`u+ zN_!X`!fP90I@Pzd3+=S%-p@UT)RD36;vT`l)y>59$+Nk(IHfmD3&VHLW5m_Y`<9v9=7o^jo4Lz36MNl!%1 z3c{>#C-z6vmYddm?8F5!nukB?&9Qdzs!KMBj{!#L!8zi1kBIRuP=&b|uHG%D0++Ww zKF=0w;?gq+M!;#eX^_}Pr4<(R>gE(Ur;1)gwTux=f1IQG>fb4lRG zauq6JTk=W;nN0r%g|iMMZts2#+~Kw1kA-3nBBM<2&r;0npESg~K6u!!V7Y-zgy%jr z!=09xB~ev~Jcp)_SGwX7G$-j)q(48uz%aSH{(e4l252lUj``uz&I8@A_=KdyUZ?@Q(rXR552h$Wp&%Sm$b-Okpa9CMXW*$|8A3#-)8|R{nX6* zrI}P?wPY7piep=yrIXLRu5>57uq2UvzR<1~NwK~f8JrI9srnbs2UA;5UgdfyLRR&X zAXqb}GL2YZjX`a)UZ~1kU9Bst!uiUq9|M?TT{2V70AVJ|-z~5F6{)i=C=%eGKF6%Y z7Ft=6dZdWTXx8KXRhtxFSRyM*AuF=@3GUfDy+`L!cV z`(^xDDBY+K4#OC;>}DddEs8FK>ce{#!e2#ud;xxKyt5wP;!mD`4l^XIWLkqgMWo%f zaflwyB3@QC!jweeSK)r;DGG-cCu&bG3U3{ikLdi;H(v7DU?2%M?3qCC8b93Hb2PJ8 z@QeX-JYCs{mGVMLlFvfm&_dn3r$3Xx;jR^+ts(ChilDJchx+!Diue#c4B z*?P;?K7WLbI!9T{JovmNd>w<{$E!;H66`ObfV*qFGyRM4F5w9=Avky7CqrbX!vrp)1mkD1rC#mdLXdN5pFSJ z*(*Zoh!M$6Z&r2Qz%JRl;UnMd*_o@|;^NH2X#LxwMlEsQulGJjB@VuxX*cV4`Lws> zjl|ByKhtDk-fUo=Yh_xY^aZC}aF!_|(lIkA7TzQRY(t0p>Gd&tc> zes@Omai_pyi@$|MbZVE&ERRd{jvv1`xy40nO-yXFC#y+=4&S)Sp)+(Djck1bYeH4! zm3cZ@u`K`0Js)Lp=f+iJs`n|0M3vE<8>IBf1WpRk4Sn<9nsijK^v9}F8FXx52olT* z%Rek&eO%wFlj3mYQhb}!v=YZXUUOO=$D~YwDZ#~m7 z44|QAFF^b`OSw!ZP+^L^zK)1>UerWGO_E%p^2sP({CtErlFQfrt$O>4 zcuslow^_3ri0HuWcigZz2w%Q*7cm;>40)1o@kz}pysE50TzoIPQwuXFW}elhNffQq ztZ)$Oz@XwhOmbLQ@ zHdq2g<@TQ%lSARCV#zL2X2O~fLkuTD81 z;n(NWjoQXwD1@m_!wBJ5PzLd0<=A+CCKTW<`dnOI=yAmO5HaW9zyjJ<0ws*rHnyd_&^78n&clLII+-hONNCDg>?d-5cWDLC_b)9n6o{P1CU-$7L407s-_ z-pN>_?^HhHRDQmVX3NRF#4(=Jdi27iXbVZSm@Te&4UHIPDSbLIRgksrcMi!}LH8kx zi1kkV?^GlM!Caxc9^)p1vBDD=F(&PD^l79>spQ`#vz{QD@ z9VQiviBfRP&y$x0E-FU?(j7DNYgz5FnO9-1U7Fj10D;J3`ywYGRtdNp5Y>Qo+1-P@|$#4vrd!{It&D4(5 z88MK>t&(M*q{{bk+gKz8BV8NoUls7#Pa(Gk7HG*!WO1MnoAKw=-;D)9T2XpobRN@;R9$ zdDZ*TNdMDRe3pcxxWT#?Gvz6$N>L_At8M<_Nu!G9BUfJBQ zeod4i4j8la+F6~Ch&@o#a%JWXtFx6-@5vSL5;@>X>|ze$N=4Jovjt5>8c*=P)os?J z=UlsoH#$Jz7vfg0g=+%Jf)w{Z(Z%^d5W}1#^0}%BgEhRzNs8I2&P7V?GtK0o$CS>y zS%AH91idyPyNX-#5}K5@2VRQ>?Da%6Q(1)*NzRxW9-2LG&+L zW9v~&N*UPrd!ao6TTvM1O*2z1?grU81wdZsv-2#9){B=Yo58FPq{90cNRy?PdBzqr zbXR&i)#}mnzKE|yj_#pCV$njDr<`4a;0d&q@G_^+74Q(M$6rW^ZRcZS?r=zYm%#Gj z!Sc1I-ZxAVPnlVmU2ukuW86&QC4@4nDGZNmY%^`PdC5+u~%7?p{5Ihg@E{qe%G7|%$x8>B2lP60{y^WAi!)2f5_jj zyAZ&Czma_OcZ!1f$!-?4yN(KE{v8Flf2F|VM_l1=DI&Z}(RBvZ-?=MJurdV+bx}qc zMM>r#Mp-#9xf(Dlj7$ur%9-=K=m+1QT9ro_U?#&Wv%M{`+o5WT)8b>jv9 z{(W;{+`KsjQAHU^2{m;l1<5DCcK8k!lt%~8FU9>xGEa>%xpxcvNwk|}rEBVH6gs&y zcc%2{>C}&E29pz0OWd`^u-ES8cTVPzX`)(qt=d?&K@&=Rotx78SlqgrEVG_qUo)_mC$8U`F#qlHOCD&RSroexT?YJLzvne^0W z@;=|QRR6AVW@n3W0fEJOGM5gbEhzW#FFa{0FL+k>kgt~r3DnajgxZvn2mk*LWvgsJNdYFw~S!X4cFe+Q;Q-_W%N z9+%cg5D+rIfU$v>NB;`!-|$Y|w(+s#2VpgER|yU}|IL~d1DHEF1OAnnMj?dmwqP?|!Tm)27hExl-^LX;b^(CT z!UODGtX!?!0czl=9(xOLEjt>6{g40iN!)JVBc;&q!{D7LBTNX0>kPC%g@yXJ??CR3 z^oF;AH}dO}OTni1fx&;Ra!+t5|8G{gf|ZL4*w`O!41NfJAE&N>zi#R(&V#)+FzyN% z_g90{z|?BLiTfv@hp{u@$1u7B_-1N#iJ#RBzM2BR!2c8QKQ->n9NpJB+kXlz_@(`y zApg-W%GVs=-$=u6Jp_Mfr34rf;5=qxnT`lG`0>Z&B#n)_ODW`1+jPPicN} zhgOBZJau)7R=(j9e&@_!Y{d>iX#+|6|i>`&Q={(}Kji+O zpFcjFOMd9Ss|3O?C362PVeDvZY6)PztKhZE=cg?HTJXn${I25H4xgVwR(eM*+@Z8Irh^0H1^@(vM%fLB8x9<0IcS*cf20Th OJOEd-=rxTO#Qy`$*1Hh^ literal 0 HcmV?d00001 diff --git a/jsonld/.mvn/wrapper/maven-wrapper.properties b/jsonld/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 0000000000..c954cec91c --- /dev/null +++ b/jsonld/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1 @@ +distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.3.9/apache-maven-3.3.9-bin.zip diff --git a/jsonld/README.md b/jsonld/README.md new file mode 100644 index 0000000000..51ca961bea --- /dev/null +++ b/jsonld/README.md @@ -0,0 +1,22 @@ +JSON-LD +======= + +Hypermedia serialization with JSON-LD. + +### Requirements + +- Maven +- JDK 8 +- JSON-LD + +### Running +To build and start the server simply type + +```bash +$ mvn clean install +$ mvn spring-boot:run +``` + +Now with default configurations it will be available at: [http://localhost:8080](http://localhost:8080) + +Enjoy it :) \ No newline at end of file diff --git a/jsonld/mvnw b/jsonld/mvnw new file mode 100755 index 0000000000..a1ba1bf554 --- /dev/null +++ b/jsonld/mvnw @@ -0,0 +1,233 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# 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. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Maven2 Start Up Batch script +# +# Required ENV vars: +# ------------------ +# JAVA_HOME - location of a JDK home dir +# +# Optional ENV vars +# ----------------- +# M2_HOME - location of maven2's installed home dir +# MAVEN_OPTS - parameters passed to the Java VM when running Maven +# e.g. to debug Maven itself, use +# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# ---------------------------------------------------------------------------- + +if [ -z "$MAVEN_SKIP_RC" ] ; then + + if [ -f /etc/mavenrc ] ; then + . /etc/mavenrc + fi + + if [ -f "$HOME/.mavenrc" ] ; then + . "$HOME/.mavenrc" + fi + +fi + +# OS specific support. $var _must_ be set to either true or false. +cygwin=false; +darwin=false; +mingw=false +case "`uname`" in + CYGWIN*) cygwin=true ;; + MINGW*) mingw=true;; + Darwin*) darwin=true + # + # Look for the Apple JDKs first to preserve the existing behaviour, and then look + # for the new JDKs provided by Oracle. + # + if [ -z "$JAVA_HOME" ] && [ -L /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK ] ; then + # + # Apple JDKs + # + export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home + fi + + if [ -z "$JAVA_HOME" ] && [ -L /System/Library/Java/JavaVirtualMachines/CurrentJDK ] ; then + # + # Apple JDKs + # + export JAVA_HOME=/System/Library/Java/JavaVirtualMachines/CurrentJDK/Contents/Home + fi + + if [ -z "$JAVA_HOME" ] && [ -L "/Library/Java/JavaVirtualMachines/CurrentJDK" ] ; then + # + # Oracle JDKs + # + export JAVA_HOME=/Library/Java/JavaVirtualMachines/CurrentJDK/Contents/Home + fi + + if [ -z "$JAVA_HOME" ] && [ -x "/usr/libexec/java_home" ]; then + # + # Apple JDKs + # + export JAVA_HOME=`/usr/libexec/java_home` + fi + ;; +esac + +if [ -z "$JAVA_HOME" ] ; then + if [ -r /etc/gentoo-release ] ; then + JAVA_HOME=`java-config --jre-home` + fi +fi + +if [ -z "$M2_HOME" ] ; then + ## resolve links - $0 may be a link to maven's home + PRG="$0" + + # need this for relative symlinks + while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG="`dirname "$PRG"`/$link" + fi + done + + saveddir=`pwd` + + M2_HOME=`dirname "$PRG"`/.. + + # make it fully qualified + M2_HOME=`cd "$M2_HOME" && pwd` + + cd "$saveddir" + # echo Using m2 at $M2_HOME +fi + +# For Cygwin, ensure paths are in UNIX format before anything is touched +if $cygwin ; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --unix "$M2_HOME"` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`cygpath --unix "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && + CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +fi + +# For Migwn, ensure paths are in UNIX format before anything is touched +if $mingw ; then + [ -n "$M2_HOME" ] && + M2_HOME="`(cd "$M2_HOME"; pwd)`" + [ -n "$JAVA_HOME" ] && + JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" + # TODO classpath? +fi + +if [ -z "$JAVA_HOME" ]; then + javaExecutable="`which javac`" + if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then + # readlink(1) is not available as standard on Solaris 10. + readLink=`which readlink` + if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then + if $darwin ; then + javaHome="`dirname \"$javaExecutable\"`" + javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" + else + javaExecutable="`readlink -f \"$javaExecutable\"`" + fi + javaHome="`dirname \"$javaExecutable\"`" + javaHome=`expr "$javaHome" : '\(.*\)/bin'` + JAVA_HOME="$javaHome" + export JAVA_HOME + fi + fi +fi + +if [ -z "$JAVACMD" ] ; then + if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + else + JAVACMD="`which java`" + fi +fi + +if [ ! -x "$JAVACMD" ] ; then + echo "Error: JAVA_HOME is not defined correctly." >&2 + echo " We cannot execute $JAVACMD" >&2 + exit 1 +fi + +if [ -z "$JAVA_HOME" ] ; then + echo "Warning: JAVA_HOME environment variable is not set." +fi + +CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher + +# For Cygwin, switch paths to Windows format before running java +if $cygwin; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --path --windows "$M2_HOME"` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && + CLASSPATH=`cygpath --path --windows "$CLASSPATH"` +fi + +# traverses directory structure from process work directory to filesystem root +# first directory with .mvn subdirectory is considered project base directory +find_maven_basedir() { + local basedir=$(pwd) + local wdir=$(pwd) + while [ "$wdir" != '/' ] ; do + if [ -d "$wdir"/.mvn ] ; then + basedir=$wdir + break + fi + wdir=$(cd "$wdir/.."; pwd) + done + echo "${basedir}" +} + +# concatenates all lines of a file +concat_lines() { + if [ -f "$1" ]; then + echo "$(tr -s '\n' ' ' < "$1")" + fi +} + +export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-$(find_maven_basedir)} +MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" + +# Provide a "standardized" way to retrieve the CLI args that will +# work with both Windows and non-Windows executions. +MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" +export MAVEN_CMD_LINE_ARGS + +WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +exec "$JAVACMD" \ + $MAVEN_OPTS \ + -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ + "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ + ${WRAPPER_LAUNCHER} "$@" diff --git a/jsonld/mvnw.cmd b/jsonld/mvnw.cmd new file mode 100644 index 0000000000..2b934e89dd --- /dev/null +++ b/jsonld/mvnw.cmd @@ -0,0 +1,145 @@ +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Maven2 Start Up Batch script +@REM +@REM Required ENV vars: +@REM JAVA_HOME - location of a JDK home dir +@REM +@REM Optional ENV vars +@REM M2_HOME - location of maven2's installed home dir +@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands +@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending +@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven +@REM e.g. to debug Maven itself, use +@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM ---------------------------------------------------------------------------- + +@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' +@echo off +@REM enable echoing my setting MAVEN_BATCH_ECHO to 'on' +@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% + +@REM set %HOME% to equivalent of $HOME +if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") + +@REM Execute a user defined script before this one +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre +@REM check for pre script, once with legacy .bat ending and once with .cmd ending +if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat" +if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd" +:skipRcPre + +@setlocal + +set ERROR_CODE=0 + +@REM To isolate internal variables from possible post scripts, we use another setlocal +@setlocal + +@REM ==== START VALIDATION ==== +if not "%JAVA_HOME%" == "" goto OkJHome + +echo. +echo Error: JAVA_HOME not found in your environment. >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +:OkJHome +if exist "%JAVA_HOME%\bin\java.exe" goto init + +echo. +echo Error: JAVA_HOME is set to an invalid directory. >&2 +echo JAVA_HOME = "%JAVA_HOME%" >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +@REM ==== END VALIDATION ==== + +:init + +set MAVEN_CMD_LINE_ARGS=%* + +@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". +@REM Fallback to current working directory if not found. + +set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% +IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir + +set EXEC_DIR=%CD% +set WDIR=%EXEC_DIR% +:findBaseDir +IF EXIST "%WDIR%"\.mvn goto baseDirFound +cd .. +IF "%WDIR%"=="%CD%" goto baseDirNotFound +set WDIR=%CD% +goto findBaseDir + +:baseDirFound +set MAVEN_PROJECTBASEDIR=%WDIR% +cd "%EXEC_DIR%" +goto endDetectBaseDir + +:baseDirNotFound +set MAVEN_PROJECTBASEDIR=%EXEC_DIR% +cd "%EXEC_DIR%" + +:endDetectBaseDir + +IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig + +@setlocal EnableExtensions EnableDelayedExpansion +for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a +@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% + +:endReadAdditionalConfig + +SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" + +set WRAPPER_JAR="".\.mvn\wrapper\maven-wrapper.jar"" +set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CMD_LINE_ARGS% +if ERRORLEVEL 1 goto error +goto end + +:error +set ERROR_CODE=1 + +:end +@endlocal & set ERROR_CODE=%ERROR_CODE% + +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost +@REM check for post script, once with legacy .bat ending and once with .cmd ending +if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat" +if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd" +:skipRcPost + +@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' +if "%MAVEN_BATCH_PAUSE%" == "on" pause + +if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE% + +exit /B %ERROR_CODE% \ No newline at end of file diff --git a/jsonld/pom.xml b/jsonld/pom.xml new file mode 100644 index 0000000000..1574878667 --- /dev/null +++ b/jsonld/pom.xml @@ -0,0 +1,53 @@ + + + 4.0.0 + + jsonld + 0.0.1-SNAPSHOT + jar + + jsonld + Hypermedia serialization with JSON-LD + + + parent-boot-5 + com.baeldung + 0.0.1-SNAPSHOT + ../parent-boot-5 + + + + UTF-8 + UTF-8 + 1.8 + 0.11.1 + + + + + org.springframework.boot + spring-boot-starter + + + org.springframework.boot + spring-boot-starter-test + test + + + + com.github.jsonld-java + jsonld-java + ${jsonld.version} + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + diff --git a/jsonld/src/main/java/com/baeldung/JsonLdApplication.java b/jsonld/src/main/java/com/baeldung/JsonLdApplication.java new file mode 100644 index 0000000000..0b8f338127 --- /dev/null +++ b/jsonld/src/main/java/com/baeldung/JsonLdApplication.java @@ -0,0 +1,11 @@ +package com.baeldung; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class JsonLdApplication { + public static void main(String[] args) { + SpringApplication.run(JsonLdApplication.class, args); + } +} diff --git a/jsonld/src/main/resources/application.properties b/jsonld/src/main/resources/application.properties new file mode 100644 index 0000000000..b6bfd8f6f3 --- /dev/null +++ b/jsonld/src/main/resources/application.properties @@ -0,0 +1,14 @@ +# the db host +spring.data.mongodb.host=localhost +# the connection port (defaults to 27107) +spring.data.mongodb.port=27017 +# The database's name +spring.data.mongodb.database=Jenkins-Pipeline + +# Or this +# spring.data.mongodb.uri=mongodb://localhost/Jenkins-Pipeline + +# spring.data.mongodb.username= +# spring.data.mongodb.password= + +spring.data.mongodb.repositories.enabled=true \ No newline at end of file diff --git a/jsonld/src/test/java/com/baeldung/JsonLdSerializatorTest.java b/jsonld/src/test/java/com/baeldung/JsonLdSerializatorTest.java new file mode 100644 index 0000000000..762a4254dc --- /dev/null +++ b/jsonld/src/test/java/com/baeldung/JsonLdSerializatorTest.java @@ -0,0 +1,33 @@ +package com.baeldung; + +import com.github.jsonldjava.core.JsonLdError; +import com.github.jsonldjava.core.JsonLdOptions; +import com.github.jsonldjava.core.JsonLdProcessor; +import com.github.jsonldjava.utils.JsonUtils; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +import java.util.HashMap; +import java.util.Map; + +import static org.junit.Assert.assertNotEquals; + +@RunWith(SpringJUnit4ClassRunner.class) +@SpringBootTest +public class JsonLdSerializatorTest { + + @Test + public void whenInserting_andCount_thenWeDontGetZero() throws JsonLdError { + String inputStream = "{name:}"; + Object jsonObject = JsonUtils.fromInputStream(inputStream); + + Map context = new HashMap(); + JsonLdOptions options = new JsonLdOptions(); + Object compact = JsonLdProcessor.compact(jsonObject, context, options); + + assertNotEquals(0, 0); + } + +} diff --git a/out/production/generated-sources8/src.main.resources.reladomo.ReladomoClassList.xml.log b/out/production/generated-sources8/src.main.resources.reladomo.ReladomoClassList.xml.log new file mode 100644 index 0000000000..0bd4e29a45 --- /dev/null +++ b/out/production/generated-sources8/src.main.resources.reladomo.ReladomoClassList.xml.log @@ -0,0 +1,2 @@ +f5a6ba3b942a82fcbfb72e61502d5c30 +9201deea diff --git a/out/production/introduction/views/index.scala.html b/out/production/introduction/views/index.scala.html new file mode 100644 index 0000000000..4539f5a10b --- /dev/null +++ b/out/production/introduction/views/index.scala.html @@ -0,0 +1,20 @@ +@* + * This template takes a single argument, a String containing a + * message to display. + *@ +@(message: String) + +@* + * Call the `main` template with two arguments. The first + * argument is a `String` with the title of the page, the second + * argument is an `Html` object containing the body of the page. + *@ +@main("Welcome to Play") { + + @* + * Get an `Html` object by calling the built-in Play welcome + * template and passing a `String` message. + *@ + @play20.welcome(message, style = "Java") + +} diff --git a/out/production/introduction/views/main.scala.html b/out/production/introduction/views/main.scala.html new file mode 100644 index 0000000000..9414f4be6e --- /dev/null +++ b/out/production/introduction/views/main.scala.html @@ -0,0 +1,23 @@ +@* + * This template is called from the `index` template. This template + * handles the rendering of the page header and body tags. It takes + * two arguments, a `String` for the title of the page and an `Html` + * object to insert into the body of the page. + *@ +@(title: String)(content: Html) + + + + + @* Here's where we render the page title `String`. *@ + @title + + + + + + @* And here's where we render the `Html` object containing + * the page content. *@ + @content + + diff --git a/out/production/main122/.gitignore b/out/production/main122/.gitignore new file mode 100644 index 0000000000..83c05e60c8 --- /dev/null +++ b/out/production/main122/.gitignore @@ -0,0 +1,13 @@ +*.class + +#folders# +/target +/neoDb* +/data +/src/main/webapp/WEB-INF/classes +*/META-INF/* + +# Packaged files # +*.jar +*.war +*.ear \ No newline at end of file diff --git a/out/production/main151/com/baeldung/.gitignore b/out/production/main151/com/baeldung/.gitignore new file mode 100644 index 0000000000..83c05e60c8 --- /dev/null +++ b/out/production/main151/com/baeldung/.gitignore @@ -0,0 +1,13 @@ +*.class + +#folders# +/target +/neoDb* +/data +/src/main/webapp/WEB-INF/classes +*/META-INF/* + +# Packaged files # +*.jar +*.war +*.ear \ No newline at end of file diff --git a/out/production/main151/com/baeldung/README.md b/out/production/main151/com/baeldung/README.md new file mode 100644 index 0000000000..51809b2882 --- /dev/null +++ b/out/production/main151/com/baeldung/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [SHA-256 Hashing in Java](http://www.baeldung.com/sha-256-hashing-java) diff --git a/out/production/main155/com/baeldung/git/README.md b/out/production/main155/com/baeldung/git/README.md new file mode 100644 index 0000000000..7e6a597c28 --- /dev/null +++ b/out/production/main155/com/baeldung/git/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [Injecting Git Information Into Spring](http://www.baeldung.com/spring-git-information) diff --git a/out/production/main173/log4j.properties b/out/production/main173/log4j.properties new file mode 100644 index 0000000000..5fe42d854c --- /dev/null +++ b/out/production/main173/log4j.properties @@ -0,0 +1,9 @@ +# Set root logger level to DEBUG and its only appender to A1. +log4j.rootLogger=DEBUG, A1 + +# A1 is set to be a ConsoleAppender. +log4j.appender.A1=org.apache.log4j.ConsoleAppender + +# A1 uses PatternLayout. +log4j.appender.A1.layout=org.apache.log4j.PatternLayout +log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n diff --git a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/README.txt b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/README.txt new file mode 100644 index 0000000000..bffe24e485 --- /dev/null +++ b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/README.txt @@ -0,0 +1,76 @@ +About the application +--------------------- +This application demonstrates the usage of JavaEE Web Annotations. + + +Contents of the application +--------------------------- +1. AccountServlet.java - Demonstrates the @WebServlet and @ServletSecurity annotation. + +NOTES: @WebServlet annotation designates the AccountServlet class as a Servlet component. + The usage of its parameters 'urlPatterns' & 'initParams' can be observed. + An initialization parameter 'type' is being set to denote the type of the bank account. + + @ServletSecurity annotation imposes security constraints on the AccountServlet based on + the tomcat-users.xml. +   + This code assumes that your tomcat-users.xml looks as follows: + + + + + + + +   +N.B : To see @ServletSecurity annotation in action, please uncomment the annotation code + for @ServletSecurity. + + +2. BankAppServletContextListener.java - Demonstrates the @WebListener annotation for denoting a class as a ServletContextListener. + +NOTES: Sets a Servlet context attribute ATTR_DEFAULT_LANGUAGE to 'english' on web application start up, + which can then be used throughout the application. + + +3. LogInFilter.java - Demonstrates the @WebFilter annotation. + +NOTES: @WebFilter annotation designates the LogInFilter class as a Filter component. + It filters all requests to the bank account servlet and redirects them to + the login page. + +N.B : To see @WebFilter annotation in action, please uncomment the annotation code for @WebFilter. + + +4. UploadCustomerDocumentsServlet.java - Demonstrates the @MultipartConfig annotation. + +NOTES: @MultipartConfig anotation designates the UploadCustomerDocumentsServlet Servlet component, + to handle multipart/form-data requests. + To see it in action, deploy the web application an access the url: http://:/JavaEEAnnotationsSample/upload.jsp + Once you upload a file from here, it will get uploaded to D:/custDocs (assuming such a folder exists). + + +5. index.jsp - This is the welcome page. + +NOTES: You can enter a deposit amount here and click on the 'Deposit' button to see the AccountServlet in action. + +6. login.jsp - All requests to the AccountServlet are redirected to this page, if the LogInFilter is imposed. + +7. upload.jsp - Demonstrates the usage of handling multipart/form-data requests by the UploadCustomerDocumentsServlet. + + +Building and Running the application +------------------------------------ +To build the application: + +1. Open the project in eclipse +2. Right click on it in eclispe and choose Run As > Maven build +3. Give 'clean install' under Goals +4. This should build the WAR file of the application + +To run the application: + +1. Right click on the project +2. Run as > Run on Server +3. This will start you Tomcat server and deploy the application (Provided that you have configured Tomcat in your eclipse) +4. You should now be able to access the url : http://:/JavaEEAnnotationsSample diff --git a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/pom.xml b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/pom.xml new file mode 100644 index 0000000000..de69efa43a --- /dev/null +++ b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/pom.xml @@ -0,0 +1,57 @@ + + 4.0.0 + com.baeldung.javaeeannotations + JavaEEAnnotationsSample + 0.0.1-SNAPSHOT + war + JavaEEAnnotationsSample + JavaEEAnnotationsSample + + + + + javax.annotation + javax.annotation-api + 1.3 + + + + javax.servlet + javax.servlet-api + 3.1.0 + + + + javax.servlet.jsp + jsp-api + 2.1 + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.7.0 + + 1.8 + 1.8 + + + + org.apache.maven.plugins + maven-war-plugin + 2.4 + + src/main/webapp + SpringFieldConstructorInjection + false + + + + + JavaEEAnnotationsSample + + \ No newline at end of file diff --git a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/WEB-INF/web.xml b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000000..a92885ec11 --- /dev/null +++ b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,10 @@ + + + + BASIC + default + + diff --git a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/index.jsp b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/index.jsp new file mode 100644 index 0000000000..c49dec859e --- /dev/null +++ b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/index.jsp @@ -0,0 +1,16 @@ +<%@ page language="java" contentType="text/html; charset=ISO-8859-1" + pageEncoding="ISO-8859-1"%> + + + + +My Account + + +

+ Amount: +    + + + + \ No newline at end of file diff --git a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/login.jsp b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/login.jsp new file mode 100644 index 0000000000..6892cb0420 --- /dev/null +++ b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/login.jsp @@ -0,0 +1,12 @@ +<%@ page language="java" contentType="text/html; charset=ISO-8859-1" + pageEncoding="ISO-8859-1"%> + + + + +Login + + +Login Here... + + \ No newline at end of file diff --git a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/upload.jsp b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/upload.jsp new file mode 100644 index 0000000000..3601322ef0 --- /dev/null +++ b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/upload.jsp @@ -0,0 +1,16 @@ +<%@ page language="java" contentType="text/html; charset=ISO-8859-1" + pageEncoding="ISO-8859-1"%> + + + + +Insert title here + + +
+ +
+ +
+ + \ No newline at end of file diff --git a/out/production/main180/com/baeldung/jaxws/wsdl/employeeservicetopdown.wsdl b/out/production/main180/com/baeldung/jaxws/wsdl/employeeservicetopdown.wsdl new file mode 100644 index 0000000000..426717f90e --- /dev/null +++ b/out/production/main180/com/baeldung/jaxws/wsdl/employeeservicetopdown.wsdl @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/out/production/main195/com/baeldung/java/nio/selector/README.md b/out/production/main195/com/baeldung/java/nio/selector/README.md new file mode 100644 index 0000000000..b28aae1397 --- /dev/null +++ b/out/production/main195/com/baeldung/java/nio/selector/README.md @@ -0,0 +1,2 @@ +###Relevant Articles: +- [Introduction to the Java NIO Selector](http://www.baeldung.com/java-nio-selector) diff --git a/out/production/main216/com/baeldung/googlehttpclientguide/logging.properties b/out/production/main216/com/baeldung/googlehttpclientguide/logging.properties new file mode 100644 index 0000000000..02489378df --- /dev/null +++ b/out/production/main216/com/baeldung/googlehttpclientguide/logging.properties @@ -0,0 +1,10 @@ +# Properties file which configures the operation of the JDK logging facility. +# The system will look for this config file to be specified as a system property: +# -Djava.util.logging.config.file=${project_loc:dailymotion-simple-cmdline-sample}/logging.properties + +# Set up the console handler (uncomment "level" to show more fine-grained messages) +handlers = java.util.logging.ConsoleHandler +java.util.logging.ConsoleHandler.level = ALL + +# Set up logging of HTTP requests and responses (uncomment "level" to show) +com.google.api.client.http.level = ALL diff --git a/out/production/main231/com/baeldung/wicket/examples/HelloWorld.html b/out/production/main231/com/baeldung/wicket/examples/HelloWorld.html new file mode 100644 index 0000000000..497e98e01a --- /dev/null +++ b/out/production/main231/com/baeldung/wicket/examples/HelloWorld.html @@ -0,0 +1,52 @@ + + + + +Wicket Intro Examples + + + +
+
+
+

Wicket Introduction Examples:

+ + Hello World! +
+
+ Cafes +
+
+
+
+ + diff --git a/out/production/main231/com/baeldung/wicket/examples/cafeaddress/CafeAddress.html b/out/production/main231/com/baeldung/wicket/examples/cafeaddress/CafeAddress.html new file mode 100644 index 0000000000..c5ada2323d --- /dev/null +++ b/out/production/main231/com/baeldung/wicket/examples/cafeaddress/CafeAddress.html @@ -0,0 +1,15 @@ + + + + +Cafes + + +
+ +

+ Address: address +

+
+ + diff --git a/out/production/main231/com/baeldung/wicket/examples/helloworld/HelloWorld.html b/out/production/main231/com/baeldung/wicket/examples/helloworld/HelloWorld.html new file mode 100644 index 0000000000..c56d07fc10 --- /dev/null +++ b/out/production/main231/com/baeldung/wicket/examples/helloworld/HelloWorld.html @@ -0,0 +1,5 @@ + + + + + diff --git a/out/production/main234/com/baeldung/activiti/security.rar b/out/production/main234/com/baeldung/activiti/security.rar new file mode 100644 index 0000000000000000000000000000000000000000..38c4946168a456265f5999633bc8cb581a8360cc GIT binary patch literal 3760 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 JUw{%B;9rQ$_E`V` literal 0 HcmV?d00001 diff --git a/out/production/main237/com/baeldung/datetime/README.md b/out/production/main237/com/baeldung/datetime/README.md new file mode 100644 index 0000000000..1e4adbb612 --- /dev/null +++ b/out/production/main237/com/baeldung/datetime/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [Introduction to the Java 8 Date/Time API](http://www.baeldung.com/java-8-date-time-intro) diff --git a/out/production/main291/xml-bean-config.xml b/out/production/main291/xml-bean-config.xml new file mode 100644 index 0000000000..3b880bbd70 --- /dev/null +++ b/out/production/main291/xml-bean-config.xml @@ -0,0 +1,12 @@ + + + + + + + + + + \ No newline at end of file diff --git a/out/production/main30/com/baeldung/factorybean/README.md b/out/production/main30/com/baeldung/factorybean/README.md new file mode 100644 index 0000000000..13f9f379e0 --- /dev/null +++ b/out/production/main30/com/baeldung/factorybean/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [How to use the Spring FactoryBean?](http://www.baeldung.com/spring-factorybean) diff --git a/out/production/main330/com/baeldung/.gitignore b/out/production/main330/com/baeldung/.gitignore new file mode 100644 index 0000000000..83c05e60c8 --- /dev/null +++ b/out/production/main330/com/baeldung/.gitignore @@ -0,0 +1,13 @@ +*.class + +#folders# +/target +/neoDb* +/data +/src/main/webapp/WEB-INF/classes +*/META-INF/* + +# Packaged files # +*.jar +*.war +*.ear \ No newline at end of file diff --git a/out/production/main330/com/baeldung/README.md b/out/production/main330/com/baeldung/README.md new file mode 100644 index 0000000000..51809b2882 --- /dev/null +++ b/out/production/main330/com/baeldung/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [SHA-256 Hashing in Java](http://www.baeldung.com/sha-256-hashing-java) diff --git a/out/production/main330/com/baeldung/enums/README.md b/out/production/main330/com/baeldung/enums/README.md new file mode 100644 index 0000000000..6ccfa725f5 --- /dev/null +++ b/out/production/main330/com/baeldung/enums/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [A Guide to Java Enums](http://www.baeldung.com/a-guide-to-java-enums) diff --git a/out/production/main330/com/baeldung/networking/README.md b/out/production/main330/com/baeldung/networking/README.md new file mode 100644 index 0000000000..b9e827f085 --- /dev/null +++ b/out/production/main330/com/baeldung/networking/README.md @@ -0,0 +1,5 @@ +### Relevant Articles: +- [A Guide To UDP In Java](http://www.baeldung.com/udp-in-java) +- [A Guide To HTTP Cookies In Java](http://www.baeldung.com/cookies-java) +- [A Guide to the Java URL](http://www.baeldung.com/java-url) +- [Working with Network Interfaces in Java](http://www.baeldung.com/java-network-interfaces) diff --git a/out/production/main330/com/baeldung/printscreen/README.md b/out/production/main330/com/baeldung/printscreen/README.md new file mode 100644 index 0000000000..7b3b40c102 --- /dev/null +++ b/out/production/main330/com/baeldung/printscreen/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [How to Print Screen in Java](http://www.baeldung.com/print-screen-in-java) diff --git a/out/production/main330/log4j.properties b/out/production/main330/log4j.properties new file mode 100644 index 0000000000..5fe42d854c --- /dev/null +++ b/out/production/main330/log4j.properties @@ -0,0 +1,9 @@ +# Set root logger level to DEBUG and its only appender to A1. +log4j.rootLogger=DEBUG, A1 + +# A1 is set to be a ConsoleAppender. +log4j.appender.A1=org.apache.log4j.ConsoleAppender + +# A1 uses PatternLayout. +log4j.appender.A1.layout=org.apache.log4j.PatternLayout +log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n diff --git a/out/production/main351/com/baeldung/produceimage/README.md b/out/production/main351/com/baeldung/produceimage/README.md new file mode 100644 index 0000000000..acd546598d --- /dev/null +++ b/out/production/main351/com/baeldung/produceimage/README.md @@ -0,0 +1,3 @@ +### Relevant articles + +- [Returning an Image or a File with Spring](http://www.baeldung.com/spring-controller-return-image-file) diff --git a/out/production/main96/com/baeldung/git/README.md b/out/production/main96/com/baeldung/git/README.md new file mode 100644 index 0000000000..7e6a597c28 --- /dev/null +++ b/out/production/main96/com/baeldung/git/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [Injecting Git Information Into Spring](http://www.baeldung.com/spring-git-information) diff --git a/out/production/routing-in-play/views/index.scala.html b/out/production/routing-in-play/views/index.scala.html new file mode 100644 index 0000000000..4539f5a10b --- /dev/null +++ b/out/production/routing-in-play/views/index.scala.html @@ -0,0 +1,20 @@ +@* + * This template takes a single argument, a String containing a + * message to display. + *@ +@(message: String) + +@* + * Call the `main` template with two arguments. The first + * argument is a `String` with the title of the page, the second + * argument is an `Html` object containing the body of the page. + *@ +@main("Welcome to Play") { + + @* + * Get an `Html` object by calling the built-in Play welcome + * template and passing a `String` message. + *@ + @play20.welcome(message, style = "Java") + +} diff --git a/out/production/routing-in-play/views/main.scala.html b/out/production/routing-in-play/views/main.scala.html new file mode 100644 index 0000000000..9414f4be6e --- /dev/null +++ b/out/production/routing-in-play/views/main.scala.html @@ -0,0 +1,23 @@ +@* + * This template is called from the `index` template. This template + * handles the rendering of the page header and body tags. It takes + * two arguments, a `String` for the title of the page and an `Html` + * object to insert into the body of the page. + *@ +@(title: String)(content: Html) + + + + + @* Here's where we render the page title `String`. *@ + @title + + + + + + @* And here's where we render the `Html` object containing + * the page content. *@ + @content + + diff --git a/out/test/test105/com/baeldung/cglib/proxy/README.md b/out/test/test105/com/baeldung/cglib/proxy/README.md new file mode 100644 index 0000000000..abeabc6162 --- /dev/null +++ b/out/test/test105/com/baeldung/cglib/proxy/README.md @@ -0,0 +1,3 @@ +### Relevant articles + +- [Introduction to cglib](http://www.baeldung.com/cglib) diff --git a/out/test/test143/com/baeldung/java9/README.MD b/out/test/test143/com/baeldung/java9/README.MD new file mode 100644 index 0000000000..2f44a2336b --- /dev/null +++ b/out/test/test143/com/baeldung/java9/README.MD @@ -0,0 +1,2 @@ +### Relevant Artiles: +- [Filtering a Stream of Optionals in Java](http://www.baeldung.com/java-filter-stream-of-optional) diff --git a/out/test/test174/org/baeldung/hamcrest/README.md b/out/test/test174/org/baeldung/hamcrest/README.md new file mode 100644 index 0000000000..7266ecda3a --- /dev/null +++ b/out/test/test174/org/baeldung/hamcrest/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [Testing with Hamcrest](http://www.baeldung.com/java-junit-hamcrest-guide) diff --git a/out/test/test191/com/baeldung/web/controller/README.md b/out/test/test191/com/baeldung/web/controller/README.md new file mode 100644 index 0000000000..9923962dde --- /dev/null +++ b/out/test/test191/com/baeldung/web/controller/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [WebAppConfiguration in Spring Tests](http://www.baeldung.com/spring-webappconfiguration) diff --git a/out/test/test197/com/baeldung/java/nio2/README.md b/out/test/test197/com/baeldung/java/nio2/README.md new file mode 100644 index 0000000000..569be82d27 --- /dev/null +++ b/out/test/test197/com/baeldung/java/nio2/README.md @@ -0,0 +1,11 @@ +### Relevant Articles: +- [Introduction to the Java NIO2 File API](http://www.baeldung.com/java-nio-2-file-api) +- [Java NIO2 Path API](http://www.baeldung.com/java-nio-2-path) +- [A Guide To NIO2 Asynchronous File Channel](http://www.baeldung.com/java-nio2-async-file-channel) +- [Guide to Selenium with JUnit / TestNG](http://www.baeldung.com/java-selenium-with-junit-and-testng) +- [A Guide to NIO2 Asynchronous Socket Channel](http://www.baeldung.com/java-nio2-async-socket-channel) +- [A Guide To NIO2 FileVisitor](http://www.baeldung.com/java-nio2-file-visitor) +- [A Guide To NIO2 File Attribute APIs](http://www.baeldung.com/java-nio2-file-attribute) +- [How to use the Spring FactoryBean?](http://www.baeldung.com/spring-factorybean) +- [A Guide to WatchService in Java NIO2](http://www.baeldung.com/java-nio2-watchservice) +- [Guide to Java NIO2 Asynchronous Channel APIs](http://www.baeldung.com/java-nio-2-async-channels) diff --git a/out/test/test237/META-INF/persistence.xml b/out/test/test237/META-INF/persistence.xml new file mode 100644 index 0000000000..922aedbc39 --- /dev/null +++ b/out/test/test237/META-INF/persistence.xml @@ -0,0 +1,20 @@ + + + + org.baeldung.persistence.model.Foo + org.baeldung.persistence.model.Bar + + + + + + + + + + + + + diff --git a/out/test/test95/com/baeldung/hexToAscii/README.md b/out/test/test95/com/baeldung/hexToAscii/README.md new file mode 100644 index 0000000000..c6d5826333 --- /dev/null +++ b/out/test/test95/com/baeldung/hexToAscii/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [Convert Hex to ASCII in Java](http://www.baeldung.com/java-convert-hex-to-ascii) diff --git a/out/test/test95/com/baeldung/java/conversion/README.md b/out/test/test95/com/baeldung/java/conversion/README.md new file mode 100644 index 0000000000..7c81180249 --- /dev/null +++ b/out/test/test95/com/baeldung/java/conversion/README.md @@ -0,0 +1,2 @@ +Relevant Articles: +- [Java String Conversions](http://www.baeldung.com/java-string-conversions) diff --git a/out/test/test95/org/baeldung/java/collections/README.md b/out/test/test95/org/baeldung/java/collections/README.md new file mode 100644 index 0000000000..317d81fae7 --- /dev/null +++ b/out/test/test95/org/baeldung/java/collections/README.md @@ -0,0 +1,3 @@ +### Relevant Articles: +- [Join and Split Arrays and Collections in Java](http://www.baeldung.com/java-join-and-split) +- [Introduction to Java Servlets](http://www.baeldung.com/intro-to-servlets) diff --git a/out/test/test95/org/baeldung/java/lists/README.md b/out/test/test95/org/baeldung/java/lists/README.md new file mode 100644 index 0000000000..2a1e8aeeaa --- /dev/null +++ b/out/test/test95/org/baeldung/java/lists/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [Check If Two Lists are Equal in Java](http://www.baeldung.com/java-test-a-list-for-ordinality-and-equality) diff --git a/out/test/test98/com/baeldung/applicationcontext/README.md b/out/test/test98/com/baeldung/applicationcontext/README.md new file mode 100644 index 0000000000..211007e0cf --- /dev/null +++ b/out/test/test98/com/baeldung/applicationcontext/README.md @@ -0,0 +1,3 @@ +### Relevant Articles: +- [Introduction to Java Servlets](http://www.baeldung.com/intro-to-servlets) +- [Intro to the Spring ClassPathXmlApplicationContext](http://www.baeldung.com/spring-classpathxmlapplicationcontext) diff --git a/out/test/test98/com/baeldung/beanfactory/README.md b/out/test/test98/com/baeldung/beanfactory/README.md new file mode 100644 index 0000000000..cff20a184b --- /dev/null +++ b/out/test/test98/com/baeldung/beanfactory/README.md @@ -0,0 +1,2 @@ +### Relevant Articles: +- [Guide to the Spring BeanFactory](http://www.baeldung.com/spring-beanfactory) diff --git a/spring-mvc-simple/pom.xml b/spring-mvc-simple/pom.xml index e722573ab1..c0e4b63897 100644 --- a/spring-mvc-simple/pom.xml +++ b/spring-mvc-simple/pom.xml @@ -33,6 +33,7 @@ 1.9.0 2.9.4 1.4.9 + 5.1.0 @@ -145,6 +146,11 @@ xstream ${xstream.version} + + com.github.scribejava + scribejava-apis + ${scribejava.version} + diff --git a/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/ApplicationConfiguration.java b/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/ApplicationConfiguration.java index 7f1182bb50..3275d919ea 100644 --- a/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/ApplicationConfiguration.java +++ b/spring-mvc-simple/src/main/java/com/baeldung/spring/configuration/ApplicationConfiguration.java @@ -7,6 +7,7 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.http.converter.StringHttpMessageConverter; import org.springframework.http.converter.feed.RssChannelHttpMessageConverter; import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; @@ -65,6 +66,7 @@ class ApplicationConfiguration extends WebMvcConfigurerAdapter { XmlMapper xmlMapper = builder.createXmlMapper(true).build(); xmlMapper.configure(ToXmlGenerator.Feature.WRITE_XML_DECLARATION, true); + converters.add(new StringHttpMessageConverter()); converters.add(new RssChannelHttpMessageConverter()); converters.add(new MappingJackson2HttpMessageConverter()); converters.add(new MappingJackson2XmlHttpMessageConverter(xmlMapper)); diff --git a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleFeed.java b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleFeed.java index 514c9a2353..71b225bf3f 100644 --- a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleFeed.java +++ b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleFeed.java @@ -1,5 +1,6 @@ package com.baeldung.spring.controller.rss; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper; import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; @@ -10,7 +11,8 @@ import java.util.List; @JacksonXmlRootElement(localName="articles") public class ArticleFeed extends RssData implements Serializable { - @JacksonXmlElementWrapper(localName = "items", useWrapping = true) + @JacksonXmlProperty(localName = "item") + @JacksonXmlElementWrapper(useWrapping = false) private List items = new ArrayList(); public void addItem(ArticleItem articleItem) { diff --git a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleItem.java b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleItem.java index 01b2cde1ba..6c91819676 100644 --- a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleItem.java +++ b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleItem.java @@ -1,10 +1,7 @@ package com.baeldung.spring.controller.rss; -import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; - import java.io.Serializable; -@JacksonXmlRootElement(localName="article") public class ArticleItem extends RssData implements Serializable { private String author; diff --git a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleRssController.java b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleRssController.java index 77b8aceb73..b0cce99d33 100644 --- a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleRssController.java +++ b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/rss/ArticleRssController.java @@ -1,15 +1,10 @@ package com.baeldung.spring.controller.rss; -import com.rometools.rome.feed.synd.*; -import com.rometools.rome.io.FeedException; -import com.rometools.rome.io.SyndFeedOutput; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.ResponseBody; -import java.util.ArrayList; import java.util.Date; -import java.util.List; @Controller public class ArticleRssController { diff --git a/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/scribe/ScribeController.java b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/scribe/ScribeController.java new file mode 100644 index 0000000000..c5c97ff009 --- /dev/null +++ b/spring-mvc-simple/src/main/java/com/baeldung/spring/controller/scribe/ScribeController.java @@ -0,0 +1,55 @@ +package com.baeldung.spring.controller.scribe; + +import com.github.scribejava.apis.TwitterApi; +import com.github.scribejava.core.builder.ServiceBuilder; +import com.github.scribejava.core.model.*; +import com.github.scribejava.core.oauth.OAuth10aService; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.servlet.view.RedirectView; + +import javax.servlet.http.HttpServletRequest; +import java.io.IOException; +import java.util.concurrent.ExecutionException; + +@Controller +@RequestMapping("twitter") +public class ScribeController { + + private OAuth10aService createTwitterService() { + return new ServiceBuilder("PSRszoHhRDVhyo2RIkThEbWko") + .apiSecret("prpJbz03DcGRN46sb4ucdSYtVxG8unUKhcnu3an5ItXbEOuenL") + .callback("http://localhost:8080/spring-mvc-simple/twitter/callback") + .build(TwitterApi.instance()); + } + + @GetMapping(value = "/authorization") + public RedirectView authorization(HttpServletRequest servletReq) throws InterruptedException, ExecutionException, IOException { + OAuth10aService twitterService = createTwitterService(); + + OAuth1RequestToken requestToken = twitterService.getRequestToken(); + String authorizationUrl = twitterService.getAuthorizationUrl(requestToken); + servletReq.getSession().setAttribute("requestToken", requestToken); + + RedirectView redirectView = new RedirectView(); + redirectView.setUrl(authorizationUrl); + return redirectView; + } + + @GetMapping(value = "/callback", produces = "text/plain") + @ResponseBody + public String callback(HttpServletRequest servletReq, @RequestParam("oauth_verifier") String oauthV) throws InterruptedException, ExecutionException, IOException { + OAuth10aService twitterService = createTwitterService(); + OAuth1RequestToken requestToken = (OAuth1RequestToken) servletReq.getSession().getAttribute("requestToken"); + OAuth1AccessToken accessToken = twitterService.getAccessToken(requestToken, oauthV); + + OAuthRequest request = new OAuthRequest(Verb.GET, "https://api.twitter.com/1.1/account/verify_credentials.json"); + twitterService.signRequest(accessToken, request); + Response response = twitterService.execute(request); + + return response.getBody(); + } +} diff --git a/spring-swagger-codegen/spring-swagger-codegen-api-client/src/main/gen/com/baeldung/petstore/client/invoker/BuildConfig.java b/spring-swagger-codegen/spring-swagger-codegen-api-client/src/main/gen/com/baeldung/petstore/client/invoker/BuildConfig.java new file mode 100644 index 0000000000..85233bc278 --- /dev/null +++ b/spring-swagger-codegen/spring-swagger-codegen-api-client/src/main/gen/com/baeldung/petstore/client/invoker/BuildConfig.java @@ -0,0 +1,8 @@ +/*___Generated_by_IDEA___*/ + +package com.baeldung.petstore.client.invoker; + +/* This stub is only used by the IDE. It is NOT the BuildConfig class actually packed into the APK */ +public final class BuildConfig { + public final static boolean DEBUG = Boolean.parseBoolean(null); +} \ No newline at end of file diff --git a/spring-swagger-codegen/spring-swagger-codegen-api-client/src/main/gen/com/baeldung/petstore/client/invoker/Manifest.java b/spring-swagger-codegen/spring-swagger-codegen-api-client/src/main/gen/com/baeldung/petstore/client/invoker/Manifest.java new file mode 100644 index 0000000000..06c202e733 --- /dev/null +++ b/spring-swagger-codegen/spring-swagger-codegen-api-client/src/main/gen/com/baeldung/petstore/client/invoker/Manifest.java @@ -0,0 +1,7 @@ +/*___Generated_by_IDEA___*/ + +package com.baeldung.petstore.client.invoker; + +/* This stub is only used by the IDE. It is NOT the Manifest class actually packed into the APK */ +public final class Manifest { +} \ No newline at end of file diff --git a/spring-swagger-codegen/spring-swagger-codegen-api-client/src/main/gen/com/baeldung/petstore/client/invoker/R.java b/spring-swagger-codegen/spring-swagger-codegen-api-client/src/main/gen/com/baeldung/petstore/client/invoker/R.java new file mode 100644 index 0000000000..41e2b545fb --- /dev/null +++ b/spring-swagger-codegen/spring-swagger-codegen-api-client/src/main/gen/com/baeldung/petstore/client/invoker/R.java @@ -0,0 +1,7 @@ +/*___Generated_by_IDEA___*/ + +package com.baeldung.petstore.client.invoker; + +/* This stub is only used by the IDE. It is NOT the R class actually packed into the APK */ +public final class R { +} \ No newline at end of file From 9ba2cebdfd294a25567d27d54ee00aaaabab68c1 Mon Sep 17 00:00:00 2001 From: Dominik Date: Mon, 19 Feb 2018 00:26:27 +0100 Subject: [PATCH 150/391] Changed test names. --- .../test/java/com/baeldung/rxjava/FlowableTest.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java b/rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java index 26b17ec163..b9d1d64c24 100644 --- a/rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java +++ b/rxjava/src/test/java/com/baeldung/rxjava/FlowableTest.java @@ -38,7 +38,7 @@ public class FlowableTest { assertNotNull(integerFlowable); } - @Test public void whenFlowableUsesBufferStragegy_thenOnBackpressureAllValuesAreBufferedAndReceived() { + @Test public void thenAllValuesAreBufferedAndReceived() { List testList = IntStream.range(0, 100000).boxed().collect(Collectors.toList()); Observable observable = Observable.fromIterable(testList); TestSubscriber testSubscriber = observable.toFlowable(BackpressureStrategy.BUFFER).observeOn(Schedulers.computation()).test(); @@ -50,7 +50,7 @@ public class FlowableTest { assertEquals(testList, receivedInts); } - @Test public void whenFlowableUsesDropStrategy_thenOnBackpressureNotAllValuesAreReceivedAndTheLastElementIsNotReceived() { + @Test public void whenDropStrategyUsed_thenOnBackpressureDropped() { List testList = IntStream.range(0, 100000).boxed().collect(Collectors.toList()); Observable observable = Observable.fromIterable(testList); @@ -62,7 +62,7 @@ public class FlowableTest { assertThat(!receivedInts.contains(100000)); } - @Test public void whenFlowableUsesMissingStrategy_thenExceptionIsThrownOnBackpressure() { + @Test public void whenMissingStrategyUsed_thenException() { Observable observable = Observable.range(1, 100000); TestSubscriber subscriber = observable.toFlowable(BackpressureStrategy.MISSING).observeOn(Schedulers.computation()).test(); @@ -70,15 +70,15 @@ public class FlowableTest { subscriber.assertError(MissingBackpressureException.class); } - @Test public void whenFlowableUsesErrorStrategy_thenExceptionIsThrownOnBackpressure() { - Observable observable = Observable.range(1, 100000); + @Test public void whenErrorStrategyUsed_thenExceptionIsThrown() { + Observable observable = Observable.range(1, 100000); TestSubscriber subscriber = observable.toFlowable(BackpressureStrategy.ERROR).observeOn(Schedulers.computation()).test(); subscriber.awaitTerminalEvent(); subscriber.assertError(MissingBackpressureException.class); } - @Test public void whenFlowableUsesLatesStrategy_thenNotElementsAreReceivedButTheLastElementIs() { + @Test public void whenLatestStrategyUsed_thenTheLastElementReceived() { List testList = IntStream.range(0, 100000).boxed().collect(Collectors.toList()); Observable observable = Observable.fromIterable(testList); TestSubscriber testSubscriber = observable.toFlowable(BackpressureStrategy.LATEST).observeOn(Schedulers.computation()).test(); From fe97d98c30dd9ee945b584bdf0b8ea1f156a7cd2 Mon Sep 17 00:00:00 2001 From: myluckagain Date: Mon, 19 Feb 2018 05:30:31 +0500 Subject: [PATCH 151/391] BAEL-1553 (#3679) --- .../java/com/baeldung/casting/Animal.java | 13 +++++ .../com/baeldung/casting/AnimalFeeder.java | 23 ++++++++ .../main/java/com/baeldung/casting/Cat.java | 16 +++++ .../main/java/com/baeldung/casting/Dog.java | 12 ++++ .../main/java/com/baeldung/casting/Mew.java | 5 ++ .../com/baeldung/casting/CastingTest.java | 58 +++++++++++++++++++ 6 files changed, 127 insertions(+) create mode 100644 core-java/src/main/java/com/baeldung/casting/Animal.java create mode 100644 core-java/src/main/java/com/baeldung/casting/AnimalFeeder.java create mode 100644 core-java/src/main/java/com/baeldung/casting/Cat.java create mode 100644 core-java/src/main/java/com/baeldung/casting/Dog.java create mode 100644 core-java/src/main/java/com/baeldung/casting/Mew.java create mode 100644 core-java/src/test/java/com/baeldung/casting/CastingTest.java diff --git a/core-java/src/main/java/com/baeldung/casting/Animal.java b/core-java/src/main/java/com/baeldung/casting/Animal.java new file mode 100644 index 0000000000..9f31c1dda3 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/casting/Animal.java @@ -0,0 +1,13 @@ +package com.baeldung.casting; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class Animal { + private static final Logger LOGGER = LoggerFactory.getLogger(Animal.class); + + public void eat() { + LOGGER.info("animal is eating"); + } + +} diff --git a/core-java/src/main/java/com/baeldung/casting/AnimalFeeder.java b/core-java/src/main/java/com/baeldung/casting/AnimalFeeder.java new file mode 100644 index 0000000000..89b972e5c2 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/casting/AnimalFeeder.java @@ -0,0 +1,23 @@ +package com.baeldung.casting; + +import java.util.List; + +public class AnimalFeeder { + + public void feed(List animals) { + animals.forEach(animal -> { + animal.eat(); + if (animal instanceof Cat) { + ((Cat) animal).meow(); + } + }); + } + + public void uncheckedFeed(List animals) { + animals.forEach(animal -> { + animal.eat(); + ((Cat) animal).meow(); + }); + } + +} diff --git a/core-java/src/main/java/com/baeldung/casting/Cat.java b/core-java/src/main/java/com/baeldung/casting/Cat.java new file mode 100644 index 0000000000..aa9a9a881a --- /dev/null +++ b/core-java/src/main/java/com/baeldung/casting/Cat.java @@ -0,0 +1,16 @@ +package com.baeldung.casting; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class Cat extends Animal implements Mew { + private static final Logger LOGGER = LoggerFactory.getLogger(Cat.class); + + public void eat() { + LOGGER.info("cat is eating"); + } + + public void meow() { + LOGGER.info("meow"); + } +} diff --git a/core-java/src/main/java/com/baeldung/casting/Dog.java b/core-java/src/main/java/com/baeldung/casting/Dog.java new file mode 100644 index 0000000000..763c6b4785 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/casting/Dog.java @@ -0,0 +1,12 @@ +package com.baeldung.casting; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class Dog extends Animal { + private static final Logger LOGGER = LoggerFactory.getLogger(Dog.class); + + public void eat() { + LOGGER.info("dog is eating"); + } +} diff --git a/core-java/src/main/java/com/baeldung/casting/Mew.java b/core-java/src/main/java/com/baeldung/casting/Mew.java new file mode 100644 index 0000000000..f3c7324551 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/casting/Mew.java @@ -0,0 +1,5 @@ +package com.baeldung.casting; + +public interface Mew { + public void meow(); +} diff --git a/core-java/src/test/java/com/baeldung/casting/CastingTest.java b/core-java/src/test/java/com/baeldung/casting/CastingTest.java new file mode 100644 index 0000000000..0ca1ce88dc --- /dev/null +++ b/core-java/src/test/java/com/baeldung/casting/CastingTest.java @@ -0,0 +1,58 @@ +package com.baeldung.casting; + +import org.junit.Test; +import static org.junit.Assert.*; +import java.util.ArrayList; +import java.util.List; + +public class CastingTest { + + @Test + public void whenPrimitiveConverted_thenValueChanged() { + double myDouble = 1.1; + int myInt = (int) myDouble; + assertNotEquals(myDouble, myInt); + } + + @Test + public void whenUpcast_thenInstanceUnchanged() { + Cat cat = new Cat(); + Animal animal = cat; + animal = (Animal) cat; + assertTrue(animal instanceof Cat); + } + + @Test + public void whenUpcastToObject_thenInstanceUnchanged() { + Object object = new Animal(); + assertTrue(object instanceof Animal); + } + + @Test + public void whenUpcastToInterface_thenInstanceUnchanged() { + Mew mew = new Cat(); + assertTrue(mew instanceof Cat); + } + + @Test + public void whenUpcastToAnimal_thenOverridenMethodsCalled() { + List animals = new ArrayList<>(); + animals.add(new Cat()); + animals.add(new Dog()); + new AnimalFeeder().feed(animals); + } + + @Test + public void whenDowncastToCat_thenMeowIsCalled() { + Animal animal = new Cat(); + ((Cat) animal).meow(); + } + + @Test(expected = ClassCastException.class) + public void whenDownCastWithoutCheck_thenExceptionThrown() { + List animals = new ArrayList<>(); + animals.add(new Cat()); + animals.add(new Dog()); + new AnimalFeeder().uncheckedFeed(animals); + } +} From 0cb1447797da3904a7df5fe7d1989b5afa5ce4ff Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Mon, 19 Feb 2018 01:43:23 +0100 Subject: [PATCH 152/391] JSP Refactor (#3689) --- .../baeldung/controller/StudentServlet.java | 18 ++++------ .../main/java/com/baeldung/model/Student.java | 23 ------------ .../com/baeldung/service/StudentService.java | 35 ++++++------------- .../com/baeldung/servlets/FormServlet.java | 8 ++--- 4 files changed, 20 insertions(+), 64 deletions(-) diff --git a/javax-servlets/src/main/java/com/baeldung/controller/StudentServlet.java b/javax-servlets/src/main/java/com/baeldung/controller/StudentServlet.java index 3c893eab1a..b1924198a4 100644 --- a/javax-servlets/src/main/java/com/baeldung/controller/StudentServlet.java +++ b/javax-servlets/src/main/java/com/baeldung/controller/StudentServlet.java @@ -1,6 +1,6 @@ package com.baeldung.controller; -import java.io.IOException; +import com.baeldung.service.StudentService; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; @@ -8,23 +8,19 @@ import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.io.IOException; -import com.baeldung.service.StudentService; - -/** - * - * @author haseeb - * - */ @WebServlet(name = "StudentServlet", urlPatterns = "/student-record") public class StudentServlet extends HttpServlet { - protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { - StudentService studentService = new StudentService(); + private final StudentService studentService = new StudentService(); + + private void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String studentID = request.getParameter("id"); if (studentID != null) { int id = Integer.parseInt(studentID); - request.setAttribute("studentRecord", studentService.getStudent(id)); + studentService.getStudent(id) + .ifPresent(s -> request.setAttribute("studentRecord", s)); } RequestDispatcher dispatcher = request.getRequestDispatcher("/WEB-INF/jsp/student-record.jsp"); diff --git a/javax-servlets/src/main/java/com/baeldung/model/Student.java b/javax-servlets/src/main/java/com/baeldung/model/Student.java index 55afe6bc2a..ce8a27375a 100644 --- a/javax-servlets/src/main/java/com/baeldung/model/Student.java +++ b/javax-servlets/src/main/java/com/baeldung/model/Student.java @@ -1,10 +1,5 @@ package com.baeldung.model; -/** - * - * @author haseeb - * - */ public class Student { private int id; @@ -18,44 +13,26 @@ public class Student { this.lastName = lastName; } - /** - * @return the id - */ public int getId() { return id; } - /** - * @param id the id to set - */ public void setId(int id) { this.id = id; } - /** - * @return the firstName - */ public String getFirstName() { return firstName; } - /** - * @param firstName the firstName to set - */ public void setFirstName(String firstName) { this.firstName = firstName; } - /** - * @return the lastName - */ public String getLastName() { return lastName; } - /** - * @param lastName the lastName to set - */ public void setLastName(String lastName) { this.lastName = lastName; } diff --git a/javax-servlets/src/main/java/com/baeldung/service/StudentService.java b/javax-servlets/src/main/java/com/baeldung/service/StudentService.java index 1666850d50..525d47683f 100644 --- a/javax-servlets/src/main/java/com/baeldung/service/StudentService.java +++ b/javax-servlets/src/main/java/com/baeldung/service/StudentService.java @@ -2,33 +2,20 @@ package com.baeldung.service; import com.baeldung.model.Student; -/** - * - * @author haseeb - * - */ +import java.util.Optional; + public class StudentService { - /** - * - * @param id - * @return - */ - public Student getStudent(int id) { - - Student student = null; - + public Optional getStudent(int id) { switch (id) { - case 1: - student = new Student(1, "John", "Doe"); - break; - case 2: - student = new Student(2, "Jane", "Goodall"); - break; - case 3: - student = new Student(3, "Max", "Born"); - break; + case 1: + return Optional.of(new Student(1, "John", "Doe")); + case 2: + return Optional.of(new Student(2, "Jane", "Goodall")); + case 3: + return Optional.of(new Student(3, "Max", "Born")); + default: + return Optional.empty(); } - return student; } } diff --git a/javax-servlets/src/main/java/com/baeldung/servlets/FormServlet.java b/javax-servlets/src/main/java/com/baeldung/servlets/FormServlet.java index 04c5fec42d..c78129a9cf 100644 --- a/javax-servlets/src/main/java/com/baeldung/servlets/FormServlet.java +++ b/javax-servlets/src/main/java/com/baeldung/servlets/FormServlet.java @@ -1,7 +1,6 @@ package com.baeldung.servlets; import javax.servlet.RequestDispatcher; -import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; @@ -13,7 +12,7 @@ public class FormServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) - throws ServletException, IOException { + throws IOException { String height = request.getParameter("height"); String weight = request.getParameter("weight"); @@ -28,20 +27,17 @@ public class FormServlet extends HttpServlet { RequestDispatcher dispatcher = request.getRequestDispatcher("/WEB-INF/jsp/index.jsp"); dispatcher.forward(request, response); } catch (Exception e) { - response.sendRedirect("index.jsp"); } } @Override - protected void doGet(HttpServletRequest request, HttpServletResponse response) - throws ServletException, IOException { + protected void doGet(HttpServletRequest request, HttpServletResponse response) { // do something else here } private Double calculateBMI(Double weight, Double height) { - return weight / (height * height); } } \ No newline at end of file From e31ff3c59acb367bc613fb76fae7f6ea5c50e824 Mon Sep 17 00:00:00 2001 From: Diaz Novandi Date: Mon, 19 Feb 2018 07:03:28 +0100 Subject: [PATCH 153/391] Update based on code review feedback --- .../repository/ProductInfoRepositoryIntegrationTest.java | 4 ++-- ...alDynamoDBCreationRule.java => LocalDbCreationRule.java} | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) rename persistence-modules/spring-data-dynamodb/src/test/java/com/baeldung/spring/data/dynamodb/repository/rule/{LocalDynamoDBCreationRule.java => LocalDbCreationRule.java} (83%) diff --git a/persistence-modules/spring-data-dynamodb/src/test/java/com/baeldung/spring/data/dynamodb/repository/ProductInfoRepositoryIntegrationTest.java b/persistence-modules/spring-data-dynamodb/src/test/java/com/baeldung/spring/data/dynamodb/repository/ProductInfoRepositoryIntegrationTest.java index 8052aba3df..6cbd5b0a5a 100644 --- a/persistence-modules/spring-data-dynamodb/src/test/java/com/baeldung/spring/data/dynamodb/repository/ProductInfoRepositoryIntegrationTest.java +++ b/persistence-modules/spring-data-dynamodb/src/test/java/com/baeldung/spring/data/dynamodb/repository/ProductInfoRepositoryIntegrationTest.java @@ -8,7 +8,7 @@ import com.amazonaws.services.dynamodbv2.model.ResourceInUseException; import com.baeldung.Application; import com.baeldung.spring.data.dynamodb.model.ProductInfo; import com.baeldung.spring.data.dynamodb.repositories.ProductInfoRepository; -import com.baeldung.spring.data.dynamodb.repository.rule.LocalDynamoDBCreationRule; +import com.baeldung.spring.data.dynamodb.repository.rule.LocalDbCreationRule; import org.junit.Before; import org.junit.ClassRule; import org.junit.Test; @@ -35,7 +35,7 @@ import static org.junit.Assert.assertThat; public class ProductInfoRepositoryIntegrationTest { @ClassRule - public static LocalDynamoDBCreationRule dynamoDB = new LocalDynamoDBCreationRule(); + public static LocalDbCreationRule dynamoDB = new LocalDbCreationRule(); private DynamoDBMapper dynamoDBMapper; diff --git a/persistence-modules/spring-data-dynamodb/src/test/java/com/baeldung/spring/data/dynamodb/repository/rule/LocalDynamoDBCreationRule.java b/persistence-modules/spring-data-dynamodb/src/test/java/com/baeldung/spring/data/dynamodb/repository/rule/LocalDbCreationRule.java similarity index 83% rename from persistence-modules/spring-data-dynamodb/src/test/java/com/baeldung/spring/data/dynamodb/repository/rule/LocalDynamoDBCreationRule.java rename to persistence-modules/spring-data-dynamodb/src/test/java/com/baeldung/spring/data/dynamodb/repository/rule/LocalDbCreationRule.java index 62334b6d00..555d558b06 100644 --- a/persistence-modules/spring-data-dynamodb/src/test/java/com/baeldung/spring/data/dynamodb/repository/rule/LocalDynamoDBCreationRule.java +++ b/persistence-modules/spring-data-dynamodb/src/test/java/com/baeldung/spring/data/dynamodb/repository/rule/LocalDbCreationRule.java @@ -6,11 +6,11 @@ import org.junit.rules.ExternalResource; import java.util.Optional; -public class LocalDynamoDBCreationRule extends ExternalResource { +public class LocalDbCreationRule extends ExternalResource { protected DynamoDBProxyServer server; - public LocalDynamoDBCreationRule() { + public LocalDbCreationRule() { System.setProperty("sqlite4java.library.path", "native-libs"); } @@ -23,7 +23,7 @@ public class LocalDynamoDBCreationRule extends ExternalResource { @Override protected void after() { - Optional.ofNullable(server).ifPresent(this::stopUnchecked); + this.stopUnchecked(server); } protected void stopUnchecked(DynamoDBProxyServer dynamoDbServer) { From 22b047f98bfcce37e39a9ff425c3c801f48e30c1 Mon Sep 17 00:00:00 2001 From: Diaz Novandi Date: Mon, 19 Feb 2018 07:04:49 +0100 Subject: [PATCH 154/391] Use DynamoDB repo server in the US --- persistence-modules/spring-data-dynamodb/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/persistence-modules/spring-data-dynamodb/pom.xml b/persistence-modules/spring-data-dynamodb/pom.xml index 0b78aac10e..c3ea9abf08 100644 --- a/persistence-modules/spring-data-dynamodb/pom.xml +++ b/persistence-modules/spring-data-dynamodb/pom.xml @@ -26,7 +26,7 @@ 1.0.392 1.11.106 1.11.86 - https://s3.eu-central-1.amazonaws.com/dynamodb-local-frankfurt/release + https://s3-us-west-2.amazonaws.com/dynamodb-local/release From 6da6722ec4e1986f2e28aa8660a4b341a70278f5 Mon Sep 17 00:00:00 2001 From: Dassi orleando Date: Mon, 19 Feb 2018 08:35:21 +0100 Subject: [PATCH 155/391] BAEL-1587: JUnit 5 Upgrade (#3695) * BAEL-1216: improve tests * BAEL-1448: Update Spring 5 articles to use the release version * Setting up the Maven Wrapper on a maven project * Add Maven Wrapper on spring-boot module * simple add * BAEL-976: Update spring version * BAEL-1273: Display RSS feed with spring mvc (AbstractRssFeedView) * Move RSS feed with Spring MVC from spring-boot to spring-mvc-simple * BAEL-1285: Update Jackson articles * BAEL-1273: implement both MVC and Rest approach to serve RSS content * RSS(XML & Json) with a custom model * BAEL-1273: remove a resource * BAEL-1519: Guide to scribejava * BAEL-1273: improve xml representation * Fix pom * BAEL-1587: JUnit 5 upgrade --- testing-modules/junit-5/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/testing-modules/junit-5/pom.xml b/testing-modules/junit-5/pom.xml index 585232b3fe..28a29d8545 100644 --- a/testing-modules/junit-5/pom.xml +++ b/testing-modules/junit-5/pom.xml @@ -20,7 +20,7 @@ UTF-8 1.8 - 5.0.2 + 5.1.0 1.0.1 4.12.1 2.8.2 From c0bf1c7a9340c821a923c77cd5d91c273c7bd818 Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Mon, 19 Feb 2018 17:20:16 +0100 Subject: [PATCH 156/391] Refactor Infinispan example (#3684) * Refactor Infinispan examples * Refactor Infinispan examples --- .../baeldung/infinispan/CacheConfiguration.java | 3 +-- .../infinispan/listener/CacheListener.java | 4 +--- .../infinispan/service/HelloWorldService.java | 14 ++------------ .../baeldung/infinispan/ConfigurationTest.java | 17 +++++------------ 4 files changed, 9 insertions(+), 29 deletions(-) diff --git a/libraries/src/main/java/com/baeldung/infinispan/CacheConfiguration.java b/libraries/src/main/java/com/baeldung/infinispan/CacheConfiguration.java index bf214458f3..58929c0111 100644 --- a/libraries/src/main/java/com/baeldung/infinispan/CacheConfiguration.java +++ b/libraries/src/main/java/com/baeldung/infinispan/CacheConfiguration.java @@ -20,8 +20,7 @@ public class CacheConfiguration { public static final String TRANSACTIONAL_CACHE = "transactional-cache"; public DefaultCacheManager cacheManager() { - DefaultCacheManager cacheManager = new DefaultCacheManager(); - return cacheManager; + return new DefaultCacheManager(); } public Cache transactionalCache(DefaultCacheManager cacheManager, CacheListener listener) { diff --git a/libraries/src/main/java/com/baeldung/infinispan/listener/CacheListener.java b/libraries/src/main/java/com/baeldung/infinispan/listener/CacheListener.java index 2f6536ad87..942a2fb62d 100644 --- a/libraries/src/main/java/com/baeldung/infinispan/listener/CacheListener.java +++ b/libraries/src/main/java/com/baeldung/infinispan/listener/CacheListener.java @@ -40,9 +40,7 @@ public class CacheListener { @CacheEntriesEvicted public void entriesEvicted(CacheEntriesEvictedEvent event) { final StringBuilder builder = new StringBuilder(); - event.getEntries().entrySet().forEach((e) -> - builder.append(e.getKey() + ", ") - ); + event.getEntries().forEach((key, value) -> builder.append(key).append(", ")); System.out.println("Evicting following entries from cache: " + builder.toString()); } diff --git a/libraries/src/main/java/com/baeldung/infinispan/service/HelloWorldService.java b/libraries/src/main/java/com/baeldung/infinispan/service/HelloWorldService.java index 0d1ffb4168..3ecefcc21a 100644 --- a/libraries/src/main/java/com/baeldung/infinispan/service/HelloWorldService.java +++ b/libraries/src/main/java/com/baeldung/infinispan/service/HelloWorldService.java @@ -31,12 +31,7 @@ public class HelloWorldService { public String findSimpleHelloWorld() { String cacheKey = "simple-hello"; - String helloWorld = simpleHelloWorldCache.get(cacheKey); - if (helloWorld == null) { - helloWorld = repository.getHelloWorld(); - simpleHelloWorldCache.put(cacheKey, helloWorld); - } - return helloWorld; + return simpleHelloWorldCache.computeIfAbsent(cacheKey, k -> repository.getHelloWorld()); } public String findExpiringHelloWorld() { @@ -79,12 +74,7 @@ public class HelloWorldService { } public String findPassivatingHelloWorld(String key) { - String value = passivatingHelloWorldCache.get(key); - if(value == null) { - value = repository.getHelloWorld(); - passivatingHelloWorldCache.put(key, value); - } - return value; + return passivatingHelloWorldCache.computeIfAbsent(key, k -> repository.getHelloWorld()); } } diff --git a/libraries/src/test/java/com/baeldung/infinispan/ConfigurationTest.java b/libraries/src/test/java/com/baeldung/infinispan/ConfigurationTest.java index 906a887e1a..c9ebe77679 100644 --- a/libraries/src/test/java/com/baeldung/infinispan/ConfigurationTest.java +++ b/libraries/src/test/java/com/baeldung/infinispan/ConfigurationTest.java @@ -9,7 +9,7 @@ import org.infinispan.manager.DefaultCacheManager; import org.junit.After; import org.junit.Before; -import java.util.concurrent.Callable; +import java.util.function.Supplier; public class ConfigurationTest { @@ -47,7 +47,6 @@ public class ConfigurationTest { passivatingHelloWorldCache); this.transactionalService = new TransactionalService(transactionalCache); - } @After @@ -55,15 +54,9 @@ public class ConfigurationTest { cacheManager.stop(); } - protected long timeThis(Callable callable) { - try { - long milis = System.currentTimeMillis(); - callable.call(); - return System.currentTimeMillis() - milis; - } catch (Exception e) { - e.printStackTrace(); - } - return 0l; + protected long timeThis(Supplier supplier) { + long millis = System.currentTimeMillis(); + supplier.get(); + return System.currentTimeMillis() - millis; } - } From a243d8494d3bbc639c2ecc2b7b13b48dd2083e0f Mon Sep 17 00:00:00 2001 From: Tarang Bhalodia Date: Mon, 19 Feb 2018 22:19:48 +0530 Subject: [PATCH 157/391] BAEL-1524: Chain of Responsibility Design Pattern in Java (#3573) * BAEL-1422: measure performance of Random and ThreadLocalRandom using JMH * BAEL-1422: updated benchmarking examples of Random and ThreadLocalRandom to use newWorkStealingPool that leverages ForkJoinPool * BAEL-1422: refactored benchmarking examples for comparing performance of ThreadLocalRandom and Random - initialised the collection of Callable before running benchmarking - removed for loop for submitting task and instead used executor.invokeAll(collection_of_callable) * BAEL-1282: added TDD type junit tests for geospatial queries elasticsearch * BAEL-1524: added example for chain of responsibility design pattern * BAEL-1524: added BDD style jUnit test to test unknown handler in ChainOfResponsibility design pattern * BAEL-1524: refactored ChainOfResponsibility design pattern example * BAEL-1524: refactored ChainOfResponsibility design pattern example * BAEL-1524: updated ChainOfResponsibility design pattern example * BAEL-1524: updated ChainOfResponsibility design pattern example --- .../AuthenticationProcessor.java | 13 +++++++ .../AuthenticationProvider.java | 5 +++ .../OAuthAuthenticationProcessor.java | 21 +++++++++++ .../OAuthTokenProvider.java | 5 +++ .../SamlAuthenticationProvider.java | 5 +++ ...ernamePasswordAuthenticationProcessor.java | 20 ++++++++++ .../UsernamePasswordProvider.java | 5 +++ .../ChainOfResponsibilityTest.java | 37 +++++++++++++++++++ 8 files changed, 111 insertions(+) create mode 100644 core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/AuthenticationProcessor.java create mode 100644 core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/AuthenticationProvider.java create mode 100644 core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/OAuthAuthenticationProcessor.java create mode 100644 core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/OAuthTokenProvider.java create mode 100644 core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/SamlAuthenticationProvider.java create mode 100644 core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/UsernamePasswordAuthenticationProcessor.java create mode 100644 core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/UsernamePasswordProvider.java create mode 100644 core-java/src/test/java/com/baeldung/designpatterns/chainofresponsibility/ChainOfResponsibilityTest.java diff --git a/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/AuthenticationProcessor.java b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/AuthenticationProcessor.java new file mode 100644 index 0000000000..b86a572393 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/AuthenticationProcessor.java @@ -0,0 +1,13 @@ +package com.baeldung.designpatterns.chainofresponsibility; + +public abstract class AuthenticationProcessor { + + // next element in chain or responsibility + public AuthenticationProcessor nextProcessor; + + public AuthenticationProcessor(AuthenticationProcessor nextProcessor) { + this.nextProcessor = nextProcessor; + } + + public abstract boolean isAuthorized(AuthenticationProvider authProvider); +} diff --git a/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/AuthenticationProvider.java b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/AuthenticationProvider.java new file mode 100644 index 0000000000..552a7ff6d9 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/AuthenticationProvider.java @@ -0,0 +1,5 @@ +package com.baeldung.designpatterns.chainofresponsibility; + +public interface AuthenticationProvider { + +} diff --git a/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/OAuthAuthenticationProcessor.java b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/OAuthAuthenticationProcessor.java new file mode 100644 index 0000000000..2e2e51fed2 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/OAuthAuthenticationProcessor.java @@ -0,0 +1,21 @@ +package com.baeldung.designpatterns.chainofresponsibility; + +public class OAuthAuthenticationProcessor extends AuthenticationProcessor { + + public OAuthAuthenticationProcessor(AuthenticationProcessor nextProcessor) { + super(nextProcessor); + } + + @Override + public boolean isAuthorized(AuthenticationProvider authProvider) { + + if (authProvider instanceof OAuthTokenProvider) { + return Boolean.TRUE; + } else if (nextProcessor != null) { + return nextProcessor.isAuthorized(authProvider); + } else { + return Boolean.FALSE; + } + } + +} diff --git a/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/OAuthTokenProvider.java b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/OAuthTokenProvider.java new file mode 100644 index 0000000000..d4e516053b --- /dev/null +++ b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/OAuthTokenProvider.java @@ -0,0 +1,5 @@ +package com.baeldung.designpatterns.chainofresponsibility; + +public class OAuthTokenProvider implements AuthenticationProvider { + +} diff --git a/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/SamlAuthenticationProvider.java b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/SamlAuthenticationProvider.java new file mode 100644 index 0000000000..533b2b4a2d --- /dev/null +++ b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/SamlAuthenticationProvider.java @@ -0,0 +1,5 @@ +package com.baeldung.designpatterns.chainofresponsibility; + +public class SamlAuthenticationProvider implements AuthenticationProvider { + +} diff --git a/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/UsernamePasswordAuthenticationProcessor.java b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/UsernamePasswordAuthenticationProcessor.java new file mode 100644 index 0000000000..df600c35db --- /dev/null +++ b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/UsernamePasswordAuthenticationProcessor.java @@ -0,0 +1,20 @@ +package com.baeldung.designpatterns.chainofresponsibility; + +public class UsernamePasswordAuthenticationProcessor extends AuthenticationProcessor { + + public UsernamePasswordAuthenticationProcessor(AuthenticationProcessor nextProcessor) { + super(nextProcessor); + } + + @Override + public boolean isAuthorized(AuthenticationProvider authProvider) { + if (authProvider instanceof UsernamePasswordProvider) { + return Boolean.TRUE; + } else if (nextProcessor != null) { + return nextProcessor.isAuthorized(authProvider); + } else { + return Boolean.FALSE; + } + } + +} diff --git a/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/UsernamePasswordProvider.java b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/UsernamePasswordProvider.java new file mode 100644 index 0000000000..9fbfa7554d --- /dev/null +++ b/core-java/src/main/java/com/baeldung/designpatterns/chainofresponsibility/UsernamePasswordProvider.java @@ -0,0 +1,5 @@ +package com.baeldung.designpatterns.chainofresponsibility; + +public class UsernamePasswordProvider implements AuthenticationProvider { + +} diff --git a/core-java/src/test/java/com/baeldung/designpatterns/chainofresponsibility/ChainOfResponsibilityTest.java b/core-java/src/test/java/com/baeldung/designpatterns/chainofresponsibility/ChainOfResponsibilityTest.java new file mode 100644 index 0000000000..a28577efb1 --- /dev/null +++ b/core-java/src/test/java/com/baeldung/designpatterns/chainofresponsibility/ChainOfResponsibilityTest.java @@ -0,0 +1,37 @@ +package com.baeldung.designpatterns.chainofresponsibility; + +import org.junit.Test; + +import static org.junit.Assert.assertTrue; + +public class ChainOfResponsibilityTest { + + private static AuthenticationProcessor getChainOfAuthProcessor() { + + AuthenticationProcessor oAuthProcessor = new OAuthAuthenticationProcessor(null); + AuthenticationProcessor unamePasswordProcessor = new UsernamePasswordAuthenticationProcessor(oAuthProcessor); + return unamePasswordProcessor; + } + + @Test + public void givenOAuthProvider_whenCheckingAuthorized_thenSuccess() { + AuthenticationProcessor authProcessorChain = getChainOfAuthProcessor(); + boolean isAuthorized = authProcessorChain.isAuthorized(new OAuthTokenProvider()); + assertTrue(isAuthorized); + } + + @Test + public void givenUsernamePasswordProvider_whenCheckingAuthorized_thenSuccess() { + AuthenticationProcessor authProcessorChain = getChainOfAuthProcessor(); + boolean isAuthorized = authProcessorChain.isAuthorized(new UsernamePasswordProvider()); + assertTrue(isAuthorized); + } + + @Test + public void givenSamlAuthProvider_whenCheckingAuthorized_thenFailure() { + AuthenticationProcessor authProcessorChain = getChainOfAuthProcessor(); + boolean isAuthorized = authProcessorChain.isAuthorized(new SamlAuthenticationProvider()); + assertTrue(!isAuthorized); + } + +} From b021e6b01a36fc0ba05c89c30e56c99c94bc5f15 Mon Sep 17 00:00:00 2001 From: kwandzel Date: Mon, 19 Feb 2018 21:09:57 +0100 Subject: [PATCH 158/391] Readme change --- spring-security-thymeleaf/README.MD | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-security-thymeleaf/README.MD b/spring-security-thymeleaf/README.MD index be5c138cd6..44d118f8a8 100644 --- a/spring-security-thymeleaf/README.MD +++ b/spring-security-thymeleaf/README.MD @@ -1 +1,2 @@ This module is for Spring Security Thymeleaf tutorial. +Jira BAEL-1556 \ No newline at end of file From 94421b7d388cea17a3d1fb7da8e87960c9dcc082 Mon Sep 17 00:00:00 2001 From: kwandzel Date: Mon, 19 Feb 2018 22:45:40 +0100 Subject: [PATCH 159/391] [BAEL-1556]:fixes according to a review --- .../SecurityConfiguration.java | 34 +++++++++++-------- .../SpringSecurityThymeleafApplication.java | 6 ++-- .../ViewController.java | 22 +++++------- .../src/main/resources/templates/index.html | 9 +++-- .../src/main/resources/templates/login.html | 4 +-- .../main/resources/templates/loginError.html | 9 ----- 6 files changed, 39 insertions(+), 45 deletions(-) delete mode 100644 spring-security-thymeleaf/src/main/resources/templates/loginError.html diff --git a/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SecurityConfiguration.java b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SecurityConfiguration.java index 9c734a6b2d..687c0c2e39 100644 --- a/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SecurityConfiguration.java +++ b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SecurityConfiguration.java @@ -12,26 +12,32 @@ import org.springframework.security.web.util.matcher.AntPathRequestMatcher; @EnableWebSecurity public class SecurityConfiguration extends WebSecurityConfigurerAdapter { - @Override + @Override protected void configure(HttpSecurity http) throws Exception { - http - .authorizeRequests() - .anyRequest().authenticated() - .and() + http.authorizeRequests() + .anyRequest() + .authenticated() + .and() .formLogin() - .loginPage("/login") - .permitAll().failureUrl("/loginError").successForwardUrl("/index") - .and() + .loginPage("/login") + .permitAll() + .successForwardUrl("/index") + .and() .logout() - .permitAll() - .logoutRequestMatcher(new AntPathRequestMatcher("/logout")) - .logoutSuccessUrl("/login"); + .permitAll() + .logoutRequestMatcher(new AntPathRequestMatcher("/logout")) + .logoutSuccessUrl("/login"); } @Autowired - public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception { + public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception { auth.inMemoryAuthentication() - .withUser("user").password("password").roles("USER").and() - .withUser("admin").password("admin").roles("ADMIN"); + .withUser("user") + .password("password") + .roles("USER") + .and() + .withUser("admin") + .password("admin") + .roles("ADMIN"); } } diff --git a/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplication.java b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplication.java index c6e4dc1469..09a4e74988 100644 --- a/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplication.java +++ b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/SpringSecurityThymeleafApplication.java @@ -6,7 +6,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class SpringSecurityThymeleafApplication { - public static void main(String[] args) { - SpringApplication.run(SpringSecurityThymeleafApplication.class, args); - } + public static void main(String[] args) { + SpringApplication.run(SpringSecurityThymeleafApplication.class, args); + } } diff --git a/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/ViewController.java b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/ViewController.java index 81b891dad8..a2337f9db5 100644 --- a/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/ViewController.java +++ b/spring-security-thymeleaf/src/main/java/com/baeldung/springsecuritythymeleaf/ViewController.java @@ -6,19 +6,13 @@ import org.springframework.web.bind.annotation.RequestMapping; @Controller public class ViewController { - @RequestMapping("/login") - public String login() { - return "login"; - } - - @RequestMapping({ "/index", "/" }) - public String index() { - return "index"; - } - - @RequestMapping("/loginError") - public String loginError() { - return "loginError"; - } + @RequestMapping("/login") + public String login() { + return "login"; + } + @RequestMapping({ "/index", "/" }) + public String index() { + return "index"; + } } diff --git a/spring-security-thymeleaf/src/main/resources/templates/index.html b/spring-security-thymeleaf/src/main/resources/templates/index.html index c127f7c663..27426ec496 100644 --- a/spring-security-thymeleaf/src/main/resources/templates/index.html +++ b/spring-security-thymeleaf/src/main/resources/templates/index.html @@ -8,8 +8,11 @@

Spring Security Thymeleaf tutorial

Text visible to user.
Text visible to admin.
-
Text visible only to authenticated users.
- Authenticated username:
- Authenticated user roles:
+
Text visible only to + authenticated users.
+ Authenticated username: +
+ Authenticated user roles: +
\ No newline at end of file diff --git a/spring-security-thymeleaf/src/main/resources/templates/login.html b/spring-security-thymeleaf/src/main/resources/templates/login.html index 92cade03ec..0177f7d8e8 100644 --- a/spring-security-thymeleaf/src/main/resources/templates/login.html +++ b/spring-security-thymeleaf/src/main/resources/templates/login.html @@ -7,9 +7,9 @@

Custom Login Page

: