1 4 7 5 0 20 18 22 2 19 3 13 8 16 6 21 9 10 11 12 14 15 17 23 25 26 27 24 28 29 