removed report generation to its own program