updated data source and added abstract parser