The With method forwards the call to WithFactory, supplying all values even if the caller to With omitted them.
The With method forwards the call to WithFactory, supplying all values even if the caller to With omitted them.