- now handling null properties
 - simplification