hash table implementation done