Reworking objectDefineProperty