removed null var_arg requirement