once should not modify its argument