preventing unnesesary copy