change some GList to GHashTable