add assert
change parameters