varargs, func wrappers