don't consume subcollections

this is less a concern with preserving the input and more about
performance. all those shifts off the subcollections aren't necessary.