diff --git a/README.md b/README.md
index 698aee8..5d8de09 100755
--- a/README.md
+++ b/README.md
@@ -94,22 +94,15 @@ To build the application:
2. Launch the Discovery tooling
![](readme_images/discovery_tooling.png)
-3. Create a new data collection, name it whatever you like, and select the default configuration.
+3. Create a new data collection, name it whatever you like, and select the default configuration. The default configuration now uses Natural Language Understanding.
- After you're done, there should be a new private collection in the UI
+4. Download and unzip the [manualdocs.zip](src/main/resources/manualdocs.zip) in this repo to reveal a set of JSON documents
-4. (Optional) [Set up the custom configuration](custom_config/config_instructions.md) in order to enrich specific Discovery fields and improve results
-
-5. On the collection tooling interface, click "Switch" on the Configuration line and select your new configuration
-
-
-
-6. Download and unzip the [manualdocs.zip](src/main/resources/manualdocs.zip) in this repo to reveal a set of JSON documents
-
-7. In the tooling interface, drag and drop (or browse and select) all of the JSON files into the "Add data to this collection" box
+5. In the tooling interface, drag and drop (or browse and select) all of the JSON files into the "Add data to this collection" box
- This may take a few minutes -- you will see a notification when the process is finished
diff --git a/build.gradle b/build.gradle
index ce67a0d..04f22db 100644
--- a/build.gradle
+++ b/build.gradle
@@ -49,8 +49,8 @@ dependencies {
compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.1'
compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.3.2'
compile group: 'org.jsoup', name: 'jsoup', version: '1.9.2'
- compile group: 'com.ibm.watson.developer_cloud', name: 'conversation', version:'3.8.0'
- compile group: 'com.ibm.watson.developer_cloud', name: 'discovery', version:'3.8.0'
+ compile group: 'com.ibm.watson.developer_cloud', name: 'conversation', version:'4.2.1'
+ compile group: 'com.ibm.watson.developer_cloud', name: 'discovery', version:'4.2.1'
testCompile 'com.sun.jersey:jersey-client:1.19.1'
testCompile 'org.mockito:mockito-core:1.+'
testCompile 'org.powermock:powermock-module-junit4:1.6.5'
diff --git a/src/main/java/com/ibm/watson/apis/conversation_with_discovery/discovery/DiscoveryClient.java b/src/main/java/com/ibm/watson/apis/conversation_with_discovery/discovery/DiscoveryClient.java
index 0844904..7784271 100644
--- a/src/main/java/com/ibm/watson/apis/conversation_with_discovery/discovery/DiscoveryClient.java
+++ b/src/main/java/com/ibm/watson/apis/conversation_with_discovery/discovery/DiscoveryClient.java
@@ -14,21 +14,22 @@
import java.util.ArrayList;
import java.util.List;
-import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-import com.google.gson.Gson;
import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import com.ibm.watson.apis.conversation_with_discovery.payload.DocumentPayload;
import com.ibm.watson.apis.conversation_with_discovery.utils.Constants;
import com.ibm.watson.apis.conversation_with_discovery.utils.Messages;
-import com.ibm.watson.developer_cloud.discovery.v1.model.query.QueryResponse;
+import com.ibm.watson.developer_cloud.discovery.v1.model.QueryResponse;
+import com.ibm.watson.developer_cloud.discovery.v1.model.QueryResult;
+import com.ibm.watson.developer_cloud.util.GsonSingleton;
/**
* DiscoveryClient.
@@ -40,32 +41,40 @@ public class DiscoveryClient {
private static final int SNIPPET_LENGTH = 150;
private Pattern pattern = Pattern.compile("((.+?)){1,2}");
-
+
/**
- * This method uses the Query object to send the user's query (the input
param) to the discovery service.
+ * This method uses the Query object to send the user's query (the
+ * input
param) to the discovery service.
*
- * @param input The user's query to be sent to the discovery service
- * @return A list of DocumentPayload objects, each representing a single document the discovery service believes is a
- * possible answer to the user's query
- * @throws Exception the exception
+ * @param input
+ * The user's query to be sent to the discovery service
+ * @return A list of DocumentPayload objects, each representing a single
+ * document the discovery service believes is a possible answer to the
+ * user's query
+ * @throws Exception
+ * the exception
*/
public List getDocuments(String input) throws Exception {
DiscoveryQuery discoveryQuery = new DiscoveryQuery();
QueryResponse output = discoveryQuery.query(input);
- List