add keep arg to roll_fun