using list is better for logging because deletion is O(1)