diff --git a/.DS_Store b/.DS_Store
new file mode 100644
index 00000000..0711112c
Binary files /dev/null and b/.DS_Store differ
diff --git a/.project b/.project
index 3cd55b5c..4b74fe05 100644
--- a/.project
+++ b/.project
@@ -14,4 +14,15 @@
org.eclipse.jdt.core.javanature
+
+
+ 1669304224981
+
+ 30
+
+ org.eclipse.core.resources.regexFilterMatcher
+ node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__
+
+
+
diff --git a/jacoco.exec b/jacoco.exec
new file mode 100644
index 00000000..6db42f83
Binary files /dev/null and b/jacoco.exec differ
diff --git a/src/.DS_Store b/src/.DS_Store
new file mode 100644
index 00000000..2781d8b7
Binary files /dev/null and b/src/.DS_Store differ
diff --git a/src/com/.DS_Store b/src/com/.DS_Store
new file mode 100644
index 00000000..9f96a623
Binary files /dev/null and b/src/com/.DS_Store differ
diff --git a/src/com/jwetherell/.DS_Store b/src/com/jwetherell/.DS_Store
new file mode 100644
index 00000000..bf0ba098
Binary files /dev/null and b/src/com/jwetherell/.DS_Store differ
diff --git a/src/com/jwetherell/algorithms/.DS_Store b/src/com/jwetherell/algorithms/.DS_Store
new file mode 100644
index 00000000..4622d915
Binary files /dev/null and b/src/com/jwetherell/algorithms/.DS_Store differ
diff --git a/src/com/jwetherell/algorithms/data_structures/AVLTree$1.class b/src/com/jwetherell/algorithms/data_structures/AVLTree$1.class
new file mode 100644
index 00000000..06b809e1
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/AVLTree$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/AVLTree$AVLNode.class b/src/com/jwetherell/algorithms/data_structures/AVLTree$AVLNode.class
new file mode 100644
index 00000000..f587619b
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/AVLTree$AVLNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/AVLTree$AVLTreePrinter.class b/src/com/jwetherell/algorithms/data_structures/AVLTree$AVLTreePrinter.class
new file mode 100644
index 00000000..1024dcb1
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/AVLTree$AVLTreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/AVLTree$Balance.class b/src/com/jwetherell/algorithms/data_structures/AVLTree$Balance.class
new file mode 100644
index 00000000..79402392
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/AVLTree$Balance.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/AVLTree.class b/src/com/jwetherell/algorithms/data_structures/AVLTree.class
new file mode 100644
index 00000000..51066e6a
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/AVLTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BTree$JavaCompatibleBTree$BTreeIterator.class b/src/com/jwetherell/algorithms/data_structures/BTree$JavaCompatibleBTree$BTreeIterator.class
new file mode 100644
index 00000000..1d932aad
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BTree$JavaCompatibleBTree$BTreeIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BTree$JavaCompatibleBTree.class b/src/com/jwetherell/algorithms/data_structures/BTree$JavaCompatibleBTree.class
new file mode 100644
index 00000000..67c08c30
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BTree$JavaCompatibleBTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BTree$Node$1.class b/src/com/jwetherell/algorithms/data_structures/BTree$Node$1.class
new file mode 100644
index 00000000..75980a29
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BTree$Node$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BTree$Node.class b/src/com/jwetherell/algorithms/data_structures/BTree$Node.class
new file mode 100644
index 00000000..dd72136f
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BTree$Node.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BTree$TreePrinter.class b/src/com/jwetherell/algorithms/data_structures/BTree$TreePrinter.class
new file mode 100644
index 00000000..88c0d302
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BTree$TreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BTree.class b/src/com/jwetherell/algorithms/data_structures/BTree.class
new file mode 100644
index 00000000..882181cd
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapArray$HeapPrinter.class b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapArray$HeapPrinter.class
new file mode 100644
index 00000000..8398078d
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapArray$HeapPrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapArray.class b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapArray.class
new file mode 100644
index 00000000..418ee657
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapArray.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapTree$HeapPrinter.class b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapTree$HeapPrinter.class
new file mode 100644
index 00000000..ea576cc5
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapTree$HeapPrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapTree$Node.class b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapTree$Node.class
new file mode 100644
index 00000000..f27f9ca3
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapTree$Node.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapTree.class b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapTree.class
new file mode 100644
index 00000000..772ded13
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$BinaryHeapTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinaryHeap$HeapType.class b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$HeapType.class
new file mode 100644
index 00000000..3578ce76
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$HeapType.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinaryHeap$JavaCompatibleBinaryHeapArray$BinaryHeapArrayIterator.class b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$JavaCompatibleBinaryHeapArray$BinaryHeapArrayIterator.class
new file mode 100644
index 00000000..2a18997d
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$JavaCompatibleBinaryHeapArray$BinaryHeapArrayIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinaryHeap$JavaCompatibleBinaryHeapArray.class b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$JavaCompatibleBinaryHeapArray.class
new file mode 100644
index 00000000..a69c4102
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$JavaCompatibleBinaryHeapArray.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinaryHeap$JavaCompatibleBinaryHeapTree$BinaryHeapTreeIterator.class b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$JavaCompatibleBinaryHeapTree$BinaryHeapTreeIterator.class
new file mode 100644
index 00000000..db28c7b9
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$JavaCompatibleBinaryHeapTree$BinaryHeapTreeIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinaryHeap$JavaCompatibleBinaryHeapTree.class b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$JavaCompatibleBinaryHeapTree.class
new file mode 100644
index 00000000..da627267
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$JavaCompatibleBinaryHeapTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinaryHeap$Type.class b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$Type.class
new file mode 100644
index 00000000..1280537b
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinaryHeap$Type.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinaryHeap.class b/src/com/jwetherell/algorithms/data_structures/BinaryHeap.class
new file mode 100644
index 00000000..96f94f5c
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinaryHeap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$1.class b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$1.class
new file mode 100644
index 00000000..9d2a2271
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$DepthFirstSearchOrder.class b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$DepthFirstSearchOrder.class
new file mode 100644
index 00000000..fac940a2
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$DepthFirstSearchOrder.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$INodeCreator.class b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$INodeCreator.class
new file mode 100644
index 00000000..1f3075cf
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$INodeCreator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$JavaCompatibleBinarySearchTree$BinarySearchTreeIterator.class b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$JavaCompatibleBinarySearchTree$BinarySearchTreeIterator.class
new file mode 100644
index 00000000..3287252b
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$JavaCompatibleBinarySearchTree$BinarySearchTreeIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$JavaCompatibleBinarySearchTree.class b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$JavaCompatibleBinarySearchTree.class
new file mode 100644
index 00000000..b1faf878
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$JavaCompatibleBinarySearchTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$Node.class b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$Node.class
new file mode 100644
index 00000000..948e4154
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$Node.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$TreePrinter.class b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$TreePrinter.class
new file mode 100644
index 00000000..d10549f2
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree$TreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/BinarySearchTree.class b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree.class
new file mode 100644
index 00000000..cf5b02ed
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/BinarySearchTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/CompactSuffixTrie.class b/src/com/jwetherell/algorithms/data_structures/CompactSuffixTrie.class
new file mode 100644
index 00000000..00b08a1b
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/CompactSuffixTrie.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/DisjointSet$Item.class b/src/com/jwetherell/algorithms/data_structures/DisjointSet$Item.class
new file mode 100644
index 00000000..94e2da8c
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/DisjointSet$Item.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/DisjointSet.class b/src/com/jwetherell/algorithms/data_structures/DisjointSet.class
new file mode 100644
index 00000000..178c81c0
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/DisjointSet.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/FenwickTree$Data$RangeSumData.class b/src/com/jwetherell/algorithms/data_structures/FenwickTree$Data$RangeSumData.class
new file mode 100644
index 00000000..ec6624de
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/FenwickTree$Data$RangeSumData.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/FenwickTree$Data.class b/src/com/jwetherell/algorithms/data_structures/FenwickTree$Data.class
new file mode 100644
index 00000000..a99cc079
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/FenwickTree$Data.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/FenwickTree$FenwickTreePrinter.class b/src/com/jwetherell/algorithms/data_structures/FenwickTree$FenwickTreePrinter.class
new file mode 100644
index 00000000..9536a4b3
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/FenwickTree$FenwickTreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/FenwickTree.class b/src/com/jwetherell/algorithms/data_structures/FenwickTree.class
new file mode 100644
index 00000000..cb3c8dfb
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/FenwickTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Graph$CostPathPair.class b/src/com/jwetherell/algorithms/data_structures/Graph$CostPathPair.class
new file mode 100644
index 00000000..08726a67
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Graph$CostPathPair.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Graph$CostVertexPair.class b/src/com/jwetherell/algorithms/data_structures/Graph$CostVertexPair.class
new file mode 100644
index 00000000..168211e3
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Graph$CostVertexPair.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Graph$Edge.class b/src/com/jwetherell/algorithms/data_structures/Graph$Edge.class
new file mode 100644
index 00000000..93c65a7a
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Graph$Edge.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Graph$TYPE.class b/src/com/jwetherell/algorithms/data_structures/Graph$TYPE.class
new file mode 100644
index 00000000..c31e0033
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Graph$TYPE.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Graph$Vertex.class b/src/com/jwetherell/algorithms/data_structures/Graph$Vertex.class
new file mode 100644
index 00000000..962e8315
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Graph$Vertex.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Graph.class b/src/com/jwetherell/algorithms/data_structures/Graph.class
new file mode 100644
index 00000000..d9662fc2
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Graph.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$ArrayNode.class b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$ArrayNode.class
new file mode 100644
index 00000000..35679d19
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$ArrayNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$JavaCompatibleIteratorWrapper.class b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$JavaCompatibleIteratorWrapper.class
new file mode 100644
index 00000000..cea25319
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$JavaCompatibleIteratorWrapper.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$JavaCompatibleMap$1.class b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$JavaCompatibleMap$1.class
new file mode 100644
index 00000000..8259dc07
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$JavaCompatibleMap$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$JavaCompatibleMap.class b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$JavaCompatibleMap.class
new file mode 100644
index 00000000..a19456ff
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$JavaCompatibleMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$JavaCompatibleMapEntry.class b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$JavaCompatibleMapEntry.class
new file mode 100644
index 00000000..dd53bbdd
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$JavaCompatibleMapEntry.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$KeyValueNode.class b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$KeyValueNode.class
new file mode 100644
index 00000000..a7619aa5
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$KeyValueNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$Node.class b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$Node.class
new file mode 100644
index 00000000..d14142af
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$Node.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$TreePrinter.class b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$TreePrinter.class
new file mode 100644
index 00000000..fac73e6a
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie$TreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie.class b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie.class
new file mode 100644
index 00000000..9a6cf5ce
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashArrayMappedTrie.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashMap$ChainingHashMap$JavaCompatibleHashMap$1.class b/src/com/jwetherell/algorithms/data_structures/HashMap$ChainingHashMap$JavaCompatibleHashMap$1.class
new file mode 100644
index 00000000..695f238e
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashMap$ChainingHashMap$JavaCompatibleHashMap$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashMap$ChainingHashMap$JavaCompatibleHashMap.class b/src/com/jwetherell/algorithms/data_structures/HashMap$ChainingHashMap$JavaCompatibleHashMap.class
new file mode 100644
index 00000000..3b1a04df
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashMap$ChainingHashMap$JavaCompatibleHashMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashMap$ChainingHashMap.class b/src/com/jwetherell/algorithms/data_structures/HashMap$ChainingHashMap.class
new file mode 100644
index 00000000..58995ef3
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashMap$ChainingHashMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashMap$JavaCompatibleIteratorWrapper.class b/src/com/jwetherell/algorithms/data_structures/HashMap$JavaCompatibleIteratorWrapper.class
new file mode 100644
index 00000000..25603f59
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashMap$JavaCompatibleIteratorWrapper.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashMap$JavaCompatibleMapEntry.class b/src/com/jwetherell/algorithms/data_structures/HashMap$JavaCompatibleMapEntry.class
new file mode 100644
index 00000000..244fb88f
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashMap$JavaCompatibleMapEntry.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashMap$Pair.class b/src/com/jwetherell/algorithms/data_structures/HashMap$Pair.class
new file mode 100644
index 00000000..e41dfb4a
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashMap$Pair.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashMap$ProbingHashMap$JavaCompatibleHashMap$1.class b/src/com/jwetherell/algorithms/data_structures/HashMap$ProbingHashMap$JavaCompatibleHashMap$1.class
new file mode 100644
index 00000000..8222a0bf
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashMap$ProbingHashMap$JavaCompatibleHashMap$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashMap$ProbingHashMap$JavaCompatibleHashMap.class b/src/com/jwetherell/algorithms/data_structures/HashMap$ProbingHashMap$JavaCompatibleHashMap.class
new file mode 100644
index 00000000..b399d3de
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashMap$ProbingHashMap$JavaCompatibleHashMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashMap$ProbingHashMap.class b/src/com/jwetherell/algorithms/data_structures/HashMap$ProbingHashMap.class
new file mode 100644
index 00000000..640b4252
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashMap$ProbingHashMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashMap$Type.class b/src/com/jwetherell/algorithms/data_structures/HashMap$Type.class
new file mode 100644
index 00000000..27ed2834
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashMap$Type.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/HashMap.class b/src/com/jwetherell/algorithms/data_structures/HashMap.class
new file mode 100644
index 00000000..4a0b20f8
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/HashMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap$JavaCompatibleArrayList.class b/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap$JavaCompatibleArrayList.class
new file mode 100644
index 00000000..87f3063b
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap$JavaCompatibleArrayList.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap$Node.class b/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap$Node.class
new file mode 100644
index 00000000..58702587
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap$Node.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap$Pair.class b/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap$Pair.class
new file mode 100644
index 00000000..fcf8c4ec
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap$Pair.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap$TreePrinter.class b/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap$TreePrinter.class
new file mode 100644
index 00000000..763f3eaa
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap$TreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap.class b/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap.class
new file mode 100644
index 00000000..a6a9f0e6
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/ImplicitKeyTreap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/IntervalSum.class b/src/com/jwetherell/algorithms/data_structures/IntervalSum.class
new file mode 100644
index 00000000..10baa84c
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/IntervalSum.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/IntervalTree$1.class b/src/com/jwetherell/algorithms/data_structures/IntervalTree$1.class
new file mode 100644
index 00000000..f28a79f1
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/IntervalTree$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/IntervalTree$2.class b/src/com/jwetherell/algorithms/data_structures/IntervalTree$2.class
new file mode 100644
index 00000000..ece0b228
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/IntervalTree$2.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/IntervalTree$Interval.class b/src/com/jwetherell/algorithms/data_structures/IntervalTree$Interval.class
new file mode 100644
index 00000000..8d7f2787
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/IntervalTree$Interval.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/IntervalTree$IntervalData.class b/src/com/jwetherell/algorithms/data_structures/IntervalTree$IntervalData.class
new file mode 100644
index 00000000..24ad25b5
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/IntervalTree$IntervalData.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/IntervalTree$IntervalTreePrinter.class b/src/com/jwetherell/algorithms/data_structures/IntervalTree$IntervalTreePrinter.class
new file mode 100644
index 00000000..7486eca0
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/IntervalTree$IntervalTreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/IntervalTree.class b/src/com/jwetherell/algorithms/data_structures/IntervalTree.class
new file mode 100644
index 00000000..516878d4
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/IntervalTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/KdTree$1.class b/src/com/jwetherell/algorithms/data_structures/KdTree$1.class
new file mode 100644
index 00000000..a3db15c8
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/KdTree$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/KdTree$2.class b/src/com/jwetherell/algorithms/data_structures/KdTree$2.class
new file mode 100644
index 00000000..0273076d
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/KdTree$2.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/KdTree$3.class b/src/com/jwetherell/algorithms/data_structures/KdTree$3.class
new file mode 100644
index 00000000..586cfc18
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/KdTree$3.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/KdTree$EuclideanComparator.class b/src/com/jwetherell/algorithms/data_structures/KdTree$EuclideanComparator.class
new file mode 100644
index 00000000..c3e63fe4
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/KdTree$EuclideanComparator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/KdTree$KdNode.class b/src/com/jwetherell/algorithms/data_structures/KdTree$KdNode.class
new file mode 100644
index 00000000..be18778a
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/KdTree$KdNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/KdTree$TreePrinter.class b/src/com/jwetherell/algorithms/data_structures/KdTree$TreePrinter.class
new file mode 100644
index 00000000..dc832c13
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/KdTree$TreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/KdTree$XYZPoint.class b/src/com/jwetherell/algorithms/data_structures/KdTree$XYZPoint.class
new file mode 100644
index 00000000..0d86e38f
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/KdTree$XYZPoint.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/KdTree.class b/src/com/jwetherell/algorithms/data_structures/KdTree.class
new file mode 100644
index 00000000..35544e50
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/KdTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/LCPArray.class b/src/com/jwetherell/algorithms/data_structures/LCPArray.class
new file mode 100644
index 00000000..0d800859
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/LCPArray.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/List$ArrayList.class b/src/com/jwetherell/algorithms/data_structures/List$ArrayList.class
new file mode 100644
index 00000000..41a68764
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/List$ArrayList.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/List$DoublyLinkedList$Node.class b/src/com/jwetherell/algorithms/data_structures/List$DoublyLinkedList$Node.class
new file mode 100644
index 00000000..6e7bf425
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/List$DoublyLinkedList$Node.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/List$DoublyLinkedList.class b/src/com/jwetherell/algorithms/data_structures/List$DoublyLinkedList.class
new file mode 100644
index 00000000..b96b23e4
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/List$DoublyLinkedList.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleArrayList.class b/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleArrayList.class
new file mode 100644
index 00000000..6c2663b3
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleArrayList.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleDoublyLinkedList$DoublyLinkedListListIterator.class b/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleDoublyLinkedList$DoublyLinkedListListIterator.class
new file mode 100644
index 00000000..0b129028
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleDoublyLinkedList$DoublyLinkedListListIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleDoublyLinkedList.class b/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleDoublyLinkedList.class
new file mode 100644
index 00000000..8dafdb25
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleDoublyLinkedList.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleSinglyLinkedList$SinglyLinkedListListIterator.class b/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleSinglyLinkedList$SinglyLinkedListListIterator.class
new file mode 100644
index 00000000..ec64e786
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleSinglyLinkedList$SinglyLinkedListListIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleSinglyLinkedList.class b/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleSinglyLinkedList.class
new file mode 100644
index 00000000..35ffd6ae
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/List$JavaCompatibleSinglyLinkedList.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/List$SinglyLinkedList$Node.class b/src/com/jwetherell/algorithms/data_structures/List$SinglyLinkedList$Node.class
new file mode 100644
index 00000000..5c270132
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/List$SinglyLinkedList$Node.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/List$SinglyLinkedList.class b/src/com/jwetherell/algorithms/data_structures/List$SinglyLinkedList.class
new file mode 100644
index 00000000..8299829c
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/List$SinglyLinkedList.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/List.class b/src/com/jwetherell/algorithms/data_structures/List.class
new file mode 100644
index 00000000..870967d7
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/List.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/LowestCommonAncestor$NodesNotInSameTreeException.class b/src/com/jwetherell/algorithms/data_structures/LowestCommonAncestor$NodesNotInSameTreeException.class
new file mode 100644
index 00000000..73878f86
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/LowestCommonAncestor$NodesNotInSameTreeException.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/LowestCommonAncestor$TreeNode.class b/src/com/jwetherell/algorithms/data_structures/LowestCommonAncestor$TreeNode.class
new file mode 100644
index 00000000..0424ab18
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/LowestCommonAncestor$TreeNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/LowestCommonAncestor.class b/src/com/jwetherell/algorithms/data_structures/LowestCommonAncestor.class
new file mode 100644
index 00000000..f5249bd7
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/LowestCommonAncestor.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Matrix$1.class b/src/com/jwetherell/algorithms/data_structures/Matrix$1.class
new file mode 100644
index 00000000..b93f61a0
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Matrix$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Matrix.class b/src/com/jwetherell/algorithms/data_structures/Matrix.class
new file mode 100644
index 00000000..3d9c7b8b
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Matrix.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$1.class b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$1.class
new file mode 100644
index 00000000..459ddfe8
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$INodeCreator.class b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$INodeCreator.class
new file mode 100644
index 00000000..f9213a82
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$INodeCreator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$JavaCompatiblePatriciaTrie$PatriciaTrieIterator.class b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$JavaCompatiblePatriciaTrie$PatriciaTrieIterator.class
new file mode 100644
index 00000000..1aa52b91
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$JavaCompatiblePatriciaTrie$PatriciaTrieIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$JavaCompatiblePatriciaTrie.class b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$JavaCompatiblePatriciaTrie.class
new file mode 100644
index 00000000..a44cfe6d
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$JavaCompatiblePatriciaTrie.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$Node.class b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$Node.class
new file mode 100644
index 00000000..bb5aae98
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$Node.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$PatriciaTriePrinter.class b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$PatriciaTriePrinter.class
new file mode 100644
index 00000000..b9372585
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie$PatriciaTriePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/PatriciaTrie.class b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie.class
new file mode 100644
index 00000000..3ef5e006
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/PatriciaTrie.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/QuadTree$1.class b/src/com/jwetherell/algorithms/data_structures/QuadTree$1.class
new file mode 100644
index 00000000..5ad6b1f2
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/QuadTree$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/QuadTree$2.class b/src/com/jwetherell/algorithms/data_structures/QuadTree$2.class
new file mode 100644
index 00000000..e60dd074
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/QuadTree$2.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/QuadTree$AxisAlignedBoundingBox.class b/src/com/jwetherell/algorithms/data_structures/QuadTree$AxisAlignedBoundingBox.class
new file mode 100644
index 00000000..fea77d4e
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/QuadTree$AxisAlignedBoundingBox.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/QuadTree$MxCifQuadTree$MxCifQuadNode.class b/src/com/jwetherell/algorithms/data_structures/QuadTree$MxCifQuadTree$MxCifQuadNode.class
new file mode 100644
index 00000000..1ef0d18d
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/QuadTree$MxCifQuadTree$MxCifQuadNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/QuadTree$MxCifQuadTree.class b/src/com/jwetherell/algorithms/data_structures/QuadTree$MxCifQuadTree.class
new file mode 100644
index 00000000..f5f24ff6
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/QuadTree$MxCifQuadTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/QuadTree$PointRegionQuadTree$PointRegionQuadNode.class b/src/com/jwetherell/algorithms/data_structures/QuadTree$PointRegionQuadTree$PointRegionQuadNode.class
new file mode 100644
index 00000000..929fe2bc
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/QuadTree$PointRegionQuadTree$PointRegionQuadNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/QuadTree$PointRegionQuadTree.class b/src/com/jwetherell/algorithms/data_structures/QuadTree$PointRegionQuadTree.class
new file mode 100644
index 00000000..86198533
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/QuadTree$PointRegionQuadTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/QuadTree$QuadNode.class b/src/com/jwetherell/algorithms/data_structures/QuadTree$QuadNode.class
new file mode 100644
index 00000000..6bd25892
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/QuadTree$QuadNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/QuadTree$TreePrinter.class b/src/com/jwetherell/algorithms/data_structures/QuadTree$TreePrinter.class
new file mode 100644
index 00000000..e8c54c23
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/QuadTree$TreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/QuadTree$XYPoint.class b/src/com/jwetherell/algorithms/data_structures/QuadTree$XYPoint.class
new file mode 100644
index 00000000..c7c910a6
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/QuadTree$XYPoint.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/QuadTree.class b/src/com/jwetherell/algorithms/data_structures/QuadTree.class
new file mode 100644
index 00000000..4750f95a
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/QuadTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Queue$ArrayQueue.class b/src/com/jwetherell/algorithms/data_structures/Queue$ArrayQueue.class
new file mode 100644
index 00000000..2f730846
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Queue$ArrayQueue.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Queue$JavaCompatibleArrayQueue$ArrayQueueIterator.class b/src/com/jwetherell/algorithms/data_structures/Queue$JavaCompatibleArrayQueue$ArrayQueueIterator.class
new file mode 100644
index 00000000..b28b4b83
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Queue$JavaCompatibleArrayQueue$ArrayQueueIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Queue$JavaCompatibleArrayQueue.class b/src/com/jwetherell/algorithms/data_structures/Queue$JavaCompatibleArrayQueue.class
new file mode 100644
index 00000000..1135cfa1
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Queue$JavaCompatibleArrayQueue.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Queue$JavaCompatibleLinkedQueue$LinkedQueueIterator.class b/src/com/jwetherell/algorithms/data_structures/Queue$JavaCompatibleLinkedQueue$LinkedQueueIterator.class
new file mode 100644
index 00000000..eb9560c2
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Queue$JavaCompatibleLinkedQueue$LinkedQueueIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Queue$JavaCompatibleLinkedQueue.class b/src/com/jwetherell/algorithms/data_structures/Queue$JavaCompatibleLinkedQueue.class
new file mode 100644
index 00000000..83ec0919
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Queue$JavaCompatibleLinkedQueue.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Queue$LinkedQueue$Node.class b/src/com/jwetherell/algorithms/data_structures/Queue$LinkedQueue$Node.class
new file mode 100644
index 00000000..3b3295b6
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Queue$LinkedQueue$Node.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Queue$LinkedQueue.class b/src/com/jwetherell/algorithms/data_structures/Queue$LinkedQueue.class
new file mode 100644
index 00000000..4114bb55
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Queue$LinkedQueue.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Queue.class b/src/com/jwetherell/algorithms/data_structures/Queue.class
new file mode 100644
index 00000000..ebfd1365
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Queue.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/RadixTrie$JavaCompatibleIteratorWrapper.class b/src/com/jwetherell/algorithms/data_structures/RadixTrie$JavaCompatibleIteratorWrapper.class
new file mode 100644
index 00000000..2dba734f
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/RadixTrie$JavaCompatibleIteratorWrapper.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/RadixTrie$JavaCompatibleMapEntry.class b/src/com/jwetherell/algorithms/data_structures/RadixTrie$JavaCompatibleMapEntry.class
new file mode 100644
index 00000000..74d0a62e
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/RadixTrie$JavaCompatibleMapEntry.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/RadixTrie$JavaCompatibleRadixTrieMap$1.class b/src/com/jwetherell/algorithms/data_structures/RadixTrie$JavaCompatibleRadixTrieMap$1.class
new file mode 100644
index 00000000..ccfe47d9
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/RadixTrie$JavaCompatibleRadixTrieMap$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/RadixTrie$JavaCompatibleRadixTrieMap.class b/src/com/jwetherell/algorithms/data_structures/RadixTrie$JavaCompatibleRadixTrieMap.class
new file mode 100644
index 00000000..232f2c51
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/RadixTrie$JavaCompatibleRadixTrieMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/RadixTrie$RadixNode.class b/src/com/jwetherell/algorithms/data_structures/RadixTrie$RadixNode.class
new file mode 100644
index 00000000..72436d10
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/RadixTrie$RadixNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/RadixTrie$RadixTreePrinter.class b/src/com/jwetherell/algorithms/data_structures/RadixTrie$RadixTreePrinter.class
new file mode 100644
index 00000000..bd93aacb
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/RadixTrie$RadixTreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/RadixTrie.class b/src/com/jwetherell/algorithms/data_structures/RadixTrie.class
new file mode 100644
index 00000000..66fabb0c
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/RadixTrie.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/RedBlackTree$1.class b/src/com/jwetherell/algorithms/data_structures/RedBlackTree$1.class
new file mode 100644
index 00000000..5159c7f3
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/RedBlackTree$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/RedBlackTree$JavaCompatibleRedBlackTree$RedBlackTreeIterator.class b/src/com/jwetherell/algorithms/data_structures/RedBlackTree$JavaCompatibleRedBlackTree$RedBlackTreeIterator.class
new file mode 100644
index 00000000..38c2077a
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/RedBlackTree$JavaCompatibleRedBlackTree$RedBlackTreeIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/RedBlackTree$JavaCompatibleRedBlackTree.class b/src/com/jwetherell/algorithms/data_structures/RedBlackTree$JavaCompatibleRedBlackTree.class
new file mode 100644
index 00000000..33281d22
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/RedBlackTree$JavaCompatibleRedBlackTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/RedBlackTree$RedBlackNode.class b/src/com/jwetherell/algorithms/data_structures/RedBlackTree$RedBlackNode.class
new file mode 100644
index 00000000..e547b2e0
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/RedBlackTree$RedBlackNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/RedBlackTree$RedBlackTreePrinter.class b/src/com/jwetherell/algorithms/data_structures/RedBlackTree$RedBlackTreePrinter.class
new file mode 100644
index 00000000..7ef590f1
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/RedBlackTree$RedBlackTreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/RedBlackTree.class b/src/com/jwetherell/algorithms/data_structures/RedBlackTree.class
new file mode 100644
index 00000000..8f8ae490
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/RedBlackTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$IntervalData.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$IntervalData.class
new file mode 100644
index 00000000..fd5cfd25
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$IntervalData.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$QuadrantData.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$QuadrantData.class
new file mode 100644
index 00000000..c4a118f9
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$QuadrantData.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$RangeMaximumData.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$RangeMaximumData.class
new file mode 100644
index 00000000..43c965d2
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$RangeMaximumData.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$RangeMinimumData.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$RangeMinimumData.class
new file mode 100644
index 00000000..b7be198c
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$RangeMinimumData.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$RangeSumData.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$RangeSumData.class
new file mode 100644
index 00000000..6e9f3cd2
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data$RangeSumData.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data.class
new file mode 100644
index 00000000..83c12d2d
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Data.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$DynamicSegmentTree$1.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$DynamicSegmentTree$1.class
new file mode 100644
index 00000000..d7ff8ed3
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$DynamicSegmentTree$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$DynamicSegmentTree$2.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$DynamicSegmentTree$2.class
new file mode 100644
index 00000000..537b57ca
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$DynamicSegmentTree$2.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$DynamicSegmentTree$OverlappingSegment.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$DynamicSegmentTree$OverlappingSegment.class
new file mode 100644
index 00000000..8bae5fb4
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$DynamicSegmentTree$OverlappingSegment.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$DynamicSegmentTree.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$DynamicSegmentTree.class
new file mode 100644
index 00000000..6b3b8edc
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$DynamicSegmentTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$FlatSegmentTree$NonOverlappingSegment.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$FlatSegmentTree$NonOverlappingSegment.class
new file mode 100644
index 00000000..b2f185be
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$FlatSegmentTree$NonOverlappingSegment.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$FlatSegmentTree.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$FlatSegmentTree.class
new file mode 100644
index 00000000..cc1f5c20
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$FlatSegmentTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$Segment.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Segment.class
new file mode 100644
index 00000000..3660d7a6
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$Segment.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree$SegmentTreePrinter.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree$SegmentTreePrinter.class
new file mode 100644
index 00000000..874317ad
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree$SegmentTreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SegmentTree.class b/src/com/jwetherell/algorithms/data_structures/SegmentTree.class
new file mode 100644
index 00000000..2b15ed90
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SegmentTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SkipList$INodeCreator.class b/src/com/jwetherell/algorithms/data_structures/SkipList$INodeCreator.class
new file mode 100644
index 00000000..fe4c9101
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SkipList$INodeCreator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SkipList$JavaCompatibleSkipList$SkipListListIterator.class b/src/com/jwetherell/algorithms/data_structures/SkipList$JavaCompatibleSkipList$SkipListListIterator.class
new file mode 100644
index 00000000..9d2b7135
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SkipList$JavaCompatibleSkipList$SkipListListIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SkipList$JavaCompatibleSkipList.class b/src/com/jwetherell/algorithms/data_structures/SkipList$JavaCompatibleSkipList.class
new file mode 100644
index 00000000..74045e65
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SkipList$JavaCompatibleSkipList.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SkipList$Node.class b/src/com/jwetherell/algorithms/data_structures/SkipList$Node.class
new file mode 100644
index 00000000..b3f34f4f
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SkipList$Node.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SkipList$NodeLevelPair.class b/src/com/jwetherell/algorithms/data_structures/SkipList$NodeLevelPair.class
new file mode 100644
index 00000000..216e482a
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SkipList$NodeLevelPair.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SkipList.class b/src/com/jwetherell/algorithms/data_structures/SkipList.class
new file mode 100644
index 00000000..8ac761f5
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SkipList.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SkipListMap$JavaCompatibleIteratorWrapper.class b/src/com/jwetherell/algorithms/data_structures/SkipListMap$JavaCompatibleIteratorWrapper.class
new file mode 100644
index 00000000..f6d5169a
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SkipListMap$JavaCompatibleIteratorWrapper.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SkipListMap$JavaCompatibleMapEntry.class b/src/com/jwetherell/algorithms/data_structures/SkipListMap$JavaCompatibleMapEntry.class
new file mode 100644
index 00000000..bf5e6805
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SkipListMap$JavaCompatibleMapEntry.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SkipListMap$JavaCompatibleTreeMap$1.class b/src/com/jwetherell/algorithms/data_structures/SkipListMap$JavaCompatibleTreeMap$1.class
new file mode 100644
index 00000000..59e5a18d
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SkipListMap$JavaCompatibleTreeMap$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SkipListMap$JavaCompatibleTreeMap.class b/src/com/jwetherell/algorithms/data_structures/SkipListMap$JavaCompatibleTreeMap.class
new file mode 100644
index 00000000..47a21b8a
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SkipListMap$JavaCompatibleTreeMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SkipListMap$SkipListMapNode.class b/src/com/jwetherell/algorithms/data_structures/SkipListMap$SkipListMapNode.class
new file mode 100644
index 00000000..d8396562
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SkipListMap$SkipListMapNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SkipListMap.class b/src/com/jwetherell/algorithms/data_structures/SkipListMap.class
new file mode 100644
index 00000000..5a4812fe
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SkipListMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SplayTree.class b/src/com/jwetherell/algorithms/data_structures/SplayTree.class
new file mode 100644
index 00000000..eca94890
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SplayTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Stack$ArrayStack.class b/src/com/jwetherell/algorithms/data_structures/Stack$ArrayStack.class
new file mode 100644
index 00000000..81f28bbc
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Stack$ArrayStack.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Stack$JavaCompatibleArrayStack$ArrayStackIterator.class b/src/com/jwetherell/algorithms/data_structures/Stack$JavaCompatibleArrayStack$ArrayStackIterator.class
new file mode 100644
index 00000000..dfef31f7
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Stack$JavaCompatibleArrayStack$ArrayStackIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Stack$JavaCompatibleArrayStack.class b/src/com/jwetherell/algorithms/data_structures/Stack$JavaCompatibleArrayStack.class
new file mode 100644
index 00000000..042274d5
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Stack$JavaCompatibleArrayStack.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Stack$JavaCompatibleLinkedStack$LinkedStackIterator.class b/src/com/jwetherell/algorithms/data_structures/Stack$JavaCompatibleLinkedStack$LinkedStackIterator.class
new file mode 100644
index 00000000..933ee020
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Stack$JavaCompatibleLinkedStack$LinkedStackIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Stack$JavaCompatibleLinkedStack.class b/src/com/jwetherell/algorithms/data_structures/Stack$JavaCompatibleLinkedStack.class
new file mode 100644
index 00000000..01dc8192
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Stack$JavaCompatibleLinkedStack.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Stack$LinkedStack$Node.class b/src/com/jwetherell/algorithms/data_structures/Stack$LinkedStack$Node.class
new file mode 100644
index 00000000..2108df9a
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Stack$LinkedStack$Node.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Stack$LinkedStack.class b/src/com/jwetherell/algorithms/data_structures/Stack$LinkedStack.class
new file mode 100644
index 00000000..7db0240f
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Stack$LinkedStack.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Stack.class b/src/com/jwetherell/algorithms/data_structures/Stack.class
new file mode 100644
index 00000000..9e9eaab3
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Stack.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SuffixArray$1.class b/src/com/jwetherell/algorithms/data_structures/SuffixArray$1.class
new file mode 100644
index 00000000..543b7186
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SuffixArray$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SuffixArray$KMRsWithIndex.class b/src/com/jwetherell/algorithms/data_structures/SuffixArray$KMRsWithIndex.class
new file mode 100644
index 00000000..b4dafc61
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SuffixArray$KMRsWithIndex.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SuffixArray.class b/src/com/jwetherell/algorithms/data_structures/SuffixArray.class
new file mode 100644
index 00000000..412ab9ff
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SuffixArray.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SuffixTree$Edge.class b/src/com/jwetherell/algorithms/data_structures/SuffixTree$Edge.class
new file mode 100644
index 00000000..2272889f
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SuffixTree$Edge.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SuffixTree$Link.class b/src/com/jwetherell/algorithms/data_structures/SuffixTree$Link.class
new file mode 100644
index 00000000..9d29ed1c
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SuffixTree$Link.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SuffixTree$TreePrinter.class b/src/com/jwetherell/algorithms/data_structures/SuffixTree$TreePrinter.class
new file mode 100644
index 00000000..0224c315
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SuffixTree$TreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SuffixTree.class b/src/com/jwetherell/algorithms/data_structures/SuffixTree.class
new file mode 100644
index 00000000..f8e72271
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SuffixTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/SuffixTrie.class b/src/com/jwetherell/algorithms/data_structures/SuffixTrie.class
new file mode 100644
index 00000000..e3bc341a
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/SuffixTrie.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$1.class b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$1.class
new file mode 100644
index 00000000..238bcc1b
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$INodeCreator.class b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$INodeCreator.class
new file mode 100644
index 00000000..a7554bd8
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$INodeCreator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$JavaCompatibleTree$TreeIterator.class b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$JavaCompatibleTree$TreeIterator.class
new file mode 100644
index 00000000..2a6b457c
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$JavaCompatibleTree$TreeIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$JavaCompatibleTree.class b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$JavaCompatibleTree.class
new file mode 100644
index 00000000..99715eb3
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$JavaCompatibleTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$Node.class b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$Node.class
new file mode 100644
index 00000000..cd3a7b42
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$Node.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$TreePrinter.class b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$TreePrinter.class
new file mode 100644
index 00000000..955ec2d8
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree$TreePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TernarySearchTree.class b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree.class
new file mode 100644
index 00000000..56372cd4
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TernarySearchTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Treap$1.class b/src/com/jwetherell/algorithms/data_structures/Treap$1.class
new file mode 100644
index 00000000..dcf4fd3d
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Treap$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Treap$TreapNode.class b/src/com/jwetherell/algorithms/data_structures/Treap$TreapNode.class
new file mode 100644
index 00000000..068bc3d8
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Treap$TreapNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Treap$TreapPrinter.class b/src/com/jwetherell/algorithms/data_structures/Treap$TreapPrinter.class
new file mode 100644
index 00000000..665deb92
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Treap$TreapPrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Treap.class b/src/com/jwetherell/algorithms/data_structures/Treap.class
new file mode 100644
index 00000000..cb00ee71
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Treap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TreeMap$1.class b/src/com/jwetherell/algorithms/data_structures/TreeMap$1.class
new file mode 100644
index 00000000..abc75899
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TreeMap$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TreeMap$JavaCompatibleIteratorWrapper.class b/src/com/jwetherell/algorithms/data_structures/TreeMap$JavaCompatibleIteratorWrapper.class
new file mode 100644
index 00000000..39f04f3a
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TreeMap$JavaCompatibleIteratorWrapper.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TreeMap$JavaCompatibleMapEntry.class b/src/com/jwetherell/algorithms/data_structures/TreeMap$JavaCompatibleMapEntry.class
new file mode 100644
index 00000000..13ca4989
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TreeMap$JavaCompatibleMapEntry.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TreeMap$JavaCompatibleTreeMap$1.class b/src/com/jwetherell/algorithms/data_structures/TreeMap$JavaCompatibleTreeMap$1.class
new file mode 100644
index 00000000..6a8a0c88
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TreeMap$JavaCompatibleTreeMap$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TreeMap$JavaCompatibleTreeMap.class b/src/com/jwetherell/algorithms/data_structures/TreeMap$JavaCompatibleTreeMap.class
new file mode 100644
index 00000000..654eca45
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TreeMap$JavaCompatibleTreeMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TreeMap$TreeMapNode.class b/src/com/jwetherell/algorithms/data_structures/TreeMap$TreeMapNode.class
new file mode 100644
index 00000000..ac8e32b3
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TreeMap$TreeMapNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TreeMap$TreeMapPrinter.class b/src/com/jwetherell/algorithms/data_structures/TreeMap$TreeMapPrinter.class
new file mode 100644
index 00000000..8d37d683
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TreeMap$TreeMapPrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TreeMap.class b/src/com/jwetherell/algorithms/data_structures/TreeMap.class
new file mode 100644
index 00000000..0bc7fc78
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TreeMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Trie$1.class b/src/com/jwetherell/algorithms/data_structures/Trie$1.class
new file mode 100644
index 00000000..1d86cf65
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Trie$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Trie$INodeCreator.class b/src/com/jwetherell/algorithms/data_structures/Trie$INodeCreator.class
new file mode 100644
index 00000000..b9d3ecce
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Trie$INodeCreator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Trie$JavaCompatibleTrie$TrieIterator.class b/src/com/jwetherell/algorithms/data_structures/Trie$JavaCompatibleTrie$TrieIterator.class
new file mode 100644
index 00000000..cb258016
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Trie$JavaCompatibleTrie$TrieIterator.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Trie$JavaCompatibleTrie.class b/src/com/jwetherell/algorithms/data_structures/Trie$JavaCompatibleTrie.class
new file mode 100644
index 00000000..799cf0bf
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Trie$JavaCompatibleTrie.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Trie$Node.class b/src/com/jwetherell/algorithms/data_structures/Trie$Node.class
new file mode 100644
index 00000000..b5e23b8c
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Trie$Node.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Trie$TriePrinter.class b/src/com/jwetherell/algorithms/data_structures/Trie$TriePrinter.class
new file mode 100644
index 00000000..dcdfdbf9
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Trie$TriePrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/Trie.class b/src/com/jwetherell/algorithms/data_structures/Trie.class
new file mode 100644
index 00000000..b15fb30b
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/Trie.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TrieMap$JavaCompatibleIteratorWrapper.class b/src/com/jwetherell/algorithms/data_structures/TrieMap$JavaCompatibleIteratorWrapper.class
new file mode 100644
index 00000000..2434aefc
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TrieMap$JavaCompatibleIteratorWrapper.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TrieMap$JavaCompatibleMapEntry.class b/src/com/jwetherell/algorithms/data_structures/TrieMap$JavaCompatibleMapEntry.class
new file mode 100644
index 00000000..9076c383
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TrieMap$JavaCompatibleMapEntry.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TrieMap$JavaCompatibleTrieMap$1.class b/src/com/jwetherell/algorithms/data_structures/TrieMap$JavaCompatibleTrieMap$1.class
new file mode 100644
index 00000000..8968a692
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TrieMap$JavaCompatibleTrieMap$1.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TrieMap$JavaCompatibleTrieMap.class b/src/com/jwetherell/algorithms/data_structures/TrieMap$JavaCompatibleTrieMap.class
new file mode 100644
index 00000000..499127dc
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TrieMap$JavaCompatibleTrieMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TrieMap$TrieMapNode.class b/src/com/jwetherell/algorithms/data_structures/TrieMap$TrieMapNode.class
new file mode 100644
index 00000000..84587897
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TrieMap$TrieMapNode.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TrieMap$TrieMapPrinter.class b/src/com/jwetherell/algorithms/data_structures/TrieMap$TrieMapPrinter.class
new file mode 100644
index 00000000..e85de997
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TrieMap$TrieMapPrinter.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/TrieMap.class b/src/com/jwetherell/algorithms/data_structures/TrieMap.class
new file mode 100644
index 00000000..e40d752e
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/TrieMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/interfaces/IHeap.class b/src/com/jwetherell/algorithms/data_structures/interfaces/IHeap.class
new file mode 100644
index 00000000..b829dc68
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/interfaces/IHeap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/interfaces/IList.class b/src/com/jwetherell/algorithms/data_structures/interfaces/IList.class
new file mode 100644
index 00000000..abe6b6b4
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/interfaces/IList.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/interfaces/IMap.class b/src/com/jwetherell/algorithms/data_structures/interfaces/IMap.class
new file mode 100644
index 00000000..e941be00
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/interfaces/IMap.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/interfaces/IQueue.class b/src/com/jwetherell/algorithms/data_structures/interfaces/IQueue.class
new file mode 100644
index 00000000..893d90ef
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/interfaces/IQueue.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/interfaces/ISet.class b/src/com/jwetherell/algorithms/data_structures/interfaces/ISet.class
new file mode 100644
index 00000000..27594f62
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/interfaces/ISet.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/interfaces/IStack.class b/src/com/jwetherell/algorithms/data_structures/interfaces/IStack.class
new file mode 100644
index 00000000..b2239299
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/interfaces/IStack.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/interfaces/ISuffixTree.class b/src/com/jwetherell/algorithms/data_structures/interfaces/ISuffixTree.class
new file mode 100644
index 00000000..4148e6ef
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/interfaces/ISuffixTree.class differ
diff --git a/src/com/jwetherell/algorithms/data_structures/interfaces/ITree.class b/src/com/jwetherell/algorithms/data_structures/interfaces/ITree.class
new file mode 100644
index 00000000..01997d7b
Binary files /dev/null and b/src/com/jwetherell/algorithms/data_structures/interfaces/ITree.class differ
diff --git a/test/.DS_Store b/test/.DS_Store
new file mode 100644
index 00000000..fa7503fe
Binary files /dev/null and b/test/.DS_Store differ
diff --git a/test/com/.DS_Store b/test/com/.DS_Store
new file mode 100644
index 00000000..2a61133d
Binary files /dev/null and b/test/com/.DS_Store differ
diff --git a/test/com/jwetherell/.DS_Store b/test/com/jwetherell/.DS_Store
new file mode 100644
index 00000000..86213c59
Binary files /dev/null and b/test/com/jwetherell/.DS_Store differ
diff --git a/test/com/jwetherell/algorithms/.DS_Store b/test/com/jwetherell/algorithms/.DS_Store
new file mode 100644
index 00000000..2a053f3f
Binary files /dev/null and b/test/com/jwetherell/algorithms/.DS_Store differ
diff --git a/test/com/jwetherell/algorithms/data_structures/.DS_Store b/test/com/jwetherell/algorithms/data_structures/.DS_Store
new file mode 100644
index 00000000..99400e60
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/.DS_Store differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/AVLTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/AVLTreeTests.class
new file mode 100644
index 00000000..3d7e75e2
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/AVLTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/AllTests.class b/test/com/jwetherell/algorithms/data_structures/test/AllTests.class
new file mode 100644
index 00000000..9af19197
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/AllTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/BTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/BTreeTests.class
new file mode 100644
index 00000000..ece1b16f
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/BTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/BinaryHeapTests.class b/test/com/jwetherell/algorithms/data_structures/test/BinaryHeapTests.class
new file mode 100644
index 00000000..f52faf0c
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/BinaryHeapTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/BinarySearchTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/BinarySearchTreeTests.class
new file mode 100644
index 00000000..1699337c
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/BinarySearchTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/CompactSuffixTrieTests.class b/test/com/jwetherell/algorithms/data_structures/test/CompactSuffixTrieTests.class
new file mode 100644
index 00000000..6651413c
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/CompactSuffixTrieTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/DisjointSetTests.class b/test/com/jwetherell/algorithms/data_structures/test/DisjointSetTests.class
new file mode 100644
index 00000000..089b0557
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/DisjointSetTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/DisjointSetTests.java b/test/com/jwetherell/algorithms/data_structures/test/DisjointSetTests.java
index 7d80aacf..0931f420 100644
--- a/test/com/jwetherell/algorithms/data_structures/test/DisjointSetTests.java
+++ b/test/com/jwetherell/algorithms/data_structures/test/DisjointSetTests.java
@@ -73,6 +73,9 @@ public void testDisjointSet1() {
final DisjointSet.Item result = DisjointSet.find(item);
Assert.assertTrue(result.equals(superSet));
}
+ // Improve coverage
+ // assert find null results in null
+ assertNull(DisjointSet.find(null));
}
@Test
diff --git a/test/com/jwetherell/algorithms/data_structures/test/FenwickTreeTests$1.class b/test/com/jwetherell/algorithms/data_structures/test/FenwickTreeTests$1.class
new file mode 100644
index 00000000..96284e8a
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/FenwickTreeTests$1.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/FenwickTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/FenwickTreeTests.class
new file mode 100644
index 00000000..1df9d36a
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/FenwickTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/GraphTests.class b/test/com/jwetherell/algorithms/data_structures/test/GraphTests.class
new file mode 100644
index 00000000..c901fe6b
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/GraphTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/GraphTests.java b/test/com/jwetherell/algorithms/data_structures/test/GraphTests.java
index 6deb8efd..2cfc61f5 100644
--- a/test/com/jwetherell/algorithms/data_structures/test/GraphTests.java
+++ b/test/com/jwetherell/algorithms/data_structures/test/GraphTests.java
@@ -86,6 +86,10 @@ public void testGraph() {
final Graph clone = new Graph(graph);
Assert.assertTrue(graph.equals(clone) && graph.hashCode()==clone.hashCode());
+ // improve coverage
+ // to string test
+ Assert.assertNotNull(graph.toString());
+
}
@Test
diff --git a/test/com/jwetherell/algorithms/data_structures/test/HashArrayMappedTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/HashArrayMappedTreeTests.class
new file mode 100644
index 00000000..e3a12ecb
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/HashArrayMappedTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/HashMapTests.class b/test/com/jwetherell/algorithms/data_structures/test/HashMapTests.class
new file mode 100644
index 00000000..8102f0e0
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/HashMapTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/ImplicitKeyTreapTests$MyTreap.class b/test/com/jwetherell/algorithms/data_structures/test/ImplicitKeyTreapTests$MyTreap.class
new file mode 100644
index 00000000..de4b7d40
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/ImplicitKeyTreapTests$MyTreap.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/ImplicitKeyTreapTests.class b/test/com/jwetherell/algorithms/data_structures/test/ImplicitKeyTreapTests.class
new file mode 100644
index 00000000..6b7daeb1
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/ImplicitKeyTreapTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/IntervalSumTest.class b/test/com/jwetherell/algorithms/data_structures/test/IntervalSumTest.class
new file mode 100644
index 00000000..7c00fb56
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/IntervalSumTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/IntervalTreeTests$1.class b/test/com/jwetherell/algorithms/data_structures/test/IntervalTreeTests$1.class
new file mode 100644
index 00000000..54107fd1
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/IntervalTreeTests$1.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/IntervalTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/IntervalTreeTests.class
new file mode 100644
index 00000000..5e41b187
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/IntervalTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/KdTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/KdTreeTests.class
new file mode 100644
index 00000000..97440c85
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/KdTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/LCPArrayTest.class b/test/com/jwetherell/algorithms/data_structures/test/LCPArrayTest.class
new file mode 100644
index 00000000..7958d391
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/LCPArrayTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/ListTests.class b/test/com/jwetherell/algorithms/data_structures/test/ListTests.class
new file mode 100644
index 00000000..8fc5eb79
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/ListTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/LowestCommonAncestorTest.class b/test/com/jwetherell/algorithms/data_structures/test/LowestCommonAncestorTest.class
new file mode 100644
index 00000000..97e5e88b
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/LowestCommonAncestorTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/MatrixTests.class b/test/com/jwetherell/algorithms/data_structures/test/MatrixTests.class
new file mode 100644
index 00000000..215e67c1
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/MatrixTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/MatrixTests.java b/test/com/jwetherell/algorithms/data_structures/test/MatrixTests.java
index ca0014bf..3b51e6f6 100644
--- a/test/com/jwetherell/algorithms/data_structures/test/MatrixTests.java
+++ b/test/com/jwetherell/algorithms/data_structures/test/MatrixTests.java
@@ -86,6 +86,10 @@ public void testMatrix() {
Matrix matrix9 = matrix7.multiply(matrix8);
assertTrue("Matrix multiplication error. matrix9="+matrix9+" result4"+result4, matrix9.equals(result4));
+
+ // improve coverage
+ // test hash code
+ assertNotNull(matrix1.hashCode());
}
@Test
diff --git a/test/com/jwetherell/algorithms/data_structures/test/PatriciaTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/PatriciaTreeTests.class
new file mode 100644
index 00000000..a1366587
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/PatriciaTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/QuadTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/QuadTreeTests.class
new file mode 100644
index 00000000..4a7ced8e
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/QuadTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/QueueTests.class b/test/com/jwetherell/algorithms/data_structures/test/QueueTests.class
new file mode 100644
index 00000000..94337be2
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/QueueTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/RadixTrieTests.class b/test/com/jwetherell/algorithms/data_structures/test/RadixTrieTests.class
new file mode 100644
index 00000000..af625cb0
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/RadixTrieTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/RedBlackTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/RedBlackTreeTests.class
new file mode 100644
index 00000000..db779c66
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/RedBlackTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/SegmentTreeTests$1.class b/test/com/jwetherell/algorithms/data_structures/test/SegmentTreeTests$1.class
new file mode 100644
index 00000000..3f24eb56
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/SegmentTreeTests$1.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/SegmentTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/SegmentTreeTests.class
new file mode 100644
index 00000000..80cfad2c
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/SegmentTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/SkipListMapTests.class b/test/com/jwetherell/algorithms/data_structures/test/SkipListMapTests.class
new file mode 100644
index 00000000..bc1b5c5f
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/SkipListMapTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/SkipListMapTests.java b/test/com/jwetherell/algorithms/data_structures/test/SkipListMapTests.java
index 8e7468e5..d2d3b5b2 100644
--- a/test/com/jwetherell/algorithms/data_structures/test/SkipListMapTests.java
+++ b/test/com/jwetherell/algorithms/data_structures/test/SkipListMapTests.java
@@ -24,6 +24,12 @@ public void testSkipListMap() {
data.unsorted, data.invalid));
assertTrue(JavaMapTest.testJavaMap(jMap, Integer.class, mapName,
data.unsorted, data.sorted, data.invalid));
+
+ // // improve coverage
+ // // to string test
+ assertNotNull(map.toString());
+ // // get test
+ assertNull(map.get("fake-key"));
}
}
diff --git a/test/com/jwetherell/algorithms/data_structures/test/SkipListTests.class b/test/com/jwetherell/algorithms/data_structures/test/SkipListTests.class
new file mode 100644
index 00000000..ea2b1625
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/SkipListTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/SplayTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/SplayTreeTests.class
new file mode 100644
index 00000000..20a04228
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/SplayTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/StackTests.class b/test/com/jwetherell/algorithms/data_structures/test/StackTests.class
new file mode 100644
index 00000000..8bf37a56
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/StackTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/SuffixArrayTest.class b/test/com/jwetherell/algorithms/data_structures/test/SuffixArrayTest.class
new file mode 100644
index 00000000..6a5fff4e
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/SuffixArrayTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/SuffixTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/SuffixTreeTests.class
new file mode 100644
index 00000000..501304f2
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/SuffixTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/SuffixTrieTests.class b/test/com/jwetherell/algorithms/data_structures/test/SuffixTrieTests.class
new file mode 100644
index 00000000..cebd8aba
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/SuffixTrieTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/TernarySearchTreeTests.class b/test/com/jwetherell/algorithms/data_structures/test/TernarySearchTreeTests.class
new file mode 100644
index 00000000..ae6cbe2f
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/TernarySearchTreeTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/TreapTests.class b/test/com/jwetherell/algorithms/data_structures/test/TreapTests.class
new file mode 100644
index 00000000..2cffc82e
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/TreapTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/TreeMapTests.class b/test/com/jwetherell/algorithms/data_structures/test/TreeMapTests.class
new file mode 100644
index 00000000..5fd99714
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/TreeMapTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/TrieMapTests.class b/test/com/jwetherell/algorithms/data_structures/test/TrieMapTests.class
new file mode 100644
index 00000000..9debda15
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/TrieMapTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/TrieTests.class b/test/com/jwetherell/algorithms/data_structures/test/TrieTests.class
new file mode 100644
index 00000000..ee6b4411
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/TrieTests.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/HeapTest.class b/test/com/jwetherell/algorithms/data_structures/test/common/HeapTest.class
new file mode 100644
index 00000000..e42a33ac
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/HeapTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/IteratorTest.class b/test/com/jwetherell/algorithms/data_structures/test/common/IteratorTest.class
new file mode 100644
index 00000000..664e1d05
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/IteratorTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/JavaCollectionTest.class b/test/com/jwetherell/algorithms/data_structures/test/common/JavaCollectionTest.class
new file mode 100644
index 00000000..3f3092af
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/JavaCollectionTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/JavaMapTest.class b/test/com/jwetherell/algorithms/data_structures/test/common/JavaMapTest.class
new file mode 100644
index 00000000..f6c9aec6
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/JavaMapTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/ListIteratorTest.class b/test/com/jwetherell/algorithms/data_structures/test/common/ListIteratorTest.class
new file mode 100644
index 00000000..acb2c1eb
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/ListIteratorTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/ListTest.class b/test/com/jwetherell/algorithms/data_structures/test/common/ListTest.class
new file mode 100644
index 00000000..bf86cd07
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/ListTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/MapTest.class b/test/com/jwetherell/algorithms/data_structures/test/common/MapTest.class
new file mode 100644
index 00000000..248fcc6e
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/MapTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/QueueTest.class b/test/com/jwetherell/algorithms/data_structures/test/common/QueueTest.class
new file mode 100644
index 00000000..752fddd4
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/QueueTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/SetTest.class b/test/com/jwetherell/algorithms/data_structures/test/common/SetTest.class
new file mode 100644
index 00000000..f5117451
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/SetTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/StackTest.class b/test/com/jwetherell/algorithms/data_structures/test/common/StackTest.class
new file mode 100644
index 00000000..343799b5
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/StackTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/SuffixTreeTest.class b/test/com/jwetherell/algorithms/data_structures/test/common/SuffixTreeTest.class
new file mode 100644
index 00000000..16de27d8
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/SuffixTreeTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/TreeTest.class b/test/com/jwetherell/algorithms/data_structures/test/common/TreeTest.class
new file mode 100644
index 00000000..9db4afb0
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/TreeTest.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/Utils$TestData.class b/test/com/jwetherell/algorithms/data_structures/test/common/Utils$TestData.class
new file mode 100644
index 00000000..f20d2398
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/Utils$TestData.class differ
diff --git a/test/com/jwetherell/algorithms/data_structures/test/common/Utils.class b/test/com/jwetherell/algorithms/data_structures/test/common/Utils.class
new file mode 100644
index 00000000..a3ef9cd2
Binary files /dev/null and b/test/com/jwetherell/algorithms/data_structures/test/common/Utils.class differ