it is a safe iteration, prevent applying properties from a prototype chain