first test pass: -1, 1, {}
2nd test pass: 0, 1, {1}
3rd test pass: 0, 1, {1,2}
4th test pass: 1, 2, {1,2,3}
5th & 6th tests pass: [0, 1, {1,2,3}] and [0, 1, {1,2,3,4}]
back a step, prepare for next test: 0, 1, {1,2,3}
7th test pass: 2, 3, {1,2,3}
reforing
8th & 9th tests pass: [4, 5, {1,2,3,4,5,6}] and [5, 6, {1,2,3,4,5,6}]
refactoring
fix a defect.