update data generation