hashtable functional