finishing off missing funcitons