why do we have to create a copy of the set in the second method?