#7: generate CSV