change to workflow struct