proper with hasOwnProperty