insert() rewriitten using reference argument