improve read_data module