handle data with different fields in each row