Couldn't you return a pointer here instead of a copy?