diff --git a/src/biotree/TaxonNode.java b/src/biotree/TaxonNode.java
index e88a360835b9e12dead183429983c24413c74556..079e4d7e18e2bf40c0c0a36bb920796fb3af70b5 100644
--- a/src/biotree/TaxonNode.java
+++ b/src/biotree/TaxonNode.java
@@ -6,7 +6,7 @@ import java.util.ArrayList;
 	
 public class TaxonNode {
 	//JSON returns long
-	private final long taxonId;
+	private final int taxonId;
 	private final TaxonType taxonType;
 	private final String name;
 	
@@ -14,16 +14,16 @@ public class TaxonNode {
 	private ArrayList<TaxonNode> children = new ArrayList<TaxonNode>();
 	private int count;
 	
-	public TaxonNode(long taxonId, TaxonType taxonType, String name) {
+	public TaxonNode(int taxonId, TaxonType taxonType, String name) {
 		this.taxonId = taxonId;
 		this.taxonType = taxonType;
 		this.name = name;
 		this.parent = null;
-		this.children = null;
+		this.children = new ArrayList<TaxonNode>();
 		this.count = 0;
 	}
-	//JSON returns long
-	public long getTaxonId() {
+	
+	public int getTaxonId() {
 		return this.taxonId;
 	}
 	
@@ -59,4 +59,19 @@ public class TaxonNode {
 	public void incCount() {
 		this.count ++;
 	}
+	
+	public String toString() {
+		String s = "";
+		s += String.format("%-20s%s\n", "Scientific Name:", name);
+		s += String.format("%-20s%s\n", "Taxon Type:", taxonType);
+		s += String.format("%-20s%d\n", "Taxon ID:", taxonId);
+		if (parent != null) s += String.format("%-20s%d\n", "Parent:", parent.getTaxonId());
+		s += String.format("%-20s", "Children:");
+		for (TaxonNode tx: children) {
+			s += String.format("%d ", tx.getTaxonId());
+		}
+		s += "\n";
+		s += String.format("%-20s%d\n", "Count:", count);
+		return s;
+	}
 }
diff --git a/src/biotree/WormsAPI.java b/src/biotree/WormsAPI.java
index 3a9b7fd0716306dfc30bc592e89b9bd36c242deb..58bdc477ce91aeddb814c60486d33031f2f8056c 100644
--- a/src/biotree/WormsAPI.java
+++ b/src/biotree/WormsAPI.java
@@ -163,7 +163,7 @@ public class WormsAPI {
 		JSONObject child = (JSONObject) current.get("child");
 
 		if (checktype == true) {
-			curNode = new TaxonNode((long) current.get("AphiaID"), TaxonType.valueOf((String) current.get("rank")),
+			curNode = new TaxonNode((int) (long) current.get("AphiaID"), TaxonType.valueOf((String) current.get("rank")),
 					(String) current.get("scientificname"));
 			nodes[n] = curNode;
 			n++;