ranges and garbage collection