diff --git a/src/cse332/datastructures/trees/BinarySearchTree.java b/src/cse332/datastructures/trees/BinarySearchTree.java
index e675f8ee38a9a732fb362d77b907e858879cd391..92fecb78b27804d4c6ab6e54abf6c966f8ded158 100644
--- a/src/cse332/datastructures/trees/BinarySearchTree.java
+++ b/src/cse332/datastructures/trees/BinarySearchTree.java
@@ -49,7 +49,7 @@ public class BinarySearchTree<K extends Comparable<K>, V>
         }
     }
 
-    private BSTNode find(K key, V value) {
+    protected BSTNode find(K key, V value) {
         BSTNode prev = null;
         BSTNode current = this.root;
 
@@ -89,6 +89,9 @@ public class BinarySearchTree<K extends Comparable<K>, V>
 
     @Override
     public V find(K key) {
+        if (key == null) {
+            throw new IllegalArgumentException();
+        }
         BSTNode result = find(key, null);
         if (result == null) {
             return null;
@@ -98,6 +101,9 @@ public class BinarySearchTree<K extends Comparable<K>, V>
 
     @Override
     public V insert(K key, V value) {
+        if (key == null || value == null) {
+            throw new IllegalArgumentException();
+        }
         BSTNode current = find(key, value);
         V oldValue = current.value;
         current.value = value;