add support for nullable types