collection can be any kind of sequence