switched to hashtable from linked list