0 2 5 7 8 9 10 16 3 17 4 15 13 12 11 14 18 19 20 21 