Copy new values to the existing array so it will still be watched by the outer scope,
change the way to handle default auto parameter