add the implementation for hashtable