NRVO will prevent from unnecessary copying