Refactor reporter to reduce memory usage