Library for working with ranges