use a hashtable