for report generation