update a new copy method