clean up
safe hasOwnProperty