Added Null parameter.
Refactoring to prepare for more value types.
Refactoring to prepare for more value types.