take arbitrary # of params to function