Take better advantage of copy elision