public void find(String type1, String type2) {
        int key1 = Math.abs(type1.hashCode() % size);
        int key2 = Math.abs(type2.hashCode() % size);
        DictNode list1 = null;
        DictNode list2 = null;
        
        if (typeTable[key1].size == 1) {
            list1 = typeTable[key1].head;
        } else {
            DictNode current = typeTable[key1].head;
            while (current != null) {
                if (current.entry.type().equals(type1)) {
                    list1 = current;
                }
                current = current.next;
            }
        }
        if (!type2.equals("none")) {
            if (typeTable[key2].size == 1) {
                list2 = typeTable[key2].head;
            } else {
                DictNode current = typeTable[key2].head;
                while (current != null) {
                    if (current.entry.type().equals(type2)) {
                        list2 = current;
                    }
                    current = current.next;
                }
            }
            
            printString(list1.entry, list2.entry);
            return;
        }
        printString(list1.entry, null);
    }