self 1 2 range 1 2 3 -> 1 2 3 4 5 self 1 2 range 1 2 3 -> 1 self 1 2 range 1 2 3 4 -> 1 2 self 1 2 range 1 2 -> 1 2 self 1 2 range 1 2 -> 1 2 self 1 2 range (empty) -> 1 2 self 1 2 range 1 -> 1 self 1 2 range 1 -> 1