update parameters
rename
add assert testing
add fully feedback