implement file/report