original:
(1) (2) (3) (4) (5)
changing:
(1 -> 2) (2 -> 3) (3 -> 4) (4 -> 5) (5 -> 6)
final:
(2) (3) (4) (5) (5)
var dump:
array(5) { [0]=> int(2) [1]=> int(3) [2]=> int(4) [3]=> int(5) [4]=> &int(5) }