better performance if not every value is copied