prefer Ranges over KeyedContainer
Using Range over KeyedContainer allows inputs to (also) be of type SharedObjectsContainer -- this makes the code more generic, and invariant under future updates which will use SharedObjectsContainer in a few instances where currently a KeyedContainer is used.
requires Rec!3586 (merged)
Edited by Gerhard Raven