why do we need this given there is `fun_args`?