moved more variables into the new hashtable so that we can have multithreading