updated to support object properties