add variadic_func