add support for variant types when using deferred objects