new support for the call safe function that validates the various keyword arguments