implemented the rest of csv modality