adding graceful fail on non-existent properties