updates to funcitons