remove non-iterator version