CAPE 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 5 4 0 0 0 0 0 1 3 0 0 0 0 0 1 6 4 1 0 0 0 1 4 2 0 0 0 0 0 0 0 1 2 5 3 1 0 0 0 0 0 3 6 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 1 0 0 0 0 0 0 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 3 3 2 2 2 1 1 2 3 5 8 10 12 13 13 13 14 14 15 16 16 17 18 20 25 30 35 38 41 45 49 52 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 4 2 0 0 0 0 0 0 1 3 4 4 1 0 0 0 0 0 0 3 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 2 2 1 0 0 1 2 4 6 9 11 12 13 13 14 14 14 15 15 16 16 18 21 26 30 35 37 41 44 47 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 4 0 0 0 0 0 0 0 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 3 1 0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 2 1 0 0 0 0 2 4 7 9 11 12 13 13 14 14 14 14 14 15 16 18 22 26 30 33 37 40 43 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 6 4 3 1 0 0 0 0 4 2 0 0 0 0 0 3 5 6 4 0 0 0 0 0 0 0 0 0 0 1 3 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 1 0 0 0 0 0 2 4 7 10 11 12 13 13 13 13 14 13 13 14 16 20 23 26 29 32 35 39 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 7 7 3 0 0 0 0 2 1 0 0 0 0 0 2 6 8 7 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 2 5 8 10 11 12 12 13 12 12 12 13 13 14 17 20 22 25 28 31 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 7 5 1 0 0 0 0 0 0 0 0 0 0 1 3 6 7 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 9 10 11 12 12 12 12 12 12 12 13 15 17 19 21 24 27 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 5 4 1 0 0 0 0 0 0 0 0 0 0 1 2 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 7 9 10 10 11 12 12 11 11 12 12 13 14 16 18 20 23 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 7 9 9 10 11 11 11 11 11 11 12 12 13 14 16 18 22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 6 7 8 10 10 11 10 10 11 11 12 12 12 14 15 17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 8 9 10 10 10 10 11 11 11 12 12 13 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 7 9 10 10 10 10 11 11 12 12 11 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 8 9 10 10 11 11 12 11 11 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 5 7 9 10 11 11 11 11 10 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 5 7 9 10 10 10 10 10 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 3 0 0 0 0 0 0 0 4 6 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 7 8 9 9 9 9 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 5 0 0 0 0 0 0 4 7 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 7 8 8 9 9 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 6 1 0 0 0 0 0 6 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 7 7 8 8 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 3 0 0 0 0 0 3 6 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 6 7 7 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 3 5 6 6 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 3 4 6 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 5 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 5 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 8 8 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 9 9 8 6 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 9 9 9 8 7 6 4 4 4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 9 9 9 8 8 7 7 7 7 7 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 6 8 9 9 8 7 6 6 7 8 9 9 6 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 8 10 9 4 0 0 0 0 0 0 0 0 0 0 0 0 1 6 8 8 8 8 6 5 5 6 7 8 9 9 9 8 6 5 5 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 8 10 10 6 0 0 0 0 0 0 0 0 0 0 0 0 0 5 7 8 11 16 6 1 2 4 6 7 8 9 10 10 10 9 8 7 6 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 7 9 10 10 6 0 0 0 0 0 0 0 0 0 0 0 0 5 7 12 17 18 3 0 0 1 4 5 6 7 8 10 12 11 10 9 7 6 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 10 10 9 6 1 0 0 0 0 0 0 0 0 0 0 5 8 13 21 20 12 4 0 0 1 3 5 6 6 7 10 12 11 10 8 6 5 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 8 9 10 8 5 2 0 0 0 0 0 0 0 0 1 6 9 14 22 21 15 6 0 0 0 0 2 4 5 6 7 10 11 10 8 6 6 5 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 8 8 8 8 6 3 0 0 0 0 0 0 0 6 8 10 14 22 20 11 3 0 0 0 0 0 2 3 4 5 8 10 11 9 7 6 5 5 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 5 6 8 8 7 4 4 4 4 5 5 6 8 10 11 13 19 15 5 0 0 0 0 0 0 0 1 1 1 5 9 11 10 8 7 6 5 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 8 9 9 8 8 7 7 7 8 9 10 10 9 7 4 1 0 0 0 0 0 0 0 0 0 0 4 8 10 10 8 7 6 6 5 2 0 0 0 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 5 0 0 0 2 6 9 10 10 10 9 8 8 8 8 8 8 7 5 1 0 0 0 0 0 0 0 0 0 0 0 3 7 10 10 8 7 7 6 5 4 2 0 1 4 3 2 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 2 1 0 0 0 0 0 0 3 6 0 0 0 0 2 6 8 10 10 10 10 8 7 7 6 6 6 4 2 0 0 0 0 0 0 0 0 0 0 0 2 7 9 10 9 8 7 6 6 5 2 0 0 4 4 3 3 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 7 7 2 0 0 0 0 0 2 6 6 0 0 0 5 10 0 4 6 8 9 10 9 7 7 6 6 6 5 2 0 0 0 0 0 0 0 0 0 0 0 2 6 9 9 9 8 7 6 6 5 4 2 0 3 3 3 3 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 7 8 5 3 4 5 6 2 3 7 7 1 0 0 5 15 12 3 0 2 5 7 8 8 8 8 8 7 6 3 0 0 0 0 0 0 0 0 0 0 0 2 6 8 9 9 8 7 6 6 5 4 3 0 2 3 4 4 3 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 16 19 20 18 17 17 18 10 6 7 7 1 0 0 5 16 16 12 5 0 0 0 6 9 10 9 9 8 6 4 1 0 0 0 0 0 0 0 0 0 0 1 6 9 9 9 8 7 6 5 5 4 4 3 1 2 4 4 4 3 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 15 20 21 20 19 18 18 19 16 10 7 3 1 0 4 16 17 16 8 0 0 0 3 7 9 10 10 9 7 5 2 0 0 0 0 0 0 0 0 0 0 1 6 9 10 9 8 7 6 5 5 4 4 3 1 2 3 4 4 4 3 2 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 13 19 22 22 21 19 18 19 20 19 10 9 4 0 3 17 18 17 12 5 0 0 1 3 6 10 11 10 7 4 0 0 0 0 2 3 0 0 0 0 0 0 5 9 10 10 8 7 6 5 5 4 4 4 1 1 3 4 4 4 4 3 2 1 1 2 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11 18 21 22 22 20 19 19 20 21 21 20 11 3 6 18 20 19 16 10 0 0 0 1 2 7 10 10 8 4 0 0 0 0 3 8 0 0 0 0 0 0 4 8 11 12 9 8 6 5 5 4 4 4 3 2 2 4 4 5 4 4 3 2 3 3 4 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 16 20 21 21 20 18 17 16 17 18 18 19 19 19 20 21 21 19 14 5 1 0 0 0 2 7 9 9 6 0 0 0 0 3 10 4 1 0 0 0 0 2 7 11 13 11 8 7 6 5 5 4 4 4 3 2 4 5 5 5 4 4 3 3 4 4 4 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 15 18 20 19 18 16 12 6 5 4 4 3 5 16 18 20 22 21 18 13 6 2 0 0 0 2 6 9 7 0 0 0 0 3 12 11 4 0 0 0 0 1 5 12 19 12 9 7 6 6 5 5 5 4 4 4 4 5 5 6 5 4 4 4 5 5 5 4 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 14 18 19 18 16 13 8 0 0 0 0 0 0 3 2 11 20 21 19 16 13 7 0 0 0 0 3 7 8 1 0 0 0 2 11 13 6 1 0 0 0 0 3 10 22 14 10 8 7 6 6 5 5 5 5 4 5 5 6 6 6 5 5 5 5 6 6 5 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 9 9 9 5 3 3 3 1 0 0 0 0 0 0 0 0 0 0 7 12 15 17 19 17 15 12 8 0 0 0 0 0 0 0 0 2 3 4 16 16 15 10 2 0 0 0 1 4 7 1 0 0 0 1 9 13 11 6 0 0 0 0 1 6 20 19 13 9 7 6 6 6 5 5 5 5 5 6 6 7 6 5 5 5 6 7 6 6 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 9 11 12 12 12 12 11 4 1 0 0 0 0 0 0 0 0 6 11 14 16 17 18 17 15 13 9 2 1 0 0 0 0 0 0 0 0 0 3 2 8 14 12 1 0 0 0 1 4 1 0 0 0 0 2 10 13 9 0 0 0 0 0 2 17 23 20 13 8 7 7 6 6 6 6 6 6 7 7 7 7 6 6 6 7 8 7 6 6 5 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 9 7 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 8 11 13 14 14 13 12 6 2 0 0 0 0 0 0 0 9 14 17 18 18 18 17 15 13 11 9 2 0 0 0 0 0 0 0 0 0 0 0 1 5 12 2 0 0 0 0 0 0 0 0 0 0 0 8 13 11 0 0 0 0 0 1 12 21 24 21 14 12 8 7 6 6 6 7 7 8 8 8 7 7 6 7 8 8 8 7 6 6 5 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 10 11 11 4 1 1 0 0 0 0 0 0 0 0 0 0 0 0 2 3 6 10 12 13 13 12 8 0 0 0 0 0 0 0 9 15 18 20 20 19 18 16 13 9 2 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 0 0 0 0 0 0 0 0 0 0 0 0 3 8 13 7 2 0 0 0 0 6 15 23 25 23 19 14 10 7 7 7 11 10 8 8 8 8 7 7 8 9 9 9 8 7 6 6 6 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 12 13 12 11 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 3 7 9 10 8 0 0 0 0 0 0 0 8 14 19 22 22 21 20 17 14 10 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 13 11 3 0 0 0 0 1 8 17 22 25 23 21 16 12 11 12 15 15 15 15 10 8 8 8 9 11 10 9 8 8 7 7 7 6 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 11 14 14 12 9 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 0 0 0 0 0 0 0 6 13 18 22 23 23 22 20 16 11 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 8 12 4 0 0 0 0 0 4 10 14 17 21 23 22 20 18 17 18 18 19 20 17 16 17 17 18 20 14 11 9 8 8 8 7 7 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 9 10 4 2 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 11 15 20 22 23 23 22 19 14 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 7 2 0 0 0 0 3 7 9 10 12 17 23 25 22 20 19 19 20 22 22 22 21 21 22 23 22 17 10 9 9 9 8 7 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 4 0 0 0 0 0 0 0 5 7 7 6 5 1 0 0 0 0 0 0 0 0 0 0 0 0 3 10 9 2 4 9 12 16 19 21 23 23 22 17 12 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 10 6 0 0 0 0 2 6 7 7 7 9 14 22 25 23 21 20 21 23 24 24 24 25 26 26 25 23 19 11 10 10 9 8 7 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 7 9 10 9 7 2 0 0 0 0 0 0 0 0 0 0 0 0 2 5 12 9 7 8 9 13 16 18 20 22 22 19 15 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 7 0 0 0 0 2 5 6 5 3 3 6 11 18 23 24 22 22 23 25 26 27 28 29 29 28 26 24 22 22 16 10 9 7 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 6 10 11 10 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 9 11 9 8 7 9 12 14 17 18 20 19 16 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 6 5 2 0 1 4 9 14 20 24 24 24 26 28 30 32 32 32 31 29 28 27 26 24 19 9 8 7 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 8 11 9 4 0 0 0 0 0 0 0 0 0 0 0 0 0 4 8 10 9 6 7 9 11 13 14 16 16 15 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 6 6 3 0 0 1 4 8 12 17 24 26 28 30 33 35 36 36 35 33 32 31 30 28 24 19 11 7 4 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 7 9 7 3 0 0 0 0 0 0 0 0 0 0 0 0 0 5 10 10 7 6 7 8 9 9 10 11 11 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 6 4 0 0 0 1 3 6 10 16 23 30 34 37 39 40 41 40 38 36 35 33 30 26 23 18 13 8 7 7 7 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 8 5 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 11 8 7 6 7 7 5 4 3 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 7 4 0 0 0 0 1 3 5 9 15 24 33 40 43 45 46 46 45 42 40 37 33 29 25 22 20 16 10 9 8 7 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 11 10 7 6 6 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 6 5 0 0 0 0 0 0 2 5 9 15 23 33 38 42 47 52 53 50 46 41 36 32 28 26 24 21 11 11 10 9 7 6 2 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 2 9 10 9 7 6 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 0 0 0 0 0 0 0 2 5 8 13 20 25 29 35 43 52 54 49 42 37 34 32 30 28 25 19 14 11 10 8 7 6 6 6 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 1 7 11 10 8 6 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 1 0 0 0 0 0 0 0 1 4 8 12 15 18 22 29 41 46 43 35 31 33 34 34 32 30 26 18 12 11 10 8 7 6 6 6 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 6 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 2 9 11 9 6 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 0 0 0 0 0 0 0 0 0 0 6 9 11 12 14 20 30 36 36 29 24 26 29 33 36 35 31 23 17 12 11 10 8 8 8 8 7 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 11 11 7 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 8 11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 7 9 11 12 15 22 29 30 26 22 21 22 26 31 37 36 32 24 14 12 11 10 9 9 9 8 6 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 9 12 10 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 13 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 6 8 9 10 13 18 24 25 21 20 19 19 20 23 29 35 36 30 18 14 13 12 11 11 11 10 8 6 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 10 12 8 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 13 14 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 7 8 9 11 16 20 20 15 16 17 17 17 18 21 26 32 35 31 19 14 14 13 14 13 12 10 8 7 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 10 10 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 13 13 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 7 8 10 14 18 17 11 11 12 14 14 15 16 18 22 28 32 23 17 16 15 16 15 14 12 9 8 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 9 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 14 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 6 7 10 13 17 17 10 7 6 8 11 12 12 13 15 18 23 21 20 19 17 17 17 16 13 10 8 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 8 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 11 14 10 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 6 9 13 17 18 11 4 0 1 6 8 8 6 6 6 10 13 17 21 20 19 18 17 14 11 9 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 14 16 9 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 8 12 18 19 12 5 0 0 0 4 3 0 0 0 2 6 12 17 22 21 20 17 15 11 9 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 12 16 15 9 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 12 18 19 14 6 0 0 0 0 0 0 0 0 0 3 7 12 17 21 22 18 15 11 9 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 9 14 15 14 10 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 12 17 19 15 7 0 0 0 0 0 0 0 0 0 1 5 8 12 18 21 20 15 11 8 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 10 14 16 15 12 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 11 17 18 15 8 0 0 0 0 0 0 0 0 0 1 3 5 8 13 18 21 16 12 8 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 11 15 17 16 12 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 9 16 18 14 8 0 0 0 0 0 0 0 0 0 0 0 4 6 10 14 20 17 12 8 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 9 12 16 18 15 11 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 8 15 17 14 8 1 0 0 0 0 0 0 0 0 0 0 2 5 8 11 17 17 13 8 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 10 13 18 17 14 8 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 14 16 12 7 1 0 0 0 0 0 0 0 0 0 0 2 4 6 9 14 16 13 9 6 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 11 14 17 16 12 7 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 13 15 10 1 0 0 0 0 0 0 0 0 0 0 0 0 2 5 8 13 17 16 9 6 6 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 8 12 16 17 14 9 2 0 0 0 2 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 12 15 10 1 0 0 0 0 0 0 0 0 0 0 0 0 1 5 8 19 27 23 11 7 6 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 7 10 14 16 16 11 3 0 0 1 8 9 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 11 14 10 2 0 0 0 0 0 0 0 0 0 0 0 0 1 4 7 19 28 27 12 8 7 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 9 12 16 17 13 4 0 0 1 7 9 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 10 14 10 2 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 17 26 29 22 12 8 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 8 11 14 17 14 8 3 0 0 1 6 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 13 10 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 14 24 26 23 14 10 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 8 10 13 16 15 11 5 0 0 0 5 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 11 10 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 10 19 21 19 13 10 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 7 10 12 15 15 13 7 0 0 0 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 10 10 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 7 15 16 10 8 8 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 7 9 11 14 15 13 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 8 9 4 0 0 0 0 0 0 0 0 2 3 2 0 0 0 6 12 12 10 3 2 4 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 4 8 10 11 13 14 14 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 1 0 0 0 0 0 0 0 0 3 5 5 3 1 0 5 12 11 2 0 0 1 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 1 0 0 3 8 10 11 12 13 13 10 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 7 5 1 0 4 12 11 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 4 1 1 3 7 11 12 12 12 13 11 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 7 6 3 1 3 11 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 5 3 2 3 6 10 12 13 12 12 11 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 7 10 7 3 1 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 5 4 3 3 6 10 12 13 12 11 10 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 7 15 13 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 5 5 4 5 8 12 13 12 11 9 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 16 19 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 6 6 5 4 7 10 12 12 10 8 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 15 20 15 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 7 6 4 5 8 11 12 10 7 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 13 21 20 13 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 6 6 4 4 6 9 11 10 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 9 20 22 16 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 6 4 4 5 8 10 9 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 2 0 0 0 0 0 0 0 0 0 0 5 14 23 18 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 4 3 3 6 9 8 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 4 0 0 0 0 0 0 0 0 0 0 2 8 22 20 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 4 7 7 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 4 0 0 0 0 0 0 0 0 0 0 1 6 21 21 11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 5 0 0 0 0 0 0 0 0 0 0 1 4 19 21 13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 5 0 0 0 0 0 0 0 0 0 0 0 3 17 21 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 5 1 0 0 0 0 0 0 0 0 0 0 0 13 21 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 2 0 0 0 0 0 0 0 0 0 0 11 20 17 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 6 2 0 0 0 0 0 0 0 0 0 0 5 13 18 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 3 0 0 0 0 0 0 0 0 0 0 1 4 7 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Wind_Speed nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 25 25 25 25 25 25 25 25 25 24 24 23 23 22 22 21 21 21 21 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 25 25 25 25 25 25 25 25 25 24 24 23 23 22 21 21 21 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 25 25 25 25 25 25 25 25 24 24 23 23 22 21 21 20 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 25 25 25 25 25 25 24 24 23 22 22 21 20 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 25 25 25 25 25 25 24 24 23 22 21 21 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 26 25 25 25 25 25 25 24 23 23 22 21 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 26 26 26 25 25 25 25 25 24 24 23 22 21 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 26 25 25 25 25 25 24 23 23 22 21 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 26 26 25 25 25 24 24 23 22 22 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 26 25 25 25 24 24 23 23 22 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 25 25 25 24 24 23 23 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 24 24 23 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 nan nan nan nan nan nan nan nan nan 27 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 28 29 29 nan nan nan nan nan nan nan nan nan nan 27 26 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 28 29 29 29 nan nan nan nan nan nan nan nan nan 28 27 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 28 28 29 29 nan nan nan nan nan nan nan nan nan nan 27 26 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 28 29 29 29 nan nan nan nan nan nan nan nan nan nan nan 27 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 28 28 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 28 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 30 30 30 30 30 30 30 nan nan nan nan nan nan nan 30 29 28 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 31 30 30 30 30 31 31 30 nan nan nan nan nan nan 30 30 29 nan nan nan nan nan nan nan 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 31 31 30 30 30 31 31 31 30 nan nan nan nan nan 30 30 29 28 nan nan nan nan nan nan nan 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 31 31 31 31 31 31 31 31 31 30 30 30 nan nan 30 30 29 29 28 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 31 31 31 31 31 31 31 31 30 30 30 30 31 30 30 29 29 28 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 nan nan nan nan nan nan nan nan 27 27 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 31 31 31 31 31 31 nan nan nan nan nan nan 30 30 30 29 29 28 28 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 24 nan nan nan nan nan nan nan 26 28 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 31 31 31 31 31 nan nan nan nan nan nan nan nan nan 29 29 29 28 28 28 nan nan nan nan nan nan nan nan nan nan nan nan nan 25 24 nan nan nan nan nan nan nan 25 28 27 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 31 31 31 31 31 31 nan nan nan nan nan nan nan nan nan nan nan nan 28 28 28 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 24 nan nan nan nan nan nan nan 27 27 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 31 31 31 31 31 nan nan nan nan nan nan nan nan nan nan nan 31 31 31 31 31 31 31 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 27 nan nan nan nan nan nan nan nan nan nan nan nan 25 24 nan nan nan nan nan nan nan 25 26 27 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 32 32 31 31 31 31 nan nan nan nan nan nan nan nan nan nan 31 31 31 31 31 31 31 31 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 nan nan nan nan nan nan nan nan nan nan nan nan nan 24 24 nan nan nan nan nan nan 23 25 26 27 26 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 32 32 32 32 32 nan nan nan nan nan nan nan nan nan 31 31 31 31 31 30 31 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 nan nan nan nan nan nan nan 23 25 27 27 26 26 nan nan nan nan 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 29 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 32 nan nan nan nan nan nan nan nan nan 31 31 31 31 31 31 31 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 23 nan nan nan nan nan nan nan 23 25 27 27 27 26 26 25 25 24 24 24 24 nan nan nan nan nan 23 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 29 29 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 31 31 31 31 31 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 nan nan nan nan nan nan nan 21 22 25 27 27 27 26 25 25 25 24 24 24 23 23 22 22 22 23 24 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 31 31 31 31 31 31 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 23 26 27 27 26 25 25 24 24 24 23 23 22 22 22 23 24 25 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 nan nan nan nan 31 31 31 31 31 30 30 30 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 27 26 26 25 24 24 24 23 23 22 22 22 23 24 25 26 26 26 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 nan nan nan nan 30 31 31 31 31 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 26 26 26 25 24 23 23 23 22 22 22 23 24 25 26 26 26 26 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 nan nan nan nan 30 30 30 30 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 25 26 24 24 23 23 22 22 23 24 25 25 25 25 26 26 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 nan nan nan nan 30 30 30 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 24 25 24 23 23 22 22 23 24 25 25 25 25 26 26 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 nan nan nan nan nan nan 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 23 24 23 22 22 23 24 25 25 25 25 26 26 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 20 25 23 23 23 24 25 25 25 25 26 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 17 23 24 24 24 25 25 25 26 26 27 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 15 13 12 15 26 26 26 27 27 27 27 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 14 14 13 12 18 23 26 26 26 27 26 26 27 26 26 26 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 13 12 14 18 22 24 23 23 24 24 25 26 26 26 26 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 13 12 12 14 19 22 23 22 21 20 20 24 25 26 26 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 12 11 13 17 22 22 22 21 19 18 17 22 25 26 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 11 11 16 21 22 22 21 20 18 17 16 18 25 26 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 10 10 15 20 22 22 22 21 20 18 16 15 16 24 26 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 8 12 19 nan nan nan 22 21 19 17 15 14 15 21 26 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 5 4 16 nan nan nan nan nan nan nan nan nan 14 14 17 27 27 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 5 5 14 nan nan nan nan nan nan nan nan nan nan nan 13 15 25 27 27 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 20 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 5 8 15 nan nan nan nan nan nan nan nan nan nan nan nan 13 15 21 27 27 27 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 20 20 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 6 11 17 nan nan nan nan nan nan nan nan nan nan nan nan nan 13 17 27 26 27 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 18 19 20 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 7 12 18 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 18 26 26 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 18 19 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 12 18 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 26 27 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 18 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 12 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 22 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 18 18 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 13 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 16 22 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 17 18 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 14 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 18 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 18 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 15 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 18 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 16 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 13 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 13 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 18 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 11 17 25 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 18 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 12 14 19 22 24 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 14 17 nan nan 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 18 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 18 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 18 18 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 18 18 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 18 18 18 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 18 18 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 18 18 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 22 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 18 19 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 21 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 19 25 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 24 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 24 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 23 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 23 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan Wind_Direction nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 43 44 45 47 48 49 49 49 49 50 52 54 57 59 62 65 68 69 69 70 71 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 42 43 45 47 48 48 48 48 48 50 52 54 58 61 64 67 69 70 70 71 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 42 43 45 46 46 46 46 47 48 50 52 55 58 62 66 68 70 72 72 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 42 43 44 45 45 45 45 46 48 50 53 56 60 64 68 70 72 73 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 42 43 43 43 43 44 45 46 47 50 53 57 62 66 69 72 74 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 41 41 41 41 42 43 43 44 45 47 51 55 59 64 68 71 74 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 40 40 40 41 41 42 43 44 46 49 53 57 61 66 70 73 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 39 40 41 41 43 44 47 51 55 59 63 67 71 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 39 40 40 41 43 46 49 53 57 61 64 68 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 38 39 40 42 45 48 51 55 58 61 65 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 38 41 43 46 49 53 55 58 61 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 42 45 48 50 52 54 57 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 40 43 46 48 49 50 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 43 45 46 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 35 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 34 28 nan nan nan nan nan nan nan nan nan 37 46 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 40 35 28 nan nan nan nan nan nan nan nan nan nan 37 46 52 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 42 37 28 18 nan nan nan nan nan nan nan nan nan 23 39 48 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 42 37 27 16 nan nan nan nan nan nan nan nan nan nan 28 42 51 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 45 42 35 25 15 nan nan nan nan nan nan nan nan nan nan nan 35 48 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 42 38 30 20 nan nan nan nan nan nan nan nan nan nan nan nan nan 44 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 37 34 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 40 49 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 46 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 6 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 32 35 38 39 39 38 36 34 nan nan nan nan nan nan nan 11 7 4 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 28 31 34 37 38 37 35 33 32 nan nan nan nan nan nan 13 10 5 nan nan nan nan nan nan nan 20 18 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 27 30 33 36 36 34 32 31 31 nan nan nan nan nan 15 11 7 3 nan nan nan nan nan nan nan 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 43 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 23 24 28 32 33 32 30 29 28 28 27 25 nan nan 16 13 9 5 2 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 42 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 20 22 26 28 29 28 26 25 24 23 22 21 19 16 13 10 7 3 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 349 nan nan nan nan nan nan nan nan 21 41 48 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 18 17 20 23 25 24 nan nan nan nan nan nan 16 14 12 9 7 4 2 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 350 347 nan nan nan nan nan nan nan 12 36 47 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 18 15 16 19 21 nan nan nan nan nan nan nan nan nan 9 8 6 4 2 0 nan nan nan nan nan nan nan nan nan nan nan nan nan 351 348 nan nan nan nan nan nan nan 2 27 44 49 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 23 19 14 14 16 18 nan nan nan nan nan nan nan nan nan nan nan nan 3 2 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 349 346 nan nan nan nan nan nan nan 12 37 46 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 33 35 36 37 37 37 nan nan nan nan nan nan nan nan nan nan nan 29 28 25 20 15 13 13 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 359 359 nan nan nan nan nan nan nan nan nan nan nan nan 350 347 nan nan nan nan nan nan nan 356 24 40 48 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 32 33 35 35 34 nan nan nan nan nan nan nan nan nan nan 30 29 27 22 17 13 12 13 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 359 nan nan nan nan nan nan nan nan nan nan nan nan nan 348 346 nan nan nan nan nan nan 345 7 28 43 48 48 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 39 41 41 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 27 28 30 30 30 nan nan nan nan nan nan nan nan nan 29 29 27 24 19 15 12 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 347 nan nan nan nan nan nan nan 349 9 30 42 46 47 nan nan nan nan 56 57 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 39 40 40 39 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 nan nan nan nan nan nan nan nan nan 27 27 26 24 20 16 13 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 347 346 nan nan nan nan nan nan nan 350 5 28 37 43 47 49 51 53 55 56 57 58 nan nan nan nan nan 63 58 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 39 40 39 38 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 24 24 24 21 18 14 11 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 346 nan nan nan nan nan nan nan 340 346 358 17 30 40 47 51 53 55 56 56 57 59 62 65 67 68 65 59 52 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 20 21 22 21 19 16 12 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 344 352 6 22 38 47 52 55 56 56 57 59 62 65 68 69 65 59 53 48 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 nan nan nan nan 16 17 19 19 18 16 13 11 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 357 13 35 47 54 56 57 58 60 62 65 68 68 64 58 52 49 48 47 45 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 nan nan nan nan 14 15 16 16 16 13 11 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 351 8 29 47 55 58 59 61 63 65 67 66 62 57 52 49 49 48 45 41 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 nan nan nan nan 13 14 14 14 13 11 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 2 21 46 57 60 62 63 65 66 64 59 54 51 50 50 48 45 41 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 nan nan nan nan 13 13 13 12 11 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 355 11 42 55 62 64 65 65 61 57 52 49 50 50 48 45 39 35 33 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 nan nan nan nan nan nan 11 10 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 3 32 53 63 65 64 60 55 51 49 50 50 48 44 38 34 33 33 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 355 21 51 61 63 59 54 51 49 50 49 47 42 36 33 33 34 35 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 344 8 42 53 56 52 50 49 47 45 42 38 34 33 34 35 36 37 36 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 329 358 2 354 6 39 42 39 34 29 26 27 31 35 37 39 38 37 35 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 322 318 316 322 349 355 5 8 4 2 9 19 29 37 41 40 38 36 32 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 317 314 311 307 320 338 348 351 348 346 350 6 27 39 42 41 37 33 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 351 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 315 312 308 304 319 335 344 344 341 337 336 341 21 34 39 39 35 30 25 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 349 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 312 308 303 311 327 341 342 340 337 332 329 330 3 24 36 36 31 27 24 22 21 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 344 348 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 308 302 307 323 339 341 341 339 335 329 324 327 344 8 33 32 29 26 24 25 26 28 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 344 346 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 307 301 302 319 337 341 341 341 338 333 327 322 322 331 1 24 30 28 25 26 28 31 33 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 342 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 296 293 311 337 nan nan nan 341 337 331 324 318 315 326 2 20 30 27 26 28 32 34 33 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 337 341 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 294 270 265 338 nan nan nan nan nan nan nan nan nan 313 326 358 23 29 27 27 30 32 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 336 340 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 295 266 265 334 nan nan nan nan nan nan nan nan nan nan nan 322 348 26 28 27 26 26 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 333 335 339 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 299 269 296 330 nan nan nan nan nan nan nan nan nan nan nan nan 310 346 20 29 25 17 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 331 334 337 339 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 302 276 309 330 nan nan nan nan nan nan nan nan nan nan nan nan nan 311 6 25 26 13 0 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 330 331 333 336 337 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 304 284 314 330 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 338 11 28 14 359 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 329 330 332 335 336 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 289 316 330 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 332 25 16 1 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 327 327 330 333 335 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 293 318 333 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 316 6 14 5 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 327 328 330 333 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 297 319 335 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 325 7 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 328 328 329 331 334 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 301 320 337 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 305 7 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 328 328 330 333 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 306 323 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 300 7 19 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 327 327 329 333 336 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 311 327 349 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 297 3 22 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 326 328 331 335 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 330 352 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 298 348 13 15 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 325 326 329 333 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 332 352 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 301 320 346 2 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 325 325 327 332 336 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 330 348 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 305 307 315 339 349 358 4 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 326 327 331 334 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 309 315 322 nan nan 352 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 326 327 330 333 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 313 313 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 326 327 330 333 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 318 318 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 327 326 327 329 332 335 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 322 322 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 328 327 328 330 332 334 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 326 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 328 327 328 329 331 334 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 328 328 329 331 333 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 327 337 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 328 328 329 331 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 327 340 345 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 329 329 330 332 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 324 339 351 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 330 331 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 321 336 355 349 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 332 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 333 358 353 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 333 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 329 357 356 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 353 357 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 347 355 355 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 341 352 355 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 338 349 354 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 337 346 352 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 337 344 349 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 343 347 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan Helicity -3 -4 -6 -6 -6 -8 -12 -7 2 7 10 10 9 8 7 5 3 1 0 2 4 3 -2 -8 -11 -11 -8 -6 -5 -7 -8 -8 -7 -5 -4 -6 -8 -11 -13 -14 -13 -11 -9 -6 -3 -1 1 1 2 2 2 1 1 1 3 5 6 7 4 -1 -7 -11 -13 -12 -11 -10 -10 -10 -10 -11 -16 -21 -26 -30 -32 -35 -37 -40 -42 -43 -45 -47 -53 -59 -62 -63 -62 -59 -55 -50 -45 -44 -44 -46 -48 -45 -40 -36 -33 -32 -32 -34 -36 -38 -39 -38 -37 -36 -36 -36 -34 -32 -31 -33 -34 -34 -31 -28 -28 -30 -30 -29 -25 -21 -19 -18 -18 -18 -18 -17 -14 -13 -14 -17 -19 -20 -18 -15 -12 -9 -5 -2 -3 -7 -13 -16 -14 -7 -2 -4 -9 -13 -12 -7 -5 -6 -6 -6 -5 -6 -9 -9 -8 -6 -5 -6 -8 -10 -11 -11 -9 -7 -2 -1 -5 -11 -16 -14 -6 2 6 5 -3 -12 -16 -15 -13 -11 -8 -4 3 7 6 -1 -11 -15 -14 -10 -5 -0 3 1 -5 -9 -10 -7 -4 -3 -4 -6 -8 -8 -8 -6 -3 -3 -4 -6 -7 -7 -6 -5 -5 -4 -4 -4 -5 -6 -6 -6 -6 -6 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -8 -8 -7 -7 -6 -6 -6 -7 -7 -7 -6 -6 -6 -7 -8 -8 -8 -7 -6 -6 -7 -7 -7 -6 -5 -4 -4 -5 -5 -4 -4 -3 -3 -2 -2 -2 -1 -1 -0 0 0 0 0 0 1 1 1 1 0 0 1 1 2 2 2 2 2 1 1 1 1 2 2 3 3 3 2 2 1 1 2 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 5 5 4 4 3 1 -0 -1 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -15 -16 -17 -18 -19 -2 7 11 11 10 8 6 5 5 6 6 4 -0 -5 -8 -10 -11 -11 -12 -11 -10 -9 -8 -7 -7 -7 -8 -9 -10 -10 -10 -10 -11 -12 -14 -16 -17 -19 -20 -20 -20 -20 -20 -20 -20 1 -0 -1 -2 -2 -1 1 4 6 9 10 11 12 12 12 11 9 6 4 3 3 1 -5 -11 -14 -15 -13 -10 -10 -12 -14 -14 -13 -11 -9 -9 -10 -10 -10 -10 -10 -10 -9 -6 -3 -1 1 2 3 3 2 1 -0 0 2 4 6 5 3 -1 -5 -8 -10 -11 -11 -11 -11 -10 -10 -11 -15 -21 -25 -29 -32 -35 -37 -40 -43 -45 -47 -51 -57 -63 -66 -66 -64 -61 -59 -53 -47 -44 -47 -50 -51 -47 -40 -34 -32 -32 -33 -35 -36 -37 -37 -36 -36 -36 -35 -34 -33 -31 -32 -34 -35 -33 -30 -28 -30 -32 -32 -30 -26 -22 -19 -18 -18 -19 -18 -16 -14 -14 -16 -18 -20 -19 -16 -14 -12 -9 -5 -2 -4 -9 -15 -16 -11 -3 -2 -7 -12 -13 -9 -5 -5 -7 -8 -8 -7 -7 -8 -7 -6 -6 -8 -10 -9 -8 -7 -6 -5 -6 -6 -6 -9 -13 -14 -10 -3 3 3 -2 -10 -16 -16 -14 -11 -8 -5 -1 4 6 2 -6 -12 -13 -9 -4 1 2 -0 -6 -9 -9 -6 -4 -4 -5 -7 -7 -7 -7 -7 -5 -3 -4 -5 -7 -8 -6 -5 -5 -4 -4 -5 -6 -6 -6 -6 -6 -6 -7 -7 -7 -7 -8 -8 -7 -7 -7 -7 -8 -8 -8 -8 -7 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -8 -7 -6 -6 -6 -7 -7 -7 -6 -5 -4 -4 -5 -5 -5 -5 -4 -3 -2 -2 -2 -2 -1 -1 -0 -0 -0 -0 -0 0 1 1 1 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 2 2 2 3 3 3 3 3 3 3 4 4 4 4 5 5 5 4 4 4 4 4 3 3 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 5 5 4 4 3 1 -0 -1 -3 -4 -5 -6 -7 -7 -8 -9 -10 -12 -13 -15 -16 -17 -19 -13 -0 9 12 13 12 10 8 8 9 9 8 5 -0 -4 -7 -9 -11 -11 -11 -10 -9 -8 -7 -6 -6 -7 -8 -9 -9 -9 -9 -10 -11 -12 -14 -16 -18 -19 -20 -20 -20 -20 -20 -20 2 1 1 1 1 2 4 5 7 8 8 7 8 10 12 14 14 12 10 7 4 0 -6 -12 -16 -18 -17 -15 -13 -14 -16 -17 -17 -16 -14 -14 -13 -12 -10 -9 -10 -11 -10 -8 -5 -2 0 3 4 4 3 2 0 0 2 3 4 3 1 -0 -1 -3 -5 -7 -9 -12 -13 -13 -14 -16 -18 -21 -25 -29 -33 -36 -37 -39 -41 -44 -47 -52 -60 -65 -67 -67 -65 -64 -63 -55 -47 -44 -48 -53 -54 -48 -40 -34 -32 -33 -34 -35 -35 -35 -35 -35 -35 -35 -34 -33 -31 -31 -33 -34 -34 -32 -29 -29 -31 -33 -33 -30 -27 -23 -21 -20 -20 -19 -18 -16 -14 -15 -17 -19 -19 -17 -14 -14 -13 -10 -5 -2 -5 -11 -16 -14 -8 -2 -4 -10 -13 -12 -7 -4 -6 -8 -9 -9 -8 -7 -6 -5 -5 -7 -10 -11 -9 -6 -3 -3 -5 -8 -11 -11 -11 -11 -10 -8 -4 -2 -3 -6 -12 -14 -12 -10 -8 -6 -4 0 4 3 -2 -8 -12 -9 -3 1 2 -1 -7 -10 -9 -5 -3 -3 -6 -8 -7 -6 -6 -7 -6 -5 -4 -5 -7 -8 -8 -6 -5 -5 -5 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -8 -8 -8 -8 -8 -7 -7 -8 -8 -9 -9 -8 -7 -6 -6 -7 -7 -7 -7 -7 -8 -8 -8 -7 -6 -5 -6 -7 -8 -7 -7 -5 -5 -5 -5 -5 -5 -5 -5 -4 -3 -2 -2 -2 -2 -2 -1 -1 -1 -1 -1 -0 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 2 2 2 3 3 3 3 3 3 3 3 3 4 4 5 6 6 5 5 5 5 4 4 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 4 3 2 1 -0 -1 -2 -4 -5 -5 -6 -7 -8 -9 -10 -12 -13 -15 -16 -17 -18 -10 2 10 13 14 13 12 11 12 13 12 9 5 1 -3 -6 -8 -10 -11 -10 -9 -8 -6 -6 -6 -6 -7 -8 -9 -9 -9 -9 -10 -11 -12 -15 -17 -18 -20 -20 -21 -21 -20 -20 2 2 2 2 2 3 5 6 6 6 5 5 6 8 11 14 16 16 14 11 8 4 -2 -9 -14 -17 -18 -17 -15 -15 -16 -18 -18 -18 -17 -16 -15 -13 -11 -10 -11 -11 -11 -9 -7 -4 0 3 5 5 4 4 3 2 2 3 3 2 1 1 1 1 -0 -2 -5 -9 -14 -19 -23 -25 -26 -26 -28 -32 -35 -37 -37 -37 -38 -40 -44 -49 -56 -61 -64 -65 -65 -65 -62 -53 -44 -42 -47 -54 -54 -47 -40 -35 -33 -34 -34 -34 -33 -33 -33 -33 -34 -34 -33 -32 -31 -31 -33 -34 -33 -30 -29 -31 -33 -33 -32 -30 -28 -25 -23 -22 -21 -20 -17 -14 -14 -15 -18 -19 -17 -14 -14 -15 -14 -10 -5 -2 -7 -14 -15 -11 -4 -2 -7 -12 -13 -10 -6 -5 -7 -8 -8 -8 -9 -8 -6 -4 -5 -8 -10 -10 -8 -5 -3 -3 -6 -10 -13 -13 -12 -9 -7 -6 -6 -6 -6 -7 -8 -8 -7 -7 -6 -6 -5 -1 2 0 -4 -9 -9 -4 1 2 -2 -8 -13 -10 -5 -2 -2 -6 -9 -8 -6 -5 -6 -7 -6 -5 -5 -7 -8 -9 -7 -6 -5 -5 -6 -7 -7 -7 -7 -7 -7 -7 -8 -7 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -9 -9 -8 -7 -6 -6 -6 -7 -7 -8 -8 -9 -8 -7 -5 -4 -5 -7 -8 -8 -7 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -3 -2 -2 -3 -3 -2 -2 -2 -2 -1 -1 -1 -0 -0 0 0 1 1 2 2 1 1 1 1 1 1 1 1 1 1 2 2 2 1 2 2 3 3 4 4 3 2 2 2 3 4 4 5 6 7 7 7 6 6 5 5 5 6 6 6 6 6 5 5 5 5 5 5 5 5 5 5 5 5 5 4 3 2 1 -0 -1 -2 -3 -4 -5 -6 -6 -7 -8 -10 -11 -13 -14 -16 -17 -17 -10 5 12 14 15 15 16 16 16 15 12 9 6 3 0 -3 -7 -10 -11 -9 -8 -6 -6 -5 -5 -6 -7 -8 -8 -9 -9 -9 -10 -11 -13 -15 -17 -19 -20 -21 -21 -21 -20 2 2 2 3 3 5 7 7 6 6 5 6 7 9 11 13 15 15 14 12 11 9 5 -1 -6 -9 -11 -11 -12 -15 -17 -19 -19 -18 -17 -16 -15 -13 -11 -10 -10 -10 -10 -9 -6 -3 1 4 5 6 6 6 6 5 4 4 3 2 2 2 2 2 1 -0 -2 -5 -9 -14 -21 -28 -33 -36 -38 -40 -41 -41 -38 -36 -36 -37 -41 -45 -50 -55 -60 -64 -64 -60 -51 -41 -38 -41 -47 -51 -47 -40 -36 -34 -35 -35 -34 -33 -32 -31 -32 -32 -33 -34 -33 -32 -31 -31 -33 -33 -31 -30 -30 -32 -33 -33 -32 -30 -28 -26 -25 -24 -22 -20 -16 -13 -14 -17 -19 -18 -15 -13 -15 -17 -15 -10 -4 -4 -11 -15 -14 -8 -2 -4 -10 -13 -11 -8 -5 -5 -6 -6 -6 -7 -9 -8 -6 -4 -5 -7 -9 -9 -8 -6 -5 -4 -6 -10 -12 -12 -11 -9 -7 -5 -5 -6 -6 -6 -5 -4 -4 -5 -6 -7 -6 -2 -0 -2 -5 -8 -5 -1 0 -3 -10 -14 -13 -7 -1 -1 -5 -9 -10 -6 -4 -5 -6 -7 -6 -5 -6 -8 -9 -8 -6 -5 -5 -6 -7 -7 -7 -7 -7 -7 -8 -8 -7 -7 -8 -8 -8 -8 -8 -8 -9 -9 -9 -10 -9 -9 -8 -7 -6 -6 -6 -7 -8 -9 -10 -9 -8 -5 -4 -4 -6 -8 -9 -7 -5 -4 -5 -5 -6 -5 -5 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -0 -0 -0 0 1 1 2 2 2 2 2 2 1 1 1 1 1 2 2 2 1 1 1 2 2 3 3 3 3 2 2 2 2 3 4 4 5 6 7 8 8 7 7 6 6 6 7 7 7 7 6 6 6 5 5 5 5 5 5 5 5 5 5 4 3 2 1 0 -1 -1 -2 -3 -4 -5 -5 -6 -7 -8 -9 -11 -13 -14 -15 -17 -16 -11 9 15 17 18 19 20 20 18 15 11 9 8 6 3 -1 -5 -10 -10 -8 -7 -6 -5 -5 -5 -6 -7 -7 -8 -8 -9 -9 -10 -11 -13 -16 -18 -20 -21 -21 -21 -20 2 3 4 4 5 7 9 9 9 8 7 8 9 8 8 9 10 10 8 9 9 9 8 7 6 5 5 1 -6 -15 -20 -21 -20 -18 -16 -15 -13 -11 -9 -8 -6 -6 -6 -5 -4 -2 1 3 4 6 7 8 9 8 7 5 5 4 3 2 1 0 -1 -2 -2 -3 -4 -8 -14 -22 -30 -37 -42 -45 -46 -44 -40 -37 -36 -37 -40 -42 -45 -50 -57 -63 -64 -59 -48 -40 -39 -43 -49 -51 -45 -38 -35 -35 -36 -36 -35 -33 -31 -31 -31 -32 -34 -34 -32 -31 -30 -31 -32 -31 -31 -31 -32 -33 -33 -32 -31 -30 -28 -27 -26 -25 -23 -19 -15 -13 -16 -19 -20 -18 -14 -14 -18 -19 -15 -9 -5 -8 -15 -16 -11 -5 -3 -8 -13 -13 -10 -6 -5 -5 -5 -4 -5 -7 -8 -8 -6 -5 -6 -6 -8 -8 -8 -8 -7 -6 -6 -8 -9 -10 -9 -8 -6 -4 -3 -3 -4 -6 -6 -4 -3 -4 -6 -7 -6 -2 -1 -3 -5 -6 -3 -1 -4 -10 -14 -14 -9 -2 -0 -4 -9 -11 -8 -5 -4 -5 -7 -7 -5 -6 -7 -9 -9 -7 -6 -5 -5 -6 -7 -7 -7 -7 -7 -8 -8 -7 -7 -7 -8 -8 -8 -8 -8 -9 -9 -10 -10 -10 -10 -9 -8 -7 -6 -6 -7 -8 -10 -10 -11 -9 -7 -4 -4 -5 -8 -10 -9 -7 -5 -4 -5 -6 -6 -5 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -1 -1 -1 -1 -0 -0 0 0 1 1 2 2 2 2 2 1 1 1 2 2 2 1 1 1 1 1 2 2 2 3 3 3 2 2 2 2 3 3 3 4 5 6 6 6 7 7 7 7 7 7 7 7 7 7 7 6 5 5 5 5 5 5 5 5 5 5 4 3 2 1 0 -1 -1 -2 -3 -4 -5 -5 -6 -6 -8 -9 -11 -13 -14 -15 -15 -14 15 21 21 21 22 22 22 21 17 13 11 11 10 9 6 2 -4 -10 -9 -7 -6 -5 -5 -5 -5 -5 -6 -7 -8 -8 -9 -9 -10 -12 -14 -17 -19 -20 -21 -21 -20 4 5 5 6 7 10 11 12 11 11 10 10 7 4 1 1 1 0 -4 -2 1 3 4 4 3 2 1 -1 -3 -10 -21 -24 -22 -20 -17 -15 -13 -11 -8 -6 -4 -3 -3 -3 -2 0 2 4 5 6 7 8 8 8 7 7 6 5 3 1 -1 -3 -4 -4 -4 -3 -3 -6 -10 -17 -24 -32 -38 -41 -43 -43 -42 -40 -39 -39 -40 -41 -43 -48 -55 -61 -62 -57 -48 -44 -44 -46 -49 -51 -45 -37 -34 -35 -36 -35 -34 -32 -31 -31 -32 -33 -33 -32 -31 -30 -30 -31 -31 -31 -31 -32 -32 -33 -32 -31 -30 -29 -28 -28 -28 -26 -22 -17 -14 -15 -19 -21 -20 -17 -15 -17 -20 -19 -14 -9 -8 -14 -18 -15 -8 -4 -5 -12 -14 -12 -8 -6 -5 -4 -4 -5 -6 -8 -7 -6 -6 -6 -7 -7 -7 -7 -7 -8 -8 -8 -7 -6 -7 -7 -6 -6 -4 -2 0 0 -2 -6 -8 -7 -5 -4 -5 -5 -4 -2 -2 -3 -5 -5 -4 -4 -8 -11 -12 -9 -3 -0 -3 -8 -11 -10 -6 -4 -5 -7 -7 -6 -5 -6 -8 -9 -8 -6 -5 -5 -5 -6 -7 -7 -7 -8 -8 -8 -8 -7 -7 -7 -8 -8 -8 -8 -9 -10 -10 -10 -10 -10 -10 -10 -9 -8 -7 -8 -9 -10 -11 -12 -12 -9 -6 -5 -5 -8 -10 -11 -9 -6 -5 -5 -6 -7 -6 -5 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -2 -1 -1 -1 -1 -1 -1 -1 -0 -0 0 1 1 2 2 2 2 2 2 2 2 1 0 0 0 1 1 1 2 2 2 3 4 4 3 2 2 2 2 2 2 3 3 3 4 4 5 6 7 7 7 7 8 8 7 7 6 6 6 6 6 5 5 5 5 5 5 4 3 2 1 1 -0 -1 -2 -3 -4 -5 -5 -5 -6 -6 -7 -9 -11 -12 -13 -12 -9 14 25 26 25 24 23 23 21 19 16 12 12 12 12 10 8 4 -3 -8 -8 -6 -5 -6 -5 -5 -5 -5 -5 -6 -8 -9 -9 -10 -11 -13 -15 -17 -19 -20 -21 -20 7 7 7 7 9 11 12 12 12 11 10 6 -1 -3 -2 -1 -3 -12 -21 -23 -19 -12 -6 -2 -3 -4 -6 -7 -9 -12 -19 -24 -25 -22 -19 -17 -15 -12 -9 -6 -4 -2 -2 -1 0 2 5 7 8 9 8 7 6 5 5 6 6 5 3 0 -2 -5 -6 -6 -4 -2 -3 -6 -10 -16 -21 -27 -31 -35 -38 -40 -42 -42 -42 -41 -41 -42 -43 -47 -52 -56 -57 -54 -49 -48 -48 -48 -49 -50 -44 -37 -34 -35 -35 -34 -33 -32 -32 -32 -32 -32 -31 -30 -29 -29 -30 -31 -30 -30 -30 -31 -32 -32 -31 -30 -29 -28 -28 -28 -28 -25 -20 -16 -15 -18 -22 -22 -20 -16 -16 -19 -20 -18 -13 -10 -13 -20 -19 -13 -7 -5 -9 -14 -14 -11 -8 -6 -6 -5 -6 -8 -9 -8 -6 -4 -4 -6 -7 -8 -7 -6 -6 -7 -8 -9 -8 -6 -5 -4 -4 -4 -3 -1 1 1 -3 -8 -11 -11 -8 -6 -4 -2 -1 0 -1 -3 -5 -6 -6 -7 -9 -10 -8 -4 -1 -3 -7 -10 -10 -7 -5 -5 -6 -7 -7 -6 -6 -7 -8 -8 -7 -5 -5 -5 -6 -6 -7 -7 -8 -8 -8 -8 -7 -7 -7 -8 -8 -8 -9 -10 -11 -11 -10 -10 -10 -10 -10 -10 -10 -9 -9 -10 -11 -12 -14 -14 -13 -10 -7 -7 -8 -11 -13 -12 -9 -7 -6 -6 -7 -7 -6 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -1 -1 -1 -1 -1 -1 -0 1 1 2 3 3 3 3 2 1 -0 -0 0 1 1 1 2 2 2 3 4 4 4 3 2 1 1 1 1 1 1 1 1 2 3 4 5 6 7 8 8 8 7 7 7 6 6 6 6 6 5 5 5 5 5 4 3 2 2 1 0 -0 -1 -2 -3 -4 -5 -5 -5 -5 -6 -7 -9 -11 -11 -11 -8 6 21 29 28 26 24 22 21 20 18 15 14 14 13 12 11 9 5 -1 -5 -6 -5 -6 -6 -5 -5 -4 -4 -5 -6 -8 -9 -9 -10 -12 -14 -16 -18 -19 -21 -21 9 9 8 8 9 10 11 10 9 8 5 -0 5 7 8 8 4 -11 -24 -29 -27 -21 -13 -8 -7 -8 -9 -11 -12 -13 -17 -23 -26 -24 -21 -19 -17 -14 -10 -7 -4 -2 -1 0 2 5 8 10 12 11 8 5 2 2 3 3 4 4 3 0 -3 -5 -6 -6 -4 -2 -3 -6 -11 -16 -20 -24 -27 -31 -34 -38 -42 -43 -42 -41 -41 -42 -44 -47 -49 -50 -50 -49 -50 -51 -50 -49 -48 -47 -40 -35 -34 -34 -34 -32 -32 -32 -32 -32 -32 -31 -29 -28 -28 -29 -29 -29 -29 -29 -30 -30 -31 -31 -30 -29 -28 -28 -28 -29 -26 -22 -17 -14 -16 -20 -23 -22 -18 -16 -17 -20 -20 -16 -13 -13 -18 -23 -19 -11 -6 -7 -13 -15 -13 -11 -9 -8 -7 -7 -9 -11 -11 -9 -6 -4 -4 -5 -7 -8 -9 -8 -6 -6 -7 -8 -9 -8 -5 -3 -3 -3 -3 -2 -2 -2 -5 -9 -13 -13 -12 -8 -4 0 2 2 -0 -3 -6 -7 -9 -9 -9 -7 -4 -2 -3 -7 -10 -11 -9 -6 -5 -6 -7 -7 -6 -6 -7 -8 -8 -7 -6 -5 -5 -5 -6 -7 -7 -8 -9 -9 -8 -7 -7 -7 -8 -8 -8 -9 -10 -12 -12 -11 -11 -10 -11 -11 -11 -11 -11 -11 -11 -12 -13 -14 -16 -16 -14 -11 -9 -10 -12 -14 -15 -13 -10 -8 -7 -8 -9 -8 -7 -7 -6 -6 -6 -6 -6 -6 -5 -5 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 0 1 2 3 3 3 2 1 1 1 1 1 1 1 2 2 2 2 3 3 3 3 3 2 1 1 1 0 -0 -0 -0 0 1 1 2 4 5 7 8 8 7 7 7 6 6 6 6 6 5 5 5 5 5 4 4 3 2 1 0 0 -0 -1 -2 -3 -4 -5 -6 -6 -6 -6 -7 -9 -10 -10 -8 -0 14 26 31 28 25 22 21 19 18 18 16 15 15 14 12 10 9 6 1 -4 -6 -6 -5 -5 -5 -4 -4 -4 -5 -6 -8 -9 -10 -11 -13 -14 -16 -18 -20 -21 11 11 10 9 9 9 9 8 6 3 -1 -4 -2 1 4 6 5 -13 -23 -27 -28 -25 -20 -15 -13 -12 -13 -13 -13 -13 -15 -19 -23 -24 -22 -20 -18 -16 -13 -9 -6 -3 -1 0 3 5 9 12 13 11 6 2 0 -0 0 1 2 3 3 1 -2 -5 -6 -5 -3 -3 -5 -8 -13 -17 -20 -23 -26 -30 -34 -38 -40 -41 -41 -41 -42 -43 -45 -46 -47 -46 -45 -46 -49 -51 -51 -50 -47 -42 -35 -33 -33 -33 -32 -31 -31 -31 -31 -31 -30 -28 -27 -27 -27 -27 -27 -27 -28 -28 -29 -29 -30 -29 -28 -28 -27 -28 -28 -28 -24 -19 -15 -15 -18 -23 -23 -20 -16 -16 -18 -21 -19 -15 -13 -16 -22 -23 -17 -10 -8 -11 -15 -15 -13 -11 -9 -8 -8 -9 -12 -13 -13 -10 -7 -5 -4 -5 -7 -9 -10 -10 -8 -6 -5 -6 -8 -8 -7 -5 -3 -3 -4 -5 -6 -6 -8 -10 -13 -14 -13 -9 -3 2 4 3 0 -3 -7 -9 -11 -10 -8 -5 -2 -2 -6 -10 -11 -10 -7 -6 -6 -7 -7 -7 -6 -7 -8 -8 -7 -6 -6 -5 -6 -6 -7 -7 -8 -9 -9 -8 -8 -7 -8 -8 -8 -8 -8 -10 -13 -13 -13 -12 -12 -12 -13 -13 -13 -13 -14 -13 -13 -13 -14 -16 -18 -18 -15 -12 -12 -13 -16 -17 -16 -14 -11 -10 -10 -10 -10 -9 -9 -9 -8 -8 -8 -8 -8 -7 -6 -6 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 0 1 2 2 2 2 2 2 2 1 1 1 1 2 2 2 2 2 2 2 3 3 3 2 2 1 0 -0 -1 -1 -0 -0 0 1 2 3 5 6 7 8 7 7 6 6 6 6 6 5 5 5 5 5 4 4 3 2 2 1 0 -0 -1 -1 -2 -3 -5 -6 -6 -6 -6 -6 -7 -8 -9 -9 -5 5 17 28 29 27 23 21 19 19 18 18 18 17 16 14 11 10 9 7 2 -6 -6 -5 -4 -4 -4 -4 -4 -4 -5 -6 -7 -9 -10 -12 -13 -15 -17 -18 -20 15 14 13 13 12 12 13 13 12 11 7 1 -0 0 1 -2 -11 -17 -23 -25 -27 -26 -23 -19 -16 -15 -16 -16 -16 -14 -13 -14 -17 -20 -21 -20 -19 -17 -15 -12 -8 -5 -3 -1 1 4 7 10 11 9 6 3 1 -0 -1 0 2 3 3 0 -3 -5 -5 -5 -4 -5 -7 -11 -15 -19 -22 -24 -27 -31 -34 -37 -38 -39 -40 -41 -43 -44 -45 -47 -47 -47 -46 -47 -50 -51 -51 -50 -47 -41 -35 -33 -32 -31 -30 -30 -30 -30 -28 -27 -27 -26 -26 -26 -26 -25 -25 -25 -26 -27 -28 -28 -28 -28 -27 -26 -27 -28 -28 -25 -21 -16 -14 -16 -21 -24 -21 -17 -15 -16 -20 -22 -17 -14 -14 -18 -23 -21 -15 -11 -11 -14 -16 -15 -13 -11 -10 -9 -9 -12 -14 -14 -13 -10 -8 -6 -6 -6 -8 -9 -10 -11 -10 -8 -5 -4 -5 -8 -9 -8 -6 -3 -3 -6 -8 -9 -9 -10 -11 -12 -11 -8 -2 3 4 3 -1 -4 -8 -11 -11 -10 -7 -4 -2 -4 -8 -11 -11 -9 -7 -6 -7 -7 -7 -7 -7 -8 -8 -8 -7 -6 -6 -6 -6 -7 -7 -8 -9 -9 -9 -8 -8 -8 -9 -9 -8 -8 -10 -13 -15 -15 -14 -14 -14 -15 -15 -15 -15 -15 -15 -14 -12 -13 -15 -18 -19 -19 -16 -15 -15 -17 -19 -19 -18 -16 -14 -13 -12 -12 -11 -11 -11 -11 -10 -10 -10 -9 -9 -8 -7 -7 -6 -5 -5 -4 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -3 -2 -2 -2 -1 -1 -0 -0 -0 0 1 1 2 2 2 2 1 1 2 1 1 1 1 1 1 2 2 3 3 2 2 1 0 -0 -1 -1 -1 -0 -0 1 1 3 4 6 7 7 7 6 5 5 5 5 5 5 5 5 5 5 4 4 3 2 1 1 0 -0 -1 -1 -2 -4 -5 -6 -6 -7 -7 -7 -7 -8 -9 -7 -3 5 18 27 28 25 22 20 19 19 20 20 20 20 17 13 11 10 10 9 -1 -3 -2 -2 -2 -2 -3 -3 -4 -4 -5 -6 -8 -9 -11 -12 -14 -15 -17 -19 8 8 8 8 8 9 9 9 9 9 8 5 2 -1 -4 -10 -16 -18 -21 -23 -24 -24 -22 -18 -16 -15 -16 -18 -19 -17 -15 -13 -13 -15 -17 -18 -18 -18 -16 -14 -11 -8 -6 -5 -3 -0 3 6 8 9 8 7 6 4 3 3 5 5 2 -3 -7 -8 -8 -7 -6 -7 -10 -13 -17 -21 -23 -26 -29 -32 -35 -36 -36 -36 -38 -40 -43 -44 -46 -47 -48 -47 -45 -44 -47 -49 -47 -44 -41 -39 -35 -32 -31 -29 -28 -29 -28 -26 -24 -23 -23 -24 -24 -25 -24 -23 -23 -24 -24 -26 -27 -28 -27 -26 -25 -25 -26 -26 -26 -22 -18 -16 -16 -19 -22 -22 -18 -14 -14 -18 -22 -20 -15 -13 -15 -20 -22 -18 -14 -13 -15 -17 -17 -15 -13 -11 -10 -10 -11 -14 -15 -14 -13 -10 -8 -7 -8 -8 -9 -10 -11 -12 -11 -9 -5 -2 -3 -7 -11 -12 -9 -5 -2 -4 -7 -9 -10 -10 -10 -10 -8 -5 -1 2 3 1 -2 -6 -9 -12 -12 -10 -6 -3 -2 -5 -9 -11 -10 -8 -7 -7 -7 -7 -7 -7 -7 -8 -8 -7 -7 -7 -6 -7 -7 -7 -8 -9 -10 -9 -8 -8 -9 -10 -11 -9 -9 -10 -13 -16 -17 -16 -16 -16 -16 -16 -16 -15 -15 -15 -14 -13 -12 -13 -17 -20 -21 -20 -18 -17 -18 -19 -21 -22 -21 -19 -17 -15 -14 -14 -14 -14 -13 -13 -13 -12 -12 -11 -10 -9 -8 -7 -7 -6 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -2 -3 -3 -3 -2 -2 -2 -1 -1 -2 -2 -1 -1 0 1 2 2 2 2 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 1 1 0 -0 -0 -1 -0 0 1 1 2 4 5 6 6 6 5 5 4 4 4 4 4 4 5 5 4 4 3 3 2 1 1 0 0 -0 -1 -2 -3 -5 -6 -7 -7 -8 -8 -8 -8 -8 -6 -2 4 19 26 27 23 21 20 20 21 21 22 22 20 16 13 10 10 10 10 7 4 3 1 -0 -1 -2 -3 -3 -3 -4 -6 -8 -10 -11 -12 -14 -15 -17 7 7 6 6 7 8 9 9 8 8 7 6 3 -1 -6 -11 -14 -16 -17 -18 -19 -20 -18 -16 -14 -12 -13 -16 -19 -20 -18 -14 -12 -11 -12 -14 -15 -15 -15 -14 -13 -11 -10 -9 -7 -4 -1 2 5 8 10 10 10 10 9 9 8 4 -1 -7 -10 -12 -11 -10 -8 -9 -11 -14 -17 -20 -23 -25 -29 -32 -35 -36 -36 -36 -37 -39 -40 -42 -43 -44 -45 -44 -43 -42 -44 -46 -44 -41 -39 -38 -33 -30 -28 -27 -27 -27 -26 -23 -21 -20 -20 -21 -22 -21 -21 -21 -21 -21 -22 -24 -26 -26 -26 -24 -24 -24 -24 -24 -23 -20 -17 -17 -18 -21 -21 -18 -14 -13 -16 -21 -23 -17 -13 -13 -16 -20 -20 -17 -15 -16 -17 -18 -17 -15 -13 -11 -11 -11 -13 -15 -15 -14 -12 -10 -9 -9 -10 -10 -10 -10 -11 -12 -12 -10 -6 -2 -2 -6 -11 -13 -12 -7 -2 -1 -4 -8 -11 -12 -10 -9 -7 -4 -2 0 1 -0 -3 -8 -11 -13 -12 -9 -5 -2 -2 -6 -10 -11 -9 -7 -6 -7 -7 -7 -7 -7 -7 -8 -8 -8 -8 -7 -7 -7 -8 -8 -9 -9 -9 -8 -8 -9 -10 -12 -11 -9 -10 -12 -15 -18 -18 -17 -18 -18 -18 -17 -16 -15 -15 -15 -14 -13 -13 -16 -19 -22 -22 -20 -18 -18 -20 -22 -24 -25 -24 -21 -19 -17 -16 -16 -16 -16 -16 -15 -15 -14 -14 -12 -11 -10 -9 -8 -7 -6 -6 -5 -5 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 -0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 1 1 0 -0 -0 -0 0 1 1 2 4 5 6 6 6 5 5 4 3 3 3 4 5 5 4 4 3 3 3 2 2 1 1 0 -0 -1 -2 -3 -4 -6 -7 -8 -8 -8 -8 -8 -7 -5 -2 7 19 28 25 23 22 22 22 22 22 22 21 18 15 12 10 11 13 16 16 12 6 3 1 0 -1 -2 -2 -3 -5 -6 -8 -10 -11 -12 -13 -15 10 9 8 8 8 9 10 10 9 8 7 5 3 -1 -5 -9 -12 -13 -13 -14 -15 -15 -15 -14 -12 -11 -10 -12 -15 -20 -20 -17 -13 -10 -9 -8 -9 -9 -10 -10 -10 -9 -9 -8 -6 -3 -0 3 5 6 7 7 9 10 10 10 8 4 -2 -7 -11 -13 -14 -13 -11 -11 -12 -13 -15 -17 -19 -22 -25 -29 -33 -36 -37 -37 -37 -38 -39 -40 -40 -39 -39 -39 -39 -40 -42 -39 -36 -34 -36 -37 -31 -27 -25 -25 -25 -25 -23 -20 -18 -18 -18 -19 -18 -18 -18 -18 -18 -18 -20 -22 -23 -24 -23 -22 -22 -23 -23 -23 -21 -18 -17 -17 -19 -19 -18 -14 -12 -14 -19 -22 -21 -14 -12 -14 -17 -20 -18 -17 -17 -18 -19 -18 -17 -15 -14 -12 -12 -13 -14 -15 -14 -13 -12 -10 -10 -10 -11 -11 -11 -11 -11 -12 -12 -11 -7 -3 -2 -6 -11 -14 -13 -9 -3 -0 -2 -7 -11 -13 -12 -10 -8 -5 -3 0 1 -1 -5 -10 -13 -13 -11 -7 -3 -1 -2 -7 -10 -10 -8 -7 -6 -7 -7 -7 -6 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -9 -8 -8 -9 -10 -12 -12 -11 -10 -12 -15 -17 -18 -17 -18 -19 -19 -18 -16 -15 -15 -15 -14 -14 -14 -15 -18 -21 -23 -22 -20 -19 -20 -21 -24 -26 -27 -25 -23 -20 -19 -19 -19 -19 -18 -18 -17 -17 -17 -15 -14 -12 -11 -9 -8 -7 -7 -6 -6 -5 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -1 -0 0 1 1 0 0 0 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 1 2 3 4 5 6 6 6 5 4 3 3 3 4 5 5 4 4 3 3 3 3 2 2 1 1 1 0 -0 -1 -2 -4 -5 -7 -8 -9 -9 -8 -8 -6 -4 1 11 23 27 25 24 24 24 23 23 22 21 19 16 13 11 11 14 17 20 22 14 9 5 3 1 0 -1 -2 -3 -5 -7 -9 -10 -11 -12 -13 14 12 10 10 9 10 11 10 9 7 5 3 1 -1 -5 -8 -10 -11 -10 -10 -12 -13 -15 -15 -14 -12 -11 -11 -12 -16 -19 -15 -9 -5 -4 -3 -3 -3 -4 -4 -4 -5 -5 -5 -4 -1 2 3 4 3 2 2 4 6 7 7 6 3 -2 -6 -9 -12 -13 -13 -12 -11 -11 -12 -13 -14 -15 -17 -20 -25 -31 -35 -38 -37 -36 -36 -37 -38 -37 -36 -34 -33 -33 -36 -39 -38 -34 -33 -34 -34 -27 -23 -22 -22 -22 -22 -20 -17 -16 -16 -17 -16 -15 -14 -14 -14 -15 -16 -17 -19 -20 -20 -20 -20 -21 -22 -22 -21 -19 -17 -16 -16 -16 -16 -14 -12 -13 -17 -20 -21 -17 -13 -14 -16 -18 -19 -18 -18 -19 -19 -18 -17 -16 -16 -15 -14 -14 -14 -15 -15 -14 -13 -12 -11 -11 -11 -11 -11 -11 -11 -11 -12 -12 -11 -8 -5 -4 -6 -10 -13 -13 -9 -4 -1 -2 -6 -10 -13 -14 -13 -11 -7 -3 2 2 -1 -6 -11 -13 -12 -9 -5 -1 -0 -4 -9 -11 -9 -7 -6 -7 -7 -7 -6 -6 -7 -8 -9 -9 -9 -9 -8 -8 -8 -8 -9 -9 -8 -8 -8 -10 -12 -13 -12 -11 -12 -14 -16 -17 -17 -17 -19 -19 -18 -17 -16 -15 -15 -15 -15 -15 -16 -18 -21 -23 -23 -22 -20 -20 -21 -23 -26 -28 -28 -26 -24 -22 -22 -22 -21 -21 -20 -19 -19 -19 -19 -17 -16 -14 -12 -10 -9 -8 -7 -7 -6 -5 -5 -4 -4 -4 -4 -4 -3 -4 -4 -4 -4 -3 -3 -3 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 -0 -0 0 0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 0 1 1 1 1 0 -0 -0 0 1 2 4 5 6 6 6 5 5 4 3 3 4 4 4 4 3 3 3 3 3 3 3 2 2 1 1 0 -0 -1 -2 -3 -5 -6 -7 -8 -8 -8 -7 -6 -2 5 17 27 26 25 25 25 25 24 23 21 19 16 13 11 12 14 17 20 23 23 16 10 6 4 2 1 -1 -2 -4 -5 -7 -8 -9 -10 -11 16 14 12 11 10 10 10 9 8 6 4 3 2 1 -1 -4 -6 -7 -7 -7 -9 -13 -17 -19 -19 -18 -17 -16 -15 -16 -18 -14 -7 -2 -0 0 1 1 1 0 -0 -1 -2 -3 -2 -1 1 1 1 -1 -4 -5 -4 -1 2 2 2 0 -3 -6 -9 -11 -12 -12 -11 -10 -10 -10 -10 -10 -10 -12 -16 -21 -28 -33 -36 -35 -34 -33 -33 -34 -34 -33 -32 -30 -30 -33 -37 -37 -34 -32 -31 -30 -23 -19 -18 -19 -19 -19 -17 -16 -15 -16 -16 -14 -13 -12 -12 -12 -13 -14 -15 -16 -16 -17 -18 -19 -20 -21 -21 -20 -17 -15 -15 -15 -14 -13 -12 -12 -14 -18 -20 -19 -15 -14 -16 -18 -19 -18 -18 -19 -20 -19 -18 -17 -17 -16 -16 -15 -15 -15 -15 -15 -15 -14 -13 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -9 -8 -7 -7 -9 -11 -11 -9 -6 -3 -3 -5 -9 -12 -15 -15 -14 -9 -2 3 2 -2 -8 -12 -12 -10 -6 -2 1 -1 -7 -11 -10 -8 -6 -6 -7 -7 -6 -6 -6 -7 -9 -10 -10 -10 -9 -8 -7 -8 -9 -9 -8 -7 -8 -10 -12 -14 -13 -12 -11 -13 -16 -17 -16 -16 -17 -19 -19 -18 -16 -15 -15 -15 -16 -17 -18 -19 -21 -23 -23 -23 -22 -21 -21 -22 -25 -27 -28 -28 -27 -25 -24 -24 -24 -23 -22 -21 -21 -21 -21 -20 -19 -17 -16 -14 -12 -10 -9 -8 -7 -7 -6 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -0 0 1 0 -0 -1 -0 1 2 3 4 5 6 6 5 5 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 2 2 1 1 0 0 -1 -1 -2 -3 -5 -6 -7 -8 -8 -7 -4 0 10 24 26 26 26 26 26 25 24 22 19 16 12 11 11 13 15 19 22 24 23 18 11 7 5 2 0 -1 -3 -4 -5 -6 -7 -8 -9 16 15 13 11 10 10 11 11 11 10 9 9 8 8 6 4 2 1 0 -0 -2 -6 -12 -17 -20 -21 -21 -20 -19 -18 -18 -17 -12 -6 -2 -0 1 1 2 2 1 1 -0 -2 -3 -3 -2 -3 -4 -7 -10 -12 -11 -8 -5 -3 -3 -3 -5 -7 -9 -10 -11 -10 -9 -9 -9 -8 -7 -7 -7 -9 -13 -18 -23 -28 -30 -30 -29 -27 -27 -27 -27 -28 -28 -29 -30 -33 -36 -35 -32 -29 -27 -25 -19 -16 -15 -16 -16 -15 -14 -14 -15 -15 -15 -13 -11 -11 -11 -11 -12 -12 -13 -13 -14 -15 -16 -18 -19 -20 -19 -17 -15 -14 -14 -14 -13 -12 -12 -13 -16 -18 -18 -17 -15 -16 -17 -18 -18 -18 -19 -21 -21 -20 -19 -18 -17 -17 -16 -16 -16 -16 -16 -16 -15 -15 -14 -13 -13 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -10 -10 -9 -8 -9 -9 -9 -8 -7 -6 -6 -8 -11 -14 -16 -14 -8 -1 3 0 -5 -10 -11 -10 -7 -3 0 -0 -5 -10 -10 -8 -6 -6 -6 -7 -7 -6 -6 -7 -9 -10 -11 -10 -9 -7 -7 -8 -8 -9 -8 -8 -8 -10 -12 -14 -14 -13 -11 -12 -15 -17 -17 -15 -15 -17 -19 -18 -17 -16 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -23 -22 -22 -22 -23 -25 -26 -27 -27 -26 -26 -25 -25 -25 -24 -23 -23 -23 -23 -23 -22 -21 -20 -18 -16 -14 -12 -10 -9 -8 -7 -7 -6 -6 -6 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -5 -5 -5 -5 -4 -4 -4 -3 -3 -3 -4 -3 -3 -3 -2 -2 -2 -2 -2 -2 -1 -1 -1 -1 -1 -2 -2 -2 -2 -1 -1 -1 -0 -0 -1 -1 -1 -0 1 2 3 4 5 6 6 5 5 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 2 2 1 1 1 0 -0 -1 -1 -2 -3 -5 -7 -8 -7 -6 -3 3 17 24 26 26 26 27 26 25 23 20 17 14 12 11 11 13 16 21 23 24 23 18 12 8 5 2 0 -1 -3 -4 -5 -6 -6 -7 14 14 13 13 12 12 13 14 15 14 14 13 12 11 10 8 7 5 4 3 2 -1 -5 -10 -13 -16 -17 -19 -20 -20 -20 -20 -18 -13 -8 -4 -2 -1 0 0 1 1 -0 -2 -3 -4 -5 -6 -8 -12 -15 -16 -15 -13 -10 -8 -7 -7 -7 -9 -10 -10 -9 -8 -8 -7 -7 -5 -4 -4 -5 -7 -11 -14 -18 -21 -22 -22 -21 -20 -18 -17 -17 -20 -24 -28 -31 -33 -34 -33 -30 -26 -24 -20 -14 -12 -13 -13 -13 -12 -12 -13 -14 -15 -14 -12 -11 -11 -12 -12 -11 -11 -11 -12 -12 -14 -15 -17 -18 -18 -16 -14 -13 -13 -14 -13 -13 -12 -13 -15 -17 -17 -17 -16 -16 -17 -17 -17 -17 -19 -21 -22 -22 -21 -20 -19 -18 -18 -18 -18 -18 -18 -17 -16 -16 -15 -14 -14 -14 -14 -13 -13 -13 -13 -13 -12 -11 -10 -10 -11 -11 -10 -9 -8 -7 -8 -9 -9 -8 -7 -7 -10 -12 -13 -11 -6 -1 -0 -4 -8 -11 -10 -7 -3 0 0 -3 -8 -10 -9 -7 -6 -6 -7 -7 -7 -7 -8 -9 -10 -10 -10 -9 -7 -6 -7 -8 -9 -9 -8 -8 -10 -12 -14 -15 -14 -12 -11 -13 -16 -17 -16 -15 -16 -17 -18 -18 -17 -17 -17 -18 -19 -20 -21 -21 -21 -22 -23 -24 -24 -23 -23 -23 -24 -24 -25 -26 -26 -26 -25 -25 -25 -25 -25 -24 -24 -24 -24 -24 -24 -23 -22 -20 -18 -16 -14 -12 -11 -10 -8 -8 -7 -7 -6 -6 -5 -5 -4 -4 -5 -5 -5 -4 -4 -4 -4 -4 -4 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -2 -1 -1 -1 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 -2 -2 -2 -1 0 2 3 3 4 5 6 6 5 4 4 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 1 1 1 1 1 0 -0 -1 -3 -5 -7 -8 -7 -6 -3 8 20 26 26 26 26 26 26 24 22 19 16 13 11 11 11 14 18 22 24 25 23 18 13 8 4 2 0 -1 -2 -3 -4 -5 -5 9 11 12 11 11 10 10 11 13 13 13 13 12 11 10 9 8 6 4 3 3 2 -0 -3 -6 -8 -11 -13 -15 -17 -18 -19 -20 -19 -15 -9 -5 -3 -2 -2 -1 -1 -1 -2 -3 -4 -5 -6 -9 -12 -15 -16 -16 -14 -13 -12 -11 -10 -10 -11 -12 -11 -9 -7 -6 -5 -4 -2 -1 -1 -2 -5 -7 -9 -11 -12 -13 -13 -13 -12 -10 -10 -12 -16 -20 -24 -27 -29 -29 -29 -27 -24 -20 -16 -10 -9 -10 -11 -10 -10 -11 -13 -14 -14 -12 -11 -11 -12 -12 -12 -12 -11 -11 -12 -13 -14 -15 -16 -16 -15 -13 -12 -13 -14 -14 -13 -13 -13 -14 -16 -17 -17 -16 -17 -17 -17 -16 -16 -17 -19 -22 -22 -22 -22 -21 -21 -20 -19 -19 -19 -19 -19 -18 -17 -16 -15 -15 -15 -15 -15 -14 -14 -14 -14 -14 -13 -11 -10 -10 -11 -12 -11 -10 -8 -7 -8 -8 -9 -9 -9 -9 -9 -10 -10 -8 -5 -4 -6 -8 -10 -10 -8 -4 -0 -0 -3 -7 -10 -9 -7 -6 -6 -7 -8 -8 -8 -8 -9 -10 -10 -10 -9 -7 -6 -7 -8 -9 -10 -10 -10 -11 -13 -15 -16 -15 -13 -11 -11 -14 -16 -16 -16 -15 -16 -17 -18 -17 -17 -18 -19 -20 -20 -21 -21 -21 -21 -22 -23 -23 -23 -23 -23 -23 -23 -24 -24 -25 -24 -24 -24 -25 -25 -25 -25 -25 -25 -25 -25 -25 -26 -25 -24 -23 -21 -19 -17 -15 -13 -12 -10 -9 -8 -7 -7 -6 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -5 -5 -6 -5 -5 -4 -4 -4 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -2 -1 1 2 3 4 5 6 6 5 4 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 1 1 1 -0 -2 -3 -5 -7 -8 -8 -7 -2 12 23 26 26 26 26 26 25 24 22 19 16 13 11 11 12 16 20 23 25 25 22 17 12 8 4 2 0 -1 -2 -3 -3 -4 -0 4 6 7 6 5 4 6 8 10 12 13 12 12 11 10 8 6 4 3 3 3 2 -0 -2 -3 -5 -6 -8 -10 -12 -14 -17 -19 -19 -16 -10 -7 -5 -4 -3 -2 -2 -1 -1 -2 -2 -3 -5 -7 -9 -10 -11 -12 -14 -15 -15 -15 -16 -17 -16 -14 -11 -7 -5 -3 -2 -0 2 3 2 0 -1 -2 -2 -3 -4 -5 -6 -7 -7 -7 -9 -14 -18 -22 -23 -23 -23 -23 -21 -16 -10 -6 -5 -6 -7 -7 -7 -8 -10 -12 -12 -12 -10 -10 -12 -12 -13 -12 -12 -12 -12 -13 -14 -14 -15 -14 -13 -12 -12 -12 -14 -14 -14 -13 -13 -14 -16 -17 -16 -16 -17 -18 -18 -17 -15 -15 -17 -20 -22 -23 -23 -23 -22 -22 -21 -21 -21 -21 -21 -21 -20 -18 -17 -16 -16 -16 -16 -16 -16 -15 -15 -15 -15 -14 -12 -11 -11 -11 -12 -12 -12 -10 -8 -7 -8 -9 -10 -11 -11 -10 -9 -7 -7 -7 -8 -10 -11 -10 -8 -4 -1 -1 -3 -7 -9 -9 -7 -6 -6 -7 -8 -8 -8 -8 -9 -10 -10 -10 -9 -8 -7 -7 -8 -10 -11 -11 -12 -13 -14 -16 -17 -17 -15 -13 -11 -12 -14 -15 -16 -16 -17 -18 -18 -18 -18 -19 -20 -20 -20 -20 -20 -20 -21 -21 -22 -22 -22 -22 -22 -22 -23 -23 -23 -23 -23 -23 -23 -23 -23 -24 -24 -25 -25 -25 -26 -26 -27 -27 -27 -26 -25 -23 -21 -19 -18 -16 -14 -12 -11 -9 -8 -7 -6 -6 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -5 -5 -5 -5 -5 -4 -4 -5 -5 -5 -5 -4 -4 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -3 -3 -3 -3 -3 -2 -1 0 1 2 3 4 4 5 5 4 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 1 0 -1 -2 -4 -6 -8 -9 -9 -8 1 14 26 26 26 26 26 25 24 23 21 19 16 14 12 13 15 18 21 24 25 23 20 16 12 8 5 3 1 -0 -1 -2 -2 -13 -7 -3 -1 -1 -1 -1 0 3 7 10 12 12 12 11 10 9 6 5 4 4 4 3 1 -1 -1 -2 -2 -3 -4 -5 -6 -9 -13 -18 -20 -16 -11 -8 -6 -6 -5 -3 -2 -1 0 1 1 -1 -2 -3 -4 -6 -9 -13 -16 -18 -20 -22 -22 -21 -18 -14 -10 -6 -4 -2 0 3 5 6 5 5 5 4 4 3 2 -1 -3 -5 -7 -9 -12 -16 -19 -21 -22 -23 -23 -21 -18 -14 -10 -5 -4 -4 -4 -4 -6 -8 -10 -10 -9 -9 -10 -11 -12 -12 -11 -11 -12 -13 -14 -14 -14 -13 -12 -11 -10 -11 -13 -14 -13 -12 -11 -12 -14 -16 -16 -16 -16 -18 -19 -18 -16 -15 -15 -17 -20 -21 -22 -23 -23 -23 -23 -22 -22 -22 -22 -22 -22 -21 -20 -19 -18 -18 -18 -18 -17 -17 -16 -16 -16 -16 -15 -14 -13 -12 -11 -12 -13 -13 -12 -10 -8 -8 -9 -10 -12 -12 -11 -9 -8 -8 -8 -10 -10 -10 -8 -5 -2 -1 -5 -8 -9 -8 -6 -6 -6 -8 -9 -9 -8 -8 -9 -10 -11 -11 -11 -10 -9 -9 -9 -10 -12 -13 -13 -14 -16 -17 -18 -18 -17 -15 -13 -11 -12 -13 -15 -15 -16 -18 -19 -19 -19 -19 -20 -20 -20 -20 -19 -20 -20 -20 -20 -20 -21 -21 -22 -22 -22 -22 -22 -23 -22 -22 -22 -22 -22 -22 -23 -24 -25 -26 -26 -26 -27 -28 -28 -28 -27 -26 -25 -23 -21 -20 -18 -17 -15 -13 -10 -9 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -5 -5 -6 -5 -5 -5 -5 -5 -5 -4 -4 -5 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -4 -4 -4 -4 -3 -3 -2 -2 -3 -4 -4 -4 -3 -3 -3 -2 -0 1 2 3 3 3 3 4 4 3 2 1 1 1 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 1 0 -1 -3 -4 -7 -9 -10 -11 -9 -1 19 25 26 26 26 26 25 24 22 20 18 16 15 14 15 16 19 22 24 24 22 19 15 11 8 5 3 2 1 0 -0 -27 -22 -17 -13 -10 -8 -7 -5 -1 3 6 8 8 8 7 7 6 5 4 3 3 3 2 1 0 -1 -1 -1 -1 -2 -2 -3 -3 -5 -10 -17 -21 -17 -12 -9 -8 -7 -6 -3 -1 0 1 2 1 0 -0 -1 -3 -6 -10 -14 -18 -20 -22 -21 -20 -17 -14 -11 -9 -6 -4 -2 0 2 5 6 7 7 8 8 8 6 4 1 -2 -4 -5 -8 -12 -15 -19 -21 -23 -23 -22 -19 -16 -11 -4 -1 -1 -1 -2 -4 -7 -8 -8 -7 -8 -9 -10 -10 -10 -10 -11 -12 -13 -14 -13 -12 -11 -9 -9 -10 -12 -13 -13 -11 -10 -10 -12 -14 -15 -15 -15 -16 -18 -20 -19 -16 -14 -15 -16 -19 -21 -22 -22 -23 -23 -23 -23 -23 -23 -24 -23 -23 -22 -22 -21 -21 -21 -21 -20 -19 -19 -18 -18 -18 -18 -18 -17 -15 -13 -12 -12 -13 -14 -14 -12 -9 -8 -8 -10 -11 -12 -11 -10 -10 -9 -10 -10 -9 -7 -5 -3 -3 -6 -9 -10 -8 -6 -5 -7 -9 -10 -10 -9 -8 -8 -9 -11 -12 -12 -12 -11 -11 -11 -12 -12 -13 -14 -16 -17 -18 -19 -19 -18 -17 -15 -13 -12 -12 -13 -14 -15 -17 -19 -20 -20 -20 -20 -20 -19 -19 -18 -18 -19 -19 -19 -19 -19 -20 -20 -21 -22 -22 -22 -22 -22 -22 -21 -21 -21 -21 -21 -22 -24 -25 -26 -26 -27 -28 -28 -29 -28 -28 -27 -26 -24 -23 -21 -20 -18 -17 -14 -12 -9 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -5 -5 -6 -6 -6 -5 -5 -4 -4 -4 -4 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -5 -5 -4 -3 -3 -4 -4 -4 -4 -4 -3 -3 -2 -1 -0 1 2 2 2 2 3 3 3 2 1 0 1 2 3 3 3 2 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 1 0 -1 -3 -5 -7 -10 -11 -12 -10 -1 20 26 27 27 26 25 24 23 21 20 18 17 16 15 15 17 20 23 24 23 20 17 14 11 8 6 5 4 3 2 -37 -36 -32 -27 -21 -17 -14 -11 -7 -4 -2 -1 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 -2 -1 -2 -5 -10 -18 -23 -22 -17 -12 -10 -8 -6 -4 -1 1 2 2 2 1 0 -1 -3 -6 -10 -13 -15 -15 -14 -13 -11 -9 -7 -6 -4 -4 -3 -3 -3 -1 2 3 4 5 7 8 7 6 4 3 1 -1 -3 -6 -10 -15 -18 -20 -19 -18 -16 -14 -9 -2 1 1 1 -0 -3 -5 -6 -6 -6 -6 -8 -8 -8 -8 -8 -10 -11 -12 -12 -11 -10 -8 -7 -8 -10 -11 -12 -11 -9 -8 -9 -11 -13 -13 -12 -14 -16 -19 -20 -19 -16 -15 -15 -16 -18 -20 -21 -22 -22 -23 -23 -23 -23 -24 -24 -24 -24 -24 -23 -24 -24 -24 -24 -23 -22 -20 -20 -20 -21 -21 -21 -19 -17 -15 -13 -13 -14 -14 -15 -14 -11 -9 -8 -9 -10 -12 -12 -12 -11 -11 -10 -9 -7 -4 -3 -4 -7 -9 -10 -8 -7 -6 -8 -10 -11 -11 -9 -8 -7 -9 -12 -13 -14 -14 -13 -13 -13 -13 -13 -14 -15 -16 -18 -19 -20 -20 -19 -18 -17 -16 -14 -13 -13 -14 -14 -15 -17 -19 -19 -19 -19 -18 -18 -17 -17 -17 -17 -18 -18 -18 -18 -18 -19 -20 -20 -21 -21 -21 -21 -21 -21 -21 -20 -20 -20 -20 -21 -22 -24 -25 -26 -27 -28 -29 -29 -29 -28 -28 -26 -25 -24 -22 -21 -19 -18 -15 -13 -10 -8 -7 -6 -5 -5 -5 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -6 -7 -7 -6 -6 -5 -4 -4 -4 -5 -5 -6 -7 -8 -8 -8 -8 -8 -9 -9 -8 -8 -8 -7 -7 -6 -6 -5 -5 -4 -4 -4 -4 -4 -3 -3 -3 -2 -1 -0 1 2 2 1 1 2 2 1 1 0 1 2 3 3 2 1 1 1 2 2 2 2 2 2 2 2 2 2 2 3 2 2 1 0 -1 -3 -5 -8 -10 -12 -12 -11 13 23 27 28 27 26 25 23 22 21 20 19 18 17 16 16 19 22 23 23 22 19 17 14 11 9 7 6 5 4 -41 -43 -43 -39 -34 -28 -23 -20 -17 -15 -15 -15 -15 -15 -14 -13 -12 -11 -10 -10 -10 -11 -11 -11 -10 -9 -7 -6 -4 -3 -1 -1 -1 -0 -1 -4 -10 -18 -24 -25 -22 -16 -11 -9 -6 -4 -1 1 2 3 3 3 3 2 -0 -3 -5 -6 -6 -4 -4 -3 -1 -0 1 1 0 -0 -1 -2 -3 -2 -1 -0 0 1 3 4 5 5 5 4 2 1 -2 -6 -10 -14 -14 -14 -13 -12 -10 -6 0 3 3 2 1 -2 -3 -4 -4 -4 -5 -6 -6 -6 -6 -7 -9 -10 -10 -9 -8 -6 -5 -5 -7 -8 -10 -9 -8 -6 -7 -8 -10 -11 -10 -11 -13 -16 -18 -19 -18 -16 -15 -15 -16 -18 -19 -21 -21 -22 -22 -23 -23 -24 -24 -24 -24 -24 -24 -25 -26 -26 -27 -27 -26 -24 -23 -22 -22 -23 -24 -24 -22 -20 -17 -15 -14 -14 -15 -15 -15 -13 -11 -9 -8 -9 -10 -12 -12 -12 -11 -9 -7 -5 -4 -4 -6 -9 -10 -9 -7 -7 -8 -11 -12 -12 -10 -8 -8 -10 -12 -14 -15 -15 -15 -15 -15 -15 -15 -15 -15 -16 -18 -19 -21 -21 -21 -20 -19 -18 -17 -16 -15 -14 -14 -15 -16 -17 -18 -18 -18 -17 -17 -16 -15 -15 -15 -16 -16 -17 -17 -17 -17 -17 -18 -19 -20 -20 -20 -20 -20 -20 -20 -19 -19 -18 -18 -19 -20 -21 -22 -24 -26 -27 -29 -29 -29 -29 -28 -27 -25 -24 -23 -21 -20 -18 -16 -14 -12 -10 -8 -6 -5 -5 -5 -6 -6 -6 -6 -6 -7 -7 -6 -6 -5 -6 -6 -7 -7 -7 -6 -5 -5 -4 -5 -5 -6 -6 -7 -8 -9 -9 -9 -10 -10 -10 -10 -10 -10 -9 -9 -8 -7 -7 -6 -5 -5 -5 -5 -4 -4 -4 -3 -3 -2 -1 -0 1 1 1 1 0 0 0 -0 0 1 2 3 3 2 1 1 1 1 1 2 2 2 2 2 2 2 2 3 3 3 3 2 1 -0 -2 -3 -6 -8 -10 -12 -11 -7 10 26 28 28 27 26 24 23 22 21 20 19 18 18 17 18 21 23 23 22 20 19 16 14 12 10 8 7 6 -41 -44 -46 -45 -42 -38 -34 -30 -27 -25 -24 -23 -22 -20 -19 -18 -17 -16 -15 -15 -15 -17 -18 -18 -18 -17 -15 -12 -9 -6 -3 -2 -1 -0 0 -0 -2 -8 -15 -22 -26 -25 -19 -13 -9 -6 -3 -1 1 3 5 5 6 6 6 4 3 2 3 4 5 5 6 7 8 8 8 8 7 5 3 1 -0 -1 -2 -2 -1 0 2 4 5 5 4 3 0 -3 -6 -9 -10 -9 -9 -8 -6 -3 3 5 5 3 1 -1 -2 -2 -2 -3 -4 -4 -4 -4 -5 -6 -7 -8 -8 -6 -4 -3 -2 -3 -5 -6 -7 -6 -5 -4 -5 -6 -8 -8 -8 -10 -12 -15 -17 -18 -17 -16 -16 -16 -16 -17 -18 -20 -21 -22 -22 -23 -23 -24 -24 -24 -24 -25 -25 -26 -27 -28 -29 -29 -28 -26 -25 -24 -24 -25 -26 -26 -25 -23 -20 -18 -16 -15 -15 -16 -17 -16 -13 -11 -9 -8 -9 -11 -11 -11 -9 -7 -5 -4 -5 -7 -8 -9 -8 -7 -8 -9 -12 -14 -13 -11 -9 -9 -11 -13 -15 -15 -16 -16 -16 -16 -16 -16 -16 -16 -17 -18 -20 -21 -21 -21 -21 -20 -20 -20 -19 -17 -16 -15 -15 -15 -16 -17 -18 -17 -17 -16 -16 -15 -14 -14 -13 -14 -15 -15 -15 -15 -15 -16 -17 -18 -18 -18 -18 -18 -19 -19 -19 -18 -18 -17 -17 -17 -17 -18 -19 -21 -23 -25 -27 -28 -29 -29 -28 -27 -25 -24 -23 -21 -20 -19 -18 -16 -14 -12 -10 -8 -6 -6 -6 -6 -6 -7 -7 -7 -7 -7 -7 -7 -6 -6 -7 -7 -7 -7 -7 -6 -5 -5 -5 -6 -7 -7 -7 -8 -9 -10 -10 -11 -12 -12 -12 -12 -12 -11 -11 -10 -9 -8 -7 -7 -6 -6 -5 -5 -5 -4 -4 -3 -3 -3 -2 -1 -0 -0 -0 -1 -1 -1 -1 -0 0 1 2 2 2 1 1 1 1 1 1 2 2 2 2 2 2 2 3 3 3 3 2 2 1 -0 -2 -3 -6 -8 -10 -11 -9 1 16 27 28 27 26 25 23 22 22 21 20 20 19 19 19 20 22 23 22 21 20 18 16 15 13 11 9 8 -40 -43 -44 -40 -36 -34 -33 -31 -28 -25 -22 -19 -17 -15 -15 -14 -14 -15 -15 -15 -16 -17 -19 -21 -23 -22 -20 -17 -13 -10 -7 -5 -4 -3 -1 1 2 1 -3 -10 -18 -25 -26 -22 -16 -10 -7 -4 -0 3 5 7 8 9 9 9 9 9 10 11 12 13 13 14 14 15 16 16 17 16 13 9 5 3 1 1 0 1 2 4 5 4 4 3 3 2 -0 -4 -7 -7 -6 -5 -3 -0 5 7 6 4 1 -1 -1 -1 -1 -2 -2 -3 -3 -3 -4 -5 -6 -6 -5 -3 -1 0 0 -1 -3 -3 -3 -2 -2 -2 -3 -4 -5 -6 -7 -8 -11 -14 -15 -16 -17 -17 -16 -16 -16 -16 -17 -19 -20 -21 -22 -23 -23 -24 -24 -24 -24 -25 -26 -27 -29 -30 -31 -30 -29 -28 -26 -26 -26 -26 -27 -27 -26 -25 -23 -21 -19 -17 -17 -17 -18 -18 -16 -14 -11 -9 -9 -9 -9 -9 -7 -6 -5 -6 -7 -8 -9 -8 -8 -8 -10 -12 -14 -14 -12 -10 -10 -11 -14 -16 -16 -16 -16 -17 -17 -17 -17 -17 -17 -18 -19 -20 -21 -21 -21 -20 -20 -21 -22 -22 -21 -18 -16 -16 -16 -16 -17 -18 -18 -18 -17 -16 -15 -14 -13 -13 -12 -13 -13 -14 -14 -14 -14 -14 -15 -16 -16 -16 -16 -17 -17 -17 -17 -17 -16 -16 -15 -15 -15 -16 -17 -18 -20 -22 -25 -26 -28 -28 -28 -27 -25 -24 -22 -21 -20 -19 -19 -18 -17 -15 -13 -10 -8 -7 -6 -7 -7 -7 -7 -8 -8 -8 -8 -8 -8 -8 -7 -7 -7 -8 -7 -7 -6 -6 -6 -7 -7 -7 -8 -8 -9 -10 -11 -12 -13 -14 -14 -14 -14 -14 -14 -13 -12 -11 -9 -8 -7 -6 -6 -6 -5 -5 -4 -4 -4 -4 -3 -2 -1 -1 -1 -1 -2 -2 -1 -1 -0 0 1 1 1 1 1 0 0 0 1 2 2 2 2 2 2 2 3 3 3 3 3 2 2 1 -0 -2 -4 -6 -8 -9 -9 -5 5 23 27 28 27 25 24 23 23 22 21 21 20 20 20 20 21 22 22 21 20 19 18 16 15 13 11 10 -43 -44 -38 -31 -27 -25 -24 -25 -24 -22 -20 -17 -16 -14 -14 -14 -14 -15 -16 -16 -16 -17 -18 -20 -22 -23 -22 -20 -17 -14 -11 -9 -8 -6 -5 -2 1 4 5 2 -3 -12 -23 -27 -25 -19 -12 -6 -2 1 5 7 9 10 10 11 12 13 15 17 18 19 20 21 21 21 22 23 22 22 20 16 12 9 7 6 5 5 5 6 7 6 6 7 11 15 15 8 -0 -4 -5 -4 -1 1 6 8 7 4 2 -0 -1 -1 -1 -1 -2 -2 -2 -2 -2 -3 -3 -3 -2 -0 1 2 2 1 -0 -0 0 1 1 0 -1 -2 -3 -4 -5 -7 -10 -12 -13 -15 -16 -16 -16 -16 -16 -16 -17 -18 -19 -20 -21 -22 -23 -24 -24 -24 -24 -25 -27 -28 -30 -31 -32 -32 -31 -29 -28 -27 -27 -27 -28 -27 -27 -27 -26 -24 -22 -19 -18 -18 -19 -20 -19 -17 -14 -12 -10 -9 -8 -7 -6 -5 -6 -7 -8 -9 -9 -8 -9 -10 -12 -14 -14 -12 -10 -10 -12 -14 -16 -16 -16 -16 -17 -17 -17 -17 -17 -17 -18 -19 -21 -22 -22 -21 -20 -20 -21 -23 -24 -23 -21 -18 -16 -16 -17 -18 -19 -19 -19 -19 -18 -17 -16 -15 -14 -13 -12 -12 -12 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -15 -15 -16 -16 -16 -15 -15 -14 -14 -14 -14 -15 -16 -18 -20 -22 -24 -26 -27 -27 -26 -25 -23 -22 -20 -19 -19 -19 -20 -20 -18 -16 -13 -10 -9 -8 -8 -9 -9 -9 -9 -9 -10 -10 -10 -9 -9 -8 -8 -8 -8 -8 -7 -7 -6 -7 -7 -8 -8 -8 -8 -9 -11 -13 -14 -14 -15 -15 -16 -16 -17 -17 -16 -15 -13 -12 -10 -9 -8 -7 -7 -6 -6 -5 -5 -4 -4 -4 -4 -3 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 0 1 1 0 0 -0 0 1 2 2 3 2 2 2 2 2 3 3 3 3 2 2 1 1 -1 -2 -4 -6 -7 -8 -7 -3 10 23 27 27 25 24 23 23 23 22 21 21 20 20 21 21 21 22 20 19 19 18 17 16 15 13 11 -43 -38 -33 -28 -24 -21 -21 -22 -23 -24 -23 -22 -21 -20 -19 -19 -19 -19 -19 -19 -18 -18 -18 -18 -20 -21 -22 -22 -21 -19 -16 -13 -12 -11 -9 -7 -3 1 5 8 7 4 -6 -19 -28 -29 -21 -11 -5 -0 4 7 10 10 9 10 11 14 17 20 23 25 25 25 25 25 25 26 25 24 23 21 19 16 14 12 11 10 10 11 11 12 17 24 27 27 23 18 12 7 3 0 -1 -1 2 5 6 5 2 1 -0 -0 -0 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 2 3 3 3 2 2 3 4 4 4 3 1 -1 -2 -3 -4 -6 -8 -10 -12 -13 -15 -15 -15 -15 -15 -15 -16 -17 -18 -19 -21 -22 -23 -23 -23 -24 -24 -25 -27 -29 -31 -32 -33 -32 -31 -30 -30 -29 -29 -29 -29 -28 -28 -28 -27 -26 -24 -22 -19 -18 -19 -19 -20 -19 -17 -15 -12 -10 -8 -7 -6 -6 -7 -9 -9 -10 -9 -9 -11 -13 -14 -14 -13 -11 -10 -12 -14 -16 -17 -16 -16 -17 -17 -18 -17 -17 -18 -18 -19 -20 -22 -22 -22 -21 -20 -21 -23 -24 -25 -23 -20 -18 -16 -17 -18 -19 -20 -20 -20 -20 -19 -18 -17 -16 -14 -13 -12 -12 -12 -12 -12 -12 -11 -12 -12 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -16 -18 -20 -22 -24 -25 -26 -26 -25 -23 -21 -19 -18 -19 -19 -20 -21 -20 -18 -16 -13 -11 -11 -10 -10 -11 -11 -11 -11 -11 -12 -11 -11 -10 -9 -9 -9 -9 -9 -8 -8 -7 -7 -7 -8 -8 -8 -8 -10 -11 -13 -14 -15 -15 -16 -17 -18 -19 -19 -19 -18 -17 -15 -13 -11 -9 -8 -8 -7 -7 -6 -6 -5 -5 -5 -5 -4 -4 -3 -2 -2 -2 -2 -2 -2 -2 -2 -1 0 1 0 -0 -1 -0 1 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 1 0 -1 -3 -4 -5 -6 -6 -6 -0 16 25 27 26 24 23 23 23 23 22 21 21 21 21 22 22 22 20 19 18 18 17 17 16 15 13 -34 -30 -27 -25 -23 -21 -21 -23 -25 -27 -29 -29 -29 -27 -27 -26 -26 -25 -24 -23 -22 -21 -20 -20 -20 -20 -21 -23 -24 -23 -21 -18 -15 -14 -13 -11 -8 -4 1 5 9 10 9 1 -11 -23 -30 -26 -14 -4 2 6 8 9 9 9 10 12 17 22 26 28 29 29 28 27 27 26 25 25 24 24 23 22 20 18 16 15 15 15 17 20 23 25 27 26 21 13 11 11 10 7 4 1 1 4 6 5 3 1 1 0 1 1 0 -0 0 1 1 1 2 2 2 3 4 4 4 4 4 5 6 6 6 5 3 1 -1 -2 -3 -5 -7 -9 -10 -12 -13 -13 -14 -14 -14 -15 -15 -16 -17 -18 -20 -21 -22 -22 -23 -23 -24 -25 -27 -29 -31 -32 -33 -32 -32 -31 -30 -30 -30 -29 -29 -29 -28 -28 -28 -28 -26 -23 -21 -19 -18 -19 -19 -19 -18 -16 -14 -11 -9 -8 -8 -8 -9 -10 -10 -10 -10 -11 -12 -14 -15 -14 -12 -11 -12 -14 -16 -17 -16 -16 -16 -17 -17 -18 -17 -17 -18 -18 -20 -21 -22 -22 -21 -20 -21 -22 -24 -25 -24 -22 -19 -18 -17 -18 -18 -19 -20 -21 -21 -21 -20 -19 -18 -17 -15 -14 -13 -12 -12 -12 -11 -11 -10 -10 -11 -11 -12 -12 -12 -11 -11 -12 -12 -12 -13 -13 -14 -14 -14 -15 -15 -15 -16 -16 -18 -20 -22 -24 -25 -25 -25 -23 -21 -19 -18 -18 -19 -20 -21 -21 -20 -18 -16 -14 -13 -13 -13 -13 -13 -12 -12 -13 -13 -13 -12 -11 -10 -10 -10 -10 -10 -9 -8 -8 -8 -8 -8 -8 -8 -9 -10 -12 -13 -14 -15 -16 -16 -17 -19 -20 -21 -21 -21 -20 -18 -16 -13 -11 -10 -9 -8 -8 -8 -7 -6 -6 -6 -6 -5 -5 -4 -3 -3 -3 -3 -3 -3 -3 -2 -1 -0 0 0 -1 -1 -1 0 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 -1 -2 -3 -4 -4 -5 -6 -4 5 18 27 27 25 24 23 23 23 23 23 22 21 22 22 22 22 21 19 17 17 17 17 17 16 15 -26 -25 -24 -23 -22 -21 -22 -23 -26 -29 -32 -34 -34 -33 -32 -31 -30 -29 -28 -27 -25 -24 -24 -24 -23 -22 -22 -22 -23 -24 -24 -22 -19 -17 -15 -13 -12 -9 -4 0 5 9 11 10 5 -4 -15 -24 -26 -19 -9 -0 4 5 5 4 6 10 16 22 27 30 31 31 31 30 29 28 27 26 26 27 26 25 22 20 18 17 17 19 22 26 25 21 21 23 21 14 8 6 5 6 6 2 -0 4 6 5 3 2 2 2 2 2 2 1 1 2 3 3 4 4 4 4 5 5 5 5 5 6 7 8 8 6 4 2 0 -1 -3 -4 -6 -8 -9 -10 -10 -11 -12 -12 -13 -14 -14 -15 -16 -17 -18 -20 -21 -22 -22 -22 -23 -24 -26 -29 -30 -32 -32 -32 -31 -31 -30 -30 -30 -30 -29 -29 -28 -28 -28 -28 -26 -24 -22 -20 -19 -18 -18 -17 -17 -16 -14 -12 -11 -10 -10 -10 -11 -11 -11 -10 -11 -12 -14 -15 -15 -13 -12 -12 -14 -16 -17 -16 -16 -16 -16 -17 -18 -18 -17 -18 -18 -19 -20 -21 -22 -21 -21 -21 -22 -23 -24 -24 -23 -21 -19 -18 -18 -18 -18 -19 -20 -20 -21 -20 -20 -19 -18 -17 -16 -15 -14 -13 -12 -12 -11 -10 -10 -9 -10 -10 -11 -11 -11 -10 -10 -10 -10 -11 -12 -12 -13 -14 -14 -15 -15 -15 -15 -16 -17 -18 -20 -22 -24 -25 -25 -24 -22 -20 -18 -18 -19 -20 -21 -21 -20 -19 -18 -16 -16 -16 -15 -15 -15 -14 -14 -14 -15 -15 -14 -13 -12 -12 -11 -11 -11 -10 -10 -9 -8 -8 -8 -8 -8 -9 -10 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -22 -22 -21 -19 -17 -14 -11 -10 -9 -9 -9 -8 -8 -7 -6 -6 -6 -6 -5 -4 -4 -4 -4 -4 -4 -4 -3 -2 -1 -0 -1 -1 -1 -1 -1 0 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 0 -1 -2 -2 -3 -4 -5 -5 -2 9 24 27 26 24 23 23 24 24 24 23 22 22 22 22 23 22 20 18 17 17 17 17 16 16 -24 -24 -23 -21 -19 -17 -17 -20 -24 -28 -31 -33 -34 -34 -34 -33 -31 -30 -29 -28 -27 -27 -28 -28 -29 -28 -26 -25 -23 -23 -23 -23 -22 -19 -17 -15 -13 -11 -7 -3 1 5 9 10 9 6 -0 -8 -18 -23 -23 -17 -8 -2 -1 -1 2 7 14 20 26 30 32 33 33 33 32 31 30 29 30 30 28 26 24 22 20 19 19 22 26 28 23 15 14 15 16 14 9 3 -0 1 3 1 0 4 7 6 5 4 3 3 4 4 3 2 2 3 4 5 6 5 5 5 6 7 7 6 7 8 9 9 9 8 6 3 1 -0 -2 -3 -5 -6 -7 -8 -8 -9 -10 -11 -12 -13 -13 -14 -14 -16 -17 -19 -20 -21 -21 -21 -22 -23 -25 -28 -29 -31 -31 -31 -30 -30 -30 -30 -29 -29 -28 -28 -27 -27 -27 -27 -26 -25 -23 -21 -20 -18 -17 -16 -15 -14 -13 -12 -12 -11 -11 -11 -11 -11 -10 -10 -11 -13 -15 -15 -14 -13 -12 -14 -16 -17 -17 -16 -15 -16 -17 -17 -17 -17 -18 -18 -18 -19 -20 -21 -21 -21 -22 -22 -23 -24 -23 -23 -21 -20 -19 -18 -17 -17 -18 -18 -19 -20 -20 -20 -19 -19 -18 -17 -17 -16 -14 -13 -12 -12 -11 -10 -9 -9 -9 -9 -10 -10 -10 -9 -9 -9 -9 -9 -10 -11 -12 -13 -14 -14 -15 -15 -15 -15 -16 -17 -19 -20 -22 -24 -25 -25 -23 -21 -19 -19 -19 -19 -20 -20 -20 -19 -18 -18 -17 -17 -17 -17 -16 -15 -15 -15 -16 -16 -16 -15 -14 -13 -12 -12 -12 -12 -11 -10 -9 -8 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -24 -22 -20 -17 -14 -12 -11 -10 -10 -10 -9 -8 -7 -7 -7 -7 -6 -6 -5 -5 -5 -5 -5 -5 -4 -3 -3 -2 -2 -2 -2 -2 -1 -1 0 1 1 2 2 2 2 2 2 2 2 2 2 2 2 1 1 -0 -1 -1 -1 -2 -3 -4 -4 2 14 27 27 25 24 23 23 24 24 24 23 22 22 22 22 22 21 19 17 16 16 17 17 17 -25 -24 -21 -16 -13 -10 -9 -11 -14 -18 -22 -24 -25 -26 -27 -27 -27 -26 -26 -27 -27 -27 -27 -27 -27 -27 -28 -28 -27 -25 -23 -21 -21 -19 -17 -15 -14 -12 -9 -6 -2 2 5 8 9 9 7 3 -5 -15 -23 -25 -22 -16 -10 -7 -3 2 8 15 22 28 33 35 36 35 34 33 32 32 33 33 32 30 28 26 24 22 23 26 28 26 18 12 9 8 9 10 8 1 -3 -3 0 1 -0 3 6 8 7 6 5 5 5 5 5 3 3 3 5 6 7 6 6 6 7 8 8 8 8 9 10 11 11 10 8 5 3 1 -1 -2 -3 -4 -5 -5 -6 -7 -8 -9 -10 -11 -12 -12 -13 -14 -16 -17 -19 -19 -20 -21 -21 -22 -24 -26 -28 -29 -29 -29 -29 -28 -28 -28 -28 -28 -27 -26 -26 -26 -26 -26 -26 -25 -24 -22 -21 -19 -17 -16 -14 -13 -12 -12 -11 -11 -11 -11 -10 -10 -10 -10 -12 -14 -14 -14 -13 -12 -13 -15 -17 -17 -16 -16 -16 -16 -17 -17 -18 -18 -18 -19 -19 -20 -20 -20 -21 -22 -23 -24 -24 -23 -22 -21 -20 -19 -18 -17 -17 -16 -17 -17 -18 -19 -19 -19 -19 -18 -18 -17 -16 -16 -15 -14 -13 -12 -11 -10 -9 -8 -8 -9 -9 -9 -9 -9 -8 -8 -8 -8 -9 -10 -11 -12 -13 -13 -14 -14 -15 -15 -16 -16 -17 -19 -21 -23 -25 -26 -24 -23 -21 -20 -19 -19 -19 -19 -19 -19 -19 -18 -18 -18 -18 -18 -18 -17 -16 -16 -16 -17 -17 -17 -15 -14 -13 -12 -12 -12 -12 -11 -10 -9 -8 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -24 -23 -20 -17 -14 -12 -11 -11 -11 -11 -10 -9 -8 -8 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -5 -5 -4 -3 -3 -2 -2 -2 -1 -1 0 1 2 2 2 1 1 1 1 1 2 2 2 2 2 1 1 0 -0 -0 -1 -2 -3 -4 -3 2 22 27 27 25 23 23 23 24 25 25 24 22 22 22 22 21 19 17 16 16 16 17 17 -25 -22 -17 -11 -7 -5 -5 -8 -10 -12 -13 -13 -13 -13 -14 -14 -15 -16 -18 -20 -21 -21 -20 -19 -18 -18 -21 -25 -27 -26 -23 -19 -19 -18 -17 -16 -14 -13 -11 -9 -6 -3 1 5 7 9 9 7 3 -3 -12 -20 -24 -25 -21 -16 -11 -5 1 8 17 24 30 34 36 36 35 34 33 34 36 36 36 35 34 32 29 28 28 28 27 22 16 11 8 7 6 6 3 -2 -4 -3 0 2 -0 1 6 10 10 8 7 7 7 6 5 4 4 4 5 7 7 6 6 7 7 8 8 9 10 11 12 13 13 12 10 8 6 3 1 -0 -1 -2 -2 -3 -3 -4 -6 -7 -9 -9 -10 -10 -11 -12 -14 -15 -16 -18 -18 -19 -20 -21 -22 -24 -25 -27 -27 -27 -27 -27 -27 -27 -27 -27 -26 -26 -25 -25 -26 -25 -25 -24 -23 -22 -20 -19 -17 -16 -14 -12 -11 -11 -11 -11 -11 -10 -10 -9 -10 -10 -12 -13 -13 -13 -12 -12 -13 -15 -16 -16 -16 -16 -16 -17 -17 -18 -18 -19 -19 -19 -19 -19 -19 -20 -21 -23 -24 -24 -23 -23 -22 -21 -20 -19 -18 -17 -16 -15 -15 -16 -17 -18 -18 -18 -18 -17 -17 -17 -16 -16 -15 -14 -13 -12 -11 -10 -9 -8 -8 -8 -8 -9 -9 -8 -8 -7 -7 -7 -8 -8 -9 -10 -11 -12 -13 -14 -14 -15 -15 -16 -16 -17 -20 -22 -24 -25 -25 -24 -23 -21 -20 -19 -19 -19 -19 -19 -18 -18 -17 -17 -18 -18 -18 -17 -16 -16 -16 -17 -18 -18 -17 -15 -14 -12 -12 -12 -13 -12 -12 -10 -9 -9 -9 -10 -11 -13 -14 -15 -16 -17 -17 -18 -19 -20 -21 -22 -23 -24 -25 -25 -25 -23 -20 -17 -14 -13 -12 -12 -12 -12 -10 -9 -8 -8 -8 -8 -9 -9 -9 -9 -8 -8 -8 -7 -7 -5 -4 -4 -3 -3 -2 -2 -1 -0 0 1 2 1 1 1 1 1 1 1 2 2 2 2 2 2 1 1 1 0 -1 -2 -3 -3 -3 12 23 27 26 24 23 23 24 25 25 25 24 22 22 21 21 20 18 16 16 16 17 17 -24 -18 -11 -5 -2 -2 -4 -7 -9 -9 -7 -6 -5 -4 -4 -4 -4 -5 -7 -10 -12 -11 -9 -6 -4 -4 -7 -14 -21 -25 -23 -19 -18 -18 -17 -17 -15 -14 -13 -11 -9 -6 -3 1 5 7 8 8 7 4 -1 -7 -14 -21 -26 -25 -20 -14 -6 2 11 18 24 29 32 34 34 34 34 36 37 38 39 38 37 36 34 33 33 30 26 22 17 14 11 9 8 6 2 -2 -4 -4 -2 2 4 4 8 11 12 10 9 8 7 7 6 5 4 5 6 7 7 6 6 6 7 7 8 9 11 12 14 15 15 14 12 10 8 6 4 2 1 0 0 0 -0 -2 -3 -5 -6 -7 -8 -8 -9 -10 -11 -12 -14 -15 -16 -17 -18 -19 -20 -21 -23 -24 -24 -25 -25 -25 -25 -26 -26 -26 -25 -25 -24 -24 -24 -24 -23 -22 -21 -20 -19 -18 -17 -16 -14 -12 -11 -10 -10 -11 -10 -10 -9 -9 -9 -10 -11 -11 -12 -11 -11 -12 -13 -15 -15 -15 -15 -16 -16 -17 -18 -18 -19 -19 -20 -20 -20 -19 -19 -20 -22 -23 -23 -23 -23 -22 -21 -20 -20 -19 -18 -16 -15 -14 -14 -14 -16 -17 -17 -17 -17 -16 -16 -16 -16 -15 -15 -14 -13 -12 -11 -10 -9 -8 -8 -8 -8 -8 -8 -8 -7 -7 -6 -6 -7 -7 -8 -9 -10 -10 -11 -13 -14 -15 -15 -15 -15 -17 -19 -21 -23 -24 -25 -25 -24 -22 -20 -19 -18 -18 -18 -18 -18 -17 -17 -16 -16 -16 -16 -16 -16 -16 -16 -17 -17 -18 -18 -17 -15 -13 -12 -12 -12 -13 -13 -12 -11 -10 -10 -10 -11 -13 -15 -16 -17 -17 -17 -18 -18 -19 -21 -22 -23 -24 -24 -25 -25 -25 -23 -20 -17 -15 -13 -13 -14 -13 -12 -11 -10 -9 -9 -9 -10 -11 -11 -11 -10 -10 -10 -9 -9 -7 -6 -5 -4 -4 -3 -3 -2 -1 -0 0 1 1 1 1 1 0 0 1 1 2 2 2 2 2 2 2 2 1 0 -1 -2 -2 -3 0 14 25 27 25 23 23 24 25 26 26 25 24 22 21 20 19 18 17 16 15 16 17 -21 -16 -10 -5 -4 -5 -7 -8 -8 -6 -3 0 2 3 3 3 3 2 1 -2 -4 -4 -0 4 7 7 5 -1 -9 -18 -23 -21 -19 -19 -19 -18 -16 -15 -14 -13 -12 -9 -6 -3 1 4 6 7 8 7 4 1 -4 -10 -17 -25 -28 -24 -14 -1 8 15 21 25 29 32 33 34 35 36 38 40 41 42 42 41 39 38 37 32 28 24 23 20 16 13 10 9 5 1 -2 -3 -0 5 7 6 8 12 14 12 11 9 8 7 6 5 5 5 6 6 6 6 6 6 6 7 8 10 12 14 15 16 17 16 15 13 11 9 7 5 4 3 3 3 3 1 -0 -2 -3 -4 -5 -6 -7 -7 -8 -9 -11 -12 -13 -15 -16 -16 -17 -18 -19 -21 -21 -22 -23 -23 -24 -24 -24 -24 -24 -24 -23 -23 -23 -22 -22 -21 -19 -18 -17 -17 -16 -15 -13 -12 -11 -10 -10 -10 -10 -9 -8 -8 -8 -8 -9 -10 -10 -9 -10 -11 -12 -13 -14 -14 -14 -15 -16 -17 -18 -18 -19 -19 -20 -20 -19 -19 -19 -20 -21 -22 -23 -22 -22 -21 -21 -21 -20 -19 -18 -16 -15 -13 -13 -13 -14 -15 -16 -16 -16 -16 -15 -15 -15 -15 -15 -14 -13 -13 -12 -10 -9 -9 -8 -8 -8 -8 -8 -7 -7 -6 -6 -6 -6 -6 -7 -8 -8 -9 -10 -12 -13 -14 -14 -14 -14 -16 -18 -19 -21 -22 -24 -25 -25 -23 -21 -19 -18 -17 -17 -17 -17 -16 -16 -15 -14 -14 -14 -14 -14 -15 -15 -16 -17 -18 -18 -18 -16 -14 -13 -12 -12 -13 -13 -14 -13 -11 -10 -10 -11 -13 -15 -17 -18 -18 -18 -17 -18 -19 -20 -22 -23 -23 -24 -24 -25 -26 -25 -23 -20 -17 -15 -14 -14 -15 -14 -13 -11 -10 -10 -10 -11 -13 -14 -13 -13 -12 -11 -11 -10 -10 -9 -8 -6 -5 -4 -3 -3 -2 -2 -1 -0 1 1 1 1 0 0 0 1 2 2 2 3 3 3 3 2 2 1 0 -1 -1 -2 -2 6 17 26 26 25 24 24 24 26 27 27 26 24 22 20 19 18 17 15 15 15 16 -18 -16 -13 -11 -11 -11 -9 -8 -5 -1 3 6 7 7 6 5 5 4 3 -0 -2 -2 1 5 9 11 11 8 2 -7 -17 -23 -23 -22 -21 -19 -17 -15 -15 -14 -12 -11 -9 -7 -5 -2 1 3 5 5 3 2 -1 -4 -9 -16 -24 -30 -29 -13 3 15 23 29 31 32 33 34 35 36 38 40 42 44 45 45 42 41 39 36 33 32 30 25 20 15 12 10 6 2 -1 -1 2 7 8 4 4 8 13 13 12 10 9 7 6 6 6 6 7 7 6 6 6 6 7 8 9 12 14 16 17 18 19 18 17 15 13 11 9 7 6 6 6 6 5 5 3 1 -0 -1 -2 -3 -4 -5 -6 -6 -8 -9 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -21 -22 -22 -22 -22 -22 -22 -22 -22 -21 -20 -20 -19 -18 -16 -16 -15 -14 -13 -12 -10 -9 -9 -9 -9 -9 -8 -7 -7 -7 -8 -8 -8 -8 -8 -9 -10 -11 -12 -12 -13 -14 -15 -16 -17 -18 -18 -19 -19 -20 -19 -19 -19 -19 -20 -20 -21 -21 -21 -21 -21 -21 -21 -21 -20 -19 -17 -15 -13 -12 -12 -13 -14 -15 -15 -15 -15 -14 -14 -14 -15 -15 -14 -13 -12 -12 -11 -10 -9 -8 -8 -8 -8 -8 -8 -7 -7 -6 -6 -6 -6 -6 -7 -8 -9 -10 -11 -11 -12 -12 -13 -14 -15 -16 -17 -18 -20 -22 -23 -23 -23 -22 -20 -18 -16 -15 -15 -15 -14 -14 -13 -12 -11 -11 -11 -11 -12 -13 -15 -16 -17 -18 -18 -18 -16 -14 -13 -12 -12 -13 -14 -13 -12 -11 -11 -11 -12 -14 -16 -18 -19 -19 -18 -18 -18 -20 -21 -22 -23 -23 -24 -25 -26 -26 -26 -24 -20 -17 -15 -14 -15 -15 -15 -13 -12 -11 -11 -12 -14 -15 -15 -15 -14 -13 -13 -12 -12 -11 -10 -9 -7 -6 -5 -4 -3 -3 -2 -1 -0 0 1 0 -0 -0 -0 0 1 2 2 3 3 3 3 3 2 2 1 0 -1 -1 -2 -1 5 22 26 26 25 24 24 25 27 27 27 26 23 21 20 18 17 16 14 14 15 -15 -15 -15 -16 -15 -12 -8 -4 -0 4 7 9 10 9 6 4 3 2 1 -2 -5 -5 -3 1 4 8 9 10 8 3 -7 -19 -25 -25 -23 -20 -17 -15 -14 -13 -13 -13 -13 -12 -10 -8 -6 -4 -3 -3 -3 -4 -6 -8 -10 -13 -17 -21 -25 -26 -19 -1 15 24 30 32 34 36 38 39 39 39 41 44 45 45 44 44 43 42 40 38 34 28 23 19 15 11 7 3 1 1 2 4 6 5 5 8 13 14 12 11 9 8 7 7 7 7 7 7 7 7 8 8 9 10 12 14 16 18 20 21 21 20 19 17 16 14 12 10 9 8 8 8 8 8 6 5 3 2 1 -0 -1 -2 -3 -4 -5 -7 -8 -10 -11 -12 -13 -14 -14 -15 -16 -17 -18 -19 -20 -20 -20 -20 -20 -20 -20 -20 -19 -19 -18 -17 -16 -15 -14 -13 -12 -11 -10 -8 -8 -8 -8 -8 -8 -8 -7 -7 -8 -8 -8 -7 -7 -7 -8 -9 -10 -10 -11 -12 -13 -15 -16 -17 -18 -18 -18 -19 -19 -19 -19 -19 -19 -19 -19 -20 -20 -20 -20 -21 -21 -21 -21 -20 -19 -17 -15 -13 -12 -11 -12 -13 -14 -14 -14 -14 -13 -13 -13 -14 -14 -13 -13 -12 -11 -11 -10 -9 -8 -8 -8 -8 -8 -8 -7 -7 -7 -6 -5 -5 -5 -6 -7 -8 -9 -9 -10 -10 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -20 -19 -17 -15 -14 -13 -12 -12 -11 -10 -10 -9 -8 -8 -8 -9 -11 -13 -14 -16 -17 -18 -18 -17 -16 -14 -13 -12 -12 -13 -13 -13 -12 -11 -11 -11 -13 -15 -17 -19 -19 -18 -18 -18 -19 -20 -21 -22 -23 -23 -24 -25 -26 -26 -26 -24 -20 -17 -15 -14 -15 -15 -15 -13 -13 -13 -14 -16 -17 -17 -17 -16 -15 -15 -14 -13 -13 -12 -11 -10 -9 -7 -6 -5 -4 -4 -3 -2 -1 -0 0 -0 -0 -0 0 1 2 2 3 3 4 4 4 3 2 2 1 0 -1 -2 -2 -1 7 21 25 25 25 24 25 26 27 28 27 25 23 21 19 18 16 15 14 13 -9 -10 -11 -11 -10 -7 -3 1 4 7 8 9 9 7 5 3 2 1 -1 -5 -8 -9 -8 -6 -4 -1 3 6 8 7 3 -7 -18 -24 -24 -21 -18 -16 -14 -13 -14 -14 -15 -15 -13 -12 -11 -11 -11 -10 -11 -11 -13 -14 -15 -17 -18 -19 -19 -19 -18 -15 -8 4 17 24 30 36 39 41 41 40 39 39 41 44 46 46 46 44 42 39 37 33 30 26 21 15 9 6 5 4 3 2 5 8 8 10 14 15 13 12 10 9 8 8 8 8 8 8 8 9 10 11 12 13 16 18 20 22 23 24 24 23 21 19 18 16 14 13 12 11 10 10 10 10 9 8 6 5 3 2 1 0 -1 -2 -3 -5 -7 -8 -10 -11 -12 -12 -13 -13 -14 -15 -17 -17 -18 -18 -18 -18 -18 -18 -18 -18 -18 -17 -16 -15 -14 -13 -12 -11 -10 -9 -8 -7 -7 -7 -7 -7 -7 -7 -7 -8 -8 -8 -8 -7 -7 -7 -8 -8 -9 -10 -11 -12 -13 -14 -16 -17 -17 -17 -18 -18 -18 -18 -18 -18 -18 -19 -19 -19 -19 -19 -20 -20 -21 -21 -21 -20 -19 -17 -15 -14 -12 -11 -11 -12 -13 -14 -14 -13 -12 -12 -12 -12 -13 -12 -12 -11 -11 -10 -9 -8 -8 -7 -7 -8 -8 -8 -8 -7 -7 -6 -4 -4 -4 -5 -6 -7 -8 -8 -8 -8 -8 -9 -10 -11 -12 -13 -14 -14 -15 -16 -17 -18 -18 -17 -15 -14 -12 -10 -10 -9 -9 -9 -8 -7 -6 -5 -5 -6 -7 -10 -12 -14 -15 -17 -18 -18 -17 -15 -13 -12 -12 -12 -12 -12 -12 -12 -11 -11 -11 -13 -15 -17 -18 -18 -18 -18 -18 -19 -20 -21 -22 -23 -24 -25 -25 -26 -26 -26 -23 -20 -17 -15 -14 -15 -15 -14 -14 -15 -17 -18 -18 -18 -18 -18 -18 -17 -16 -15 -15 -14 -13 -13 -11 -10 -8 -6 -6 -5 -4 -3 -2 -1 -0 -0 -0 -0 0 1 2 3 3 4 4 4 4 4 3 3 2 1 0 -1 -2 -2 -1 15 22 24 25 24 25 25 27 27 27 26 24 22 20 19 17 15 14 13 0 -1 -1 -2 -1 0 2 3 5 5 6 5 5 4 4 3 3 2 -0 -4 -9 -12 -13 -13 -12 -10 -6 -1 3 5 5 1 -8 -15 -19 -20 -18 -16 -15 -15 -15 -16 -17 -16 -15 -15 -15 -15 -15 -15 -16 -16 -17 -18 -19 -20 -20 -20 -18 -17 -15 -16 -14 -10 -4 9 22 33 39 42 41 38 34 35 39 44 48 47 45 42 40 39 39 38 35 31 26 19 12 8 5 4 2 1 6 10 9 9 12 15 14 12 11 10 9 9 9 9 9 9 10 11 12 14 15 17 19 22 24 26 27 28 27 26 24 22 20 19 18 16 15 14 13 12 12 12 11 10 8 7 5 4 3 2 1 -1 -2 -4 -5 -7 -9 -10 -11 -11 -12 -12 -13 -14 -15 -16 -16 -16 -16 -16 -16 -17 -17 -17 -16 -15 -14 -13 -13 -12 -11 -10 -9 -8 -7 -6 -6 -6 -6 -6 -6 -6 -7 -8 -8 -8 -8 -7 -7 -7 -8 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -17 -17 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -18 -19 -19 -20 -20 -20 -19 -19 -17 -16 -14 -12 -11 -11 -12 -13 -13 -13 -12 -11 -10 -10 -11 -11 -11 -11 -10 -10 -9 -9 -8 -7 -6 -6 -7 -7 -8 -7 -7 -6 -5 -4 -3 -3 -4 -5 -6 -6 -6 -6 -6 -7 -8 -8 -9 -10 -11 -11 -12 -12 -13 -14 -14 -15 -14 -13 -12 -10 -9 -8 -8 -8 -8 -7 -6 -4 -3 -2 -3 -4 -6 -9 -11 -14 -15 -16 -17 -16 -15 -14 -13 -12 -12 -12 -12 -12 -12 -11 -11 -10 -11 -12 -14 -16 -17 -18 -18 -17 -17 -19 -20 -21 -22 -23 -24 -24 -25 -26 -26 -25 -23 -19 -17 -15 -14 -15 -15 -15 -17 -19 -21 -21 -20 -20 -20 -20 -19 -18 -17 -17 -16 -15 -15 -14 -13 -11 -9 -8 -7 -6 -5 -4 -2 -1 -1 -0 0 1 1 2 3 4 4 4 5 5 4 4 3 3 2 1 0 -1 -1 -2 2 12 21 24 25 24 25 26 27 27 27 25 23 21 20 18 17 15 14 9 6 5 3 3 2 1 0 0 -1 -2 -3 -3 -3 -1 -0 -0 -0 -1 -3 -7 -12 -16 -18 -19 -17 -13 -8 -4 0 2 2 -3 -9 -13 -15 -16 -16 -15 -16 -16 -17 -17 -17 -16 -16 -16 -17 -17 -18 -19 -19 -20 -21 -22 -22 -22 -21 -20 -18 -16 -14 -13 -13 -13 -4 11 24 34 39 40 36 34 36 41 47 49 47 43 40 38 38 40 40 37 32 27 22 15 9 4 1 -0 1 8 12 11 9 11 15 15 13 12 11 10 10 10 9 9 10 12 14 15 16 18 20 23 26 28 29 31 31 30 28 26 24 23 22 21 20 18 17 16 15 14 13 12 11 10 9 7 5 4 3 2 0 -1 -3 -4 -6 -8 -9 -10 -10 -11 -11 -12 -13 -14 -14 -15 -15 -15 -15 -15 -15 -16 -15 -15 -14 -13 -12 -12 -11 -10 -9 -8 -7 -6 -6 -6 -6 -5 -5 -5 -6 -6 -7 -8 -8 -8 -8 -8 -8 -8 -9 -10 -11 -11 -12 -13 -14 -15 -15 -16 -16 -17 -17 -17 -17 -18 -18 -18 -18 -18 -17 -17 -17 -18 -18 -19 -19 -19 -19 -18 -17 -16 -14 -12 -11 -10 -11 -12 -12 -12 -11 -10 -9 -8 -8 -9 -9 -9 -9 -8 -8 -7 -7 -6 -5 -5 -6 -6 -7 -7 -6 -5 -4 -3 -3 -3 -3 -4 -4 -5 -5 -5 -5 -6 -6 -7 -8 -9 -10 -10 -10 -11 -11 -11 -12 -12 -12 -11 -10 -9 -8 -7 -7 -7 -7 -7 -6 -4 -2 -1 -1 -1 -3 -6 -9 -11 -14 -15 -15 -15 -15 -14 -13 -13 -12 -12 -12 -12 -12 -11 -11 -10 -9 -10 -11 -13 -15 -17 -17 -17 -17 -18 -19 -20 -21 -22 -23 -23 -24 -24 -25 -25 -24 -22 -19 -16 -15 -15 -15 -16 -17 -20 -23 -23 -23 -22 -21 -21 -21 -21 -20 -19 -18 -18 -17 -17 -16 -15 -13 -11 -10 -9 -7 -6 -4 -2 -1 -0 0 1 2 3 3 4 4 5 5 5 5 5 4 3 3 2 1 0 -0 -1 -2 5 17 20 23 24 24 25 26 27 26 25 23 22 20 19 17 16 14 12 9 5 1 -1 -3 -5 -7 -8 -9 -11 -12 -13 -11 -10 -9 -8 -7 -5 -5 -6 -9 -14 -18 -20 -20 -17 -14 -10 -6 -3 -2 -3 -6 -10 -12 -14 -15 -16 -17 -17 -17 -17 -17 -17 -17 -17 -17 -18 -19 -20 -21 -21 -22 -23 -23 -23 -23 -21 -19 -17 -16 -14 -13 -11 -11 -2 11 24 32 37 36 37 40 45 48 48 45 41 39 38 39 40 39 35 31 26 22 17 11 5 1 -1 -0 6 12 13 11 10 13 15 14 12 12 11 11 10 10 10 11 13 16 18 19 21 23 26 29 31 32 33 34 33 31 29 27 26 25 24 23 22 20 18 17 15 14 13 12 11 10 8 6 5 3 2 1 -0 -2 -3 -5 -6 -8 -9 -9 -9 -10 -11 -12 -12 -13 -13 -13 -13 -14 -14 -14 -15 -14 -13 -12 -12 -11 -11 -10 -9 -8 -7 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -6 -7 -8 -8 -8 -9 -9 -9 -10 -10 -11 -11 -12 -13 -13 -14 -14 -15 -15 -16 -16 -16 -17 -17 -18 -18 -18 -17 -17 -16 -16 -16 -17 -17 -18 -18 -18 -17 -16 -15 -13 -11 -10 -9 -10 -10 -11 -11 -10 -9 -7 -6 -6 -6 -6 -7 -7 -7 -7 -6 -5 -4 -4 -3 -4 -5 -5 -5 -5 -4 -3 -3 -2 -2 -2 -2 -3 -3 -3 -4 -4 -4 -5 -6 -7 -8 -9 -9 -9 -9 -10 -10 -10 -9 -9 -9 -9 -8 -7 -7 -7 -7 -7 -6 -6 -4 -3 -1 -0 -0 -1 -4 -6 -9 -11 -13 -14 -14 -15 -14 -14 -13 -12 -12 -12 -12 -12 -11 -11 -10 -9 -8 -9 -10 -12 -14 -16 -16 -16 -17 -18 -19 -20 -21 -21 -22 -22 -23 -23 -24 -24 -23 -22 -19 -17 -15 -15 -15 -17 -19 -23 -25 -25 -24 -23 -23 -23 -23 -23 -22 -21 -20 -20 -20 -20 -19 -17 -15 -14 -12 -10 -9 -6 -4 -2 -1 1 2 3 3 4 4 5 5 5 5 5 5 5 4 4 3 2 1 1 -0 -1 0 5 15 20 22 23 24 25 26 26 25 24 22 21 19 18 16 15 13 9 4 -2 -5 -7 -9 -11 -12 -13 -15 -17 -18 -19 -18 -18 -17 -15 -12 -10 -8 -9 -11 -14 -17 -19 -18 -17 -14 -12 -9 -6 -5 -7 -10 -12 -13 -14 -16 -18 -19 -19 -18 -17 -16 -15 -15 -16 -18 -19 -20 -21 -21 -21 -22 -23 -24 -23 -21 -19 -17 -16 -16 -16 -14 -11 -10 -1 11 21 29 34 38 43 46 48 47 44 41 40 40 40 39 37 34 29 25 23 20 14 8 2 -1 -2 0 6 10 11 6 7 13 15 13 12 12 12 11 10 11 13 16 18 20 22 24 26 29 31 33 34 35 35 34 33 31 29 28 27 27 26 24 23 21 19 17 15 14 13 12 10 9 7 5 4 2 1 0 -1 -2 -3 -5 -6 -7 -8 -8 -9 -10 -10 -11 -12 -12 -12 -13 -13 -14 -14 -14 -13 -12 -11 -10 -10 -10 -9 -8 -7 -6 -5 -6 -6 -6 -6 -6 -5 -5 -5 -5 -6 -7 -8 -9 -10 -10 -10 -10 -10 -11 -11 -11 -12 -12 -13 -13 -13 -13 -14 -14 -15 -15 -16 -17 -17 -17 -17 -16 -16 -15 -15 -15 -15 -16 -16 -16 -17 -16 -15 -14 -12 -10 -9 -8 -8 -8 -9 -9 -9 -7 -6 -4 -4 -4 -4 -4 -4 -5 -5 -4 -4 -3 -2 -2 -2 -2 -3 -3 -3 -3 -2 -2 -1 -1 -1 -1 -1 -1 -2 -2 -2 -3 -3 -5 -6 -7 -8 -8 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -7 -7 -6 -6 -6 -6 -6 -5 -4 -2 -1 -1 -1 -2 -4 -6 -9 -11 -13 -14 -14 -14 -13 -13 -12 -12 -12 -12 -12 -11 -11 -10 -9 -7 -7 -8 -9 -11 -13 -15 -16 -16 -17 -18 -19 -19 -19 -20 -20 -21 -21 -22 -23 -23 -22 -21 -19 -17 -16 -15 -16 -18 -21 -24 -26 -26 -25 -25 -24 -25 -25 -25 -24 -24 -23 -23 -23 -22 -22 -20 -18 -16 -14 -12 -10 -7 -4 -2 0 2 3 4 4 5 5 5 5 5 5 5 5 5 4 4 3 2 2 1 -0 -2 -3 0 12 19 22 23 23 24 25 25 25 23 21 20 18 17 15 12 9 5 1 -2 -5 -7 -8 -9 -11 -13 -15 -18 -21 -22 -23 -23 -21 -18 -15 -12 -11 -11 -13 -15 -17 -18 -18 -17 -16 -13 -11 -8 -8 -11 -14 -15 -15 -16 -17 -19 -19 -19 -17 -15 -12 -12 -12 -14 -17 -19 -20 -20 -20 -21 -22 -23 -23 -21 -19 -17 -16 -16 -17 -17 -15 -12 -8 -0 11 20 29 37 43 46 47 45 43 42 41 41 40 39 37 34 29 24 22 21 17 11 4 -0 -2 -2 4 10 13 8 6 13 15 15 13 13 13 12 12 13 15 18 21 23 25 27 29 32 34 35 36 36 36 35 34 33 32 30 30 29 28 27 25 23 21 18 17 15 14 12 11 9 7 5 4 3 2 1 -0 -1 -2 -4 -5 -6 -7 -7 -8 -9 -10 -10 -11 -11 -11 -12 -13 -13 -13 -13 -12 -11 -9 -8 -8 -8 -7 -7 -6 -6 -6 -6 -7 -7 -7 -7 -6 -6 -6 -6 -7 -8 -9 -10 -11 -11 -11 -11 -11 -11 -10 -11 -11 -11 -11 -12 -12 -12 -12 -13 -13 -14 -15 -16 -16 -16 -15 -15 -14 -14 -14 -14 -14 -14 -15 -15 -15 -15 -14 -13 -11 -9 -7 -6 -6 -6 -7 -7 -7 -5 -4 -2 -1 -1 -1 -1 -2 -2 -2 -2 -2 -1 0 1 1 1 0 -1 -1 -1 -1 -0 0 1 1 1 1 1 1 0 -0 -1 -2 -3 -4 -6 -7 -7 -8 -8 -8 -7 -7 -6 -6 -7 -7 -8 -7 -7 -6 -6 -6 -6 -6 -5 -5 -4 -3 -2 -2 -2 -3 -4 -7 -9 -11 -12 -13 -13 -13 -12 -12 -11 -11 -11 -11 -11 -11 -10 -9 -7 -6 -6 -7 -8 -10 -13 -14 -15 -16 -16 -17 -17 -17 -18 -18 -19 -19 -20 -21 -21 -21 -21 -20 -18 -16 -16 -16 -17 -20 -22 -25 -27 -27 -26 -26 -26 -26 -27 -26 -26 -26 -25 -25 -25 -25 -24 -23 -21 -19 -16 -14 -10 -7 -4 -1 2 3 4 5 5 5 5 5 5 5 5 5 5 4 4 3 3 2 2 1 -0 -2 -7 6 15 19 21 22 23 24 25 25 24 22 21 19 17 15 10 9 7 5 2 -1 -3 -5 -6 -8 -9 -11 -14 -17 -21 -24 -25 -24 -22 -19 -15 -14 -14 -14 -15 -16 -17 -18 -18 -18 -16 -14 -11 -10 -11 -15 -18 -19 -18 -17 -16 -17 -18 -18 -14 -9 -5 -3 -4 -10 -15 -18 -19 -19 -20 -20 -21 -21 -20 -17 -15 -14 -14 -16 -17 -17 -13 -9 -4 3 12 23 34 41 45 45 43 41 40 40 40 40 38 35 32 29 25 24 22 16 9 4 1 1 0 2 5 9 10 6 10 14 16 15 15 15 14 14 15 18 22 24 26 27 29 32 34 35 36 37 37 37 36 36 35 34 32 32 31 30 28 26 24 22 20 18 16 14 13 11 9 7 5 4 3 2 1 0 -1 -2 -3 -4 -5 -6 -6 -7 -8 -9 -10 -10 -11 -11 -12 -12 -13 -13 -12 -11 -9 -8 -7 -6 -6 -6 -6 -5 -6 -6 -7 -8 -8 -8 -8 -7 -7 -7 -8 -9 -10 -10 -11 -12 -12 -12 -12 -11 -10 -10 -10 -10 -10 -10 -10 -10 -11 -11 -11 -12 -13 -14 -14 -14 -14 -14 -13 -13 -12 -12 -12 -12 -13 -13 -14 -14 -14 -13 -11 -9 -7 -5 -4 -3 -3 -4 -5 -4 -3 -2 -0 1 2 2 2 1 1 0 0 1 2 3 3 4 4 4 3 2 1 1 2 2 3 3 3 3 3 3 3 2 1 -0 -2 -3 -4 -5 -6 -6 -6 -6 -6 -5 -5 -5 -6 -7 -7 -7 -7 -6 -6 -6 -6 -6 -5 -5 -5 -4 -3 -3 -2 -2 -3 -5 -7 -9 -11 -12 -12 -12 -11 -11 -10 -10 -11 -11 -11 -10 -10 -8 -7 -6 -4 -4 -5 -7 -10 -12 -13 -14 -14 -14 -15 -15 -15 -16 -16 -17 -18 -18 -19 -19 -19 -19 -18 -17 -15 -15 -16 -18 -20 -23 -25 -26 -27 -27 -27 -27 -27 -28 -27 -27 -27 -27 -27 -27 -27 -26 -25 -23 -20 -17 -14 -10 -6 -2 1 3 4 5 5 6 6 6 6 6 6 5 5 5 4 3 2 2 2 2 1 -0 -3 0 7 16 19 20 21 22 23 24 25 24 22 20 18 16 6 5 5 4 2 -1 -4 -6 -7 -7 -7 -8 -9 -11 -15 -21 -24 -25 -23 -20 -18 -16 -17 -17 -17 -16 -17 -18 -19 -18 -17 -16 -14 -12 -11 -13 -18 -23 -22 -19 -15 -13 -13 -14 -12 -7 1 7 12 11 1 -11 -19 -20 -20 -20 -19 -18 -17 -14 -12 -10 -10 -12 -15 -17 -14 -9 -5 -1 5 16 29 38 43 45 44 42 41 41 41 40 37 34 31 29 27 25 22 16 9 3 2 4 4 3 4 8 12 9 11 14 16 16 16 16 16 17 19 21 24 27 28 30 31 33 35 37 37 38 38 37 37 37 36 36 34 33 32 31 29 27 25 23 21 19 17 15 13 11 9 7 6 5 3 3 2 1 0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -10 -11 -11 -12 -12 -12 -12 -11 -10 -8 -7 -6 -5 -5 -5 -5 -5 -6 -7 -8 -8 -9 -9 -9 -8 -9 -9 -10 -11 -11 -11 -11 -12 -12 -12 -11 -11 -10 -10 -10 -9 -9 -9 -9 -9 -10 -10 -11 -11 -12 -12 -12 -12 -12 -12 -12 -11 -10 -10 -10 -11 -11 -12 -12 -12 -12 -11 -10 -8 -6 -4 -2 -1 -0 -1 -2 -2 -1 0 2 3 4 5 5 5 4 3 3 4 4 5 6 8 8 8 7 5 4 4 4 5 5 5 5 5 5 5 5 4 3 2 0 -1 -2 -3 -4 -5 -5 -5 -4 -4 -4 -4 -5 -5 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -4 -5 -7 -9 -10 -11 -11 -10 -10 -9 -9 -9 -10 -10 -10 -9 -8 -6 -5 -3 -2 -2 -4 -7 -9 -11 -11 -11 -12 -12 -13 -13 -14 -14 -15 -15 -16 -16 -17 -17 -17 -16 -16 -15 -14 -15 -16 -18 -20 -23 -25 -26 -26 -27 -27 -27 -28 -28 -28 -28 -28 -28 -29 -29 -29 -28 -26 -24 -21 -17 -13 -8 -4 -1 1 3 5 6 6 7 7 6 6 6 6 5 5 4 3 2 2 2 2 2 2 -0 -5 -1 12 16 18 19 20 22 23 24 24 23 21 18 16 -3 -3 -4 -4 -6 -8 -10 -11 -10 -9 -7 -5 -4 -5 -7 -14 -21 -23 -22 -20 -18 -18 -18 -18 -18 -18 -17 -18 -18 -18 -18 -17 -16 -15 -13 -13 -15 -20 -23 -21 -16 -11 -8 -9 -8 -5 2 10 20 25 25 23 18 9 -17 -20 -19 -15 -11 -8 -6 -5 -6 -9 -13 -17 -17 -12 -5 -0 3 11 22 32 40 44 46 46 45 44 43 41 38 35 33 31 28 25 22 17 10 5 3 5 7 6 5 7 12 13 12 12 14 17 17 17 18 20 22 25 27 29 30 32 33 35 37 38 39 39 39 39 39 38 38 37 36 35 33 32 30 28 26 24 22 20 18 16 14 12 10 8 6 5 4 3 2 1 0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -10 -11 -11 -12 -12 -11 -11 -10 -8 -7 -6 -5 -4 -4 -4 -4 -5 -6 -7 -8 -8 -9 -9 -9 -9 -10 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -10 -9 -8 -8 -8 -9 -9 -10 -10 -10 -11 -10 -10 -10 -10 -10 -10 -10 -9 -9 -9 -9 -10 -10 -11 -11 -11 -10 -9 -7 -5 -2 0 2 2 2 1 1 2 3 4 5 6 7 8 8 7 7 6 6 7 8 9 11 12 11 10 9 8 7 7 7 7 7 7 6 6 6 6 6 5 4 2 1 -1 -2 -2 -3 -3 -3 -3 -3 -3 -3 -4 -4 -5 -6 -6 -6 -5 -5 -5 -4 -4 -4 -4 -5 -5 -5 -4 -3 -3 -3 -4 -6 -8 -9 -10 -10 -9 -8 -8 -8 -8 -8 -8 -8 -8 -7 -5 -4 -2 -1 -0 -2 -4 -6 -7 -8 -9 -9 -10 -11 -12 -13 -13 -13 -14 -14 -14 -14 -14 -15 -15 -15 -14 -13 -13 -14 -16 -18 -20 -23 -24 -25 -26 -26 -27 -27 -28 -28 -28 -29 -29 -30 -30 -30 -30 -29 -26 -23 -20 -15 -11 -7 -3 0 2 4 5 7 7 8 7 7 7 6 5 5 4 3 2 2 2 3 3 3 2 -1 0 7 13 15 17 18 20 22 23 24 23 22 19 17 -14 -15 -15 -15 -17 -17 -17 -16 -14 -11 -7 -4 -2 -1 -2 -6 -13 -18 -19 -17 -17 -18 -19 -18 -17 -16 -16 -18 -19 -19 -19 -19 -19 -18 -17 -15 -14 -16 -20 -22 -19 -13 -7 -4 -3 -2 2 10 21 29 32 33 33 27 12 9 9 10 9 8 7 5 2 -3 -9 -17 -21 -16 -7 -0 4 9 18 28 37 44 48 49 49 47 45 42 39 38 36 34 30 26 23 18 11 6 5 7 10 11 11 11 13 15 12 10 13 17 18 19 21 23 25 27 29 31 32 33 35 36 38 39 40 40 40 40 40 40 39 39 38 36 35 33 31 30 27 25 23 22 20 17 15 13 10 9 7 6 5 4 3 2 1 0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -11 -11 -11 -11 -10 -8 -7 -6 -5 -4 -3 -3 -3 -4 -5 -6 -6 -7 -8 -8 -9 -9 -10 -10 -11 -11 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -9 -9 -8 -8 -8 -8 -9 -9 -10 -10 -9 -9 -8 -8 -8 -8 -9 -8 -8 -7 -7 -7 -8 -8 -9 -9 -9 -9 -8 -6 -4 -1 2 3 5 4 4 4 4 5 6 7 8 9 10 10 10 10 9 9 10 11 12 14 15 15 14 12 11 10 9 9 9 9 8 8 7 7 7 7 6 5 4 2 1 0 -1 -1 -2 -2 -2 -2 -2 -2 -2 -3 -4 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -5 -5 -5 -4 -3 -3 -4 -5 -7 -8 -9 -9 -8 -7 -7 -6 -6 -6 -6 -6 -6 -5 -4 -3 -1 0 1 0 -1 -3 -4 -5 -6 -7 -7 -9 -10 -11 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -12 -12 -13 -14 -15 -18 -20 -22 -24 -24 -25 -25 -26 -27 -28 -28 -29 -29 -30 -31 -31 -31 -30 -28 -25 -22 -18 -13 -9 -5 -2 1 4 5 7 8 9 9 8 8 7 6 5 4 3 3 2 2 3 4 4 3 2 0 3 9 13 15 17 18 20 21 22 23 22 20 18 -24 -24 -24 -24 -24 -23 -21 -18 -16 -14 -11 -8 -6 -5 -5 -5 -8 -13 -16 -17 -16 -18 -18 -18 -17 -16 -17 -19 -20 -20 -20 -20 -21 -21 -20 -19 -17 -16 -17 -20 -21 -17 -10 -1 3 5 7 13 22 28 31 32 33 33 32 31 30 28 25 22 19 17 14 10 4 -4 -19 -18 -10 -1 5 10 18 27 36 44 48 50 50 49 46 43 41 40 39 36 32 27 24 18 12 7 6 9 14 18 18 16 15 14 10 8 10 15 19 21 23 26 28 30 31 32 33 35 36 38 39 40 41 42 42 41 41 41 41 41 40 38 37 35 33 31 28 26 24 23 21 19 16 14 11 9 8 6 6 5 4 3 2 1 -0 -1 -2 -3 -4 -6 -6 -7 -8 -9 -10 -11 -11 -11 -10 -9 -7 -6 -5 -4 -3 -3 -3 -3 -4 -4 -5 -6 -6 -7 -7 -8 -9 -9 -10 -11 -11 -11 -11 -11 -10 -10 -9 -9 -9 -10 -10 -9 -9 -8 -7 -7 -7 -8 -8 -9 -9 -9 -8 -7 -6 -6 -6 -7 -7 -7 -6 -6 -5 -5 -6 -6 -7 -7 -8 -8 -7 -6 -3 -0 3 5 7 7 7 6 6 7 8 9 10 11 12 12 13 12 12 12 12 13 14 16 17 17 16 15 13 12 11 11 11 10 10 9 9 9 9 8 8 6 5 3 2 2 1 0 -0 -1 -1 -1 -1 -1 -1 -2 -3 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -4 -4 -5 -5 -5 -4 -3 -4 -4 -6 -7 -8 -8 -7 -7 -6 -5 -5 -4 -4 -4 -5 -4 -4 -2 -1 1 2 2 1 -0 -1 -2 -3 -4 -5 -6 -8 -10 -11 -11 -11 -11 -10 -9 -9 -9 -10 -11 -11 -11 -11 -11 -12 -13 -15 -17 -19 -21 -22 -23 -23 -24 -26 -27 -28 -28 -29 -30 -30 -31 -32 -31 -29 -26 -23 -19 -15 -11 -7 -4 -0 3 5 7 9 10 10 10 9 8 7 5 4 3 3 3 3 4 5 5 5 3 1 0 5 10 13 15 16 18 19 21 21 21 20 18 -28 -28 -28 -28 -27 -25 -23 -22 -21 -21 -19 -18 -17 -17 -15 -12 -10 -12 -15 -17 -18 -19 -19 -18 -18 -17 -18 -20 -21 -21 -21 -21 -22 -22 -22 -21 -20 -19 -19 -19 -20 -20 -16 -9 2 10 15 20 25 27 28 30 32 33 34 33 32 31 30 28 27 26 25 24 22 18 -4 -8 -5 1 8 14 22 30 38 44 47 49 50 49 47 45 44 43 41 37 32 28 23 17 11 8 8 13 20 21 20 18 16 13 10 8 8 11 18 23 26 29 31 32 33 34 35 36 37 39 40 42 43 43 43 43 43 43 43 42 42 41 39 37 35 32 30 27 25 24 22 20 17 15 12 10 8 7 6 6 5 4 3 2 1 -0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -9 -10 -9 -9 -8 -6 -5 -4 -3 -2 -2 -3 -3 -3 -4 -4 -4 -5 -5 -6 -7 -8 -9 -9 -10 -10 -10 -10 -10 -9 -9 -8 -8 -8 -8 -9 -8 -8 -7 -7 -7 -7 -7 -8 -8 -8 -8 -7 -5 -5 -5 -5 -5 -5 -5 -5 -4 -3 -3 -3 -4 -5 -5 -6 -6 -6 -5 -3 0 4 7 9 9 9 9 8 9 9 10 12 13 13 14 15 15 14 14 14 15 16 18 19 19 18 17 15 14 13 12 12 12 11 11 10 10 10 9 8 7 6 5 4 3 2 2 1 0 0 0 0 -0 -1 -1 -2 -3 -3 -3 -3 -4 -4 -4 -3 -3 -3 -3 -4 -4 -5 -5 -4 -4 -3 -4 -5 -5 -6 -6 -6 -6 -5 -4 -4 -3 -3 -3 -4 -4 -3 -2 -1 1 3 4 4 3 2 1 0 -1 -2 -3 -5 -7 -9 -10 -10 -10 -9 -8 -7 -7 -7 -8 -9 -10 -10 -10 -10 -11 -12 -14 -15 -17 -19 -20 -21 -22 -24 -25 -27 -28 -28 -29 -30 -31 -32 -32 -30 -27 -24 -20 -17 -14 -10 -6 -2 2 5 7 9 11 12 12 11 10 8 6 4 3 3 3 4 5 6 6 6 5 2 -1 3 7 10 13 15 16 17 19 20 20 20 18 -26 -27 -28 -28 -28 -27 -27 -27 -28 -28 -28 -26 -24 -23 -22 -19 -15 -13 -14 -17 -19 -20 -20 -19 -19 -18 -19 -20 -21 -21 -22 -22 -23 -23 -23 -23 -22 -22 -22 -21 -22 -22 -23 -21 -10 11 23 26 27 26 25 26 29 31 34 35 34 34 33 31 30 29 28 27 26 24 24 19 15 14 17 22 28 35 41 45 48 49 50 49 47 45 44 43 40 37 33 28 22 16 11 10 14 21 23 22 20 18 17 15 13 11 11 12 17 25 29 31 33 34 35 36 36 37 39 40 42 43 44 45 45 45 45 44 44 44 44 43 41 39 36 34 31 28 26 25 23 21 19 16 13 11 10 8 7 7 6 5 3 2 1 0 -1 -2 -3 -3 -4 -5 -6 -7 -7 -8 -8 -8 -8 -7 -6 -5 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -5 -7 -7 -8 -9 -9 -9 -9 -9 -8 -7 -6 -6 -6 -7 -7 -7 -6 -6 -6 -6 -6 -6 -7 -7 -6 -6 -5 -4 -3 -3 -3 -3 -3 -3 -2 -1 -1 -1 -1 -1 -2 -3 -4 -5 -5 -4 -2 1 4 8 11 12 11 11 10 10 11 12 13 14 15 16 16 16 16 16 16 16 17 19 20 20 20 19 17 16 14 14 14 13 13 12 12 11 11 10 9 8 7 6 5 4 3 3 2 2 1 1 1 1 0 -0 -1 -1 -2 -2 -2 -3 -3 -3 -3 -3 -2 -2 -3 -4 -5 -5 -4 -4 -3 -3 -3 -4 -4 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -4 -3 -3 -1 2 5 6 7 6 5 4 3 3 2 0 -2 -5 -7 -9 -9 -9 -8 -6 -5 -4 -4 -5 -7 -8 -8 -8 -8 -9 -9 -10 -11 -13 -14 -15 -17 -19 -21 -23 -25 -26 -27 -28 -29 -30 -31 -31 -30 -28 -24 -21 -19 -16 -13 -9 -5 -0 4 7 10 12 13 13 13 12 10 8 5 3 3 4 5 7 8 8 8 6 4 1 2 5 8 11 13 14 16 17 18 19 19 18 -24 -25 -26 -26 -27 -27 -28 -30 -32 -33 -32 -29 -26 -24 -22 -20 -17 -13 -12 -14 -18 -21 -21 -20 -19 -18 -17 -17 -18 -20 -21 -22 -23 -23 -24 -24 -24 -24 -24 -25 -26 -26 -27 -27 -26 4 24 27 27 25 24 24 25 28 32 34 36 35 34 32 30 30 29 29 28 27 27 27 28 28 28 30 35 41 46 49 50 51 51 50 48 47 45 43 41 38 34 29 22 16 12 12 17 23 23 21 19 20 19 17 14 13 14 17 21 27 31 34 35 36 37 37 38 39 41 42 43 45 46 46 47 47 47 46 46 46 46 45 44 41 39 35 32 29 27 26 24 23 20 18 15 13 11 10 9 8 7 5 4 3 2 1 0 -1 -2 -3 -4 -4 -5 -6 -6 -7 -7 -7 -7 -7 -6 -5 -5 -4 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -3 -4 -5 -6 -6 -7 -7 -7 -7 -7 -6 -6 -5 -5 -5 -5 -5 -5 -4 -4 -4 -5 -5 -5 -5 -5 -4 -3 -2 -2 -2 -2 -1 -1 -1 0 1 2 2 2 2 1 -1 -2 -3 -3 -4 -3 -2 1 5 9 12 14 14 13 13 12 13 14 15 15 16 17 18 18 18 18 17 18 18 19 20 21 21 20 19 17 16 15 15 14 14 14 13 13 12 11 10 9 8 7 6 5 4 4 3 3 2 2 2 1 1 1 0 -0 -0 -1 -1 -1 -2 -2 -3 -2 -2 -2 -2 -3 -4 -5 -5 -4 -3 -3 -3 -3 -3 -3 -3 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -2 -0 3 6 9 10 10 9 8 7 6 5 3 1 -1 -4 -6 -8 -8 -7 -6 -4 -3 -2 -3 -4 -5 -6 -6 -6 -6 -6 -7 -7 -8 -9 -10 -12 -15 -18 -20 -23 -24 -25 -26 -27 -28 -29 -30 -30 -28 -25 -22 -20 -18 -16 -12 -8 -3 2 7 10 13 14 15 14 14 12 10 7 4 3 3 5 8 9 10 10 8 7 4 3 3 6 8 11 12 14 15 17 17 17 17 -22 -22 -22 -22 -23 -23 -25 -27 -30 -32 -31 -29 -25 -22 -19 -18 -16 -13 -10 -11 -14 -18 -19 -19 -18 -17 -15 -14 -14 -16 -20 -22 -23 -23 -24 -25 -26 -27 -27 -28 -29 -31 -32 -31 -26 -20 -3 17 25 24 22 21 22 24 27 32 35 36 35 32 30 29 30 30 31 31 31 32 34 36 37 39 42 46 50 52 53 54 54 53 52 50 48 46 43 39 34 28 22 17 14 15 19 24 24 23 22 22 20 14 10 10 12 13 14 20 29 34 37 37 38 39 40 41 42 44 45 46 47 48 49 49 49 48 47 47 47 47 46 44 41 37 34 30 28 26 25 24 22 19 17 15 13 12 10 9 8 7 5 4 3 2 1 0 -1 -2 -3 -4 -4 -5 -5 -5 -6 -6 -7 -7 -6 -6 -5 -4 -3 -3 -3 -2 -2 -1 -1 -0 -1 -1 -2 -3 -4 -4 -5 -5 -5 -6 -5 -5 -5 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -1 -1 -0 -0 -0 0 1 1 2 3 4 4 4 4 3 2 1 -0 -1 -2 -3 -3 -2 1 4 9 13 15 16 16 15 14 14 15 16 17 18 19 19 19 19 19 19 19 19 20 21 22 22 21 20 18 17 16 16 15 15 15 15 14 13 12 11 11 10 9 7 6 5 5 4 4 3 3 3 2 2 2 1 1 1 1 0 -0 -1 -1 -2 -2 -1 -1 -2 -2 -3 -4 -5 -4 -4 -3 -2 -1 -1 -1 -1 -2 -2 -3 -3 -3 -3 -2 -2 -2 -2 -1 1 4 8 11 13 13 13 11 10 9 7 6 4 2 -1 -4 -6 -6 -6 -5 -4 -2 -1 -1 -1 -2 -3 -3 -3 -3 -3 -3 -3 -3 -4 -6 -8 -11 -14 -17 -19 -21 -23 -24 -25 -26 -27 -28 -28 -28 -25 -23 -21 -20 -18 -16 -12 -6 -0 5 9 12 14 15 15 15 14 11 9 6 4 4 5 8 10 11 11 10 8 7 5 3 4 6 9 10 12 14 15 16 16 16 -18 -17 -17 -17 -17 -17 -19 -21 -23 -25 -26 -25 -23 -20 -18 -17 -16 -13 -11 -10 -11 -15 -16 -16 -16 -16 -15 -12 -12 -14 -18 -22 -23 -23 -24 -26 -28 -29 -30 -31 -33 -33 -34 -33 -29 -23 -14 -0 17 23 22 20 19 20 22 27 31 33 33 31 28 28 29 32 34 34 35 36 38 40 42 45 47 50 53 54 55 55 55 55 53 52 49 46 44 40 36 30 28 28 27 26 26 27 26 25 25 24 18 9 7 12 16 17 15 16 23 32 38 39 40 41 42 43 44 46 47 48 49 49 50 51 50 50 49 48 48 48 47 46 43 39 35 32 29 27 26 24 23 21 19 17 15 13 12 11 9 8 6 5 4 3 2 1 0 -1 -2 -3 -3 -4 -4 -4 -5 -6 -6 -7 -7 -6 -5 -4 -3 -3 -2 -2 -1 -1 -0 0 0 0 -0 -1 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 -1 -1 -1 -1 -1 -0 -0 0 1 1 1 1 1 2 3 4 5 6 6 6 6 6 5 4 3 1 0 -0 -1 -1 -1 1 4 8 13 16 18 18 17 16 16 16 17 18 19 20 20 20 20 20 19 19 20 20 21 22 22 22 21 20 19 18 17 16 16 16 16 15 14 13 13 12 11 10 9 8 7 6 5 5 5 5 4 3 3 2 2 2 2 2 2 2 1 1 -0 -1 -1 -1 -1 -2 -3 -4 -4 -4 -4 -3 -2 -1 0 1 1 1 -0 -1 -2 -2 -2 -1 -1 -1 -0 1 2 5 9 12 15 16 16 14 13 11 10 9 7 5 2 -1 -3 -4 -5 -4 -3 -1 0 1 1 1 0 -0 -0 -0 -0 0 0 -0 -1 -2 -4 -7 -10 -12 -15 -17 -19 -20 -21 -22 -23 -25 -26 -26 -24 -23 -21 -20 -19 -18 -14 -9 -3 2 8 11 13 15 15 15 14 13 10 8 5 4 6 8 11 12 12 11 10 8 7 5 4 5 7 8 10 12 14 15 15 15 -12 -11 -11 -12 -12 -13 -13 -14 -14 -16 -17 -20 -21 -21 -20 -19 -18 -17 -15 -13 -12 -14 -16 -15 -14 -14 -15 -16 -17 -19 -22 -23 -23 -23 -24 -26 -27 -29 -31 -32 -33 -33 -32 -32 -29 -25 -20 -11 2 19 22 21 19 18 19 22 25 27 28 27 26 26 29 33 36 37 37 38 40 43 46 49 51 52 53 54 54 55 55 53 51 49 47 45 43 41 38 35 34 31 29 27 26 26 21 21 22 21 12 5 6 12 18 21 19 16 22 31 38 40 41 42 43 44 45 47 48 49 50 51 51 52 52 51 50 49 49 49 48 47 45 42 38 34 31 28 27 25 24 23 21 19 17 15 14 12 10 9 7 6 5 4 3 2 1 -0 -1 -2 -2 -3 -3 -4 -5 -5 -6 -7 -7 -6 -5 -4 -3 -2 -1 -1 -0 0 1 1 1 1 1 0 -0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -2 -1 -1 -1 -0 -0 -0 0 1 1 1 2 2 2 3 3 3 3 3 3 4 5 6 7 8 8 8 7 7 6 5 3 2 2 1 0 0 1 3 7 12 16 18 19 18 17 17 17 18 19 20 21 21 21 21 21 20 20 20 20 21 22 23 23 22 21 20 19 18 17 17 17 17 16 16 15 14 14 13 12 10 9 8 7 7 7 7 6 6 5 4 3 3 3 3 3 3 3 3 2 2 1 0 -0 -0 -1 -2 -3 -4 -4 -4 -4 -3 -1 1 2 3 3 2 1 1 0 0 0 1 1 1 2 3 6 9 13 16 18 18 17 16 14 12 11 10 8 5 3 0 -2 -2 -2 -1 -0 2 3 3 3 3 2 2 2 2 3 2 2 1 0 -1 -3 -5 -7 -9 -11 -13 -14 -15 -16 -18 -20 -22 -23 -22 -21 -20 -20 -19 -18 -16 -12 -7 -1 5 9 12 14 15 15 15 13 11 9 6 5 6 9 11 13 13 12 10 9 9 7 6 5 5 7 8 10 12 13 14 14 -7 -8 -9 -10 -11 -12 -12 -11 -10 -9 -10 -15 -21 -24 -25 -25 -23 -23 -21 -18 -15 -14 -16 -17 -17 -17 -18 -19 -20 -22 -23 -23 -22 -22 -23 -24 -26 -29 -31 -33 -33 -31 -29 -28 -27 -24 -22 -18 -10 5 17 21 21 19 19 19 20 21 22 22 23 25 29 34 37 39 39 40 43 46 49 52 52 52 52 51 51 52 51 50 48 46 45 44 43 41 39 36 34 27 22 20 20 19 14 13 15 15 8 4 5 9 16 21 23 21 25 31 37 41 42 43 44 45 47 48 50 51 51 52 53 53 53 53 52 51 50 50 50 49 47 44 40 36 32 30 28 26 26 24 23 21 19 17 15 13 11 10 8 7 5 4 3 2 1 0 -0 -1 -2 -2 -3 -4 -4 -5 -6 -6 -6 -6 -5 -4 -2 -1 -0 -0 0 1 1 2 2 2 2 2 1 1 1 0 0 0 0 0 0 -0 -0 -0 0 0 0 0 0 1 2 2 3 3 3 3 3 3 3 4 4 4 5 6 7 8 9 9 9 9 8 8 7 6 5 4 3 3 2 2 4 6 11 15 18 20 19 18 17 18 19 20 21 21 22 22 22 21 21 20 20 20 21 22 23 23 23 23 21 20 19 18 18 18 18 17 17 17 16 15 15 14 12 11 10 9 8 8 8 8 7 6 5 4 3 3 3 4 4 5 5 4 3 3 2 1 1 -0 -1 -2 -4 -4 -5 -4 -4 -2 1 3 5 6 5 5 4 3 3 3 3 3 3 4 4 6 9 13 16 19 20 19 18 16 15 13 12 10 8 6 3 1 0 -0 0 1 3 5 6 6 6 5 5 5 4 4 4 4 3 2 2 1 1 -0 -2 -4 -6 -8 -9 -10 -12 -14 -16 -18 -18 -18 -17 -17 -17 -17 -16 -13 -9 -4 2 6 10 12 13 14 14 13 12 10 8 6 7 9 12 14 14 13 11 11 10 9 7 6 5 5 6 8 10 12 13 13 -7 -9 -10 -12 -14 -16 -16 -15 -12 -9 -7 -12 -20 -26 -29 -28 -25 -23 -22 -20 -16 -13 -13 -15 -18 -20 -21 -22 -23 -23 -24 -23 -22 -21 -22 -23 -25 -27 -30 -32 -32 -29 -26 -24 -23 -22 -22 -21 -17 -10 3 14 21 21 20 18 17 17 17 18 19 23 29 35 39 41 41 42 45 49 52 53 53 51 50 48 47 47 47 47 46 46 45 44 43 41 38 34 28 21 17 14 12 11 8 8 9 9 7 6 5 7 11 18 26 28 29 31 33 38 43 44 45 47 48 50 51 52 53 53 54 54 55 55 54 53 52 51 51 50 48 46 42 38 34 31 29 28 27 26 24 22 20 18 16 14 12 10 9 7 6 5 4 3 2 1 0 -1 -1 -2 -3 -3 -4 -5 -5 -6 -6 -5 -4 -3 -2 -0 0 1 1 1 2 2 3 3 3 3 3 2 2 2 2 2 2 2 1 1 1 1 1 1 0 0 1 1 2 3 3 3 3 3 3 3 4 4 5 5 6 7 7 8 8 9 9 9 10 10 9 9 8 7 6 5 5 4 5 6 10 14 17 20 20 19 18 18 19 20 21 22 22 22 22 22 21 21 21 21 21 22 23 24 24 24 23 22 21 20 19 19 19 19 19 18 18 17 16 15 14 13 11 10 10 10 10 10 9 8 6 5 4 4 4 4 5 6 6 6 5 4 3 2 2 1 0 -1 -3 -4 -4 -5 -4 -3 -0 3 7 9 9 8 7 6 6 6 6 5 5 5 5 6 8 12 16 19 21 21 19 18 16 15 14 12 10 8 6 5 3 3 3 3 5 6 8 9 9 8 8 8 7 7 6 6 5 5 5 6 6 6 5 3 1 -1 -3 -4 -6 -8 -10 -12 -13 -13 -13 -13 -13 -13 -13 -12 -9 -5 -1 4 7 9 11 12 13 13 12 11 9 7 8 10 13 15 16 15 14 12 12 11 9 7 5 4 5 6 8 10 11 12 -13 -14 -16 -18 -21 -23 -24 -23 -19 -13 -7 -7 -14 -22 -27 -27 -23 -20 -19 -17 -15 -12 -9 -10 -13 -17 -21 -23 -24 -25 -26 -25 -24 -23 -23 -23 -25 -27 -30 -32 -31 -27 -23 -20 -20 -20 -21 -21 -21 -19 -13 -0 14 23 21 18 15 15 15 16 18 22 29 36 41 43 43 44 47 51 53 54 53 51 49 46 45 45 46 47 48 48 47 45 43 40 36 31 24 18 14 11 8 5 4 4 5 6 7 8 7 7 10 17 26 29 30 29 30 34 42 45 46 48 49 51 53 54 54 55 55 55 56 56 55 54 53 52 52 51 50 48 44 40 36 33 31 29 28 27 25 24 22 19 17 15 13 11 9 8 7 6 4 3 2 1 1 -0 -1 -2 -2 -3 -4 -4 -5 -5 -5 -5 -4 -2 -1 0 1 1 2 2 2 3 4 4 5 4 4 4 3 3 3 3 3 3 3 3 3 3 2 1 0 0 1 1 2 2 3 3 3 3 3 3 4 4 5 6 7 7 7 7 7 8 9 10 10 11 11 11 11 10 9 8 8 7 6 7 9 13 16 19 20 20 19 19 19 20 21 22 23 23 23 23 22 22 22 21 22 22 23 24 24 25 24 23 22 21 20 20 20 20 20 20 19 19 18 17 16 14 13 12 12 12 12 11 11 9 8 6 5 4 4 5 5 6 7 7 6 6 5 4 3 3 2 0 -1 -3 -4 -5 -5 -4 -1 3 8 11 11 11 10 9 9 9 9 8 8 7 6 6 8 11 15 19 21 22 21 19 17 16 15 14 12 11 9 7 6 5 5 5 6 8 10 12 12 12 12 11 11 10 10 9 9 9 9 10 11 11 11 9 7 5 3 2 0 -1 -3 -5 -7 -8 -8 -8 -9 -9 -9 -8 -7 -5 -2 1 4 7 9 11 12 12 12 12 10 9 9 11 14 17 18 17 16 14 13 12 11 8 6 4 3 4 6 7 8 9 -21 -21 -22 -24 -25 -27 -29 -29 -24 -16 -7 -5 -10 -17 -22 -23 -21 -19 -17 -15 -13 -11 -7 -7 -8 -12 -17 -21 -24 -26 -27 -27 -26 -25 -25 -25 -26 -28 -30 -30 -27 -24 -20 -18 -18 -19 -20 -21 -23 -23 -21 -17 -1 18 19 16 13 12 13 15 17 22 30 37 42 45 44 45 48 51 53 53 53 53 51 49 47 48 50 51 51 51 49 46 42 38 34 28 22 17 13 9 6 3 1 0 2 5 8 10 10 10 10 13 19 25 26 26 27 32 41 45 47 48 51 53 54 55 56 56 56 56 57 57 57 56 55 54 53 52 51 49 46 42 38 35 32 30 29 28 26 25 23 20 18 16 14 12 10 9 7 6 5 4 3 2 1 0 -0 -1 -2 -2 -3 -4 -4 -4 -4 -4 -3 -2 -0 1 2 2 2 3 3 4 5 5 6 6 5 5 4 4 4 4 4 4 5 5 4 3 2 0 -0 -0 0 1 2 2 3 4 4 4 4 4 5 6 7 8 8 8 7 6 6 6 7 8 9 10 11 11 12 12 12 11 10 9 8 8 9 12 15 18 20 21 20 19 20 20 22 23 23 23 23 23 23 23 23 23 22 22 23 24 24 25 25 25 24 22 21 21 20 20 20 20 20 20 19 18 17 16 15 14 13 13 13 13 12 11 9 7 6 5 4 5 5 6 7 7 7 7 7 6 5 5 3 2 0 -1 -2 -3 -4 -4 -1 3 8 12 14 14 13 12 12 12 11 11 10 9 7 7 7 10 15 19 22 23 21 20 18 17 16 15 14 13 11 9 8 7 7 7 8 10 12 14 16 17 16 16 15 14 14 13 13 13 13 14 15 16 16 15 13 11 9 8 7 5 3 1 -1 -3 -3 -4 -3 -3 -3 -3 -3 -3 -2 0 2 4 7 8 10 11 12 12 11 11 11 12 15 18 19 19 18 16 15 14 13 11 8 4 2 2 3 4 6 7 -25 -25 -25 -26 -26 -28 -30 -30 -26 -19 -11 -7 -9 -14 -19 -21 -21 -19 -17 -15 -13 -11 -8 -6 -6 -9 -12 -17 -21 -24 -26 -27 -27 -27 -26 -26 -27 -27 -27 -25 -22 -19 -18 -17 -17 -18 -19 -21 -23 -25 -24 -23 -19 -7 13 11 8 8 10 14 18 23 31 38 44 46 46 46 48 50 52 54 55 55 54 52 51 52 52 51 50 49 48 44 40 36 31 25 20 15 11 8 4 1 -2 -2 1 5 10 13 13 12 10 10 12 18 24 28 29 31 34 41 46 49 51 54 56 57 57 58 58 58 58 58 58 57 56 55 55 54 52 51 48 44 41 37 34 32 30 28 27 26 24 22 19 17 15 13 11 9 8 7 6 5 4 3 2 1 0 -1 -1 -2 -2 -3 -3 -3 -3 -3 -2 -1 0 2 3 3 3 4 4 5 5 6 7 7 6 6 6 5 5 5 6 6 6 6 5 3 2 1 -0 0 0 1 2 3 4 4 5 5 5 6 7 8 9 9 9 8 6 5 4 4 4 4 5 6 7 8 10 11 12 13 13 12 11 10 10 12 15 18 21 21 21 21 20 21 22 23 24 24 24 24 24 24 24 24 24 23 23 24 24 25 26 25 25 24 23 22 21 21 21 21 21 21 20 20 19 18 16 15 14 14 14 14 13 12 10 8 6 5 4 5 5 6 7 7 8 8 8 8 7 7 6 4 2 1 -0 -2 -2 -2 -1 2 8 12 15 16 16 15 15 14 14 13 12 11 9 8 8 10 14 19 23 24 22 20 19 18 17 17 16 14 12 11 10 9 8 8 8 10 13 16 19 20 21 20 19 18 18 17 17 17 17 18 19 20 21 20 19 17 15 14 13 11 10 7 5 3 2 2 3 3 3 3 3 1 -0 -0 1 2 5 6 8 9 11 12 12 12 12 13 16 18 20 20 19 17 16 15 14 13 11 6 1 -0 0 1 2 4 -27 -27 -27 -27 -27 -27 -29 -30 -28 -23 -17 -13 -12 -14 -17 -20 -22 -22 -19 -17 -14 -13 -11 -9 -8 -8 -9 -13 -16 -19 -22 -24 -25 -26 -26 -26 -26 -25 -24 -21 -20 -19 -20 -20 -19 -19 -19 -21 -22 -25 -27 -28 -23 -11 5 5 1 -1 2 10 18 25 33 41 46 49 48 48 49 51 53 55 56 56 55 53 53 53 51 49 47 46 44 41 36 32 27 22 17 13 9 6 2 -0 -1 -1 2 7 13 17 15 13 12 11 11 16 22 27 28 27 28 34 42 49 53 55 57 58 58 59 59 59 59 59 59 59 58 57 56 55 54 52 50 47 43 39 36 33 31 29 28 26 25 23 20 18 16 14 12 10 9 8 7 6 5 4 3 2 1 1 0 -0 -1 -1 -1 -2 -2 -2 -1 -0 1 2 3 4 5 5 5 6 6 7 8 8 8 7 7 7 6 6 7 8 8 7 6 4 2 1 1 1 1 2 3 4 5 6 6 7 8 8 9 10 11 10 9 7 5 4 3 2 1 1 1 1 2 4 5 7 9 11 12 13 13 12 12 13 15 18 21 22 22 22 22 22 23 24 25 25 25 25 25 25 25 25 25 25 24 24 24 25 25 26 25 25 24 23 22 22 21 21 21 22 21 21 20 19 18 16 16 15 15 15 14 13 11 9 7 6 5 5 5 5 6 7 8 9 9 9 8 8 8 7 5 3 2 1 0 -0 1 3 8 12 15 17 17 17 17 17 17 16 14 12 10 9 9 10 14 19 24 25 24 22 20 19 19 18 17 16 14 12 11 10 10 9 9 10 12 16 20 23 24 24 23 22 21 21 20 20 20 21 22 24 25 26 25 24 22 20 19 17 15 13 10 8 7 7 8 9 10 10 8 5 2 0 -0 1 3 5 6 8 9 10 11 12 13 14 17 19 21 21 20 19 17 16 16 15 13 10 4 -1 -3 -3 -1 1 -28 -28 -28 -28 -27 -26 -27 -27 -27 -26 -23 -20 -17 -17 -19 -21 -23 -23 -22 -19 -17 -16 -15 -14 -12 -10 -9 -10 -13 -15 -18 -21 -23 -25 -26 -26 -25 -24 -22 -21 -20 -21 -22 -22 -21 -21 -21 -22 -22 -24 -28 -30 -23 -9 1 1 -2 -5 -3 4 14 24 33 42 47 50 50 50 50 52 54 55 55 55 54 53 53 53 50 47 44 42 40 37 33 28 23 19 14 11 7 4 2 1 0 1 3 8 13 16 14 14 16 16 12 12 16 23 27 29 30 31 36 45 52 56 57 58 59 60 60 60 60 60 60 60 60 59 58 57 56 54 52 49 46 42 38 35 32 30 28 27 26 24 21 19 16 14 13 11 10 9 8 7 6 5 4 3 3 2 2 1 1 1 0 0 0 0 0 1 2 3 4 5 6 6 6 7 8 8 9 9 9 9 8 8 8 8 8 9 9 8 6 5 3 3 2 2 3 4 5 6 6 7 8 9 10 11 12 12 11 10 8 6 5 3 2 1 -1 -2 -2 -2 -1 0 1 3 5 7 9 12 13 14 14 14 16 18 21 23 24 24 23 23 24 25 26 26 26 26 26 27 27 27 27 26 26 25 25 25 25 26 26 26 25 24 23 22 22 21 21 22 22 22 21 20 19 18 17 16 16 16 15 14 12 10 8 6 6 5 5 5 6 7 8 9 9 9 9 9 9 9 7 6 4 4 3 3 3 4 8 11 14 16 17 18 18 19 19 18 16 14 11 10 9 10 14 19 24 27 26 24 22 21 20 19 19 17 15 14 12 11 10 10 9 9 11 14 19 24 26 26 26 24 24 23 23 23 23 24 26 28 30 31 31 30 29 27 25 23 20 18 15 13 12 13 14 15 15 15 13 9 5 1 -0 0 2 4 5 6 7 9 10 11 12 14 17 20 22 23 22 20 18 17 16 16 15 12 8 1 -4 -7 -5 -3 -29 -29 -29 -27 -26 -24 -24 -24 -24 -25 -26 -25 -23 -22 -21 -22 -23 -23 -22 -21 -20 -19 -19 -19 -17 -14 -11 -10 -11 -12 -14 -17 -20 -23 -25 -26 -27 -27 -26 -26 -26 -26 -25 -23 -21 -19 -18 -18 -18 -20 -27 -28 -19 -7 -2 -2 -3 -3 -2 2 10 20 30 39 46 50 51 51 51 52 54 55 56 55 55 54 54 52 49 45 42 39 37 33 29 25 21 17 13 9 5 2 1 2 2 2 4 7 12 14 16 20 22 20 12 9 13 21 29 33 32 30 32 39 48 56 58 59 59 60 61 61 61 61 61 61 61 61 60 59 57 56 54 51 48 44 40 36 33 31 29 28 27 25 22 20 17 15 13 12 11 10 9 8 7 6 5 4 4 4 3 3 3 3 2 2 2 2 2 2 3 4 5 6 7 7 7 8 9 10 10 11 10 10 10 9 9 9 9 9 9 9 8 6 5 4 4 4 4 5 6 7 8 9 10 11 12 12 13 12 11 9 7 5 4 3 1 0 -1 -2 -3 -3 -2 -1 -1 -0 0 2 5 8 11 14 15 16 17 19 22 24 25 25 25 25 25 27 27 28 28 28 28 28 28 28 28 27 27 26 26 25 25 26 26 26 26 26 25 24 23 22 22 22 22 22 22 21 20 19 18 18 17 17 16 15 14 12 10 8 7 6 6 6 6 7 8 9 9 9 9 10 10 10 9 8 6 6 6 6 6 6 8 10 13 15 17 18 19 20 20 19 17 15 12 10 9 9 13 18 23 28 29 26 24 23 22 21 20 18 17 15 13 12 11 11 10 9 9 11 16 21 25 27 27 27 26 25 25 25 26 27 29 31 34 36 36 36 34 33 31 28 25 23 21 19 18 18 19 19 19 18 17 13 8 2 -0 0 2 3 4 5 5 7 8 9 11 13 17 21 23 24 23 21 19 18 16 16 15 14 11 5 -3 -9 -9 -7 -29 -29 -27 -24 -22 -20 -19 -19 -20 -22 -25 -28 -27 -26 -23 -22 -22 -22 -21 -21 -20 -20 -21 -21 -21 -19 -16 -13 -12 -12 -14 -16 -19 -22 -23 -24 -26 -28 -30 -32 -32 -33 -32 -30 -27 -21 -16 -13 -12 -12 -22 -18 -10 -4 -3 -2 -0 1 3 5 9 17 26 35 43 48 50 51 52 52 53 55 58 58 57 56 54 50 47 43 40 38 35 31 27 24 20 16 12 7 4 2 1 2 2 2 3 6 10 14 21 27 29 24 16 13 15 23 32 36 35 32 32 35 41 49 56 59 60 60 61 62 62 62 62 62 62 62 61 60 59 58 56 53 50 46 42 38 34 32 30 29 27 26 23 21 18 16 14 13 12 11 10 9 8 7 6 6 5 5 5 5 4 4 4 4 4 4 4 4 4 5 6 7 7 8 8 9 10 11 11 12 12 11 11 10 10 10 10 10 10 10 9 8 7 6 5 5 6 7 8 9 10 11 12 12 13 12 12 11 9 8 6 5 4 2 1 1 -0 -1 -2 -2 -1 -1 -1 -2 -2 -2 0 3 7 11 14 17 19 21 22 24 25 26 26 26 27 28 29 29 29 29 29 29 29 29 29 29 28 28 27 26 26 26 26 27 27 27 27 26 24 23 22 22 22 22 23 22 22 21 20 19 19 18 18 17 15 14 12 10 8 7 6 6 6 7 8 8 8 8 9 9 10 11 11 9 8 8 8 8 9 9 9 10 12 13 15 16 18 20 21 20 18 15 12 9 8 8 11 16 22 28 31 29 27 25 23 22 21 20 18 16 14 13 12 12 11 9 7 8 11 16 20 24 27 28 28 27 27 27 28 30 32 35 38 40 41 41 39 38 36 33 30 28 25 23 22 22 22 22 22 21 19 15 10 4 0 0 1 2 3 3 4 4 6 7 9 11 16 20 24 25 25 23 20 18 17 16 15 14 12 8 0 -10 -12 -11 -28 -26 -23 -19 -16 -14 -13 -13 -15 -18 -21 -24 -26 -25 -22 -19 -19 -21 -21 -21 -21 -21 -22 -23 -23 -21 -19 -17 -16 -16 -17 -19 -21 -22 -23 -24 -25 -26 -29 -31 -32 -33 -34 -34 -33 -29 -24 -18 -13 -9 -10 -1 2 -1 -2 -1 3 6 8 8 10 16 23 31 39 44 48 50 51 51 52 55 61 61 58 56 53 48 44 41 38 36 33 30 26 23 21 17 11 6 3 1 0 0 0 1 3 5 7 14 24 31 33 29 24 21 22 28 35 37 38 37 35 33 34 40 50 57 60 61 61 62 62 63 63 63 63 63 62 62 61 59 57 55 51 47 43 39 35 33 31 29 28 27 24 22 19 17 15 14 13 12 11 10 9 8 7 7 6 6 6 6 6 6 6 6 6 6 5 5 5 6 6 7 8 9 9 10 11 12 13 13 13 12 12 11 10 11 11 11 12 11 10 9 8 7 6 6 7 8 9 10 11 11 12 12 12 12 11 10 9 8 6 5 4 2 2 1 0 -0 -1 -0 0 0 -1 -2 -4 -5 -4 -2 2 7 12 16 19 22 23 25 26 27 27 28 28 29 30 31 31 30 30 30 30 30 30 30 29 29 28 27 26 26 26 27 28 28 28 27 26 24 23 22 22 23 23 23 23 22 22 21 20 20 19 18 17 16 14 12 10 8 7 7 7 7 7 8 8 8 8 8 9 10 11 10 9 9 10 10 11 12 12 11 11 11 13 14 17 19 21 21 19 16 12 8 6 6 9 13 20 27 32 31 29 27 25 24 23 21 19 17 16 14 14 13 12 10 7 6 7 9 14 18 23 26 28 29 30 30 31 33 36 39 42 44 45 45 43 42 40 38 35 32 30 27 26 25 25 24 24 22 20 17 12 6 1 1 1 2 2 2 2 2 3 5 6 9 13 18 23 26 26 25 22 19 17 16 15 15 13 9 2 -9 -13 -13 -25 -21 -18 -15 -13 -12 -11 -11 -13 -14 -16 -18 -19 -20 -20 -19 -19 -21 -22 -22 -22 -22 -23 -24 -24 -24 -24 -22 -22 -22 -23 -24 -25 -26 -26 -26 -26 -26 -27 -28 -28 -28 -29 -30 -31 -32 -32 -29 -24 -18 -10 13 16 7 2 3 7 10 11 11 11 14 20 27 34 41 46 48 49 50 52 57 61 60 58 55 51 45 41 39 36 34 32 29 27 24 22 17 10 5 1 -0 -1 -1 0 2 3 4 5 8 18 29 35 34 32 31 32 34 35 34 35 37 38 37 35 36 43 51 57 61 62 62 63 63 63 64 64 64 63 63 62 61 59 56 52 49 45 41 37 34 32 30 29 27 25 23 20 17 15 14 13 12 12 11 10 9 8 8 7 7 7 7 7 7 7 7 7 7 7 6 6 7 7 8 9 9 10 11 12 13 14 14 14 13 12 12 11 11 12 13 13 13 12 10 9 8 7 7 7 8 10 10 11 12 12 12 12 11 11 10 9 8 7 5 4 2 1 1 0 -0 0 0 1 1 -0 -2 -4 -6 -6 -5 -2 2 7 13 19 22 24 25 26 27 28 28 29 30 31 31 31 31 31 31 31 30 30 30 30 29 29 27 26 25 25 26 27 29 30 29 28 26 25 24 23 23 23 23 24 24 23 23 22 22 21 20 20 18 17 14 12 10 8 7 7 7 7 7 7 7 7 8 8 9 10 10 9 10 10 12 14 15 15 14 12 11 11 12 15 17 20 21 20 16 12 8 5 5 6 10 17 25 32 33 31 29 27 25 24 22 20 19 17 16 15 14 13 11 8 5 3 4 6 10 16 21 26 29 31 32 34 37 40 43 46 48 48 48 47 46 44 42 40 37 34 31 28 27 26 25 24 23 21 18 14 8 3 1 0 0 0 0 -0 0 1 2 4 6 10 15 21 26 27 26 24 21 19 17 16 15 13 10 3 -8 -14 -15 -21 -18 -17 -17 -16 -16 -15 -14 -13 -14 -14 -14 -15 -16 -18 -19 -20 -21 -22 -23 -24 -24 -24 -24 -26 -27 -28 -28 -28 -28 -28 -28 -29 -30 -31 -31 -30 -30 -29 -28 -27 -25 -23 -22 -22 -25 -28 -32 -35 -36 -38 4 23 18 11 10 13 15 15 14 13 14 16 21 29 37 44 46 48 50 55 60 56 54 54 53 49 43 40 37 35 34 32 29 28 26 23 17 9 4 0 -2 -2 -1 2 4 4 3 2 4 14 28 36 37 36 37 37 33 27 22 23 29 36 43 46 45 42 43 50 58 62 62 63 63 64 65 65 65 64 64 63 62 60 57 54 50 46 42 39 35 33 31 29 28 26 24 21 18 16 14 13 12 12 12 11 10 9 9 8 8 8 8 8 8 8 8 8 8 8 7 7 8 8 9 9 10 11 12 13 14 15 15 15 14 13 12 12 12 13 14 14 14 13 11 10 8 7 7 8 9 10 11 12 12 12 12 12 12 11 11 10 8 7 5 4 2 1 -0 -0 -0 -0 0 1 0 -1 -3 -5 -6 -7 -7 -5 -2 3 9 16 22 24 26 26 27 27 28 29 30 31 32 32 32 32 31 31 31 30 30 30 30 29 28 26 25 25 25 26 28 30 31 30 29 27 26 25 24 24 24 24 24 24 24 24 24 23 22 22 20 19 16 14 11 10 8 8 8 8 8 7 7 7 7 7 8 8 8 8 9 11 13 15 17 18 17 15 13 12 12 13 16 19 21 20 17 12 7 4 3 4 7 13 22 30 34 33 30 28 27 26 24 22 20 18 17 17 16 15 13 10 5 2 -0 0 2 7 13 19 24 28 32 36 40 44 47 50 51 51 51 50 49 47 46 44 41 37 34 31 28 26 25 24 23 22 19 15 9 4 1 -1 -1 -1 -2 -2 -1 -1 -0 1 3 6 11 17 24 27 27 26 23 20 18 17 15 13 10 3 -8 -14 -16 -22 -22 -23 -24 -24 -23 -22 -20 -19 -18 -17 -16 -15 -15 -17 -19 -20 -20 -22 -24 -25 -26 -25 -25 -26 -28 -30 -31 -32 -32 -32 -32 -33 -34 -35 -35 -36 -35 -35 -33 -31 -29 -25 -22 -19 -18 -19 -22 -26 -30 -36 -43 -7 25 20 18 20 21 21 19 17 15 16 19 26 35 43 46 48 52 57 61 55 54 53 51 47 43 39 37 35 34 31 29 28 26 22 16 9 3 -0 -1 0 4 6 7 5 2 -0 3 13 22 24 21 25 33 32 25 19 19 22 24 30 39 47 45 36 33 39 50 60 63 64 64 65 66 66 66 66 65 64 63 61 58 55 51 48 44 41 37 34 31 30 29 27 25 22 19 16 14 13 13 12 12 12 11 10 10 10 10 10 9 9 9 9 9 9 9 9 9 8 9 9 10 10 11 12 13 14 15 16 16 16 15 14 14 13 13 14 15 15 15 14 12 10 8 7 7 8 9 11 11 12 12 12 12 12 12 12 12 10 9 7 6 4 2 0 -1 -1 -1 -1 -1 -1 -1 -3 -4 -6 -7 -7 -7 -6 -5 -1 4 12 19 24 26 26 26 27 28 29 30 31 32 32 32 32 32 32 31 30 30 30 30 29 28 27 25 24 24 25 28 30 32 32 32 30 29 27 26 25 25 25 25 25 25 25 25 24 24 23 22 21 18 16 14 12 10 9 8 8 8 8 7 7 7 7 7 7 7 7 8 9 13 16 19 20 20 19 17 14 13 13 15 17 20 20 18 14 8 4 2 1 3 8 17 28 34 34 32 30 29 27 25 23 22 20 19 18 18 17 16 12 7 2 -2 -4 -4 -1 3 8 15 21 27 34 40 45 50 52 53 53 53 52 51 50 49 47 44 40 36 33 30 27 25 24 23 22 19 16 11 6 2 -1 -2 -3 -3 -3 -3 -2 -2 -2 -1 1 5 11 20 26 28 27 25 23 20 18 17 14 11 4 -7 -14 -17 -25 -28 -30 -31 -31 -30 -28 -26 -25 -25 -24 -22 -20 -19 -19 -19 -19 -20 -21 -23 -25 -26 -26 -26 -26 -27 -30 -33 -35 -36 -36 -36 -37 -37 -38 -39 -40 -40 -39 -38 -37 -35 -33 -30 -25 -22 -19 -18 -17 -18 -20 -28 -31 -13 19 21 24 26 25 22 20 18 17 19 24 32 41 46 47 49 52 54 54 55 54 51 46 43 40 37 36 34 32 30 29 27 22 15 8 3 1 2 6 9 10 8 4 1 -1 1 6 9 9 7 12 19 19 17 15 17 20 19 23 30 40 44 39 37 40 45 46 51 60 65 67 67 68 68 68 67 66 65 63 60 56 53 50 46 43 39 35 32 30 29 28 26 23 19 16 14 13 13 13 13 13 12 12 11 11 11 11 11 10 10 10 10 10 10 10 10 9 10 10 11 11 12 13 14 15 16 16 17 16 16 15 15 14 14 15 16 16 16 15 13 11 9 8 8 9 10 11 12 12 12 12 13 13 13 13 12 11 10 8 6 4 1 -0 -2 -3 -3 -3 -2 -2 -3 -4 -6 -7 -8 -8 -7 -6 -5 -3 1 8 16 22 25 26 26 26 27 28 29 31 31 32 33 33 33 33 32 31 30 30 30 29 28 27 26 24 24 24 26 29 31 33 34 33 31 30 28 27 27 26 26 25 25 25 25 25 25 24 23 22 20 18 16 14 12 10 10 9 9 8 7 7 7 6 6 5 5 5 6 7 11 15 19 21 23 23 21 18 16 15 15 17 19 20 19 16 10 5 1 -1 -1 2 11 23 32 36 34 31 30 29 27 25 23 21 20 20 19 19 18 15 10 4 -1 -6 -8 -8 -6 -2 3 9 17 26 34 43 50 54 55 55 55 54 53 52 51 49 47 43 39 35 31 28 26 25 24 22 20 17 12 8 4 0 -2 -3 -4 -4 -4 -3 -3 -4 -4 -4 -2 3 13 22 27 29 28 25 23 20 18 16 13 7 -3 -12 -17 -28 -30 -33 -34 -34 -33 -31 -30 -30 -30 -31 -30 -28 -26 -23 -21 -20 -20 -21 -23 -25 -26 -27 -26 -25 -25 -27 -31 -34 -37 -38 -39 -40 -40 -40 -41 -41 -41 -40 -39 -38 -38 -37 -35 -32 -29 -25 -22 -19 -16 -15 -17 -22 -22 -8 15 23 25 24 21 20 18 17 18 22 30 39 44 45 45 45 48 52 54 52 49 45 43 40 38 35 34 32 31 30 27 22 15 8 5 6 8 11 12 11 7 4 1 0 1 2 2 2 2 6 10 12 13 14 18 20 19 20 24 30 38 43 46 47 48 46 46 53 62 68 70 70 70 70 69 68 67 65 62 58 55 52 48 45 40 36 33 31 30 29 27 24 20 17 15 13 13 13 14 14 14 13 13 13 13 12 12 12 11 11 11 11 11 11 10 10 11 11 11 12 13 14 15 16 16 17 17 17 17 16 16 15 15 15 16 17 17 16 14 12 10 9 9 10 11 12 12 13 12 12 12 13 13 13 13 12 10 9 6 4 2 -1 -3 -4 -5 -5 -4 -4 -4 -6 -7 -8 -9 -8 -7 -5 -4 -3 -0 5 12 19 24 26 26 26 27 28 29 30 31 32 33 33 34 34 33 32 31 30 30 30 29 28 27 25 25 25 26 28 30 33 34 34 33 32 31 30 29 28 27 26 26 25 25 25 25 25 24 23 21 19 17 16 14 12 11 11 10 9 8 7 6 6 5 4 3 3 3 5 8 12 17 20 23 25 24 23 21 19 18 18 19 20 20 18 13 6 1 -3 -5 -4 3 16 28 36 36 33 31 30 29 27 25 23 22 21 21 21 20 17 13 7 -1 -8 -12 -13 -13 -11 -7 -3 4 12 23 35 46 53 56 57 56 55 54 53 52 51 49 45 41 37 33 29 27 26 24 23 21 18 14 10 6 3 -0 -2 -3 -4 -4 -4 -4 -5 -6 -7 -7 -5 3 14 23 29 30 28 25 23 21 19 17 12 4 -6 -15 -26 -28 -31 -32 -34 -34 -33 -32 -32 -33 -35 -36 -35 -33 -29 -25 -23 -21 -21 -22 -23 -25 -26 -26 -25 -24 -25 -27 -31 -34 -37 -39 -40 -39 -39 -40 -41 -42 -42 -41 -39 -39 -38 -37 -35 -33 -30 -27 -24 -21 -17 -14 -16 -20 -19 -2 15 21 20 17 16 15 16 17 21 28 37 42 42 41 41 45 50 51 49 46 44 42 40 38 35 33 32 32 31 27 20 13 10 10 11 13 14 13 10 7 4 2 1 1 1 1 2 3 5 7 9 11 13 16 18 17 19 22 24 29 37 44 48 49 49 50 54 58 64 69 71 72 71 71 70 69 67 64 60 57 53 50 46 42 38 34 32 31 30 28 25 22 18 15 14 14 14 15 15 15 15 15 15 14 14 13 13 12 12 12 12 12 12 11 11 11 12 12 13 14 15 16 16 17 17 18 18 17 17 17 16 16 16 16 17 17 17 15 13 11 9 9 10 11 12 13 12 12 12 12 12 13 13 13 12 11 9 7 5 2 -1 -3 -5 -6 -7 -7 -6 -6 -6 -7 -8 -8 -8 -6 -5 -3 -2 -0 3 10 17 23 26 27 26 26 27 28 29 30 31 32 34 35 35 34 33 32 31 31 30 30 29 28 27 26 25 26 27 29 31 33 35 35 34 33 32 31 30 29 27 26 25 24 24 24 24 24 23 22 20 19 17 16 14 13 12 11 10 8 7 6 5 4 3 2 1 1 2 5 9 14 17 21 24 26 27 26 24 22 21 21 21 21 20 16 8 1 -4 -7 -9 -5 6 21 33 38 35 33 31 30 28 26 24 23 23 22 23 22 20 16 10 0 -10 -16 -18 -18 -17 -14 -12 -8 -3 6 22 38 50 56 58 57 56 55 54 53 52 50 47 43 39 34 30 28 27 26 25 23 20 16 13 9 6 3 1 -1 -2 -3 -3 -4 -5 -7 -9 -10 -10 -6 4 16 26 31 31 29 26 24 22 21 18 13 5 -6 -23 -25 -26 -28 -29 -31 -32 -32 -33 -34 -36 -38 -38 -37 -34 -31 -27 -25 -23 -22 -22 -22 -24 -25 -24 -24 -24 -25 -27 -30 -33 -36 -37 -37 -37 -39 -41 -44 -45 -44 -42 -40 -38 -36 -35 -34 -33 -31 -29 -27 -22 -17 -15 -17 -21 -17 4 13 14 12 10 11 12 16 20 26 34 38 39 38 39 44 48 48 46 45 44 41 39 36 34 31 31 32 29 24 18 13 13 14 15 16 15 12 8 6 4 2 2 1 1 2 4 5 6 7 8 8 10 11 12 14 18 21 21 22 29 38 46 50 53 56 58 59 60 62 66 70 72 73 72 71 69 66 62 59 55 52 48 43 39 35 33 31 31 29 27 23 19 16 15 15 15 16 16 17 17 17 17 16 15 15 14 13 13 13 12 12 12 12 12 12 13 13 14 15 16 16 17 18 18 18 18 18 18 17 17 17 17 17 17 18 17 16 14 12 10 10 11 12 13 13 12 12 11 11 11 12 12 12 11 11 9 8 6 3 0 -2 -5 -7 -8 -9 -8 -7 -6 -6 -6 -6 -6 -6 -4 -3 -1 0 3 8 15 22 27 28 27 26 26 27 29 30 31 32 34 35 36 35 34 33 32 32 31 31 30 29 28 27 27 26 27 28 29 32 34 35 36 35 35 34 32 31 29 27 26 24 23 23 23 23 23 22 21 20 18 17 16 14 14 13 11 9 7 6 4 3 2 0 -1 -1 0 3 6 10 14 17 21 26 29 30 30 27 25 23 22 22 21 18 11 4 -3 -9 -13 -12 -5 10 27 37 37 35 32 31 29 27 25 24 24 24 24 25 23 20 13 1 -11 -18 -21 -21 -20 -18 -16 -15 -13 -9 5 27 44 55 58 58 56 55 55 54 53 52 49 45 41 36 32 30 29 27 26 24 22 18 15 13 10 7 4 2 0 -1 -2 -4 -5 -7 -9 -11 -12 -10 -5 4 19 30 32 32 30 28 26 25 24 21 15 7 -20 -20 -21 -23 -24 -25 -26 -28 -30 -33 -35 -38 -39 -38 -37 -35 -32 -28 -25 -23 -21 -20 -21 -23 -24 -23 -23 -23 -24 -26 -29 -31 -33 -33 -34 -37 -41 -45 -47 -47 -44 -41 -38 -35 -33 -33 -32 -32 -31 -30 -27 -22 -18 -17 -21 -25 -10 5 11 9 7 6 8 13 18 24 29 33 35 37 39 43 47 45 44 44 43 39 37 34 31 29 29 29 26 22 18 17 18 17 16 15 13 9 6 4 2 1 0 -0 1 3 6 7 7 7 6 6 6 6 8 12 17 20 20 20 25 36 46 52 57 62 65 64 62 59 61 65 68 70 73 72 70 67 63 60 57 54 49 45 41 37 34 32 31 30 28 25 21 18 16 15 16 16 17 18 18 18 18 18 17 16 15 14 14 13 13 13 13 13 13 13 13 14 14 15 16 17 18 18 19 19 19 19 18 18 18 17 17 17 18 18 18 17 15 13 11 11 12 13 14 14 13 12 11 11 11 11 11 11 11 10 10 9 7 5 3 -1 -4 -7 -9 -9 -9 -7 -5 -4 -3 -3 -4 -4 -3 -2 -1 1 3 7 14 21 26 29 28 27 27 27 28 29 31 32 34 35 36 35 34 33 33 32 32 32 31 30 29 28 28 27 27 27 28 30 31 33 35 36 36 36 35 33 31 29 27 25 23 22 22 23 23 23 22 21 19 18 17 16 15 14 12 10 8 5 3 2 0 -1 -2 -2 -2 1 4 7 10 13 17 22 27 32 34 32 29 26 25 23 22 20 15 8 -0 -8 -14 -17 -14 -3 15 31 37 37 34 31 29 27 26 25 25 25 27 27 26 23 15 1 -12 -20 -23 -23 -21 -19 -18 -18 -17 -16 -8 15 37 52 58 58 56 56 55 55 54 54 51 48 43 38 34 31 30 29 27 26 23 20 18 16 14 11 9 6 3 0 -1 -3 -5 -7 -9 -11 -12 -12 -10 -6 4 23 32 34 34 32 30 29 28 26 23 17 -17 -16 -17 -18 -20 -21 -21 -22 -25 -29 -33 -36 -37 -38 -38 -37 -34 -31 -28 -26 -23 -21 -19 -21 -22 -23 -23 -22 -22 -23 -24 -26 -28 -29 -31 -35 -39 -44 -48 -49 -46 -42 -37 -34 -31 -31 -31 -31 -31 -31 -29 -26 -21 -18 -20 -26 -23 -6 7 10 8 5 5 8 14 20 25 29 32 35 38 40 43 43 43 43 41 37 35 32 29 27 26 25 24 24 25 25 23 18 15 12 10 6 3 2 0 -1 -2 -2 1 5 8 9 9 7 6 5 4 5 7 10 15 19 21 22 28 39 50 57 62 67 70 71 71 68 65 62 62 65 68 69 69 68 65 62 59 55 51 47 43 39 35 34 32 31 29 26 22 19 17 16 17 17 18 18 19 20 20 19 18 17 16 15 15 14 14 14 14 13 13 13 14 14 15 16 17 18 18 19 19 19 19 19 19 19 19 18 18 18 18 18 18 17 16 14 13 13 13 14 15 15 14 12 11 10 10 10 10 10 10 10 10 10 9 7 6 3 -1 -4 -7 -8 -8 -5 -2 -0 1 0 -0 -1 -1 -1 -0 1 3 7 13 20 26 30 29 28 27 27 28 29 30 32 34 35 36 36 35 34 33 33 33 32 32 31 30 29 29 28 28 28 28 28 30 31 33 35 36 36 36 35 33 31 29 26 23 22 21 22 23 23 22 21 20 19 19 18 17 16 13 11 8 6 3 1 -1 -3 -4 -4 -3 -1 2 4 7 9 12 17 23 29 34 35 33 30 27 25 24 22 19 13 5 -4 -12 -18 -19 -14 -1 18 31 37 36 33 30 28 26 25 25 26 28 29 28 23 13 -0 -12 -19 -23 -22 -21 -19 -18 -18 -18 -17 -13 5 28 47 57 57 56 55 55 55 55 55 53 50 45 39 35 33 31 30 29 27 25 22 20 19 17 15 12 9 5 2 -1 -3 -5 -7 -9 -10 -11 -12 -13 -14 -10 6 24 34 37 36 34 33 32 30 28 23 -22 -20 -19 -18 -18 -18 -18 -19 -22 -26 -30 -32 -34 -35 -35 -35 -34 -32 -30 -28 -26 -24 -22 -22 -22 -23 -23 -22 -21 -20 -20 -21 -23 -25 -28 -32 -37 -42 -46 -48 -46 -42 -37 -33 -29 -28 -29 -29 -30 -31 -31 -30 -26 -22 -19 -22 -29 -21 -4 10 11 6 3 3 8 16 23 26 29 32 35 37 40 40 39 38 37 36 36 32 27 24 21 22 27 33 36 34 27 19 13 9 6 3 1 -0 -1 -2 -3 -1 2 6 9 11 12 12 10 7 5 6 8 10 13 17 21 25 33 45 56 62 66 68 70 72 74 74 72 70 67 64 60 61 66 68 66 63 60 57 53 49 45 41 37 35 33 32 30 27 24 21 18 17 17 18 18 19 20 21 21 20 20 19 17 16 16 15 15 14 14 14 14 14 14 15 15 16 17 18 19 20 20 20 20 20 20 20 19 19 19 18 18 18 18 18 17 15 14 14 15 16 16 16 15 13 11 10 9 9 9 10 10 10 10 10 10 10 9 7 4 1 -2 -4 -4 -2 1 4 5 4 3 2 1 1 1 2 4 7 12 18 25 30 31 30 28 28 28 29 30 32 33 34 35 35 35 34 34 33 33 33 32 32 31 30 30 29 29 28 28 29 29 30 31 33 35 36 36 35 34 32 30 28 25 23 21 22 23 23 23 22 21 20 20 20 19 17 15 12 10 7 3 0 -3 -5 -6 -6 -5 -3 -0 2 4 6 8 12 17 24 31 35 35 33 30 27 25 24 22 18 12 3 -6 -14 -20 -21 -14 2 18 30 35 35 31 28 26 24 24 26 28 28 25 18 8 -3 -12 -18 -21 -22 -20 -18 -18 -17 -17 -17 -15 -2 19 42 55 56 55 55 55 55 56 56 55 51 47 41 37 34 32 31 30 28 26 24 23 21 20 18 15 11 7 3 -0 -3 -5 -7 -8 -9 -10 -12 -15 -19 -21 -15 4 25 37 38 37 36 35 33 31 27 -29 -26 -23 -20 -18 -17 -17 -18 -20 -23 -26 -28 -29 -30 -30 -31 -31 -31 -31 -30 -29 -27 -26 -25 -24 -24 -23 -22 -20 -18 -16 -17 -19 -22 -25 -29 -34 -38 -43 -45 -45 -42 -38 -33 -28 -27 -28 -29 -30 -31 -32 -32 -30 -26 -22 -20 -24 -28 -21 -5 9 8 3 0 4 13 23 25 26 27 30 34 36 37 36 35 37 38 37 31 24 18 18 25 35 41 41 36 27 18 11 7 4 3 1 0 1 1 -1 1 3 6 8 10 13 15 14 11 8 8 7 7 10 15 20 25 37 51 60 63 61 56 56 61 68 74 75 75 74 72 68 64 63 65 67 65 62 59 55 51 47 43 39 36 34 32 31 28 25 22 20 18 18 18 18 19 20 21 22 22 21 20 18 17 16 16 15 15 15 14 14 14 15 15 16 17 18 19 19 20 20 20 20 20 20 20 20 20 19 19 19 19 18 18 17 17 16 16 17 17 18 17 16 14 12 10 9 9 9 9 10 10 10 11 11 12 12 11 9 6 3 1 1 3 6 8 9 8 7 5 3 3 2 3 4 7 11 17 24 30 32 31 30 29 28 29 30 31 32 33 34 35 35 34 33 33 33 33 33 32 32 31 30 30 29 29 29 30 30 30 31 32 33 34 35 35 34 33 31 29 27 24 23 22 23 23 24 23 23 22 21 21 20 19 17 14 12 8 5 1 -3 -5 -6 -7 -6 -4 -2 -0 2 3 4 7 11 16 24 30 34 34 32 29 27 25 24 21 17 10 2 -7 -16 -22 -21 -12 2 16 27 32 31 29 26 23 21 21 21 19 15 8 1 -5 -11 -16 -19 -20 -19 -17 -17 -16 -17 -16 -15 -7 12 37 52 54 54 54 54 55 56 57 56 53 48 43 38 35 33 32 30 29 27 26 25 24 23 20 17 12 7 3 -0 -3 -5 -7 -8 -9 -10 -12 -16 -21 -26 -28 -20 -1 31 37 38 38 37 35 33 28 -37 -34 -30 -26 -23 -20 -19 -18 -18 -20 -22 -24 -24 -25 -25 -26 -26 -28 -29 -29 -28 -28 -27 -27 -27 -26 -26 -24 -22 -19 -15 -14 -15 -19 -22 -26 -31 -35 -39 -42 -42 -41 -38 -33 -29 -28 -28 -29 -31 -32 -34 -34 -33 -30 -26 -22 -21 -23 -26 -23 -12 5 5 3 3 10 22 26 25 24 26 30 31 32 32 33 36 36 34 27 19 14 19 32 42 45 41 34 26 18 11 7 4 3 2 2 3 3 2 3 5 6 7 8 11 14 14 13 12 11 9 7 8 12 20 33 48 59 64 64 60 54 54 57 59 61 65 72 76 76 73 66 63 66 69 68 64 61 58 53 49 44 40 37 35 33 31 29 26 23 21 19 18 18 19 20 21 22 23 23 22 21 19 18 17 16 16 15 15 15 15 15 15 16 16 17 18 19 20 21 21 21 21 21 21 21 21 21 20 19 19 19 19 19 18 18 18 18 18 19 19 18 17 15 13 11 9 9 9 9 9 10 10 11 12 13 14 14 13 11 8 7 6 8 10 12 13 12 10 7 5 4 4 4 5 7 10 15 22 29 33 33 31 30 29 29 30 31 32 32 33 34 34 33 33 33 33 33 33 33 32 31 31 30 30 30 30 31 31 31 31 32 33 33 34 34 33 32 31 30 28 26 24 23 23 23 24 24 24 23 23 22 22 20 19 16 14 10 6 2 -2 -5 -6 -7 -6 -5 -4 -2 -1 0 1 3 5 9 15 22 28 32 32 30 28 26 25 23 21 15 9 1 -8 -18 -21 -19 -12 -2 11 21 25 26 24 21 17 14 11 8 5 2 -2 -6 -10 -14 -17 -19 -18 -16 -15 -15 -16 -16 -15 -9 6 33 49 53 53 53 53 54 56 57 57 55 50 44 40 36 34 33 31 30 29 27 27 26 25 22 18 12 7 3 -0 -3 -5 -7 -7 -8 -9 -11 -16 -22 -28 -32 -33 -27 -7 25 36 38 39 37 34 29 -44 -42 -39 -35 -31 -27 -24 -20 -17 -17 -18 -19 -20 -21 -22 -22 -22 -23 -24 -25 -25 -26 -26 -26 -26 -26 -26 -26 -25 -23 -19 -16 -15 -17 -20 -24 -28 -32 -35 -38 -40 -39 -36 -32 -30 -28 -29 -30 -32 -34 -36 -36 -35 -32 -28 -23 -21 -20 -22 -24 -24 -19 -7 0 3 7 18 26 26 24 23 24 26 26 27 29 32 32 29 21 15 15 25 40 47 46 40 32 25 18 12 8 5 4 3 2 3 3 4 5 6 7 7 8 10 14 16 17 17 15 13 10 10 15 27 44 57 63 63 60 54 51 52 54 56 57 59 63 67 71 73 68 64 67 70 70 67 64 60 55 51 46 42 38 36 34 32 30 27 25 22 20 18 18 19 20 21 22 23 23 23 21 20 18 17 16 16 15 15 15 15 15 16 16 17 18 19 20 21 22 22 22 22 22 22 22 22 22 21 20 20 19 19 19 19 19 19 19 20 20 20 19 18 16 13 11 9 9 9 9 9 10 10 11 12 14 15 16 15 14 12 11 10 11 13 14 15 14 12 9 7 5 4 4 5 6 9 14 20 28 32 34 33 31 29 29 29 30 31 31 32 33 33 33 33 33 33 33 33 33 32 31 31 31 31 31 31 32 32 32 32 33 33 34 34 33 33 32 31 30 29 27 25 23 23 23 24 25 26 25 24 23 23 22 20 18 16 12 9 4 1 -2 -4 -5 -5 -5 -5 -4 -3 -2 -1 -0 1 3 7 13 20 26 30 29 28 26 24 23 22 18 13 7 -1 -11 -17 -19 -17 -14 -7 2 10 15 17 17 14 10 7 4 2 -0 -2 -5 -8 -12 -16 -18 -17 -16 -14 -14 -15 -15 -15 -11 2 28 45 52 53 52 52 53 55 57 57 56 52 47 41 37 35 33 32 31 30 29 29 28 26 23 18 13 7 3 -0 -3 -5 -7 -7 -8 -9 -11 -15 -22 -28 -32 -34 -35 -36 -11 13 32 38 39 36 29 -49 -48 -46 -43 -39 -35 -29 -23 -19 -17 -17 -17 -18 -20 -21 -20 -19 -19 -20 -21 -22 -23 -24 -25 -25 -25 -25 -25 -24 -24 -22 -20 -18 -18 -19 -22 -25 -28 -31 -33 -34 -33 -32 -30 -28 -28 -29 -32 -34 -36 -38 -38 -38 -35 -30 -25 -21 -19 -18 -19 -21 -26 -21 -17 -10 0 12 20 22 21 20 20 21 21 22 23 26 27 23 18 16 20 34 46 48 45 38 31 23 18 13 9 6 5 3 2 2 2 4 6 8 9 10 10 11 14 17 19 20 19 19 17 16 19 29 43 51 54 54 51 48 49 51 53 55 57 58 60 63 66 68 67 67 70 72 71 70 66 62 57 53 48 43 39 36 34 33 31 29 26 23 20 19 19 19 20 21 22 23 23 23 22 20 18 17 16 15 15 15 15 15 16 16 17 18 19 20 21 22 23 23 23 23 23 23 23 23 23 22 21 20 20 20 21 21 21 21 21 21 21 21 20 19 16 14 12 10 9 9 9 9 9 9 10 11 13 14 15 15 14 13 12 12 13 14 15 15 14 12 10 8 6 4 4 4 5 7 11 17 25 31 34 33 31 30 29 29 29 30 30 31 31 32 32 32 32 32 32 32 32 32 31 31 31 31 31 31 32 32 32 33 34 35 35 35 34 33 32 31 30 29 27 25 23 22 22 23 25 26 26 26 25 24 23 22 20 17 14 11 8 4 1 -1 -2 -3 -4 -4 -4 -4 -4 -4 -3 -3 -1 1 5 10 17 23 26 26 25 23 22 22 19 16 11 4 -4 -11 -15 -16 -16 -15 -13 -8 -2 4 9 10 9 6 4 1 -1 -3 -5 -8 -11 -14 -17 -17 -15 -13 -12 -13 -14 -14 -12 -2 24 42 50 52 51 52 53 54 56 57 57 54 49 44 39 36 34 33 33 32 31 30 29 27 24 19 13 8 4 1 -2 -5 -6 -7 -8 -8 -10 -14 -20 -27 -31 -34 -34 -34 -36 -18 8 32 38 37 31 -48 -49 -48 -45 -42 -38 -34 -30 -26 -23 -21 -20 -20 -22 -22 -21 -20 -19 -19 -20 -21 -22 -24 -25 -26 -26 -25 -25 -24 -23 -22 -21 -19 -19 -18 -20 -22 -23 -25 -26 -27 -27 -26 -26 -26 -27 -30 -33 -35 -38 -40 -41 -41 -39 -35 -29 -23 -19 -17 -15 -14 -16 -23 -28 -25 -13 -0 7 11 12 14 16 18 18 18 18 20 21 20 19 20 27 40 47 46 42 36 29 23 18 13 8 5 4 4 3 2 3 5 8 10 11 12 12 12 14 16 18 19 21 23 23 22 23 26 33 39 42 43 43 43 47 50 53 54 57 59 61 62 63 64 64 66 69 70 68 65 62 61 59 55 50 45 41 37 35 33 32 30 27 24 21 19 19 20 21 22 22 23 23 23 22 21 19 17 16 15 15 15 15 16 16 17 18 19 20 21 22 23 24 24 24 24 24 25 25 24 24 23 22 22 22 22 22 22 22 22 22 22 22 21 20 19 17 14 12 10 10 9 9 9 8 8 8 9 10 11 12 13 12 12 11 11 12 13 14 14 13 12 10 8 6 4 2 2 2 4 7 13 22 29 33 34 32 30 29 29 29 29 30 30 30 30 31 31 31 32 32 32 32 31 31 31 31 31 31 31 31 31 32 32 33 35 37 37 36 34 32 31 30 29 28 25 23 21 21 22 24 26 27 27 26 25 24 23 21 18 16 13 11 8 5 3 1 -0 -1 -3 -4 -4 -5 -5 -6 -6 -5 -3 -1 2 7 14 20 23 23 22 21 20 19 17 13 8 1 -5 -10 -13 -14 -15 -14 -13 -12 -9 -3 4 7 8 6 2 -0 -2 -4 -7 -10 -13 -15 -16 -15 -13 -11 -12 -12 -13 -12 -6 20 40 49 52 51 51 53 54 55 56 57 55 52 46 41 37 35 34 34 34 33 32 30 28 25 20 14 9 6 3 0 -3 -6 -7 -7 -8 -9 -12 -18 -25 -30 -33 -34 -33 -33 -31 -19 16 32 37 34 -42 -44 -44 -43 -42 -41 -38 -34 -29 -26 -24 -23 -23 -23 -24 -24 -24 -23 -23 -23 -24 -25 -26 -27 -28 -28 -27 -27 -26 -24 -22 -20 -19 -18 -17 -17 -17 -18 -19 -21 -22 -23 -23 -24 -25 -27 -30 -33 -37 -40 -42 -44 -45 -44 -41 -35 -28 -21 -17 -14 -11 -9 -12 -20 -27 -27 -16 -9 -5 -1 4 9 14 15 15 15 15 16 18 20 24 31 39 42 40 36 32 26 22 18 12 5 0 0 4 5 5 5 6 9 10 11 12 11 11 12 13 14 14 17 22 24 23 23 23 28 34 37 39 40 42 45 49 51 53 55 57 60 61 63 63 64 66 68 67 64 61 60 61 60 56 51 47 42 39 36 34 33 31 29 26 23 20 20 20 21 22 23 23 24 24 23 21 19 17 16 15 14 15 15 16 17 18 19 20 21 22 23 24 25 25 25 25 26 26 26 26 25 25 24 23 23 23 24 24 24 24 24 23 22 22 21 19 17 15 13 11 10 9 9 8 7 7 6 6 7 8 9 9 9 9 9 9 10 11 11 11 11 10 9 7 5 2 0 -1 -2 -1 2 8 17 25 31 33 32 30 29 29 29 29 29 29 29 29 30 30 30 31 31 31 31 31 31 30 30 31 31 31 31 31 31 31 32 34 36 38 38 36 34 32 31 30 28 25 23 20 19 19 21 23 26 28 28 27 26 24 22 20 18 16 14 12 10 7 6 4 2 -0 -2 -3 -4 -5 -6 -7 -8 -7 -6 -5 -2 4 12 18 22 21 20 19 18 16 14 11 6 0 -5 -9 -11 -13 -13 -13 -12 -12 -11 -6 1 6 7 4 1 -2 -4 -6 -9 -12 -14 -16 -15 -13 -11 -11 -11 -12 -12 -10 16 37 48 51 51 51 52 53 54 55 57 57 54 49 44 39 37 36 36 35 35 33 32 29 26 21 16 12 9 7 3 -1 -4 -6 -7 -7 -7 -10 -15 -22 -28 -32 -34 -34 -32 -31 -27 -8 21 35 36 -35 -37 -39 -41 -43 -42 -39 -34 -29 -26 -24 -23 -23 -23 -26 -28 -30 -30 -31 -31 -31 -31 -32 -32 -32 -31 -30 -29 -28 -26 -23 -20 -18 -16 -15 -13 -11 -12 -14 -17 -20 -22 -23 -24 -25 -27 -29 -33 -36 -40 -44 -47 -48 -47 -45 -40 -33 -25 -19 -14 -11 -8 -7 -12 -21 -29 -29 -23 -18 -12 -6 0 6 9 10 9 9 9 12 17 21 26 30 34 33 30 26 22 19 15 9 1 -5 -5 2 6 7 6 6 8 9 9 9 9 9 10 11 11 10 12 15 16 18 21 24 29 32 34 36 39 41 44 46 49 51 53 55 57 60 65 68 69 71 69 66 63 62 62 62 59 55 50 48 44 40 37 35 34 32 30 28 24 21 21 21 22 23 23 23 24 24 23 22 19 17 16 15 14 15 16 16 17 18 19 21 22 23 24 25 25 25 26 26 26 27 27 27 27 26 26 25 25 25 25 26 25 25 25 24 23 22 21 20 18 15 13 11 10 9 9 8 6 5 4 4 4 5 6 6 6 6 6 7 8 8 9 9 9 8 7 5 3 1 -2 -4 -6 -6 -4 1 10 20 28 32 31 29 28 28 28 28 28 28 28 28 28 29 29 30 30 31 31 30 30 30 30 30 31 31 31 31 30 29 30 31 34 37 39 38 36 34 32 30 28 25 22 19 17 16 17 19 23 26 29 29 28 25 23 21 19 18 16 15 13 12 10 8 5 3 1 -1 -3 -4 -6 -8 -9 -10 -10 -10 -10 -6 2 10 18 21 20 18 17 16 15 13 9 4 -0 -4 -8 -11 -12 -13 -12 -12 -12 -11 -8 -1 5 6 3 -0 -3 -5 -8 -11 -14 -15 -16 -14 -11 -10 -10 -11 -12 -12 12 34 48 51 50 51 51 52 53 54 56 57 56 53 47 41 38 37 37 37 36 35 33 31 28 23 19 16 14 11 8 2 -2 -5 -6 -5 -5 -7 -12 -18 -25 -31 -33 -34 -33 -32 -29 -23 8 29 38 -29 -31 -35 -39 -40 -39 -35 -32 -30 -28 -26 -24 -23 -24 -27 -30 -33 -36 -37 -38 -38 -38 -38 -38 -37 -35 -33 -31 -29 -26 -22 -19 -17 -16 -14 -10 -8 -8 -10 -14 -17 -19 -21 -23 -25 -27 -28 -31 -34 -39 -44 -48 -50 -50 -48 -44 -38 -30 -22 -16 -11 -8 -7 -7 -12 -20 -28 -30 -27 -22 -14 -4 1 3 3 2 2 2 5 8 11 15 19 23 24 22 19 17 14 11 5 -1 -6 -7 -2 1 2 3 4 6 7 7 8 8 7 8 11 14 16 17 14 11 11 16 21 26 28 30 33 38 41 43 45 47 50 53 54 57 64 74 81 80 77 72 68 66 65 64 60 55 50 46 45 43 41 39 36 34 33 32 29 26 23 21 22 22 23 23 24 24 24 24 22 20 18 16 15 15 15 16 17 18 19 20 21 22 24 24 25 25 26 26 27 27 28 28 28 28 28 28 27 27 27 27 27 27 26 26 25 24 23 21 20 18 16 14 12 11 10 9 7 6 4 3 2 3 4 4 5 5 5 5 5 6 6 6 7 6 6 5 4 2 -1 -4 -7 -9 -10 -10 -6 2 14 24 30 30 28 27 27 28 28 28 28 27 27 27 27 28 28 29 30 30 30 30 30 30 30 30 30 30 30 30 29 28 29 30 33 37 38 38 36 33 31 28 25 22 19 16 14 14 15 18 23 27 29 29 27 25 23 21 20 18 17 16 15 13 11 9 6 3 1 -1 -2 -4 -7 -9 -11 -12 -14 -15 -13 -8 0 10 17 19 17 16 15 14 13 11 7 3 -1 -5 -8 -10 -12 -12 -12 -11 -12 -11 -8 -2 4 4 1 -2 -4 -7 -10 -13 -15 -16 -15 -12 -10 -10 -10 -11 -13 6 30 48 51 50 50 51 51 51 52 55 57 58 56 50 44 41 39 38 38 37 36 34 32 29 26 22 20 18 16 12 6 1 -3 -4 -3 -3 -4 -8 -14 -21 -28 -32 -34 -34 -33 -30 -27 -6 19 36 -23 -26 -30 -34 -34 -33 -30 -29 -30 -30 -29 -27 -26 -26 -28 -30 -33 -36 -38 -40 -41 -41 -41 -41 -39 -37 -34 -30 -26 -22 -17 -15 -15 -16 -16 -11 -7 -6 -7 -10 -13 -16 -18 -21 -24 -26 -28 -30 -32 -35 -40 -45 -49 -51 -51 -48 -42 -35 -27 -19 -12 -8 -7 -7 -8 -12 -18 -25 -30 -32 -27 -16 -5 -2 -1 -2 -1 -1 -0 1 3 6 10 14 14 13 11 10 9 7 3 -1 -4 -6 -4 -4 -3 -1 3 6 7 8 9 10 10 12 15 18 20 19 14 8 5 8 17 22 24 26 30 36 40 41 44 46 50 53 55 63 75 86 90 85 80 75 72 70 68 64 59 55 51 46 40 37 38 39 38 35 34 33 31 27 24 22 22 23 23 24 24 24 25 24 23 21 19 17 16 15 16 16 17 18 19 21 22 23 24 25 25 25 26 26 27 28 28 29 30 30 30 30 29 29 29 29 29 28 28 27 26 25 23 22 20 19 17 15 13 12 10 9 7 6 4 2 2 2 3 3 4 4 3 3 4 4 5 5 5 5 5 4 4 2 -0 -4 -8 -11 -13 -15 -13 -6 5 17 26 28 27 26 26 27 27 27 27 27 27 26 26 27 27 28 29 29 30 30 30 30 30 30 30 30 30 29 29 28 28 28 29 33 36 38 38 36 33 29 25 22 19 16 14 11 11 12 17 23 27 28 28 27 25 24 22 20 19 18 17 16 13 11 8 5 3 2 0 -2 -4 -7 -10 -12 -14 -17 -18 -16 -10 -0 10 14 15 13 12 11 11 10 8 5 2 -2 -6 -8 -10 -12 -12 -12 -12 -12 -11 -9 -1 3 3 -0 -3 -6 -8 -12 -14 -16 -16 -13 -11 -10 -9 -10 -13 -0 24 48 53 51 50 50 50 50 51 54 56 58 58 54 48 43 41 40 39 38 37 36 34 31 28 25 23 22 19 15 9 3 -1 -3 -2 -1 -2 -4 -10 -17 -25 -30 -34 -35 -35 -32 -29 -18 4 32 -19 -21 -24 -26 -26 -26 -25 -26 -29 -31 -31 -31 -30 -29 -29 -30 -32 -35 -37 -39 -40 -41 -41 -40 -39 -37 -35 -31 -27 -21 -15 -13 -14 -16 -19 -17 -11 -8 -7 -9 -12 -14 -17 -20 -24 -27 -30 -32 -34 -36 -38 -43 -48 -52 -53 -51 -47 -41 -32 -23 -14 -8 -7 -7 -8 -9 -11 -17 -25 -33 -37 -32 -18 -9 -6 -5 -4 -3 -3 -3 -2 -0 3 6 7 7 5 4 4 2 0 -1 -2 -3 -2 -1 -0 2 5 7 8 9 10 11 10 11 12 14 14 12 8 3 2 6 12 16 19 22 26 31 36 40 44 49 53 58 64 75 85 91 90 86 81 77 73 69 65 62 59 58 56 53 47 41 37 36 38 37 35 34 32 29 25 23 22 23 24 24 24 24 25 25 24 22 19 18 16 16 16 17 18 19 20 21 22 23 24 25 25 25 26 26 27 28 29 30 31 31 32 32 32 31 31 31 30 29 29 28 27 26 24 22 21 19 17 16 14 12 11 9 8 6 4 2 2 2 2 3 3 3 2 2 2 3 3 4 4 3 3 3 3 3 1 -3 -7 -11 -14 -17 -18 -14 -5 8 20 25 26 25 25 25 26 27 27 26 26 26 26 26 26 27 27 28 29 30 30 30 30 30 29 29 29 29 28 28 27 26 26 29 33 37 39 39 35 31 27 23 20 17 15 12 9 9 11 16 21 24 26 27 27 26 25 23 21 20 19 18 15 13 9 7 5 4 3 1 -1 -4 -7 -10 -13 -16 -19 -20 -17 -10 0 8 10 10 8 7 6 5 5 4 2 -1 -4 -7 -9 -11 -13 -13 -13 -12 -12 -12 -7 -1 2 1 -2 -5 -7 -10 -14 -16 -17 -15 -12 -10 -9 -9 -11 -7 14 45 55 53 51 50 50 50 50 53 56 58 59 57 51 46 42 41 41 40 39 37 35 33 31 28 27 25 22 17 12 6 1 -1 -1 -0 -0 -2 -6 -12 -21 -28 -33 -36 -36 -34 -32 -27 -11 20 -17 -18 -20 -20 -20 -20 -22 -23 -26 -29 -32 -33 -33 -32 -30 -30 -32 -34 -37 -39 -41 -42 -42 -41 -39 -38 -37 -35 -32 -26 -19 -16 -15 -17 -20 -22 -19 -14 -11 -11 -13 -15 -18 -22 -26 -29 -31 -33 -34 -37 -39 -44 -49 -52 -54 -53 -50 -44 -36 -26 -16 -10 -8 -8 -9 -10 -10 -13 -18 -27 -35 -39 -33 -21 -14 -12 -12 -11 -10 -10 -9 -7 -4 -1 1 1 0 -1 -2 -5 -8 -10 -10 -8 -2 3 5 6 6 6 7 8 8 8 6 5 5 5 4 3 1 0 2 5 9 12 16 19 23 27 31 37 44 52 62 73 81 87 91 91 89 85 80 76 71 67 65 64 63 63 62 58 54 48 43 37 33 31 34 35 33 30 26 23 23 23 24 24 24 24 25 25 24 22 20 18 17 17 17 17 18 19 21 22 23 24 25 25 25 26 26 27 27 28 30 31 32 33 34 34 34 34 33 33 32 31 30 29 28 27 25 23 21 20 18 16 14 13 11 10 9 7 5 3 2 2 2 2 2 1 1 1 1 2 2 3 2 2 1 1 2 3 2 -1 -4 -9 -13 -17 -20 -19 -13 -3 11 20 24 24 24 24 25 26 26 26 25 25 25 25 25 26 26 27 28 29 30 30 30 30 29 29 28 28 28 27 27 25 24 25 29 34 38 41 38 34 29 25 22 19 16 14 11 9 9 11 14 18 21 24 26 27 27 26 25 23 22 20 18 14 11 8 6 5 4 4 2 0 -2 -5 -9 -13 -17 -21 -21 -16 -8 0 5 7 6 5 3 2 1 0 -1 -3 -5 -7 -8 -10 -13 -14 -14 -13 -12 -12 -11 -6 -1 1 -0 -3 -6 -9 -13 -16 -17 -16 -13 -10 -8 -8 -10 -10 4 37 56 55 52 50 50 50 50 52 55 58 60 58 53 48 44 42 42 41 40 39 37 35 33 31 29 27 24 19 14 8 3 0 -1 -0 0 -0 -3 -8 -16 -24 -31 -36 -38 -36 -34 -32 -24 -2 -18 -19 -20 -20 -19 -19 -20 -21 -23 -26 -29 -31 -33 -34 -33 -31 -32 -34 -37 -39 -41 -43 -44 -44 -44 -43 -43 -40 -36 -30 -24 -19 -17 -17 -19 -24 -25 -22 -18 -15 -15 -17 -19 -23 -27 -30 -31 -32 -34 -36 -39 -43 -48 -52 -55 -56 -53 -47 -37 -27 -18 -12 -10 -10 -11 -12 -13 -13 -15 -20 -27 -35 -37 -29 -23 -20 -22 -23 -22 -20 -18 -16 -14 -12 -11 -10 -10 -11 -14 -17 -20 -21 -21 -18 -10 -2 3 5 3 2 2 2 2 1 -1 -3 -3 -3 -3 -2 -2 -0 1 4 7 11 16 20 23 27 31 37 44 54 69 87 92 94 92 88 84 79 76 74 72 69 68 69 69 68 64 57 55 53 50 44 40 37 34 29 25 25 26 24 23 24 25 24 24 25 25 25 24 22 20 19 18 17 17 18 19 20 21 22 24 24 25 25 26 26 26 27 28 29 30 32 33 35 36 37 37 36 36 35 33 32 31 30 29 28 25 23 21 20 18 17 15 13 12 11 10 8 6 4 3 2 2 2 1 0 -1 -1 -1 0 1 1 1 -0 -1 -1 0 2 3 2 -1 -6 -11 -16 -20 -21 -19 -12 -1 11 19 23 23 23 24 25 25 25 25 25 25 25 25 25 25 27 28 29 30 30 31 30 30 29 29 28 27 26 25 24 23 23 25 29 35 40 40 37 32 27 23 21 19 16 13 11 10 10 11 12 13 16 20 24 27 28 28 27 26 24 21 17 13 9 7 6 5 5 4 3 2 -1 -4 -8 -13 -18 -21 -19 -13 -6 0 4 5 4 3 1 0 -1 -3 -5 -6 -8 -9 -11 -13 -15 -15 -15 -13 -12 -12 -10 -6 -1 0 -2 -5 -8 -12 -15 -17 -17 -14 -11 -7 -6 -7 -10 -5 21 51 57 55 52 51 51 51 52 54 57 59 58 54 50 46 44 44 43 42 41 39 37 35 33 31 29 25 20 15 10 6 2 0 -0 -0 0 -0 -4 -10 -18 -27 -35 -38 -37 -36 -35 -33 -24 -22 -24 -26 -27 -25 -22 -21 -21 -22 -23 -23 -24 -26 -29 -31 -31 -32 -33 -36 -38 -40 -41 -43 -44 -46 -47 -46 -44 -39 -33 -28 -25 -21 -19 -20 -24 -27 -27 -25 -21 -19 -18 -20 -23 -26 -28 -30 -31 -32 -35 -38 -42 -46 -52 -56 -58 -56 -48 -38 -28 -19 -14 -11 -11 -13 -14 -15 -15 -15 -16 -19 -24 -28 -28 -25 -24 -27 -30 -30 -28 -26 -25 -25 -25 -25 -26 -26 -26 -27 -27 -26 -25 -25 -25 -22 -17 -11 -6 -4 -5 -6 -6 -5 -5 -6 -7 -7 -5 -3 -0 0 0 1 3 7 12 18 22 27 31 35 40 46 56 71 89 90 89 85 79 73 71 74 76 75 72 73 75 74 70 62 55 53 52 50 48 47 43 36 28 22 23 24 22 22 24 25 25 25 25 25 25 24 22 20 19 18 17 18 18 19 20 21 23 24 25 26 26 26 26 27 27 28 30 31 33 35 36 38 39 39 39 38 37 35 33 32 31 30 29 26 23 21 19 18 16 15 13 12 11 10 9 7 6 4 3 3 2 1 -1 -2 -2 -2 -1 -0 0 -0 -2 -3 -4 -3 0 3 4 2 -3 -8 -13 -18 -20 -20 -16 -10 -1 9 17 22 22 23 23 23 24 24 24 24 24 24 24 25 25 27 28 30 31 31 31 31 30 29 28 27 25 23 22 22 21 22 25 29 36 40 39 36 31 26 23 21 18 16 13 12 11 10 9 8 8 10 15 21 25 28 29 29 28 26 22 17 13 9 7 6 6 6 5 4 3 1 -3 -8 -14 -19 -20 -16 -10 -4 1 4 4 4 3 1 -0 -3 -5 -7 -9 -10 -12 -14 -15 -16 -15 -14 -13 -12 -12 -10 -5 -1 -2 -5 -8 -11 -14 -17 -18 -16 -12 -8 -5 -5 -8 -9 -1 39 55 57 54 52 52 52 53 54 56 57 57 54 50 47 45 45 44 44 43 41 40 37 35 33 31 26 22 17 13 9 5 2 0 -0 0 1 1 -3 -10 -21 -33 -37 -37 -36 -36 -37 -36 -23 -25 -30 -34 -33 -29 -26 -24 -23 -22 -22 -23 -24 -25 -27 -29 -31 -32 -33 -34 -36 -38 -40 -42 -44 -46 -46 -44 -40 -35 -32 -29 -26 -23 -22 -24 -27 -29 -29 -26 -23 -21 -20 -21 -23 -25 -26 -28 -30 -33 -36 -40 -45 -50 -55 -58 -57 -50 -40 -28 -19 -14 -12 -13 -14 -15 -16 -15 -15 -14 -13 -14 -16 -19 -20 -21 -23 -27 -26 -25 -24 -25 -27 -28 -30 -32 -34 -33 -29 -24 -21 -20 -22 -25 -28 -28 -24 -18 -13 -11 -10 -9 -8 -7 -6 -4 -2 -1 1 3 3 3 3 6 10 15 21 26 31 35 41 46 52 61 74 82 78 76 73 67 63 67 75 78 76 72 76 80 79 73 64 55 51 48 46 45 45 41 34 27 23 24 26 23 22 22 22 25 26 26 26 26 24 22 20 19 18 18 18 18 19 20 21 23 24 25 26 26 26 26 27 28 29 30 32 34 36 38 40 41 42 41 40 39 36 34 33 32 31 30 27 24 21 19 17 16 14 13 13 12 11 10 8 7 5 4 3 2 1 -1 -2 -2 -2 -2 -1 -1 -2 -4 -6 -7 -6 -2 2 4 4 1 -5 -10 -15 -18 -19 -18 -14 -10 -3 5 12 18 20 21 22 22 22 22 23 23 24 24 24 24 25 27 29 30 31 32 32 32 30 29 27 25 22 21 20 19 19 20 23 29 36 40 40 37 31 26 23 20 18 16 14 12 11 10 7 4 3 5 9 15 21 25 28 29 29 26 22 17 13 11 9 7 6 5 5 5 4 1 -3 -8 -15 -18 -17 -13 -8 -3 1 3 4 4 3 2 -1 -3 -6 -8 -9 -11 -14 -15 -16 -16 -15 -14 -12 -12 -12 -9 -4 -3 -4 -7 -10 -13 -16 -18 -17 -14 -9 -5 -3 -4 -8 -13 18 44 57 57 54 54 54 54 55 56 56 56 53 51 48 47 46 46 45 45 44 42 40 38 35 32 28 24 20 16 12 8 4 2 -0 -0 2 3 4 -0 -11 -27 -35 -37 -36 -36 -37 -38 -20 -23 -29 -35 -37 -35 -32 -29 -27 -25 -24 -25 -25 -26 -27 -28 -30 -31 -31 -32 -33 -34 -36 -39 -41 -42 -43 -42 -40 -36 -34 -32 -29 -26 -25 -25 -26 -27 -28 -28 -26 -23 -21 -20 -20 -20 -22 -25 -28 -32 -35 -39 -44 -50 -55 -58 -57 -51 -41 -29 -19 -13 -13 -13 -14 -15 -15 -15 -14 -12 -9 -7 -7 -10 -13 -17 -20 -24 -22 -19 -18 -19 -21 -25 -28 -30 -31 -30 -26 -22 -19 -19 -21 -24 -27 -27 -25 -21 -16 -13 -10 -6 -4 -1 -1 -0 1 4 6 6 4 4 6 10 15 20 24 29 33 39 44 51 61 72 81 77 67 64 63 61 61 66 73 76 73 71 75 80 81 77 70 59 52 47 42 39 37 34 30 26 25 27 29 27 24 22 21 23 26 28 28 27 25 23 21 19 18 18 18 18 19 20 21 23 24 25 26 26 26 26 26 27 29 30 33 35 38 40 42 43 44 43 42 41 38 36 34 33 32 30 28 25 22 19 17 15 14 13 12 12 12 11 9 8 7 6 5 3 2 0 -1 -2 -2 -1 -1 -1 -3 -5 -7 -9 -9 -6 -0 4 6 3 -1 -7 -11 -14 -16 -16 -15 -14 -11 -7 -2 5 11 16 18 20 20 20 21 22 22 23 22 23 24 25 27 30 31 33 33 33 32 31 29 27 24 22 20 19 17 16 16 20 27 35 41 41 37 30 25 21 19 17 16 14 12 11 9 4 1 -0 0 3 8 13 18 22 25 26 25 22 18 15 13 10 7 5 4 4 4 4 2 -3 -10 -15 -16 -14 -11 -8 -4 -1 2 4 4 4 1 -1 -4 -6 -7 -10 -13 -15 -16 -17 -16 -15 -13 -12 -12 -11 -7 -5 -5 -7 -9 -12 -15 -17 -18 -17 -12 -6 -2 -0 -3 -11 -2 23 48 57 56 55 55 56 56 56 56 54 52 50 48 48 48 48 47 47 46 44 42 40 38 34 30 26 22 19 16 12 8 4 1 -0 1 4 6 6 -2 -21 -33 -37 -37 -36 -36 -38 -17 -22 -29 -35 -37 -38 -37 -35 -33 -30 -29 -28 -28 -28 -28 -29 -30 -30 -31 -31 -31 -33 -35 -38 -39 -40 -41 -40 -39 -37 -35 -33 -30 -28 -26 -25 -24 -24 -25 -27 -27 -26 -23 -21 -19 -18 -19 -23 -27 -31 -34 -39 -43 -49 -54 -57 -57 -51 -41 -30 -19 -13 -13 -13 -14 -14 -14 -14 -13 -11 -9 -6 -4 -5 -7 -11 -16 -23 -23 -18 -15 -15 -18 -24 -29 -32 -33 -31 -26 -21 -19 -18 -20 -22 -24 -23 -21 -18 -16 -14 -11 -6 -2 1 1 1 2 5 8 8 6 7 9 14 19 23 28 32 37 42 48 57 71 81 83 73 64 61 61 62 63 65 69 71 71 71 73 75 77 77 75 64 55 48 42 37 32 29 28 27 27 27 28 26 25 25 24 25 28 30 30 29 27 25 22 20 19 19 19 19 19 20 21 22 24 25 25 26 26 25 26 26 28 30 33 36 39 42 44 45 45 45 44 43 40 37 35 33 32 31 29 26 22 19 16 14 13 12 12 12 12 11 10 9 8 7 6 5 4 2 1 0 -0 -0 -0 -1 -3 -6 -8 -10 -11 -9 -3 3 6 6 2 -4 -8 -11 -12 -13 -13 -14 -14 -13 -11 -8 -2 3 8 12 15 16 18 19 20 21 21 21 21 23 26 28 30 32 33 33 33 32 31 29 27 25 23 21 18 16 13 13 18 25 34 41 41 35 29 24 21 19 17 15 13 12 10 6 2 -1 -2 -3 -1 2 5 8 12 15 18 20 20 20 18 14 10 6 3 2 3 4 3 1 -5 -10 -13 -13 -11 -10 -8 -6 -3 0 3 3 2 0 -2 -3 -5 -7 -10 -13 -16 -17 -17 -16 -14 -13 -12 -12 -10 -8 -6 -7 -9 -11 -14 -17 -19 -19 -15 -9 -3 2 2 -4 -12 -0 26 47 53 55 57 57 58 58 56 54 52 50 49 49 49 49 48 48 48 46 45 42 40 37 33 29 25 22 20 16 12 8 4 0 -0 1 4 5 0 -19 -32 -37 -37 -36 -36 -36 -17 -23 -30 -35 -37 -38 -39 -39 -38 -36 -34 -32 -30 -29 -29 -29 -30 -30 -30 -31 -32 -34 -36 -39 -40 -41 -41 -40 -39 -37 -35 -34 -32 -30 -26 -24 -22 -22 -23 -25 -27 -28 -27 -24 -20 -18 -19 -22 -25 -29 -33 -37 -43 -49 -54 -58 -57 -51 -41 -30 -20 -15 -13 -13 -14 -15 -15 -15 -15 -14 -13 -10 -6 -3 -2 -4 -8 -17 -25 -19 -14 -14 -19 -23 -28 -31 -33 -32 -28 -24 -21 -19 -18 -19 -20 -19 -18 -17 -16 -17 -15 -11 -6 -1 2 2 3 5 8 9 8 9 11 16 21 26 31 36 41 46 51 57 63 68 68 64 63 64 65 65 65 66 67 69 71 73 76 77 77 76 74 67 60 52 45 39 34 31 30 30 28 25 22 20 22 25 28 30 32 32 32 31 29 26 24 22 21 20 20 20 21 21 22 23 24 24 25 25 25 25 25 25 27 30 33 37 40 43 45 46 47 47 46 45 42 39 36 34 33 32 31 28 24 19 16 13 12 12 12 12 11 11 10 9 8 8 7 6 5 4 3 2 2 2 1 0 -2 -5 -8 -11 -12 -11 -6 1 6 8 5 -1 -5 -8 -9 -9 -10 -11 -13 -14 -15 -14 -12 -8 -4 0 4 7 11 14 17 18 18 18 18 19 21 24 26 28 29 29 29 27 25 23 21 20 19 18 18 16 13 11 11 15 22 32 38 37 33 28 25 22 19 16 14 13 12 9 5 1 -1 -3 -4 -3 -1 0 1 2 3 7 12 18 21 19 15 9 4 1 1 2 3 2 -1 -6 -9 -11 -10 -9 -9 -8 -7 -5 -2 0 1 0 -0 -1 -2 -5 -8 -11 -14 -17 -17 -16 -15 -14 -13 -13 -12 -10 -8 -7 -9 -11 -13 -16 -18 -20 -17 -12 -6 1 4 2 -5 -12 -8 21 39 49 55 58 59 59 58 55 52 50 49 49 49 49 49 49 49 48 46 45 43 40 36 32 29 25 23 20 17 12 7 2 -1 -3 -3 -3 -7 -22 -33 -38 -39 -37 -36 -35 -20 -26 -32 -35 -36 -37 -38 -38 -38 -38 -37 -35 -32 -29 -28 -28 -29 -29 -30 -31 -32 -34 -36 -39 -42 -43 -44 -43 -42 -40 -38 -36 -34 -30 -27 -24 -23 -23 -24 -24 -25 -27 -28 -26 -22 -18 -18 -20 -23 -27 -32 -37 -43 -49 -55 -59 -59 -51 -39 -28 -21 -17 -15 -15 -16 -17 -18 -19 -19 -19 -18 -15 -11 -5 -1 1 -0 -6 -19 -23 -19 -15 -17 -20 -24 -27 -30 -31 -29 -27 -24 -20 -18 -17 -17 -17 -16 -16 -17 -19 -19 -17 -13 -6 -1 2 4 6 9 9 8 9 13 18 23 29 34 40 45 50 53 56 59 61 61 62 65 67 68 67 66 67 68 70 72 75 79 80 79 77 75 72 66 59 53 47 41 37 34 31 27 23 18 15 14 17 23 29 31 30 29 28 26 24 24 24 23 22 22 22 22 22 23 23 24 24 25 25 24 24 24 24 26 29 33 37 41 44 46 47 48 48 47 46 44 41 38 36 34 33 32 29 26 21 16 13 12 11 11 12 11 11 10 9 9 9 8 8 7 6 6 5 4 4 3 2 -1 -4 -7 -11 -13 -12 -8 -2 5 9 7 3 -2 -5 -6 -6 -7 -8 -10 -12 -13 -14 -15 -14 -12 -10 -7 -4 -0 3 8 11 11 10 9 7 6 7 9 12 13 13 11 9 7 5 4 4 5 6 8 9 9 8 7 8 11 18 27 32 33 31 28 25 22 19 16 15 13 11 7 4 1 -2 -3 -3 -3 -2 -2 -3 -4 -4 -2 4 14 19 19 14 7 1 -2 -2 -1 1 1 -2 -6 -8 -9 -8 -8 -7 -7 -7 -6 -5 -4 -3 -1 -0 -0 -2 -5 -8 -12 -15 -17 -17 -16 -15 -14 -14 -13 -12 -10 -9 -9 -11 -12 -14 -17 -20 -19 -16 -10 -3 3 4 1 -5 -11 -14 6 28 44 55 60 61 59 57 54 51 49 49 49 49 49 49 49 48 47 46 45 42 39 36 32 28 27 24 21 16 11 5 -1 -6 -10 -14 -19 -29 -37 -41 -41 -39 -37 -36 -25 -30 -34 -35 -35 -35 -35 -35 -35 -36 -36 -34 -31 -28 -26 -25 -26 -27 -29 -30 -30 -31 -33 -37 -42 -46 -48 -49 -48 -46 -43 -39 -35 -32 -29 -26 -25 -25 -24 -23 -23 -26 -29 -29 -25 -19 -17 -18 -21 -26 -32 -37 -43 -50 -57 -62 -62 -51 -37 -27 -22 -20 -19 -18 -19 -20 -22 -23 -23 -23 -22 -20 -16 -10 -4 1 4 4 -6 -18 -22 -21 -19 -19 -20 -22 -25 -28 -28 -27 -24 -21 -19 -17 -16 -15 -15 -16 -18 -20 -22 -22 -19 -14 -7 -2 2 5 7 7 7 9 13 18 24 30 37 43 48 52 54 56 58 59 61 65 69 71 69 67 65 67 69 72 74 76 80 81 80 78 76 74 70 66 62 60 58 51 42 34 29 26 21 16 13 13 15 17 16 14 11 6 4 9 16 22 24 25 25 25 25 24 24 24 25 25 25 25 24 23 23 24 25 29 33 38 42 45 47 48 48 48 48 48 46 43 40 37 35 34 33 31 28 23 18 14 12 12 11 12 11 11 10 10 9 9 9 9 9 8 8 7 7 6 5 4 1 -3 -7 -10 -13 -14 -11 -5 3 9 9 6 1 -2 -4 -4 -5 -6 -7 -9 -10 -12 -14 -14 -14 -13 -12 -11 -9 -6 -3 -0 1 1 -1 -4 -6 -6 -6 -6 -7 -8 -10 -13 -14 -14 -14 -14 -13 -11 -8 -5 -2 -1 -0 1 2 6 13 19 22 21 21 22 22 22 20 18 16 13 10 6 3 0 -2 -3 -3 -2 -2 -4 -6 -8 -8 -6 1 10 17 18 12 4 -2 -5 -5 -2 0 -1 -3 -6 -7 -7 -6 -6 -6 -6 -7 -7 -8 -8 -6 -2 -0 -0 -2 -5 -9 -13 -15 -17 -17 -16 -15 -14 -14 -13 -12 -11 -10 -11 -12 -14 -16 -19 -19 -18 -14 -8 -1 3 3 1 -4 -8 -11 -5 14 40 54 60 61 59 56 52 50 49 48 49 49 49 49 48 48 47 46 44 42 39 35 32 30 28 25 21 15 8 1 -6 -14 -21 -28 -36 -41 -44 -44 -42 -39 -37 -29 -32 -34 -33 -33 -33 -33 -32 -31 -32 -32 -31 -29 -26 -23 -22 -22 -24 -26 -28 -29 -30 -33 -37 -42 -46 -49 -51 -52 -51 -47 -42 -38 -34 -31 -29 -28 -26 -25 -24 -24 -26 -31 -32 -29 -23 -18 -17 -19 -24 -31 -37 -42 -50 -59 -65 -65 -52 -37 -27 -23 -23 -22 -21 -22 -23 -24 -25 -25 -25 -25 -24 -21 -16 -10 -2 3 6 3 -5 -16 -23 -23 -21 -19 -19 -21 -24 -25 -23 -22 -20 -19 -18 -16 -15 -15 -16 -18 -21 -23 -23 -22 -19 -15 -10 -6 -3 -1 1 3 6 10 16 21 28 35 41 45 49 53 56 59 62 64 69 73 73 70 66 63 65 69 73 76 80 82 81 80 79 78 77 73 69 67 65 64 56 46 37 32 30 25 19 14 12 14 15 13 10 6 -0 -3 -3 -1 4 13 24 28 28 27 26 26 26 26 26 26 26 25 24 24 24 26 29 33 38 43 46 48 49 49 49 49 48 47 45 42 39 37 35 34 32 30 25 20 16 13 12 12 12 12 11 11 10 10 10 10 10 10 10 10 10 9 8 7 5 2 -1 -6 -10 -13 -15 -13 -8 -1 7 10 8 4 1 -1 -2 -3 -4 -5 -6 -8 -10 -11 -13 -14 -13 -13 -12 -11 -11 -10 -8 -6 -5 -5 -5 -6 -7 -7 -7 -8 -8 -9 -10 -11 -11 -11 -12 -13 -14 -16 -16 -14 -12 -10 -8 -5 -1 2 2 1 2 5 10 14 18 20 20 19 17 13 9 6 3 0 -1 -2 -2 -1 -2 -5 -7 -9 -10 -7 -1 8 15 16 9 0 -5 -7 -5 -2 -1 -3 -5 -6 -6 -6 -5 -4 -4 -5 -6 -8 -10 -10 -8 -3 -0 0 -2 -5 -10 -13 -16 -17 -17 -16 -15 -15 -14 -14 -12 -11 -11 -12 -13 -15 -17 -19 -19 -17 -12 -6 -1 2 2 0 -1 -4 -7 -8 -0 33 51 60 61 59 55 51 49 48 48 49 49 49 48 48 48 47 46 44 41 37 34 33 31 29 25 19 13 5 -3 -12 -21 -30 -39 -45 -47 -47 -45 -42 -39 -31 -32 -31 -30 -31 -32 -32 -31 -30 -29 -28 -26 -24 -21 -19 -20 -21 -22 -24 -25 -26 -29 -32 -37 -41 -45 -48 -51 -53 -53 -51 -47 -43 -39 -35 -32 -30 -28 -26 -25 -24 -27 -32 -35 -34 -28 -21 -18 -19 -23 -29 -35 -42 -50 -60 -68 -68 -53 -38 -28 -25 -24 -24 -23 -23 -24 -25 -25 -26 -26 -26 -25 -24 -21 -16 -9 -3 1 2 1 -4 -12 -21 -23 -23 -22 -21 -22 -22 -19 -17 -16 -16 -17 -16 -16 -16 -17 -18 -20 -22 -23 -23 -22 -20 -18 -15 -13 -11 -10 -7 -3 1 6 11 17 23 29 34 38 43 50 57 62 66 71 74 74 72 68 66 67 70 75 79 83 83 82 81 81 80 79 74 69 65 64 63 57 49 42 36 33 28 21 15 13 14 14 12 9 5 1 -3 -4 -4 -2 4 15 24 28 29 28 28 27 27 27 27 27 26 26 25 26 27 30 35 39 43 46 48 49 49 49 49 49 48 47 44 42 39 36 35 34 32 28 23 18 15 13 13 13 13 13 12 12 11 11 11 11 11 12 12 12 11 10 9 7 4 -0 -4 -9 -13 -15 -15 -11 -5 4 9 10 7 3 1 -0 -1 -2 -3 -5 -6 -8 -10 -11 -13 -13 -13 -12 -12 -11 -11 -11 -9 -8 -6 -4 -4 -4 -5 -6 -7 -7 -9 -10 -11 -11 -10 -10 -10 -10 -12 -13 -14 -14 -15 -15 -12 -7 -7 -10 -13 -9 -5 -3 1 5 10 14 17 17 16 13 9 6 3 1 0 0 0 -1 -3 -6 -8 -10 -10 -8 -2 6 13 11 5 -2 -6 -6 -4 -3 -4 -5 -6 -6 -6 -5 -3 -2 -3 -4 -7 -9 -11 -11 -8 -4 -0 1 -2 -6 -11 -14 -16 -17 -17 -16 -16 -15 -15 -14 -13 -12 -12 -13 -13 -16 -18 -19 -18 -15 -10 -5 -1 -1 -1 0 1 1 -2 -8 -2 23 48 60 62 58 54 50 48 47 48 48 48 47 48 48 47 46 44 42 39 37 36 34 32 29 24 18 11 2 -7 -18 -28 -38 -45 -49 -49 -47 -44 -41 -28 -28 -27 -28 -30 -32 -31 -30 -27 -25 -22 -18 -16 -16 -17 -19 -20 -22 -23 -24 -25 -28 -32 -35 -39 -42 -46 -50 -52 -54 -53 -51 -48 -44 -40 -35 -32 -30 -27 -26 -26 -28 -32 -36 -36 -33 -26 -21 -20 -22 -27 -34 -42 -51 -61 -68 -69 -55 -41 -31 -27 -26 -25 -25 -24 -23 -24 -25 -25 -25 -25 -25 -24 -23 -20 -16 -11 -7 -4 -2 -3 -6 -13 -17 -18 -21 -24 -26 -24 -19 -15 -12 -12 -14 -16 -17 -18 -18 -18 -19 -20 -21 -21 -22 -22 -21 -20 -20 -20 -19 -18 -17 -15 -13 -9 -4 1 5 9 13 20 30 41 51 60 66 70 71 71 70 71 71 74 78 82 84 83 83 84 85 84 81 74 67 62 61 62 59 53 47 41 36 30 22 16 13 13 13 11 10 10 10 7 2 -1 -1 2 7 13 18 23 27 29 28 29 29 29 29 28 28 28 28 30 33 36 40 44 47 48 49 50 50 50 50 49 48 47 44 41 38 37 35 34 31 26 21 17 14 14 14 14 15 15 14 13 13 12 12 12 13 13 13 13 12 11 8 5 1 -3 -8 -12 -14 -15 -13 -8 -0 7 10 9 6 3 2 1 -0 -2 -4 -5 -6 -8 -10 -11 -12 -12 -12 -12 -11 -11 -11 -11 -10 -9 -7 -5 -5 -5 -6 -7 -8 -9 -10 -11 -12 -11 -10 -10 -10 -10 -10 -10 -10 -12 -15 -17 -12 -11 -13 -13 -8 -8 -8 -8 -6 -4 -0 4 9 13 14 12 9 6 4 3 3 2 1 -2 -4 -7 -9 -10 -10 -9 -4 5 10 8 3 -3 -5 -5 -5 -5 -6 -6 -6 -6 -5 -3 -1 -1 -3 -5 -8 -10 -10 -10 -7 -4 0 -0 -3 -8 -12 -15 -16 -17 -17 -17 -17 -16 -15 -14 -13 -13 -13 -13 -14 -16 -19 -19 -17 -13 -8 -5 -4 -4 -2 1 5 6 2 -3 -3 12 44 59 60 57 53 49 47 47 47 47 46 47 47 47 45 43 41 39 38 38 37 36 32 28 22 16 8 -2 -12 -24 -34 -43 -48 -49 -49 -47 -43 -20 -20 -22 -25 -28 -29 -28 -26 -24 -22 -18 -14 -12 -13 -15 -18 -20 -22 -23 -23 -24 -27 -31 -35 -37 -40 -44 -48 -52 -54 -55 -54 -51 -47 -43 -38 -35 -32 -29 -28 -27 -29 -32 -35 -37 -37 -32 -25 -22 -23 -27 -33 -42 -51 -59 -64 -64 -54 -43 -35 -31 -29 -27 -26 -24 -23 -23 -24 -24 -23 -23 -23 -23 -23 -21 -20 -17 -14 -10 -6 -5 -7 -11 -15 -15 -15 -16 -19 -24 -24 -20 -15 -12 -13 -15 -16 -16 -16 -17 -18 -18 -18 -19 -20 -21 -21 -22 -21 -20 -19 -18 -20 -22 -24 -25 -24 -24 -24 -23 -23 -19 -12 0 15 31 44 53 58 61 63 67 70 75 81 84 84 84 85 88 90 89 83 73 64 60 60 62 62 59 53 46 38 31 23 16 13 13 12 12 14 17 20 16 12 8 5 4 6 9 12 15 18 21 25 28 30 30 30 30 30 30 31 33 35 38 41 44 46 48 49 50 50 50 50 50 50 49 47 44 41 38 37 36 34 29 24 20 16 15 15 16 17 17 17 16 15 14 14 13 13 14 14 14 14 12 10 7 3 -1 -6 -10 -12 -14 -14 -11 -4 3 9 11 9 6 5 3 2 -0 -2 -3 -5 -7 -8 -10 -11 -11 -11 -11 -11 -11 -11 -12 -12 -12 -11 -9 -7 -6 -6 -6 -7 -8 -9 -11 -12 -12 -11 -9 -9 -9 -10 -10 -10 -10 -12 -15 -12 -9 -7 -7 -7 -9 -9 -10 -10 -11 -10 -8 -4 -0 5 9 9 9 7 6 5 4 2 0 -3 -5 -8 -10 -11 -11 -10 -4 4 8 7 1 -2 -3 -4 -4 -6 -6 -6 -5 -4 -3 -1 -1 -2 -4 -8 -10 -10 -10 -9 -7 -3 -0 -1 -5 -9 -13 -15 -17 -17 -18 -18 -18 -17 -15 -14 -14 -13 -13 -14 -15 -17 -19 -18 -16 -12 -8 -6 -6 -5 -1 4 9 10 6 1 -3 1 36 53 58 56 51 48 48 46 45 45 46 47 46 44 42 40 39 39 40 39 38 35 31 26 20 13 4 -7 -18 -29 -39 -46 -47 -48 -47 -45 -13 -13 -15 -19 -23 -25 -25 -23 -22 -19 -16 -12 -10 -10 -11 -15 -19 -22 -23 -22 -23 -27 -32 -35 -36 -38 -41 -45 -49 -53 -56 -55 -52 -49 -45 -41 -38 -35 -32 -30 -29 -30 -32 -33 -35 -36 -36 -31 -26 -25 -27 -32 -41 -50 -55 -56 -52 -46 -41 -36 -33 -31 -30 -29 -27 -24 -22 -22 -22 -22 -22 -22 -22 -22 -22 -21 -20 -18 -14 -10 -8 -8 -10 -15 -15 -14 -13 -15 -19 -23 -24 -21 -16 -15 -15 -13 -12 -12 -15 -17 -16 -16 -15 -16 -18 -21 -24 -24 -23 -19 -17 -17 -17 -19 -20 -21 -22 -23 -25 -27 -28 -29 -28 -24 -14 1 14 24 30 33 37 44 57 71 81 85 86 89 92 94 94 85 72 62 58 60 64 66 64 58 48 40 32 24 18 13 12 12 15 19 24 25 22 19 15 10 7 7 9 10 10 11 13 16 20 25 30 32 31 32 32 34 35 38 40 42 44 46 47 48 49 50 51 51 51 51 50 49 47 44 41 39 37 36 33 28 23 19 17 17 18 19 20 20 19 17 16 15 14 14 14 15 15 15 14 12 9 6 1 -3 -7 -9 -11 -12 -11 -7 -0 7 11 12 10 8 6 4 2 0 -1 -3 -5 -6 -8 -9 -9 -9 -9 -9 -9 -9 -10 -11 -13 -14 -12 -10 -7 -5 -4 -5 -6 -8 -10 -12 -12 -11 -9 -8 -8 -9 -10 -10 -10 -10 -12 -11 -8 -5 -6 -9 -9 -9 -9 -9 -10 -11 -12 -11 -10 -6 -0 5 9 10 9 7 5 3 1 -1 -4 -6 -8 -10 -11 -11 -9 -3 4 8 5 1 -1 -2 -3 -4 -5 -5 -4 -3 -3 -1 -1 -1 -4 -7 -10 -11 -10 -9 -9 -7 -3 -1 -3 -6 -10 -13 -16 -18 -19 -19 -19 -18 -17 -16 -15 -14 -14 -13 -14 -16 -18 -19 -17 -14 -11 -8 -8 -7 -4 1 7 11 12 10 5 -2 0 24 46 56 55 51 49 47 45 44 45 46 45 44 41 38 38 39 40 40 40 37 34 29 24 17 8 -3 -13 -25 -35 -44 -46 -45 -45 -47 -12 -10 -10 -13 -18 -22 -23 -22 -20 -18 -14 -10 -7 -7 -8 -12 -17 -21 -23 -22 -23 -28 -32 -35 -36 -37 -38 -40 -45 -51 -55 -55 -52 -49 -45 -42 -40 -37 -35 -33 -32 -32 -32 -32 -32 -33 -35 -35 -31 -27 -25 -28 -36 -46 -54 -58 -55 -48 -42 -38 -35 -33 -32 -32 -30 -27 -23 -21 -21 -21 -22 -22 -22 -22 -22 -21 -21 -19 -16 -13 -11 -9 -10 -14 -17 -16 -14 -14 -17 -22 -25 -24 -19 -16 -15 -15 -14 -12 -13 -14 -13 -12 -12 -13 -16 -20 -23 -25 -25 -22 -19 -17 -14 -13 -13 -15 -18 -21 -24 -26 -29 -31 -33 -32 -30 -25 -18 -14 -13 -14 -15 -11 4 27 54 75 85 90 94 97 96 86 71 60 56 59 65 69 68 60 49 39 32 25 19 15 13 15 18 23 27 27 25 22 18 13 10 9 10 10 10 9 9 9 12 19 26 31 32 33 34 35 37 39 41 43 44 45 46 47 49 50 51 51 52 52 52 51 49 46 43 41 39 38 35 32 27 22 19 19 20 21 22 22 22 20 19 17 16 15 15 16 16 16 16 14 11 8 5 1 -3 -5 -7 -9 -10 -8 -3 3 10 14 13 11 9 7 5 3 1 -1 -2 -4 -5 -6 -6 -6 -6 -6 -6 -6 -7 -8 -10 -13 -14 -13 -10 -6 -4 -3 -5 -7 -9 -11 -12 -11 -10 -8 -7 -7 -8 -9 -9 -10 -11 -12 -11 -7 -6 -8 -9 -9 -9 -10 -10 -10 -10 -10 -11 -11 -8 -1 7 12 12 9 6 4 2 0 -2 -4 -7 -9 -10 -10 -10 -7 -0 7 8 4 1 -0 -1 -1 -2 -2 -2 -2 -3 -2 -1 -1 -3 -7 -10 -12 -11 -10 -9 -8 -6 -3 -3 -4 -8 -11 -14 -17 -19 -20 -20 -20 -19 -18 -16 -15 -14 -14 -14 -15 -17 -18 -18 -17 -13 -11 -10 -9 -7 -2 4 10 13 14 13 9 1 2 13 38 51 51 50 47 45 43 44 44 44 43 40 38 37 38 40 41 40 38 35 31 26 19 10 1 -9 -20 -31 -42 -45 -42 -40 -46 -20 -15 -13 -14 -17 -19 -20 -19 -17 -14 -10 -7 -6 -6 -8 -12 -17 -20 -22 -22 -24 -27 -31 -33 -35 -37 -38 -41 -44 -49 -52 -54 -52 -49 -44 -40 -38 -37 -35 -35 -34 -34 -33 -32 -30 -30 -32 -35 -35 -33 -28 -25 -28 -37 -48 -59 -62 -55 -46 -40 -37 -35 -34 -34 -32 -29 -25 -22 -21 -21 -21 -21 -21 -21 -20 -20 -19 -19 -18 -16 -14 -12 -11 -13 -20 -22 -21 -17 -16 -19 -24 -26 -23 -17 -15 -16 -17 -16 -13 -11 -11 -10 -11 -11 -14 -17 -20 -23 -25 -25 -23 -20 -16 -13 -11 -12 -15 -18 -22 -25 -28 -31 -32 -33 -33 -31 -29 -28 -28 -29 -31 -32 -28 -16 7 40 66 82 91 95 96 88 74 62 56 57 64 70 70 63 49 38 31 25 21 17 15 16 19 23 27 27 25 23 20 17 13 12 11 11 11 10 9 9 9 13 18 26 31 33 35 36 39 41 42 43 44 45 46 46 48 49 50 51 52 52 53 53 52 49 46 43 41 40 38 35 31 26 23 22 22 24 25 25 25 23 22 20 18 17 17 17 17 18 17 16 14 11 8 5 1 -1 -3 -5 -7 -8 -5 -0 7 13 15 15 13 11 9 6 3 1 -0 -1 -2 -3 -3 -2 -2 -3 -3 -4 -4 -6 -8 -11 -14 -14 -12 -9 -5 -3 -3 -5 -8 -11 -12 -12 -10 -8 -6 -6 -7 -8 -9 -9 -10 -13 -13 -10 -6 -6 -8 -9 -9 -9 -10 -10 -10 -10 -9 -9 -10 -6 2 11 13 9 7 5 3 2 -0 -3 -5 -8 -9 -10 -10 -9 -4 5 8 6 3 2 2 1 1 0 -0 -1 -3 -2 -1 -0 -2 -6 -10 -12 -12 -11 -9 -8 -8 -6 -4 -4 -6 -10 -13 -16 -18 -20 -21 -21 -20 -19 -18 -16 -15 -15 -14 -14 -16 -18 -19 -18 -16 -13 -12 -11 -9 -6 1 7 12 14 14 15 12 5 3 7 24 35 39 40 41 41 40 39 39 39 38 38 38 39 39 40 40 38 36 32 28 21 12 3 -6 -16 -27 -39 -44 -42 -37 -45 -29 -27 -25 -23 -20 -17 -14 -11 -9 -8 -6 -6 -6 -8 -11 -16 -19 -22 -24 -25 -26 -28 -30 -32 -35 -37 -39 -41 -43 -46 -50 -52 -53 -51 -47 -42 -38 -36 -35 -34 -34 -34 -33 -32 -29 -28 -28 -31 -34 -34 -33 -31 -30 -35 -45 -56 -64 -60 -50 -42 -38 -37 -36 -35 -33 -30 -28 -25 -22 -21 -20 -20 -20 -19 -18 -18 -18 -18 -18 -17 -16 -14 -13 -14 -21 -28 -29 -23 -17 -17 -21 -25 -26 -20 -16 -16 -18 -19 -17 -12 -10 -11 -12 -13 -13 -14 -16 -19 -22 -23 -24 -22 -19 -15 -13 -13 -14 -16 -18 -22 -25 -28 -30 -31 -32 -31 -30 -30 -30 -30 -32 -35 -37 -35 -27 -5 28 56 77 88 92 89 79 68 60 59 65 73 74 65 50 38 31 26 21 17 16 14 16 19 22 23 22 20 18 17 16 15 14 12 12 11 10 10 10 10 11 18 26 31 35 38 40 42 43 44 45 45 45 46 47 48 49 50 51 52 53 53 53 51 48 45 43 41 40 38 35 31 26 24 25 26 27 28 28 27 25 23 21 19 19 19 19 19 19 18 16 14 12 9 6 3 1 -2 -4 -6 -6 -3 3 10 15 16 16 14 12 9 6 4 2 1 1 1 1 1 1 1 -0 -2 -3 -5 -7 -10 -12 -13 -13 -10 -6 -3 -2 -4 -7 -10 -12 -12 -11 -9 -6 -5 -6 -7 -8 -8 -9 -11 -13 -11 -6 -6 -7 -8 -9 -8 -8 -9 -10 -10 -10 -9 -9 -8 -3 8 12 10 7 5 4 3 1 -1 -4 -6 -8 -9 -9 -9 -7 1 8 8 5 3 3 3 3 2 1 -1 -3 -3 -2 -0 -1 -5 -10 -13 -13 -12 -10 -8 -8 -8 -7 -6 -6 -8 -11 -14 -17 -20 -21 -22 -22 -21 -20 -18 -17 -16 -15 -15 -16 -18 -19 -19 -18 -16 -14 -13 -12 -9 -3 4 10 13 14 14 15 14 10 3 8 9 4 4 22 28 28 26 25 26 29 34 38 40 41 40 40 38 36 34 29 22 14 6 -2 -10 -23 -37 -44 -43 -38 -45 -32 -33 -33 -30 -25 -19 -12 -8 -6 -6 -7 -8 -10 -12 -14 -18 -22 -25 -27 -28 -29 -30 -31 -33 -36 -38 -40 -41 -43 -45 -47 -50 -52 -52 -50 -46 -41 -37 -34 -33 -32 -32 -32 -31 -29 -26 -24 -24 -26 -29 -31 -33 -33 -35 -42 -51 -59 -59 -52 -43 -38 -37 -36 -34 -32 -30 -28 -26 -23 -22 -21 -21 -20 -19 -18 -17 -17 -16 -16 -17 -17 -16 -15 -15 -21 -30 -36 -31 -20 -17 -18 -22 -26 -25 -20 -17 -17 -19 -21 -16 -13 -13 -15 -16 -14 -13 -13 -15 -17 -19 -20 -21 -20 -18 -16 -15 -14 -14 -16 -18 -22 -25 -27 -29 -29 -29 -29 -29 -29 -29 -30 -33 -35 -38 -39 -33 -12 17 46 68 81 84 81 74 69 67 71 76 77 70 53 39 32 26 20 14 13 14 18 21 20 20 20 19 17 15 15 14 13 12 12 12 12 12 11 11 10 12 18 26 34 39 41 43 44 45 45 45 45 46 47 47 48 49 50 51 52 53 54 53 50 48 45 43 42 40 38 34 30 27 27 28 29 30 31 30 28 26 24 22 21 21 21 21 21 20 19 18 16 13 10 7 4 2 -1 -5 -6 -5 -1 6 12 15 16 16 13 11 8 6 4 4 4 4 4 4 3 3 1 -1 -3 -5 -7 -9 -10 -12 -12 -11 -7 -4 -2 -2 -5 -8 -11 -12 -12 -10 -7 -5 -5 -6 -7 -7 -8 -10 -12 -12 -7 -5 -6 -7 -8 -7 -7 -8 -9 -10 -10 -9 -9 -9 -7 4 10 9 7 5 4 3 2 -1 -3 -5 -7 -7 -8 -9 -9 -3 6 8 7 5 5 5 4 3 1 -1 -3 -4 -2 -1 -1 -4 -9 -13 -14 -13 -11 -9 -8 -8 -9 -8 -8 -8 -10 -13 -16 -19 -21 -23 -23 -22 -21 -20 -18 -17 -16 -15 -16 -18 -19 -20 -19 -18 -16 -15 -14 -12 -7 -1 6 12 14 14 14 14 14 13 9 5 1 1 5 -2 1 4 1 -1 7 19 30 39 42 42 40 39 37 35 31 24 17 10 4 -3 -15 -31 -44 -45 -42 -46 -31 -32 -31 -30 -27 -23 -18 -13 -10 -10 -11 -13 -15 -16 -18 -20 -23 -26 -29 -31 -32 -32 -34 -36 -38 -41 -43 -43 -44 -44 -45 -47 -50 -52 -52 -49 -44 -39 -35 -32 -31 -31 -31 -30 -28 -25 -21 -19 -19 -21 -23 -26 -28 -30 -35 -42 -50 -54 -51 -45 -39 -36 -36 -33 -30 -28 -26 -25 -24 -24 -24 -24 -22 -20 -18 -17 -16 -15 -15 -16 -17 -17 -17 -16 -19 -29 -40 -42 -29 -19 -17 -19 -23 -26 -24 -20 -17 -17 -20 -21 -19 -17 -17 -17 -16 -13 -11 -11 -11 -13 -15 -17 -18 -18 -17 -16 -15 -14 -15 -17 -19 -21 -23 -26 -27 -27 -27 -28 -28 -28 -29 -32 -34 -37 -39 -39 -34 -17 7 33 53 63 69 72 72 73 76 79 80 75 57 41 33 27 20 13 13 19 24 24 21 21 21 20 17 14 12 11 10 9 10 10 10 10 9 9 10 10 13 20 29 39 42 44 45 45 46 46 46 46 47 47 48 48 49 50 52 53 54 54 53 50 47 45 43 42 40 37 33 30 29 29 31 32 33 33 32 30 28 26 24 23 23 23 23 23 23 22 20 17 14 10 8 5 1 -2 -5 -5 -3 1 7 12 15 16 15 13 10 8 7 6 6 6 6 5 4 4 2 -0 -3 -5 -7 -9 -10 -11 -11 -11 -9 -5 -2 -2 -3 -6 -9 -12 -12 -11 -8 -6 -4 -5 -6 -7 -7 -8 -11 -12 -8 -5 -5 -6 -7 -6 -6 -7 -8 -9 -9 -8 -8 -9 -9 -1 7 8 7 4 4 3 2 0 -3 -5 -6 -6 -7 -8 -9 -7 2 7 9 7 6 5 4 3 0 -2 -4 -5 -3 -1 -0 -3 -8 -12 -15 -15 -13 -11 -9 -8 -9 -10 -10 -9 -10 -11 -15 -18 -21 -23 -23 -23 -23 -22 -20 -18 -17 -17 -17 -18 -20 -20 -20 -19 -18 -17 -16 -14 -11 -5 1 8 12 13 13 13 12 12 12 10 9 8 6 -2 -5 -5 -4 -7 -12 -12 2 25 38 42 42 40 38 36 33 28 22 17 12 7 -2 -20 -39 -47 -46 -48 -29 -29 -28 -28 -28 -28 -25 -21 -17 -15 -15 -17 -19 -21 -22 -23 -25 -28 -32 -34 -35 -36 -37 -39 -42 -44 -46 -47 -46 -46 -46 -47 -50 -52 -53 -51 -47 -41 -36 -32 -30 -29 -29 -28 -27 -25 -21 -18 -17 -17 -19 -21 -24 -25 -28 -33 -40 -46 -47 -44 -40 -37 -36 -33 -30 -27 -24 -23 -24 -26 -27 -27 -25 -22 -20 -18 -16 -14 -14 -15 -16 -17 -17 -16 -17 -26 -39 -49 -40 -27 -19 -18 -20 -22 -24 -22 -19 -16 -16 -20 -23 -23 -22 -19 -17 -13 -10 -8 -8 -9 -11 -14 -15 -16 -16 -15 -15 -15 -16 -17 -18 -20 -21 -23 -25 -27 -27 -27 -28 -29 -30 -32 -34 -37 -38 -38 -37 -33 -24 -7 12 25 35 42 47 53 61 70 77 76 62 44 35 28 21 16 18 26 29 27 23 23 23 22 18 14 10 9 9 9 9 9 8 8 9 9 9 9 11 18 28 39 43 44 45 46 46 47 47 47 47 48 47 47 48 49 51 53 54 55 54 52 49 46 44 43 41 39 36 33 31 30 32 33 35 35 34 33 31 29 27 26 25 25 25 26 26 26 24 21 17 14 10 7 3 -0 -3 -4 -4 -1 3 7 11 14 15 14 13 11 9 8 8 8 7 7 5 4 2 -0 -3 -6 -8 -9 -9 -10 -11 -12 -10 -7 -4 -1 -2 -5 -8 -11 -12 -12 -9 -6 -4 -4 -5 -6 -6 -7 -9 -12 -9 -5 -4 -4 -5 -5 -5 -5 -6 -8 -9 -8 -7 -8 -10 -7 3 7 6 4 3 3 2 0 -2 -5 -6 -6 -6 -6 -8 -9 -3 4 8 9 7 6 5 3 -0 -3 -5 -6 -4 -2 0 -2 -6 -11 -14 -16 -15 -13 -11 -9 -9 -11 -12 -12 -11 -11 -14 -18 -21 -23 -24 -24 -24 -23 -22 -20 -19 -18 -18 -19 -21 -21 -21 -20 -20 -19 -18 -17 -14 -9 -3 4 10 13 13 12 12 11 10 9 8 8 9 4 -3 -9 -6 -7 -10 -13 -16 -16 17 33 40 41 40 37 35 32 28 24 22 19 15 2 -21 -48 -48 -49 -30 -29 -28 -28 -29 -30 -30 -27 -24 -20 -18 -19 -22 -24 -26 -26 -28 -31 -34 -36 -38 -40 -41 -43 -45 -48 -50 -51 -50 -48 -48 -49 -51 -52 -52 -51 -48 -43 -38 -33 -30 -29 -29 -28 -28 -27 -24 -21 -19 -18 -19 -21 -25 -27 -29 -31 -35 -39 -41 -41 -40 -38 -37 -35 -32 -29 -25 -23 -23 -25 -26 -27 -26 -24 -22 -19 -16 -15 -14 -15 -16 -17 -18 -17 -16 -22 -34 -48 -46 -34 -25 -20 -19 -18 -20 -20 -19 -17 -15 -17 -20 -24 -26 -24 -20 -16 -13 -9 -7 -7 -8 -11 -13 -15 -15 -15 -15 -16 -17 -19 -21 -22 -23 -24 -25 -27 -28 -29 -30 -31 -33 -35 -37 -38 -38 -37 -36 -34 -31 -27 -21 -16 -13 -11 -7 2 18 37 56 68 62 45 35 27 22 21 27 32 33 30 27 25 25 24 20 15 10 8 8 9 9 7 7 8 9 10 9 9 11 18 29 39 43 44 46 47 47 47 47 47 48 47 47 47 48 49 51 53 54 56 56 55 52 49 46 44 42 40 38 35 33 32 33 34 36 36 36 36 34 33 31 29 27 27 27 29 30 30 29 25 20 16 12 9 5 2 -1 -2 -3 -2 0 3 8 12 15 16 15 14 12 11 10 10 9 8 7 5 3 0 -3 -6 -8 -9 -9 -9 -11 -12 -12 -10 -5 -1 -1 -3 -6 -9 -12 -12 -10 -7 -5 -3 -3 -4 -5 -6 -8 -12 -10 -6 -3 -3 -4 -4 -4 -4 -5 -7 -8 -8 -7 -7 -9 -10 -3 3 6 5 4 3 2 1 -2 -5 -7 -7 -6 -6 -7 -9 -7 -2 5 9 8 7 5 3 -0 -3 -6 -7 -6 -3 0 -1 -4 -9 -13 -16 -17 -15 -13 -11 -9 -10 -12 -13 -13 -11 -13 -17 -21 -23 -24 -24 -25 -25 -24 -22 -20 -19 -19 -20 -21 -22 -22 -22 -21 -21 -20 -19 -16 -13 -8 -1 6 11 13 13 12 11 10 9 7 6 7 6 -2 -11 -8 -8 -9 -10 -11 -12 -16 2 24 37 41 39 37 34 32 31 29 28 26 20 4 -41 -47 -47 -34 -32 -30 -28 -28 -29 -30 -30 -28 -26 -23 -24 -26 -28 -30 -31 -33 -35 -37 -39 -41 -42 -43 -45 -47 -49 -51 -52 -51 -50 -49 -51 -52 -52 -51 -49 -46 -43 -40 -36 -33 -31 -30 -29 -29 -29 -29 -26 -23 -20 -19 -20 -24 -27 -30 -32 -34 -37 -38 -39 -38 -36 -35 -35 -33 -31 -28 -25 -25 -25 -25 -25 -26 -25 -23 -20 -18 -16 -16 -16 -17 -18 -19 -18 -16 -19 -29 -44 -47 -38 -30 -24 -22 -19 -17 -18 -18 -18 -16 -16 -17 -20 -24 -26 -24 -21 -17 -13 -9 -5 -5 -8 -12 -15 -16 -16 -16 -16 -17 -19 -22 -25 -27 -28 -28 -29 -30 -31 -33 -35 -37 -38 -39 -39 -39 -37 -35 -33 -31 -29 -28 -28 -29 -28 -26 -24 -22 -12 12 42 54 43 32 26 24 26 33 36 35 33 30 28 28 26 23 17 11 8 7 8 8 6 6 8 9 10 9 10 12 18 26 34 38 40 43 46 48 47 47 47 47 47 46 47 47 49 51 53 55 56 57 57 55 51 48 45 42 41 39 37 35 33 33 35 36 37 38 37 37 35 33 31 30 29 31 33 35 35 32 28 23 18 14 10 7 4 2 0 -1 -1 0 2 5 9 14 17 18 17 15 13 13 12 11 9 8 6 4 1 -2 -5 -7 -8 -8 -9 -10 -13 -14 -12 -7 -2 -0 -2 -5 -8 -11 -12 -11 -9 -6 -3 -2 -3 -4 -5 -7 -11 -10 -6 -3 -2 -3 -3 -3 -3 -4 -5 -7 -7 -7 -6 -7 -10 -6 -1 4 6 6 5 4 2 -1 -5 -8 -9 -8 -7 -6 -7 -8 -6 -1 5 8 8 6 4 1 -3 -6 -9 -8 -5 -1 -0 -3 -7 -12 -16 -18 -18 -16 -13 -11 -10 -11 -13 -15 -14 -14 -16 -20 -23 -24 -25 -26 -27 -26 -25 -23 -21 -20 -21 -22 -23 -23 -23 -22 -22 -22 -20 -18 -16 -12 -5 2 8 12 13 12 11 11 9 8 5 6 5 -0 -12 -10 -8 -9 -9 -10 -8 -9 -11 -8 9 37 39 38 36 35 34 34 33 32 28 17 -30 -43 -44 -35 -35 -32 -29 -25 -25 -27 -29 -30 -30 -29 -31 -32 -33 -34 -36 -38 -39 -40 -40 -40 -40 -41 -42 -43 -43 -42 -42 -42 -42 -42 -44 -46 -46 -46 -44 -43 -41 -39 -36 -34 -32 -30 -30 -30 -30 -31 -29 -26 -23 -20 -20 -22 -26 -29 -32 -34 -37 -39 -39 -37 -33 -30 -31 -33 -33 -31 -29 -27 -26 -25 -25 -25 -24 -23 -21 -20 -18 -18 -18 -19 -20 -21 -20 -18 -18 -24 -37 -43 -38 -32 -27 -25 -22 -19 -17 -17 -17 -16 -15 -15 -17 -20 -24 -26 -24 -22 -18 -14 -8 -5 -6 -11 -15 -18 -18 -17 -16 -17 -18 -21 -25 -27 -29 -31 -31 -31 -31 -32 -33 -36 -39 -40 -39 -38 -37 -35 -34 -32 -31 -30 -30 -30 -29 -27 -23 -21 -21 -18 -5 26 31 28 26 27 30 36 38 36 33 31 31 31 29 25 20 14 10 9 9 9 7 8 8 9 10 10 11 14 19 25 32 36 38 42 47 48 47 47 46 46 45 45 45 47 49 51 53 55 57 58 58 57 55 51 47 44 41 40 38 37 35 34 35 37 38 38 39 38 37 35 34 32 32 34 37 39 39 36 31 25 19 15 12 9 7 5 4 2 2 2 2 4 6 11 16 18 19 18 16 15 14 13 11 9 7 5 2 -1 -4 -6 -7 -7 -7 -10 -14 -16 -14 -10 -3 -0 -1 -3 -6 -9 -11 -12 -10 -7 -3 -2 -2 -2 -4 -6 -10 -11 -7 -2 -1 -1 -2 -2 -2 -2 -3 -5 -6 -6 -6 -6 -9 -8 -4 2 5 6 7 6 4 1 -4 -7 -9 -10 -9 -7 -6 -7 -8 -7 -1 4 7 7 5 2 -1 -5 -9 -10 -7 -2 -0 -1 -5 -10 -15 -18 -19 -19 -16 -13 -11 -11 -12 -15 -16 -15 -16 -18 -22 -24 -25 -27 -28 -29 -28 -25 -23 -21 -22 -23 -24 -24 -24 -23 -23 -23 -22 -21 -18 -15 -10 -2 5 11 13 13 12 11 10 8 4 3 4 0 -14 -12 -9 -8 -9 -10 -9 -6 -6 -7 -11 3 29 39 38 36 35 35 35 34 31 19 -21 -37 -41 -29 -32 -32 -28 -22 -20 -23 -26 -29 -30 -30 -33 -34 -35 -36 -38 -41 -42 -40 -37 -34 -31 -29 -29 -29 -28 -26 -25 -26 -27 -30 -33 -35 -38 -39 -39 -38 -37 -35 -34 -32 -31 -29 -29 -29 -30 -30 -30 -28 -25 -22 -20 -21 -24 -28 -31 -34 -38 -41 -41 -37 -31 -25 -26 -29 -32 -33 -32 -31 -29 -27 -26 -24 -24 -23 -23 -22 -20 -20 -20 -21 -21 -22 -23 -21 -19 -22 -31 -40 -37 -32 -29 -27 -25 -22 -19 -18 -17 -17 -16 -15 -15 -18 -21 -25 -26 -25 -23 -19 -12 -8 -7 -10 -15 -18 -19 -19 -18 -18 -18 -20 -23 -26 -29 -31 -32 -32 -31 -30 -31 -34 -38 -39 -39 -37 -36 -35 -34 -33 -32 -31 -31 -30 -30 -28 -24 -22 -22 -22 -20 -9 7 19 26 31 33 37 39 38 35 34 35 34 31 27 23 18 14 12 11 11 9 10 11 12 11 10 12 16 20 26 32 37 41 45 48 49 48 47 46 44 44 43 44 46 48 51 54 56 57 59 60 60 58 55 51 46 43 40 39 38 36 36 36 38 39 39 39 39 38 37 36 35 35 38 41 43 43 40 33 26 19 15 12 11 10 8 7 5 4 4 4 4 4 8 12 16 19 19 19 18 16 15 13 11 9 7 4 1 -2 -4 -5 -5 -6 -10 -14 -16 -16 -12 -6 -1 -1 -2 -5 -8 -11 -12 -11 -8 -4 -1 -0 -1 -2 -4 -9 -11 -7 -2 0 -0 -2 -2 -2 -1 -2 -3 -5 -5 -5 -5 -8 -9 -7 -1 4 6 7 7 5 2 -2 -6 -9 -10 -10 -9 -7 -5 -6 -8 -7 -1 5 7 6 3 -0 -4 -8 -10 -9 -5 -2 -1 -3 -9 -14 -18 -21 -21 -19 -17 -14 -12 -12 -14 -17 -17 -17 -18 -20 -24 -26 -28 -30 -32 -31 -29 -26 -24 -23 -24 -25 -25 -25 -25 -25 -25 -24 -23 -20 -18 -13 -7 0 8 12 13 13 12 11 8 3 1 3 2 -16 -16 -12 -8 -8 -9 -10 -8 -5 -3 -5 -11 6 26 39 37 35 34 34 34 32 16 -15 -33 -38 -21 -26 -28 -25 -21 -19 -22 -24 -25 -23 -22 -24 -25 -27 -31 -34 -36 -34 -32 -29 -27 -25 -22 -20 -20 -20 -20 -20 -20 -22 -24 -26 -28 -30 -33 -35 -35 -35 -33 -31 -30 -29 -28 -28 -28 -28 -29 -30 -29 -27 -24 -22 -21 -23 -26 -29 -32 -36 -40 -42 -39 -31 -22 -20 -23 -28 -31 -32 -32 -31 -29 -28 -26 -25 -24 -24 -23 -23 -22 -22 -21 -22 -23 -24 -24 -22 -22 -26 -35 -36 -33 -30 -28 -27 -24 -21 -19 -18 -18 -17 -16 -15 -16 -19 -23 -26 -28 -27 -24 -18 -12 -9 -10 -14 -17 -19 -20 -20 -20 -20 -19 -20 -23 -26 -30 -32 -32 -31 -29 -29 -33 -36 -39 -39 -37 -36 -35 -34 -33 -32 -31 -30 -30 -29 -28 -25 -24 -23 -23 -24 -22 -10 6 21 31 34 36 38 37 38 40 42 40 35 30 27 23 19 17 16 15 13 14 16 18 16 13 13 16 21 26 30 38 46 51 51 50 49 47 45 44 43 42 43 45 47 51 54 57 59 60 61 62 61 59 55 51 46 42 40 38 38 37 37 39 40 41 40 40 39 38 37 37 38 41 45 48 47 43 35 26 19 14 12 11 11 10 8 6 5 5 5 5 4 5 7 12 16 19 19 19 18 17 15 12 10 9 7 4 1 -1 -2 -3 -5 -8 -12 -15 -16 -14 -9 -4 -2 -2 -4 -6 -10 -11 -11 -9 -6 -2 0 1 -0 -2 -7 -10 -8 -3 1 0 -2 -3 -3 -1 -0 -1 -3 -4 -4 -5 -6 -8 -8 -4 1 4 6 7 6 3 -1 -5 -8 -9 -9 -9 -8 -6 -5 -5 -8 -5 1 6 7 5 1 -2 -6 -9 -10 -7 -4 -2 -2 -7 -13 -18 -21 -23 -22 -20 -17 -15 -13 -14 -17 -19 -19 -19 -20 -24 -28 -30 -33 -37 -37 -34 -30 -28 -27 -26 -26 -27 -26 -26 -26 -26 -26 -25 -23 -21 -17 -12 -5 3 10 13 13 12 11 8 3 1 4 9 -1 -17 -17 -10 -8 -9 -10 -10 -8 -4 0 -4 -7 3 30 38 35 33 33 32 30 11 -13 -29 -35 -17 -21 -27 -28 -24 -20 -23 -24 -24 -22 -20 -20 -21 -24 -27 -29 -28 -26 -24 -24 -25 -23 -21 -20 -20 -21 -22 -22 -22 -23 -23 -23 -24 -26 -29 -32 -34 -35 -33 -30 -28 -27 -27 -27 -27 -27 -29 -29 -29 -27 -25 -23 -22 -23 -25 -27 -30 -33 -38 -41 -40 -34 -25 -20 -20 -23 -26 -28 -29 -29 -29 -30 -29 -27 -25 -24 -24 -24 -24 -23 -22 -21 -23 -25 -26 -25 -24 -25 -31 -35 -35 -34 -31 -29 -26 -24 -22 -20 -19 -18 -18 -17 -17 -18 -21 -25 -29 -31 -29 -24 -18 -13 -12 -13 -15 -16 -18 -20 -21 -21 -20 -19 -20 -23 -26 -29 -29 -29 -29 -30 -33 -37 -39 -39 -38 -36 -35 -34 -33 -32 -30 -29 -28 -28 -28 -27 -25 -25 -24 -25 -26 -21 -8 8 22 28 30 33 35 39 43 44 41 37 33 30 28 25 22 21 18 15 15 18 21 21 19 17 17 20 25 30 39 48 54 54 52 50 48 45 43 42 42 43 44 46 50 54 58 60 62 63 64 64 63 60 56 51 46 42 40 39 38 38 40 41 42 42 41 40 40 39 39 40 45 49 51 50 45 37 27 18 13 11 10 9 9 7 4 3 4 5 5 5 4 5 7 11 15 17 19 19 18 16 14 12 10 9 7 5 3 1 -0 -3 -7 -10 -13 -14 -14 -12 -8 -5 -3 -3 -6 -9 -11 -12 -10 -8 -4 -0 2 2 -0 -5 -9 -9 -4 1 1 -1 -3 -4 -2 -0 0 -1 -2 -3 -4 -5 -7 -9 -7 -2 1 4 6 5 3 -1 -4 -6 -8 -8 -8 -8 -8 -7 -5 -6 -7 -4 3 7 6 3 -1 -5 -8 -9 -8 -6 -4 -3 -6 -11 -17 -21 -24 -24 -23 -21 -18 -17 -16 -18 -20 -22 -21 -22 -27 -32 -35 -38 -43 -43 -41 -38 -35 -32 -29 -29 -29 -28 -27 -27 -27 -27 -26 -25 -23 -20 -16 -10 -2 6 11 13 13 11 7 3 1 5 12 0 -20 -24 -15 -8 -9 -10 -11 -11 -8 -3 1 -2 -6 -3 30 35 34 31 28 23 5 -12 -25 -32 -17 -21 -27 -30 -28 -22 -22 -24 -25 -23 -21 -19 -19 -21 -23 -25 -24 -22 -21 -22 -24 -23 -21 -22 -23 -25 -26 -26 -26 -26 -25 -24 -24 -25 -27 -30 -33 -33 -33 -31 -29 -27 -27 -27 -27 -27 -28 -30 -30 -29 -26 -24 -24 -24 -25 -26 -28 -31 -36 -40 -42 -40 -33 -26 -22 -22 -22 -22 -22 -23 -25 -28 -31 -30 -27 -25 -24 -25 -25 -24 -22 -22 -23 -25 -26 -27 -26 -26 -28 -33 -37 -37 -35 -31 -28 -25 -23 -21 -20 -20 -19 -19 -19 -19 -20 -22 -25 -30 -34 -31 -24 -18 -14 -12 -12 -12 -14 -17 -20 -22 -21 -20 -19 -19 -22 -23 -24 -25 -27 -30 -34 -38 -40 -40 -39 -37 -36 -34 -33 -32 -30 -29 -28 -27 -27 -27 -27 -26 -26 -26 -27 -25 -19 -8 5 13 18 23 30 36 41 42 41 38 35 32 29 27 25 23 21 17 15 16 19 21 22 21 19 20 24 30 39 49 54 54 51 50 48 45 43 42 43 43 44 45 49 53 58 62 64 65 67 67 66 64 60 56 50 46 43 41 40 39 40 42 43 43 42 42 41 41 41 43 48 52 54 52 48 39 28 18 12 11 9 7 5 4 1 1 1 3 4 5 4 5 5 7 9 12 15 17 18 17 15 14 12 11 9 8 6 4 2 -0 -4 -7 -10 -12 -12 -12 -10 -7 -5 -4 -6 -8 -10 -11 -11 -10 -6 -2 1 3 2 -2 -7 -10 -6 -0 0 -1 -3 -5 -3 -1 0 0 -0 -1 -2 -3 -5 -7 -9 -6 -2 1 3 3 1 -1 -4 -5 -7 -7 -7 -7 -8 -8 -7 -6 -7 -6 -1 5 6 3 -0 -4 -7 -8 -8 -7 -6 -5 -6 -10 -16 -21 -25 -26 -26 -25 -24 -22 -21 -21 -24 -26 -23 -25 -31 -36 -40 -42 -42 -43 -44 -46 -45 -38 -34 -33 -33 -32 -30 -29 -28 -28 -28 -27 -26 -24 -20 -14 -7 2 8 12 13 12 7 3 3 6 12 -7 -21 -23 -17 -10 -10 -10 -12 -13 -12 -8 -1 2 -0 -10 -4 20 34 30 22 12 -1 -13 -22 -29 -19 -21 -25 -28 -30 -27 -26 -26 -25 -24 -22 -20 -19 -20 -21 -22 -23 -23 -23 -24 -24 -22 -20 -21 -23 -27 -28 -28 -29 -29 -28 -28 -27 -27 -27 -29 -30 -30 -31 -31 -30 -29 -27 -26 -27 -27 -28 -30 -32 -31 -29 -26 -25 -25 -25 -26 -27 -28 -32 -39 -44 -46 -42 -35 -30 -27 -25 -22 -19 -18 -20 -23 -27 -30 -29 -27 -25 -24 -25 -25 -24 -23 -23 -24 -26 -27 -27 -27 -27 -29 -34 -37 -37 -33 -29 -24 -21 -19 -19 -20 -20 -20 -20 -20 -20 -21 -22 -24 -30 -35 -31 -24 -17 -12 -9 -9 -10 -13 -16 -19 -21 -21 -20 -19 -18 -17 -18 -19 -23 -28 -33 -37 -39 -40 -40 -39 -37 -35 -33 -32 -30 -29 -28 -27 -27 -27 -27 -27 -27 -27 -27 -26 -24 -19 -12 -5 2 10 19 28 35 39 41 40 37 33 29 27 25 24 23 20 18 17 18 19 19 18 18 21 26 32 38 41 42 41 40 43 47 49 47 43 44 44 44 45 48 53 58 62 65 67 69 69 68 67 64 60 55 50 46 44 42 41 41 42 43 44 43 43 42 42 42 45 49 53 55 54 50 42 30 18 12 13 11 7 4 2 0 -1 -1 -0 2 3 4 5 6 6 6 8 10 13 15 16 16 15 14 13 12 10 9 7 4 2 -1 -4 -7 -9 -10 -11 -10 -8 -6 -5 -6 -7 -9 -11 -12 -11 -9 -6 -2 2 3 1 -5 -9 -9 -3 -1 -1 -3 -5 -5 -3 -1 -0 0 -0 -0 -0 -1 -4 -7 -8 -6 -2 0 1 -1 -3 -4 -5 -5 -6 -6 -6 -7 -8 -8 -8 -8 -7 -4 3 5 3 0 -4 -7 -8 -8 -7 -7 -7 -7 -10 -15 -21 -26 -28 -29 -30 -31 -30 -28 -27 -29 -31 -27 -28 -32 -36 -39 -41 -40 -40 -42 -47 -49 -43 -39 -37 -37 -37 -34 -31 -29 -29 -29 -29 -29 -27 -24 -19 -11 -3 5 11 13 12 8 5 5 8 10 -13 -21 -17 -13 -10 -10 -11 -12 -13 -14 -11 -5 1 4 1 -11 9 29 32 21 4 -6 -14 -20 -26 -21 -21 -22 -24 -27 -27 -27 -26 -26 -24 -23 -21 -20 -20 -19 -20 -22 -23 -24 -24 -23 -21 -19 -19 -22 -25 -27 -29 -31 -31 -31 -31 -30 -29 -29 -28 -27 -27 -28 -28 -28 -28 -26 -26 -26 -27 -28 -29 -31 -33 -33 -31 -28 -27 -26 -26 -26 -25 -28 -35 -43 -48 -47 -42 -37 -33 -30 -27 -23 -21 -21 -23 -26 -29 -30 -29 -27 -24 -24 -24 -24 -23 -23 -24 -25 -26 -26 -26 -25 -25 -28 -33 -36 -34 -29 -24 -21 -19 -19 -20 -21 -21 -20 -20 -20 -20 -20 -21 -25 -32 -34 -29 -21 -13 -9 -7 -8 -11 -15 -19 -21 -22 -22 -20 -18 -17 -16 -17 -19 -24 -30 -35 -38 -39 -40 -39 -37 -35 -33 -32 -31 -30 -29 -28 -27 -26 -26 -27 -27 -27 -27 -25 -24 -23 -21 -17 -11 -4 4 13 23 33 40 42 40 35 29 24 22 22 23 21 20 19 19 18 16 17 21 27 33 37 38 37 36 34 35 41 48 53 52 48 45 42 42 44 47 51 57 62 66 68 70 71 71 69 67 64 59 55 50 47 45 43 42 43 44 44 44 44 43 43 43 45 49 52 53 54 51 42 29 17 17 20 16 10 6 4 1 -1 -3 -3 -2 1 3 5 6 7 6 6 6 8 10 13 15 15 15 14 13 12 10 8 6 4 1 -1 -4 -7 -9 -9 -9 -8 -7 -6 -6 -7 -8 -10 -11 -12 -11 -9 -6 -2 1 2 -2 -7 -11 -6 -3 -2 -4 -6 -7 -5 -3 -2 -1 -0 0 1 1 0 -3 -7 -8 -5 -2 -1 -3 -5 -5 -5 -4 -5 -5 -6 -5 -6 -7 -8 -8 -8 -6 -0 3 3 0 -3 -6 -8 -8 -7 -6 -7 -8 -10 -15 -22 -30 -33 -35 -37 -41 -38 -33 -32 -35 -36 -31 -31 -32 -33 -34 -37 -39 -40 -43 -46 -50 -45 -39 -37 -40 -44 -41 -36 -31 -30 -30 -31 -31 -30 -27 -23 -16 -7 1 8 11 11 9 7 6 9 7 -16 -23 -14 -10 -11 -11 -12 -12 -14 -15 -13 -8 -2 4 5 -1 -0 10 32 23 4 -8 -15 -19 -23 -22 -22 -21 -21 -22 -23 -24 -24 -25 -24 -23 -22 -21 -21 -20 -20 -20 -20 -20 -21 -21 -21 -21 -22 -24 -25 -26 -28 -30 -31 -31 -31 -29 -27 -26 -26 -25 -25 -25 -25 -25 -24 -24 -24 -25 -26 -28 -28 -30 -31 -32 -32 -29 -28 -27 -27 -26 -23 -25 -30 -38 -45 -47 -44 -40 -36 -32 -28 -25 -23 -24 -25 -27 -28 -29 -29 -28 -25 -24 -23 -23 -23 -23 -24 -25 -25 -24 -24 -23 -22 -24 -29 -35 -35 -29 -24 -22 -22 -21 -20 -20 -21 -21 -20 -20 -19 -19 -19 -22 -27 -32 -32 -26 -17 -9 -6 -6 -9 -14 -19 -22 -24 -23 -22 -20 -19 -19 -19 -19 -21 -27 -32 -36 -38 -40 -39 -37 -35 -33 -32 -30 -30 -29 -29 -27 -26 -26 -27 -27 -27 -26 -25 -24 -25 -25 -22 -18 -14 -9 -4 5 18 30 38 41 37 30 23 20 20 22 21 21 21 20 17 16 19 25 32 39 41 41 39 38 36 36 39 44 49 52 51 47 44 41 41 45 50 56 62 66 69 71 72 73 72 70 67 63 59 55 51 49 46 44 44 45 45 45 45 44 44 44 45 48 49 49 50 46 35 22 17 24 24 19 13 8 5 2 -0 -3 -4 -4 -2 1 4 6 7 7 6 5 5 5 8 11 14 15 16 14 13 11 10 8 6 4 1 -2 -5 -8 -9 -9 -8 -7 -6 -6 -7 -8 -9 -10 -11 -12 -11 -9 -6 -3 -0 -1 -4 -11 -9 -5 -3 -4 -6 -8 -7 -6 -4 -3 -2 -0 1 2 2 -0 -4 -7 -7 -4 -2 -3 -5 -7 -6 -4 -4 -4 -5 -5 -4 -6 -7 -8 -8 -7 -3 1 2 0 -3 -6 -8 -8 -7 -6 -7 -8 -11 -15 -23 -35 -41 -44 -45 -47 -42 -34 -32 -38 -39 -37 -34 -32 -30 -31 -34 -40 -45 -47 -49 -51 -46 -39 -36 -40 -47 -48 -42 -34 -31 -31 -32 -32 -32 -30 -27 -21 -13 -4 4 7 7 7 7 7 9 4 -18 -27 -15 -11 -11 -12 -12 -13 -14 -15 -14 -10 -4 2 6 4 -5 -5 27 25 7 -8 -15 -18 -22 -23 -23 -22 -21 -20 -20 -21 -23 -24 -24 -23 -21 -21 -21 -21 -21 -21 -20 -20 -20 -21 -21 -22 -23 -25 -26 -26 -27 -28 -28 -28 -26 -25 -22 -20 -20 -21 -22 -22 -22 -22 -21 -21 -22 -23 -25 -27 -28 -29 -30 -30 -30 -29 -29 -29 -28 -26 -23 -23 -27 -33 -40 -43 -42 -40 -37 -33 -28 -25 -25 -25 -27 -28 -28 -28 -28 -28 -26 -24 -22 -22 -22 -23 -24 -25 -24 -23 -22 -20 -19 -21 -26 -32 -35 -30 -25 -23 -24 -24 -22 -21 -21 -22 -21 -20 -19 -19 -19 -20 -23 -28 -31 -30 -23 -14 -8 -6 -8 -12 -18 -22 -24 -24 -23 -22 -22 -23 -22 -21 -21 -26 -30 -34 -37 -38 -38 -37 -35 -33 -31 -30 -29 -29 -29 -28 -27 -27 -27 -27 -27 -25 -24 -24 -25 -27 -26 -22 -17 -14 -13 -13 -5 7 21 33 37 32 26 21 20 21 21 21 21 19 15 15 19 25 32 37 41 42 43 42 40 37 37 38 41 44 45 44 42 40 39 40 45 52 60 66 70 73 74 75 75 73 70 67 63 59 56 53 50 48 46 47 47 47 46 46 45 45 45 45 43 40 37 28 17 11 15 24 25 20 13 7 4 1 -0 -2 -3 -3 -2 -0 2 4 6 7 7 6 4 3 4 7 10 14 16 16 14 13 11 9 7 5 3 -0 -4 -7 -9 -9 -9 -8 -7 -7 -7 -7 -8 -9 -10 -11 -12 -11 -9 -6 -4 -2 -3 -8 -9 -7 -4 -4 -7 -8 -8 -7 -6 -4 -3 -1 0 2 2 1 -2 -5 -7 -6 -3 -3 -5 -7 -7 -5 -4 -4 -4 -4 -3 -4 -5 -7 -8 -8 -6 -2 1 0 -3 -6 -8 -9 -8 -6 -6 -8 -11 -15 -23 -38 -47 -50 -49 -47 -42 -33 -31 -39 -41 -40 -37 -33 -30 -29 -33 -43 -50 -53 -54 -53 -48 -42 -37 -39 -46 -50 -47 -40 -33 -32 -33 -34 -34 -33 -31 -27 -20 -11 -2 0 2 4 6 8 7 -0 -19 -29 -17 -12 -12 -13 -13 -13 -14 -16 -16 -13 -6 1 5 5 -1 -8 8 22 12 -5 -15 -17 -21 -24 -24 -23 -22 -21 -21 -22 -23 -25 -25 -23 -20 -20 -21 -22 -23 -24 -24 -23 -22 -23 -24 -25 -25 -26 -26 -25 -24 -23 -23 -23 -22 -22 -21 -19 -18 -18 -19 -21 -22 -22 -21 -21 -21 -23 -24 -26 -27 -28 -29 -29 -29 -29 -29 -29 -29 -27 -25 -24 -26 -31 -36 -40 -40 -39 -36 -32 -27 -25 -25 -26 -27 -28 -28 -28 -27 -26 -24 -22 -21 -21 -22 -23 -24 -25 -25 -23 -21 -20 -19 -20 -24 -30 -35 -32 -27 -24 -25 -26 -25 -24 -23 -23 -22 -21 -20 -19 -19 -19 -21 -24 -27 -29 -28 -21 -13 -8 -7 -10 -15 -19 -22 -24 -24 -23 -24 -25 -24 -22 -22 -25 -30 -33 -36 -38 -38 -37 -35 -33 -30 -29 -29 -29 -29 -29 -28 -27 -26 -26 -25 -24 -23 -24 -26 -28 -28 -24 -19 -15 -14 -17 -19 -15 -5 11 26 31 28 23 19 19 19 20 19 16 12 12 15 19 22 26 31 35 38 40 38 34 32 30 30 31 33 35 37 37 38 40 44 49 57 65 70 73 76 77 77 76 74 71 67 63 60 58 55 52 51 50 50 49 48 48 47 45 41 37 31 24 17 9 3 1 7 18 22 19 13 6 1 -1 -1 -1 -1 0 1 1 0 0 3 6 8 8 7 4 3 3 6 10 15 16 15 14 12 11 9 7 5 2 -2 -5 -8 -9 -10 -9 -9 -8 -7 -8 -8 -9 -9 -10 -11 -11 -10 -8 -7 -5 -5 -7 -9 -7 -5 -4 -7 -8 -9 -8 -7 -6 -4 -2 -0 1 1 0 -1 -4 -6 -7 -4 -2 -3 -6 -8 -7 -5 -4 -4 -4 -3 -3 -4 -5 -7 -8 -7 -4 -1 -1 -3 -6 -8 -9 -9 -7 -6 -7 -10 -14 -21 -36 -46 -50 -47 -41 -38 -32 -32 -39 -41 -41 -38 -33 -27 -26 -33 -44 -52 -55 -56 -54 -50 -44 -39 -38 -43 -49 -50 -46 -38 -36 -35 -36 -37 -37 -35 -33 -29 -21 -10 -7 -2 2 6 7 5 -6 -21 -31 -21 -14 -13 -13 -13 -13 -14 -16 -17 -15 -10 -1 5 7 2 -10 -18 13 16 -1 -13 -15 -18 -26 -25 -24 -23 -23 -23 -24 -24 -25 -24 -22 -21 -20 -21 -23 -25 -26 -26 -25 -25 -25 -25 -26 -27 -28 -27 -25 -23 -22 -22 -21 -21 -23 -23 -23 -22 -21 -21 -22 -22 -22 -22 -23 -24 -25 -25 -26 -27 -28 -28 -29 -28 -28 -28 -28 -28 -27 -25 -24 -26 -30 -35 -39 -40 -39 -35 -31 -27 -26 -26 -26 -27 -27 -27 -26 -25 -23 -21 -20 -20 -20 -21 -23 -24 -25 -25 -25 -23 -21 -20 -20 -23 -28 -35 -34 -29 -24 -24 -26 -27 -26 -25 -24 -24 -23 -21 -20 -19 -19 -20 -21 -22 -25 -27 -25 -20 -13 -9 -8 -11 -15 -19 -22 -24 -25 -25 -25 -24 -22 -22 -25 -30 -34 -37 -38 -38 -37 -35 -32 -30 -28 -28 -28 -28 -28 -28 -26 -25 -24 -23 -22 -22 -23 -26 -29 -29 -26 -21 -17 -14 -17 -20 -21 -20 -15 -4 10 18 19 16 15 15 13 11 8 6 7 9 11 11 12 16 20 24 27 27 24 23 21 20 20 23 26 30 35 39 42 45 50 56 63 68 73 77 79 80 79 77 75 71 68 65 62 60 58 56 55 54 52 51 49 46 38 29 21 15 10 4 -1 -3 -4 -2 7 14 17 13 5 -2 -4 -3 -1 1 4 5 4 1 -2 -1 3 7 9 9 7 4 2 2 5 11 15 16 15 14 12 10 8 6 3 -0 -4 -7 -9 -10 -10 -10 -9 -8 -8 -8 -9 -9 -10 -10 -11 -10 -9 -9 -8 -7 -8 -8 -7 -5 -4 -7 -9 -9 -8 -8 -7 -5 -3 -0 1 1 -0 -2 -3 -5 -8 -5 -3 -2 -5 -7 -7 -6 -5 -4 -4 -3 -3 -2 -3 -5 -7 -8 -6 -4 -2 -4 -6 -8 -10 -10 -8 -7 -7 -9 -12 -18 -30 -40 -45 -41 -33 -31 -31 -34 -41 -41 -40 -38 -32 -23 -23 -33 -43 -51 -54 -55 -54 -50 -45 -39 -37 -39 -44 -48 -47 -42 -40 -39 -39 -40 -42 -40 -39 -37 -30 -20 -13 -6 1 6 6 2 -10 -26 -38 -31 -20 -15 -14 -14 -14 -15 -16 -18 -18 -13 -5 3 8 6 -5 -20 9 21 5 -10 -11 -13 -27 -25 -24 -23 -24 -24 -24 -23 -22 -21 -20 -20 -21 -21 -22 -24 -25 -25 -25 -25 -25 -25 -26 -27 -28 -28 -26 -22 -21 -21 -22 -23 -26 -27 -27 -26 -25 -25 -25 -25 -24 -24 -26 -27 -28 -28 -28 -28 -28 -28 -29 -28 -28 -27 -27 -26 -25 -24 -23 -25 -29 -34 -40 -42 -41 -37 -32 -30 -29 -28 -28 -27 -27 -27 -26 -24 -21 -20 -19 -19 -20 -21 -23 -24 -25 -26 -25 -24 -23 -22 -21 -23 -27 -33 -34 -30 -25 -23 -24 -26 -26 -25 -24 -24 -23 -22 -21 -20 -20 -20 -20 -20 -21 -22 -25 -24 -20 -13 -8 -8 -12 -16 -20 -23 -25 -25 -24 -23 -22 -22 -26 -31 -35 -38 -39 -38 -36 -33 -32 -30 -28 -27 -26 -26 -27 -26 -25 -23 -22 -21 -21 -21 -23 -25 -29 -30 -28 -24 -19 -16 -17 -20 -22 -23 -22 -19 -11 -1 8 13 14 13 12 11 10 10 11 11 10 9 8 8 9 11 12 12 12 13 14 14 15 17 21 27 34 40 45 49 54 59 63 66 72 77 80 82 81 80 77 74 71 68 66 64 62 61 61 59 56 53 48 36 17 9 8 9 8 5 2 -2 -5 -6 -3 4 9 10 3 -3 -5 -3 -1 2 6 8 8 5 -0 -3 -2 3 7 11 10 7 3 0 -0 5 11 15 16 15 14 12 10 7 4 1 -3 -6 -8 -10 -10 -10 -9 -9 -8 -8 -9 -9 -10 -10 -10 -10 -9 -9 -10 -10 -9 -8 -6 -5 -4 -7 -9 -9 -9 -8 -8 -6 -4 -0 2 2 0 -2 -3 -5 -8 -6 -4 -2 -4 -6 -7 -7 -6 -5 -5 -4 -4 -2 -2 -3 -5 -7 -8 -6 -4 -5 -7 -8 -10 -11 -9 -8 -8 -9 -12 -16 -23 -32 -39 -32 -27 -28 -33 -39 -43 -42 -40 -38 -33 -24 -23 -32 -41 -47 -51 -54 -53 -49 -44 -40 -36 -37 -40 -44 -44 -42 -42 -42 -43 -45 -47 -45 -45 -44 -38 -30 -19 -9 -0 5 5 1 -12 -31 -45 -41 -30 -20 -15 -15 -15 -15 -17 -19 -20 -18 -10 -1 6 9 0 -16 6 25 11 -5 -6 -6 -24 -23 -23 -24 -25 -25 -23 -20 -18 -18 -18 -20 -21 -21 -22 -22 -22 -22 -23 -24 -24 -24 -24 -25 -27 -28 -28 -24 -21 -20 -22 -24 -27 -28 -29 -29 -29 -28 -28 -27 -27 -27 -28 -30 -32 -32 -31 -30 -29 -29 -28 -28 -29 -28 -26 -24 -22 -20 -20 -22 -25 -31 -37 -42 -42 -39 -36 -34 -33 -32 -30 -29 -29 -28 -26 -24 -23 -21 -21 -21 -22 -23 -23 -24 -24 -25 -25 -25 -24 -23 -22 -23 -26 -32 -33 -31 -25 -21 -22 -24 -25 -24 -23 -22 -22 -22 -22 -22 -22 -21 -20 -20 -19 -20 -21 -22 -22 -19 -13 -10 -12 -15 -19 -22 -22 -22 -21 -21 -23 -25 -29 -33 -37 -39 -39 -37 -34 -31 -30 -29 -27 -25 -24 -24 -25 -25 -24 -22 -21 -21 -21 -21 -22 -25 -28 -30 -30 -27 -22 -17 -16 -19 -22 -24 -24 -24 -20 -13 -3 7 12 13 12 11 11 11 11 11 11 10 10 9 9 8 7 6 7 9 11 12 13 16 20 26 32 38 45 51 57 61 64 65 70 75 80 83 83 82 79 76 73 70 68 66 65 64 65 64 60 54 42 17 7 8 12 11 10 7 4 0 -3 -5 -6 -5 -1 3 1 -2 -1 1 2 2 5 8 10 8 3 -2 -4 -2 3 9 11 9 5 1 -3 -1 6 12 16 17 15 14 12 9 6 2 -2 -5 -8 -9 -10 -10 -10 -9 -9 -9 -9 -10 -10 -10 -9 -10 -10 -10 -11 -11 -11 -9 -7 -5 -5 -7 -9 -10 -9 -9 -9 -8 -5 -2 2 2 1 -1 -3 -5 -7 -7 -5 -3 -3 -6 -7 -8 -7 -6 -6 -6 -5 -4 -2 -2 -3 -6 -8 -9 -7 -7 -7 -9 -10 -11 -10 -9 -9 -10 -12 -16 -20 -26 -31 -26 -27 -32 -38 -45 -45 -43 -40 -38 -35 -29 -27 -31 -37 -42 -46 -52 -53 -49 -43 -40 -37 -36 -38 -42 -46 -43 -41 -42 -44 -47 -48 -49 -50 -49 -44 -36 -22 -11 -4 2 3 0 -14 -34 -45 -44 -35 -24 -17 -16 -15 -15 -16 -19 -22 -22 -17 -8 2 8 4 -11 3 25 17 2 -1 -0 -23 -24 -25 -26 -25 -23 -20 -17 -16 -16 -18 -20 -21 -22 -22 -21 -21 -21 -23 -24 -24 -24 -23 -23 -25 -27 -28 -27 -23 -20 -20 -21 -23 -26 -28 -30 -31 -30 -29 -29 -29 -30 -31 -32 -34 -35 -34 -32 -31 -29 -27 -27 -28 -30 -29 -26 -22 -18 -17 -18 -21 -25 -30 -35 -38 -39 -39 -39 -37 -35 -32 -30 -29 -30 -29 -28 -26 -25 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -24 -23 -22 -22 -25 -30 -33 -32 -28 -23 -21 -23 -24 -24 -23 -21 -21 -22 -23 -24 -23 -22 -21 -20 -20 -20 -20 -20 -20 -20 -19 -15 -14 -16 -19 -21 -20 -19 -19 -20 -23 -27 -31 -34 -37 -39 -38 -35 -32 -28 -27 -26 -25 -24 -23 -23 -24 -25 -24 -23 -23 -23 -23 -23 -23 -24 -26 -29 -30 -30 -26 -21 -17 -17 -20 -23 -25 -24 -23 -20 -13 -3 6 9 11 12 12 12 11 10 9 9 9 9 8 7 6 6 7 9 10 11 11 14 16 18 22 26 34 43 51 58 62 64 68 73 79 83 83 83 81 78 74 71 69 66 65 65 67 67 64 54 36 6 6 9 10 10 9 9 7 5 2 -1 -4 -7 -7 -5 -2 2 6 7 5 2 3 7 10 10 6 0 -4 -5 -2 5 9 9 7 3 -2 -3 0 7 14 17 17 15 13 10 7 3 -1 -4 -7 -9 -10 -10 -10 -9 -9 -9 -10 -10 -11 -10 -10 -10 -10 -10 -11 -12 -11 -10 -8 -6 -6 -7 -9 -10 -10 -9 -9 -9 -7 -4 0 2 2 -1 -4 -5 -7 -8 -7 -5 -4 -6 -8 -8 -9 -8 -8 -7 -7 -6 -3 -2 -2 -4 -7 -11 -10 -9 -9 -10 -10 -11 -11 -11 -10 -11 -14 -17 -20 -23 -25 -23 -29 -35 -41 -47 -46 -43 -40 -38 -36 -33 -30 -32 -35 -38 -43 -51 -54 -50 -43 -41 -38 -37 -39 -45 -52 -48 -42 -39 -42 -46 -46 -49 -52 -52 -47 -39 -26 -15 -9 -3 1 -0 -13 -34 -39 -41 -36 -27 -19 -18 -17 -16 -16 -19 -22 -26 -25 -19 -8 2 3 -6 -5 7 13 7 6 5 -25 -27 -28 -26 -23 -20 -17 -15 -15 -17 -19 -20 -22 -23 -23 -23 -24 -25 -26 -27 -27 -25 -23 -23 -23 -24 -26 -27 -26 -22 -17 -14 -16 -20 -24 -27 -29 -29 -30 -31 -32 -32 -32 -33 -34 -35 -35 -33 -31 -29 -28 -27 -27 -28 -31 -30 -26 -20 -17 -17 -18 -21 -24 -28 -32 -35 -37 -38 -36 -34 -30 -28 -28 -29 -30 -31 -30 -29 -27 -26 -26 -26 -26 -25 -24 -24 -24 -24 -24 -24 -23 -23 -24 -28 -32 -33 -30 -25 -22 -23 -23 -23 -22 -20 -21 -22 -24 -25 -25 -23 -21 -21 -21 -21 -21 -21 -20 -19 -20 -20 -17 -16 -18 -20 -20 -19 -19 -21 -24 -28 -31 -34 -37 -39 -39 -36 -31 -26 -24 -24 -25 -24 -24 -25 -26 -25 -25 -24 -25 -26 -27 -26 -25 -24 -24 -26 -29 -31 -30 -26 -19 -17 -18 -22 -25 -25 -25 -23 -19 -13 -4 3 9 12 14 14 12 10 9 7 6 6 5 4 3 3 3 3 4 4 3 0 -2 -3 -1 3 8 16 27 41 53 60 66 71 77 81 83 83 82 79 75 72 69 67 66 65 67 69 66 53 26 5 8 11 10 9 10 11 10 8 5 1 -2 -5 -7 -6 -0 6 10 11 7 1 -0 3 8 10 8 2 -3 -6 -6 0 6 9 8 6 1 -2 -2 2 9 16 17 17 14 11 8 4 -0 -4 -7 -9 -9 -10 -10 -10 -9 -9 -10 -11 -11 -11 -11 -11 -11 -11 -11 -12 -12 -11 -9 -7 -7 -8 -9 -10 -10 -10 -10 -10 -9 -7 -2 1 2 0 -3 -6 -7 -9 -9 -7 -6 -7 -8 -9 -10 -11 -11 -10 -9 -7 -5 -3 -2 -2 -5 -11 -13 -13 -12 -11 -11 -12 -12 -12 -12 -13 -16 -20 -24 -25 -26 -24 -27 -31 -36 -42 -44 -43 -40 -37 -35 -34 -33 -33 -35 -38 -44 -51 -54 -53 -48 -45 -40 -39 -41 -48 -56 -54 -46 -40 -41 -44 -47 -50 -53 -53 -48 -41 -32 -23 -15 -8 -3 -2 -12 -32 -31 -36 -35 -29 -21 -21 -20 -18 -16 -18 -23 -28 -33 -32 -22 -9 -3 -5 -13 -25 -17 -4 7 11 -29 -29 -27 -24 -21 -18 -16 -16 -17 -18 -20 -21 -23 -25 -27 -28 -29 -30 -30 -30 -29 -28 -26 -25 -24 -23 -24 -24 -24 -20 -15 -10 -10 -13 -17 -21 -24 -26 -28 -29 -31 -32 -32 -32 -33 -34 -34 -33 -31 -30 -29 -28 -27 -27 -30 -32 -31 -26 -21 -19 -19 -21 -23 -25 -28 -30 -32 -33 -32 -30 -27 -25 -25 -27 -29 -31 -33 -32 -30 -29 -28 -27 -26 -25 -25 -24 -23 -23 -23 -23 -23 -23 -24 -26 -30 -33 -31 -26 -22 -22 -24 -24 -23 -20 -21 -22 -24 -25 -24 -23 -22 -21 -21 -22 -22 -22 -20 -19 -19 -20 -20 -19 -17 -17 -18 -18 -19 -21 -24 -27 -30 -34 -37 -39 -40 -36 -30 -25 -23 -24 -24 -25 -25 -25 -25 -25 -24 -24 -25 -27 -28 -28 -26 -23 -22 -23 -26 -29 -31 -30 -24 -19 -18 -20 -25 -26 -26 -24 -22 -19 -14 -6 2 9 14 15 15 13 10 8 6 4 2 0 -1 -2 -4 -5 -6 -7 -8 -10 -8 -3 1 0 -1 -1 1 8 21 39 56 68 74 79 81 82 82 80 76 73 71 69 67 64 65 67 63 45 12 6 10 13 11 10 11 12 12 11 7 2 -2 -6 -7 -5 1 7 10 10 7 0 -3 -1 4 9 8 4 -1 -6 -7 -3 3 8 10 8 5 0 -2 -1 4 12 16 17 15 13 9 5 1 -3 -6 -9 -9 -10 -10 -10 -10 -10 -10 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -10 -9 -9 -10 -10 -10 -11 -11 -11 -11 -11 -9 -5 -1 0 -0 -3 -6 -7 -8 -9 -10 -8 -8 -10 -11 -13 -15 -15 -14 -11 -9 -7 -4 -2 -2 -4 -9 -14 -16 -16 -14 -13 -13 -14 -13 -13 -14 -18 -24 -29 -30 -29 -27 -26 -26 -28 -34 -39 -41 -40 -37 -34 -33 -32 -33 -35 -39 -45 -51 -54 -54 -52 -47 -43 -42 -46 -54 -60 -58 -52 -45 -45 -47 -50 -53 -54 -53 -49 -43 -37 -29 -22 -14 -8 -5 -9 -26 -24 -30 -33 -32 -25 -25 -25 -22 -18 -18 -23 -30 -38 -43 -36 -22 -12 -8 -16 -36 -37 -31 -14 4 -31 -28 -25 -22 -20 -20 -19 -19 -20 -21 -22 -24 -27 -29 -32 -34 -35 -35 -34 -33 -32 -31 -29 -27 -26 -25 -25 -25 -25 -22 -18 -12 -8 -9 -12 -17 -21 -24 -27 -29 -32 -33 -34 -33 -34 -34 -34 -33 -31 -30 -30 -30 -28 -27 -28 -30 -32 -31 -27 -24 -22 -22 -23 -25 -26 -27 -27 -27 -27 -25 -23 -22 -22 -24 -27 -30 -32 -33 -31 -30 -28 -27 -26 -25 -24 -23 -23 -23 -23 -23 -23 -23 -23 -24 -28 -32 -32 -27 -23 -22 -24 -24 -23 -21 -20 -21 -23 -25 -25 -23 -22 -22 -22 -23 -23 -23 -22 -20 -20 -19 -20 -20 -19 -17 -15 -17 -18 -20 -21 -23 -27 -31 -36 -39 -40 -36 -30 -25 -23 -24 -24 -25 -25 -25 -25 -23 -22 -22 -24 -28 -30 -31 -29 -25 -22 -21 -22 -25 -30 -32 -28 -22 -19 -19 -23 -26 -27 -26 -24 -21 -19 -15 -9 -1 7 12 15 15 14 12 9 5 2 -2 -5 -7 -10 -13 -15 -16 -16 -12 -5 1 4 1 -3 -6 -7 -6 -2 5 21 41 59 73 79 81 80 79 76 73 71 70 68 64 63 62 50 25 1 7 12 13 12 11 12 14 14 12 8 2 -3 -7 -9 -7 -0 6 9 10 6 0 -5 -5 -0 6 8 6 1 -5 -8 -6 2 8 12 11 8 3 -1 -2 1 8 14 16 15 13 10 6 2 -2 -6 -9 -10 -10 -10 -10 -10 -10 -11 -12 -12 -13 -13 -13 -13 -13 -13 -13 -12 -11 -10 -10 -11 -12 -12 -12 -12 -12 -13 -13 -13 -12 -8 -4 -2 -2 -3 -6 -6 -7 -8 -11 -11 -11 -12 -14 -18 -21 -23 -21 -16 -12 -9 -6 -3 -2 -3 -7 -14 -18 -20 -18 -16 -16 -16 -15 -14 -15 -20 -28 -34 -34 -32 -30 -27 -24 -22 -26 -32 -36 -38 -36 -33 -31 -31 -32 -34 -39 -45 -50 -53 -54 -53 -49 -46 -44 -47 -55 -60 -59 -56 -53 -52 -53 -54 -55 -55 -53 -49 -45 -40 -34 -27 -20 -12 -6 -4 -15 -16 -22 -30 -35 -31 -31 -33 -30 -22 -21 -25 -31 -41 -49 -45 -33 -22 -16 -18 -28 -33 -35 -27 -10 -29 -26 -24 -23 -23 -24 -24 -23 -23 -24 -26 -28 -31 -34 -36 -37 -38 -38 -37 -36 -35 -33 -31 -29 -28 -28 -28 -27 -27 -26 -22 -16 -9 -7 -9 -14 -19 -24 -28 -32 -35 -37 -36 -35 -35 -35 -34 -33 -32 -31 -31 -31 -29 -27 -27 -28 -29 -31 -30 -27 -25 -23 -25 -26 -26 -26 -25 -24 -24 -23 -22 -21 -21 -22 -24 -27 -29 -30 -30 -28 -27 -26 -25 -24 -23 -23 -23 -24 -24 -24 -23 -23 -23 -24 -27 -31 -32 -29 -24 -23 -23 -24 -24 -21 -20 -21 -22 -24 -25 -24 -22 -22 -22 -24 -25 -24 -24 -22 -21 -20 -19 -19 -20 -19 -18 -19 -19 -18 -17 -18 -22 -28 -34 -39 -40 -36 -31 -26 -23 -23 -24 -25 -26 -26 -24 -22 -21 -21 -24 -28 -32 -33 -31 -28 -25 -22 -22 -23 -27 -31 -29 -24 -20 -18 -21 -25 -28 -28 -27 -23 -20 -19 -18 -15 -9 -0 7 11 14 14 13 9 5 -1 -6 -11 -15 -17 -18 -17 -15 -11 -5 1 4 2 -3 -7 -10 -12 -12 -10 -4 7 24 48 67 76 79 79 75 72 70 69 68 64 60 49 25 -4 -4 5 11 13 13 12 13 14 14 13 9 3 -3 -8 -10 -8 -1 5 10 10 7 1 -5 -7 -5 3 7 7 3 -3 -7 -6 1 8 13 14 10 6 1 -2 -1 5 11 15 15 13 11 7 3 -1 -5 -8 -10 -10 -10 -10 -10 -11 -12 -13 -13 -14 -14 -14 -14 -14 -14 -14 -13 -11 -11 -12 -14 -15 -15 -14 -14 -14 -15 -15 -16 -15 -11 -7 -5 -4 -5 -6 -6 -5 -5 -9 -13 -15 -16 -20 -26 -29 -33 -31 -24 -16 -12 -8 -5 -3 -3 -6 -13 -19 -24 -24 -22 -20 -20 -19 -17 -18 -23 -31 -36 -35 -33 -31 -29 -25 -20 -19 -24 -29 -34 -35 -32 -30 -30 -31 -33 -37 -43 -49 -52 -53 -53 -50 -47 -45 -47 -54 -58 -59 -57 -55 -55 -55 -55 -55 -55 -53 -49 -46 -42 -38 -32 -24 -14 -3 2 -7 -13 -21 -31 -41 -40 -39 -39 -36 -28 -25 -24 -29 -40 -49 -48 -40 -31 -25 -24 -24 -19 -20 -22 -21 -28 -28 -28 -27 -27 -26 -26 -25 -25 -27 -29 -32 -33 -34 -36 -37 -39 -39 -40 -39 -38 -36 -34 -32 -31 -30 -30 -29 -29 -29 -27 -22 -13 -9 -10 -14 -20 -26 -31 -35 -38 -40 -40 -38 -37 -36 -36 -35 -33 -33 -33 -32 -30 -28 -27 -26 -26 -27 -29 -29 -27 -26 -25 -26 -26 -26 -25 -25 -25 -25 -24 -23 -21 -21 -22 -23 -25 -26 -27 -26 -25 -25 -25 -25 -25 -25 -25 -26 -27 -26 -25 -23 -23 -24 -28 -31 -33 -32 -27 -24 -23 -24 -24 -22 -21 -21 -22 -24 -25 -24 -22 -21 -22 -24 -25 -26 -25 -24 -23 -21 -19 -18 -18 -20 -22 -23 -22 -19 -15 -15 -19 -25 -32 -38 -40 -37 -32 -27 -24 -23 -24 -25 -26 -26 -24 -21 -20 -21 -24 -29 -32 -34 -33 -31 -28 -26 -24 -24 -26 -28 -28 -25 -21 -18 -20 -24 -27 -29 -29 -26 -22 -20 -19 -19 -20 -17 -11 -3 5 11 13 12 8 3 -4 -10 -15 -17 -15 -10 -4 -2 0 3 6 4 -1 -6 -11 -16 -17 -17 -14 -11 -4 9 29 47 60 69 70 69 68 67 66 62 51 22 -6 -13 -9 0 8 13 14 13 13 14 14 13 10 4 -2 -7 -10 -8 -1 6 10 11 7 0 -5 -9 -8 -1 5 7 4 -1 -6 -6 1 9 15 16 12 8 3 -0 -1 3 8 12 14 13 11 8 4 -0 -5 -8 -10 -11 -11 -11 -11 -12 -13 -14 -14 -15 -15 -15 -15 -15 -15 -15 -14 -12 -12 -14 -17 -19 -19 -18 -18 -18 -19 -19 -20 -19 -15 -11 -8 -7 -8 -8 -6 -4 -3 -7 -14 -19 -23 -27 -34 -38 -40 -39 -34 -26 -17 -11 -7 -5 -3 -5 -11 -19 -27 -31 -31 -29 -27 -26 -25 -25 -29 -33 -35 -34 -32 -32 -31 -28 -21 -16 -17 -22 -28 -31 -30 -29 -29 -30 -32 -36 -42 -47 -51 -53 -53 -51 -48 -46 -47 -53 -57 -57 -56 -55 -55 -55 -55 -54 -54 -52 -49 -47 -44 -41 -36 -28 -16 -2 3 -7 -16 -25 -36 -47 -47 -45 -42 -39 -34 -29 -24 -25 -34 -49 -51 -46 -40 -33 -28 -20 -13 -10 -13 -20 -29 -29 -29 -28 -27 -26 -26 -25 -25 -27 -29 -31 -32 -33 -34 -36 -37 -39 -40 -40 -40 -39 -37 -35 -33 -32 -31 -31 -32 -32 -31 -27 -19 -13 -14 -18 -25 -30 -35 -38 -41 -43 -43 -41 -40 -39 -38 -37 -36 -36 -35 -33 -31 -29 -27 -25 -23 -23 -25 -29 -30 -29 -25 -24 -25 -26 -27 -27 -28 -29 -29 -27 -24 -22 -21 -21 -21 -22 -23 -24 -24 -25 -27 -28 -27 -27 -27 -26 -26 -26 -26 -24 -23 -25 -28 -31 -33 -33 -30 -26 -24 -24 -25 -24 -22 -22 -23 -23 -23 -22 -22 -22 -23 -25 -26 -27 -26 -25 -23 -21 -20 -18 -17 -16 -20 -25 -26 -22 -17 -15 -17 -23 -29 -36 -39 -38 -34 -30 -26 -24 -24 -25 -26 -26 -24 -22 -20 -21 -25 -29 -32 -34 -34 -32 -30 -28 -27 -27 -28 -28 -28 -26 -23 -20 -19 -23 -26 -29 -30 -29 -25 -22 -20 -20 -20 -21 -20 -16 -11 -3 4 7 8 6 0 -7 -13 -15 -11 -1 11 15 14 13 12 9 4 -3 -11 -19 -23 -23 -20 -17 -17 -14 -4 7 20 34 43 52 57 59 61 54 26 1 -12 -14 -14 -5 5 12 14 14 13 13 13 12 10 6 -0 -6 -10 -8 -1 6 10 10 7 0 -6 -9 -10 -6 2 6 5 1 -5 -5 1 9 16 17 13 9 4 1 -0 2 6 10 13 13 11 8 5 1 -4 -8 -10 -11 -11 -12 -12 -13 -14 -15 -16 -16 -17 -17 -17 -16 -17 -17 -16 -14 -13 -17 -22 -26 -27 -26 -25 -24 -25 -25 -26 -25 -20 -15 -12 -10 -11 -12 -9 -5 -3 -8 -14 -22 -30 -33 -38 -40 -42 -41 -39 -33 -24 -15 -8 -6 -4 -5 -10 -18 -30 -40 -43 -41 -38 -36 -34 -34 -35 -35 -34 -33 -32 -33 -33 -30 -24 -16 -13 -16 -22 -27 -27 -27 -27 -29 -31 -34 -40 -46 -51 -53 -53 -52 -49 -46 -46 -51 -55 -55 -55 -55 -55 -55 -54 -53 -52 -51 -48 -46 -44 -42 -39 -32 -20 -5 -2 -11 -19 -27 -35 -44 -47 -45 -42 -39 -36 -31 -24 -22 -27 -45 -51 -50 -45 -37 -26 -16 -11 -9 -9 -13 -30 -29 -29 -27 -26 -25 -24 -24 -24 -25 -26 -27 -29 -30 -32 -33 -35 -37 -38 -39 -40 -41 -40 -37 -35 -34 -33 -34 -35 -35 -33 -30 -25 -20 -21 -25 -31 -35 -38 -41 -43 -44 -45 -44 -43 -42 -41 -40 -40 -39 -37 -34 -31 -28 -26 -24 -22 -20 -21 -26 -32 -34 -31 -26 -24 -25 -27 -28 -29 -29 -30 -29 -28 -26 -25 -24 -22 -22 -23 -25 -27 -28 -29 -30 -28 -27 -25 -24 -25 -26 -26 -25 -24 -25 -27 -30 -33 -34 -33 -30 -27 -25 -26 -26 -26 -25 -24 -22 -21 -21 -22 -24 -24 -25 -26 -27 -27 -26 -24 -22 -20 -18 -17 -15 -15 -22 -27 -27 -21 -17 -17 -20 -26 -32 -37 -38 -35 -32 -28 -26 -25 -25 -26 -26 -25 -24 -23 -23 -26 -29 -32 -33 -34 -33 -31 -30 -30 -30 -30 -29 -28 -27 -25 -23 -20 -22 -25 -28 -30 -30 -28 -25 -23 -22 -22 -23 -23 -23 -21 -16 -10 -4 2 4 2 -4 -10 -13 -10 0 12 17 18 17 16 14 10 2 -8 -20 -27 -28 -25 -22 -20 -20 -19 -17 -12 -4 4 16 28 37 40 28 4 -9 -13 -16 -17 -10 -0 9 14 14 13 12 12 11 10 7 2 -4 -9 -9 -2 5 9 10 6 -0 -6 -9 -11 -9 -3 3 5 2 -3 -4 1 9 16 17 13 9 5 2 1 2 4 8 11 11 10 8 5 2 -3 -7 -10 -12 -13 -13 -14 -14 -15 -16 -17 -17 -18 -19 -20 -19 -19 -20 -20 -18 -17 -21 -28 -34 -36 -35 -33 -32 -31 -32 -32 -32 -27 -23 -19 -14 -16 -16 -14 -8 -5 -12 -16 -23 -31 -37 -38 -39 -40 -39 -37 -30 -24 -16 -9 -7 -5 -6 -9 -17 -31 -47 -53 -51 -47 -42 -40 -39 -38 -37 -35 -33 -33 -32 -32 -30 -25 -18 -13 -12 -17 -22 -24 -25 -26 -27 -30 -34 -39 -45 -51 -53 -54 -52 -50 -46 -46 -50 -53 -54 -55 -56 -55 -54 -54 -53 -51 -49 -46 -43 -42 -42 -40 -35 -26 -11 -8 -13 -21 -29 -33 -40 -44 -45 -43 -39 -35 -31 -25 -20 -21 -41 -49 -51 -47 -37 -24 -16 -13 -11 -9 -9 -29 -28 -27 -25 -23 -22 -21 -20 -21 -22 -23 -24 -26 -27 -29 -30 -32 -34 -35 -36 -38 -40 -41 -39 -37 -35 -36 -37 -37 -35 -34 -33 -32 -31 -32 -34 -37 -39 -40 -42 -43 -44 -45 -46 -46 -46 -46 -45 -44 -42 -39 -34 -29 -26 -24 -23 -22 -21 -21 -23 -28 -32 -34 -31 -26 -24 -24 -25 -26 -27 -28 -28 -27 -27 -26 -25 -24 -23 -23 -25 -27 -29 -31 -31 -29 -26 -24 -23 -25 -26 -27 -26 -25 -24 -26 -28 -31 -34 -34 -31 -29 -27 -26 -26 -25 -24 -23 -22 -22 -23 -24 -25 -25 -25 -26 -26 -27 -26 -24 -22 -21 -19 -17 -15 -13 -16 -23 -28 -21 -15 -15 -17 -22 -29 -34 -36 -35 -32 -29 -27 -26 -25 -26 -26 -27 -27 -26 -25 -26 -28 -31 -32 -33 -33 -32 -31 -31 -31 -31 -29 -29 -28 -28 -26 -23 -22 -23 -26 -28 -29 -29 -28 -27 -26 -25 -26 -26 -26 -26 -24 -20 -15 -8 -1 1 -2 -7 -10 -9 1 13 19 20 19 19 18 15 10 2 -9 -22 -28 -29 -26 -23 -22 -21 -21 -23 -24 -22 -14 -2 9 12 0 -10 -15 -16 -19 -19 -15 -5 5 12 13 12 11 10 9 9 7 3 -3 -8 -9 -3 4 8 8 4 -1 -6 -9 -11 -11 -7 -2 2 2 -2 -3 1 9 16 17 13 9 5 3 1 2 3 6 9 10 9 8 6 2 -2 -6 -10 -12 -14 -15 -16 -16 -17 -17 -19 -20 -22 -24 -27 -26 -25 -25 -25 -25 -23 -27 -34 -40 -43 -42 -39 -37 -35 -34 -34 -34 -32 -30 -27 -21 -22 -23 -20 -14 -7 -15 -16 -18 -24 -34 -36 -36 -34 -31 -28 -21 -17 -13 -9 -7 -6 -6 -9 -16 -30 -47 -55 -55 -50 -44 -42 -41 -40 -38 -36 -34 -32 -31 -30 -28 -24 -19 -14 -12 -13 -17 -20 -22 -24 -27 -30 -34 -39 -44 -51 -53 -54 -53 -52 -48 -47 -49 -53 -55 -56 -56 -55 -53 -52 -52 -51 -49 -44 -39 -37 -40 -41 -39 -32 -20 -13 -14 -21 -30 -32 -36 -40 -43 -44 -41 -36 -31 -26 -21 -17 -37 -46 -50 -47 -35 -26 -20 -16 -13 -11 -8 -27 -26 -24 -22 -19 -17 -16 -16 -17 -20 -22 -24 -24 -25 -25 -26 -28 -31 -32 -33 -35 -38 -41 -40 -38 -36 -37 -38 -37 -35 -33 -32 -32 -34 -36 -39 -42 -44 -44 -43 -42 -42 -43 -45 -46 -47 -48 -48 -46 -44 -39 -33 -27 -24 -23 -22 -22 -21 -21 -21 -23 -28 -33 -34 -30 -25 -22 -21 -22 -24 -26 -26 -26 -27 -28 -28 -27 -26 -26 -27 -28 -29 -30 -30 -29 -27 -24 -23 -23 -25 -26 -26 -25 -24 -25 -27 -30 -33 -34 -33 -30 -28 -27 -26 -25 -23 -22 -23 -24 -24 -25 -25 -25 -25 -25 -25 -25 -25 -24 -23 -21 -19 -17 -14 -12 -13 -17 -24 -25 -18 -14 -15 -20 -26 -31 -33 -33 -30 -28 -26 -25 -25 -25 -27 -28 -28 -27 -26 -24 -25 -27 -30 -31 -33 -33 -32 -30 -29 -29 -29 -29 -29 -29 -28 -26 -24 -23 -24 -25 -27 -28 -28 -28 -28 -28 -28 -28 -28 -27 -27 -25 -22 -17 -9 -3 -2 -4 -7 -6 4 15 19 21 21 22 20 18 14 8 -1 -13 -23 -29 -28 -24 -23 -23 -23 -24 -25 -25 -24 -20 -12 -9 -14 -16 -17 -18 -20 -20 -17 -10 1 9 12 11 9 8 7 8 7 4 -1 -7 -8 -4 3 7 8 3 -2 -7 -9 -10 -11 -10 -7 -3 -0 -1 -1 2 9 16 17 13 8 5 3 2 1 2 4 6 8 8 7 5 2 -1 -5 -9 -13 -15 -17 -18 -19 -19 -20 -22 -25 -28 -31 -34 -34 -31 -31 -32 -33 -32 -32 -36 -41 -44 -44 -42 -40 -37 -34 -33 -33 -33 -33 -31 -28 -27 -25 -21 -15 -6 -9 -9 -8 -12 -25 -31 -30 -25 -18 -17 -13 -12 -12 -10 -7 -6 -7 -10 -16 -30 -46 -55 -57 -51 -44 -41 -41 -41 -39 -36 -34 -32 -30 -28 -24 -23 -21 -17 -13 -12 -14 -17 -21 -24 -27 -31 -35 -40 -45 -51 -53 -54 -54 -53 -50 -47 -49 -53 -57 -57 -55 -54 -52 -52 -51 -51 -49 -44 -38 -36 -39 -41 -40 -37 -29 -17 -14 -20 -31 -32 -34 -36 -40 -45 -42 -37 -31 -26 -22 -20 -35 -44 -47 -47 -38 -33 -26 -19 -16 -13 -10 -26 -25 -23 -19 -15 -12 -12 -13 -15 -19 -22 -23 -23 -24 -24 -24 -25 -27 -29 -31 -33 -36 -39 -39 -38 -37 -37 -38 -37 -35 -34 -32 -31 -31 -32 -35 -37 -38 -39 -39 -37 -36 -36 -37 -39 -42 -44 -45 -44 -43 -39 -34 -28 -24 -23 -23 -23 -23 -21 -21 -22 -24 -29 -34 -32 -27 -21 -18 -19 -22 -25 -26 -27 -27 -28 -29 -30 -31 -31 -30 -30 -29 -29 -29 -28 -27 -24 -23 -22 -23 -25 -26 -26 -25 -26 -27 -29 -32 -34 -33 -31 -29 -27 -26 -24 -23 -23 -23 -24 -25 -26 -26 -26 -25 -25 -25 -25 -24 -23 -22 -21 -19 -16 -14 -13 -13 -15 -20 -25 -23 -18 -16 -17 -23 -29 -32 -32 -30 -27 -25 -25 -24 -24 -25 -27 -27 -27 -25 -22 -22 -23 -26 -29 -32 -34 -34 -32 -30 -29 -30 -30 -30 -31 -30 -29 -27 -25 -23 -23 -25 -26 -28 -29 -29 -29 -28 -28 -28 -27 -26 -26 -26 -23 -17 -8 -4 -4 -4 -4 5 14 18 19 20 22 22 20 16 10 3 -8 -19 -27 -30 -27 -24 -24 -24 -25 -25 -25 -25 -23 -19 -14 -14 -15 -16 -18 -20 -20 -19 -13 -3 4 8 8 7 5 4 6 6 5 1 -5 -7 -4 1 7 7 3 -3 -8 -10 -10 -10 -11 -10 -8 -4 -3 -1 3 10 16 16 12 8 5 4 2 1 1 2 4 6 6 6 5 2 -1 -5 -9 -13 -17 -20 -22 -24 -25 -25 -28 -32 -35 -37 -38 -37 -34 -33 -34 -35 -33 -32 -35 -40 -44 -44 -43 -41 -37 -33 -31 -31 -32 -33 -33 -32 -27 -21 -15 -10 -4 -3 0 2 1 -10 -19 -21 -17 -9 -9 -10 -12 -12 -10 -7 -6 -9 -13 -18 -31 -45 -54 -58 -54 -47 -43 -41 -41 -40 -37 -33 -31 -29 -26 -21 -22 -23 -20 -15 -12 -13 -16 -20 -24 -28 -32 -36 -41 -46 -51 -54 -55 -55 -54 -51 -48 -49 -53 -57 -56 -54 -53 -52 -51 -51 -51 -50 -47 -41 -39 -40 -41 -40 -40 -34 -21 -16 -21 -31 -33 -35 -36 -39 -46 -43 -38 -33 -28 -24 -22 -34 -41 -43 -49 -46 -43 -35 -25 -20 -15 -12 -26 -26 -23 -18 -14 -11 -11 -13 -15 -17 -19 -20 -21 -22 -24 -24 -23 -22 -25 -28 -30 -32 -35 -36 -37 -37 -37 -39 -38 -36 -34 -33 -30 -28 -27 -27 -27 -28 -28 -28 -28 -28 -29 -30 -32 -34 -36 -37 -38 -38 -37 -35 -31 -28 -26 -25 -25 -25 -23 -21 -21 -23 -26 -30 -31 -27 -21 -17 -18 -22 -25 -27 -27 -26 -26 -27 -29 -32 -35 -34 -33 -31 -30 -28 -27 -25 -24 -23 -22 -23 -25 -26 -27 -27 -27 -27 -29 -31 -33 -34 -32 -29 -27 -25 -24 -23 -23 -24 -25 -26 -26 -27 -27 -26 -26 -25 -25 -24 -23 -22 -20 -18 -16 -15 -15 -15 -17 -20 -25 -26 -23 -19 -18 -21 -28 -32 -33 -30 -26 -23 -22 -22 -23 -23 -24 -24 -24 -23 -20 -18 -19 -23 -28 -33 -36 -36 -35 -34 -32 -31 -31 -31 -30 -30 -31 -30 -28 -25 -23 -23 -24 -26 -27 -28 -29 -28 -28 -27 -26 -25 -26 -27 -26 -23 -16 -9 -5 -3 -3 3 11 14 13 13 18 22 22 18 12 6 -2 -13 -23 -30 -30 -27 -26 -25 -25 -25 -25 -25 -24 -21 -15 -14 -14 -15 -17 -19 -20 -19 -15 -8 -1 3 3 2 -0 -1 1 3 3 0 -5 -8 -6 -0 5 6 2 -4 -9 -12 -11 -10 -10 -11 -11 -9 -6 -3 3 10 16 15 12 8 6 5 3 1 0 1 2 3 4 5 4 1 -2 -5 -9 -14 -19 -23 -27 -31 -34 -34 -35 -38 -40 -41 -40 -38 -35 -34 -35 -36 -34 -30 -31 -37 -42 -42 -41 -39 -37 -33 -31 -30 -31 -32 -33 -31 -24 -17 -13 -10 -5 -2 1 4 5 0 -6 -12 -14 -10 -9 -11 -12 -13 -12 -8 -6 -10 -16 -19 -29 -41 -51 -57 -57 -51 -46 -43 -42 -41 -37 -33 -31 -29 -26 -21 -22 -23 -20 -15 -13 -13 -16 -21 -25 -28 -32 -36 -41 -46 -51 -55 -56 -55 -53 -51 -49 -50 -53 -55 -54 -52 -52 -52 -52 -51 -50 -49 -48 -45 -41 -39 -38 -38 -40 -36 -26 -21 -24 -30 -35 -39 -41 -42 -46 -44 -40 -35 -30 -26 -24 -32 -37 -37 -48 -53 -52 -44 -31 -26 -19 -14 -25 -25 -24 -21 -17 -15 -14 -16 -16 -16 -17 -17 -19 -19 -21 -23 -25 -23 -23 -24 -26 -28 -30 -32 -33 -34 -36 -38 -39 -37 -35 -33 -31 -28 -25 -23 -23 -22 -22 -21 -21 -21 -22 -23 -24 -26 -27 -28 -28 -29 -31 -32 -33 -30 -28 -27 -27 -26 -24 -23 -22 -22 -24 -27 -29 -27 -23 -18 -18 -22 -26 -28 -28 -25 -23 -23 -25 -29 -33 -35 -35 -33 -31 -28 -25 -24 -23 -23 -23 -24 -26 -27 -28 -28 -27 -27 -29 -31 -34 -34 -33 -31 -28 -25 -23 -23 -23 -24 -25 -26 -27 -27 -27 -26 -26 -26 -25 -24 -23 -21 -20 -18 -16 -16 -17 -18 -20 -22 -25 -27 -26 -23 -20 -20 -26 -32 -34 -31 -25 -21 -19 -19 -21 -23 -23 -22 -21 -20 -18 -16 -17 -21 -26 -31 -34 -36 -37 -37 -36 -34 -32 -31 -30 -30 -31 -32 -31 -28 -25 -22 -23 -24 -26 -28 -28 -28 -28 -27 -25 -25 -25 -26 -27 -26 -23 -15 -8 -4 -3 -0 4 5 3 0 6 16 20 19 14 8 1 -10 -21 -30 -32 -29 -27 -26 -25 -25 -25 -25 -25 -22 -17 -14 -13 -14 -16 -18 -20 -20 -18 -12 -5 -2 -3 -6 -9 -9 -6 -4 -3 -4 -8 -11 -10 -4 2 4 1 -5 -11 -14 -13 -11 -10 -10 -10 -12 -10 -6 1 8 14 14 11 9 7 6 4 2 0 -0 -0 1 2 3 2 0 -3 -7 -11 -16 -22 -29 -34 -39 -44 -44 -42 -42 -42 -41 -40 -38 -36 -35 -34 -35 -32 -29 -29 -31 -35 -38 -39 -38 -36 -33 -31 -30 -30 -31 -32 -28 -21 -16 -16 -12 -7 -3 -0 2 4 3 -3 -10 -17 -15 -13 -12 -13 -14 -13 -9 -7 -10 -17 -18 -24 -35 -46 -55 -58 -53 -49 -45 -43 -41 -38 -34 -30 -28 -26 -21 -21 -20 -17 -14 -13 -14 -17 -22 -25 -28 -31 -35 -40 -46 -51 -54 -56 -55 -52 -52 -51 -52 -53 -54 -52 -51 -50 -51 -50 -49 -48 -49 -49 -46 -39 -35 -33 -33 -37 -37 -31 -27 -29 -30 -34 -40 -44 -46 -47 -46 -42 -37 -32 -27 -25 -29 -32 -31 -43 -52 -55 -50 -38 -32 -23 -17 -22 -23 -24 -23 -21 -20 -19 -20 -20 -20 -21 -21 -21 -21 -21 -23 -25 -25 -23 -22 -21 -21 -23 -25 -26 -27 -30 -34 -36 -36 -36 -35 -33 -29 -26 -23 -23 -23 -22 -21 -20 -19 -19 -19 -20 -20 -21 -21 -21 -22 -24 -28 -31 -31 -29 -28 -27 -26 -25 -24 -23 -23 -23 -25 -27 -28 -26 -23 -21 -23 -26 -28 -28 -25 -21 -19 -20 -23 -27 -31 -33 -33 -32 -29 -25 -24 -23 -24 -25 -26 -27 -28 -29 -28 -28 -28 -29 -31 -33 -34 -33 -32 -30 -27 -24 -23 -23 -23 -25 -26 -26 -27 -26 -26 -26 -26 -25 -25 -23 -22 -20 -18 -17 -17 -18 -20 -22 -25 -27 -29 -28 -25 -22 -20 -24 -29 -33 -31 -25 -20 -17 -18 -20 -23 -24 -23 -22 -19 -16 -16 -17 -21 -25 -29 -32 -34 -36 -38 -38 -36 -33 -31 -30 -30 -31 -32 -32 -31 -27 -24 -22 -23 -25 -28 -28 -28 -28 -27 -26 -25 -25 -25 -26 -26 -28 -21 -13 -5 -3 -5 -4 -5 -9 -13 -8 5 15 19 14 10 3 -8 -20 -30 -33 -31 -29 -27 -26 -25 -25 -26 -25 -24 -20 -16 -13 -14 -15 -18 -20 -21 -20 -17 -8 -4 -6 -12 -17 -18 -16 -15 -14 -14 -16 -18 -17 -12 -5 -1 -3 -8 -13 -16 -15 -13 -11 -10 -10 -12 -13 -10 -3 5 11 11 10 9 8 6 4 2 -0 -1 -2 -2 -2 -1 -1 -2 -7 -13 -18 -22 -28 -35 -41 -45 -46 -45 -44 -43 -42 -40 -39 -37 -35 -33 -30 -29 -27 -25 -24 -24 -26 -32 -37 -38 -37 -34 -31 -30 -30 -29 -27 -22 -18 -18 -20 -16 -10 -6 -2 1 3 2 -2 -10 -20 -20 -17 -16 -16 -16 -15 -12 -10 -11 -17 -16 -19 -28 -40 -51 -56 -54 -50 -47 -44 -42 -39 -35 -31 -28 -25 -20 -17 -15 -13 -12 -12 -14 -16 -21 -24 -27 -30 -35 -40 -44 -49 -53 -54 -53 -51 -51 -52 -53 -54 -54 -52 -50 -49 -49 -48 -47 -47 -48 -48 -44 -37 -31 -29 -29 -33 -37 -36 -34 -34 -34 -36 -40 -44 -47 -48 -46 -43 -39 -34 -29 -25 -26 -28 -26 -37 -47 -53 -51 -40 -35 -27 -21 -22 -23 -23 -22 -20 -19 -19 -20 -21 -22 -23 -24 -24 -24 -24 -24 -26 -26 -24 -20 -17 -16 -17 -19 -20 -21 -24 -29 -32 -34 -36 -37 -36 -32 -28 -25 -24 -25 -25 -24 -23 -21 -21 -21 -20 -21 -21 -21 -20 -20 -22 -25 -28 -29 -28 -26 -25 -25 -25 -26 -26 -25 -24 -23 -24 -27 -29 -30 -28 -26 -26 -27 -27 -25 -22 -19 -18 -18 -21 -25 -28 -30 -31 -29 -26 -24 -24 -24 -26 -27 -28 -28 -29 -29 -29 -29 -30 -32 -33 -33 -33 -32 -31 -29 -26 -24 -23 -23 -24 -25 -26 -25 -25 -26 -26 -26 -25 -25 -24 -22 -21 -20 -19 -19 -20 -21 -23 -25 -28 -30 -29 -27 -23 -20 -21 -26 -30 -30 -25 -20 -17 -17 -19 -23 -26 -26 -23 -19 -15 -15 -17 -21 -24 -26 -29 -32 -35 -38 -39 -38 -35 -32 -30 -30 -31 -33 -33 -32 -30 -25 -23 -23 -25 -28 -29 -29 -28 -28 -28 -26 -25 -24 -24 -24 -27 -27 -20 -9 -4 -7 -10 -13 -16 -17 -14 -4 8 16 15 10 4 -6 -18 -30 -33 -32 -30 -28 -26 -26 -26 -25 -25 -24 -22 -17 -15 -14 -15 -17 -20 -22 -22 -21 -15 -6 -4 -8 -15 -20 -23 -25 -25 -25 -24 -24 -23 -20 -16 -11 -10 -13 -18 -20 -19 -16 -14 -13 -13 -15 -16 -14 -8 0 6 8 8 8 7 5 3 1 -1 -3 -4 -6 -7 -8 -7 -8 -13 -21 -29 -33 -35 -37 -41 -45 -46 -45 -45 -43 -42 -40 -38 -36 -33 -28 -22 -22 -21 -21 -22 -21 -22 -27 -33 -37 -37 -35 -32 -30 -29 -27 -21 -15 -15 -21 -25 -21 -14 -8 -4 -2 1 1 -2 -11 -24 -26 -23 -21 -21 -21 -19 -17 -16 -16 -17 -14 -15 -22 -32 -45 -51 -52 -50 -48 -46 -44 -40 -36 -32 -28 -22 -17 -14 -13 -13 -12 -11 -11 -13 -18 -23 -26 -30 -34 -39 -43 -47 -50 -52 -51 -49 -50 -52 -54 -55 -54 -52 -49 -47 -46 -46 -45 -46 -48 -49 -45 -38 -32 -29 -28 -30 -36 -39 -38 -38 -38 -38 -41 -45 -48 -48 -47 -44 -41 -36 -31 -26 -25 -27 -26 -32 -43 -50 -49 -37 -34 -30 -26 -23 -24 -23 -20 -18 -17 -17 -18 -19 -20 -21 -22 -23 -24 -25 -25 -26 -27 -25 -20 -15 -13 -13 -15 -17 -20 -23 -26 -27 -30 -34 -38 -39 -36 -31 -27 -25 -25 -26 -26 -25 -24 -24 -26 -26 -26 -26 -27 -26 -26 -26 -28 -29 -29 -28 -25 -23 -23 -25 -27 -28 -28 -27 -25 -25 -26 -28 -30 -29 -27 -25 -25 -26 -25 -23 -20 -18 -17 -18 -21 -25 -29 -31 -31 -29 -26 -25 -25 -26 -28 -29 -29 -30 -31 -31 -31 -31 -32 -31 -31 -32 -32 -31 -29 -27 -25 -23 -21 -22 -23 -24 -24 -24 -25 -26 -26 -25 -25 -24 -23 -23 -22 -21 -21 -21 -22 -23 -25 -27 -29 -30 -28 -25 -21 -20 -23 -26 -27 -23 -19 -17 -17 -19 -23 -26 -25 -22 -17 -14 -15 -18 -20 -22 -24 -27 -30 -33 -36 -39 -39 -38 -35 -33 -31 -32 -33 -34 -34 -32 -28 -25 -24 -25 -28 -29 -29 -29 -29 -29 -27 -25 -23 -22 -22 -24 -27 -23 -12 -3 -4 -7 -12 -15 -15 -12 -3 7 14 12 9 3 -7 -19 -29 -32 -33 -31 -29 -27 -26 -26 -25 -25 -25 -23 -20 -16 -15 -15 -17 -20 -23 -24 -23 -20 -12 -6 -6 -12 -18 -22 -24 -25 -25 -24 -24 -24 -24 -24 -22 -20 -22 -25 -26 -23 -21 -19 -18 -19 -20 -21 -20 -15 -6 -1 1 3 4 4 2 -0 -3 -5 -7 -9 -12 -15 -18 -18 -19 -23 -29 -34 -38 -40 -41 -43 -45 -45 -45 -45 -44 -42 -40 -39 -36 -31 -24 -15 -17 -19 -23 -25 -24 -23 -26 -31 -36 -37 -35 -32 -31 -29 -26 -19 -14 -17 -25 -32 -27 -20 -13 -8 -5 -2 -1 -3 -11 -26 -30 -30 -30 -31 -32 -29 -26 -25 -24 -20 -17 -15 -17 -24 -34 -43 -46 -47 -47 -46 -44 -41 -37 -32 -29 -22 -19 -17 -17 -18 -14 -10 -7 -8 -13 -20 -25 -29 -33 -38 -42 -46 -49 -51 -49 -47 -48 -51 -54 -57 -56 -52 -48 -44 -43 -42 -43 -44 -47 -51 -50 -44 -36 -30 -28 -30 -34 -38 -41 -41 -40 -39 -41 -46 -49 -50 -48 -46 -43 -39 -33 -27 -24 -27 -28 -30 -39 -48 -50 -43 -40 -38 -35 -24 -23 -21 -18 -17 -16 -16 -16 -17 -18 -19 -21 -22 -23 -24 -25 -27 -29 -27 -22 -17 -13 -11 -12 -15 -19 -23 -24 -24 -27 -33 -39 -41 -39 -33 -28 -24 -23 -23 -24 -24 -24 -25 -28 -31 -32 -32 -31 -30 -30 -31 -32 -31 -30 -27 -25 -23 -23 -24 -26 -29 -30 -30 -28 -26 -26 -27 -29 -28 -25 -23 -23 -24 -25 -24 -22 -20 -18 -17 -19 -23 -27 -31 -32 -31 -29 -26 -24 -25 -27 -29 -29 -30 -32 -33 -33 -33 -32 -31 -31 -31 -32 -31 -30 -28 -26 -24 -22 -22 -22 -23 -24 -25 -25 -25 -26 -26 -26 -26 -25 -25 -25 -24 -22 -21 -22 -23 -24 -26 -28 -29 -28 -26 -23 -20 -21 -22 -23 -19 -16 -14 -15 -18 -22 -25 -25 -21 -16 -13 -14 -18 -20 -21 -22 -25 -28 -31 -34 -38 -40 -40 -39 -36 -34 -34 -34 -35 -34 -33 -31 -28 -27 -26 -28 -29 -30 -30 -30 -30 -28 -26 -24 -22 -21 -21 -24 -23 -17 -7 -3 -3 -6 -10 -11 -8 -2 4 7 6 3 -3 -12 -21 -27 -30 -32 -32 -31 -29 -27 -26 -25 -25 -25 -24 -22 -18 -16 -15 -17 -20 -23 -25 -25 -23 -18 -12 -7 -10 -15 -19 -22 -23 -23 -23 -23 -23 -23 -23 -25 -27 -29 -31 -31 -28 -27 -25 -25 -25 -26 -27 -26 -22 -14 -10 -9 -7 -5 -4 -6 -9 -11 -13 -15 -17 -20 -25 -28 -30 -30 -31 -33 -35 -38 -42 -44 -45 -45 -45 -44 -44 -43 -42 -41 -40 -38 -32 -24 -16 -18 -21 -26 -30 -30 -28 -29 -33 -36 -36 -35 -33 -30 -28 -25 -21 -17 -20 -29 -38 -36 -28 -19 -13 -9 -6 -4 -5 -11 -24 -31 -36 -40 -43 -45 -42 -37 -33 -30 -26 -22 -18 -16 -18 -24 -32 -38 -41 -43 -45 -44 -41 -37 -33 -29 -25 -23 -23 -23 -22 -17 -10 -4 -3 -7 -15 -23 -29 -33 -38 -43 -47 -49 -50 -49 -47 -47 -49 -54 -58 -57 -53 -48 -42 -40 -39 -40 -43 -46 -51 -53 -50 -43 -33 -29 -30 -33 -37 -42 -42 -41 -40 -41 -46 -49 -50 -49 -47 -45 -40 -34 -28 -24 -26 -30 -30 -36 -46 -52 -51 -50 -48 -45 -22 -20 -17 -16 -16 -16 -16 -16 -17 -19 -21 -23 -23 -23 -23 -25 -28 -31 -33 -30 -24 -17 -12 -12 -15 -19 -22 -25 -28 -32 -37 -41 -42 -39 -35 -30 -27 -25 -24 -22 -21 -21 -23 -26 -30 -32 -33 -32 -32 -33 -33 -34 -34 -32 -30 -27 -25 -24 -24 -26 -29 -31 -33 -31 -29 -27 -27 -27 -26 -24 -22 -22 -23 -25 -25 -24 -22 -20 -18 -18 -21 -26 -30 -32 -32 -31 -28 -25 -24 -26 -27 -28 -29 -31 -33 -34 -34 -32 -31 -31 -31 -31 -32 -31 -29 -28 -25 -23 -22 -21 -22 -24 -25 -25 -25 -26 -27 -29 -29 -28 -27 -26 -25 -24 -23 -22 -22 -22 -23 -25 -27 -27 -26 -23 -21 -20 -20 -20 -18 -14 -13 -14 -15 -18 -21 -21 -19 -14 -11 -13 -17 -20 -21 -22 -24 -26 -29 -32 -36 -39 -41 -41 -39 -37 -35 -35 -34 -34 -34 -33 -31 -29 -28 -28 -29 -30 -30 -30 -30 -29 -27 -25 -23 -21 -20 -22 -23 -21 -16 -13 -11 -9 -7 -7 -5 -5 -6 -8 -11 -13 -14 -15 -16 -21 -27 -31 -32 -31 -30 -28 -26 -25 -25 -25 -25 -23 -20 -16 -15 -17 -20 -24 -26 -27 -26 -23 -17 -11 -10 -14 -18 -20 -21 -18 -17 -18 -20 -22 -22 -24 -26 -29 -31 -31 -31 -31 -30 -29 -28 -28 -29 -29 -27 -22 -19 -17 -16 -15 -15 -17 -20 -23 -26 -28 -29 -30 -31 -30 -30 -30 -31 -33 -34 -37 -40 -43 -44 -45 -45 -44 -43 -42 -42 -42 -41 -40 -36 -30 -21 -21 -25 -31 -35 -35 -34 -34 -36 -37 -36 -34 -33 -30 -27 -24 -22 -21 -23 -29 -39 -42 -38 -31 -23 -16 -13 -10 -9 -13 -21 -30 -38 -45 -50 -53 -51 -45 -39 -36 -31 -25 -20 -15 -14 -17 -22 -29 -34 -39 -41 -41 -39 -36 -32 -29 -27 -26 -25 -24 -22 -17 -11 -4 1 -3 -11 -19 -27 -33 -38 -43 -47 -50 -51 -49 -47 -46 -48 -53 -58 -58 -54 -48 -41 -38 -37 -38 -41 -46 -51 -54 -53 -47 -37 -32 -32 -35 -39 -43 -42 -40 -39 -40 -45 -48 -49 -49 -48 -46 -41 -34 -27 -24 -24 -31 -31 -33 -43 -52 -54 -54 -52 -49 -18 -16 -15 -16 -16 -16 -16 -17 -20 -22 -24 -25 -25 -24 -25 -26 -29 -32 -35 -35 -32 -26 -20 -17 -19 -21 -24 -28 -31 -36 -40 -43 -43 -39 -34 -30 -27 -25 -23 -20 -18 -18 -20 -23 -27 -29 -31 -32 -33 -33 -34 -35 -36 -35 -34 -31 -29 -27 -27 -28 -30 -32 -33 -33 -31 -30 -28 -28 -26 -24 -22 -20 -21 -24 -25 -25 -24 -21 -19 -18 -20 -23 -27 -31 -32 -32 -30 -27 -24 -24 -25 -26 -27 -30 -33 -34 -34 -33 -31 -30 -31 -32 -32 -32 -31 -29 -26 -24 -22 -21 -21 -23 -24 -25 -26 -27 -29 -31 -31 -29 -28 -27 -26 -25 -24 -23 -22 -20 -21 -22 -25 -26 -25 -21 -19 -19 -20 -21 -19 -15 -13 -14 -16 -18 -18 -17 -15 -13 -13 -15 -17 -19 -20 -21 -23 -25 -27 -29 -32 -36 -39 -41 -41 -38 -36 -34 -34 -33 -34 -33 -32 -30 -28 -27 -28 -29 -30 -30 -29 -28 -27 -26 -24 -22 -21 -22 -23 -23 -21 -21 -20 -18 -14 -9 -6 -5 -6 -8 -11 -14 -13 -12 -11 -16 -24 -29 -32 -32 -31 -29 -27 -25 -25 -25 -26 -24 -20 -17 -15 -16 -19 -23 -27 -28 -28 -26 -21 -16 -12 -14 -17 -19 -19 -15 -12 -13 -16 -18 -19 -21 -23 -26 -28 -30 -30 -30 -29 -29 -28 -28 -28 -28 -28 -27 -23 -20 -18 -17 -16 -18 -21 -25 -27 -29 -31 -32 -31 -30 -29 -29 -30 -31 -33 -36 -39 -42 -44 -44 -44 -43 -42 -40 -39 -39 -39 -40 -39 -35 -27 -27 -30 -34 -35 -35 -37 -37 -38 -38 -36 -35 -33 -30 -26 -23 -23 -22 -24 -27 -37 -43 -46 -44 -38 -29 -24 -19 -15 -18 -23 -30 -37 -43 -50 -54 -53 -49 -43 -39 -33 -27 -20 -16 -14 -15 -18 -22 -28 -33 -36 -37 -36 -34 -31 -29 -27 -26 -24 -22 -18 -16 -12 -6 -0 -1 -8 -16 -25 -31 -37 -43 -47 -51 -51 -49 -47 -45 -46 -51 -57 -58 -54 -47 -40 -36 -35 -37 -41 -45 -51 -55 -55 -50 -38 -32 -32 -37 -42 -43 -42 -39 -36 -38 -42 -46 -48 -48 -47 -46 -42 -35 -28 -25 -23 -30 -31 -32 -39 -48 -52 -52 -51 -48 -16 -15 -15 -17 -17 -18 -20 -23 -25 -26 -27 -28 -29 -28 -27 -27 -29 -32 -35 -37 -36 -33 -28 -24 -24 -26 -29 -32 -35 -39 -43 -45 -44 -41 -36 -31 -28 -26 -23 -21 -19 -19 -20 -22 -24 -26 -29 -31 -32 -33 -34 -36 -37 -37 -37 -36 -33 -31 -29 -30 -31 -33 -33 -34 -33 -32 -30 -28 -27 -25 -22 -20 -20 -22 -24 -25 -24 -22 -20 -18 -18 -20 -24 -28 -31 -32 -31 -29 -26 -24 -23 -23 -24 -27 -31 -34 -34 -33 -31 -30 -30 -31 -32 -33 -32 -30 -28 -25 -22 -21 -20 -21 -22 -24 -27 -29 -31 -32 -31 -30 -28 -27 -27 -27 -26 -24 -21 -19 -19 -20 -22 -24 -24 -19 -17 -18 -20 -24 -24 -19 -15 -14 -16 -17 -17 -17 -17 -18 -20 -19 -19 -19 -19 -21 -22 -23 -25 -27 -29 -33 -37 -40 -42 -40 -38 -36 -34 -33 -33 -33 -31 -29 -27 -26 -26 -27 -29 -29 -29 -28 -27 -26 -25 -24 -23 -23 -24 -24 -23 -23 -24 -23 -21 -16 -10 -5 -4 -6 -9 -12 -13 -15 -16 -19 -24 -28 -31 -32 -31 -29 -27 -26 -25 -25 -25 -24 -21 -17 -15 -16 -19 -23 -27 -29 -29 -27 -24 -19 -14 -14 -16 -18 -18 -13 -8 -6 -8 -11 -16 -19 -22 -24 -27 -30 -30 -30 -29 -29 -28 -28 -28 -28 -28 -26 -22 -18 -14 -11 -9 -11 -15 -20 -25 -27 -29 -29 -29 -29 -28 -28 -29 -30 -32 -36 -40 -42 -43 -41 -38 -38 -36 -33 -32 -32 -34 -38 -41 -39 -33 -33 -34 -35 -35 -34 -36 -39 -41 -41 -38 -36 -35 -33 -28 -25 -23 -23 -24 -25 -33 -42 -48 -49 -47 -41 -37 -31 -24 -26 -28 -32 -36 -41 -48 -53 -54 -51 -45 -40 -34 -27 -22 -18 -17 -17 -19 -21 -25 -28 -31 -33 -33 -32 -30 -28 -26 -24 -21 -20 -15 -14 -12 -8 -4 -4 -8 -15 -23 -29 -36 -43 -48 -50 -50 -48 -46 -45 -45 -49 -54 -55 -52 -46 -39 -35 -35 -37 -41 -46 -52 -57 -58 -53 -38 -30 -29 -35 -42 -43 -42 -38 -33 -34 -40 -44 -46 -47 -46 -45 -42 -38 -32 -28 -25 -29 -30 -29 -33 -40 -45 -47 -48 -46 -20 -19 -16 -16 -18 -21 -24 -27 -30 -31 -33 -34 -34 -33 -32 -31 -31 -33 -37 -38 -37 -36 -33 -30 -30 -33 -36 -38 -40 -43 -46 -47 -45 -40 -34 -30 -27 -26 -23 -21 -20 -21 -21 -22 -23 -25 -26 -28 -30 -32 -33 -35 -36 -37 -37 -38 -37 -34 -32 -32 -33 -33 -33 -33 -34 -33 -31 -29 -28 -27 -24 -21 -19 -20 -22 -23 -24 -23 -20 -18 -16 -17 -20 -24 -28 -31 -32 -31 -28 -25 -23 -22 -22 -25 -29 -33 -34 -34 -32 -30 -29 -30 -31 -32 -33 -32 -30 -27 -25 -22 -20 -19 -20 -23 -28 -31 -32 -32 -31 -29 -28 -27 -27 -28 -27 -24 -21 -18 -18 -19 -21 -23 -24 -20 -16 -16 -20 -27 -31 -27 -20 -15 -15 -16 -16 -17 -19 -22 -24 -23 -21 -19 -19 -19 -21 -22 -23 -25 -27 -31 -35 -39 -41 -41 -40 -38 -36 -35 -34 -33 -31 -29 -26 -24 -24 -26 -27 -28 -28 -28 -27 -26 -26 -26 -25 -25 -25 -25 -25 -24 -24 -24 -24 -23 -16 -8 -3 -4 -7 -10 -13 -15 -17 -20 -24 -27 -30 -31 -31 -30 -28 -27 -26 -25 -25 -24 -22 -18 -16 -17 -19 -23 -27 -30 -30 -28 -26 -22 -16 -15 -16 -18 -19 -15 -9 -4 -3 -6 -12 -18 -22 -24 -26 -28 -28 -29 -28 -27 -27 -27 -27 -27 -28 -26 -22 -17 -11 -5 -2 -4 -9 -15 -22 -28 -29 -28 -26 -26 -28 -28 -28 -29 -32 -35 -39 -42 -42 -38 -31 -30 -29 -26 -25 -27 -31 -37 -42 -41 -37 -36 -35 -35 -35 -33 -35 -38 -41 -40 -38 -38 -39 -37 -33 -28 -25 -24 -24 -25 -31 -39 -46 -48 -49 -47 -44 -39 -33 -30 -30 -32 -35 -39 -47 -53 -54 -51 -46 -40 -34 -29 -24 -22 -22 -22 -22 -23 -25 -26 -27 -28 -29 -30 -29 -28 -25 -20 -15 -18 -16 -14 -12 -9 -7 -7 -11 -15 -21 -27 -35 -42 -47 -50 -50 -47 -45 -44 -44 -46 -49 -50 -47 -43 -37 -34 -35 -37 -41 -45 -52 -59 -62 -57 -42 -31 -29 -35 -41 -42 -43 -40 -34 -32 -38 -43 -45 -45 -44 -43 -42 -40 -36 -32 -29 -28 -26 -19 -21 -28 -35 -41 -47 -46 -24 -23 -21 -22 -24 -25 -27 -30 -34 -36 -38 -39 -40 -39 -38 -36 -35 -34 -35 -34 -33 -33 -34 -36 -36 -37 -39 -42 -44 -46 -47 -47 -43 -36 -30 -26 -24 -23 -22 -20 -20 -21 -22 -23 -23 -23 -24 -24 -26 -28 -31 -32 -34 -34 -36 -37 -39 -39 -38 -37 -35 -34 -32 -32 -33 -33 -33 -31 -30 -28 -26 -24 -22 -20 -20 -21 -22 -23 -22 -19 -17 -16 -17 -20 -24 -28 -32 -32 -30 -27 -25 -23 -22 -23 -27 -31 -34 -34 -32 -30 -29 -29 -29 -30 -32 -33 -32 -30 -28 -25 -23 -21 -21 -23 -26 -29 -30 -30 -29 -29 -28 -28 -28 -28 -27 -24 -21 -19 -18 -19 -20 -22 -24 -23 -18 -17 -21 -29 -37 -36 -28 -19 -15 -15 -16 -17 -20 -22 -24 -24 -22 -21 -19 -19 -20 -21 -22 -23 -26 -29 -33 -37 -40 -41 -40 -39 -37 -36 -34 -33 -31 -29 -27 -25 -24 -24 -25 -27 -28 -28 -28 -27 -27 -27 -26 -26 -26 -26 -26 -25 -25 -25 -25 -26 -23 -15 -6 -4 -6 -9 -11 -13 -15 -18 -21 -25 -28 -30 -31 -30 -29 -28 -27 -26 -25 -25 -23 -20 -17 -17 -19 -22 -26 -29 -29 -29 -27 -24 -18 -16 -16 -19 -21 -19 -14 -7 -3 -4 -10 -17 -21 -24 -25 -26 -27 -28 -27 -25 -25 -25 -26 -27 -27 -26 -23 -18 -11 -5 -2 -2 -5 -11 -20 -28 -30 -27 -22 -22 -26 -28 -28 -28 -31 -34 -38 -41 -43 -41 -32 -27 -24 -25 -28 -32 -36 -40 -44 -42 -39 -37 -36 -35 -35 -33 -34 -36 -39 -40 -39 -41 -43 -43 -38 -32 -28 -25 -25 -25 -28 -36 -43 -46 -48 -48 -46 -43 -38 -32 -31 -31 -34 -38 -45 -50 -52 -50 -45 -41 -36 -31 -28 -25 -26 -26 -26 -26 -26 -26 -24 -24 -25 -27 -27 -27 -22 -15 -10 -18 -18 -16 -12 -9 -9 -10 -13 -16 -20 -26 -33 -41 -47 -50 -49 -46 -43 -42 -42 -44 -44 -43 -40 -39 -35 -33 -34 -37 -40 -45 -52 -59 -63 -60 -47 -37 -32 -36 -40 -42 -44 -43 -39 -35 -39 -42 -43 -43 -43 -42 -41 -40 -37 -34 -31 -27 -21 -10 -10 -15 -23 -34 -47 -47 -28 -27 -26 -26 -28 -29 -30 -33 -36 -39 -41 -42 -43 -43 -43 -41 -38 -34 -31 -29 -29 -30 -34 -39 -40 -39 -39 -41 -44 -46 -46 -44 -40 -32 -25 -20 -18 -18 -20 -21 -22 -22 -21 -22 -22 -22 -22 -22 -23 -25 -27 -29 -30 -32 -34 -36 -38 -40 -40 -38 -36 -33 -31 -30 -31 -33 -33 -33 -31 -29 -27 -27 -25 -23 -20 -20 -21 -23 -24 -22 -18 -16 -17 -19 -23 -27 -30 -31 -30 -28 -26 -26 -25 -24 -25 -29 -32 -34 -33 -31 -28 -26 -25 -25 -28 -30 -32 -32 -31 -29 -26 -23 -22 -23 -25 -26 -26 -27 -28 -29 -29 -29 -29 -29 -27 -25 -22 -19 -18 -19 -20 -21 -23 -25 -22 -20 -22 -28 -39 -42 -36 -25 -16 -14 -15 -16 -18 -20 -22 -23 -23 -22 -21 -20 -19 -20 -20 -21 -24 -27 -31 -35 -38 -39 -39 -39 -38 -36 -34 -33 -31 -30 -29 -27 -25 -24 -24 -25 -27 -28 -29 -29 -29 -28 -27 -26 -26 -26 -26 -26 -26 -25 -25 -26 -26 -21 -13 -6 -7 -10 -12 -12 -13 -15 -18 -22 -26 -29 -31 -30 -29 -28 -27 -26 -25 -25 -24 -22 -18 -17 -19 -22 -26 -28 -29 -28 -27 -26 -21 -17 -16 -18 -20 -21 -17 -10 -4 -4 -9 -15 -20 -24 -24 -25 -26 -27 -26 -23 -22 -24 -25 -26 -27 -27 -26 -22 -16 -10 -6 -5 -7 -11 -18 -25 -27 -24 -20 -21 -26 -28 -28 -28 -30 -34 -37 -40 -43 -44 -39 -31 -26 -26 -30 -37 -43 -46 -45 -44 -41 -39 -37 -36 -36 -34 -33 -33 -35 -38 -40 -43 -45 -46 -42 -36 -31 -27 -26 -25 -27 -32 -40 -45 -46 -46 -46 -45 -41 -36 -33 -32 -34 -37 -42 -47 -49 -49 -46 -42 -38 -34 -31 -29 -29 -29 -29 -29 -28 -25 -23 -22 -23 -25 -26 -25 -20 -12 -9 -17 -20 -18 -13 -10 -10 -11 -13 -16 -19 -25 -32 -40 -46 -50 -49 -45 -41 -40 -41 -42 -41 -39 -35 -36 -33 -31 -32 -36 -40 -44 -51 -59 -65 -61 -51 -42 -36 -36 -38 -41 -43 -44 -44 -41 -42 -42 -42 -41 -41 -41 -40 -39 -33 -31 -30 -26 -17 -8 -8 -12 -19 -31 -47 -48 -30 -29 -28 -27 -28 -30 -31 -33 -36 -39 -42 -43 -43 -44 -45 -44 -40 -36 -31 -29 -28 -31 -35 -40 -42 -41 -40 -40 -43 -45 -45 -41 -36 -30 -24 -19 -16 -15 -19 -22 -23 -23 -23 -25 -25 -25 -24 -23 -24 -24 -25 -26 -28 -30 -31 -32 -33 -35 -37 -37 -35 -33 -31 -29 -30 -32 -33 -33 -32 -30 -28 -27 -28 -28 -25 -22 -21 -22 -25 -24 -22 -20 -19 -20 -23 -26 -29 -30 -29 -27 -25 -25 -25 -25 -25 -26 -29 -31 -33 -31 -28 -24 -22 -22 -25 -28 -30 -31 -32 -31 -30 -28 -27 -25 -24 -24 -24 -25 -28 -29 -30 -30 -30 -29 -28 -25 -23 -20 -19 -19 -20 -21 -23 -25 -25 -24 -24 -28 -37 -40 -34 -23 -14 -13 -14 -15 -16 -17 -19 -21 -22 -23 -23 -21 -20 -19 -18 -19 -21 -25 -29 -32 -34 -36 -37 -38 -38 -37 -35 -33 -31 -31 -30 -29 -27 -25 -24 -24 -26 -27 -29 -30 -30 -29 -28 -27 -27 -26 -27 -26 -26 -25 -24 -26 -26 -25 -20 -12 -11 -12 -13 -11 -9 -11 -15 -19 -23 -27 -30 -30 -30 -28 -27 -26 -26 -25 -24 -24 -21 -19 -18 -22 -26 -28 -28 -27 -27 -26 -23 -18 -16 -16 -19 -19 -16 -11 -6 -5 -8 -13 -19 -23 -24 -24 -26 -27 -27 -25 -24 -24 -25 -26 -26 -27 -27 -24 -19 -14 -10 -9 -12 -17 -22 -23 -22 -22 -23 -25 -27 -29 -30 -30 -31 -33 -36 -40 -43 -44 -40 -33 -29 -29 -31 -34 -39 -44 -46 -47 -45 -42 -40 -38 -37 -36 -35 -33 -32 -35 -39 -43 -46 -48 -45 -39 -34 -30 -27 -26 -27 -30 -36 -43 -43 -44 -45 -46 -44 -40 -37 -35 -35 -36 -39 -43 -46 -48 -46 -41 -36 -33 -33 -32 -31 -31 -31 -30 -28 -25 -22 -21 -21 -23 -25 -25 -22 -15 -13 -18 -20 -19 -15 -11 -11 -12 -14 -16 -19 -23 -30 -38 -46 -50 -49 -45 -40 -38 -39 -41 -41 -39 -35 -35 -32 -30 -31 -35 -39 -44 -51 -60 -66 -62 -53 -44 -39 -37 -36 -38 -40 -43 -46 -45 -44 -43 -42 -40 -40 -40 -39 -36 -26 -24 -26 -25 -16 -10 -9 -11 -17 -28 -45 -48 -30 -29 -28 -27 -27 -29 -30 -32 -34 -38 -41 -42 -42 -43 -45 -45 -44 -41 -38 -35 -34 -35 -37 -40 -43 -43 -42 -42 -44 -47 -47 -43 -37 -31 -26 -23 -22 -23 -24 -23 -23 -23 -25 -26 -27 -27 -26 -25 -25 -24 -24 -25 -26 -27 -28 -28 -29 -30 -33 -35 -36 -35 -33 -30 -30 -31 -32 -33 -33 -30 -28 -27 -28 -29 -29 -26 -24 -23 -26 -27 -25 -22 -20 -20 -22 -25 -28 -29 -29 -26 -24 -24 -24 -25 -25 -26 -27 -29 -30 -30 -28 -25 -23 -23 -25 -28 -30 -31 -32 -32 -32 -31 -29 -26 -25 -24 -24 -25 -27 -29 -30 -31 -31 -29 -28 -26 -24 -21 -20 -20 -20 -21 -23 -25 -25 -24 -24 -27 -34 -36 -29 -20 -12 -11 -12 -13 -14 -14 -16 -18 -21 -23 -23 -21 -19 -17 -16 -16 -18 -22 -26 -29 -32 -33 -34 -36 -38 -38 -36 -33 -32 -31 -31 -31 -29 -27 -24 -23 -24 -26 -29 -30 -31 -30 -29 -28 -28 -27 -27 -27 -26 -25 -24 -25 -26 -26 -23 -19 -12 -11 -11 -10 -7 -9 -12 -16 -21 -25 -29 -30 -30 -29 -27 -26 -26 -25 -25 -25 -24 -21 -19 -21 -26 -28 -28 -27 -26 -26 -24 -21 -17 -16 -17 -17 -16 -13 -9 -8 -9 -14 -20 -25 -26 -25 -26 -28 -28 -27 -27 -26 -26 -26 -26 -27 -28 -27 -22 -16 -12 -12 -16 -21 -23 -20 -17 -18 -25 -27 -28 -31 -33 -34 -32 -33 -36 -39 -41 -41 -38 -34 -32 -35 -38 -39 -41 -43 -47 -49 -49 -47 -44 -41 -39 -38 -38 -36 -33 -33 -37 -42 -46 -49 -47 -42 -37 -32 -29 -28 -28 -30 -34 -40 -41 -43 -45 -47 -47 -45 -41 -37 -35 -34 -36 -39 -43 -46 -44 -38 -32 -30 -34 -33 -32 -32 -32 -31 -27 -24 -21 -20 -20 -22 -24 -25 -24 -19 -17 -18 -19 -19 -17 -14 -12 -13 -14 -16 -19 -23 -29 -37 -46 -50 -50 -46 -40 -36 -37 -40 -43 -43 -39 -37 -33 -30 -30 -34 -38 -44 -51 -60 -67 -63 -55 -48 -42 -37 -35 -35 -37 -40 -45 -47 -46 -45 -43 -40 -40 -40 -37 -30 -20 -17 -21 -23 -19 -14 -11 -11 -15 -23 -40 -46 -30 -28 -27 -26 -26 -27 -29 -31 -34 -37 -40 -42 -42 -42 -44 -47 -49 -50 -48 -46 -43 -40 -39 -39 -41 -41 -40 -38 -39 -43 -45 -44 -42 -37 -33 -29 -27 -26 -25 -24 -23 -23 -26 -29 -31 -30 -30 -29 -28 -26 -26 -26 -26 -25 -25 -26 -26 -27 -29 -32 -33 -34 -34 -33 -32 -32 -32 -33 -33 -30 -28 -26 -26 -28 -29 -29 -27 -26 -27 -28 -27 -25 -22 -20 -21 -24 -27 -30 -30 -27 -24 -23 -22 -23 -25 -26 -27 -28 -29 -29 -28 -25 -23 -24 -26 -28 -30 -31 -32 -32 -32 -31 -29 -28 -26 -25 -25 -25 -26 -28 -30 -31 -31 -30 -28 -26 -25 -23 -21 -20 -20 -21 -22 -24 -25 -24 -24 -25 -31 -34 -30 -20 -11 -11 -11 -12 -12 -13 -14 -16 -19 -22 -23 -21 -18 -15 -13 -13 -15 -18 -22 -26 -29 -30 -31 -33 -36 -38 -36 -33 -31 -31 -31 -32 -31 -28 -25 -23 -23 -25 -28 -30 -32 -31 -30 -29 -28 -28 -28 -27 -26 -25 -24 -24 -25 -25 -25 -23 -17 -13 -11 -10 -8 -9 -12 -16 -21 -24 -28 -30 -30 -29 -28 -26 -25 -25 -25 -25 -25 -23 -21 -21 -26 -28 -28 -26 -25 -24 -24 -22 -20 -17 -16 -15 -15 -15 -15 -13 -14 -17 -22 -28 -31 -32 -31 -29 -27 -27 -27 -27 -27 -26 -26 -26 -28 -28 -26 -19 -14 -13 -16 -21 -22 -20 -18 -21 -29 -31 -33 -35 -39 -39 -36 -35 -36 -38 -41 -41 -39 -38 -39 -41 -43 -43 -43 -44 -47 -50 -50 -49 -47 -44 -41 -41 -42 -41 -37 -34 -36 -40 -46 -49 -49 -45 -40 -35 -31 -30 -30 -31 -33 -37 -40 -43 -45 -48 -49 -48 -44 -39 -34 -32 -33 -36 -40 -43 -40 -36 -33 -32 -36 -34 -33 -32 -32 -31 -27 -23 -21 -20 -19 -21 -23 -24 -24 -22 -19 -18 -18 -18 -18 -16 -14 -14 -15 -17 -19 -23 -29 -36 -45 -50 -51 -47 -41 -35 -35 -39 -44 -49 -47 -41 -34 -29 -28 -32 -37 -43 -51 -61 -66 -62 -55 -48 -42 -37 -33 -32 -32 -36 -42 -46 -47 -46 -44 -41 -40 -40 -36 -27 -21 -18 -19 -22 -22 -17 -13 -11 -13 -18 -32 -39 -29 -28 -28 -27 -27 -28 -30 -32 -35 -36 -39 -41 -43 -45 -46 -50 -53 -55 -54 -51 -47 -44 -41 -40 -39 -37 -34 -31 -31 -33 -35 -37 -38 -37 -33 -30 -28 -27 -24 -22 -21 -23 -27 -31 -32 -32 -31 -31 -30 -29 -29 -29 -28 -27 -26 -25 -25 -26 -27 -29 -30 -31 -33 -34 -34 -33 -33 -32 -32 -30 -28 -25 -23 -24 -27 -29 -29 -28 -28 -29 -29 -28 -25 -22 -22 -23 -27 -30 -32 -29 -25 -22 -21 -21 -23 -25 -28 -29 -30 -29 -28 -26 -25 -24 -26 -28 -30 -31 -31 -31 -30 -30 -29 -28 -27 -26 -26 -26 -26 -27 -29 -31 -31 -30 -28 -27 -26 -24 -21 -20 -20 -21 -22 -24 -25 -24 -23 -23 -28 -33 -31 -23 -12 -9 -10 -12 -12 -12 -12 -13 -16 -20 -23 -22 -20 -18 -16 -17 -17 -17 -18 -21 -26 -28 -29 -30 -32 -35 -34 -32 -30 -30 -30 -31 -31 -30 -27 -24 -23 -24 -26 -29 -32 -32 -31 -29 -28 -28 -28 -28 -27 -26 -24 -23 -23 -24 -25 -25 -21 -16 -11 -10 -9 -9 -12 -16 -20 -23 -26 -28 -30 -29 -28 -26 -25 -25 -25 -25 -25 -24 -23 -22 -26 -29 -29 -26 -23 -23 -23 -23 -22 -19 -15 -14 -14 -16 -18 -20 -22 -24 -27 -31 -34 -34 -32 -30 -27 -27 -28 -28 -28 -26 -24 -24 -26 -29 -28 -22 -16 -13 -14 -19 -22 -24 -26 -30 -33 -34 -36 -38 -40 -42 -41 -39 -38 -39 -41 -43 -45 -47 -47 -46 -45 -45 -45 -46 -49 -51 -51 -50 -50 -46 -43 -42 -44 -45 -42 -38 -37 -39 -44 -48 -50 -48 -44 -38 -34 -32 -31 -32 -33 -36 -39 -42 -45 -48 -50 -50 -46 -41 -34 -32 -32 -34 -37 -39 -35 -36 -38 -38 -39 -35 -33 -32 -32 -30 -26 -23 -21 -19 -18 -19 -21 -22 -22 -21 -19 -17 -17 -17 -18 -17 -16 -16 -16 -18 -20 -23 -28 -35 -44 -50 -52 -49 -42 -35 -33 -36 -43 -51 -51 -45 -36 -29 -27 -29 -35 -42 -50 -60 -64 -59 -52 -46 -40 -35 -31 -29 -28 -31 -38 -43 -46 -47 -45 -42 -41 -40 -38 -30 -25 -22 -23 -25 -26 -20 -15 -12 -12 -15 -22 -28 -25 -27 -29 -31 -32 -32 -33 -33 -32 -30 -30 -32 -36 -41 -45 -49 -53 -55 -55 -52 -48 -45 -42 -39 -37 -36 -33 -30 -26 -24 -24 -27 -29 -31 -29 -28 -27 -27 -25 -23 -22 -24 -26 -29 -30 -31 -32 -32 -32 -31 -31 -31 -30 -30 -28 -27 -27 -27 -27 -27 -27 -28 -30 -32 -33 -33 -32 -31 -30 -30 -28 -25 -23 -22 -23 -26 -28 -28 -29 -30 -31 -30 -28 -24 -23 -24 -26 -30 -33 -31 -28 -24 -21 -21 -22 -25 -28 -30 -30 -30 -30 -29 -27 -26 -26 -27 -28 -29 -29 -29 -29 -29 -29 -28 -28 -27 -27 -26 -26 -26 -28 -30 -31 -30 -29 -28 -27 -25 -22 -20 -20 -21 -22 -24 -24 -24 -23 -22 -26 -31 -32 -25 -13 -7 -8 -11 -14 -15 -15 -15 -16 -19 -21 -22 -21 -20 -20 -19 -18 -17 -17 -18 -22 -26 -27 -28 -29 -30 -32 -31 -30 -29 -30 -31 -32 -31 -29 -26 -24 -24 -25 -28 -31 -31 -31 -30 -29 -29 -29 -29 -28 -26 -24 -22 -22 -23 -24 -25 -24 -20 -14 -11 -9 -9 -11 -15 -19 -21 -24 -27 -29 -29 -28 -27 -26 -26 -25 -25 -25 -25 -24 -24 -27 -30 -30 -26 -22 -22 -22 -23 -23 -21 -16 -12 -13 -16 -20 -24 -26 -28 -30 -33 -35 -35 -33 -30 -27 -27 -27 -28 -28 -26 -22 -21 -24 -27 -29 -25 -20 -15 -13 -19 -26 -30 -33 -34 -33 -33 -35 -38 -40 -41 -42 -42 -41 -41 -41 -44 -47 -50 -51 -49 -47 -46 -46 -48 -50 -51 -52 -53 -53 -49 -45 -44 -45 -46 -45 -42 -39 -38 -42 -47 -49 -50 -47 -42 -36 -33 -32 -33 -34 -35 -39 -42 -44 -47 -50 -50 -47 -42 -36 -33 -32 -33 -35 -36 -32 -37 -42 -43 -40 -37 -34 -33 -33 -30 -27 -24 -21 -19 -17 -18 -19 -19 -19 -18 -17 -16 -16 -17 -18 -18 -18 -17 -17 -19 -21 -24 -28 -35 -43 -50 -53 -52 -45 -35 -31 -33 -40 -49 -51 -46 -37 -29 -26 -28 -33 -41 -49 -58 -60 -55 -47 -42 -37 -33 -28 -25 -22 -24 -30 -38 -44 -46 -45 -43 -42 -41 -40 -36 -31 -28 -27 -31 -30 -24 -18 -13 -13 -14 -15 -18 -23 -27 -30 -32 -34 -34 -34 -33 -31 -28 -25 -24 -26 -31 -37 -41 -46 -49 -51 -50 -47 -45 -43 -40 -38 -38 -37 -34 -27 -21 -19 -20 -22 -25 -24 -24 -25 -27 -27 -26 -26 -26 -26 -27 -29 -31 -32 -32 -32 -31 -30 -30 -30 -31 -31 -31 -30 -30 -29 -28 -28 -28 -29 -29 -30 -30 -30 -29 -28 -28 -27 -25 -24 -22 -21 -23 -25 -27 -28 -30 -31 -30 -29 -26 -24 -24 -26 -29 -32 -32 -29 -26 -22 -21 -22 -25 -27 -30 -30 -31 -32 -32 -31 -28 -27 -26 -25 -24 -25 -26 -28 -30 -30 -30 -29 -28 -27 -27 -26 -27 -28 -30 -31 -31 -30 -29 -28 -25 -22 -21 -20 -21 -22 -23 -23 -23 -22 -22 -23 -28 -31 -27 -15 -7 -5 -9 -14 -18 -19 -18 -18 -18 -20 -22 -22 -22 -21 -20 -19 -18 -17 -17 -19 -22 -24 -26 -27 -29 -31 -31 -31 -29 -29 -30 -32 -32 -31 -29 -26 -25 -24 -26 -29 -31 -32 -31 -30 -30 -29 -29 -28 -26 -24 -22 -21 -22 -24 -26 -25 -23 -18 -13 -10 -9 -11 -14 -18 -20 -22 -25 -28 -30 -29 -28 -27 -26 -26 -25 -25 -25 -25 -26 -28 -31 -31 -28 -22 -21 -21 -22 -23 -23 -19 -15 -15 -17 -21 -24 -27 -29 -32 -33 -34 -34 -32 -29 -26 -25 -26 -27 -28 -27 -25 -24 -25 -26 -29 -28 -24 -19 -13 -19 -27 -34 -36 -34 -31 -32 -34 -37 -39 -40 -40 -40 -41 -42 -44 -47 -51 -54 -53 -50 -47 -46 -47 -49 -50 -52 -54 -55 -55 -52 -48 -46 -45 -46 -46 -44 -40 -38 -40 -45 -49 -50 -49 -45 -39 -35 -33 -33 -35 -36 -38 -41 -43 -45 -48 -49 -47 -43 -39 -36 -34 -33 -34 -34 -33 -37 -42 -43 -41 -38 -36 -35 -35 -32 -28 -25 -22 -18 -17 -16 -16 -16 -16 -15 -15 -15 -15 -17 -19 -20 -19 -18 -17 -18 -21 -24 -27 -34 -43 -51 -56 -55 -47 -36 -30 -30 -36 -46 -50 -47 -39 -30 -26 -27 -31 -38 -46 -53 -55 -50 -43 -37 -34 -30 -26 -22 -18 -18 -22 -29 -39 -43 -44 -44 -43 -43 -42 -41 -38 -34 -34 -38 -35 -28 -21 -15 -15 -16 -15 -14 -26 -29 -32 -34 -36 -36 -36 -35 -33 -30 -26 -24 -23 -25 -27 -30 -34 -38 -42 -44 -44 -44 -43 -41 -39 -40 -41 -38 -31 -23 -19 -18 -19 -21 -21 -21 -22 -25 -26 -28 -29 -30 -30 -30 -31 -32 -33 -32 -30 -29 -29 -30 -30 -30 -30 -31 -32 -31 -29 -28 -29 -29 -29 -28 -27 -27 -28 -28 -28 -27 -27 -27 -26 -25 -23 -23 -23 -25 -27 -28 -29 -29 -28 -27 -25 -25 -25 -28 -31 -31 -29 -27 -24 -23 -24 -25 -27 -29 -30 -31 -32 -33 -33 -31 -28 -25 -22 -20 -20 -22 -25 -28 -30 -31 -31 -30 -29 -29 -29 -28 -28 -29 -30 -30 -30 -29 -27 -25 -23 -21 -21 -21 -21 -22 -23 -23 -22 -21 -21 -25 -29 -30 -21 -10 -5 -6 -12 -19 -21 -22 -20 -19 -19 -20 -22 -22 -21 -19 -19 -19 -19 -19 -19 -20 -22 -24 -26 -29 -30 -32 -31 -30 -28 -29 -31 -33 -33 -31 -27 -25 -24 -25 -28 -30 -31 -31 -31 -31 -30 -30 -28 -26 -24 -21 -20 -21 -23 -25 -26 -25 -21 -16 -11 -9 -10 -14 -17 -18 -21 -24 -28 -30 -30 -29 -28 -27 -25 -24 -24 -25 -25 -25 -28 -32 -34 -31 -24 -21 -21 -22 -24 -26 -26 -23 -20 -19 -20 -22 -26 -29 -32 -34 -35 -33 -30 -27 -25 -25 -26 -27 -29 -29 -29 -28 -28 -28 -29 -28 -27 -22 -13 -16 -24 -32 -36 -33 -30 -30 -33 -36 -39 -39 -37 -38 -40 -44 -47 -51 -54 -55 -54 -51 -47 -45 -45 -48 -50 -52 -54 -56 -56 -54 -51 -48 -46 -46 -46 -45 -42 -39 -38 -43 -47 -50 -51 -48 -42 -37 -34 -33 -35 -36 -38 -40 -42 -43 -45 -46 -47 -45 -42 -38 -35 -33 -33 -33 -34 -37 -40 -41 -40 -39 -38 -37 -37 -34 -30 -26 -22 -19 -17 -16 -15 -14 -14 -13 -13 -14 -14 -16 -20 -21 -21 -19 -17 -18 -20 -23 -27 -35 -43 -52 -57 -59 -50 -38 -30 -28 -33 -43 -49 -48 -41 -32 -28 -27 -28 -32 -41 -49 -52 -49 -43 -36 -32 -29 -25 -21 -17 -15 -17 -23 -32 -38 -42 -44 -44 -44 -43 -42 -40 -39 -39 -42 -39 -33 -25 -18 -17 -17 -17 -15 -30 -33 -34 -35 -36 -35 -36 -36 -37 -35 -31 -28 -26 -24 -24 -23 -24 -27 -30 -34 -38 -42 -43 -42 -41 -42 -43 -41 -34 -26 -22 -20 -21 -21 -20 -20 -21 -22 -22 -24 -27 -30 -33 -33 -33 -34 -34 -33 -31 -31 -31 -31 -31 -30 -30 -30 -30 -30 -28 -28 -28 -28 -28 -27 -27 -27 -27 -27 -27 -27 -28 -28 -28 -27 -26 -25 -24 -25 -27 -28 -27 -25 -25 -25 -25 -25 -26 -28 -31 -31 -29 -27 -25 -24 -24 -25 -27 -28 -29 -30 -30 -31 -32 -33 -31 -28 -24 -20 -18 -19 -21 -25 -28 -31 -31 -31 -31 -31 -31 -30 -29 -29 -30 -31 -30 -28 -26 -25 -24 -23 -22 -21 -20 -21 -22 -23 -23 -21 -20 -22 -27 -31 -27 -15 -7 -5 -10 -16 -21 -23 -22 -20 -18 -20 -22 -22 -20 -17 -17 -19 -21 -22 -21 -20 -21 -22 -24 -27 -29 -31 -31 -30 -29 -29 -30 -32 -33 -31 -28 -25 -24 -25 -28 -30 -31 -31 -31 -32 -31 -30 -28 -26 -23 -21 -20 -21 -22 -24 -26 -26 -24 -19 -12 -9 -8 -11 -14 -16 -19 -23 -27 -30 -31 -30 -29 -27 -26 -25 -25 -25 -25 -25 -27 -32 -36 -35 -28 -23 -22 -24 -25 -26 -27 -26 -22 -19 -18 -20 -24 -28 -32 -34 -35 -33 -30 -26 -25 -26 -27 -28 -29 -29 -29 -29 -29 -28 -28 -29 -28 -26 -18 -14 -19 -28 -35 -34 -30 -29 -31 -35 -39 -38 -37 -37 -40 -45 -49 -52 -54 -55 -54 -51 -49 -46 -45 -46 -49 -51 -53 -55 -56 -55 -53 -50 -46 -45 -46 -45 -43 -40 -39 -42 -46 -50 -51 -49 -44 -39 -34 -33 -35 -36 -38 -39 -41 -42 -42 -44 -46 -48 -45 -40 -36 -34 -33 -32 -33 -35 -37 -39 -39 -39 -39 -39 -38 -35 -31 -26 -23 -20 -18 -16 -14 -13 -12 -12 -12 -12 -13 -16 -20 -23 -23 -20 -18 -18 -20 -23 -28 -34 -43 -52 -59 -62 -53 -42 -32 -28 -31 -41 -48 -50 -44 -36 -30 -27 -25 -27 -36 -47 -53 -54 -48 -39 -33 -29 -26 -23 -19 -16 -16 -19 -27 -35 -40 -41 -41 -43 -42 -39 -38 -40 -41 -42 -42 -37 -30 -22 -20 -19 -18 -16 -35 -36 -36 -36 -35 -35 -36 -38 -40 -39 -37 -35 -32 -29 -27 -25 -23 -23 -23 -26 -31 -36 -40 -42 -42 -43 -43 -40 -33 -26 -23 -22 -22 -21 -20 -20 -21 -21 -20 -20 -24 -28 -31 -33 -34 -36 -36 -35 -34 -32 -31 -29 -28 -28 -29 -29 -29 -29 -28 -28 -28 -28 -27 -28 -28 -27 -27 -27 -26 -27 -28 -29 -29 -29 -28 -27 -27 -26 -27 -27 -26 -23 -21 -21 -23 -25 -27 -29 -30 -30 -29 -27 -26 -26 -26 -25 -26 -27 -29 -31 -30 -29 -29 -31 -32 -31 -27 -22 -18 -17 -19 -22 -26 -29 -31 -31 -32 -31 -31 -31 -30 -30 -30 -31 -29 -27 -25 -25 -25 -23 -21 -20 -20 -21 -22 -23 -23 -22 -20 -20 -23 -28 -26 -17 -9 -5 -7 -13 -18 -21 -23 -22 -21 -22 -23 -22 -18 -14 -14 -17 -20 -22 -22 -21 -21 -21 -21 -23 -25 -28 -29 -30 -29 -29 -30 -31 -33 -32 -29 -26 -24 -24 -26 -28 -30 -31 -32 -32 -32 -30 -28 -25 -23 -21 -20 -20 -21 -24 -25 -26 -25 -22 -15 -10 -7 -8 -11 -13 -17 -21 -25 -28 -29 -28 -28 -27 -26 -26 -25 -25 -25 -24 -25 -30 -35 -37 -31 -25 -23 -24 -25 -26 -27 -27 -25 -20 -17 -18 -22 -26 -31 -34 -35 -34 -31 -28 -27 -27 -28 -28 -29 -29 -29 -28 -28 -28 -28 -29 -29 -28 -25 -17 -18 -25 -34 -35 -29 -27 -29 -33 -37 -37 -37 -37 -40 -45 -49 -53 -54 -55 -54 -52 -49 -47 -44 -45 -48 -51 -52 -53 -53 -54 -53 -51 -48 -45 -45 -45 -44 -42 -40 -41 -45 -49 -51 -50 -46 -40 -35 -33 -34 -36 -38 -39 -40 -41 -40 -41 -45 -50 -47 -43 -38 -34 -33 -31 -31 -33 -35 -38 -39 -39 -39 -39 -39 -36 -32 -28 -24 -21 -19 -17 -15 -13 -11 -10 -9 -10 -11 -15 -20 -24 -25 -22 -20 -19 -20 -23 -28 -34 -42 -51 -59 -63 -56 -45 -34 -28 -30 -39 -47 -51 -49 -40 -33 -27 -23 -24 -34 -45 -53 -55 -50 -41 -35 -31 -28 -26 -21 -17 -15 -17 -24 -33 -38 -39 -37 -38 -39 -36 -34 -37 -38 -40 -41 -40 -34 -27 -24 -23 -21 -18 -39 -39 -38 -36 -35 -36 -38 -40 -42 -42 -42 -40 -38 -35 -32 -30 -28 -26 -25 -25 -28 -32 -37 -42 -44 -43 -41 -37 -30 -25 -25 -25 -25 -25 -25 -24 -23 -23 -23 -21 -21 -22 -23 -26 -30 -34 -36 -37 -36 -33 -30 -29 -28 -27 -26 -26 -27 -27 -27 -28 -28 -28 -28 -28 -28 -28 -28 -27 -27 -27 -28 -29 -30 -30 -29 -28 -28 -29 -29 -28 -26 -23 -20 -18 -20 -23 -26 -29 -30 -30 -29 -28 -26 -27 -27 -26 -26 -26 -29 -32 -31 -30 -28 -28 -29 -30 -29 -25 -20 -17 -18 -21 -25 -28 -30 -32 -32 -31 -30 -30 -30 -31 -31 -31 -30 -27 -26 -25 -25 -23 -21 -20 -19 -21 -22 -23 -23 -23 -21 -20 -22 -27 -30 -23 -11 -2 0 -5 -11 -17 -21 -24 -25 -24 -23 -20 -15 -11 -12 -16 -19 -21 -22 -22 -21 -20 -19 -19 -21 -24 -27 -29 -29 -30 -30 -32 -33 -32 -30 -28 -26 -25 -25 -26 -28 -31 -33 -33 -33 -31 -29 -25 -22 -20 -19 -20 -21 -23 -25 -26 -26 -25 -19 -12 -8 -8 -10 -13 -16 -19 -22 -25 -25 -25 -25 -26 -26 -26 -26 -26 -25 -25 -24 -27 -32 -38 -35 -28 -25 -25 -26 -26 -27 -27 -27 -23 -18 -18 -20 -24 -29 -32 -34 -34 -32 -29 -28 -28 -29 -29 -29 -29 -29 -28 -28 -28 -28 -28 -29 -29 -28 -22 -19 -21 -30 -34 -29 -26 -26 -30 -33 -34 -34 -35 -39 -45 -50 -52 -54 -54 -54 -52 -50 -47 -44 -44 -47 -48 -49 -48 -48 -50 -52 -53 -49 -46 -45 -45 -45 -43 -41 -42 -44 -48 -51 -51 -47 -41 -36 -34 -34 -36 -38 -38 -38 -39 -39 -40 -44 -51 -50 -45 -39 -34 -33 -31 -31 -32 -34 -36 -38 -39 -39 -39 -38 -36 -33 -29 -25 -23 -20 -18 -15 -13 -10 -8 -7 -8 -10 -14 -20 -24 -26 -24 -22 -21 -22 -24 -27 -33 -41 -50 -59 -63 -58 -47 -37 -29 -30 -36 -44 -49 -51 -44 -36 -28 -22 -23 -33 -43 -51 -54 -50 -43 -36 -32 -29 -28 -24 -19 -15 -15 -21 -30 -37 -39 -37 -36 -36 -35 -32 -33 -35 -37 -40 -41 -38 -32 -30 -29 -27 -21 -43 -42 -40 -39 -38 -39 -39 -40 -41 -42 -43 -43 -41 -39 -37 -36 -34 -32 -31 -31 -33 -36 -39 -42 -43 -41 -36 -30 -25 -24 -25 -27 -27 -27 -27 -26 -26 -26 -26 -24 -23 -22 -21 -21 -24 -28 -32 -35 -36 -34 -33 -31 -30 -29 -27 -26 -26 -26 -26 -27 -27 -27 -27 -27 -27 -28 -28 -28 -28 -28 -29 -30 -30 -30 -29 -29 -29 -30 -31 -30 -28 -25 -21 -19 -19 -21 -24 -27 -28 -29 -29 -29 -28 -28 -27 -27 -26 -26 -29 -32 -33 -31 -29 -27 -27 -28 -29 -28 -24 -20 -19 -20 -24 -27 -30 -31 -31 -30 -30 -29 -30 -30 -31 -31 -30 -29 -27 -25 -24 -23 -21 -20 -19 -20 -21 -22 -23 -23 -22 -20 -21 -26 -31 -25 -13 -2 2 -1 -6 -12 -18 -23 -25 -25 -22 -17 -14 -14 -17 -19 -19 -20 -21 -22 -21 -20 -19 -19 -19 -22 -25 -29 -30 -30 -31 -31 -32 -32 -31 -30 -28 -26 -24 -25 -27 -30 -32 -33 -33 -32 -30 -25 -21 -19 -18 -19 -21 -23 -25 -26 -27 -27 -22 -15 -8 -6 -8 -11 -14 -15 -17 -19 -21 -22 -23 -24 -26 -26 -26 -26 -26 -25 -24 -24 -29 -37 -38 -32 -28 -26 -28 -27 -26 -26 -27 -27 -21 -18 -19 -22 -27 -31 -34 -36 -35 -31 -28 -28 -29 -30 -30 -29 -29 -29 -29 -29 -28 -28 -29 -29 -29 -26 -22 -20 -26 -32 -29 -25 -24 -28 -33 -34 -34 -35 -39 -45 -49 -52 -53 -55 -55 -53 -51 -48 -44 -43 -44 -46 -45 -44 -46 -48 -51 -53 -51 -47 -45 -45 -45 -44 -43 -42 -44 -47 -50 -50 -47 -41 -36 -34 -34 -35 -37 -38 -37 -38 -39 -40 -44 -51 -51 -46 -40 -34 -33 -31 -31 -32 -34 -36 -37 -38 -39 -38 -37 -35 -32 -29 -26 -23 -20 -18 -15 -13 -9 -7 -6 -6 -8 -13 -19 -24 -28 -27 -25 -24 -24 -25 -26 -31 -39 -49 -59 -64 -60 -51 -40 -32 -31 -33 -38 -44 -49 -45 -39 -31 -24 -24 -33 -42 -50 -54 -51 -45 -38 -34 -31 -30 -27 -22 -17 -15 -19 -27 -36 -40 -39 -36 -34 -33 -31 -32 -34 -38 -41 -43 -41 -36 -36 -37 -36 -28 -46 -45 -43 -42 -40 -40 -39 -39 -39 -40 -42 -43 -42 -41 -39 -36 -35 -34 -34 -35 -36 -38 -40 -41 -38 -32 -27 -23 -21 -22 -24 -26 -26 -25 -25 -25 -26 -27 -27 -26 -25 -23 -21 -20 -20 -23 -27 -31 -34 -36 -36 -35 -34 -33 -30 -28 -26 -25 -25 -25 -26 -26 -26 -26 -26 -26 -27 -28 -28 -29 -30 -30 -30 -30 -29 -28 -28 -30 -33 -33 -30 -27 -24 -22 -21 -20 -22 -24 -27 -28 -29 -30 -29 -29 -28 -28 -27 -27 -28 -31 -33 -33 -31 -28 -25 -25 -26 -28 -27 -23 -20 -20 -21 -25 -27 -29 -30 -30 -29 -29 -29 -30 -31 -31 -31 -30 -28 -26 -24 -23 -21 -20 -19 -19 -20 -20 -21 -23 -22 -21 -21 -25 -30 -25 -14 -3 3 -0 -4 -9 -14 -20 -23 -24 -22 -20 -20 -22 -23 -22 -20 -19 -21 -22 -22 -22 -22 -22 -21 -22 -25 -28 -30 -30 -30 -31 -31 -32 -32 -32 -31 -28 -26 -25 -26 -29 -31 -32 -33 -32 -31 -26 -22 -20 -19 -19 -21 -23 -24 -26 -27 -28 -25 -18 -11 -7 -8 -10 -11 -13 -15 -20 -23 -25 -26 -26 -27 -27 -26 -26 -26 -26 -24 -23 -25 -34 -38 -35 -31 -29 -30 -29 -27 -25 -25 -27 -25 -21 -18 -20 -25 -31 -36 -38 -37 -33 -30 -29 -30 -30 -30 -29 -29 -29 -31 -30 -29 -29 -29 -29 -29 -29 -26 -22 -22 -28 -28 -25 -24 -28 -34 -36 -37 -38 -41 -45 -47 -50 -53 -56 -56 -54 -52 -49 -45 -42 -42 -43 -44 -43 -47 -50 -53 -53 -51 -48 -45 -44 -45 -45 -44 -44 -45 -47 -49 -49 -46 -41 -36 -34 -34 -35 -36 -36 -36 -37 -38 -39 -43 -49 -50 -46 -40 -35 -34 -33 -32 -33 -35 -36 -37 -38 -38 -38 -37 -35 -32 -28 -24 -22 -19 -17 -15 -12 -9 -7 -5 -5 -7 -12 -18 -24 -29 -29 -28 -28 -27 -26 -26 -29 -37 -48 -58 -64 -63 -55 -44 -36 -33 -32 -34 -40 -44 -42 -39 -34 -27 -27 -33 -41 -49 -53 -51 -47 -41 -36 -33 -32 -30 -25 -19 -15 -17 -24 -33 -40 -41 -37 -34 -32 -31 -32 -36 -41 -45 -46 -44 -39 -40 -43 -45 -37 -47 -46 -44 -42 -41 -39 -38 -37 -37 -37 -39 -41 -42 -41 -39 -36 -34 -32 -32 -33 -35 -38 -40 -39 -34 -26 -21 -19 -20 -22 -24 -25 -25 -24 -23 -24 -25 -26 -26 -26 -25 -23 -21 -20 -20 -23 -25 -26 -29 -33 -36 -38 -38 -36 -34 -31 -27 -24 -22 -23 -24 -25 -25 -25 -24 -24 -25 -26 -28 -29 -30 -30 -31 -31 -29 -28 -27 -27 -30 -34 -34 -31 -27 -25 -23 -22 -21 -22 -25 -27 -29 -29 -30 -30 -29 -29 -29 -28 -27 -30 -33 -34 -34 -29 -25 -23 -24 -26 -27 -25 -22 -19 -19 -21 -23 -26 -28 -29 -29 -29 -29 -30 -30 -31 -31 -31 -29 -27 -25 -23 -22 -21 -20 -19 -18 -19 -20 -22 -22 -22 -21 -23 -30 -26 -16 -6 1 0 -3 -7 -11 -17 -20 -23 -25 -26 -27 -26 -25 -24 -22 -20 -20 -20 -21 -23 -24 -25 -25 -25 -25 -27 -29 -30 -31 -32 -31 -32 -32 -32 -32 -30 -27 -25 -26 -28 -30 -32 -33 -33 -32 -28 -24 -21 -19 -18 -20 -23 -24 -26 -28 -29 -27 -22 -15 -9 -6 -6 -8 -11 -16 -22 -27 -29 -29 -27 -27 -26 -26 -26 -26 -26 -26 -23 -22 -27 -35 -36 -34 -31 -32 -31 -28 -25 -24 -26 -27 -24 -21 -20 -24 -31 -37 -41 -40 -35 -31 -30 -30 -31 -31 -30 -30 -31 -33 -33 -31 -30 -29 -29 -29 -30 -28 -26 -22 -25 -26 -25 -23 -26 -32 -36 -38 -39 -41 -43 -46 -50 -53 -56 -57 -55 -53 -50 -46 -42 -41 -42 -45 -47 -51 -54 -55 -54 -52 -49 -46 -44 -44 -45 -45 -45 -45 -47 -49 -48 -45 -40 -35 -34 -34 -35 -35 -34 -35 -36 -36 -38 -43 -48 -49 -46 -40 -35 -35 -35 -35 -35 -36 -37 -38 -39 -39 -39 -38 -36 -33 -28 -24 -20 -17 -15 -14 -11 -9 -6 -5 -4 -6 -11 -17 -24 -30 -31 -31 -31 -31 -28 -26 -28 -34 -46 -57 -64 -64 -59 -49 -40 -35 -33 -33 -38 -40 -38 -35 -33 -31 -31 -35 -42 -48 -52 -52 -48 -44 -39 -35 -34 -32 -28 -22 -16 -16 -21 -30 -38 -40 -37 -35 -34 -33 -34 -38 -43 -47 -48 -46 -43 -43 -46 -49 -44 -46 -45 -43 -42 -40 -38 -36 -35 -35 -35 -37 -39 -41 -42 -40 -36 -33 -30 -29 -30 -33 -36 -39 -38 -33 -25 -21 -20 -22 -23 -24 -24 -24 -24 -23 -23 -23 -24 -25 -25 -25 -23 -22 -21 -23 -25 -24 -23 -22 -25 -29 -32 -34 -35 -34 -32 -28 -25 -22 -20 -20 -21 -23 -24 -24 -25 -25 -26 -27 -28 -29 -30 -30 -30 -29 -28 -26 -25 -25 -30 -34 -34 -31 -27 -26 -24 -22 -21 -22 -24 -26 -27 -29 -30 -31 -31 -31 -30 -28 -29 -31 -33 -35 -32 -27 -23 -22 -23 -25 -24 -22 -19 -17 -18 -20 -23 -26 -28 -28 -28 -28 -29 -30 -31 -32 -32 -31 -29 -26 -25 -24 -22 -20 -18 -17 -18 -19 -20 -22 -22 -22 -23 -29 -29 -22 -11 -2 0 -2 -5 -10 -14 -18 -22 -26 -29 -30 -28 -26 -24 -22 -21 -20 -19 -20 -22 -24 -26 -27 -27 -27 -27 -28 -30 -31 -32 -32 -32 -33 -33 -33 -32 -30 -28 -27 -27 -29 -31 -32 -32 -32 -30 -26 -21 -18 -17 -19 -22 -25 -27 -28 -29 -29 -26 -20 -12 -7 -5 -6 -11 -18 -25 -29 -31 -30 -27 -26 -25 -26 -26 -26 -26 -26 -25 -22 -20 -28 -34 -36 -34 -33 -32 -29 -26 -24 -25 -29 -28 -25 -21 -24 -31 -39 -44 -44 -39 -35 -33 -32 -33 -32 -32 -32 -32 -34 -33 -32 -30 -30 -30 -30 -30 -30 -29 -25 -24 -24 -23 -22 -23 -28 -34 -38 -40 -41 -44 -46 -49 -53 -55 -56 -56 -54 -51 -47 -43 -41 -42 -45 -50 -53 -54 -55 -55 -53 -50 -47 -44 -44 -45 -45 -46 -46 -47 -48 -47 -43 -39 -35 -34 -34 -34 -34 -32 -33 -34 -35 -38 -42 -47 -49 -47 -40 -36 -37 -38 -37 -37 -37 -38 -39 -39 -39 -39 -38 -36 -33 -29 -24 -20 -17 -14 -13 -11 -9 -6 -4 -4 -6 -10 -17 -25 -31 -33 -34 -34 -34 -31 -27 -27 -32 -43 -54 -63 -65 -62 -53 -45 -39 -35 -34 -38 -39 -36 -33 -32 -35 -36 -38 -43 -49 -52 -52 -50 -46 -42 -38 -36 -35 -32 -25 -17 -15 -18 -26 -36 -39 -38 -37 -38 -38 -38 -41 -45 -47 -49 -49 -48 -47 -48 -50 -47 -42 -41 -41 -40 -39 -37 -34 -32 -32 -32 -34 -37 -40 -42 -41 -37 -33 -30 -29 -30 -33 -36 -37 -36 -32 -28 -25 -24 -24 -24 -23 -23 -22 -23 -23 -23 -23 -23 -24 -25 -26 -26 -25 -25 -26 -27 -26 -24 -21 -21 -21 -22 -24 -27 -29 -29 -28 -26 -24 -22 -22 -22 -23 -24 -24 -25 -25 -26 -27 -28 -29 -29 -29 -29 -28 -27 -25 -23 -23 -25 -29 -33 -34 -30 -27 -25 -22 -20 -20 -22 -24 -25 -25 -28 -31 -32 -32 -31 -29 -28 -29 -31 -34 -34 -30 -26 -22 -21 -22 -23 -24 -23 -21 -19 -20 -22 -25 -28 -28 -28 -27 -28 -29 -31 -33 -33 -33 -31 -29 -27 -26 -24 -22 -19 -18 -18 -18 -19 -21 -22 -22 -23 -27 -31 -27 -17 -6 -0 -1 -4 -8 -12 -16 -20 -25 -29 -31 -29 -26 -24 -23 -22 -21 -20 -20 -21 -23 -25 -27 -28 -29 -29 -30 -31 -32 -32 -33 -33 -34 -34 -34 -33 -32 -31 -29 -29 -29 -31 -32 -32 -32 -31 -29 -24 -19 -16 -17 -21 -24 -27 -28 -29 -29 -28 -25 -18 -11 -7 -8 -12 -19 -26 -30 -31 -30 -27 -25 -25 -26 -27 -26 -26 -26 -26 -25 -19 -22 -29 -36 -37 -36 -33 -30 -26 -24 -25 -29 -31 -29 -23 -23 -31 -41 -47 -48 -44 -39 -36 -35 -35 -35 -34 -33 -34 -34 -34 -32 -31 -30 -30 -30 -30 -31 -31 -30 -26 -24 -22 -20 -21 -27 -33 -38 -39 -41 -43 -46 -48 -51 -54 -55 -56 -55 -52 -49 -45 -42 -41 -45 -49 -51 -52 -53 -54 -53 -50 -47 -44 -43 -44 -45 -46 -46 -47 -47 -46 -42 -38 -35 -33 -33 -33 -33 -32 -32 -33 -34 -37 -42 -46 -48 -46 -40 -37 -38 -39 -39 -38 -38 -39 -40 -40 -39 -39 -38 -36 -34 -30 -25 -20 -17 -14 -12 -11 -8 -6 -4 -4 -5 -9 -16 -25 -32 -35 -36 -37 -37 -33 -29 -27 -30 -39 -50 -60 -65 -64 -58 -50 -43 -38 -36 -40 -41 -38 -34 -32 -37 -39 -41 -45 -51 -52 -52 -51 -48 -45 -40 -39 -37 -35 -28 -19 -14 -16 -24 -34 -39 -40 -42 -44 -44 -43 -44 -46 -48 -50 -52 -52 -51 -51 -51 -48 -36 -36 -36 -36 -35 -34 -32 -30 -29 -29 -31 -34 -37 -40 -41 -39 -35 -32 -32 -35 -37 -37 -34 -31 -30 -30 -29 -29 -27 -26 -24 -24 -23 -22 -22 -23 -23 -24 -24 -25 -27 -28 -29 -28 -28 -29 -28 -27 -24 -22 -22 -22 -22 -23 -24 -25 -25 -24 -24 -24 -23 -23 -22 -22 -23 -24 -25 -26 -27 -27 -28 -29 -29 -28 -27 -25 -24 -23 -21 -21 -23 -27 -31 -31 -29 -26 -24 -22 -21 -23 -23 -24 -24 -26 -29 -31 -31 -31 -29 -28 -28 -29 -31 -33 -32 -28 -24 -21 -21 -22 -23 -24 -23 -22 -21 -21 -24 -27 -28 -28 -28 -27 -29 -31 -33 -34 -34 -33 -31 -30 -28 -26 -24 -22 -20 -19 -18 -19 -21 -22 -23 -23 -25 -30 -28 -19 -7 -1 1 -0 -3 -8 -13 -18 -23 -27 -30 -30 -28 -25 -24 -24 -23 -22 -21 -20 -21 -23 -25 -27 -29 -31 -32 -32 -32 -33 -33 -34 -34 -35 -34 -34 -33 -33 -31 -30 -29 -30 -31 -31 -31 -31 -30 -26 -21 -15 -16 -20 -24 -26 -28 -28 -29 -29 -27 -24 -17 -12 -11 -13 -19 -25 -29 -31 -31 -28 -26 -26 -27 -27 -27 -26 -26 -27 -26 -23 -21 -24 -31 -37 -38 -37 -34 -31 -28 -28 -30 -32 -32 -27 -24 -30 -40 -48 -50 -46 -42 -39 -37 -37 -36 -35 -35 -35 -35 -34 -33 -32 -31 -31 -31 -31 -31 -32 -32 -29 -26 -23 -20 -23 -29 -35 -37 -37 -38 -40 -43 -45 -47 -51 -54 -56 -56 -53 -50 -47 -43 -42 -45 -49 -50 -50 -50 -52 -52 -50 -47 -44 -43 -44 -45 -46 -46 -47 -47 -46 -43 -38 -34 -32 -32 -33 -32 -31 -31 -32 -33 -37 -41 -45 -46 -44 -39 -38 -39 -40 -40 -39 -39 -40 -40 -40 -39 -37 -36 -35 -34 -31 -26 -22 -17 -14 -12 -11 -9 -7 -5 -3 -4 -9 -16 -26 -33 -37 -38 -39 -38 -35 -30 -27 -28 -35 -46 -55 -63 -66 -61 -54 -47 -42 -38 -42 -43 -40 -36 -33 -38 -40 -43 -48 -53 -54 -54 -52 -50 -47 -43 -41 -40 -38 -31 -21 -16 -17 -25 -33 -39 -43 -46 -48 -46 -44 -45 -47 -50 -51 -53 -54 -54 -54 -53 -50 -30 -30 -30 -30 -30 -30 -30 -28 -27 -27 -27 -29 -33 -37 -40 -39 -38 -38 -40 -42 -39 -33 -28 -26 -27 -30 -32 -34 -34 -33 -30 -28 -26 -23 -22 -23 -24 -25 -25 -26 -28 -29 -30 -29 -28 -27 -27 -26 -24 -23 -23 -23 -23 -23 -23 -22 -22 -22 -23 -24 -25 -25 -24 -23 -23 -24 -25 -26 -26 -26 -27 -27 -27 -27 -25 -24 -23 -22 -20 -18 -18 -21 -25 -30 -30 -28 -26 -24 -23 -23 -23 -23 -23 -24 -26 -28 -29 -29 -28 -28 -27 -27 -28 -29 -30 -29 -26 -24 -23 -23 -24 -24 -24 -23 -23 -22 -22 -24 -27 -28 -28 -29 -30 -32 -33 -33 -33 -33 -32 -31 -30 -28 -27 -25 -23 -21 -20 -20 -21 -22 -23 -23 -24 -28 -25 -17 -5 3 5 3 -1 -7 -12 -17 -21 -26 -30 -29 -27 -26 -25 -26 -24 -22 -20 -18 -18 -19 -21 -25 -28 -31 -32 -33 -33 -32 -32 -33 -34 -35 -35 -34 -34 -34 -32 -31 -29 -30 -30 -31 -31 -31 -30 -28 -23 -15 -14 -17 -21 -25 -28 -29 -29 -29 -29 -28 -22 -15 -10 -11 -16 -22 -27 -30 -31 -29 -27 -27 -27 -27 -27 -27 -27 -27 -27 -27 -23 -22 -24 -33 -38 -40 -40 -37 -33 -30 -30 -32 -33 -33 -28 -29 -37 -46 -49 -46 -43 -41 -40 -38 -37 -36 -36 -35 -35 -34 -33 -32 -31 -31 -31 -31 -31 -32 -33 -31 -29 -26 -24 -25 -30 -33 -35 -34 -35 -36 -39 -41 -43 -47 -51 -55 -56 -54 -52 -49 -45 -43 -45 -50 -52 -50 -48 -50 -51 -50 -48 -45 -44 -44 -45 -45 -46 -47 -47 -46 -43 -39 -35 -33 -32 -31 -31 -31 -31 -31 -33 -36 -40 -44 -45 -43 -39 -38 -38 -39 -40 -39 -40 -41 -40 -39 -37 -36 -35 -34 -33 -31 -27 -23 -19 -15 -12 -11 -9 -7 -5 -3 -4 -8 -15 -25 -33 -38 -40 -41 -39 -36 -32 -28 -27 -31 -41 -51 -60 -66 -63 -57 -51 -45 -42 -44 -45 -43 -39 -35 -38 -40 -43 -48 -54 -57 -56 -54 -52 -50 -47 -44 -43 -41 -33 -25 -19 -19 -26 -32 -38 -43 -47 -48 -47 -45 -45 -48 -51 -52 -54 -55 -56 -55 -54 -50 -26 -26 -25 -25 -25 -26 -27 -27 -27 -26 -26 -27 -30 -34 -38 -41 -44 -45 -43 -39 -33 -28 -25 -25 -25 -27 -30 -32 -35 -37 -37 -35 -32 -27 -25 -25 -26 -26 -27 -27 -28 -30 -31 -32 -31 -29 -27 -26 -24 -23 -23 -23 -23 -23 -22 -21 -20 -19 -20 -22 -24 -25 -24 -23 -23 -24 -25 -26 -26 -26 -26 -26 -26 -25 -24 -23 -22 -22 -19 -17 -16 -16 -19 -25 -29 -28 -26 -25 -24 -23 -23 -23 -23 -23 -24 -25 -27 -28 -28 -27 -27 -26 -25 -25 -26 -26 -26 -26 -25 -24 -23 -23 -23 -24 -23 -23 -22 -24 -26 -28 -29 -30 -31 -32 -32 -32 -31 -31 -32 -32 -31 -29 -28 -27 -26 -24 -22 -22 -22 -23 -24 -24 -24 -27 -25 -18 -4 6 9 7 1 -6 -12 -17 -21 -24 -27 -26 -26 -26 -27 -26 -25 -23 -20 -18 -16 -16 -18 -22 -25 -29 -31 -33 -33 -32 -31 -32 -33 -34 -34 -34 -34 -34 -34 -32 -30 -30 -31 -31 -31 -30 -30 -29 -26 -18 -14 -15 -18 -24 -28 -30 -31 -31 -31 -30 -25 -17 -10 -8 -13 -19 -24 -27 -29 -29 -28 -27 -27 -27 -28 -28 -28 -27 -28 -28 -27 -24 -21 -26 -35 -40 -41 -39 -34 -31 -29 -29 -31 -33 -32 -32 -34 -41 -46 -46 -44 -42 -40 -39 -38 -36 -36 -35 -34 -33 -33 -32 -32 -31 -31 -31 -32 -33 -34 -33 -31 -28 -25 -24 -27 -31 -33 -33 -32 -33 -35 -37 -40 -44 -48 -52 -55 -55 -54 -51 -48 -45 -46 -50 -52 -51 -48 -49 -50 -51 -50 -47 -45 -44 -44 -44 -45 -46 -47 -46 -44 -41 -37 -34 -32 -31 -29 -29 -29 -30 -33 -35 -39 -42 -45 -43 -40 -38 -38 -39 -40 -40 -41 -41 -40 -39 -37 -35 -33 -32 -31 -30 -27 -24 -20 -15 -12 -11 -9 -7 -5 -3 -4 -8 -15 -24 -32 -39 -42 -42 -40 -37 -34 -30 -26 -29 -36 -47 -57 -64 -64 -59 -54 -49 -48 -48 -48 -46 -42 -38 -38 -39 -41 -47 -55 -58 -59 -57 -55 -53 -50 -48 -46 -44 -36 -31 -26 -23 -27 -31 -36 -42 -47 -49 -48 -46 -46 -49 -51 -53 -54 -56 -56 -55 -54 -51 -23 -24 -24 -23 -23 -24 -25 -26 -27 -27 -27 -27 -29 -33 -38 -44 -46 -43 -37 -31 -28 -26 -25 -25 -25 -26 -27 -28 -30 -32 -36 -37 -37 -35 -32 -29 -29 -29 -30 -30 -30 -32 -34 -36 -36 -35 -33 -30 -27 -25 -24 -23 -23 -22 -21 -20 -19 -18 -18 -19 -22 -23 -23 -22 -22 -24 -25 -27 -27 -27 -26 -25 -24 -24 -24 -23 -22 -21 -18 -17 -15 -14 -14 -17 -24 -26 -25 -24 -24 -23 -23 -23 -24 -24 -24 -25 -26 -27 -28 -28 -27 -26 -24 -22 -22 -23 -24 -25 -26 -25 -24 -22 -22 -23 -23 -23 -23 -25 -27 -29 -30 -30 -30 -31 -31 -32 -32 -32 -33 -33 -32 -31 -30 -29 -28 -26 -25 -24 -24 -24 -25 -26 -26 -26 -26 -23 -12 1 7 7 3 -4 -9 -13 -16 -19 -22 -24 -25 -26 -27 -27 -25 -24 -21 -19 -17 -16 -16 -18 -21 -25 -30 -32 -33 -32 -31 -31 -32 -33 -33 -34 -35 -35 -35 -33 -31 -30 -30 -30 -30 -30 -30 -29 -27 -21 -15 -13 -15 -20 -27 -30 -31 -32 -31 -30 -27 -20 -13 -7 -9 -13 -18 -22 -26 -28 -28 -28 -28 -28 -29 -29 -29 -28 -29 -30 -30 -27 -23 -21 -29 -35 -39 -38 -35 -31 -29 -28 -30 -33 -35 -34 -35 -38 -43 -43 -42 -40 -39 -38 -38 -37 -36 -36 -34 -33 -33 -33 -32 -32 -31 -31 -32 -34 -35 -34 -32 -30 -29 -27 -26 -28 -31 -33 -32 -32 -33 -35 -38 -41 -45 -49 -53 -55 -55 -54 -51 -47 -46 -49 -51 -52 -49 -49 -51 -52 -52 -51 -47 -44 -43 -42 -43 -45 -46 -46 -45 -43 -40 -37 -34 -32 -29 -28 -29 -30 -33 -34 -38 -41 -44 -44 -41 -40 -39 -40 -40 -41 -41 -41 -40 -39 -37 -35 -33 -31 -29 -28 -26 -24 -20 -16 -12 -10 -9 -7 -4 -3 -5 -9 -15 -23 -32 -39 -43 -43 -41 -38 -35 -31 -27 -27 -33 -43 -53 -61 -63 -61 -56 -52 -51 -52 -51 -49 -46 -43 -40 -39 -41 -46 -54 -60 -61 -60 -57 -55 -53 -51 -50 -46 -41 -37 -34 -29 -29 -30 -34 -39 -45 -48 -49 -48 -47 -49 -52 -54 -55 -56 -56 -55 -53 -50 -22 -23 -24 -23 -23 -23 -25 -26 -27 -27 -27 -28 -30 -34 -39 -44 -42 -37 -32 -28 -26 -25 -24 -24 -24 -23 -24 -24 -24 -26 -30 -34 -37 -39 -38 -36 -34 -33 -33 -32 -32 -34 -35 -37 -39 -40 -39 -36 -32 -29 -27 -25 -23 -22 -21 -20 -20 -19 -18 -18 -20 -20 -21 -21 -21 -23 -25 -27 -29 -28 -27 -25 -23 -23 -23 -24 -23 -21 -18 -17 -15 -13 -11 -12 -18 -23 -24 -23 -22 -22 -22 -22 -24 -26 -26 -26 -26 -27 -28 -29 -29 -28 -25 -22 -21 -21 -22 -24 -25 -25 -24 -22 -21 -21 -22 -23 -24 -26 -28 -29 -29 -28 -28 -29 -30 -32 -33 -34 -34 -34 -33 -32 -31 -30 -29 -28 -27 -27 -26 -26 -26 -27 -27 -28 -28 -26 -18 -6 1 4 3 -0 -4 -8 -11 -15 -18 -22 -25 -27 -28 -27 -26 -24 -21 -19 -17 -15 -15 -15 -18 -23 -28 -31 -32 -32 -32 -31 -31 -32 -32 -34 -35 -36 -36 -35 -32 -30 -30 -30 -30 -30 -29 -29 -27 -23 -17 -13 -12 -16 -24 -29 -31 -32 -31 -30 -28 -23 -16 -9 -9 -12 -16 -21 -25 -27 -28 -29 -29 -29 -29 -30 -30 -30 -30 -31 -32 -30 -27 -21 -24 -30 -34 -35 -34 -32 -29 -29 -30 -33 -35 -36 -36 -37 -39 -39 -39 -38 -39 -40 -39 -38 -37 -37 -35 -34 -33 -33 -33 -32 -31 -32 -33 -34 -35 -35 -33 -32 -30 -29 -27 -27 -29 -32 -32 -32 -32 -34 -36 -39 -43 -47 -52 -55 -57 -56 -53 -49 -47 -49 -51 -51 -50 -51 -53 -55 -56 -54 -50 -45 -42 -41 -42 -43 -45 -46 -47 -46 -44 -41 -37 -34 -31 -29 -28 -30 -32 -34 -37 -41 -43 -44 -43 -42 -41 -41 -40 -41 -41 -40 -39 -38 -37 -35 -32 -30 -28 -27 -25 -23 -20 -15 -12 -10 -8 -5 -3 -4 -6 -10 -16 -23 -31 -38 -43 -43 -40 -38 -36 -33 -29 -27 -30 -38 -49 -58 -62 -63 -59 -55 -53 -53 -54 -53 -50 -46 -42 -40 -41 -46 -54 -60 -63 -63 -60 -59 -57 -55 -53 -50 -47 -43 -39 -34 -31 -31 -33 -38 -44 -48 -49 -49 -48 -50 -52 -54 -55 -56 -56 -54 -52 -50 -22 -23 -24 -24 -24 -24 -25 -26 -26 -25 -25 -27 -30 -36 -41 -41 -36 -31 -28 -26 -24 -23 -22 -22 -21 -22 -22 -22 -22 -22 -24 -28 -33 -37 -39 -40 -39 -37 -35 -33 -34 -35 -36 -36 -37 -39 -40 -39 -36 -32 -29 -27 -25 -23 -21 -21 -21 -21 -21 -20 -19 -19 -20 -20 -21 -22 -25 -28 -30 -29 -28 -25 -23 -21 -22 -23 -23 -21 -18 -17 -16 -13 -11 -10 -13 -19 -22 -23 -21 -20 -20 -21 -22 -25 -27 -27 -27 -26 -28 -30 -31 -31 -29 -24 -22 -20 -21 -22 -23 -24 -23 -21 -20 -20 -21 -23 -26 -28 -29 -28 -27 -26 -25 -26 -28 -30 -32 -34 -34 -34 -33 -33 -31 -31 -30 -30 -29 -29 -28 -27 -27 -27 -28 -29 -29 -27 -21 -9 -2 1 2 2 -1 -4 -8 -12 -16 -21 -25 -28 -29 -28 -27 -24 -20 -15 -12 -13 -13 -14 -17 -22 -26 -29 -31 -32 -31 -31 -32 -32 -33 -35 -36 -37 -37 -36 -33 -31 -30 -29 -29 -29 -29 -28 -27 -24 -20 -15 -12 -14 -20 -26 -29 -30 -30 -30 -29 -26 -21 -13 -10 -12 -16 -20 -23 -26 -28 -30 -30 -30 -30 -30 -31 -31 -32 -32 -33 -33 -31 -25 -23 -25 -28 -31 -33 -33 -31 -30 -31 -33 -35 -36 -36 -37 -37 -36 -36 -37 -40 -41 -40 -39 -39 -37 -36 -34 -33 -32 -32 -31 -31 -32 -33 -34 -35 -35 -34 -33 -31 -30 -29 -27 -27 -31 -32 -33 -33 -33 -36 -38 -41 -46 -52 -56 -58 -58 -57 -53 -49 -49 -50 -51 -50 -52 -55 -57 -58 -56 -51 -46 -42 -41 -42 -42 -44 -46 -49 -49 -47 -44 -40 -36 -32 -29 -28 -30 -31 -34 -37 -40 -44 -45 -44 -43 -42 -41 -41 -40 -40 -39 -39 -38 -37 -36 -33 -30 -28 -26 -24 -22 -19 -15 -12 -9 -6 -4 -3 -4 -7 -11 -16 -23 -30 -36 -42 -42 -40 -38 -37 -35 -32 -29 -29 -35 -45 -54 -61 -63 -61 -57 -55 -54 -55 -55 -53 -48 -44 -42 -42 -47 -54 -61 -65 -65 -64 -62 -60 -58 -56 -55 -52 -47 -41 -36 -33 -32 -33 -36 -42 -47 -50 -50 -48 -50 -53 -55 -56 -56 -55 -54 -51 -49 -22 -21 -21 -22 -23 -23 -24 -24 -23 -22 -22 -25 -31 -36 -40 -35 -28 -25 -23 -23 -21 -20 -19 -19 -19 -20 -21 -22 -23 -23 -22 -24 -26 -30 -34 -37 -38 -37 -36 -35 -36 -38 -38 -37 -36 -37 -37 -37 -35 -33 -32 -31 -30 -27 -24 -22 -20 -19 -19 -19 -18 -18 -19 -20 -22 -23 -25 -28 -30 -30 -30 -28 -26 -23 -24 -24 -24 -22 -19 -18 -16 -14 -12 -11 -12 -15 -19 -21 -20 -19 -19 -20 -21 -24 -27 -29 -29 -27 -26 -29 -31 -33 -32 -27 -23 -20 -19 -19 -20 -21 -21 -20 -19 -19 -20 -23 -26 -28 -29 -28 -26 -24 -23 -24 -26 -28 -30 -32 -33 -34 -34 -33 -32 -32 -31 -31 -31 -30 -30 -29 -27 -27 -28 -29 -30 -28 -23 -11 -3 1 2 2 0 -3 -7 -11 -15 -20 -25 -28 -29 -29 -27 -24 -20 -16 -14 -14 -14 -15 -16 -20 -24 -26 -29 -30 -31 -32 -33 -33 -34 -36 -37 -38 -38 -36 -34 -32 -30 -30 -29 -28 -27 -26 -25 -24 -22 -18 -15 -13 -18 -22 -26 -27 -29 -29 -29 -28 -25 -18 -12 -12 -16 -20 -23 -25 -28 -31 -32 -31 -31 -32 -32 -32 -33 -33 -34 -34 -33 -29 -24 -22 -23 -25 -29 -32 -32 -31 -31 -33 -35 -36 -36 -36 -35 -34 -33 -35 -38 -40 -40 -40 -39 -38 -36 -34 -33 -32 -31 -31 -31 -31 -32 -33 -35 -36 -35 -34 -33 -32 -30 -29 -27 -29 -31 -33 -33 -34 -36 -38 -41 -45 -51 -55 -58 -59 -59 -56 -51 -49 -49 -52 -52 -53 -55 -57 -58 -57 -53 -47 -41 -39 -41 -42 -43 -46 -49 -51 -50 -47 -42 -37 -33 -30 -29 -30 -32 -34 -37 -40 -44 -46 -46 -45 -43 -42 -41 -40 -39 -38 -38 -39 -39 -37 -34 -31 -28 -26 -23 -21 -19 -15 -11 -8 -6 -4 -4 -5 -8 -12 -17 -22 -28 -34 -39 -40 -39 -38 -38 -38 -34 -30 -29 -31 -41 -51 -59 -62 -62 -58 -56 -55 -56 -57 -55 -51 -47 -44 -44 -48 -55 -61 -66 -67 -67 -65 -63 -59 -58 -57 -54 -50 -43 -38 -34 -33 -33 -35 -41 -46 -49 -50 -49 -51 -53 -55 -56 -57 -55 -53 -50 -48 -21 -18 -17 -17 -18 -19 -20 -21 -21 -21 -23 -27 -32 -35 -33 -26 -21 -19 -20 -20 -20 -19 -18 -18 -17 -19 -20 -22 -25 -26 -25 -23 -22 -23 -26 -29 -31 -33 -35 -38 -42 -42 -42 -41 -42 -42 -39 -36 -33 -32 -31 -30 -28 -26 -22 -17 -13 -12 -12 -14 -15 -17 -18 -20 -22 -24 -26 -27 -29 -30 -31 -29 -27 -25 -26 -27 -25 -22 -20 -19 -18 -16 -14 -13 -13 -15 -17 -20 -20 -19 -18 -18 -20 -22 -25 -29 -30 -29 -26 -26 -29 -31 -32 -29 -24 -20 -18 -18 -18 -18 -19 -19 -19 -20 -21 -22 -24 -26 -28 -29 -27 -24 -22 -22 -23 -25 -28 -31 -33 -34 -35 -35 -34 -33 -33 -32 -32 -31 -31 -29 -28 -26 -27 -28 -29 -29 -26 -16 -5 1 3 2 0 -2 -6 -10 -14 -20 -24 -27 -29 -28 -27 -24 -20 -17 -16 -16 -15 -15 -17 -19 -22 -24 -26 -28 -30 -31 -33 -33 -34 -36 -37 -38 -38 -38 -36 -34 -32 -30 -29 -27 -25 -24 -23 -25 -24 -22 -17 -14 -16 -19 -22 -25 -27 -29 -30 -30 -28 -25 -18 -15 -15 -20 -23 -27 -31 -33 -33 -32 -32 -32 -33 -33 -33 -34 -34 -34 -33 -30 -26 -23 -22 -23 -25 -30 -32 -32 -31 -32 -34 -35 -35 -35 -35 -33 -32 -33 -36 -38 -39 -39 -39 -37 -35 -34 -33 -33 -32 -32 -32 -31 -31 -33 -35 -36 -36 -34 -34 -33 -32 -32 -30 -28 -30 -32 -33 -33 -35 -37 -40 -45 -50 -54 -57 -59 -60 -57 -53 -50 -50 -54 -54 -54 -54 -56 -58 -58 -54 -48 -41 -39 -41 -42 -42 -44 -49 -51 -51 -48 -43 -37 -33 -31 -31 -32 -33 -35 -37 -39 -44 -47 -48 -46 -43 -41 -40 -39 -38 -37 -38 -40 -40 -39 -36 -32 -29 -26 -23 -20 -18 -14 -11 -8 -6 -5 -5 -6 -9 -12 -17 -21 -26 -32 -37 -38 -38 -38 -39 -39 -36 -32 -29 -30 -37 -47 -55 -60 -61 -58 -57 -56 -56 -58 -57 -53 -49 -46 -46 -49 -55 -61 -67 -69 -68 -66 -63 -60 -58 -58 -56 -51 -45 -40 -35 -33 -32 -34 -39 -45 -49 -50 -50 -51 -53 -55 -56 -57 -55 -52 -49 -46 -18 -13 -11 -10 -12 -15 -17 -19 -21 -24 -26 -30 -31 -28 -23 -16 -15 -16 -18 -19 -19 -19 -18 -18 -18 -19 -19 -21 -23 -26 -27 -26 -24 -23 -24 -26 -27 -28 -29 -31 -35 -38 -39 -38 -38 -40 -44 -45 -44 -41 -36 -31 -26 -22 -17 -14 -12 -11 -11 -12 -14 -16 -18 -20 -22 -24 -25 -27 -28 -29 -31 -31 -30 -29 -29 -28 -26 -23 -20 -19 -19 -19 -17 -16 -16 -16 -18 -20 -21 -20 -19 -18 -19 -20 -23 -27 -30 -31 -28 -26 -27 -29 -31 -29 -25 -21 -18 -17 -16 -16 -16 -17 -19 -20 -21 -23 -24 -25 -27 -28 -27 -25 -22 -21 -21 -23 -25 -28 -32 -34 -36 -36 -36 -35 -35 -34 -33 -32 -31 -30 -28 -26 -26 -27 -28 -29 -28 -21 -10 -1 4 3 1 -2 -5 -10 -15 -19 -24 -27 -28 -28 -28 -25 -21 -19 -19 -18 -17 -16 -17 -19 -20 -22 -24 -26 -28 -30 -32 -34 -36 -37 -38 -38 -38 -38 -38 -36 -34 -32 -30 -28 -26 -24 -24 -25 -27 -26 -22 -18 -17 -18 -20 -22 -25 -29 -30 -30 -30 -29 -24 -19 -16 -18 -24 -29 -33 -35 -34 -32 -32 -32 -33 -34 -34 -35 -35 -35 -35 -32 -28 -24 -23 -24 -27 -29 -31 -32 -32 -32 -33 -34 -35 -35 -36 -35 -33 -32 -34 -36 -37 -38 -38 -37 -36 -35 -34 -33 -33 -33 -33 -32 -32 -32 -33 -35 -36 -34 -34 -34 -34 -34 -32 -29 -29 -30 -32 -32 -33 -36 -39 -44 -50 -53 -56 -58 -60 -58 -54 -52 -52 -55 -54 -53 -53 -55 -59 -60 -56 -50 -42 -40 -41 -42 -41 -42 -47 -51 -51 -49 -44 -39 -35 -33 -33 -34 -35 -36 -36 -38 -43 -48 -49 -47 -42 -40 -39 -37 -37 -36 -37 -40 -41 -41 -38 -34 -30 -26 -23 -19 -17 -14 -11 -8 -7 -6 -6 -8 -10 -12 -16 -20 -25 -30 -35 -37 -38 -38 -39 -39 -37 -33 -30 -29 -35 -43 -51 -57 -59 -58 -57 -57 -57 -58 -58 -55 -52 -48 -47 -49 -54 -60 -67 -69 -69 -67 -64 -60 -58 -58 -56 -53 -47 -41 -36 -33 -32 -33 -38 -43 -48 -50 -50 -51 -53 -55 -56 -57 -55 -51 -47 -44 -14 -8 -6 -5 -8 -13 -19 -23 -25 -27 -28 -27 -24 -20 -14 -11 -12 -14 -16 -17 -17 -17 -16 -16 -17 -19 -20 -20 -21 -22 -24 -26 -28 -28 -27 -27 -28 -27 -26 -24 -22 -23 -26 -29 -33 -37 -41 -45 -47 -45 -40 -35 -29 -25 -20 -16 -13 -12 -12 -13 -14 -16 -19 -21 -22 -23 -24 -26 -27 -28 -29 -30 -30 -30 -31 -30 -27 -24 -21 -21 -21 -21 -20 -19 -18 -18 -19 -20 -21 -21 -19 -18 -18 -18 -20 -24 -28 -32 -30 -27 -26 -27 -29 -29 -25 -22 -18 -16 -15 -13 -13 -15 -17 -20 -22 -24 -25 -25 -25 -26 -26 -26 -24 -22 -21 -22 -23 -26 -30 -34 -36 -37 -38 -37 -36 -35 -34 -33 -32 -30 -28 -26 -25 -26 -27 -27 -27 -26 -18 -7 3 6 4 1 -3 -8 -14 -19 -23 -27 -28 -29 -30 -30 -29 -27 -25 -22 -19 -18 -18 -19 -20 -21 -22 -24 -26 -28 -31 -35 -38 -40 -39 -38 -38 -38 -39 -38 -36 -34 -31 -29 -28 -26 -25 -27 -29 -29 -27 -24 -20 -19 -18 -20 -24 -27 -29 -30 -30 -31 -29 -24 -18 -16 -22 -29 -33 -35 -35 -33 -32 -32 -33 -34 -35 -36 -36 -36 -36 -34 -29 -25 -23 -23 -25 -27 -30 -32 -32 -32 -33 -34 -35 -36 -36 -35 -33 -31 -33 -35 -36 -36 -37 -37 -37 -36 -35 -34 -34 -34 -34 -33 -32 -32 -33 -34 -36 -35 -35 -35 -36 -35 -35 -32 -30 -29 -30 -30 -32 -35 -39 -43 -48 -52 -55 -58 -59 -58 -56 -54 -53 -54 -53 -52 -52 -56 -60 -61 -59 -53 -46 -42 -42 -42 -41 -41 -45 -50 -51 -50 -46 -42 -38 -35 -33 -35 -36 -35 -35 -36 -41 -47 -49 -46 -41 -39 -38 -36 -36 -35 -37 -39 -42 -42 -41 -37 -32 -27 -23 -19 -16 -14 -11 -8 -8 -7 -7 -8 -10 -12 -15 -19 -24 -29 -34 -36 -37 -37 -38 -39 -37 -34 -31 -30 -33 -40 -48 -54 -57 -58 -58 -57 -57 -58 -58 -56 -53 -50 -48 -49 -53 -60 -66 -69 -69 -67 -64 -61 -59 -58 -57 -54 -48 -42 -37 -33 -31 -32 -37 -42 -47 -49 -50 -51 -52 -54 -56 -57 -55 -51 -45 -42 -13 -7 -5 -7 -11 -18 -24 -26 -26 -24 -22 -20 -17 -14 -11 -9 -10 -11 -12 -13 -14 -13 -13 -13 -14 -15 -18 -20 -21 -20 -21 -23 -24 -26 -25 -25 -25 -26 -26 -24 -19 -16 -17 -21 -26 -30 -35 -40 -44 -46 -43 -39 -34 -29 -24 -19 -16 -13 -13 -13 -15 -17 -19 -21 -21 -22 -24 -25 -25 -26 -27 -28 -28 -29 -31 -31 -28 -25 -22 -22 -23 -23 -22 -21 -20 -20 -20 -20 -22 -22 -21 -19 -18 -18 -19 -22 -25 -30 -31 -29 -27 -26 -27 -28 -26 -22 -18 -15 -13 -12 -11 -13 -16 -19 -21 -24 -27 -27 -26 -25 -25 -27 -26 -25 -23 -22 -23 -25 -29 -33 -36 -37 -38 -38 -37 -36 -35 -34 -32 -31 -28 -26 -25 -26 -26 -27 -27 -27 -24 -16 -4 5 7 6 2 -3 -10 -18 -23 -27 -28 -29 -29 -30 -29 -29 -27 -24 -21 -19 -19 -19 -20 -20 -21 -22 -23 -25 -29 -34 -38 -40 -39 -38 -37 -38 -40 -40 -38 -35 -32 -30 -28 -27 -27 -29 -31 -32 -30 -28 -24 -20 -17 -17 -21 -26 -29 -31 -31 -32 -32 -30 -26 -22 -23 -27 -32 -34 -34 -33 -33 -32 -33 -34 -36 -36 -36 -36 -36 -35 -31 -27 -23 -23 -25 -28 -30 -33 -33 -32 -33 -34 -35 -36 -36 -35 -33 -29 -31 -33 -35 -36 -36 -37 -38 -37 -36 -34 -34 -35 -35 -34 -34 -33 -33 -34 -35 -36 -36 -36 -36 -35 -35 -34 -32 -30 -28 -28 -30 -34 -39 -42 -46 -50 -54 -57 -59 -58 -57 -56 -54 -54 -53 -51 -51 -55 -59 -61 -60 -56 -50 -44 -42 -41 -41 -41 -45 -49 -51 -50 -47 -44 -40 -36 -34 -34 -34 -34 -34 -34 -40 -46 -48 -46 -40 -38 -36 -35 -34 -34 -36 -39 -41 -43 -43 -39 -34 -29 -24 -20 -18 -14 -11 -9 -8 -8 -8 -9 -10 -12 -14 -18 -23 -28 -32 -34 -35 -35 -36 -37 -37 -34 -31 -30 -31 -37 -44 -52 -56 -58 -58 -58 -57 -58 -59 -58 -55 -52 -50 -50 -53 -59 -66 -69 -70 -68 -65 -62 -59 -58 -58 -56 -50 -44 -38 -34 -31 -32 -36 -41 -45 -48 -49 -50 -51 -53 -56 -58 -56 -51 -44 -40 -17 -15 -15 -17 -19 -21 -20 -18 -18 -18 -18 -16 -13 -10 -8 -7 -8 -9 -10 -11 -11 -10 -10 -10 -10 -12 -15 -18 -20 -19 -18 -18 -19 -21 -21 -21 -21 -23 -25 -26 -22 -17 -15 -17 -21 -25 -29 -33 -37 -42 -42 -40 -37 -33 -28 -23 -18 -15 -14 -14 -15 -16 -18 -19 -20 -22 -24 -24 -24 -25 -26 -25 -26 -27 -30 -31 -29 -26 -23 -23 -24 -24 -23 -22 -21 -21 -21 -21 -23 -24 -23 -21 -20 -19 -20 -21 -23 -26 -30 -31 -29 -26 -25 -26 -25 -22 -18 -15 -12 -11 -11 -12 -15 -18 -20 -23 -27 -30 -29 -27 -26 -27 -28 -27 -26 -25 -25 -27 -30 -33 -35 -36 -37 -38 -38 -37 -36 -35 -34 -32 -29 -27 -26 -26 -26 -27 -28 -28 -27 -23 -14 -2 5 8 6 1 -8 -16 -22 -26 -27 -28 -28 -27 -27 -27 -26 -24 -22 -20 -19 -19 -20 -20 -19 -19 -20 -22 -27 -32 -36 -38 -39 -38 -38 -38 -39 -40 -39 -36 -32 -30 -28 -28 -28 -30 -32 -33 -32 -31 -27 -22 -18 -16 -19 -24 -28 -31 -33 -34 -34 -34 -31 -25 -22 -25 -29 -31 -30 -32 -33 -33 -33 -34 -36 -36 -37 -37 -37 -36 -33 -29 -25 -24 -27 -30 -33 -34 -33 -33 -33 -34 -34 -36 -37 -36 -34 -29 -29 -31 -34 -36 -36 -37 -38 -38 -36 -35 -35 -35 -35 -35 -35 -35 -35 -34 -34 -36 -36 -36 -36 -35 -33 -34 -34 -32 -29 -26 -27 -32 -38 -41 -43 -47 -52 -56 -58 -59 -58 -57 -55 -53 -53 -53 -54 -56 -58 -59 -59 -57 -53 -47 -44 -43 -42 -43 -46 -48 -50 -50 -47 -44 -40 -36 -32 -31 -32 -32 -32 -33 -38 -44 -47 -45 -40 -37 -35 -34 -33 -34 -35 -37 -40 -42 -44 -42 -38 -33 -28 -23 -20 -16 -12 -10 -9 -8 -8 -9 -10 -11 -14 -17 -21 -27 -31 -33 -33 -32 -33 -35 -36 -34 -31 -30 -30 -34 -40 -48 -54 -57 -58 -58 -58 -58 -59 -59 -57 -54 -51 -51 -53 -59 -66 -69 -70 -69 -67 -63 -60 -59 -59 -56 -50 -45 -40 -35 -33 -33 -36 -40 -44 -46 -47 -48 -49 -52 -56 -58 -57 -51 -44 -39 -25 -30 -31 -28 -22 -15 -11 -10 -11 -13 -15 -14 -12 -10 -8 -7 -7 -9 -10 -10 -10 -9 -9 -8 -9 -9 -12 -16 -18 -18 -16 -15 -15 -17 -18 -18 -18 -20 -22 -25 -23 -20 -18 -18 -21 -22 -24 -26 -30 -34 -37 -38 -37 -35 -32 -27 -22 -17 -14 -14 -15 -15 -16 -17 -20 -23 -24 -25 -24 -24 -24 -23 -23 -25 -28 -29 -28 -25 -23 -22 -23 -24 -23 -22 -22 -22 -22 -23 -24 -24 -24 -24 -23 -21 -20 -20 -21 -23 -27 -31 -31 -29 -25 -23 -22 -21 -18 -15 -13 -12 -12 -13 -15 -17 -18 -21 -25 -30 -31 -31 -29 -28 -28 -28 -28 -28 -28 -30 -32 -33 -34 -35 -36 -37 -38 -37 -37 -36 -35 -33 -31 -29 -27 -27 -27 -28 -28 -29 -29 -27 -23 -14 -3 4 7 5 -4 -14 -21 -26 -27 -27 -26 -26 -26 -26 -25 -23 -21 -19 -18 -18 -19 -19 -19 -19 -22 -25 -28 -30 -33 -35 -37 -37 -38 -38 -38 -38 -38 -36 -32 -29 -27 -27 -27 -29 -31 -33 -32 -32 -29 -25 -20 -17 -19 -23 -28 -32 -35 -36 -36 -36 -34 -29 -23 -23 -26 -30 -31 -32 -32 -33 -33 -35 -36 -37 -37 -38 -38 -37 -35 -32 -28 -26 -29 -32 -35 -35 -33 -33 -33 -33 -34 -36 -37 -37 -35 -31 -30 -31 -33 -35 -36 -37 -37 -37 -37 -36 -36 -36 -36 -36 -37 -37 -37 -35 -34 -35 -36 -36 -36 -36 -34 -34 -34 -34 -31 -27 -26 -30 -37 -39 -41 -44 -50 -55 -58 -60 -60 -59 -57 -54 -53 -53 -54 -56 -57 -57 -57 -57 -54 -50 -47 -45 -44 -45 -46 -48 -49 -49 -47 -45 -41 -36 -31 -30 -30 -31 -31 -31 -35 -41 -46 -45 -40 -37 -34 -33 -32 -33 -34 -36 -38 -41 -43 -44 -42 -38 -33 -27 -22 -18 -14 -11 -9 -9 -9 -9 -9 -10 -12 -16 -20 -25 -29 -31 -31 -30 -31 -34 -35 -34 -32 -30 -29 -31 -36 -44 -51 -56 -58 -58 -58 -59 -60 -60 -58 -55 -52 -52 -54 -60 -65 -69 -71 -71 -69 -65 -62 -60 -59 -56 -50 -45 -41 -37 -35 -35 -37 -41 -43 -43 -45 -46 -48 -51 -55 -58 -57 -52 -44 -39 -33 -38 -36 -32 -25 -15 -7 -5 -7 -9 -12 -12 -11 -10 -8 -8 -8 -10 -11 -11 -10 -10 -10 -9 -9 -9 -11 -14 -16 -16 -15 -13 -13 -15 -16 -17 -16 -17 -19 -21 -22 -21 -20 -20 -21 -22 -23 -24 -26 -29 -33 -35 -35 -34 -31 -29 -25 -20 -16 -14 -14 -14 -14 -16 -19 -23 -24 -24 -23 -22 -21 -21 -22 -23 -26 -27 -26 -24 -22 -21 -22 -23 -23 -23 -23 -23 -24 -24 -24 -24 -26 -26 -26 -23 -21 -20 -20 -20 -22 -27 -30 -30 -26 -22 -20 -19 -19 -16 -14 -14 -13 -13 -14 -16 -18 -20 -23 -27 -31 -32 -32 -29 -28 -29 -30 -31 -32 -33 -33 -33 -33 -34 -35 -36 -36 -37 -37 -37 -37 -36 -34 -31 -29 -28 -27 -28 -29 -29 -29 -28 -27 -24 -16 -7 1 4 -1 -10 -18 -24 -26 -25 -24 -23 -23 -24 -23 -21 -19 -18 -18 -19 -20 -21 -21 -23 -25 -27 -28 -28 -29 -31 -33 -35 -35 -35 -34 -34 -35 -34 -31 -28 -27 -26 -26 -28 -30 -31 -32 -32 -31 -27 -23 -19 -20 -23 -28 -32 -35 -36 -37 -36 -35 -31 -27 -25 -26 -29 -32 -33 -32 -32 -32 -34 -36 -38 -38 -38 -39 -38 -36 -34 -31 -29 -30 -32 -34 -32 -32 -32 -32 -33 -34 -35 -37 -37 -37 -35 -33 -32 -33 -35 -36 -37 -37 -36 -37 -37 -37 -37 -37 -37 -38 -38 -38 -37 -35 -35 -35 -36 -36 -36 -35 -35 -36 -36 -33 -30 -29 -30 -36 -39 -41 -43 -46 -52 -57 -60 -61 -60 -58 -55 -54 -53 -54 -55 -57 -57 -57 -57 -54 -51 -49 -47 -46 -46 -47 -47 -48 -49 -48 -46 -43 -37 -31 -28 -28 -29 -30 -31 -33 -39 -45 -46 -42 -37 -34 -32 -31 -32 -33 -34 -35 -38 -42 -44 -45 -43 -38 -32 -26 -20 -16 -12 -10 -9 -9 -9 -9 -9 -11 -14 -19 -24 -28 -30 -30 -28 -29 -32 -34 -34 -32 -30 -28 -29 -32 -40 -48 -54 -58 -59 -59 -60 -60 -60 -59 -56 -54 -53 -55 -60 -65 -69 -71 -72 -71 -67 -63 -60 -60 -57 -51 -46 -42 -39 -37 -37 -39 -41 -41 -42 -43 -45 -46 -50 -55 -58 -58 -53 -45 -39 -33 -33 -31 -30 -25 -17 -7 -4 -5 -8 -10 -10 -10 -10 -9 -9 -9 -10 -11 -11 -10 -11 -11 -11 -10 -10 -12 -13 -14 -15 -14 -13 -13 -14 -15 -16 -15 -13 -13 -15 -17 -18 -19 -19 -20 -21 -23 -24 -24 -24 -25 -25 -26 -26 -27 -27 -25 -21 -18 -16 -15 -15 -16 -17 -19 -21 -22 -22 -21 -21 -21 -21 -22 -24 -24 -24 -24 -23 -22 -22 -22 -23 -23 -23 -24 -25 -25 -25 -24 -24 -26 -27 -28 -25 -22 -20 -19 -19 -20 -23 -28 -31 -29 -23 -19 -18 -19 -18 -17 -15 -14 -14 -14 -16 -19 -23 -26 -28 -30 -33 -34 -33 -30 -29 -30 -32 -33 -33 -33 -33 -34 -34 -34 -34 -35 -36 -36 -37 -37 -37 -36 -34 -31 -29 -28 -28 -28 -28 -28 -29 -29 -28 -26 -20 -13 -4 -3 -6 -13 -18 -20 -19 -18 -19 -20 -23 -22 -20 -18 -17 -18 -19 -20 -21 -22 -24 -26 -27 -28 -28 -28 -28 -29 -31 -32 -31 -31 -32 -34 -36 -34 -31 -27 -26 -25 -26 -28 -30 -31 -31 -31 -29 -27 -24 -23 -24 -27 -31 -34 -36 -36 -36 -35 -32 -30 -28 -27 -28 -30 -32 -33 -32 -31 -33 -36 -38 -39 -39 -39 -38 -36 -35 -34 -31 -31 -31 -30 -29 -30 -30 -31 -32 -33 -34 -36 -37 -38 -37 -35 -34 -34 -36 -37 -37 -37 -37 -37 -37 -37 -37 -37 -37 -38 -39 -39 -38 -36 -34 -34 -35 -35 -35 -36 -37 -37 -37 -35 -33 -32 -32 -35 -37 -39 -42 -47 -52 -57 -60 -61 -61 -59 -57 -55 -54 -54 -55 -57 -58 -58 -57 -54 -51 -50 -48 -47 -47 -47 -47 -47 -48 -48 -48 -46 -41 -33 -29 -28 -29 -29 -30 -32 -37 -43 -47 -44 -39 -34 -32 -32 -32 -32 -32 -33 -36 -39 -42 -44 -45 -42 -37 -30 -23 -18 -15 -12 -11 -10 -10 -8 -8 -10 -13 -17 -22 -27 -30 -29 -27 -28 -30 -33 -34 -32 -30 -28 -27 -30 -36 -44 -51 -57 -59 -60 -60 -61 -61 -60 -57 -55 -54 -56 -60 -65 -69 -71 -73 -72 -69 -65 -61 -60 -57 -52 -46 -42 -40 -39 -39 -41 -42 -41 -41 -41 -43 -45 -49 -54 -58 -59 -54 -46 -40 -26 -25 -25 -26 -23 -17 -8 -4 -4 -7 -9 -9 -9 -9 -9 -9 -9 -10 -11 -11 -10 -11 -12 -12 -12 -12 -12 -13 -13 -14 -15 -15 -15 -15 -15 -15 -14 -12 -11 -12 -14 -15 -17 -18 -20 -21 -23 -24 -24 -23 -21 -20 -20 -21 -24 -25 -25 -23 -21 -18 -16 -15 -15 -15 -16 -17 -18 -19 -19 -19 -19 -20 -22 -24 -24 -23 -23 -22 -22 -22 -22 -22 -22 -22 -23 -24 -25 -25 -24 -24 -25 -27 -28 -25 -22 -21 -20 -19 -19 -21 -25 -29 -31 -26 -21 -17 -17 -18 -17 -15 -14 -14 -15 -17 -21 -25 -29 -32 -34 -36 -37 -35 -32 -30 -31 -32 -32 -32 -32 -32 -34 -35 -34 -34 -34 -34 -34 -35 -36 -37 -38 -37 -35 -31 -29 -28 -28 -28 -28 -29 -30 -30 -29 -28 -25 -18 -11 -8 -9 -12 -14 -14 -14 -15 -18 -20 -20 -20 -19 -17 -16 -17 -18 -20 -21 -23 -25 -27 -28 -28 -27 -27 -28 -29 -28 -27 -27 -29 -33 -35 -34 -31 -28 -26 -26 -26 -27 -28 -30 -31 -32 -31 -30 -28 -26 -26 -27 -29 -32 -34 -35 -35 -34 -33 -31 -30 -28 -27 -28 -32 -34 -33 -32 -33 -36 -38 -39 -40 -39 -37 -36 -36 -36 -33 -31 -30 -28 -27 -28 -29 -31 -32 -32 -33 -35 -36 -38 -37 -36 -35 -35 -37 -38 -38 -37 -37 -37 -37 -37 -37 -38 -38 -39 -39 -39 -39 -37 -35 -34 -34 -35 -35 -36 -37 -37 -37 -35 -33 -33 -34 -34 -36 -38 -42 -47 -51 -55 -58 -60 -61 -60 -58 -57 -55 -55 -56 -58 -59 -60 -58 -54 -51 -50 -49 -48 -48 -48 -47 -46 -46 -48 -50 -50 -44 -35 -30 -28 -28 -29 -30 -31 -35 -41 -47 -45 -41 -36 -33 -33 -32 -32 -31 -31 -33 -36 -39 -42 -45 -44 -41 -35 -28 -21 -17 -15 -13 -12 -11 -9 -8 -10 -12 -16 -21 -26 -29 -28 -26 -26 -28 -31 -33 -32 -30 -27 -26 -28 -32 -40 -48 -55 -58 -60 -61 -61 -61 -60 -58 -56 -56 -57 -60 -65 -69 -72 -74 -74 -71 -67 -62 -60 -58 -53 -47 -42 -41 -40 -41 -42 -43 -41 -41 -40 -41 -43 -48 -53 -57 -59 -54 -47 -40 -21 -20 -23 -24 -22 -16 -7 -3 -4 -6 -8 -8 -8 -8 -9 -9 -9 -11 -12 -12 -11 -11 -12 -13 -13 -13 -13 -13 -13 -14 -15 -16 -16 -16 -15 -15 -15 -14 -13 -12 -12 -14 -16 -17 -19 -20 -21 -23 -24 -24 -22 -19 -17 -18 -20 -22 -22 -21 -20 -19 -18 -16 -15 -15 -14 -14 -15 -16 -16 -17 -18 -19 -21 -23 -23 -23 -23 -22 -21 -21 -21 -20 -20 -21 -22 -23 -24 -24 -24 -24 -25 -26 -27 -26 -24 -22 -21 -20 -20 -21 -23 -27 -31 -30 -25 -20 -17 -17 -16 -14 -13 -13 -14 -17 -20 -24 -29 -34 -37 -39 -37 -33 -30 -30 -31 -33 -33 -32 -31 -31 -33 -34 -34 -33 -33 -32 -32 -32 -33 -35 -38 -39 -38 -35 -31 -28 -28 -28 -29 -30 -32 -32 -32 -31 -29 -27 -23 -18 -14 -13 -15 -17 -18 -17 -17 -16 -17 -18 -18 -16 -13 -14 -17 -19 -20 -22 -23 -25 -27 -28 -28 -28 -28 -26 -21 -17 -17 -21 -27 -32 -33 -32 -29 -27 -26 -27 -27 -28 -29 -29 -30 -30 -30 -29 -27 -27 -27 -28 -31 -32 -33 -34 -34 -34 -33 -32 -30 -28 -29 -32 -34 -34 -32 -32 -35 -37 -39 -40 -39 -37 -36 -35 -36 -34 -32 -30 -29 -28 -28 -31 -33 -33 -31 -32 -33 -36 -37 -38 -36 -35 -35 -36 -37 -37 -37 -37 -37 -37 -37 -38 -38 -39 -39 -40 -40 -40 -38 -36 -35 -34 -34 -35 -36 -37 -37 -36 -35 -33 -32 -33 -34 -35 -38 -41 -45 -49 -53 -57 -60 -62 -62 -60 -59 -57 -57 -57 -58 -60 -61 -58 -54 -50 -49 -49 -49 -49 -48 -47 -45 -45 -48 -51 -52 -46 -38 -32 -29 -29 -29 -30 -30 -33 -39 -46 -46 -43 -38 -35 -34 -33 -31 -31 -31 -32 -33 -36 -39 -43 -45 -44 -40 -33 -25 -20 -17 -15 -14 -12 -10 -9 -10 -12 -15 -21 -26 -29 -28 -25 -25 -27 -30 -32 -31 -30 -27 -25 -26 -29 -36 -44 -52 -57 -60 -61 -62 -62 -61 -59 -58 -57 -57 -60 -64 -68 -71 -75 -76 -73 -68 -62 -61 -58 -53 -47 -43 -41 -40 -41 -43 -43 -42 -40 -39 -38 -41 -46 -52 -57 -59 -54 -47 -41 -21 -23 -27 -27 -23 -16 -8 -5 -5 -6 -7 -8 -9 -9 -10 -10 -10 -11 -11 -12 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -15 -16 -17 -17 -16 -16 -16 -16 -16 -16 -15 -15 -16 -17 -17 -18 -19 -21 -23 -24 -23 -20 -17 -16 -17 -19 -19 -18 -18 -17 -17 -17 -16 -15 -14 -13 -13 -14 -15 -16 -17 -19 -21 -23 -23 -23 -23 -22 -21 -20 -19 -18 -18 -19 -20 -21 -22 -22 -23 -23 -24 -26 -27 -27 -25 -24 -22 -21 -21 -22 -23 -25 -28 -31 -29 -25 -21 -18 -17 -15 -13 -12 -13 -16 -20 -23 -28 -35 -40 -40 -36 -28 -25 -27 -30 -33 -33 -32 -32 -32 -32 -33 -34 -33 -33 -32 -31 -30 -31 -33 -35 -38 -38 -37 -34 -30 -29 -28 -29 -30 -32 -34 -34 -33 -31 -29 -28 -26 -24 -21 -21 -24 -24 -21 -15 -12 -14 -16 -17 -14 -11 -11 -14 -18 -20 -21 -22 -24 -26 -28 -29 -29 -26 -20 -11 -7 -9 -15 -22 -28 -31 -31 -29 -28 -27 -26 -26 -27 -28 -29 -30 -31 -30 -29 -27 -26 -27 -29 -30 -31 -31 -31 -33 -33 -33 -33 -32 -31 -30 -31 -33 -33 -31 -31 -34 -37 -39 -40 -39 -37 -35 -34 -35 -34 -33 -32 -31 -29 -29 -32 -37 -37 -34 -32 -32 -35 -37 -37 -36 -34 -32 -34 -36 -36 -36 -36 -37 -37 -38 -38 -38 -39 -40 -41 -41 -41 -40 -38 -36 -35 -35 -36 -37 -37 -38 -37 -36 -34 -32 -31 -33 -35 -37 -40 -44 -48 -52 -56 -60 -63 -63 -63 -61 -59 -58 -58 -59 -60 -61 -58 -53 -50 -48 -49 -49 -48 -48 -47 -44 -43 -46 -50 -51 -46 -40 -35 -32 -30 -30 -30 -29 -31 -36 -43 -45 -44 -41 -38 -36 -33 -31 -31 -30 -31 -32 -33 -36 -40 -44 -46 -44 -38 -29 -23 -20 -17 -15 -13 -11 -11 -11 -12 -15 -20 -26 -29 -28 -25 -24 -26 -28 -30 -31 -30 -27 -24 -24 -27 -32 -40 -49 -55 -59 -61 -62 -62 -61 -60 -58 -57 -58 -60 -64 -68 -71 -75 -77 -75 -69 -63 -61 -58 -54 -48 -44 -41 -40 -41 -44 -45 -43 -40 -35 -33 -37 -44 -51 -56 -58 -53 -47 -41 -26 -30 -33 -31 -24 -16 -8 -7 -7 -8 -9 -10 -11 -12 -12 -12 -11 -11 -12 -13 -14 -14 -15 -15 -15 -16 -16 -15 -15 -15 -16 -16 -17 -17 -17 -16 -17 -18 -19 -20 -19 -18 -17 -17 -17 -17 -18 -20 -21 -23 -24 -21 -18 -16 -16 -17 -18 -17 -16 -15 -15 -16 -16 -16 -15 -14 -13 -13 -14 -16 -17 -19 -20 -22 -24 -24 -24 -23 -21 -19 -18 -17 -16 -17 -18 -20 -21 -21 -22 -23 -24 -25 -26 -27 -27 -26 -24 -22 -22 -23 -23 -24 -26 -30 -31 -29 -26 -23 -20 -18 -16 -13 -12 -15 -18 -22 -27 -34 -39 -39 -34 -27 -24 -25 -29 -32 -33 -33 -32 -32 -32 -33 -34 -34 -33 -32 -31 -30 -30 -30 -33 -36 -38 -38 -37 -33 -30 -29 -30 -31 -32 -34 -34 -33 -32 -30 -29 -28 -27 -27 -27 -29 -29 -27 -21 -15 -14 -13 -12 -9 -7 -8 -12 -16 -18 -19 -19 -21 -24 -27 -28 -27 -20 -10 -2 -3 -7 -13 -20 -26 -30 -31 -30 -29 -27 -26 -25 -25 -27 -29 -31 -32 -32 -31 -28 -27 -27 -28 -30 -30 -31 -31 -32 -33 -33 -33 -33 -32 -31 -31 -31 -31 -30 -31 -34 -37 -39 -39 -38 -36 -34 -34 -34 -35 -34 -34 -33 -31 -31 -34 -38 -39 -35 -33 -33 -34 -35 -37 -36 -34 -31 -32 -34 -35 -35 -35 -36 -37 -37 -37 -38 -39 -40 -41 -42 -42 -41 -39 -38 -37 -36 -37 -37 -38 -39 -39 -38 -36 -33 -30 -31 -34 -37 -40 -43 -47 -51 -55 -59 -63 -64 -64 -63 -61 -59 -59 -59 -60 -61 -58 -54 -50 -47 -47 -47 -47 -46 -45 -44 -43 -44 -47 -50 -47 -43 -39 -36 -34 -32 -31 -29 -29 -34 -40 -43 -44 -43 -41 -38 -35 -33 -32 -30 -30 -30 -31 -32 -37 -42 -47 -48 -43 -34 -26 -21 -19 -17 -15 -13 -12 -12 -13 -15 -20 -25 -29 -27 -25 -24 -25 -27 -29 -30 -30 -27 -24 -23 -24 -29 -37 -46 -53 -58 -61 -62 -62 -62 -61 -59 -58 -58 -60 -64 -68 -71 -75 -77 -76 -71 -65 -62 -59 -55 -49 -44 -41 -40 -41 -44 -46 -45 -40 -33 -30 -34 -41 -50 -56 -58 -53 -47 -40 -31 -35 -35 -30 -23 -16 -10 -8 -8 -9 -10 -12 -13 -13 -13 -13 -13 -14 -14 -15 -16 -15 -16 -17 -17 -17 -17 -17 -16 -16 -16 -16 -17 -17 -17 -17 -17 -18 -20 -21 -22 -21 -19 -18 -17 -17 -17 -19 -20 -22 -24 -24 -22 -19 -16 -17 -18 -18 -17 -14 -14 -14 -15 -16 -15 -14 -13 -12 -13 -14 -16 -18 -19 -21 -23 -24 -23 -22 -20 -18 -17 -16 -15 -15 -16 -18 -20 -21 -22 -24 -25 -26 -26 -27 -28 -28 -26 -25 -24 -25 -25 -25 -24 -27 -30 -31 -30 -28 -25 -22 -20 -16 -13 -14 -16 -20 -23 -28 -33 -36 -34 -30 -27 -28 -30 -32 -33 -33 -33 -32 -32 -33 -34 -34 -34 -33 -32 -30 -30 -30 -31 -34 -37 -39 -39 -37 -33 -31 -30 -31 -32 -33 -33 -33 -32 -31 -30 -29 -29 -29 -30 -31 -31 -30 -26 -22 -18 -16 -15 -14 -11 -9 -10 -12 -15 -16 -17 -18 -21 -25 -26 -20 -10 -1 -2 -6 -10 -14 -20 -25 -29 -31 -31 -30 -28 -26 -25 -25 -26 -29 -33 -34 -34 -32 -30 -29 -28 -28 -29 -29 -29 -29 -30 -30 -31 -32 -33 -32 -31 -30 -31 -32 -31 -32 -34 -37 -39 -38 -36 -35 -34 -34 -34 -35 -35 -36 -37 -37 -37 -38 -39 -39 -37 -35 -34 -34 -35 -37 -37 -35 -32 -32 -33 -34 -34 -34 -35 -36 -36 -36 -36 -37 -39 -41 -43 -43 -42 -41 -39 -38 -36 -37 -37 -39 -39 -39 -38 -37 -34 -30 -30 -33 -38 -41 -42 -46 -50 -54 -59 -62 -65 -66 -65 -63 -60 -59 -59 -60 -60 -59 -56 -52 -48 -46 -45 -44 -43 -44 -44 -43 -43 -45 -48 -48 -46 -44 -41 -38 -36 -33 -31 -30 -32 -37 -42 -44 -44 -42 -40 -37 -35 -33 -31 -29 -28 -28 -29 -34 -40 -46 -49 -47 -39 -30 -24 -20 -18 -16 -14 -14 -13 -13 -15 -20 -25 -29 -27 -25 -24 -24 -27 -28 -30 -29 -28 -24 -22 -23 -26 -33 -42 -50 -56 -60 -62 -63 -63 -62 -60 -59 -59 -60 -63 -67 -71 -75 -77 -77 -73 -68 -63 -60 -56 -50 -45 -42 -41 -43 -45 -47 -46 -41 -34 -30 -33 -40 -49 -56 -58 -54 -47 -41 -33 -34 -33 -28 -22 -15 -10 -9 -10 -11 -12 -13 -14 -14 -14 -14 -15 -16 -16 -16 -16 -16 -17 -17 -18 -18 -18 -18 -17 -16 -16 -16 -16 -16 -17 -17 -17 -18 -19 -20 -22 -22 -22 -21 -19 -18 -18 -19 -20 -22 -25 -26 -25 -22 -18 -17 -18 -19 -18 -15 -13 -13 -14 -15 -15 -15 -14 -13 -13 -14 -16 -17 -18 -19 -20 -21 -22 -21 -20 -18 -16 -15 -15 -15 -15 -17 -19 -21 -24 -26 -27 -27 -27 -27 -29 -29 -29 -27 -26 -26 -26 -26 -25 -25 -28 -31 -31 -28 -27 -26 -25 -21 -17 -15 -14 -16 -18 -21 -26 -30 -33 -33 -31 -31 -31 -32 -33 -33 -33 -33 -33 -34 -34 -35 -34 -34 -33 -31 -30 -30 -31 -33 -35 -38 -40 -40 -37 -33 -31 -31 -32 -33 -33 -32 -31 -31 -31 -31 -31 -30 -30 -31 -30 -29 -26 -24 -24 -24 -23 -22 -18 -14 -10 -8 -9 -11 -13 -15 -19 -23 -20 -11 -1 1 -6 -13 -18 -21 -23 -26 -29 -30 -31 -30 -29 -27 -26 -25 -27 -31 -35 -37 -36 -33 -31 -30 -30 -29 -29 -29 -29 -29 -28 -29 -30 -31 -32 -32 -31 -31 -31 -32 -33 -33 -34 -36 -38 -37 -36 -35 -34 -34 -35 -35 -36 -38 -41 -42 -42 -40 -40 -39 -37 -35 -34 -34 -35 -36 -36 -35 -34 -33 -33 -34 -33 -33 -33 -34 -34 -33 -33 -35 -37 -40 -42 -43 -43 -42 -41 -39 -37 -37 -37 -38 -38 -38 -37 -37 -35 -32 -29 -31 -35 -40 -41 -44 -47 -52 -57 -62 -64 -66 -66 -64 -61 -59 -58 -58 -59 -60 -59 -55 -49 -43 -41 -40 -40 -42 -43 -44 -44 -45 -47 -49 -49 -48 -44 -41 -39 -36 -33 -31 -32 -36 -40 -44 -45 -43 -41 -40 -38 -35 -32 -29 -27 -27 -28 -32 -39 -44 -49 -50 -44 -36 -27 -21 -19 -17 -15 -14 -14 -14 -16 -19 -24 -27 -26 -24 -23 -24 -26 -28 -29 -29 -28 -24 -22 -22 -24 -29 -38 -46 -54 -59 -62 -63 -63 -63 -61 -60 -59 -60 -62 -67 -70 -74 -77 -78 -75 -70 -65 -61 -57 -51 -46 -43 -43 -44 -47 -48 -47 -43 -36 -31 -33 -40 -47 -55 -57 -54 -48 -42 -34 -34 -31 -25 -17 -12 -10 -10 -10 -11 -12 -14 -14 -14 -14 -14 -15 -15 -15 -15 -15 -16 -16 -17 -17 -18 -18 -17 -16 -16 -15 -15 -15 -16 -16 -16 -17 -17 -17 -17 -19 -21 -22 -23 -22 -21 -19 -19 -20 -22 -24 -25 -24 -22 -19 -18 -18 -18 -18 -16 -14 -13 -12 -13 -14 -15 -15 -15 -14 -14 -14 -16 -17 -18 -19 -20 -21 -21 -20 -17 -16 -15 -14 -14 -15 -16 -17 -20 -23 -26 -28 -28 -28 -28 -28 -29 -28 -27 -26 -26 -26 -26 -24 -24 -25 -29 -32 -30 -27 -26 -27 -27 -24 -19 -16 -15 -17 -19 -22 -24 -25 -28 -31 -32 -32 -32 -33 -34 -34 -33 -33 -34 -35 -35 -35 -35 -33 -32 -31 -30 -31 -32 -34 -36 -39 -41 -40 -37 -33 -32 -32 -33 -33 -32 -30 -30 -31 -32 -32 -31 -30 -30 -30 -28 -24 -22 -23 -24 -24 -23 -21 -17 -13 -9 -8 -7 -7 -7 -11 -18 -20 -15 -7 -0 -0 -2 -6 -12 -19 -22 -26 -29 -31 -31 -30 -28 -26 -26 -28 -32 -36 -38 -37 -35 -33 -31 -31 -30 -30 -30 -30 -29 -29 -29 -29 -30 -31 -32 -31 -30 -30 -31 -32 -33 -34 -35 -36 -36 -35 -34 -35 -36 -37 -37 -38 -40 -42 -42 -41 -40 -39 -39 -37 -35 -34 -35 -35 -35 -34 -34 -34 -33 -33 -34 -34 -33 -33 -33 -32 -31 -31 -32 -35 -37 -39 -40 -41 -41 -41 -40 -38 -38 -38 -38 -38 -37 -37 -37 -36 -34 -30 -29 -31 -35 -38 -41 -45 -49 -55 -60 -63 -65 -65 -64 -61 -58 -56 -56 -58 -61 -61 -57 -49 -41 -37 -37 -38 -40 -42 -43 -44 -45 -48 -50 -51 -49 -46 -43 -41 -39 -36 -33 -33 -35 -38 -43 -44 -43 -43 -41 -40 -37 -33 -30 -27 -26 -27 -31 -37 -43 -48 -51 -48 -41 -32 -24 -21 -18 -17 -15 -15 -14 -16 -19 -23 -26 -25 -24 -22 -23 -25 -27 -29 -29 -28 -25 -22 -21 -22 -26 -34 -43 -51 -58 -62 -63 -64 -63 -62 -60 -59 -59 -62 -66 -70 -74 -77 -79 -77 -72 -66 -62 -58 -53 -48 -45 -44 -46 -48 -49 -48 -45 -38 -34 -34 -39 -46 -54 -56 -55 -49 -42 -34 -32 -28 -19 -13 -9 -10 -11 -11 -11 -11 -13 -13 -13 -13 -13 -14 -13 -12 -12 -13 -14 -14 -15 -16 -16 -16 -15 -15 -15 -15 -15 -15 -16 -16 -15 -15 -15 -15 -15 -15 -16 -18 -21 -23 -23 -21 -20 -20 -20 -21 -23 -24 -23 -20 -19 -19 -19 -19 -18 -15 -13 -12 -12 -12 -14 -15 -15 -15 -15 -15 -16 -16 -16 -17 -19 -20 -20 -19 -17 -16 -15 -15 -15 -15 -15 -16 -18 -22 -25 -28 -29 -29 -28 -28 -28 -27 -26 -26 -26 -26 -25 -24 -22 -23 -27 -32 -34 -29 -25 -25 -28 -29 -26 -22 -18 -18 -19 -21 -23 -24 -25 -28 -30 -31 -31 -32 -33 -33 -33 -33 -34 -35 -36 -36 -35 -34 -33 -32 -32 -32 -33 -33 -35 -37 -41 -42 -40 -37 -34 -33 -33 -33 -32 -30 -30 -30 -31 -32 -32 -31 -31 -31 -30 -27 -23 -20 -20 -20 -20 -20 -19 -18 -17 -16 -13 -9 -6 -6 -12 -16 -15 -8 -1 -2 -5 -9 -13 -19 -23 -26 -29 -32 -32 -30 -28 -26 -26 -29 -34 -37 -39 -38 -35 -33 -32 -31 -32 -31 -31 -31 -31 -31 -30 -30 -30 -31 -32 -31 -29 -29 -30 -31 -32 -33 -34 -34 -35 -36 -36 -36 -37 -38 -38 -39 -40 -42 -41 -39 -37 -37 -38 -37 -36 -35 -36 -35 -34 -33 -33 -33 -33 -33 -34 -35 -34 -33 -32 -32 -31 -31 -31 -33 -35 -36 -36 -37 -38 -39 -41 -40 -40 -39 -39 -38 -38 -37 -37 -37 -35 -32 -30 -29 -32 -35 -40 -44 -49 -53 -57 -61 -63 -64 -63 -60 -56 -53 -53 -57 -62 -63 -58 -49 -41 -37 -36 -36 -37 -39 -41 -43 -45 -47 -50 -51 -50 -47 -45 -43 -41 -39 -36 -34 -34 -37 -41 -43 -43 -43 -43 -41 -39 -35 -32 -29 -27 -27 -30 -35 -41 -47 -51 -51 -46 -37 -28 -23 -20 -18 -16 -14 -14 -15 -18 -22 -24 -24 -23 -22 -23 -25 -26 -28 -28 -27 -25 -22 -21 -20 -24 -31 -39 -48 -56 -61 -64 -65 -64 -63 -61 -59 -59 -61 -65 -70 -74 -77 -80 -78 -73 -68 -63 -59 -55 -49 -46 -44 -45 -47 -49 -49 -46 -40 -36 -35 -38 -45 -52 -56 -55 -50 -43 -32 -29 -23 -14 -9 -9 -11 -13 -12 -11 -11 -11 -11 -11 -12 -12 -13 -12 -11 -11 -11 -13 -13 -14 -14 -14 -14 -13 -13 -13 -13 -14 -14 -15 -15 -15 -15 -15 -14 -14 -13 -13 -14 -16 -19 -21 -21 -22 -22 -21 -21 -22 -24 -25 -24 -21 -20 -20 -20 -19 -17 -14 -12 -11 -11 -13 -14 -15 -16 -16 -16 -16 -16 -16 -16 -17 -18 -18 -19 -18 -17 -16 -16 -15 -15 -15 -16 -18 -21 -24 -27 -28 -28 -28 -27 -26 -25 -25 -25 -25 -25 -25 -24 -22 -22 -25 -31 -37 -33 -27 -24 -26 -29 -30 -27 -24 -21 -21 -23 -24 -24 -24 -25 -27 -29 -31 -31 -32 -32 -32 -31 -32 -34 -35 -36 -37 -36 -36 -35 -35 -34 -34 -33 -34 -36 -39 -42 -42 -40 -36 -34 -34 -33 -32 -31 -30 -30 -31 -31 -31 -31 -31 -32 -33 -33 -28 -24 -20 -18 -18 -17 -18 -19 -22 -24 -23 -19 -14 -10 -12 -14 -12 -7 -3 -8 -15 -20 -22 -22 -23 -25 -28 -30 -30 -29 -28 -27 -27 -31 -35 -38 -39 -37 -35 -33 -32 -32 -33 -33 -32 -32 -32 -33 -33 -33 -32 -33 -32 -31 -30 -29 -29 -30 -31 -32 -32 -33 -35 -36 -37 -37 -37 -37 -38 -39 -40 -41 -40 -38 -35 -34 -35 -36 -35 -35 -36 -35 -34 -33 -33 -32 -32 -33 -34 -35 -34 -33 -32 -32 -32 -31 -32 -33 -34 -34 -34 -33 -33 -36 -39 -41 -41 -40 -39 -39 -39 -38 -38 -37 -36 -34 -32 -30 -30 -33 -39 -45 -49 -51 -55 -59 -62 -63 -62 -60 -57 -54 -54 -57 -62 -63 -58 -50 -43 -38 -36 -35 -35 -37 -40 -43 -45 -46 -49 -50 -50 -48 -46 -44 -43 -41 -39 -36 -35 -36 -40 -43 -44 -44 -44 -43 -41 -38 -36 -33 -30 -28 -30 -33 -39 -45 -49 -52 -50 -43 -34 -27 -23 -19 -17 -15 -14 -15 -17 -20 -23 -23 -23 -23 -24 -25 -26 -27 -28 -27 -25 -23 -21 -20 -22 -27 -35 -44 -52 -59 -63 -65 -65 -64 -62 -60 -59 -60 -65 -69 -74 -78 -80 -78 -74 -69 -65 -61 -56 -51 -46 -43 -43 -46 -48 -50 -48 -43 -38 -36 -38 -45 -52 -56 -55 -50 -43 -31 -26 -18 -12 -10 -12 -15 -15 -13 -12 -10 -9 -8 -9 -11 -12 -13 -13 -12 -12 -12 -13 -13 -14 -14 -13 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -14 -14 -14 -14 -13 -12 -13 -14 -15 -17 -18 -20 -22 -23 -22 -22 -23 -23 -23 -21 -19 -19 -20 -20 -19 -16 -13 -11 -10 -12 -14 -15 -16 -16 -16 -16 -16 -16 -16 -17 -17 -17 -18 -18 -18 -17 -16 -15 -16 -16 -17 -18 -20 -23 -26 -27 -27 -26 -25 -24 -23 -22 -23 -23 -24 -24 -24 -23 -22 -23 -27 -35 -36 -31 -25 -24 -26 -28 -28 -27 -25 -24 -25 -26 -28 -28 -28 -29 -29 -30 -30 -30 -30 -29 -29 -29 -31 -33 -35 -37 -37 -37 -37 -37 -36 -34 -33 -33 -34 -38 -41 -42 -41 -39 -36 -35 -35 -34 -33 -32 -31 -31 -31 -31 -30 -30 -31 -32 -34 -35 -32 -27 -22 -19 -16 -15 -16 -20 -25 -28 -28 -26 -22 -18 -15 -11 -9 -10 -17 -24 -28 -29 -26 -24 -24 -25 -26 -27 -27 -27 -28 -30 -33 -36 -38 -39 -37 -34 -32 -32 -32 -33 -34 -33 -33 -33 -34 -35 -36 -35 -35 -34 -32 -31 -29 -28 -27 -29 -30 -32 -32 -34 -36 -36 -36 -36 -37 -39 -39 -39 -40 -39 -37 -33 -31 -32 -33 -35 -37 -38 -38 -36 -34 -32 -31 -31 -32 -34 -35 -34 -34 -33 -33 -33 -33 -33 -33 -33 -33 -32 -32 -32 -33 -35 -37 -39 -40 -39 -39 -39 -39 -39 -38 -37 -35 -33 -31 -30 -33 -39 -46 -51 -53 -56 -59 -61 -62 -61 -60 -59 -59 -61 -62 -63 -62 -57 -50 -46 -42 -38 -35 -35 -37 -40 -43 -45 -46 -48 -49 -49 -49 -48 -47 -45 -44 -42 -39 -37 -37 -41 -44 -45 -45 -45 -44 -43 -41 -39 -37 -33 -30 -29 -32 -37 -43 -48 -51 -52 -48 -40 -33 -27 -22 -18 -16 -15 -15 -16 -19 -21 -23 -24 -24 -24 -25 -26 -27 -27 -27 -25 -23 -22 -20 -21 -24 -31 -39 -49 -57 -62 -65 -66 -65 -63 -60 -59 -60 -64 -70 -75 -78 -79 -77 -74 -71 -68 -64 -58 -52 -46 -42 -43 -45 -48 -51 -50 -46 -41 -37 -38 -44 -51 -55 -56 -50 -43 -29 -24 -17 -14 -16 -20 -23 -22 -20 -17 -15 -13 -13 -14 -15 -15 -15 -15 -15 -15 -15 -16 -16 -16 -16 -15 -14 -13 -13 -13 -13 -12 -12 -11 -11 -11 -12 -13 -14 -14 -14 -13 -13 -13 -14 -14 -15 -18 -20 -22 -24 -23 -22 -21 -20 -18 -17 -18 -19 -20 -20 -18 -14 -11 -10 -11 -12 -14 -15 -15 -16 -16 -16 -16 -17 -17 -17 -17 -18 -18 -18 -18 -17 -16 -17 -17 -18 -19 -20 -23 -25 -26 -26 -25 -24 -22 -21 -20 -20 -21 -23 -24 -25 -24 -23 -22 -23 -30 -35 -33 -28 -24 -25 -26 -27 -27 -27 -27 -27 -29 -31 -32 -33 -32 -31 -30 -29 -29 -28 -28 -27 -27 -29 -31 -34 -36 -37 -37 -37 -37 -37 -35 -33 -33 -33 -36 -40 -42 -42 -40 -38 -36 -36 -35 -35 -34 -33 -32 -31 -31 -30 -29 -29 -29 -31 -35 -38 -36 -30 -23 -19 -17 -16 -17 -21 -25 -28 -30 -30 -27 -20 -15 -14 -19 -24 -28 -30 -31 -29 -26 -24 -23 -23 -25 -26 -28 -29 -31 -34 -36 -38 -38 -35 -32 -30 -30 -30 -32 -32 -32 -31 -31 -33 -35 -36 -37 -36 -34 -32 -31 -29 -27 -26 -28 -29 -30 -31 -33 -34 -35 -34 -35 -37 -38 -39 -39 -39 -38 -36 -32 -30 -29 -31 -33 -37 -39 -39 -38 -35 -32 -30 -31 -33 -34 -35 -34 -34 -34 -34 -34 -35 -35 -34 -33 -32 -31 -31 -31 -32 -32 -34 -36 -38 -38 -37 -37 -38 -39 -38 -37 -35 -34 -32 -31 -34 -39 -45 -51 -54 -57 -59 -61 -62 -61 -60 -61 -64 -67 -67 -65 -60 -55 -51 -48 -45 -41 -38 -37 -38 -40 -42 -44 -46 -47 -48 -48 -49 -48 -48 -47 -46 -45 -42 -39 -38 -41 -44 -45 -45 -45 -45 -44 -44 -42 -40 -36 -32 -30 -31 -36 -41 -46 -50 -53 -51 -46 -39 -32 -26 -22 -19 -17 -16 -16 -18 -20 -22 -24 -25 -25 -25 -26 -26 -27 -26 -25 -23 -22 -21 -20 -22 -27 -35 -45 -53 -60 -64 -65 -65 -63 -61 -59 -60 -64 -70 -75 -78 -78 -76 -74 -72 -70 -66 -60 -53 -47 -43 -43 -46 -50 -53 -52 -48 -43 -38 -38 -44 -51 -55 -56 -51 -44 -28 -24 -21 -23 -27 -30 -31 -28 -25 -23 -21 -20 -19 -20 -20 -20 -19 -19 -18 -18 -18 -18 -18 -18 -19 -19 -18 -17 -16 -15 -14 -12 -12 -11 -10 -10 -11 -13 -14 -15 -15 -14 -13 -13 -13 -12 -13 -15 -18 -21 -23 -23 -21 -19 -18 -16 -15 -15 -17 -18 -19 -18 -15 -12 -9 -9 -11 -12 -14 -14 -15 -15 -16 -17 -17 -17 -17 -17 -18 -18 -18 -18 -18 -18 -18 -18 -18 -19 -21 -23 -24 -25 -24 -23 -22 -21 -20 -19 -20 -21 -22 -24 -25 -25 -24 -22 -22 -25 -32 -34 -32 -27 -25 -25 -25 -25 -25 -26 -28 -30 -31 -33 -32 -32 -31 -30 -29 -28 -28 -27 -27 -26 -27 -29 -31 -34 -36 -36 -36 -37 -37 -35 -33 -32 -33 -35 -38 -41 -41 -40 -39 -37 -36 -36 -36 -35 -34 -33 -32 -31 -31 -30 -29 -28 -29 -32 -36 -38 -36 -28 -23 -21 -20 -20 -22 -24 -26 -28 -29 -30 -28 -26 -25 -24 -25 -28 -31 -32 -31 -28 -25 -23 -22 -24 -26 -29 -31 -32 -34 -36 -37 -37 -35 -32 -30 -29 -29 -30 -30 -31 -31 -31 -33 -35 -37 -39 -38 -36 -33 -32 -31 -31 -31 -31 -30 -28 -29 -31 -32 -33 -33 -34 -36 -38 -38 -39 -38 -37 -35 -32 -30 -29 -29 -30 -34 -38 -39 -38 -35 -31 -30 -32 -34 -35 -36 -35 -35 -35 -35 -36 -36 -36 -35 -33 -31 -31 -31 -31 -33 -33 -34 -35 -36 -36 -36 -37 -39 -39 -38 -37 -36 -34 -32 -32 -35 -39 -44 -48 -52 -56 -59 -61 -62 -61 -61 -62 -64 -67 -68 -66 -62 -57 -54 -52 -48 -45 -41 -39 -39 -40 -42 -43 -45 -46 -47 -48 -48 -48 -48 -48 -48 -47 -45 -42 -40 -41 -44 -45 -45 -45 -45 -45 -44 -43 -42 -39 -35 -32 -31 -34 -39 -44 -49 -52 -53 -50 -45 -38 -31 -27 -23 -20 -18 -17 -18 -19 -21 -24 -25 -25 -25 -26 -26 -26 -25 -24 -24 -22 -21 -20 -21 -24 -31 -40 -50 -58 -64 -65 -65 -64 -62 -59 -60 -64 -70 -75 -77 -76 -75 -74 -73 -72 -68 -62 -54 -48 -44 -44 -47 -51 -55 -55 -51 -45 -40 -39 -44 -50 -55 -56 -52 -45 -31 -29 -28 -31 -33 -32 -28 -24 -21 -20 -19 -19 -19 -20 -21 -21 -20 -19 -19 -19 -19 -19 -19 -19 -20 -20 -20 -20 -19 -18 -15 -13 -11 -10 -10 -10 -12 -13 -15 -16 -17 -17 -16 -14 -13 -13 -13 -15 -17 -20 -21 -22 -22 -21 -20 -17 -15 -14 -15 -17 -18 -18 -16 -14 -10 -9 -9 -11 -12 -13 -14 -15 -16 -17 -17 -17 -18 -18 -17 -18 -18 -18 -19 -19 -19 -19 -19 -20 -22 -23 -24 -24 -23 -22 -21 -20 -20 -20 -21 -21 -21 -22 -24 -25 -25 -23 -22 -22 -26 -32 -34 -30 -26 -24 -24 -24 -25 -26 -28 -29 -30 -30 -28 -27 -27 -27 -28 -28 -28 -28 -27 -27 -27 -28 -30 -32 -33 -34 -35 -36 -36 -35 -33 -32 -33 -34 -37 -39 -40 -40 -39 -37 -36 -36 -35 -35 -35 -34 -33 -33 -32 -31 -30 -29 -29 -30 -33 -36 -38 -33 -29 -26 -24 -22 -23 -24 -25 -26 -26 -26 -28 -29 -29 -26 -25 -26 -29 -33 -35 -32 -27 -23 -21 -23 -26 -30 -32 -33 -35 -37 -38 -38 -36 -33 -31 -30 -30 -30 -31 -31 -31 -31 -32 -35 -37 -39 -39 -36 -34 -32 -32 -33 -33 -32 -30 -29 -28 -28 -30 -31 -32 -33 -35 -36 -37 -38 -37 -35 -34 -33 -32 -31 -29 -29 -32 -36 -38 -37 -34 -29 -28 -31 -35 -37 -37 -37 -36 -35 -36 -36 -37 -37 -36 -34 -32 -31 -31 -32 -34 -35 -35 -35 -35 -36 -36 -38 -40 -41 -40 -39 -38 -36 -35 -34 -35 -38 -41 -45 -49 -53 -57 -60 -61 -61 -61 -62 -64 -66 -67 -66 -64 -63 -60 -56 -51 -47 -44 -42 -41 -41 -42 -42 -44 -45 -47 -47 -47 -47 -47 -48 -48 -48 -47 -45 -42 -41 -42 -43 -44 -45 -45 -45 -44 -43 -43 -41 -37 -34 -31 -33 -37 -42 -47 -50 -53 -52 -49 -44 -37 -33 -28 -24 -21 -19 -19 -20 -21 -24 -25 -25 -25 -25 -25 -24 -24 -24 -24 -22 -21 -20 -21 -22 -28 -36 -46 -55 -62 -64 -65 -64 -62 -60 -61 -65 -70 -75 -76 -74 -73 -73 -74 -73 -70 -64 -57 -49 -46 -46 -49 -53 -56 -56 -53 -48 -43 -41 -44 -49 -54 -56 -52 -45 -34 -33 -32 -32 -28 -24 -20 -17 -15 -14 -14 -14 -14 -15 -16 -17 -16 -15 -15 -16 -17 -17 -16 -16 -17 -18 -19 -21 -21 -20 -18 -15 -12 -10 -10 -11 -13 -15 -17 -18 -19 -20 -20 -18 -16 -15 -15 -16 -18 -20 -21 -22 -23 -24 -24 -21 -16 -13 -13 -15 -17 -18 -17 -16 -13 -10 -9 -9 -10 -11 -12 -14 -15 -16 -17 -17 -18 -18 -18 -18 -18 -19 -19 -19 -20 -20 -20 -21 -22 -23 -23 -23 -22 -20 -19 -19 -20 -21 -22 -21 -20 -20 -22 -24 -25 -25 -23 -22 -24 -28 -32 -33 -28 -24 -23 -23 -25 -27 -29 -30 -30 -28 -23 -21 -20 -22 -25 -26 -27 -28 -28 -28 -28 -28 -29 -30 -32 -33 -34 -35 -35 -34 -33 -33 -33 -34 -36 -38 -39 -39 -39 -38 -36 -35 -35 -35 -35 -35 -34 -33 -33 -32 -31 -30 -30 -30 -32 -35 -39 -39 -34 -30 -26 -23 -23 -24 -25 -26 -27 -29 -31 -31 -30 -28 -26 -26 -29 -33 -36 -35 -30 -25 -22 -23 -26 -30 -33 -35 -37 -39 -41 -41 -39 -36 -32 -31 -31 -31 -32 -32 -33 -32 -32 -34 -36 -38 -39 -37 -34 -33 -32 -32 -32 -31 -30 -29 -28 -29 -30 -31 -33 -33 -34 -35 -36 -37 -36 -35 -34 -34 -35 -34 -30 -28 -30 -34 -37 -37 -34 -29 -28 -30 -33 -36 -37 -37 -37 -36 -35 -36 -38 -39 -38 -35 -33 -32 -32 -33 -34 -35 -36 -35 -35 -36 -37 -39 -40 -41 -41 -40 -39 -37 -34 -33 -33 -35 -38 -41 -45 -49 -53 -57 -58 -59 -60 -61 -63 -65 -67 -67 -66 -66 -63 -59 -54 -50 -46 -44 -43 -42 -42 -42 -43 -45 -46 -46 -46 -46 -47 -47 -48 -48 -48 -46 -44 -42 -41 -42 -43 -44 -45 -45 -44 -44 -44 -42 -39 -35 -32 -32 -36 -40 -44 -48 -51 -52 -51 -48 -44 -39 -34 -28 -24 -22 -21 -21 -22 -24 -26 -26 -25 -25 -24 -23 -23 -24 -24 -23 -21 -21 -20 -21 -25 -32 -41 -51 -59 -63 -64 -64 -63 -60 -61 -65 -70 -75 -75 -74 -72 -72 -74 -74 -71 -66 -59 -53 -50 -49 -51 -53 -57 -58 -55 -50 -47 -44 -45 -48 -53 -55 -51 -45 -36 -33 -30 -25 -20 -16 -14 -13 -12 -11 -10 -9 -9 -9 -10 -11 -11 -11 -11 -12 -13 -13 -12 -11 -12 -13 -16 -18 -20 -21 -20 -18 -15 -12 -12 -13 -15 -18 -19 -20 -22 -23 -23 -21 -19 -19 -19 -18 -19 -20 -22 -22 -23 -23 -23 -21 -17 -13 -12 -14 -16 -17 -17 -17 -15 -12 -9 -8 -9 -10 -11 -12 -14 -15 -16 -16 -17 -17 -18 -19 -20 -20 -20 -21 -22 -22 -21 -21 -22 -23 -24 -23 -21 -19 -18 -19 -20 -22 -23 -22 -21 -21 -21 -23 -24 -25 -25 -24 -25 -27 -31 -33 -30 -26 -24 -24 -25 -27 -29 -30 -30 -28 -24 -19 -16 -17 -21 -24 -26 -28 -29 -30 -30 -30 -30 -31 -32 -33 -33 -34 -34 -34 -33 -33 -33 -34 -35 -37 -38 -38 -38 -38 -37 -36 -35 -35 -35 -35 -35 -34 -33 -33 -32 -31 -31 -31 -32 -34 -38 -39 -36 -31 -27 -24 -23 -24 -25 -27 -28 -30 -31 -32 -32 -30 -28 -28 -29 -32 -35 -36 -34 -30 -26 -26 -27 -30 -33 -36 -38 -40 -41 -42 -40 -37 -34 -32 -32 -33 -33 -34 -34 -34 -33 -33 -34 -37 -38 -37 -36 -34 -33 -33 -32 -31 -30 -29 -29 -29 -30 -31 -32 -34 -34 -35 -35 -37 -37 -35 -35 -36 -38 -36 -33 -29 -29 -33 -36 -37 -35 -29 -26 -28 -32 -35 -36 -37 -38 -38 -37 -37 -38 -40 -41 -38 -36 -35 -34 -33 -34 -34 -35 -36 -35 -37 -38 -40 -40 -40 -40 -39 -38 -37 -34 -31 -30 -31 -32 -36 -39 -44 -48 -52 -56 -57 -58 -59 -61 -64 -65 -66 -67 -67 -64 -61 -57 -53 -49 -46 -44 -43 -43 -43 -43 -44 -46 -46 -46 -46 -46 -46 -47 -48 -48 -48 -45 -42 -41 -41 -42 -43 -44 -45 -44 -44 -44 -43 -40 -36 -32 -33 -35 -38 -42 -45 -49 -51 -52 -51 -49 -45 -38 -32 -27 -25 -23 -23 -24 -25 -26 -26 -26 -26 -24 -23 -23 -23 -23 -23 -22 -21 -21 -20 -22 -28 -36 -46 -55 -61 -63 -64 -62 -60 -61 -64 -70 -75 -75 -74 -73 -72 -74 -74 -73 -69 -63 -57 -53 -52 -51 -53 -56 -58 -57 -53 -50 -47 -46 -48 -53 -55 -52 -46 -34 -29 -24 -19 -15 -14 -14 -14 -13 -11 -10 -8 -7 -7 -7 -8 -9 -10 -11 -11 -11 -11 -10 -9 -9 -11 -13 -15 -15 -15 -15 -15 -15 -14 -14 -16 -18 -19 -21 -21 -21 -20 -20 -20 -21 -21 -21 -21 -21 -22 -22 -22 -23 -23 -24 -23 -20 -16 -13 -12 -14 -15 -16 -16 -16 -14 -11 -8 -7 -8 -9 -11 -12 -14 -15 -16 -16 -17 -18 -19 -21 -22 -23 -24 -25 -24 -23 -22 -22 -23 -24 -23 -21 -19 -19 -19 -21 -22 -24 -24 -23 -22 -22 -23 -24 -26 -26 -26 -26 -28 -30 -33 -32 -29 -27 -26 -27 -28 -29 -29 -28 -28 -25 -21 -17 -16 -18 -21 -23 -25 -28 -31 -32 -33 -32 -32 -33 -33 -34 -34 -33 -33 -33 -34 -34 -35 -36 -37 -37 -38 -38 -38 -38 -37 -35 -35 -34 -35 -35 -35 -35 -35 -34 -32 -31 -31 -32 -34 -36 -38 -36 -32 -28 -25 -24 -23 -24 -26 -29 -31 -33 -34 -35 -33 -31 -29 -30 -31 -34 -36 -35 -33 -28 -27 -27 -29 -33 -36 -38 -40 -41 -42 -41 -38 -36 -34 -34 -34 -34 -34 -35 -36 -35 -34 -34 -35 -36 -36 -36 -35 -35 -33 -31 -29 -29 -29 -29 -29 -29 -30 -31 -33 -34 -35 -36 -36 -36 -35 -35 -37 -39 -39 -36 -32 -29 -31 -34 -36 -35 -30 -26 -27 -31 -34 -35 -37 -39 -39 -38 -38 -40 -41 -42 -40 -38 -36 -35 -33 -33 -34 -35 -36 -37 -38 -39 -40 -40 -39 -39 -38 -38 -37 -34 -31 -29 -28 -29 -32 -36 -40 -44 -48 -52 -55 -56 -57 -58 -61 -64 -66 -67 -67 -65 -62 -59 -55 -51 -48 -46 -45 -44 -43 -43 -44 -45 -46 -45 -45 -45 -46 -47 -48 -49 -48 -47 -44 -42 -41 -40 -42 -44 -45 -45 -46 -45 -44 -41 -37 -33 -33 -34 -36 -40 -43 -46 -49 -51 -52 -51 -48 -42 -35 -30 -27 -25 -25 -25 -26 -26 -27 -27 -27 -25 -23 -23 -23 -23 -23 -22 -22 -21 -21 -21 -25 -32 -42 -51 -58 -62 -63 -62 -60 -60 -63 -69 -74 -75 -74 -73 -72 -74 -75 -74 -71 -66 -60 -56 -52 -51 -52 -56 -58 -58 -55 -53 -50 -48 -48 -51 -53 -51 -47 -28 -22 -18 -15 -15 -16 -17 -17 -16 -14 -13 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -9 -8 -8 -11 -13 -15 -14 -13 -11 -10 -11 -13 -16 -18 -20 -21 -21 -21 -20 -19 -19 -20 -21 -22 -23 -23 -22 -22 -22 -22 -23 -24 -25 -25 -22 -18 -13 -11 -13 -14 -15 -16 -16 -15 -13 -10 -8 -7 -8 -9 -11 -12 -13 -15 -16 -17 -18 -20 -22 -24 -26 -27 -27 -26 -25 -23 -22 -22 -23 -24 -23 -21 -20 -21 -21 -23 -24 -25 -25 -25 -24 -24 -25 -26 -27 -27 -27 -28 -30 -32 -32 -30 -28 -27 -28 -29 -30 -29 -28 -28 -27 -24 -19 -16 -15 -17 -20 -23 -26 -30 -32 -33 -33 -33 -34 -34 -34 -33 -32 -32 -33 -34 -35 -35 -36 -37 -38 -38 -38 -38 -39 -38 -37 -35 -34 -34 -35 -35 -36 -35 -34 -33 -32 -32 -33 -34 -35 -37 -36 -33 -30 -27 -26 -24 -24 -25 -28 -31 -34 -36 -38 -36 -33 -31 -30 -31 -34 -36 -37 -34 -30 -28 -28 -29 -32 -35 -37 -40 -42 -43 -42 -40 -37 -35 -35 -35 -35 -35 -36 -38 -37 -35 -34 -34 -35 -36 -36 -36 -35 -33 -31 -29 -29 -29 -28 -28 -29 -30 -30 -32 -33 -35 -35 -35 -35 -35 -35 -36 -37 -37 -35 -30 -27 -28 -30 -33 -35 -32 -29 -27 -29 -31 -33 -36 -38 -38 -37 -38 -40 -41 -41 -39 -38 -37 -36 -34 -34 -34 -35 -37 -38 -39 -40 -41 -41 -39 -38 -38 -38 -38 -35 -31 -28 -27 -28 -30 -34 -39 -43 -46 -50 -52 -54 -55 -56 -58 -61 -64 -66 -66 -65 -63 -60 -57 -53 -49 -47 -46 -45 -44 -43 -43 -44 -45 -45 -45 -45 -46 -47 -48 -49 -49 -48 -45 -43 -41 -40 -42 -44 -45 -45 -46 -46 -45 -42 -38 -35 -34 -34 -36 -38 -41 -45 -47 -49 -51 -51 -49 -45 -39 -34 -30 -28 -27 -27 -26 -27 -28 -28 -28 -27 -25 -23 -23 -23 -23 -23 -22 -22 -22 -21 -22 -28 -37 -47 -54 -60 -63 -62 -60 -59 -62 -68 -73 -74 -73 -72 -71 -73 -75 -76 -74 -68 -62 -56 -51 -50 -52 -56 -58 -58 -57 -54 -52 -49 -47 -50 -52 -51 -48 -19 -15 -12 -12 -13 -14 -14 -13 -12 -12 -12 -13 -15 -17 -17 -17 -15 -14 -13 -12 -10 -10 -10 -11 -13 -15 -17 -17 -16 -14 -12 -10 -11 -13 -16 -19 -21 -21 -20 -19 -18 -17 -18 -19 -21 -22 -23 -23 -24 -24 -24 -23 -24 -25 -26 -27 -25 -20 -15 -12 -12 -14 -15 -16 -16 -17 -16 -14 -11 -8 -8 -8 -10 -12 -13 -14 -16 -18 -20 -22 -24 -26 -28 -30 -30 -28 -27 -26 -24 -24 -24 -25 -24 -23 -22 -22 -22 -23 -24 -25 -26 -27 -27 -26 -26 -27 -28 -28 -28 -29 -30 -31 -31 -30 -29 -28 -29 -31 -31 -30 -28 -28 -28 -26 -23 -18 -15 -16 -18 -22 -25 -28 -30 -31 -32 -34 -35 -35 -34 -32 -31 -31 -32 -34 -35 -36 -37 -37 -38 -38 -38 -38 -39 -40 -39 -37 -35 -34 -34 -35 -35 -34 -34 -33 -33 -33 -34 -34 -34 -36 -36 -35 -32 -30 -29 -26 -24 -24 -26 -29 -33 -36 -38 -38 -35 -32 -31 -31 -34 -37 -38 -37 -33 -31 -30 -31 -32 -35 -37 -40 -42 -44 -45 -43 -40 -37 -36 -36 -36 -37 -37 -38 -38 -38 -36 -35 -36 -36 -37 -37 -36 -34 -32 -31 -30 -29 -28 -28 -29 -30 -30 -31 -32 -34 -35 -35 -35 -35 -34 -35 -35 -35 -33 -29 -26 -25 -28 -32 -36 -35 -31 -28 -26 -26 -28 -32 -36 -37 -36 -37 -39 -41 -40 -39 -38 -37 -36 -36 -36 -37 -37 -37 -38 -39 -40 -41 -42 -40 -39 -38 -38 -38 -36 -32 -29 -27 -28 -31 -34 -37 -40 -43 -47 -51 -54 -54 -53 -55 -58 -60 -63 -64 -64 -63 -60 -57 -54 -51 -48 -47 -46 -44 -43 -42 -43 -43 -43 -44 -44 -45 -47 -48 -49 -49 -48 -46 -43 -41 -40 -42 -43 -45 -46 -46 -46 -45 -43 -39 -36 -34 -34 -35 -38 -40 -43 -45 -47 -48 -49 -48 -46 -42 -37 -33 -31 -30 -28 -27 -27 -28 -29 -29 -28 -26 -24 -23 -23 -23 -23 -23 -23 -23 -22 -22 -25 -32 -42 -50 -57 -62 -62 -59 -58 -60 -67 -72 -72 -71 -69 -70 -72 -75 -77 -75 -69 -63 -56 -51 -50 -52 -55 -57 -58 -57 -55 -53 -49 -46 -48 -51 -51 -48 -11 -9 -8 -8 -9 -10 -10 -9 -8 -8 -8 -9 -10 -13 -16 -16 -16 -14 -14 -14 -14 -14 -15 -17 -18 -19 -18 -16 -14 -12 -11 -11 -13 -14 -15 -17 -20 -20 -19 -18 -16 -16 -17 -19 -21 -22 -23 -24 -25 -26 -26 -26 -26 -27 -29 -29 -28 -23 -18 -14 -13 -14 -15 -16 -17 -17 -18 -18 -16 -12 -11 -11 -12 -14 -15 -16 -18 -20 -23 -25 -27 -29 -30 -31 -30 -29 -29 -28 -27 -27 -26 -26 -25 -24 -24 -23 -23 -23 -24 -25 -27 -29 -29 -28 -28 -27 -28 -28 -29 -29 -30 -30 -30 -30 -29 -29 -30 -31 -32 -31 -29 -28 -27 -27 -26 -22 -18 -17 -19 -22 -25 -27 -29 -30 -32 -33 -34 -34 -33 -31 -30 -31 -32 -33 -35 -36 -37 -37 -38 -38 -38 -38 -39 -40 -41 -39 -36 -35 -34 -34 -34 -34 -34 -34 -34 -34 -34 -34 -34 -34 -34 -34 -33 -31 -28 -25 -22 -21 -23 -27 -30 -34 -36 -37 -35 -34 -32 -32 -35 -37 -39 -40 -38 -35 -33 -33 -34 -35 -37 -39 -43 -46 -47 -46 -44 -40 -36 -36 -36 -37 -38 -39 -39 -38 -38 -37 -37 -37 -37 -37 -37 -36 -35 -34 -31 -29 -28 -28 -30 -31 -31 -31 -31 -33 -34 -35 -35 -35 -35 -35 -35 -34 -33 -31 -28 -27 -28 -31 -34 -36 -35 -32 -26 -22 -24 -29 -33 -34 -33 -35 -38 -39 -39 -39 -39 -39 -38 -37 -38 -38 -38 -38 -38 -38 -39 -40 -42 -41 -39 -38 -38 -38 -37 -33 -30 -28 -28 -31 -33 -35 -36 -40 -46 -51 -55 -53 -51 -52 -54 -57 -60 -63 -63 -63 -61 -58 -54 -51 -49 -47 -46 -45 -44 -42 -42 -42 -42 -42 -43 -44 -46 -48 -49 -50 -49 -47 -44 -40 -40 -41 -43 -44 -45 -46 -46 -45 -44 -40 -37 -35 -35 -36 -37 -39 -41 -44 -45 -46 -46 -47 -46 -43 -39 -37 -34 -32 -29 -28 -28 -29 -30 -30 -30 -28 -26 -24 -23 -24 -24 -23 -23 -23 -23 -23 -24 -28 -37 -46 -53 -60 -60 -58 -57 -59 -66 -70 -71 -70 -68 -68 -71 -75 -77 -76 -70 -63 -56 -51 -50 -52 -54 -56 -57 -57 -55 -53 -51 -48 -48 -50 -50 -49 -10 -9 -8 -8 -9 -9 -9 -9 -8 -7 -7 -7 -8 -10 -13 -14 -15 -14 -13 -14 -15 -17 -21 -22 -22 -21 -19 -16 -13 -11 -11 -14 -16 -16 -16 -16 -18 -18 -17 -17 -17 -17 -18 -19 -21 -23 -23 -24 -26 -27 -28 -27 -27 -28 -30 -31 -30 -27 -23 -18 -16 -17 -17 -18 -18 -18 -20 -21 -21 -18 -16 -16 -17 -19 -21 -23 -24 -25 -26 -29 -30 -30 -29 -29 -29 -29 -29 -29 -29 -29 -28 -27 -26 -26 -25 -25 -24 -24 -25 -27 -29 -30 -30 -29 -28 -28 -28 -28 -29 -30 -31 -30 -30 -29 -29 -30 -31 -31 -31 -30 -29 -27 -27 -27 -28 -27 -23 -21 -22 -25 -27 -28 -28 -29 -31 -33 -34 -34 -33 -30 -29 -30 -31 -33 -34 -36 -36 -37 -37 -38 -37 -38 -38 -40 -41 -40 -37 -35 -34 -34 -33 -33 -34 -35 -35 -34 -34 -33 -33 -33 -33 -33 -33 -32 -29 -26 -23 -22 -23 -25 -28 -31 -32 -32 -32 -32 -33 -34 -36 -38 -40 -41 -41 -38 -36 -34 -34 -35 -36 -38 -41 -45 -48 -48 -46 -42 -38 -37 -37 -37 -38 -39 -38 -38 -38 -37 -36 -36 -36 -37 -37 -37 -36 -34 -30 -25 -23 -26 -30 -32 -32 -32 -31 -31 -33 -34 -35 -35 -36 -35 -35 -34 -33 -32 -32 -31 -31 -32 -32 -35 -36 -34 -28 -23 -23 -26 -29 -29 -30 -33 -35 -37 -39 -40 -40 -40 -39 -38 -38 -38 -38 -38 -37 -38 -39 -40 -42 -41 -39 -38 -37 -38 -37 -35 -32 -29 -28 -30 -31 -33 -33 -37 -43 -49 -53 -51 -49 -50 -52 -54 -56 -58 -61 -62 -61 -58 -55 -52 -49 -47 -46 -45 -44 -43 -41 -41 -40 -41 -42 -43 -45 -47 -49 -50 -49 -47 -45 -41 -40 -41 -42 -43 -45 -45 -46 -45 -44 -41 -38 -36 -36 -36 -37 -38 -40 -42 -44 -44 -44 -44 -44 -43 -40 -39 -37 -34 -31 -30 -30 -30 -30 -31 -31 -30 -28 -26 -24 -24 -24 -24 -24 -24 -23 -23 -23 -26 -32 -41 -49 -56 -58 -58 -57 -58 -64 -69 -71 -69 -66 -66 -70 -74 -77 -77 -71 -64 -57 -51 -50 -51 -53 -55 -56 -56 -56 -55 -54 -51 -49 -49 -49 -48 -10 -10 -10 -10 -9 -8 -8 -8 -8 -8 -7 -7 -8 -10 -13 -15 -15 -15 -14 -13 -15 -19 -23 -25 -24 -22 -19 -16 -14 -13 -14 -17 -19 -19 -19 -18 -17 -16 -16 -16 -17 -18 -19 -19 -21 -23 -24 -25 -26 -27 -27 -26 -27 -28 -31 -33 -33 -30 -26 -23 -21 -21 -21 -22 -23 -22 -23 -23 -24 -25 -25 -26 -25 -25 -26 -26 -26 -27 -29 -30 -31 -31 -30 -30 -29 -28 -28 -28 -30 -30 -28 -27 -27 -28 -28 -27 -27 -27 -27 -28 -29 -30 -31 -30 -29 -28 -28 -29 -30 -32 -32 -31 -28 -27 -28 -30 -32 -31 -30 -29 -29 -27 -26 -26 -27 -29 -28 -27 -27 -29 -30 -29 -28 -28 -30 -32 -34 -34 -33 -31 -29 -30 -31 -33 -34 -35 -36 -36 -37 -37 -37 -38 -38 -39 -40 -40 -38 -36 -34 -33 -33 -33 -34 -35 -35 -35 -33 -32 -32 -31 -31 -32 -33 -34 -32 -29 -24 -22 -24 -25 -26 -26 -27 -29 -30 -32 -34 -36 -37 -38 -39 -40 -41 -40 -38 -36 -34 -35 -35 -37 -39 -43 -47 -49 -48 -44 -40 -37 -37 -38 -39 -39 -39 -39 -39 -37 -37 -36 -35 -35 -35 -35 -34 -29 -22 -12 -8 -12 -22 -29 -31 -31 -31 -31 -31 -33 -34 -35 -37 -37 -35 -33 -33 -34 -34 -33 -32 -31 -31 -33 -35 -35 -32 -26 -24 -24 -25 -24 -27 -30 -33 -35 -38 -40 -41 -41 -39 -38 -37 -37 -37 -38 -37 -37 -38 -40 -41 -41 -39 -37 -36 -36 -36 -36 -35 -32 -29 -28 -30 -32 -33 -35 -40 -46 -50 -48 -46 -47 -50 -51 -51 -54 -58 -61 -60 -57 -54 -52 -50 -48 -46 -45 -44 -43 -41 -40 -40 -40 -41 -42 -44 -47 -48 -49 -50 -49 -47 -44 -42 -41 -41 -42 -44 -44 -45 -45 -44 -41 -38 -37 -36 -37 -37 -38 -39 -41 -42 -43 -42 -42 -42 -41 -40 -39 -38 -35 -33 -32 -31 -31 -31 -31 -31 -31 -29 -27 -26 -25 -25 -24 -24 -24 -23 -23 -23 -24 -29 -36 -45 -53 -57 -57 -56 -57 -62 -67 -69 -69 -65 -65 -69 -73 -77 -77 -72 -65 -57 -52 -50 -51 -53 -54 -55 -55 -56 -56 -57 -53 -50 -49 -49 -48 -11 -12 -13 -12 -10 -9 -7 -7 -8 -9 -10 -11 -11 -12 -14 -16 -17 -16 -16 -16 -18 -21 -25 -26 -24 -21 -18 -15 -15 -16 -18 -19 -20 -20 -21 -20 -19 -17 -16 -15 -16 -18 -19 -19 -20 -21 -23 -24 -25 -25 -24 -25 -26 -28 -31 -34 -33 -31 -29 -27 -25 -23 -23 -24 -26 -26 -26 -26 -27 -27 -28 -29 -29 -28 -28 -28 -28 -29 -31 -32 -31 -29 -28 -26 -26 -26 -27 -27 -28 -29 -29 -29 -29 -30 -31 -31 -30 -30 -29 -29 -30 -30 -31 -31 -30 -30 -29 -30 -32 -33 -33 -31 -28 -26 -27 -30 -33 -32 -30 -29 -29 -29 -27 -26 -26 -28 -29 -30 -31 -33 -34 -32 -30 -28 -28 -31 -33 -34 -34 -32 -30 -30 -31 -32 -34 -35 -35 -35 -36 -36 -37 -37 -37 -37 -38 -39 -38 -36 -33 -31 -32 -33 -34 -35 -35 -34 -33 -32 -31 -31 -30 -30 -31 -33 -33 -30 -26 -22 -23 -24 -25 -25 -27 -30 -31 -33 -34 -36 -37 -38 -38 -38 -39 -40 -39 -37 -34 -33 -34 -35 -38 -42 -45 -47 -47 -44 -40 -37 -37 -38 -39 -39 -40 -40 -40 -39 -38 -37 -35 -32 -30 -30 -28 -22 -13 -5 -2 -4 -13 -27 -33 -35 -34 -32 -31 -32 -33 -36 -38 -38 -36 -34 -33 -33 -33 -33 -32 -31 -30 -32 -34 -35 -33 -28 -24 -22 -21 -23 -26 -30 -33 -35 -36 -38 -39 -40 -39 -38 -37 -37 -38 -38 -38 -38 -39 -40 -41 -41 -39 -37 -36 -36 -35 -36 -36 -34 -31 -28 -29 -30 -32 -34 -38 -43 -47 -45 -44 -45 -49 -51 -51 -55 -60 -63 -61 -57 -54 -52 -50 -48 -46 -45 -44 -43 -42 -41 -40 -40 -40 -42 -44 -46 -48 -49 -50 -49 -48 -45 -42 -41 -40 -41 -43 -44 -44 -45 -44 -42 -39 -37 -37 -37 -38 -38 -39 -40 -41 -41 -41 -40 -40 -39 -38 -38 -37 -35 -34 -33 -33 -32 -31 -31 -31 -30 -30 -28 -27 -26 -26 -25 -24 -23 -23 -23 -23 -24 -26 -32 -41 -49 -55 -57 -56 -56 -59 -64 -68 -69 -65 -65 -67 -72 -77 -77 -73 -66 -58 -52 -50 -50 -52 -53 -54 -55 -56 -57 -59 -55 -52 -50 -50 -48 -11 -12 -12 -12 -11 -10 -9 -9 -10 -12 -13 -14 -15 -16 -16 -17 -17 -17 -18 -20 -22 -24 -26 -25 -22 -19 -15 -14 -16 -18 -19 -19 -19 -20 -21 -21 -21 -19 -18 -17 -18 -19 -19 -19 -20 -21 -23 -23 -23 -23 -23 -24 -25 -27 -30 -32 -32 -31 -30 -29 -27 -25 -24 -24 -27 -28 -28 -29 -29 -28 -29 -30 -30 -29 -29 -28 -29 -29 -30 -30 -28 -26 -25 -25 -25 -26 -26 -26 -26 -27 -28 -29 -30 -30 -32 -32 -32 -32 -31 -31 -30 -30 -31 -31 -31 -31 -31 -32 -33 -35 -35 -33 -29 -26 -27 -29 -32 -33 -31 -29 -29 -29 -28 -27 -26 -27 -29 -31 -33 -34 -36 -35 -32 -30 -30 -32 -34 -34 -34 -33 -32 -32 -32 -32 -33 -34 -34 -35 -35 -35 -36 -37 -37 -37 -37 -37 -37 -36 -32 -30 -30 -32 -34 -34 -33 -33 -32 -32 -31 -30 -30 -30 -30 -32 -33 -32 -28 -24 -24 -24 -25 -26 -29 -31 -33 -33 -34 -36 -36 -37 -37 -38 -38 -38 -39 -38 -36 -33 -33 -35 -37 -40 -42 -44 -45 -44 -40 -37 -37 -38 -40 -40 -40 -40 -40 -39 -38 -37 -33 -25 -18 -17 -19 -20 -20 -20 -16 -11 -10 -23 -32 -36 -36 -35 -33 -32 -33 -35 -38 -39 -37 -35 -33 -31 -31 -31 -31 -30 -30 -31 -33 -34 -33 -31 -28 -24 -20 -22 -26 -30 -33 -34 -34 -35 -37 -39 -40 -39 -39 -39 -39 -39 -39 -39 -39 -40 -41 -41 -40 -38 -36 -36 -36 -36 -37 -36 -33 -29 -28 -29 -30 -32 -35 -40 -45 -46 -45 -45 -49 -52 -54 -58 -62 -64 -63 -60 -56 -53 -51 -48 -46 -45 -44 -44 -43 -42 -41 -41 -41 -42 -44 -46 -47 -49 -49 -49 -48 -45 -42 -39 -39 -41 -42 -43 -44 -45 -45 -43 -40 -38 -37 -38 -38 -39 -40 -41 -42 -41 -41 -39 -38 -37 -36 -36 -35 -35 -34 -34 -34 -33 -31 -31 -30 -30 -29 -29 -28 -27 -27 -25 -24 -23 -23 -23 -23 -23 -25 -29 -37 -45 -52 -56 -56 -54 -57 -62 -67 -67 -64 -64 -66 -70 -75 -77 -74 -68 -60 -54 -51 -51 -52 -53 -54 -55 -56 -58 -60 -59 -55 -52 -52 -49 -9 -9 -9 -9 -9 -10 -10 -11 -11 -12 -13 -15 -16 -17 -17 -16 -16 -16 -18 -21 -23 -22 -19 -15 -13 -12 -13 -16 -18 -20 -21 -20 -19 -19 -20 -20 -20 -21 -21 -21 -20 -19 -19 -20 -21 -22 -22 -22 -21 -21 -22 -23 -25 -26 -29 -30 -31 -31 -30 -30 -30 -28 -26 -25 -26 -28 -28 -29 -29 -28 -30 -31 -31 -30 -29 -28 -27 -27 -27 -26 -24 -23 -23 -24 -26 -28 -29 -29 -28 -28 -29 -29 -29 -30 -31 -33 -33 -33 -33 -32 -31 -31 -31 -31 -32 -31 -31 -32 -34 -36 -36 -34 -30 -29 -29 -30 -31 -32 -31 -30 -29 -30 -29 -28 -26 -26 -28 -31 -33 -34 -35 -35 -33 -32 -32 -33 -34 -34 -34 -34 -34 -34 -33 -33 -33 -33 -34 -34 -34 -35 -35 -36 -37 -37 -36 -36 -36 -35 -33 -30 -29 -31 -33 -33 -32 -30 -30 -30 -30 -30 -29 -29 -30 -31 -33 -33 -31 -27 -25 -26 -27 -29 -31 -33 -33 -33 -34 -34 -35 -36 -37 -37 -37 -38 -39 -40 -39 -36 -35 -34 -35 -37 -39 -41 -43 -44 -40 -38 -37 -38 -40 -41 -41 -41 -40 -38 -38 -36 -30 -18 -8 -10 -17 -27 -32 -32 -25 -14 -7 -15 -24 -32 -36 -37 -36 -35 -35 -36 -38 -38 -36 -34 -31 -29 -29 -29 -30 -30 -30 -31 -32 -33 -33 -33 -32 -27 -21 -20 -24 -29 -32 -33 -34 -36 -37 -39 -39 -40 -40 -40 -40 -40 -39 -39 -39 -39 -41 -41 -40 -39 -37 -36 -36 -37 -37 -37 -35 -32 -29 -28 -28 -29 -33 -38 -44 -48 -48 -48 -50 -53 -56 -60 -62 -64 -64 -62 -59 -56 -52 -48 -46 -45 -44 -44 -44 -43 -42 -41 -41 -42 -43 -45 -47 -48 -49 -49 -48 -45 -41 -38 -37 -39 -41 -42 -43 -45 -46 -44 -42 -39 -37 -37 -38 -39 -40 -42 -43 -43 -42 -41 -38 -37 -35 -34 -33 -33 -34 -34 -34 -32 -31 -30 -30 -30 -29 -29 -29 -28 -28 -26 -25 -23 -23 -22 -22 -22 -23 -26 -33 -42 -50 -55 -55 -53 -56 -61 -65 -65 -63 -63 -65 -69 -74 -76 -75 -70 -62 -55 -52 -51 -52 -52 -53 -55 -57 -59 -61 -62 -59 -56 -53 -50 -6 -5 -5 -6 -6 -8 -8 -9 -8 -9 -9 -10 -11 -12 -12 -12 -12 -14 -16 -18 -18 -16 -12 -8 -7 -9 -13 -16 -17 -19 -20 -20 -20 -19 -20 -21 -21 -22 -23 -22 -20 -18 -18 -20 -22 -23 -22 -21 -20 -20 -21 -21 -23 -25 -27 -29 -30 -30 -30 -31 -31 -30 -28 -26 -26 -27 -28 -28 -28 -28 -29 -30 -31 -31 -30 -28 -26 -25 -24 -24 -23 -23 -24 -26 -28 -30 -31 -31 -30 -29 -29 -28 -29 -29 -30 -32 -33 -33 -33 -33 -33 -32 -31 -31 -31 -31 -31 -32 -34 -36 -37 -36 -33 -32 -31 -31 -30 -31 -31 -31 -30 -30 -30 -29 -27 -25 -27 -29 -31 -33 -34 -34 -34 -33 -32 -33 -35 -35 -34 -34 -36 -36 -36 -35 -34 -33 -33 -34 -34 -34 -35 -36 -37 -37 -36 -36 -36 -36 -35 -31 -29 -30 -32 -33 -31 -29 -28 -28 -29 -29 -29 -29 -30 -31 -32 -33 -34 -30 -27 -27 -28 -31 -33 -33 -33 -33 -33 -34 -35 -35 -35 -35 -35 -36 -38 -39 -40 -39 -36 -34 -32 -34 -36 -38 -40 -41 -40 -39 -38 -37 -38 -40 -42 -42 -41 -40 -37 -33 -26 -15 -9 -13 -23 -34 -38 -34 -25 -17 -15 -17 -21 -27 -35 -38 -38 -37 -37 -39 -40 -39 -37 -35 -32 -30 -29 -29 -29 -29 -31 -31 -31 -31 -32 -33 -33 -31 -25 -21 -22 -26 -31 -33 -36 -37 -38 -38 -38 -39 -40 -40 -41 -41 -40 -39 -38 -38 -40 -41 -41 -40 -38 -37 -36 -36 -36 -36 -36 -34 -30 -28 -27 -27 -30 -36 -44 -49 -52 -52 -51 -53 -55 -58 -61 -63 -64 -63 -61 -58 -54 -50 -47 -45 -44 -45 -45 -44 -43 -42 -41 -41 -43 -45 -46 -47 -48 -48 -48 -45 -41 -37 -36 -37 -39 -41 -43 -45 -46 -46 -43 -40 -37 -36 -37 -38 -40 -43 -45 -46 -45 -43 -40 -38 -35 -33 -31 -32 -33 -34 -34 -32 -30 -30 -30 -30 -30 -29 -29 -29 -29 -27 -25 -23 -22 -22 -22 -22 -23 -24 -30 -39 -47 -53 -54 -52 -55 -60 -64 -64 -63 -63 -64 -68 -73 -76 -76 -72 -63 -56 -52 -51 -52 -51 -52 -54 -57 -59 -61 -62 -62 -58 -53 -50 -4 -5 -6 -7 -7 -7 -6 -6 -6 -6 -6 -6 -7 -8 -8 -9 -11 -13 -16 -17 -16 -13 -9 -7 -7 -9 -12 -15 -16 -17 -18 -20 -21 -21 -22 -23 -24 -25 -25 -24 -21 -18 -18 -20 -23 -24 -23 -22 -20 -19 -19 -20 -23 -25 -27 -28 -29 -29 -30 -30 -31 -31 -30 -29 -27 -27 -27 -28 -28 -28 -28 -29 -30 -31 -32 -31 -29 -27 -26 -25 -26 -27 -28 -30 -30 -30 -29 -29 -29 -28 -27 -27 -27 -28 -29 -30 -32 -33 -34 -34 -34 -33 -32 -31 -31 -31 -30 -31 -32 -35 -37 -38 -37 -35 -33 -31 -31 -31 -31 -31 -31 -30 -30 -30 -28 -26 -26 -28 -30 -32 -33 -34 -33 -32 -31 -33 -34 -34 -35 -35 -36 -37 -37 -36 -34 -33 -33 -33 -34 -35 -35 -36 -37 -37 -36 -36 -36 -37 -37 -34 -31 -29 -30 -31 -30 -28 -26 -26 -27 -28 -28 -28 -29 -30 -32 -33 -35 -34 -30 -28 -28 -30 -32 -33 -33 -33 -33 -33 -34 -35 -34 -33 -33 -33 -35 -37 -39 -39 -38 -36 -34 -34 -35 -36 -37 -38 -40 -40 -39 -38 -38 -39 -42 -44 -44 -42 -37 -28 -16 -9 -11 -18 -26 -34 -37 -33 -28 -25 -28 -26 -25 -28 -34 -38 -38 -38 -39 -40 -41 -40 -38 -36 -33 -31 -29 -27 -24 -25 -29 -31 -31 -30 -29 -30 -32 -32 -30 -25 -24 -25 -29 -33 -36 -37 -38 -37 -37 -38 -39 -40 -40 -40 -40 -39 -37 -37 -39 -40 -41 -40 -37 -36 -35 -34 -34 -35 -36 -35 -32 -28 -26 -25 -27 -33 -41 -48 -52 -52 -52 -53 -55 -57 -59 -62 -63 -62 -61 -59 -56 -52 -49 -46 -45 -46 -46 -45 -44 -42 -41 -41 -42 -44 -45 -46 -46 -47 -47 -45 -42 -38 -36 -36 -38 -40 -42 -44 -46 -47 -45 -41 -37 -35 -36 -37 -39 -42 -45 -47 -48 -46 -43 -39 -36 -34 -32 -31 -31 -32 -32 -31 -30 -30 -30 -29 -30 -30 -30 -29 -29 -28 -26 -24 -22 -22 -22 -22 -22 -23 -28 -36 -44 -51 -53 -52 -54 -58 -63 -62 -62 -62 -64 -67 -72 -76 -77 -73 -64 -56 -51 -50 -50 -51 -52 -54 -56 -58 -59 -61 -62 -59 -54 -50 -8 -8 -9 -8 -7 -6 -5 -5 -6 -5 -5 -4 -5 -6 -8 -10 -12 -15 -17 -17 -15 -12 -8 -7 -8 -11 -13 -15 -15 -15 -16 -18 -20 -21 -22 -23 -24 -26 -27 -26 -23 -20 -19 -20 -23 -24 -24 -23 -21 -19 -18 -21 -23 -26 -27 -28 -28 -28 -28 -29 -31 -32 -32 -32 -29 -28 -28 -28 -28 -28 -28 -28 -28 -29 -31 -33 -33 -32 -31 -30 -30 -30 -31 -30 -28 -27 -27 -27 -27 -26 -25 -25 -26 -27 -28 -29 -31 -33 -35 -35 -35 -34 -33 -31 -30 -30 -29 -29 -31 -33 -37 -40 -40 -37 -34 -32 -31 -31 -32 -32 -32 -31 -31 -31 -30 -28 -27 -28 -29 -31 -32 -32 -32 -32 -31 -31 -32 -33 -34 -34 -35 -36 -36 -36 -34 -33 -33 -33 -34 -34 -35 -36 -36 -36 -35 -35 -36 -37 -38 -36 -33 -30 -29 -30 -29 -27 -25 -24 -26 -28 -29 -29 -29 -30 -31 -33 -34 -35 -33 -30 -28 -28 -31 -33 -33 -33 -32 -32 -33 -33 -33 -32 -32 -31 -31 -33 -36 -37 -38 -37 -36 -35 -34 -35 -35 -36 -38 -39 -40 -40 -39 -39 -41 -43 -43 -39 -31 -19 -9 -12 -23 -31 -35 -36 -36 -37 -36 -35 -33 -31 -31 -33 -34 -36 -38 -39 -40 -41 -40 -39 -38 -36 -33 -29 -24 -20 -18 -23 -28 -31 -31 -30 -29 -29 -30 -32 -33 -31 -28 -26 -27 -31 -34 -37 -38 -38 -38 -38 -39 -39 -39 -40 -40 -38 -37 -36 -38 -39 -40 -39 -37 -35 -33 -33 -33 -34 -35 -35 -34 -29 -25 -23 -24 -29 -38 -45 -50 -52 -52 -52 -53 -55 -58 -60 -62 -62 -61 -59 -57 -55 -51 -48 -46 -46 -47 -47 -46 -43 -41 -40 -40 -42 -43 -44 -44 -45 -46 -46 -44 -40 -37 -37 -37 -39 -41 -43 -45 -47 -47 -44 -38 -36 -35 -37 -38 -41 -44 -47 -49 -48 -45 -42 -38 -36 -33 -31 -31 -31 -31 -30 -30 -30 -29 -30 -29 -29 -29 -29 -29 -28 -26 -24 -22 -21 -21 -22 -22 -23 -27 -34 -43 -50 -52 -52 -53 -57 -61 -61 -60 -60 -62 -66 -71 -76 -79 -75 -65 -56 -51 -49 -49 -50 -51 -53 -55 -57 -59 -61 -62 -59 -54 -51 -9 -9 -9 -8 -7 -5 -5 -5 -5 -6 -6 -7 -7 -9 -11 -13 -15 -16 -18 -17 -14 -11 -9 -9 -10 -12 -14 -14 -14 -15 -16 -17 -18 -20 -21 -22 -22 -24 -25 -25 -23 -21 -21 -22 -23 -24 -24 -22 -20 -19 -19 -21 -23 -25 -26 -25 -25 -25 -26 -27 -29 -31 -33 -33 -31 -29 -29 -29 -28 -28 -28 -28 -28 -29 -31 -32 -32 -33 -33 -34 -34 -33 -31 -29 -28 -26 -25 -25 -25 -25 -25 -25 -24 -25 -26 -28 -31 -33 -35 -36 -36 -36 -34 -32 -31 -30 -29 -29 -30 -32 -35 -39 -40 -38 -35 -33 -32 -32 -32 -33 -33 -33 -33 -33 -32 -30 -28 -28 -29 -30 -31 -32 -32 -31 -30 -29 -29 -29 -31 -32 -34 -35 -35 -35 -34 -34 -34 -34 -34 -34 -35 -35 -36 -35 -34 -34 -35 -37 -38 -38 -35 -32 -30 -29 -29 -27 -24 -22 -23 -25 -27 -29 -29 -30 -31 -32 -33 -35 -35 -34 -31 -30 -31 -33 -33 -32 -31 -31 -31 -33 -33 -33 -31 -30 -29 -30 -33 -36 -37 -37 -36 -36 -35 -34 -34 -35 -36 -38 -40 -41 -41 -40 -40 -40 -38 -32 -25 -19 -15 -18 -25 -31 -35 -35 -36 -37 -37 -35 -32 -31 -30 -31 -32 -35 -38 -40 -42 -42 -40 -38 -38 -36 -32 -24 -18 -15 -18 -26 -31 -32 -31 -30 -29 -29 -30 -33 -35 -35 -32 -29 -27 -29 -32 -35 -37 -37 -38 -38 -39 -39 -39 -40 -40 -39 -37 -36 -37 -38 -39 -39 -38 -36 -35 -33 -32 -32 -33 -34 -34 -31 -26 -23 -23 -27 -35 -42 -48 -51 -51 -51 -52 -53 -55 -58 -60 -62 -62 -61 -59 -57 -54 -50 -47 -47 -47 -48 -47 -45 -42 -40 -39 -40 -41 -42 -42 -44 -45 -47 -46 -43 -39 -38 -38 -39 -40 -41 -44 -47 -49 -46 -40 -36 -34 -35 -37 -39 -42 -45 -48 -49 -47 -44 -40 -37 -35 -33 -31 -30 -29 -29 -29 -29 -29 -29 -28 -28 -28 -28 -28 -28 -27 -25 -22 -20 -20 -21 -22 -22 -26 -32 -41 -48 -51 -52 -53 -55 -59 -59 -58 -58 -61 -65 -71 -76 -79 -76 -66 -57 -51 -48 -47 -48 -50 -52 -54 -57 -59 -61 -62 -60 -55 -51 -9 -10 -11 -10 -8 -7 -7 -6 -6 -7 -9 -10 -10 -11 -14 -16 -17 -18 -17 -16 -14 -12 -11 -11 -12 -14 -15 -15 -15 -15 -16 -16 -16 -18 -20 -21 -21 -21 -22 -21 -20 -18 -20 -22 -23 -24 -24 -22 -20 -19 -18 -20 -21 -23 -23 -23 -23 -23 -24 -25 -26 -28 -30 -31 -31 -30 -30 -30 -29 -28 -27 -26 -26 -27 -28 -28 -30 -32 -33 -34 -34 -34 -33 -32 -29 -26 -23 -22 -22 -24 -25 -25 -24 -24 -25 -27 -30 -32 -35 -36 -37 -37 -36 -35 -34 -32 -31 -30 -31 -32 -34 -37 -39 -38 -36 -34 -33 -33 -33 -33 -34 -34 -34 -35 -34 -32 -29 -28 -29 -30 -31 -32 -32 -31 -29 -26 -25 -25 -27 -30 -32 -34 -34 -34 -34 -34 -34 -34 -34 -34 -34 -34 -34 -34 -33 -33 -34 -35 -37 -38 -37 -34 -31 -30 -29 -27 -24 -20 -20 -22 -25 -27 -28 -30 -31 -32 -33 -35 -37 -37 -36 -33 -32 -32 -32 -31 -29 -29 -29 -31 -32 -32 -31 -31 -31 -30 -31 -33 -35 -36 -37 -36 -35 -34 -34 -34 -36 -37 -39 -42 -42 -41 -39 -37 -33 -30 -29 -30 -32 -33 -33 -33 -33 -34 -36 -36 -36 -34 -33 -32 -31 -30 -30 -34 -37 -40 -42 -42 -40 -39 -38 -37 -31 -22 -17 -16 -20 -27 -31 -33 -32 -30 -30 -30 -31 -33 -35 -36 -35 -32 -28 -27 -29 -32 -34 -35 -36 -37 -39 -39 -39 -40 -40 -40 -38 -37 -37 -37 -38 -38 -39 -38 -37 -35 -32 -31 -31 -32 -34 -33 -29 -25 -24 -26 -32 -39 -45 -49 -50 -51 -51 -51 -52 -55 -58 -61 -62 -62 -61 -59 -56 -52 -49 -48 -48 -48 -48 -46 -44 -41 -39 -39 -39 -40 -41 -42 -44 -46 -47 -46 -42 -40 -39 -38 -38 -40 -43 -47 -50 -48 -42 -37 -34 -34 -35 -37 -40 -43 -46 -48 -49 -46 -42 -39 -37 -34 -32 -30 -29 -28 -28 -28 -29 -29 -28 -27 -26 -27 -27 -27 -27 -25 -22 -20 -19 -20 -21 -22 -25 -31 -40 -47 -51 -52 -52 -53 -57 -58 -58 -57 -60 -64 -70 -75 -79 -75 -67 -59 -52 -47 -46 -47 -48 -50 -53 -56 -58 -60 -62 -61 -57 -52 -12 -13 -13 -12 -10 -8 -7 -7 -7 -8 -10 -12 -13 -13 -15 -18 -19 -19 -17 -15 -15 -15 -15 -15 -15 -16 -17 -18 -17 -17 -16 -15 -15 -17 -19 -20 -21 -21 -20 -19 -18 -18 -20 -22 -23 -23 -24 -23 -22 -21 -21 -24 -26 -27 -27 -26 -25 -25 -25 -25 -25 -25 -26 -27 -28 -29 -30 -30 -29 -29 -28 -27 -26 -26 -26 -27 -29 -31 -32 -32 -32 -32 -33 -33 -31 -27 -24 -21 -22 -22 -23 -23 -23 -23 -25 -27 -30 -32 -34 -36 -38 -38 -38 -37 -36 -34 -33 -32 -32 -33 -33 -35 -38 -39 -39 -37 -35 -34 -34 -34 -35 -34 -35 -36 -35 -34 -31 -29 -29 -30 -31 -32 -32 -30 -28 -25 -23 -23 -25 -28 -31 -32 -33 -34 -34 -34 -34 -34 -33 -33 -33 -33 -33 -33 -33 -33 -33 -33 -36 -37 -37 -36 -33 -32 -31 -29 -26 -21 -19 -20 -22 -24 -26 -28 -30 -32 -33 -35 -37 -38 -38 -35 -33 -32 -31 -31 -31 -29 -29 -30 -31 -33 -34 -33 -31 -28 -28 -30 -33 -36 -37 -37 -37 -36 -34 -34 -35 -37 -39 -42 -41 -39 -34 -30 -29 -32 -36 -40 -42 -41 -38 -35 -33 -33 -35 -36 -37 -37 -36 -36 -34 -32 -31 -33 -36 -39 -42 -42 -41 -40 -39 -37 -30 -24 -22 -23 -26 -29 -32 -33 -33 -31 -30 -30 -31 -32 -35 -36 -36 -34 -30 -27 -27 -28 -29 -31 -33 -36 -38 -39 -39 -39 -40 -40 -40 -38 -37 -37 -37 -38 -39 -40 -40 -38 -34 -32 -31 -31 -32 -33 -32 -28 -24 -25 -30 -37 -44 -47 -49 -50 -50 -50 -51 -53 -56 -59 -62 -63 -62 -61 -58 -55 -51 -50 -49 -49 -49 -48 -45 -42 -39 -39 -38 -39 -39 -41 -43 -46 -48 -48 -44 -41 -39 -37 -38 -40 -43 -46 -49 -49 -44 -38 -34 -33 -34 -36 -38 -41 -44 -47 -48 -47 -43 -40 -37 -35 -33 -31 -30 -28 -28 -27 -28 -28 -27 -26 -25 -25 -25 -26 -26 -25 -22 -19 -18 -18 -20 -21 -24 -30 -39 -46 -50 -52 -52 -52 -55 -57 -57 -57 -59 -63 -69 -74 -78 -74 -69 -62 -54 -47 -45 -46 -47 -49 -52 -55 -57 -59 -61 -61 -59 -55 -14 -15 -14 -12 -10 -7 -6 -6 -7 -8 -11 -13 -15 -16 -17 -19 -20 -20 -18 -17 -18 -19 -19 -19 -18 -17 -17 -18 -17 -15 -13 -13 -14 -16 -18 -20 -20 -20 -20 -19 -19 -19 -21 -23 -24 -25 -26 -26 -26 -25 -26 -28 -30 -30 -30 -29 -27 -26 -25 -24 -24 -24 -24 -24 -26 -27 -28 -29 -29 -29 -29 -28 -26 -24 -23 -25 -28 -30 -31 -30 -30 -31 -32 -33 -32 -30 -27 -24 -23 -22 -20 -19 -20 -21 -24 -27 -30 -32 -34 -37 -38 -39 -39 -38 -37 -36 -34 -33 -33 -32 -32 -33 -36 -39 -40 -39 -37 -35 -34 -34 -35 -35 -36 -36 -37 -36 -33 -30 -29 -29 -31 -32 -32 -30 -27 -25 -24 -23 -23 -26 -28 -30 -32 -33 -33 -34 -34 -34 -34 -34 -33 -33 -33 -33 -33 -33 -32 -32 -34 -36 -36 -36 -34 -34 -33 -32 -29 -24 -20 -19 -20 -22 -24 -26 -29 -31 -33 -35 -37 -38 -38 -37 -34 -32 -31 -31 -31 -31 -31 -31 -31 -33 -33 -33 -31 -29 -29 -29 -32 -35 -37 -37 -36 -36 -35 -35 -36 -38 -40 -40 -36 -30 -25 -24 -28 -35 -41 -44 -44 -44 -41 -38 -34 -33 -35 -36 -38 -38 -38 -37 -35 -31 -28 -28 -31 -36 -40 -41 -42 -43 -41 -37 -29 -25 -25 -30 -34 -34 -33 -33 -33 -32 -31 -30 -30 -31 -33 -35 -35 -35 -34 -30 -26 -25 -26 -28 -31 -34 -36 -38 -38 -38 -40 -41 -41 -39 -38 -37 -37 -37 -38 -40 -42 -41 -38 -35 -32 -31 -31 -33 -33 -31 -27 -26 -30 -36 -42 -46 -48 -50 -50 -49 -49 -52 -55 -58 -61 -62 -63 -62 -60 -57 -55 -52 -51 -50 -50 -49 -46 -43 -40 -39 -38 -38 -38 -39 -41 -44 -47 -49 -46 -43 -39 -37 -37 -40 -43 -46 -49 -50 -45 -39 -35 -33 -34 -35 -36 -39 -42 -46 -47 -47 -44 -41 -38 -35 -34 -32 -31 -29 -28 -27 -27 -27 -26 -25 -24 -24 -25 -25 -25 -24 -22 -19 -17 -17 -19 -20 -23 -28 -37 -45 -49 -52 -53 -52 -54 -56 -57 -57 -59 -63 -68 -73 -77 -77 -73 -66 -56 -48 -45 -45 -46 -48 -50 -53 -55 -58 -60 -61 -60 -58 -17 -15 -13 -11 -9 -8 -8 -8 -9 -10 -12 -14 -16 -18 -18 -20 -20 -20 -20 -21 -23 -23 -22 -20 -18 -17 -16 -15 -15 -14 -14 -14 -16 -18 -20 -20 -19 -18 -18 -19 -20 -20 -21 -22 -24 -26 -28 -28 -27 -27 -27 -29 -30 -30 -30 -29 -27 -25 -24 -24 -24 -24 -24 -25 -26 -28 -28 -28 -28 -27 -28 -28 -26 -23 -22 -23 -25 -27 -29 -29 -30 -30 -31 -32 -32 -31 -29 -26 -24 -20 -18 -16 -16 -18 -22 -25 -29 -32 -34 -36 -37 -38 -39 -39 -38 -37 -35 -34 -32 -31 -31 -32 -35 -39 -41 -42 -39 -36 -34 -34 -35 -36 -36 -37 -37 -37 -34 -31 -28 -28 -30 -32 -32 -30 -28 -25 -23 -22 -21 -22 -25 -28 -30 -32 -33 -34 -33 -33 -33 -33 -33 -33 -33 -33 -34 -34 -33 -32 -33 -35 -35 -35 -34 -34 -35 -35 -33 -28 -23 -20 -20 -20 -21 -24 -27 -30 -32 -34 -36 -38 -38 -37 -35 -33 -31 -31 -31 -32 -32 -32 -32 -32 -32 -33 -32 -31 -31 -30 -31 -32 -35 -36 -36 -35 -34 -34 -36 -38 -40 -38 -29 -19 -15 -21 -31 -37 -42 -44 -45 -45 -44 -41 -37 -34 -34 -35 -37 -38 -38 -35 -33 -30 -28 -28 -30 -32 -34 -37 -41 -43 -44 -42 -36 -29 -28 -32 -38 -37 -35 -33 -32 -32 -31 -31 -30 -31 -32 -33 -34 -35 -34 -32 -29 -26 -25 -27 -30 -32 -33 -34 -36 -38 -40 -41 -41 -40 -38 -37 -37 -36 -37 -39 -42 -44 -42 -38 -35 -32 -31 -32 -34 -34 -31 -29 -30 -34 -40 -45 -48 -49 -49 -48 -48 -49 -52 -56 -59 -61 -63 -63 -62 -61 -59 -56 -54 -52 -51 -50 -48 -44 -41 -39 -38 -37 -38 -38 -40 -42 -46 -49 -48 -45 -40 -37 -38 -40 -43 -46 -49 -50 -47 -42 -37 -35 -34 -35 -36 -38 -41 -44 -47 -48 -46 -43 -39 -36 -35 -34 -33 -31 -29 -27 -27 -26 -25 -24 -24 -23 -24 -24 -24 -23 -22 -20 -18 -17 -18 -19 -22 -27 -36 -43 -48 -51 -53 -53 -54 -55 -56 -57 -59 -62 -67 -73 -78 -80 -78 -69 -57 -49 -45 -44 -45 -47 -49 -52 -54 -57 -59 -61 -61 -59 -20 -16 -12 -11 -11 -10 -10 -11 -11 -12 -14 -16 -17 -18 -18 -18 -19 -19 -20 -22 -24 -24 -22 -19 -16 -14 -14 -14 -14 -14 -14 -16 -18 -20 -21 -21 -20 -18 -18 -18 -19 -19 -19 -22 -24 -27 -29 -29 -28 -28 -28 -28 -29 -29 -28 -27 -26 -25 -25 -25 -24 -24 -24 -26 -28 -29 -29 -27 -26 -25 -26 -27 -26 -24 -22 -21 -22 -23 -26 -28 -29 -30 -31 -31 -30 -29 -27 -25 -21 -19 -17 -16 -15 -15 -19 -22 -25 -28 -32 -34 -35 -36 -37 -37 -38 -37 -36 -34 -32 -31 -30 -31 -34 -37 -41 -44 -43 -39 -35 -34 -34 -35 -36 -37 -37 -37 -35 -31 -28 -27 -29 -32 -33 -32 -30 -28 -25 -22 -19 -19 -22 -26 -29 -32 -33 -33 -32 -32 -32 -33 -33 -33 -34 -34 -34 -33 -33 -33 -33 -34 -35 -36 -35 -34 -35 -36 -35 -31 -25 -21 -20 -20 -21 -22 -25 -28 -31 -33 -34 -36 -37 -37 -36 -35 -33 -31 -31 -32 -33 -33 -32 -31 -31 -32 -33 -33 -32 -31 -30 -31 -33 -35 -36 -35 -34 -34 -35 -37 -38 -37 -32 -26 -24 -28 -32 -37 -40 -42 -43 -45 -45 -43 -38 -34 -32 -32 -34 -36 -36 -34 -32 -31 -31 -30 -28 -27 -29 -34 -40 -44 -45 -44 -38 -31 -28 -33 -40 -41 -39 -35 -35 -36 -35 -34 -33 -33 -33 -33 -33 -33 -33 -32 -30 -28 -26 -27 -28 -29 -29 -31 -34 -37 -40 -41 -42 -41 -40 -38 -37 -36 -36 -37 -41 -44 -43 -41 -38 -34 -33 -32 -33 -35 -35 -32 -30 -33 -38 -44 -47 -49 -49 -46 -45 -46 -49 -54 -58 -61 -63 -65 -65 -64 -63 -60 -56 -54 -53 -51 -49 -45 -41 -39 -38 -37 -37 -38 -39 -41 -44 -48 -49 -47 -43 -39 -39 -40 -43 -46 -50 -51 -50 -46 -41 -37 -35 -35 -35 -36 -40 -43 -46 -48 -47 -44 -41 -38 -35 -35 -34 -32 -30 -28 -27 -26 -24 -23 -23 -22 -22 -23 -23 -22 -21 -19 -18 -18 -18 -18 -20 -25 -33 -41 -46 -50 -53 -53 -54 -54 -55 -57 -59 -62 -66 -72 -80 -84 -81 -72 -59 -50 -45 -43 -43 -45 -48 -51 -54 -56 -58 -59 -60 -59 -21 -17 -16 -16 -15 -14 -13 -13 -14 -14 -14 -15 -17 -17 -17 -16 -16 -16 -17 -19 -20 -20 -18 -15 -13 -12 -12 -13 -14 -14 -14 -15 -17 -19 -20 -20 -20 -19 -19 -19 -19 -19 -20 -22 -25 -28 -30 -29 -29 -29 -29 -28 -28 -27 -27 -26 -26 -26 -25 -25 -24 -24 -25 -27 -30 -31 -30 -28 -25 -23 -24 -25 -26 -26 -24 -21 -20 -20 -22 -25 -27 -28 -28 -28 -28 -26 -23 -20 -18 -18 -19 -19 -17 -16 -16 -17 -19 -22 -28 -31 -33 -33 -34 -36 -37 -37 -37 -35 -33 -31 -30 -30 -32 -35 -40 -44 -45 -42 -38 -34 -34 -35 -36 -36 -37 -37 -35 -32 -29 -27 -29 -32 -33 -33 -32 -31 -28 -23 -19 -17 -20 -23 -27 -30 -32 -32 -32 -31 -31 -32 -32 -33 -33 -33 -33 -33 -33 -34 -34 -35 -36 -35 -35 -34 -34 -35 -36 -34 -29 -23 -19 -19 -19 -20 -23 -26 -29 -31 -32 -33 -34 -36 -37 -37 -36 -33 -32 -32 -33 -33 -32 -30 -29 -30 -31 -33 -33 -32 -31 -30 -31 -33 -35 -35 -34 -35 -35 -36 -36 -36 -37 -38 -37 -34 -33 -35 -38 -41 -41 -43 -44 -44 -41 -35 -31 -30 -31 -34 -35 -34 -34 -33 -32 -29 -26 -25 -27 -33 -39 -43 -45 -43 -36 -31 -29 -34 -41 -43 -42 -40 -39 -39 -38 -36 -35 -36 -36 -35 -33 -32 -32 -32 -31 -30 -29 -28 -28 -28 -27 -29 -33 -36 -39 -41 -41 -41 -41 -39 -38 -36 -36 -36 -39 -43 -44 -42 -40 -38 -35 -34 -33 -34 -36 -34 -32 -31 -35 -41 -46 -48 -49 -47 -45 -45 -48 -53 -58 -61 -64 -66 -67 -67 -65 -62 -58 -56 -54 -52 -50 -46 -42 -39 -38 -37 -37 -37 -38 -40 -42 -46 -49 -50 -47 -43 -41 -41 -43 -46 -50 -52 -52 -49 -44 -38 -36 -34 -34 -35 -38 -42 -45 -47 -47 -45 -42 -39 -36 -35 -34 -32 -31 -29 -27 -26 -24 -22 -21 -21 -20 -21 -21 -20 -19 -18 -18 -18 -18 -18 -20 -24 -31 -38 -44 -48 -51 -53 -54 -54 -55 -57 -59 -62 -65 -73 -81 -85 -83 -74 -62 -53 -46 -42 -41 -43 -46 -50 -53 -56 -57 -58 -58 -59 -21 -21 -22 -22 -20 -17 -16 -15 -16 -15 -14 -14 -15 -16 -16 -15 -14 -14 -14 -15 -15 -15 -14 -12 -11 -11 -11 -12 -12 -13 -14 -14 -16 -17 -18 -18 -19 -20 -21 -21 -21 -21 -23 -25 -28 -30 -30 -29 -29 -29 -28 -27 -26 -26 -26 -27 -27 -26 -26 -25 -24 -24 -25 -28 -32 -33 -32 -30 -27 -25 -23 -24 -25 -26 -26 -24 -21 -19 -19 -21 -23 -24 -25 -25 -25 -23 -20 -18 -17 -19 -20 -20 -18 -15 -13 -13 -15 -18 -24 -29 -31 -32 -32 -34 -36 -37 -38 -37 -34 -32 -31 -30 -31 -33 -36 -41 -45 -45 -41 -36 -33 -34 -35 -36 -36 -36 -35 -33 -31 -30 -30 -32 -33 -34 -34 -33 -30 -26 -21 -18 -18 -21 -24 -28 -31 -32 -33 -32 -31 -31 -31 -32 -32 -32 -33 -33 -34 -34 -35 -36 -36 -35 -34 -33 -33 -34 -35 -35 -32 -26 -21 -19 -19 -20 -21 -23 -26 -29 -30 -31 -32 -35 -37 -39 -38 -35 -33 -32 -33 -33 -32 -29 -27 -27 -29 -31 -32 -32 -31 -30 -30 -31 -33 -34 -35 -35 -35 -36 -36 -37 -39 -41 -41 -37 -34 -34 -36 -39 -41 -43 -45 -47 -45 -39 -32 -28 -28 -30 -32 -33 -33 -32 -28 -25 -24 -25 -28 -33 -38 -41 -41 -36 -31 -30 -33 -39 -42 -44 -44 -43 -42 -40 -39 -38 -38 -38 -37 -35 -33 -32 -32 -33 -33 -33 -32 -32 -31 -30 -30 -31 -33 -36 -38 -40 -40 -40 -41 -40 -39 -38 -37 -37 -39 -42 -43 -43 -42 -40 -39 -36 -34 -33 -35 -35 -33 -31 -33 -37 -41 -45 -48 -49 -48 -48 -50 -55 -59 -61 -64 -66 -69 -68 -67 -63 -59 -57 -55 -54 -51 -48 -44 -41 -38 -37 -37 -37 -38 -39 -41 -44 -48 -51 -51 -47 -43 -42 -43 -46 -49 -52 -53 -51 -46 -40 -36 -34 -33 -34 -37 -40 -43 -46 -47 -45 -43 -40 -38 -36 -34 -33 -32 -30 -28 -26 -24 -22 -21 -19 -18 -18 -19 -18 -18 -17 -17 -17 -18 -19 -20 -24 -30 -36 -41 -46 -49 -52 -53 -54 -54 -55 -58 -61 -66 -75 -82 -85 -83 -75 -65 -56 -48 -41 -39 -41 -44 -48 -52 -55 -56 -57 -57 -59 -23 -25 -26 -25 -23 -20 -19 -18 -17 -15 -14 -13 -14 -16 -16 -16 -15 -13 -12 -12 -13 -13 -13 -12 -11 -10 -10 -10 -11 -12 -13 -13 -15 -16 -17 -17 -18 -19 -21 -21 -22 -25 -28 -30 -31 -31 -30 -30 -29 -28 -27 -26 -25 -26 -26 -27 -26 -26 -25 -24 -23 -22 -25 -28 -32 -33 -33 -32 -30 -28 -24 -23 -25 -27 -28 -26 -23 -20 -18 -18 -19 -21 -23 -24 -23 -21 -20 -20 -20 -21 -20 -20 -18 -17 -15 -14 -15 -18 -23 -27 -29 -30 -32 -33 -35 -38 -39 -38 -35 -33 -31 -30 -30 -31 -33 -37 -43 -45 -43 -38 -33 -33 -34 -35 -36 -35 -34 -33 -32 -31 -31 -32 -33 -34 -35 -34 -32 -28 -24 -20 -18 -20 -23 -27 -30 -32 -33 -33 -32 -31 -31 -31 -32 -32 -32 -33 -33 -34 -35 -36 -36 -35 -34 -33 -32 -33 -33 -34 -33 -30 -26 -23 -22 -22 -23 -24 -25 -26 -28 -29 -30 -33 -36 -38 -39 -37 -34 -32 -32 -32 -31 -29 -28 -27 -28 -29 -30 -31 -31 -29 -28 -29 -31 -33 -34 -35 -36 -36 -36 -37 -39 -41 -42 -38 -34 -33 -34 -37 -39 -42 -44 -46 -47 -44 -39 -34 -30 -29 -28 -27 -26 -25 -23 -23 -24 -26 -28 -32 -35 -36 -33 -26 -25 -31 -40 -45 -45 -45 -45 -45 -44 -41 -39 -38 -39 -40 -40 -38 -36 -35 -35 -35 -34 -34 -34 -35 -35 -35 -35 -35 -35 -36 -37 -39 -38 -39 -40 -41 -40 -39 -39 -39 -40 -41 -41 -41 -42 -43 -42 -41 -37 -34 -34 -35 -35 -33 -33 -35 -38 -41 -45 -50 -51 -51 -53 -56 -59 -61 -64 -66 -69 -68 -66 -63 -59 -57 -56 -55 -54 -50 -46 -42 -39 -37 -37 -37 -37 -38 -39 -42 -46 -50 -52 -50 -45 -43 -44 -47 -49 -52 -53 -53 -48 -43 -39 -36 -34 -34 -35 -38 -41 -44 -46 -45 -44 -42 -39 -37 -35 -34 -33 -32 -30 -28 -26 -23 -21 -18 -17 -16 -17 -17 -16 -16 -15 -16 -17 -19 -20 -24 -30 -35 -39 -42 -46 -50 -52 -52 -52 -53 -56 -61 -68 -75 -80 -83 -82 -76 -67 -59 -50 -41 -38 -39 -42 -46 -51 -54 -56 -57 -58 -60 -28 -28 -27 -25 -23 -21 -19 -17 -15 -14 -13 -13 -14 -16 -18 -18 -16 -14 -12 -12 -13 -14 -14 -13 -11 -10 -9 -9 -10 -11 -11 -13 -15 -17 -18 -18 -18 -19 -20 -21 -23 -27 -31 -33 -32 -31 -31 -30 -29 -27 -26 -25 -24 -24 -23 -23 -23 -24 -24 -23 -21 -21 -23 -26 -30 -32 -33 -33 -31 -29 -25 -24 -25 -27 -28 -27 -25 -22 -19 -17 -18 -20 -22 -23 -22 -20 -20 -20 -20 -20 -20 -20 -19 -19 -20 -21 -22 -23 -24 -25 -27 -29 -31 -33 -35 -37 -39 -39 -36 -33 -31 -30 -30 -30 -31 -34 -39 -43 -44 -41 -35 -32 -33 -35 -35 -35 -34 -33 -32 -32 -32 -33 -34 -35 -36 -36 -33 -29 -25 -20 -18 -19 -21 -25 -28 -31 -32 -33 -33 -32 -32 -33 -33 -33 -32 -32 -32 -32 -33 -35 -35 -35 -34 -33 -32 -32 -32 -33 -34 -33 -32 -30 -28 -27 -26 -26 -26 -26 -27 -29 -30 -32 -35 -37 -39 -37 -35 -33 -32 -31 -30 -30 -29 -28 -27 -27 -28 -29 -30 -29 -28 -28 -29 -31 -33 -35 -36 -36 -35 -35 -37 -39 -40 -39 -36 -34 -33 -35 -37 -40 -43 -45 -46 -46 -43 -39 -34 -31 -27 -25 -24 -23 -23 -24 -26 -26 -25 -27 -30 -30 -24 -18 -23 -34 -45 -48 -47 -45 -45 -45 -45 -43 -41 -39 -40 -42 -41 -39 -37 -36 -37 -37 -35 -34 -34 -36 -38 -39 -40 -39 -37 -36 -37 -38 -37 -37 -38 -39 -40 -40 -40 -40 -40 -40 -40 -41 -42 -44 -45 -45 -42 -39 -35 -35 -35 -36 -35 -36 -37 -39 -44 -50 -53 -53 -52 -52 -56 -61 -65 -67 -68 -68 -66 -63 -60 -58 -57 -57 -56 -52 -48 -44 -40 -37 -37 -37 -37 -37 -38 -41 -44 -48 -52 -50 -47 -45 -44 -47 -49 -51 -53 -54 -50 -46 -43 -39 -37 -35 -35 -36 -39 -42 -44 -45 -44 -44 -41 -38 -37 -36 -35 -33 -31 -29 -27 -24 -22 -19 -17 -15 -15 -15 -15 -14 -14 -15 -16 -18 -20 -24 -30 -34 -37 -39 -43 -47 -50 -51 -50 -51 -55 -61 -68 -74 -79 -81 -80 -76 -69 -60 -51 -43 -38 -37 -39 -44 -49 -53 -56 -58 -59 -60 -31 -28 -25 -22 -20 -17 -15 -13 -12 -11 -11 -11 -13 -16 -18 -18 -16 -14 -12 -12 -14 -15 -15 -14 -12 -10 -9 -9 -10 -11 -11 -13 -15 -18 -19 -20 -20 -20 -20 -22 -24 -28 -31 -31 -30 -29 -28 -27 -25 -24 -22 -20 -20 -20 -20 -21 -22 -23 -23 -22 -22 -22 -24 -26 -28 -31 -31 -30 -29 -26 -24 -24 -24 -26 -27 -26 -25 -23 -21 -18 -18 -19 -21 -21 -20 -19 -19 -20 -20 -19 -18 -19 -20 -22 -24 -26 -27 -26 -25 -25 -25 -27 -29 -31 -34 -36 -39 -39 -37 -35 -32 -31 -30 -30 -31 -33 -36 -40 -43 -42 -37 -33 -32 -34 -35 -35 -34 -33 -32 -32 -33 -34 -34 -34 -35 -36 -34 -31 -26 -21 -18 -17 -19 -23 -26 -28 -30 -32 -33 -34 -34 -34 -34 -34 -33 -31 -30 -31 -32 -34 -35 -34 -34 -34 -33 -33 -33 -34 -35 -36 -37 -35 -32 -30 -28 -27 -27 -28 -29 -30 -30 -32 -34 -36 -38 -38 -37 -35 -33 -31 -30 -30 -30 -29 -28 -27 -27 -28 -29 -30 -29 -28 -28 -29 -31 -33 -35 -35 -35 -34 -34 -36 -38 -39 -38 -36 -35 -34 -35 -38 -41 -43 -44 -45 -45 -43 -39 -34 -29 -24 -21 -21 -23 -26 -30 -33 -32 -30 -28 -25 -19 -18 -26 -36 -46 -48 -47 -45 -44 -44 -45 -45 -43 -41 -41 -42 -41 -39 -37 -37 -38 -39 -38 -36 -35 -36 -38 -40 -41 -39 -37 -35 -35 -37 -37 -36 -37 -37 -39 -39 -40 -40 -41 -41 -41 -41 -42 -44 -46 -46 -46 -45 -41 -37 -35 -36 -36 -36 -37 -40 -44 -50 -53 -53 -49 -45 -49 -56 -63 -67 -68 -68 -67 -65 -62 -60 -59 -59 -57 -54 -51 -46 -42 -38 -37 -36 -36 -37 -38 -40 -43 -46 -49 -50 -48 -46 -45 -47 -49 -51 -53 -54 -52 -49 -46 -43 -40 -37 -36 -36 -37 -40 -41 -43 -45 -45 -42 -40 -38 -37 -36 -35 -33 -31 -28 -26 -24 -21 -19 -17 -16 -15 -15 -14 -13 -14 -15 -17 -20 -24 -30 -34 -37 -37 -40 -43 -47 -48 -47 -49 -53 -60 -67 -73 -78 -80 -79 -75 -69 -62 -54 -47 -39 -35 -35 -41 -47 -52 -56 -60 -61 -62 -27 -23 -20 -17 -14 -12 -10 -9 -8 -9 -8 -9 -11 -14 -16 -15 -13 -11 -10 -12 -14 -16 -16 -14 -11 -10 -10 -12 -13 -14 -15 -16 -18 -20 -21 -22 -22 -21 -21 -22 -25 -28 -29 -28 -27 -25 -24 -24 -23 -21 -19 -16 -16 -16 -18 -19 -21 -21 -21 -20 -21 -22 -24 -25 -27 -28 -28 -26 -25 -23 -23 -23 -24 -24 -24 -24 -24 -23 -22 -21 -20 -19 -19 -18 -17 -18 -19 -21 -21 -20 -19 -20 -21 -23 -26 -28 -30 -29 -27 -26 -26 -27 -27 -29 -31 -34 -38 -39 -38 -36 -34 -33 -32 -31 -32 -32 -34 -38 -41 -43 -40 -34 -32 -33 -34 -35 -33 -32 -31 -32 -33 -34 -34 -34 -35 -35 -34 -32 -28 -22 -19 -17 -18 -21 -25 -27 -29 -30 -32 -33 -33 -34 -34 -34 -33 -31 -30 -30 -32 -33 -34 -34 -35 -35 -34 -34 -34 -34 -34 -36 -37 -37 -35 -31 -28 -27 -26 -27 -29 -30 -30 -30 -32 -34 -36 -37 -37 -36 -34 -32 -30 -30 -30 -30 -30 -29 -27 -27 -29 -30 -30 -28 -26 -26 -28 -31 -33 -34 -34 -33 -32 -32 -35 -39 -41 -40 -38 -34 -34 -35 -38 -39 -40 -41 -43 -44 -42 -37 -30 -24 -21 -21 -24 -27 -31 -34 -33 -31 -25 -16 -7 -16 -30 -41 -46 -47 -46 -45 -43 -43 -45 -46 -45 -44 -43 -42 -41 -39 -37 -37 -39 -42 -42 -40 -37 -36 -36 -39 -40 -40 -38 -36 -34 -35 -35 -35 -35 -36 -37 -38 -39 -40 -41 -42 -42 -42 -43 -44 -45 -47 -48 -48 -46 -43 -38 -36 -37 -36 -37 -40 -45 -49 -52 -53 -50 -43 -42 -47 -57 -65 -67 -68 -67 -66 -65 -63 -62 -60 -59 -56 -53 -49 -44 -40 -38 -36 -36 -36 -38 -40 -42 -44 -46 -49 -49 -47 -45 -46 -48 -51 -53 -54 -53 -51 -49 -47 -44 -41 -38 -37 -36 -38 -39 -42 -43 -44 -42 -40 -39 -38 -37 -35 -34 -32 -30 -28 -25 -23 -20 -18 -17 -16 -15 -14 -13 -13 -14 -16 -19 -24 -29 -34 -37 -37 -38 -40 -44 -45 -46 -48 -53 -58 -65 -72 -77 -80 -79 -75 -70 -64 -57 -50 -41 -35 -34 -40 -46 -51 -56 -61 -63 -63 -18 -13 -11 -10 -8 -7 -6 -6 -6 -6 -6 -8 -10 -12 -14 -14 -12 -11 -10 -11 -13 -14 -14 -13 -12 -11 -12 -14 -15 -16 -17 -19 -20 -21 -22 -23 -22 -21 -21 -22 -24 -27 -28 -27 -25 -23 -22 -22 -22 -20 -17 -15 -14 -15 -16 -18 -18 -18 -18 -19 -19 -21 -23 -24 -25 -25 -24 -22 -21 -21 -22 -23 -23 -23 -22 -21 -22 -22 -23 -23 -21 -19 -18 -17 -17 -17 -19 -21 -22 -21 -21 -21 -22 -24 -27 -30 -32 -33 -30 -28 -27 -27 -25 -27 -29 -33 -37 -39 -39 -38 -37 -35 -33 -33 -33 -33 -34 -36 -40 -43 -42 -37 -33 -32 -33 -34 -33 -32 -31 -31 -32 -33 -34 -34 -34 -34 -34 -32 -29 -25 -20 -17 -17 -18 -22 -25 -27 -28 -28 -28 -29 -30 -32 -33 -32 -31 -30 -31 -32 -33 -33 -34 -34 -35 -35 -35 -35 -35 -35 -35 -36 -38 -37 -34 -30 -26 -25 -25 -26 -27 -27 -28 -29 -31 -33 -34 -35 -36 -35 -33 -31 -31 -31 -32 -32 -31 -29 -28 -28 -30 -31 -30 -27 -24 -26 -28 -31 -33 -34 -33 -31 -30 -31 -37 -41 -42 -39 -36 -33 -33 -34 -35 -36 -38 -40 -42 -42 -38 -32 -26 -23 -23 -25 -28 -31 -34 -34 -31 -23 -13 -5 -14 -28 -40 -45 -45 -45 -44 -43 -43 -44 -45 -46 -46 -46 -44 -42 -39 -36 -37 -40 -43 -44 -43 -39 -37 -36 -37 -39 -40 -39 -37 -35 -34 -34 -34 -34 -35 -35 -36 -37 -38 -41 -42 -43 -43 -43 -44 -45 -46 -48 -48 -48 -46 -43 -38 -38 -37 -37 -38 -43 -46 -49 -53 -55 -49 -41 -40 -47 -58 -64 -67 -67 -67 -67 -67 -65 -62 -60 -58 -55 -52 -47 -43 -40 -38 -37 -36 -37 -39 -41 -43 -45 -47 -49 -48 -46 -47 -48 -50 -53 -54 -54 -53 -51 -50 -48 -45 -42 -39 -37 -36 -38 -40 -41 -42 -41 -40 -39 -38 -37 -36 -34 -32 -31 -29 -26 -24 -21 -20 -19 -18 -17 -15 -14 -13 -13 -15 -18 -23 -28 -34 -36 -36 -36 -37 -41 -43 -45 -48 -52 -57 -64 -70 -75 -79 -79 -75 -70 -64 -59 -52 -43 -36 -34 -39 -44 -50 -55 -61 -64 -64 -8 -7 -7 -6 -5 -4 -4 -3 -3 -4 -5 -8 -10 -13 -15 -15 -13 -12 -12 -13 -14 -15 -15 -14 -13 -12 -13 -15 -16 -17 -18 -20 -21 -22 -23 -23 -22 -21 -21 -22 -23 -25 -26 -25 -23 -22 -21 -22 -22 -21 -18 -16 -15 -16 -16 -15 -15 -15 -16 -17 -19 -20 -21 -22 -23 -22 -21 -21 -20 -20 -22 -23 -23 -23 -21 -20 -21 -22 -24 -24 -23 -21 -19 -18 -18 -19 -19 -19 -20 -21 -22 -23 -24 -25 -28 -30 -33 -34 -32 -30 -28 -26 -24 -24 -27 -32 -36 -38 -39 -39 -38 -37 -35 -35 -34 -34 -34 -35 -38 -42 -43 -39 -34 -32 -31 -33 -33 -32 -31 -31 -32 -33 -34 -34 -34 -34 -34 -33 -31 -27 -22 -18 -16 -16 -20 -23 -25 -26 -24 -24 -24 -26 -29 -31 -32 -32 -32 -32 -32 -32 -32 -33 -34 -35 -35 -35 -35 -36 -36 -36 -36 -36 -37 -37 -34 -28 -25 -24 -24 -23 -23 -25 -27 -28 -29 -30 -31 -33 -34 -34 -33 -32 -32 -33 -33 -32 -30 -28 -28 -29 -31 -31 -30 -27 -26 -26 -28 -31 -33 -33 -33 -31 -31 -33 -37 -40 -40 -37 -34 -33 -33 -33 -34 -35 -37 -39 -40 -38 -35 -31 -28 -25 -25 -27 -30 -34 -33 -27 -18 -9 -8 -16 -28 -38 -44 -45 -45 -45 -45 -45 -45 -45 -45 -45 -46 -45 -42 -39 -37 -38 -40 -42 -43 -43 -41 -39 -38 -37 -38 -39 -40 -40 -38 -36 -33 -32 -33 -35 -35 -35 -35 -37 -40 -43 -44 -45 -44 -45 -45 -46 -46 -47 -48 -47 -45 -42 -39 -39 -39 -36 -37 -41 -45 -51 -55 -53 -46 -40 -40 -50 -60 -65 -67 -68 -69 -68 -67 -64 -62 -59 -57 -54 -50 -46 -42 -39 -38 -37 -38 -39 -41 -43 -45 -48 -49 -49 -48 -48 -49 -50 -52 -54 -54 -53 -52 -51 -50 -48 -46 -42 -38 -36 -36 -37 -38 -39 -40 -40 -40 -39 -37 -36 -35 -33 -31 -29 -27 -24 -22 -21 -20 -19 -18 -16 -15 -14 -14 -15 -18 -22 -28 -34 -36 -35 -34 -34 -38 -42 -44 -47 -51 -57 -63 -68 -73 -76 -76 -73 -68 -63 -59 -53 -45 -37 -34 -38 -43 -48 -53 -59 -63 -65 -6 -6 -4 -3 -2 -2 -2 -2 -2 -3 -5 -7 -10 -13 -15 -15 -15 -15 -14 -14 -15 -15 -14 -13 -13 -13 -13 -14 -15 -17 -18 -20 -21 -22 -23 -23 -22 -21 -21 -21 -22 -23 -24 -23 -22 -21 -21 -22 -22 -21 -19 -18 -17 -16 -15 -14 -14 -15 -15 -17 -18 -20 -21 -21 -21 -21 -21 -20 -20 -20 -22 -24 -25 -24 -22 -21 -21 -23 -25 -26 -25 -24 -23 -21 -20 -19 -19 -18 -19 -21 -24 -26 -27 -28 -30 -32 -34 -35 -34 -31 -28 -24 -20 -20 -23 -28 -33 -36 -38 -39 -39 -38 -37 -36 -36 -36 -35 -35 -37 -40 -44 -41 -36 -32 -31 -32 -33 -33 -32 -31 -31 -32 -33 -34 -35 -34 -34 -33 -32 -30 -26 -21 -18 -17 -19 -22 -23 -24 -22 -21 -22 -24 -27 -29 -31 -32 -33 -33 -33 -32 -32 -32 -33 -34 -35 -35 -35 -36 -36 -36 -35 -35 -36 -38 -38 -36 -30 -26 -23 -23 -23 -23 -24 -24 -25 -26 -28 -30 -33 -33 -33 -33 -33 -34 -33 -32 -30 -29 -28 -29 -30 -32 -32 -31 -29 -26 -26 -28 -32 -33 -33 -33 -31 -31 -34 -38 -40 -38 -36 -34 -34 -34 -35 -36 -36 -38 -39 -40 -39 -37 -34 -28 -23 -23 -26 -31 -27 -18 -11 -12 -20 -27 -33 -38 -42 -44 -45 -46 -46 -46 -45 -44 -43 -43 -44 -44 -42 -40 -39 -40 -40 -40 -40 -41 -41 -42 -41 -40 -39 -40 -41 -42 -40 -38 -35 -33 -33 -34 -35 -35 -35 -36 -39 -42 -45 -46 -46 -46 -46 -46 -45 -46 -46 -47 -47 -45 -42 -41 -40 -37 -34 -36 -40 -45 -51 -55 -54 -49 -44 -49 -57 -63 -65 -66 -68 -69 -68 -66 -63 -60 -58 -55 -52 -48 -45 -42 -40 -38 -38 -39 -41 -43 -46 -48 -50 -51 -49 -50 -50 -51 -52 -53 -54 -53 -52 -50 -50 -50 -48 -45 -40 -37 -36 -35 -36 -38 -38 -39 -39 -39 -38 -37 -36 -34 -32 -30 -27 -25 -23 -22 -22 -21 -19 -17 -16 -14 -14 -15 -18 -22 -28 -33 -35 -34 -33 -32 -36 -39 -43 -46 -50 -55 -62 -67 -72 -74 -72 -68 -65 -62 -60 -55 -48 -40 -36 -37 -42 -47 -52 -57 -62 -65 -4 -3 -1 1 1 0 -1 -1 -2 -3 -5 -8 -10 -13 -14 -16 -16 -16 -15 -14 -15 -14 -14 -12 -12 -12 -12 -13 -14 -16 -18 -20 -21 -22 -22 -22 -22 -22 -22 -22 -23 -24 -24 -23 -22 -21 -22 -23 -22 -22 -21 -20 -19 -17 -15 -14 -15 -16 -16 -17 -18 -19 -20 -20 -20 -21 -21 -20 -20 -20 -22 -25 -26 -26 -23 -21 -21 -22 -24 -26 -27 -27 -27 -25 -23 -22 -21 -19 -18 -20 -22 -26 -28 -29 -31 -33 -35 -36 -35 -32 -27 -21 -17 -17 -21 -26 -30 -32 -35 -37 -38 -38 -37 -37 -37 -37 -36 -36 -36 -38 -42 -42 -38 -33 -31 -32 -32 -33 -32 -31 -31 -32 -33 -34 -35 -34 -33 -33 -33 -33 -30 -26 -22 -18 -19 -20 -21 -22 -22 -22 -22 -24 -26 -28 -30 -31 -33 -34 -33 -33 -32 -32 -33 -34 -34 -34 -34 -35 -35 -35 -35 -34 -35 -36 -38 -39 -35 -30 -26 -24 -24 -24 -23 -22 -20 -21 -24 -28 -30 -31 -32 -33 -34 -34 -33 -32 -30 -29 -29 -29 -30 -31 -33 -33 -31 -29 -27 -27 -30 -32 -33 -33 -32 -30 -31 -34 -38 -38 -36 -35 -34 -34 -35 -35 -36 -37 -40 -42 -43 -43 -42 -33 -24 -20 -22 -27 -18 -8 -4 -16 -31 -36 -37 -36 -39 -42 -44 -46 -46 -46 -45 -44 -43 -43 -43 -43 -42 -40 -40 -41 -41 -40 -39 -39 -41 -42 -43 -43 -41 -41 -41 -42 -41 -40 -38 -36 -35 -35 -36 -36 -36 -37 -39 -41 -44 -46 -47 -47 -47 -46 -45 -45 -45 -46 -47 -47 -46 -44 -41 -39 -34 -32 -34 -39 -46 -52 -54 -55 -56 -59 -61 -62 -62 -64 -67 -68 -69 -68 -65 -61 -58 -55 -53 -50 -48 -45 -42 -41 -40 -40 -40 -42 -45 -48 -50 -51 -51 -51 -51 -52 -52 -54 -54 -53 -52 -51 -50 -51 -50 -48 -44 -39 -36 -34 -35 -37 -37 -38 -39 -38 -37 -36 -35 -34 -33 -31 -29 -26 -24 -23 -22 -21 -20 -19 -17 -15 -14 -16 -19 -23 -28 -33 -34 -33 -31 -30 -33 -37 -41 -45 -48 -53 -60 -67 -73 -73 -69 -65 -62 -62 -61 -57 -52 -45 -40 -39 -41 -46 -51 -56 -61 -65 -2 0 2 3 3 1 -1 -2 -3 -5 -6 -8 -10 -12 -13 -15 -16 -16 -16 -15 -14 -14 -13 -11 -10 -10 -11 -12 -14 -16 -18 -20 -22 -22 -21 -21 -21 -21 -23 -24 -25 -25 -25 -24 -23 -23 -23 -23 -22 -22 -21 -20 -18 -17 -16 -16 -15 -15 -15 -16 -16 -18 -18 -19 -19 -20 -20 -20 -20 -21 -23 -25 -26 -27 -25 -23 -23 -23 -24 -25 -26 -28 -28 -28 -27 -25 -23 -20 -17 -18 -21 -24 -27 -29 -31 -32 -34 -36 -35 -33 -29 -23 -20 -20 -22 -25 -27 -29 -30 -32 -34 -35 -36 -36 -36 -37 -37 -36 -36 -37 -40 -42 -40 -35 -31 -30 -31 -32 -32 -32 -31 -31 -32 -33 -34 -34 -33 -33 -33 -34 -34 -31 -27 -22 -19 -19 -20 -22 -23 -23 -24 -25 -25 -26 -28 -30 -32 -33 -34 -33 -33 -33 -33 -33 -34 -34 -34 -34 -34 -34 -34 -33 -33 -34 -36 -38 -37 -33 -29 -25 -23 -21 -20 -19 -18 -20 -22 -25 -27 -28 -30 -32 -33 -34 -32 -32 -31 -30 -30 -29 -30 -30 -32 -33 -33 -31 -29 -28 -29 -31 -32 -33 -33 -31 -31 -32 -35 -36 -36 -34 -33 -31 -31 -31 -32 -33 -35 -37 -39 -42 -43 -39 -32 -26 -24 -23 -14 -5 -2 -14 -30 -36 -36 -35 -36 -38 -42 -44 -46 -46 -45 -44 -43 -43 -43 -43 -42 -41 -40 -41 -41 -40 -39 -39 -40 -42 -43 -43 -42 -42 -41 -42 -41 -41 -40 -40 -39 -38 -38 -38 -38 -38 -39 -41 -43 -45 -47 -48 -48 -47 -46 -44 -44 -45 -47 -49 -49 -47 -43 -40 -35 -31 -29 -31 -40 -47 -51 -54 -57 -59 -61 -61 -61 -63 -65 -67 -68 -68 -66 -63 -60 -56 -55 -53 -51 -48 -44 -42 -41 -41 -40 -42 -44 -47 -50 -51 -51 -52 -52 -53 -54 -55 -55 -54 -53 -51 -51 -52 -52 -51 -47 -43 -38 -36 -36 -37 -37 -38 -38 -38 -37 -35 -34 -34 -32 -31 -29 -27 -25 -23 -22 -21 -21 -20 -18 -16 -15 -17 -20 -24 -30 -34 -33 -31 -29 -28 -31 -35 -40 -44 -46 -51 -59 -67 -74 -73 -69 -64 -61 -62 -62 -60 -57 -52 -46 -42 -42 -45 -50 -54 -60 -65 1 2 4 4 2 0 -2 -4 -5 -7 -8 -9 -10 -11 -12 -14 -16 -17 -17 -16 -14 -13 -12 -10 -10 -10 -11 -12 -14 -16 -19 -21 -22 -20 -19 -19 -21 -22 -24 -26 -26 -27 -27 -26 -26 -26 -25 -24 -23 -22 -21 -20 -19 -17 -17 -16 -16 -16 -16 -15 -16 -16 -17 -18 -19 -20 -21 -21 -21 -22 -23 -25 -26 -27 -27 -27 -26 -25 -24 -23 -23 -24 -25 -27 -27 -26 -26 -24 -22 -20 -20 -22 -25 -27 -29 -30 -32 -34 -34 -33 -30 -27 -24 -23 -23 -24 -25 -26 -27 -29 -30 -32 -33 -34 -35 -36 -37 -37 -36 -36 -37 -40 -40 -37 -33 -30 -30 -30 -31 -32 -32 -31 -31 -32 -33 -33 -33 -32 -32 -34 -35 -35 -34 -29 -25 -23 -22 -23 -25 -26 -26 -26 -26 -26 -27 -28 -31 -33 -34 -34 -33 -33 -33 -34 -34 -34 -35 -34 -34 -34 -34 -33 -33 -33 -34 -35 -37 -36 -32 -28 -24 -22 -21 -21 -19 -19 -20 -23 -25 -26 -28 -30 -32 -32 -32 -31 -30 -30 -29 -28 -28 -29 -30 -32 -33 -33 -32 -31 -30 -30 -31 -32 -33 -33 -32 -31 -32 -34 -35 -34 -33 -30 -27 -27 -28 -29 -30 -33 -36 -40 -42 -39 -34 -29 -26 -23 -14 -3 2 -9 -25 -33 -35 -34 -33 -34 -38 -43 -46 -46 -45 -44 -43 -45 -45 -44 -42 -41 -41 -41 -41 -41 -41 -41 -41 -41 -42 -42 -42 -41 -41 -41 -40 -40 -41 -43 -43 -42 -40 -39 -38 -39 -40 -40 -41 -43 -45 -47 -48 -47 -47 -45 -44 -45 -47 -49 -50 -49 -46 -42 -37 -31 -26 -25 -33 -41 -48 -53 -57 -60 -62 -63 -63 -62 -63 -65 -67 -68 -68 -65 -62 -59 -57 -56 -54 -51 -47 -44 -42 -41 -40 -41 -44 -46 -48 -49 -51 -52 -53 -54 -55 -55 -56 -55 -54 -53 -53 -53 -54 -53 -50 -46 -42 -39 -38 -38 -38 -38 -39 -38 -36 -35 -33 -33 -32 -30 -29 -27 -25 -23 -22 -21 -21 -20 -19 -17 -16 -17 -21 -26 -31 -35 -33 -30 -28 -27 -29 -34 -39 -43 -45 -50 -57 -67 -74 -74 -69 -64 -62 -63 -64 -63 -61 -57 -51 -46 -44 -45 -50 -54 -59 -64 2 2 3 2 0 -2 -5 -6 -8 -9 -10 -10 -10 -11 -12 -14 -16 -18 -18 -17 -16 -14 -12 -11 -10 -11 -13 -15 -17 -18 -20 -21 -21 -19 -19 -19 -21 -22 -24 -26 -27 -28 -28 -28 -29 -28 -27 -25 -24 -23 -21 -20 -19 -18 -18 -17 -17 -16 -15 -15 -15 -15 -16 -17 -19 -20 -21 -22 -23 -23 -24 -25 -25 -26 -28 -30 -29 -28 -26 -23 -22 -21 -22 -23 -24 -26 -28 -29 -28 -26 -24 -22 -22 -23 -24 -26 -28 -30 -32 -32 -32 -30 -27 -25 -24 -23 -24 -25 -25 -27 -28 -29 -30 -32 -34 -35 -37 -37 -37 -37 -37 -38 -39 -38 -35 -32 -30 -30 -30 -31 -31 -31 -31 -31 -32 -33 -33 -32 -31 -32 -34 -35 -35 -34 -30 -27 -25 -24 -25 -26 -27 -28 -27 -26 -27 -28 -29 -31 -33 -34 -34 -33 -33 -34 -34 -34 -35 -35 -35 -35 -35 -34 -34 -33 -33 -34 -35 -36 -34 -30 -27 -26 -25 -24 -21 -19 -19 -20 -22 -23 -26 -28 -30 -31 -31 -31 -30 -29 -28 -28 -28 -29 -30 -31 -32 -33 -33 -33 -32 -31 -30 -30 -32 -32 -32 -30 -30 -31 -33 -34 -34 -30 -26 -24 -25 -28 -30 -32 -33 -35 -38 -38 -36 -33 -31 -26 -15 -3 3 -8 -23 -33 -38 -39 -37 -35 -38 -42 -46 -46 -46 -44 -44 -46 -47 -46 -44 -42 -41 -42 -42 -43 -43 -42 -41 -41 -41 -42 -42 -42 -42 -41 -39 -39 -41 -44 -46 -46 -43 -40 -39 -40 -40 -41 -40 -41 -43 -44 -46 -47 -47 -46 -45 -45 -46 -48 -50 -50 -48 -45 -40 -34 -27 -23 -27 -34 -42 -49 -55 -60 -63 -65 -66 -64 -64 -65 -67 -68 -69 -68 -66 -63 -60 -58 -56 -53 -49 -45 -43 -41 -41 -42 -43 -45 -47 -48 -49 -50 -52 -54 -56 -56 -56 -56 -56 -54 -54 -54 -55 -55 -53 -50 -46 -43 -41 -40 -39 -39 -39 -39 -37 -34 -33 -32 -31 -30 -29 -28 -26 -25 -23 -22 -22 -21 -20 -18 -16 -18 -21 -27 -33 -36 -35 -31 -27 -26 -29 -32 -37 -42 -44 -49 -56 -66 -74 -74 -70 -64 -62 -63 -65 -65 -63 -59 -54 -50 -48 -47 -50 -54 -59 -63 -0 0 0 -1 -2 -5 -7 -9 -10 -11 -11 -11 -10 -11 -12 -15 -17 -19 -20 -19 -17 -16 -14 -13 -12 -13 -15 -18 -20 -21 -21 -21 -20 -19 -19 -20 -21 -22 -24 -26 -28 -29 -30 -30 -31 -30 -27 -25 -23 -22 -22 -21 -20 -19 -18 -17 -17 -16 -15 -15 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -24 -24 -25 -27 -30 -32 -31 -30 -28 -26 -24 -22 -20 -19 -21 -24 -27 -30 -31 -30 -27 -24 -21 -19 -20 -21 -23 -25 -27 -30 -31 -31 -28 -26 -25 -24 -23 -24 -25 -26 -27 -27 -28 -29 -32 -34 -36 -38 -38 -38 -37 -37 -37 -37 -36 -34 -32 -31 -30 -30 -30 -31 -31 -31 -32 -33 -33 -33 -31 -31 -32 -33 -34 -35 -33 -31 -28 -26 -26 -27 -29 -29 -29 -27 -26 -26 -27 -29 -30 -32 -33 -33 -33 -33 -34 -34 -34 -34 -35 -36 -37 -36 -35 -35 -35 -34 -35 -35 -34 -32 -30 -29 -29 -27 -23 -20 -18 -18 -19 -22 -24 -26 -28 -29 -30 -31 -30 -29 -28 -28 -28 -29 -29 -30 -31 -32 -34 -34 -34 -32 -31 -29 -30 -31 -31 -30 -28 -28 -30 -32 -33 -31 -27 -23 -22 -27 -30 -31 -31 -32 -34 -37 -38 -38 -37 -31 -20 -7 -1 -12 -25 -32 -36 -38 -41 -41 -41 -41 -44 -46 -46 -45 -45 -46 -47 -46 -44 -42 -42 -42 -43 -44 -44 -43 -43 -42 -41 -41 -42 -42 -42 -41 -40 -39 -39 -43 -47 -48 -45 -41 -40 -40 -41 -41 -40 -39 -40 -41 -42 -44 -45 -45 -45 -45 -45 -46 -48 -49 -49 -47 -44 -39 -31 -24 -23 -28 -36 -45 -52 -58 -62 -65 -66 -66 -66 -67 -67 -68 -69 -69 -69 -65 -62 -60 -58 -56 -52 -47 -44 -42 -41 -42 -43 -44 -46 -47 -48 -49 -50 -54 -56 -57 -57 -56 -56 -55 -54 -54 -55 -56 -54 -52 -49 -46 -43 -41 -41 -40 -40 -40 -38 -35 -33 -31 -30 -29 -28 -28 -27 -26 -24 -23 -22 -21 -20 -18 -17 -18 -22 -28 -35 -39 -38 -34 -28 -27 -28 -31 -36 -40 -43 -47 -53 -64 -73 -74 -70 -64 -62 -63 -65 -66 -65 -60 -56 -52 -50 -49 -51 -55 -59 -61 -2 -2 -3 -3 -5 -7 -9 -11 -12 -12 -11 -11 -11 -11 -13 -15 -18 -20 -20 -20 -19 -18 -16 -15 -14 -15 -17 -20 -23 -23 -23 -21 -20 -19 -21 -22 -23 -24 -24 -26 -28 -30 -31 -31 -31 -30 -27 -24 -22 -21 -20 -20 -19 -18 -17 -16 -15 -15 -15 -15 -16 -17 -18 -19 -20 -20 -21 -22 -23 -23 -23 -24 -25 -28 -32 -33 -32 -31 -29 -29 -28 -25 -22 -19 -19 -22 -25 -27 -28 -29 -29 -26 -23 -19 -18 -17 -18 -18 -21 -25 -28 -29 -29 -27 -26 -25 -24 -24 -25 -27 -28 -28 -27 -28 -30 -33 -36 -37 -38 -39 -38 -37 -36 -36 -36 -35 -34 -32 -31 -30 -30 -31 -31 -32 -33 -34 -35 -34 -33 -31 -30 -31 -33 -34 -34 -33 -31 -29 -28 -28 -28 -28 -28 -27 -25 -24 -24 -25 -27 -29 -31 -32 -33 -33 -34 -34 -34 -35 -35 -36 -37 -37 -37 -37 -36 -36 -35 -34 -34 -33 -32 -31 -30 -29 -26 -22 -19 -18 -18 -21 -23 -24 -25 -27 -29 -30 -30 -30 -28 -28 -28 -28 -29 -30 -31 -32 -34 -35 -35 -34 -32 -30 -30 -31 -31 -31 -29 -27 -28 -29 -30 -30 -26 -22 -19 -21 -26 -29 -30 -31 -34 -37 -39 -40 -39 -37 -25 -11 2 -6 -20 -29 -33 -35 -39 -40 -39 -39 -42 -46 -47 -47 -46 -47 -46 -45 -44 -43 -42 -43 -43 -44 -45 -44 -43 -43 -42 -41 -42 -42 -42 -42 -41 -40 -40 -41 -46 -48 -47 -44 -42 -42 -42 -42 -41 -39 -38 -38 -39 -40 -42 -44 -45 -45 -45 -45 -46 -49 -50 -49 -47 -42 -35 -26 -23 -26 -33 -41 -49 -55 -59 -63 -66 -68 -69 -69 -68 -68 -68 -69 -69 -68 -65 -63 -60 -58 -54 -50 -46 -43 -42 -43 -43 -44 -45 -46 -47 -48 -49 -52 -55 -57 -57 -57 -56 -54 -54 -55 -56 -56 -55 -54 -51 -48 -45 -43 -42 -42 -42 -41 -39 -36 -34 -32 -30 -29 -28 -27 -27 -26 -25 -24 -23 -22 -20 -18 -17 -18 -22 -28 -36 -41 -41 -37 -30 -27 -27 -30 -35 -39 -42 -45 -50 -60 -69 -72 -69 -63 -61 -62 -65 -66 -67 -62 -57 -52 -49 -50 -53 -56 -59 -60 -4 -4 -4 -4 -5 -7 -10 -11 -12 -12 -11 -11 -11 -12 -14 -16 -18 -20 -20 -20 -20 -18 -17 -17 -16 -16 -18 -21 -23 -24 -24 -23 -22 -21 -23 -25 -26 -26 -26 -26 -28 -30 -31 -32 -32 -30 -27 -23 -20 -17 -16 -16 -16 -16 -15 -15 -15 -15 -16 -16 -17 -17 -18 -20 -21 -21 -22 -22 -22 -22 -22 -24 -27 -30 -32 -33 -33 -32 -30 -30 -30 -30 -28 -25 -23 -23 -23 -23 -24 -27 -28 -29 -27 -24 -20 -17 -14 -13 -15 -19 -24 -27 -28 -28 -27 -26 -25 -25 -26 -27 -29 -31 -28 -28 -29 -33 -35 -36 -37 -38 -38 -37 -36 -35 -35 -35 -34 -33 -33 -31 -31 -30 -31 -32 -33 -34 -35 -36 -34 -31 -29 -29 -30 -32 -33 -33 -33 -31 -30 -29 -28 -28 -27 -26 -25 -24 -23 -25 -26 -28 -29 -30 -31 -32 -33 -34 -34 -35 -36 -37 -37 -37 -37 -37 -37 -37 -36 -35 -35 -35 -34 -33 -32 -32 -31 -27 -23 -20 -20 -21 -22 -22 -23 -25 -27 -29 -30 -30 -28 -28 -28 -28 -29 -30 -31 -32 -34 -35 -35 -34 -32 -29 -29 -29 -30 -32 -32 -30 -28 -26 -26 -27 -26 -23 -19 -18 -21 -24 -28 -32 -36 -39 -39 -38 -38 -38 -30 -17 -2 -6 -18 -28 -32 -34 -37 -38 -38 -38 -41 -44 -45 -45 -44 -44 -44 -44 -44 -44 -43 -43 -43 -45 -46 -45 -44 -43 -42 -42 -42 -42 -42 -42 -41 -41 -40 -40 -42 -45 -48 -48 -47 -46 -45 -44 -43 -40 -38 -36 -36 -37 -40 -43 -45 -45 -44 -44 -45 -47 -49 -50 -49 -45 -38 -31 -28 -29 -34 -39 -46 -51 -56 -60 -64 -68 -70 -70 -70 -68 -68 -68 -69 -69 -68 -65 -62 -60 -56 -52 -48 -44 -44 -44 -44 -44 -44 -45 -46 -47 -48 -51 -54 -57 -58 -57 -56 -54 -54 -56 -57 -57 -56 -55 -53 -50 -48 -45 -43 -43 -43 -42 -40 -37 -35 -32 -30 -28 -27 -27 -26 -26 -25 -24 -23 -22 -20 -19 -17 -18 -22 -29 -38 -44 -45 -39 -31 -27 -27 -29 -34 -38 -41 -44 -47 -56 -65 -71 -70 -64 -62 -63 -65 -67 -67 -64 -59 -53 -49 -50 -52 -55 -58 -61 -4 -5 -5 -5 -6 -8 -10 -11 -12 -12 -12 -12 -12 -13 -14 -16 -18 -19 -19 -19 -19 -19 -18 -17 -17 -18 -19 -21 -23 -24 -25 -25 -24 -23 -25 -28 -30 -30 -28 -28 -28 -29 -30 -31 -31 -30 -28 -23 -17 -13 -11 -11 -12 -13 -14 -16 -17 -18 -18 -18 -18 -18 -18 -19 -20 -21 -21 -21 -20 -20 -22 -24 -27 -30 -31 -31 -30 -29 -28 -28 -29 -31 -32 -32 -29 -26 -24 -22 -23 -26 -28 -29 -28 -26 -23 -20 -18 -17 -17 -19 -22 -25 -28 -29 -29 -28 -27 -27 -27 -28 -30 -32 -31 -30 -29 -31 -33 -35 -36 -36 -37 -37 -36 -35 -35 -34 -34 -34 -34 -33 -32 -30 -30 -30 -32 -34 -35 -36 -36 -33 -29 -27 -27 -29 -32 -33 -33 -33 -31 -30 -29 -28 -27 -27 -26 -25 -25 -25 -25 -26 -27 -28 -29 -31 -33 -34 -34 -35 -36 -37 -38 -38 -38 -38 -38 -38 -37 -36 -36 -36 -35 -34 -34 -34 -32 -30 -26 -23 -21 -20 -20 -20 -21 -23 -25 -28 -29 -31 -29 -28 -28 -28 -29 -30 -30 -32 -34 -35 -35 -34 -32 -30 -29 -29 -30 -32 -33 -31 -28 -25 -24 -25 -26 -24 -20 -17 -18 -22 -27 -32 -36 -37 -37 -36 -34 -34 -30 -24 -15 -16 -22 -28 -31 -31 -34 -36 -37 -38 -40 -42 -43 -43 -44 -43 -43 -43 -44 -44 -43 -43 -43 -44 -46 -46 -44 -43 -43 -42 -42 -42 -42 -42 -42 -42 -41 -40 -40 -42 -46 -50 -51 -50 -48 -46 -44 -42 -39 -37 -35 -36 -38 -41 -43 -43 -43 -43 -43 -46 -48 -49 -49 -47 -41 -33 -29 -29 -32 -37 -43 -48 -54 -58 -63 -67 -69 -70 -70 -68 -68 -68 -69 -70 -69 -67 -64 -61 -57 -54 -50 -46 -45 -45 -44 -44 -43 -44 -45 -46 -48 -50 -53 -56 -58 -58 -57 -56 -55 -56 -57 -57 -57 -57 -56 -54 -50 -47 -45 -44 -44 -43 -41 -38 -35 -33 -31 -28 -27 -26 -25 -25 -25 -25 -24 -23 -21 -19 -18 -19 -23 -30 -40 -47 -47 -39 -32 -27 -26 -28 -33 -37 -40 -43 -45 -52 -62 -69 -70 -66 -63 -63 -65 -67 -68 -66 -62 -55 -50 -48 -49 -52 -56 -60 -4 -5 -5 -5 -6 -8 -9 -11 -12 -13 -13 -14 -14 -14 -15 -16 -17 -18 -18 -17 -17 -18 -18 -18 -18 -18 -20 -22 -24 -26 -26 -26 -25 -26 -28 -31 -32 -32 -30 -28 -27 -27 -27 -29 -29 -29 -27 -22 -16 -10 -7 -6 -8 -10 -14 -18 -21 -21 -21 -20 -20 -20 -20 -21 -21 -21 -20 -20 -19 -20 -21 -24 -26 -28 -29 -28 -27 -26 -25 -27 -29 -31 -33 -33 -32 -30 -26 -23 -23 -26 -28 -29 -28 -27 -25 -23 -22 -21 -21 -21 -22 -24 -28 -30 -31 -30 -29 -28 -28 -29 -30 -32 -33 -32 -30 -30 -32 -34 -35 -35 -35 -35 -35 -35 -35 -34 -34 -34 -34 -34 -33 -31 -29 -28 -29 -32 -34 -36 -36 -34 -31 -28 -26 -27 -29 -31 -33 -33 -32 -31 -29 -28 -28 -27 -27 -27 -26 -26 -25 -25 -24 -25 -27 -30 -33 -34 -34 -34 -35 -36 -37 -38 -39 -39 -38 -38 -38 -37 -37 -37 -36 -35 -36 -36 -36 -32 -28 -25 -22 -21 -19 -17 -18 -21 -24 -27 -29 -31 -31 -29 -28 -28 -28 -29 -30 -31 -33 -34 -34 -33 -32 -31 -30 -29 -29 -31 -32 -30 -27 -24 -23 -24 -25 -25 -22 -18 -17 -18 -22 -27 -31 -34 -36 -35 -31 -29 -27 -26 -27 -29 -29 -28 -26 -26 -29 -32 -35 -37 -38 -39 -40 -41 -42 -42 -42 -43 -44 -45 -45 -43 -41 -42 -44 -45 -44 -44 -44 -44 -43 -43 -42 -42 -42 -42 -43 -41 -40 -41 -45 -50 -52 -52 -50 -48 -46 -44 -42 -40 -38 -38 -38 -39 -40 -40 -40 -41 -42 -44 -46 -48 -48 -47 -42 -35 -30 -28 -30 -35 -41 -46 -52 -57 -61 -65 -67 -69 -69 -68 -68 -68 -70 -71 -71 -69 -65 -62 -58 -55 -51 -47 -45 -44 -44 -44 -43 -43 -44 -45 -47 -50 -52 -56 -59 -59 -59 -58 -57 -56 -57 -57 -58 -59 -60 -57 -54 -50 -47 -46 -45 -44 -41 -39 -36 -33 -31 -29 -27 -26 -25 -25 -25 -25 -25 -24 -22 -20 -19 -20 -23 -31 -41 -48 -48 -40 -32 -28 -26 -27 -32 -36 -39 -42 -44 -49 -58 -66 -70 -68 -65 -64 -66 -67 -68 -67 -64 -58 -52 -47 -46 -48 -54 -59 -4 -4 -4 -4 -5 -7 -9 -11 -12 -14 -15 -16 -16 -16 -15 -16 -17 -18 -17 -16 -15 -17 -18 -19 -18 -19 -21 -24 -27 -28 -27 -26 -26 -28 -30 -32 -32 -30 -28 -26 -24 -23 -23 -24 -26 -26 -24 -21 -16 -12 -9 -8 -10 -13 -16 -20 -22 -23 -23 -22 -22 -21 -21 -22 -22 -21 -20 -19 -19 -20 -22 -24 -26 -28 -29 -28 -28 -27 -27 -29 -31 -33 -34 -35 -34 -31 -27 -24 -23 -25 -27 -29 -30 -29 -27 -26 -24 -24 -24 -24 -25 -26 -29 -31 -32 -31 -30 -29 -30 -31 -31 -32 -33 -32 -30 -29 -30 -32 -34 -34 -34 -34 -33 -33 -33 -33 -33 -33 -33 -34 -34 -32 -29 -26 -27 -29 -31 -34 -35 -35 -34 -31 -27 -26 -27 -29 -31 -32 -32 -31 -30 -29 -27 -27 -27 -27 -27 -27 -26 -25 -23 -23 -25 -29 -32 -33 -33 -34 -34 -34 -36 -37 -38 -39 -39 -39 -39 -38 -37 -37 -36 -36 -37 -38 -38 -34 -29 -25 -24 -21 -18 -15 -15 -17 -21 -24 -27 -29 -29 -29 -29 -28 -28 -28 -29 -30 -32 -33 -33 -33 -32 -31 -31 -30 -29 -29 -29 -29 -28 -26 -24 -23 -24 -24 -24 -21 -18 -16 -17 -21 -25 -30 -32 -32 -28 -24 -22 -23 -28 -32 -32 -28 -23 -21 -24 -27 -31 -35 -36 -36 -37 -38 -41 -42 -42 -42 -44 -45 -45 -42 -38 -37 -40 -42 -44 -46 -46 -46 -45 -43 -43 -43 -43 -44 -44 -43 -41 -41 -44 -49 -52 -52 -51 -49 -48 -46 -45 -44 -42 -40 -39 -38 -38 -38 -38 -39 -41 -42 -44 -46 -47 -47 -43 -37 -31 -27 -28 -32 -38 -44 -50 -54 -58 -61 -64 -65 -66 -67 -67 -68 -70 -72 -72 -70 -66 -62 -59 -56 -52 -48 -45 -44 -43 -43 -43 -43 -44 -45 -47 -49 -51 -55 -59 -60 -60 -59 -58 -57 -57 -58 -59 -60 -61 -60 -57 -52 -49 -48 -46 -45 -42 -39 -37 -34 -31 -29 -27 -26 -25 -25 -25 -25 -25 -24 -23 -21 -20 -20 -23 -31 -41 -49 -50 -42 -34 -29 -27 -27 -30 -34 -38 -41 -42 -47 -54 -63 -69 -69 -67 -66 -67 -68 -68 -68 -67 -62 -55 -48 -44 -46 -51 -57 -3 -3 -3 -3 -3 -6 -9 -11 -13 -15 -16 -16 -17 -17 -16 -16 -18 -19 -18 -17 -17 -19 -20 -19 -19 -21 -24 -27 -29 -28 -27 -26 -26 -27 -29 -30 -28 -26 -24 -23 -22 -21 -21 -22 -23 -23 -23 -21 -18 -14 -11 -8 -10 -13 -17 -20 -22 -22 -22 -21 -20 -20 -21 -22 -22 -22 -21 -20 -21 -22 -23 -25 -26 -27 -27 -27 -28 -28 -29 -30 -32 -34 -35 -36 -34 -30 -26 -23 -22 -24 -27 -30 -31 -30 -29 -28 -28 -28 -29 -29 -29 -29 -30 -32 -32 -32 -30 -29 -30 -31 -32 -31 -32 -32 -30 -29 -30 -31 -32 -33 -34 -33 -33 -32 -32 -31 -31 -31 -32 -33 -33 -33 -31 -27 -25 -26 -28 -31 -32 -33 -34 -34 -31 -28 -27 -27 -28 -30 -31 -32 -32 -30 -28 -26 -26 -26 -27 -27 -27 -26 -25 -24 -24 -27 -29 -30 -31 -32 -33 -33 -35 -36 -37 -38 -38 -38 -39 -39 -38 -38 -37 -36 -37 -38 -38 -34 -30 -25 -24 -22 -19 -16 -14 -16 -19 -22 -26 -28 -29 -29 -29 -29 -28 -27 -28 -29 -32 -33 -33 -33 -31 -31 -31 -30 -29 -27 -27 -27 -28 -28 -25 -24 -23 -23 -24 -23 -20 -17 -15 -17 -20 -24 -26 -26 -22 -20 -22 -27 -33 -34 -34 -31 -26 -22 -22 -25 -29 -33 -35 -35 -35 -36 -39 -41 -41 -42 -43 -44 -44 -41 -36 -35 -37 -40 -42 -44 -46 -46 -45 -44 -44 -44 -45 -45 -45 -44 -43 -44 -45 -48 -50 -52 -52 -51 -51 -50 -49 -47 -45 -43 -41 -39 -39 -38 -39 -39 -40 -41 -42 -44 -47 -48 -46 -40 -32 -26 -26 -29 -34 -41 -48 -52 -54 -56 -58 -60 -60 -62 -64 -67 -70 -73 -73 -71 -67 -63 -60 -57 -54 -50 -47 -44 -43 -43 -43 -43 -44 -45 -46 -48 -50 -54 -58 -60 -60 -59 -59 -58 -58 -58 -58 -60 -61 -60 -59 -56 -52 -50 -48 -46 -43 -40 -38 -35 -32 -29 -27 -26 -24 -25 -24 -25 -25 -25 -23 -22 -21 -21 -24 -31 -41 -50 -52 -44 -36 -31 -28 -28 -30 -32 -36 -40 -41 -44 -50 -59 -68 -69 -68 -67 -68 -69 -70 -70 -68 -65 -57 -50 -44 -44 -49 -55 -3 -4 -2 -1 -2 -5 -10 -12 -14 -15 -15 -15 -16 -18 -18 -17 -18 -19 -19 -20 -21 -21 -21 -20 -20 -23 -26 -27 -27 -26 -24 -23 -23 -25 -26 -26 -25 -22 -21 -21 -21 -19 -18 -17 -18 -20 -22 -22 -20 -17 -14 -12 -12 -14 -16 -18 -18 -18 -18 -18 -19 -20 -22 -23 -24 -24 -23 -22 -22 -23 -25 -26 -26 -26 -25 -26 -27 -28 -29 -30 -31 -33 -35 -35 -33 -29 -25 -23 -22 -24 -26 -29 -31 -31 -30 -30 -31 -32 -33 -33 -32 -30 -31 -32 -32 -32 -30 -29 -30 -31 -32 -31 -31 -31 -30 -29 -29 -30 -32 -33 -33 -33 -32 -31 -30 -30 -30 -29 -29 -30 -32 -32 -32 -30 -27 -26 -26 -28 -30 -31 -33 -34 -34 -32 -29 -27 -27 -28 -30 -31 -32 -32 -30 -28 -26 -26 -26 -27 -28 -28 -27 -25 -24 -25 -27 -27 -28 -29 -30 -31 -33 -35 -36 -36 -37 -38 -38 -38 -39 -38 -37 -36 -36 -37 -37 -35 -31 -27 -24 -22 -20 -18 -16 -16 -18 -21 -25 -27 -28 -29 -29 -29 -28 -27 -27 -29 -31 -33 -33 -33 -32 -31 -31 -31 -30 -27 -25 -25 -26 -28 -27 -25 -23 -23 -23 -23 -22 -19 -17 -17 -19 -22 -23 -20 -16 -19 -26 -34 -36 -35 -35 -34 -30 -24 -21 -22 -26 -30 -32 -33 -33 -34 -36 -38 -39 -41 -42 -43 -43 -41 -38 -36 -37 -39 -41 -43 -45 -46 -46 -44 -44 -44 -45 -46 -46 -45 -46 -47 -47 -48 -49 -51 -53 -53 -53 -53 -51 -50 -48 -46 -44 -42 -40 -40 -40 -40 -40 -40 -40 -42 -45 -49 -48 -43 -35 -28 -25 -27 -32 -38 -45 -48 -50 -51 -53 -54 -56 -58 -61 -65 -69 -72 -73 -71 -68 -64 -61 -57 -54 -52 -49 -46 -44 -43 -42 -42 -42 -43 -44 -46 -49 -52 -57 -60 -61 -61 -60 -59 -58 -58 -58 -59 -60 -61 -60 -59 -56 -52 -50 -47 -44 -41 -39 -37 -34 -31 -28 -26 -24 -24 -24 -24 -24 -24 -23 -22 -21 -21 -24 -31 -41 -50 -54 -47 -40 -34 -30 -30 -30 -32 -35 -38 -41 -43 -48 -54 -65 -68 -68 -68 -68 -68 -69 -70 -69 -66 -59 -52 -47 -46 -49 -54 -5 -5 -4 -3 -5 -8 -12 -14 -15 -15 -16 -17 -19 -20 -19 -18 -19 -19 -20 -21 -23 -22 -20 -19 -22 -25 -27 -27 -25 -25 -24 -23 -23 -25 -26 -26 -24 -23 -22 -23 -22 -20 -17 -16 -16 -19 -21 -21 -20 -19 -18 -16 -16 -15 -15 -14 -14 -13 -14 -17 -20 -22 -24 -26 -27 -27 -26 -25 -25 -25 -25 -26 -26 -26 -26 -26 -27 -28 -29 -29 -30 -32 -33 -33 -30 -27 -25 -23 -22 -23 -25 -28 -30 -30 -30 -31 -33 -35 -36 -36 -34 -31 -31 -32 -32 -31 -29 -29 -30 -31 -32 -31 -30 -29 -28 -28 -28 -29 -31 -32 -33 -33 -32 -31 -30 -29 -29 -28 -27 -28 -29 -30 -31 -31 -30 -28 -27 -27 -27 -29 -31 -33 -34 -34 -32 -30 -29 -29 -29 -30 -31 -32 -32 -31 -29 -28 -28 -28 -28 -28 -29 -27 -27 -25 -24 -24 -25 -25 -27 -29 -31 -34 -35 -35 -37 -38 -38 -38 -38 -38 -37 -36 -35 -35 -37 -37 -36 -31 -25 -23 -22 -21 -19 -17 -17 -19 -22 -24 -26 -28 -29 -29 -28 -27 -27 -28 -29 -32 -33 -33 -32 -32 -31 -31 -30 -28 -25 -24 -25 -27 -27 -26 -24 -23 -22 -23 -22 -22 -21 -22 -23 -23 -22 -17 -16 -22 -31 -39 -37 -35 -35 -35 -33 -27 -22 -19 -20 -23 -26 -29 -30 -31 -33 -35 -37 -38 -39 -40 -41 -42 -41 -40 -39 -39 -40 -43 -45 -46 -46 -46 -45 -44 -44 -46 -47 -47 -47 -48 -49 -49 -49 -51 -52 -54 -54 -54 -53 -51 -50 -48 -46 -45 -43 -43 -42 -41 -40 -39 -39 -41 -43 -47 -47 -43 -36 -29 -27 -28 -31 -36 -42 -45 -47 -47 -49 -53 -55 -57 -60 -64 -66 -69 -71 -72 -70 -66 -62 -58 -55 -53 -51 -48 -45 -43 -41 -41 -41 -42 -42 -44 -47 -51 -55 -59 -61 -62 -61 -60 -59 -59 -58 -59 -60 -61 -62 -61 -58 -55 -52 -48 -45 -43 -41 -40 -36 -32 -29 -27 -25 -23 -23 -23 -23 -24 -23 -22 -21 -21 -24 -31 -40 -51 -55 -51 -44 -37 -33 -32 -31 -32 -34 -37 -40 -42 -46 -50 -60 -65 -67 -67 -67 -67 -68 -69 -69 -67 -61 -55 -51 -50 -51 -55 -6 -6 -5 -6 -8 -11 -14 -15 -16 -17 -18 -20 -22 -22 -20 -18 -18 -18 -20 -22 -24 -23 -21 -20 -23 -27 -27 -26 -25 -25 -25 -25 -25 -27 -28 -28 -27 -26 -27 -27 -26 -23 -20 -18 -17 -17 -16 -16 -17 -19 -19 -19 -17 -16 -14 -12 -12 -12 -14 -17 -20 -22 -24 -25 -27 -27 -28 -27 -27 -25 -24 -25 -26 -27 -28 -28 -28 -28 -28 -28 -29 -31 -31 -30 -28 -26 -24 -23 -23 -23 -24 -25 -27 -28 -30 -31 -33 -33 -35 -36 -35 -33 -32 -32 -32 -31 -30 -29 -30 -31 -32 -30 -28 -26 -25 -25 -26 -28 -30 -32 -33 -33 -32 -31 -30 -29 -29 -28 -27 -26 -27 -28 -29 -30 -31 -30 -29 -27 -26 -27 -29 -31 -33 -34 -34 -33 -32 -31 -30 -30 -30 -31 -32 -32 -32 -31 -31 -30 -28 -27 -26 -27 -28 -27 -25 -23 -23 -23 -25 -27 -31 -33 -35 -35 -37 -38 -38 -37 -38 -37 -37 -36 -35 -35 -36 -37 -38 -36 -28 -23 -21 -22 -22 -19 -17 -16 -17 -20 -23 -26 -28 -28 -28 -27 -27 -27 -28 -30 -32 -33 -33 -32 -31 -31 -30 -30 -27 -25 -23 -24 -27 -27 -25 -23 -22 -22 -22 -22 -24 -26 -26 -25 -22 -18 -20 -25 -33 -38 -37 -35 -34 -34 -34 -30 -25 -19 -16 -19 -23 -26 -27 -28 -30 -32 -35 -36 -35 -37 -39 -42 -44 -42 -41 -40 -41 -43 -45 -46 -47 -48 -48 -48 -48 -48 -48 -47 -47 -48 -50 -51 -51 -51 -52 -53 -54 -54 -53 -52 -50 -49 -49 -48 -47 -46 -45 -43 -42 -40 -39 -39 -40 -44 -45 -43 -39 -33 -30 -29 -31 -34 -39 -43 -44 -46 -48 -52 -54 -56 -59 -61 -64 -66 -69 -72 -71 -68 -64 -60 -56 -54 -52 -49 -46 -43 -41 -40 -40 -40 -40 -41 -44 -48 -53 -58 -61 -62 -62 -62 -61 -60 -59 -59 -60 -62 -63 -63 -61 -58 -54 -50 -47 -45 -44 -42 -38 -34 -31 -28 -26 -23 -22 -22 -23 -23 -23 -22 -21 -21 -24 -30 -40 -50 -55 -53 -48 -42 -37 -34 -32 -33 -34 -36 -38 -41 -45 -49 -56 -62 -66 -65 -66 -66 -67 -67 -67 -65 -62 -58 -57 -56 -55 -56 -7 -7 -7 -9 -11 -13 -15 -16 -17 -19 -21 -23 -25 -24 -22 -20 -19 -19 -20 -22 -24 -24 -23 -23 -26 -27 -27 -26 -26 -27 -27 -27 -27 -28 -29 -29 -29 -29 -29 -28 -27 -25 -22 -19 -16 -13 -11 -11 -13 -15 -17 -18 -18 -18 -17 -15 -13 -13 -14 -16 -18 -19 -20 -22 -23 -24 -25 -25 -25 -25 -23 -23 -23 -25 -27 -28 -28 -28 -28 -28 -29 -30 -30 -29 -27 -26 -25 -25 -24 -23 -22 -22 -23 -24 -26 -28 -30 -31 -32 -34 -36 -35 -33 -33 -32 -33 -32 -30 -30 -30 -31 -29 -26 -24 -23 -23 -25 -27 -29 -31 -33 -33 -33 -32 -31 -30 -29 -28 -27 -26 -26 -26 -26 -27 -29 -30 -30 -29 -26 -26 -27 -29 -32 -34 -35 -35 -34 -33 -32 -31 -30 -30 -31 -32 -32 -33 -33 -32 -30 -26 -23 -25 -28 -29 -27 -24 -23 -23 -23 -26 -29 -31 -33 -34 -35 -37 -38 -38 -37 -37 -37 -36 -36 -35 -35 -36 -37 -37 -30 -24 -20 -21 -23 -21 -18 -15 -14 -16 -20 -23 -26 -27 -28 -27 -27 -27 -28 -30 -31 -33 -34 -33 -32 -31 -30 -31 -29 -26 -23 -22 -23 -25 -25 -23 -21 -20 -20 -21 -24 -27 -27 -25 -23 -22 -23 -26 -31 -36 -35 -34 -33 -33 -34 -32 -28 -22 -17 -18 -20 -23 -24 -25 -26 -29 -31 -32 -32 -33 -36 -40 -44 -44 -43 -42 -42 -44 -46 -47 -47 -49 -50 -51 -50 -50 -49 -47 -46 -47 -50 -52 -53 -53 -53 -53 -53 -53 -53 -52 -51 -51 -51 -51 -51 -50 -48 -47 -44 -42 -40 -39 -39 -41 -43 -43 -41 -36 -32 -30 -31 -33 -36 -39 -42 -45 -48 -50 -52 -54 -56 -60 -63 -66 -69 -71 -70 -68 -65 -61 -58 -54 -51 -49 -46 -43 -41 -39 -39 -38 -37 -38 -41 -45 -50 -55 -59 -62 -63 -64 -63 -61 -60 -59 -60 -62 -64 -64 -62 -60 -56 -52 -49 -48 -46 -43 -39 -36 -33 -31 -27 -24 -22 -22 -22 -23 -23 -23 -22 -21 -24 -30 -39 -49 -53 -54 -51 -47 -41 -37 -34 -33 -34 -36 -37 -39 -43 -47 -53 -59 -63 -65 -64 -66 -67 -67 -65 -64 -62 -62 -62 -61 -59 -59 -9 -9 -10 -11 -13 -14 -16 -17 -19 -21 -24 -26 -27 -26 -25 -23 -21 -21 -22 -23 -23 -24 -25 -26 -28 -28 -27 -27 -27 -28 -27 -27 -26 -26 -27 -28 -28 -26 -24 -22 -21 -21 -21 -19 -15 -11 -8 -7 -10 -13 -16 -18 -21 -22 -21 -18 -16 -15 -15 -16 -16 -17 -17 -18 -19 -20 -20 -20 -21 -21 -20 -19 -19 -19 -21 -22 -23 -25 -26 -28 -29 -29 -28 -27 -26 -26 -26 -26 -25 -25 -24 -23 -21 -21 -23 -25 -27 -28 -30 -32 -34 -36 -35 -34 -34 -33 -33 -32 -31 -30 -30 -29 -26 -24 -22 -23 -24 -25 -27 -29 -32 -34 -34 -34 -33 -31 -30 -29 -29 -28 -27 -26 -25 -25 -26 -27 -29 -30 -28 -26 -25 -27 -30 -33 -34 -35 -35 -34 -33 -32 -31 -31 -32 -32 -32 -32 -33 -33 -31 -27 -22 -23 -26 -29 -29 -26 -24 -22 -22 -23 -26 -29 -31 -33 -35 -36 -38 -38 -38 -37 -37 -37 -36 -36 -35 -35 -36 -36 -32 -25 -20 -19 -22 -22 -20 -16 -14 -14 -18 -22 -24 -26 -28 -29 -28 -28 -28 -29 -30 -32 -33 -34 -33 -32 -31 -31 -30 -28 -24 -20 -20 -21 -22 -22 -19 -17 -16 -17 -20 -23 -25 -25 -23 -22 -23 -26 -30 -33 -33 -32 -32 -32 -32 -31 -29 -25 -19 -16 -16 -18 -20 -21 -22 -24 -27 -30 -32 -34 -37 -41 -43 -44 -43 -42 -43 -45 -47 -48 -49 -50 -51 -51 -50 -50 -49 -48 -46 -47 -49 -52 -54 -54 -53 -52 -52 -53 -53 -52 -52 -52 -53 -53 -53 -52 -52 -50 -48 -46 -44 -41 -40 -40 -42 -43 -41 -36 -32 -29 -29 -30 -33 -36 -39 -43 -47 -49 -50 -52 -55 -60 -63 -66 -68 -69 -70 -69 -66 -63 -59 -55 -51 -48 -46 -44 -42 -40 -38 -36 -35 -36 -38 -41 -46 -52 -57 -61 -63 -64 -64 -63 -61 -60 -60 -62 -64 -64 -62 -60 -58 -54 -52 -50 -48 -45 -41 -37 -35 -32 -28 -25 -23 -22 -22 -23 -23 -23 -22 -22 -23 -29 -37 -47 -53 -55 -55 -52 -46 -39 -35 -34 -34 -36 -37 -38 -40 -45 -50 -55 -60 -63 -65 -65 -65 -65 -63 -62 -63 -65 -65 -64 -62 -61 -12 -12 -13 -13 -14 -15 -17 -19 -22 -24 -26 -27 -28 -28 -28 -26 -25 -25 -25 -24 -23 -23 -25 -27 -29 -29 -28 -28 -28 -26 -23 -22 -22 -22 -24 -24 -23 -19 -15 -14 -14 -16 -19 -18 -16 -13 -11 -10 -12 -15 -18 -21 -24 -25 -23 -21 -17 -15 -15 -16 -16 -16 -16 -16 -17 -18 -18 -18 -18 -18 -18 -18 -17 -17 -18 -19 -20 -23 -25 -27 -27 -26 -25 -25 -25 -26 -26 -25 -25 -25 -25 -24 -22 -22 -22 -23 -26 -28 -30 -32 -33 -35 -35 -35 -34 -33 -33 -32 -31 -30 -29 -29 -28 -26 -24 -23 -23 -23 -25 -27 -30 -32 -34 -35 -35 -33 -31 -30 -30 -30 -30 -29 -28 -25 -24 -24 -25 -27 -28 -27 -25 -25 -27 -30 -33 -34 -35 -34 -34 -33 -33 -32 -32 -32 -31 -31 -32 -32 -31 -28 -24 -24 -25 -28 -30 -28 -26 -23 -21 -21 -24 -26 -29 -31 -33 -35 -37 -38 -38 -38 -37 -37 -37 -36 -35 -35 -35 -37 -34 -28 -20 -15 -17 -19 -19 -17 -14 -14 -16 -19 -22 -24 -27 -29 -29 -29 -28 -28 -29 -30 -33 -34 -34 -33 -32 -31 -30 -28 -24 -19 -17 -17 -20 -21 -21 -19 -18 -17 -19 -22 -24 -23 -21 -19 -19 -23 -27 -30 -31 -31 -31 -31 -30 -29 -28 -26 -21 -14 -11 -11 -14 -17 -19 -22 -26 -30 -33 -35 -37 -40 -42 -43 -43 -42 -41 -44 -48 -50 -50 -51 -51 -50 -50 -50 -50 -49 -47 -47 -48 -50 -52 -53 -53 -52 -53 -54 -54 -55 -54 -54 -53 -53 -53 -54 -54 -53 -52 -50 -48 -45 -43 -42 -43 -43 -41 -36 -32 -30 -30 -31 -32 -34 -38 -44 -48 -50 -52 -54 -57 -60 -63 -65 -67 -68 -69 -68 -67 -64 -60 -56 -52 -49 -48 -46 -44 -41 -38 -35 -34 -34 -35 -38 -42 -48 -54 -60 -63 -64 -64 -64 -63 -61 -61 -62 -63 -62 -62 -61 -60 -56 -54 -52 -50 -46 -42 -39 -37 -33 -29 -26 -24 -23 -23 -23 -23 -23 -23 -23 -24 -28 -36 -45 -52 -56 -57 -54 -48 -42 -37 -35 -34 -35 -36 -36 -37 -41 -46 -53 -58 -61 -63 -65 -66 -64 -61 -61 -63 -65 -66 -66 -64 -62 -15 -15 -15 -15 -16 -17 -19 -22 -24 -26 -27 -28 -28 -29 -30 -30 -30 -31 -31 -28 -24 -23 -25 -28 -30 -30 -28 -26 -23 -20 -17 -16 -15 -16 -16 -15 -13 -11 -9 -8 -9 -11 -14 -16 -17 -16 -16 -16 -17 -18 -20 -22 -24 -25 -23 -21 -17 -16 -16 -16 -16 -16 -15 -16 -16 -17 -18 -17 -16 -15 -15 -16 -17 -17 -18 -19 -21 -23 -24 -25 -24 -24 -24 -25 -25 -25 -25 -25 -25 -25 -25 -25 -24 -23 -23 -24 -25 -28 -30 -32 -33 -34 -34 -34 -33 -33 -33 -33 -32 -31 -30 -30 -29 -27 -26 -25 -24 -23 -24 -26 -28 -30 -32 -33 -34 -33 -32 -31 -31 -31 -31 -31 -30 -28 -26 -24 -24 -26 -27 -27 -25 -24 -24 -27 -31 -33 -34 -33 -33 -33 -32 -32 -31 -31 -30 -30 -30 -30 -30 -29 -27 -25 -25 -26 -28 -29 -28 -25 -22 -21 -22 -24 -26 -29 -31 -34 -36 -37 -38 -38 -38 -38 -38 -37 -36 -35 -35 -36 -36 -31 -23 -15 -14 -16 -17 -16 -14 -14 -15 -17 -19 -22 -25 -28 -29 -28 -27 -27 -28 -29 -31 -33 -34 -34 -33 -31 -30 -28 -25 -20 -16 -15 -16 -19 -22 -23 -23 -22 -22 -23 -23 -22 -21 -20 -20 -20 -22 -25 -29 -30 -30 -27 -25 -24 -25 -25 -21 -13 -7 -5 -9 -14 -17 -21 -25 -29 -32 -35 -37 -38 -39 -40 -41 -42 -44 -46 -49 -51 -52 -53 -52 -50 -50 -50 -51 -50 -49 -48 -48 -49 -50 -51 -52 -52 -54 -55 -57 -57 -56 -55 -54 -53 -53 -54 -54 -55 -55 -54 -52 -51 -48 -46 -45 -43 -41 -37 -33 -31 -30 -30 -31 -34 -39 -44 -48 -52 -55 -57 -59 -60 -62 -64 -65 -67 -67 -67 -67 -64 -61 -58 -54 -51 -50 -48 -46 -43 -39 -36 -33 -32 -33 -35 -39 -44 -51 -56 -60 -63 -65 -65 -64 -63 -63 -62 -62 -62 -63 -63 -63 -60 -58 -55 -52 -48 -44 -41 -38 -33 -30 -27 -25 -24 -23 -23 -23 -23 -24 -24 -24 -27 -34 -43 -51 -56 -58 -55 -50 -45 -41 -38 -35 -34 -33 -34 -35 -38 -44 -51 -56 -60 -62 -63 -63 -60 -59 -59 -61 -63 -65 -66 -66 -64 -18 -18 -17 -17 -18 -20 -22 -25 -26 -28 -28 -28 -29 -30 -31 -33 -34 -36 -36 -32 -28 -27 -28 -31 -34 -33 -29 -24 -20 -16 -14 -13 -12 -12 -11 -9 -7 -6 -5 -5 -6 -8 -10 -14 -16 -17 -18 -18 -18 -18 -19 -20 -21 -22 -21 -20 -18 -17 -17 -17 -16 -15 -15 -15 -16 -17 -17 -17 -16 -15 -15 -16 -17 -18 -18 -19 -21 -22 -23 -23 -23 -24 -24 -25 -26 -26 -26 -27 -27 -26 -26 -26 -26 -26 -25 -25 -26 -29 -32 -34 -34 -34 -33 -33 -32 -33 -33 -33 -33 -32 -31 -29 -29 -28 -27 -26 -25 -24 -24 -25 -27 -29 -30 -31 -32 -32 -32 -32 -31 -32 -32 -32 -31 -31 -29 -27 -25 -25 -27 -28 -28 -27 -26 -27 -30 -32 -33 -33 -33 -33 -32 -31 -30 -29 -28 -28 -28 -28 -30 -31 -30 -27 -25 -24 -25 -28 -28 -27 -25 -21 -21 -22 -24 -27 -29 -33 -35 -36 -37 -37 -38 -38 -39 -39 -38 -36 -35 -36 -37 -34 -28 -18 -14 -15 -16 -16 -15 -14 -15 -16 -17 -20 -23 -25 -27 -28 -28 -29 -29 -30 -31 -33 -34 -35 -35 -33 -30 -28 -27 -22 -16 -13 -13 -17 -21 -24 -26 -25 -24 -23 -22 -22 -22 -22 -21 -20 -22 -26 -28 -27 -24 -20 -19 -19 -20 -20 -19 -13 -7 -4 -7 -12 -16 -19 -23 -27 -31 -33 -35 -36 -37 -38 -40 -42 -44 -46 -48 -51 -53 -53 -52 -51 -50 -51 -51 -51 -50 -49 -48 -48 -48 -49 -50 -52 -54 -57 -59 -59 -59 -57 -55 -53 -52 -52 -53 -54 -55 -56 -56 -55 -53 -51 -48 -46 -43 -38 -34 -31 -29 -29 -31 -35 -40 -44 -47 -51 -55 -58 -59 -60 -61 -63 -64 -65 -66 -66 -66 -64 -62 -58 -55 -52 -51 -49 -48 -46 -43 -39 -35 -32 -32 -34 -37 -41 -47 -52 -57 -61 -64 -64 -65 -65 -64 -63 -63 -63 -65 -66 -66 -64 -61 -58 -55 -51 -47 -42 -38 -34 -31 -29 -27 -25 -23 -23 -23 -24 -25 -25 -25 -26 -32 -41 -49 -56 -59 -55 -50 -47 -44 -40 -36 -33 -31 -31 -32 -36 -42 -50 -55 -60 -63 -64 -63 -61 -60 -60 -60 -61 -64 -67 -67 -65 -20 -20 -19 -19 -21 -22 -24 -26 -27 -28 -29 -29 -30 -31 -33 -34 -35 -39 -38 -35 -30 -31 -34 -37 -38 -34 -27 -22 -18 -15 -13 -13 -12 -11 -9 -7 -5 -4 -4 -5 -5 -6 -9 -12 -15 -16 -17 -17 -16 -15 -15 -15 -16 -17 -17 -17 -16 -17 -18 -18 -17 -16 -15 -15 -15 -15 -15 -15 -16 -17 -16 -16 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -25 -26 -26 -27 -28 -29 -29 -28 -28 -28 -28 -27 -27 -27 -27 -30 -33 -35 -37 -36 -34 -32 -32 -32 -33 -33 -33 -32 -31 -29 -29 -29 -28 -28 -26 -25 -25 -25 -26 -27 -27 -29 -30 -31 -31 -32 -32 -32 -33 -33 -33 -32 -31 -29 -26 -24 -25 -26 -27 -28 -27 -27 -28 -29 -31 -32 -33 -33 -32 -31 -30 -29 -28 -27 -27 -28 -29 -31 -32 -30 -27 -25 -24 -26 -28 -28 -27 -23 -22 -22 -23 -25 -27 -30 -33 -35 -35 -36 -37 -38 -39 -39 -39 -38 -37 -36 -36 -35 -32 -24 -16 -14 -15 -16 -16 -15 -15 -15 -17 -19 -22 -24 -27 -28 -29 -30 -30 -30 -32 -34 -36 -37 -37 -35 -32 -29 -28 -25 -19 -14 -12 -16 -20 -23 -24 -25 -23 -22 -21 -22 -23 -22 -21 -20 -22 -24 -25 -23 -20 -18 -17 -17 -17 -18 -19 -17 -14 -10 -10 -12 -14 -16 -20 -24 -28 -31 -33 -34 -35 -37 -38 -40 -42 -44 -47 -49 -52 -52 -52 -51 -51 -52 -52 -51 -50 -49 -48 -47 -47 -47 -49 -51 -54 -58 -60 -61 -61 -60 -57 -55 -53 -52 -52 -53 -54 -55 -56 -57 -57 -55 -53 -50 -46 -40 -35 -30 -27 -28 -31 -36 -40 -43 -46 -51 -54 -57 -58 -60 -61 -63 -64 -64 -65 -65 -65 -64 -62 -59 -57 -54 -51 -49 -49 -49 -47 -43 -39 -34 -32 -33 -35 -39 -43 -48 -53 -58 -62 -64 -65 -65 -65 -64 -64 -65 -67 -70 -69 -68 -65 -61 -57 -53 -49 -44 -39 -35 -33 -31 -29 -27 -25 -24 -23 -24 -25 -26 -26 -26 -31 -39 -48 -55 -58 -54 -51 -48 -46 -41 -37 -33 -29 -29 -31 -36 -42 -48 -55 -61 -65 -67 -65 -62 -60 -59 -59 -61 -64 -67 -69 -67 -22 -22 -22 -22 -23 -22 -22 -24 -26 -28 -29 -30 -31 -33 -35 -36 -38 -41 -40 -37 -34 -36 -40 -42 -41 -34 -26 -21 -18 -16 -14 -13 -12 -11 -9 -7 -5 -4 -4 -5 -6 -7 -10 -12 -14 -14 -14 -14 -13 -11 -10 -11 -12 -12 -13 -13 -13 -15 -17 -19 -19 -17 -17 -17 -16 -15 -14 -13 -14 -16 -17 -17 -17 -17 -17 -18 -19 -20 -21 -23 -25 -25 -26 -26 -27 -28 -29 -30 -30 -31 -31 -30 -29 -29 -28 -28 -28 -30 -32 -35 -38 -39 -37 -34 -32 -31 -32 -33 -33 -31 -30 -29 -29 -29 -29 -28 -27 -26 -26 -25 -25 -25 -25 -26 -28 -30 -31 -32 -32 -33 -34 -34 -34 -33 -32 -30 -27 -24 -22 -24 -26 -28 -28 -27 -27 -27 -29 -31 -32 -32 -33 -32 -31 -30 -29 -28 -28 -29 -31 -32 -33 -32 -30 -28 -26 -27 -28 -28 -28 -27 -25 -23 -23 -23 -25 -29 -31 -33 -34 -35 -36 -37 -38 -39 -39 -39 -37 -36 -35 -35 -34 -28 -20 -16 -14 -14 -15 -16 -16 -16 -17 -19 -22 -25 -27 -29 -29 -30 -30 -31 -33 -35 -37 -38 -39 -37 -35 -31 -30 -28 -24 -18 -15 -15 -17 -19 -21 -23 -22 -22 -21 -21 -22 -22 -22 -21 -21 -21 -20 -20 -20 -21 -20 -18 -17 -17 -18 -19 -19 -16 -11 -9 -10 -12 -15 -20 -24 -28 -31 -32 -33 -34 -35 -38 -40 -43 -45 -48 -49 -50 -51 -51 -52 -52 -52 -51 -50 -49 -48 -48 -47 -47 -48 -50 -53 -58 -61 -62 -63 -62 -60 -57 -54 -52 -51 -51 -52 -53 -54 -56 -58 -58 -57 -55 -51 -44 -37 -30 -27 -28 -32 -36 -39 -41 -45 -50 -54 -56 -58 -60 -62 -63 -64 -65 -65 -65 -64 -63 -62 -60 -59 -55 -51 -49 -49 -50 -49 -47 -44 -39 -35 -33 -34 -37 -41 -45 -50 -54 -58 -62 -64 -65 -65 -64 -64 -66 -68 -70 -70 -69 -66 -63 -59 -56 -51 -46 -41 -37 -34 -32 -31 -28 -26 -24 -24 -24 -25 -26 -26 -27 -30 -37 -46 -54 -56 -53 -50 -48 -46 -43 -40 -35 -30 -29 -31 -36 -41 -46 -53 -60 -66 -68 -66 -62 -60 -58 -58 -60 -63 -66 -69 -67 -24 -24 -25 -25 -25 -24 -23 -24 -27 -29 -30 -31 -33 -35 -37 -39 -40 -42 -41 -39 -39 -41 -43 -42 -38 -28 -21 -18 -16 -15 -13 -12 -11 -10 -9 -8 -6 -5 -5 -5 -6 -9 -12 -14 -14 -13 -12 -11 -10 -9 -8 -9 -10 -10 -10 -10 -11 -13 -16 -18 -19 -19 -19 -19 -18 -17 -16 -16 -16 -16 -16 -17 -18 -18 -18 -18 -18 -19 -21 -23 -24 -25 -26 -27 -28 -28 -28 -29 -30 -31 -31 -31 -30 -30 -30 -29 -28 -28 -30 -33 -36 -38 -39 -37 -34 -31 -31 -32 -32 -31 -30 -29 -28 -28 -29 -28 -27 -26 -25 -25 -25 -25 -25 -25 -25 -27 -29 -31 -32 -33 -34 -35 -35 -34 -33 -31 -29 -25 -22 -23 -25 -28 -28 -28 -27 -27 -27 -29 -30 -31 -32 -32 -32 -31 -30 -30 -30 -31 -32 -33 -34 -34 -33 -31 -29 -27 -26 -25 -25 -26 -25 -24 -23 -22 -24 -26 -28 -30 -31 -32 -33 -35 -36 -38 -38 -38 -38 -37 -36 -35 -34 -31 -25 -19 -15 -13 -15 -16 -17 -17 -16 -18 -22 -25 -26 -27 -28 -29 -29 -30 -32 -34 -37 -39 -40 -39 -37 -34 -31 -31 -29 -25 -18 -14 -14 -16 -19 -23 -25 -24 -23 -22 -22 -23 -23 -22 -21 -19 -18 -18 -20 -22 -22 -21 -20 -19 -20 -21 -21 -19 -12 -7 -6 -7 -10 -15 -20 -25 -29 -31 -31 -31 -32 -34 -37 -40 -43 -45 -47 -48 -50 -52 -53 -53 -52 -50 -49 -49 -48 -48 -48 -48 -49 -50 -53 -57 -60 -63 -64 -63 -62 -60 -57 -55 -52 -51 -50 -50 -51 -53 -56 -59 -60 -59 -55 -49 -40 -31 -28 -29 -32 -34 -37 -40 -44 -49 -52 -56 -59 -61 -63 -64 -65 -66 -66 -66 -65 -63 -62 -60 -59 -56 -52 -49 -48 -49 -50 -50 -48 -44 -39 -35 -34 -36 -39 -42 -45 -49 -54 -59 -63 -65 -65 -64 -65 -66 -68 -70 -70 -70 -68 -65 -63 -59 -54 -49 -43 -39 -35 -33 -31 -29 -27 -25 -24 -24 -25 -25 -26 -27 -30 -36 -44 -52 -53 -51 -49 -48 -47 -45 -42 -39 -34 -31 -31 -34 -40 -45 -51 -58 -64 -67 -65 -62 -59 -57 -56 -58 -61 -64 -67 -67 -26 -27 -27 -27 -27 -26 -25 -25 -27 -29 -31 -32 -35 -38 -39 -41 -42 -42 -42 -42 -43 -45 -41 -36 -28 -19 -14 -12 -12 -10 -9 -8 -8 -9 -10 -10 -10 -8 -6 -6 -8 -11 -14 -15 -13 -12 -10 -10 -9 -8 -8 -9 -11 -11 -10 -8 -8 -11 -14 -16 -17 -20 -21 -21 -20 -19 -18 -18 -17 -17 -17 -19 -20 -20 -20 -19 -18 -17 -18 -19 -21 -23 -25 -27 -27 -28 -28 -29 -29 -29 -29 -29 -30 -30 -30 -30 -29 -29 -29 -30 -32 -35 -37 -38 -36 -33 -31 -31 -31 -31 -30 -29 -27 -27 -28 -28 -27 -25 -24 -24 -24 -24 -24 -23 -22 -23 -26 -28 -31 -33 -34 -35 -36 -35 -33 -32 -31 -29 -26 -25 -25 -26 -28 -29 -29 -28 -27 -27 -28 -30 -31 -32 -32 -32 -31 -31 -31 -32 -33 -34 -35 -35 -34 -32 -30 -27 -25 -23 -22 -23 -24 -25 -24 -23 -23 -25 -26 -28 -30 -31 -31 -32 -34 -35 -36 -37 -37 -38 -37 -36 -35 -33 -28 -22 -16 -13 -14 -15 -16 -16 -15 -18 -21 -22 -23 -25 -27 -28 -28 -29 -31 -33 -36 -38 -40 -40 -39 -37 -33 -32 -31 -28 -21 -14 -12 -14 -18 -21 -24 -24 -22 -20 -20 -20 -21 -21 -20 -20 -19 -18 -18 -19 -21 -21 -21 -20 -21 -21 -21 -19 -13 -8 -5 -5 -7 -13 -19 -24 -28 -29 -29 -27 -27 -30 -35 -38 -41 -43 -45 -48 -51 -53 -54 -54 -52 -51 -49 -49 -48 -48 -48 -49 -49 -50 -52 -56 -60 -62 -63 -64 -63 -62 -60 -58 -54 -52 -50 -49 -49 -50 -53 -57 -60 -61 -59 -54 -45 -33 -27 -27 -29 -32 -36 -39 -43 -47 -51 -55 -59 -62 -64 -65 -66 -67 -68 -68 -66 -64 -61 -60 -59 -57 -54 -50 -48 -48 -50 -51 -51 -48 -43 -39 -35 -35 -37 -40 -43 -46 -50 -55 -60 -64 -65 -65 -66 -66 -68 -69 -70 -70 -69 -68 -66 -63 -59 -52 -46 -41 -36 -33 -31 -29 -28 -26 -24 -24 -24 -25 -26 -28 -30 -35 -42 -50 -51 -50 -50 -49 -48 -45 -44 -42 -40 -35 -33 -33 -37 -43 -49 -56 -62 -66 -64 -61 -58 -56 -54 -56 -59 -61 -65 -66 -28 -29 -29 -29 -29 -28 -27 -27 -28 -29 -31 -33 -37 -40 -42 -43 -43 -43 -42 -44 -47 -44 -36 -26 -18 -11 -9 -8 -7 -5 -5 -6 -8 -11 -14 -15 -14 -12 -10 -10 -12 -14 -15 -13 -12 -10 -9 -9 -9 -9 -10 -12 -13 -12 -10 -9 -9 -11 -13 -16 -19 -21 -21 -19 -17 -16 -16 -18 -19 -20 -21 -22 -22 -21 -20 -19 -17 -17 -17 -17 -19 -21 -23 -26 -26 -26 -27 -27 -27 -27 -27 -27 -28 -29 -29 -29 -28 -28 -29 -29 -31 -32 -34 -37 -37 -36 -33 -31 -30 -31 -31 -30 -28 -27 -26 -27 -27 -25 -22 -20 -22 -23 -23 -23 -22 -22 -23 -26 -29 -31 -32 -33 -34 -35 -34 -34 -33 -31 -29 -26 -24 -24 -26 -29 -30 -30 -28 -27 -27 -28 -30 -31 -31 -31 -32 -32 -32 -33 -33 -34 -35 -35 -35 -34 -32 -29 -26 -22 -20 -20 -22 -24 -25 -24 -23 -24 -25 -27 -29 -30 -31 -31 -32 -33 -33 -34 -36 -38 -38 -37 -36 -35 -31 -24 -17 -12 -13 -14 -16 -16 -16 -18 -18 -19 -20 -23 -25 -27 -28 -29 -30 -32 -35 -38 -40 -40 -40 -39 -36 -34 -32 -30 -24 -16 -12 -12 -16 -18 -20 -20 -20 -19 -20 -20 -21 -21 -22 -22 -20 -19 -16 -16 -17 -19 -20 -19 -20 -20 -20 -19 -15 -10 -7 -4 -7 -13 -19 -23 -26 -27 -27 -27 -27 -30 -33 -36 -39 -42 -45 -49 -51 -54 -55 -54 -53 -51 -50 -49 -48 -47 -47 -48 -49 -50 -51 -54 -58 -61 -62 -63 -63 -63 -62 -61 -58 -55 -51 -49 -47 -48 -51 -55 -59 -62 -61 -58 -50 -38 -29 -26 -27 -31 -36 -40 -43 -45 -50 -55 -59 -62 -64 -66 -67 -69 -70 -70 -68 -65 -62 -60 -58 -57 -54 -51 -48 -48 -50 -52 -52 -50 -46 -42 -38 -35 -36 -38 -41 -44 -47 -52 -57 -62 -64 -64 -65 -65 -68 -69 -70 -70 -70 -70 -69 -67 -63 -56 -50 -44 -39 -35 -32 -30 -29 -27 -25 -24 -23 -24 -25 -28 -30 -34 -40 -47 -51 -52 -51 -50 -48 -46 -44 -43 -43 -40 -37 -34 -35 -41 -48 -54 -60 -64 -63 -61 -58 -55 -53 -54 -56 -58 -62 -64 -30 -31 -30 -30 -29 -28 -28 -27 -28 -29 -31 -33 -37 -41 -44 -45 -44 -43 -42 -43 -46 -41 -28 -17 -10 -9 -9 -9 -8 -7 -8 -10 -13 -16 -19 -20 -19 -18 -16 -15 -15 -15 -14 -12 -11 -10 -9 -9 -10 -12 -14 -16 -17 -15 -14 -14 -15 -15 -15 -17 -19 -19 -16 -13 -12 -13 -16 -20 -23 -24 -24 -23 -22 -20 -20 -19 -18 -17 -16 -16 -17 -19 -21 -23 -24 -24 -23 -24 -25 -25 -26 -27 -28 -28 -28 -27 -27 -27 -28 -30 -31 -31 -33 -35 -37 -39 -36 -33 -31 -31 -32 -31 -29 -27 -26 -27 -27 -26 -23 -21 -20 -21 -22 -24 -25 -26 -26 -27 -28 -29 -30 -31 -32 -33 -35 -36 -36 -35 -32 -30 -28 -27 -28 -29 -31 -32 -31 -29 -28 -28 -29 -29 -30 -31 -31 -32 -33 -34 -34 -34 -35 -36 -36 -35 -34 -31 -27 -23 -19 -18 -19 -21 -24 -24 -23 -23 -24 -26 -28 -30 -30 -31 -32 -32 -32 -32 -34 -36 -37 -38 -37 -36 -34 -28 -20 -13 -11 -12 -14 -15 -15 -15 -15 -15 -17 -20 -23 -25 -27 -28 -29 -31 -34 -37 -38 -40 -40 -40 -38 -36 -34 -32 -27 -19 -13 -12 -14 -17 -17 -17 -17 -18 -18 -19 -20 -21 -22 -22 -20 -17 -15 -14 -16 -17 -18 -18 -19 -19 -20 -19 -16 -13 -9 -6 -8 -12 -17 -21 -23 -25 -26 -27 -27 -29 -31 -34 -38 -42 -45 -47 -50 -52 -54 -54 -54 -52 -51 -50 -48 -47 -46 -47 -48 -49 -51 -52 -55 -58 -61 -63 -63 -63 -64 -63 -62 -59 -55 -51 -48 -47 -49 -53 -58 -62 -62 -61 -55 -44 -33 -27 -27 -30 -34 -37 -41 -45 -50 -54 -58 -61 -64 -67 -68 -70 -71 -71 -69 -66 -63 -60 -59 -57 -56 -53 -51 -50 -51 -52 -52 -51 -49 -45 -41 -37 -36 -38 -41 -43 -46 -49 -54 -60 -63 -63 -63 -64 -67 -69 -69 -69 -69 -70 -70 -69 -65 -60 -54 -49 -44 -39 -35 -32 -29 -27 -25 -24 -23 -23 -24 -27 -30 -33 -39 -45 -49 -51 -51 -51 -50 -46 -44 -43 -44 -44 -42 -39 -36 -39 -45 -53 -59 -62 -63 -61 -58 -54 -52 -51 -52 -54 -58 -61 -31 -31 -30 -30 -29 -28 -28 -27 -28 -29 -30 -32 -36 -41 -44 -44 -42 -42 -42 -42 -43 -37 -24 -14 -9 -11 -13 -14 -13 -13 -14 -17 -20 -23 -24 -23 -22 -20 -19 -17 -16 -15 -13 -11 -10 -9 -10 -11 -13 -15 -18 -20 -20 -19 -19 -20 -21 -19 -17 -16 -15 -13 -10 -9 -10 -13 -17 -21 -24 -26 -25 -23 -21 -20 -19 -19 -18 -18 -16 -16 -16 -17 -19 -21 -21 -21 -21 -21 -22 -23 -25 -27 -28 -28 -28 -27 -27 -27 -29 -31 -32 -32 -33 -34 -36 -39 -39 -36 -33 -32 -32 -31 -29 -27 -25 -26 -27 -27 -26 -24 -22 -21 -21 -23 -25 -27 -28 -28 -28 -27 -27 -28 -29 -31 -34 -36 -38 -38 -36 -34 -33 -31 -30 -29 -30 -31 -32 -32 -31 -31 -30 -29 -29 -29 -31 -32 -33 -34 -35 -35 -35 -36 -36 -35 -35 -33 -30 -27 -22 -20 -19 -20 -22 -23 -22 -22 -23 -25 -27 -29 -30 -31 -32 -31 -31 -31 -32 -34 -36 -37 -37 -37 -35 -32 -26 -18 -12 -11 -12 -13 -13 -12 -12 -12 -14 -17 -20 -22 -25 -27 -28 -30 -32 -34 -36 -38 -39 -40 -39 -38 -36 -34 -30 -22 -16 -13 -14 -16 -16 -16 -16 -16 -17 -17 -18 -19 -21 -20 -19 -15 -12 -12 -14 -16 -18 -18 -19 -19 -19 -19 -17 -14 -10 -7 -8 -11 -15 -18 -21 -23 -25 -26 -26 -27 -29 -32 -36 -40 -44 -46 -48 -51 -53 -54 -54 -54 -53 -51 -49 -47 -45 -46 -47 -48 -50 -51 -53 -56 -59 -62 -62 -63 -64 -65 -65 -63 -59 -54 -49 -47 -48 -51 -55 -60 -62 -62 -59 -50 -38 -30 -27 -28 -30 -34 -39 -44 -49 -53 -57 -60 -64 -66 -69 -71 -72 -73 -71 -68 -64 -61 -60 -59 -57 -56 -54 -53 -52 -52 -52 -51 -50 -48 -44 -40 -38 -38 -41 -43 -45 -47 -51 -57 -61 -62 -63 -63 -66 -67 -68 -68 -68 -69 -70 -69 -67 -64 -59 -54 -48 -43 -39 -34 -31 -28 -25 -23 -22 -22 -23 -25 -29 -32 -37 -43 -48 -50 -51 -52 -51 -49 -45 -42 -42 -44 -45 -44 -40 -39 -44 -51 -58 -61 -63 -62 -59 -53 -50 -48 -49 -51 -54 -58 -31 -30 -29 -28 -28 -27 -27 -27 -28 -29 -30 -32 -34 -39 -41 -42 -42 -41 -38 -37 -37 -31 -19 -12 -11 -13 -15 -16 -17 -18 -20 -23 -26 -27 -26 -23 -21 -19 -18 -18 -16 -14 -13 -11 -10 -10 -11 -13 -15 -17 -19 -20 -20 -19 -20 -21 -22 -20 -16 -14 -12 -10 -9 -9 -11 -14 -16 -19 -21 -23 -24 -23 -22 -20 -19 -18 -18 -18 -17 -16 -15 -16 -17 -19 -19 -19 -20 -21 -22 -23 -24 -26 -27 -28 -28 -27 -27 -29 -32 -34 -35 -35 -35 -35 -36 -37 -38 -37 -34 -33 -32 -31 -29 -26 -23 -23 -24 -26 -27 -26 -24 -22 -21 -21 -23 -25 -27 -27 -27 -26 -26 -26 -27 -29 -32 -35 -37 -38 -37 -36 -34 -33 -31 -29 -28 -29 -31 -33 -33 -33 -32 -30 -29 -29 -29 -31 -32 -34 -35 -36 -36 -36 -35 -35 -35 -34 -33 -31 -28 -24 -22 -21 -21 -22 -21 -21 -22 -23 -26 -28 -29 -30 -31 -31 -31 -31 -31 -33 -35 -37 -37 -37 -36 -35 -31 -25 -17 -12 -11 -11 -11 -9 -8 -8 -11 -14 -17 -19 -22 -24 -26 -28 -30 -32 -34 -36 -38 -39 -39 -39 -37 -35 -32 -25 -18 -14 -14 -16 -16 -16 -15 -15 -15 -15 -15 -15 -16 -17 -17 -16 -14 -13 -13 -14 -15 -17 -18 -19 -19 -19 -18 -14 -10 -8 -8 -10 -13 -16 -19 -21 -23 -24 -25 -26 -28 -31 -35 -39 -43 -45 -48 -49 -52 -54 -55 -55 -54 -53 -50 -48 -46 -46 -46 -47 -49 -50 -51 -53 -57 -60 -61 -63 -64 -65 -66 -66 -63 -59 -53 -49 -48 -49 -52 -57 -60 -61 -61 -55 -43 -34 -28 -27 -29 -33 -38 -43 -48 -52 -55 -59 -62 -65 -68 -70 -72 -73 -72 -69 -65 -61 -61 -60 -60 -58 -57 -55 -54 -53 -53 -52 -52 -50 -47 -43 -40 -39 -40 -42 -43 -45 -48 -53 -59 -62 -62 -62 -64 -66 -67 -67 -67 -69 -70 -70 -69 -67 -63 -58 -52 -47 -43 -39 -34 -31 -28 -25 -23 -21 -22 -24 -27 -31 -36 -41 -46 -49 -51 -53 -53 -51 -48 -44 -42 -43 -45 -47 -44 -41 -43 -49 -57 -61 -62 -61 -58 -52 -48 -46 -46 -48 -51 -54 -30 -29 -28 -27 -27 -26 -26 -26 -27 -29 -30 -31 -34 -37 -40 -41 -41 -38 -33 -31 -30 -23 -15 -11 -11 -12 -13 -15 -17 -19 -21 -23 -25 -26 -25 -22 -19 -18 -18 -18 -17 -15 -13 -12 -13 -14 -15 -16 -16 -17 -18 -18 -17 -15 -16 -17 -18 -17 -16 -14 -13 -12 -12 -13 -13 -13 -14 -15 -18 -20 -23 -23 -23 -21 -19 -18 -18 -18 -18 -17 -16 -17 -18 -19 -20 -20 -20 -21 -21 -22 -23 -24 -26 -26 -26 -27 -28 -31 -34 -37 -38 -38 -38 -36 -35 -34 -35 -35 -35 -34 -33 -31 -29 -26 -21 -19 -20 -22 -25 -26 -25 -23 -22 -21 -21 -23 -24 -25 -25 -25 -25 -25 -27 -28 -30 -32 -35 -37 -37 -36 -35 -34 -32 -30 -28 -28 -31 -33 -35 -35 -34 -32 -30 -28 -28 -29 -31 -33 -35 -36 -37 -36 -36 -35 -35 -34 -34 -34 -33 -30 -28 -25 -23 -22 -22 -21 -21 -22 -24 -26 -28 -29 -30 -30 -30 -31 -31 -32 -34 -35 -36 -37 -37 -36 -35 -31 -22 -15 -11 -9 -8 -7 -5 -5 -8 -11 -14 -17 -19 -22 -24 -26 -28 -30 -32 -34 -36 -37 -38 -38 -37 -36 -33 -27 -20 -16 -14 -16 -17 -17 -14 -12 -12 -12 -13 -13 -13 -15 -16 -17 -17 -15 -14 -14 -15 -17 -18 -19 -20 -20 -19 -16 -12 -8 -8 -10 -13 -16 -19 -20 -21 -22 -23 -24 -26 -29 -33 -37 -41 -44 -47 -48 -51 -53 -55 -56 -55 -54 -53 -50 -48 -46 -46 -46 -47 -49 -50 -52 -55 -58 -60 -61 -63 -65 -66 -67 -66 -63 -58 -53 -50 -48 -49 -52 -56 -59 -62 -58 -48 -38 -31 -28 -30 -33 -38 -43 -46 -50 -54 -58 -61 -64 -67 -69 -72 -74 -73 -69 -65 -62 -61 -62 -62 -61 -59 -57 -56 -54 -54 -54 -54 -53 -50 -46 -42 -39 -39 -40 -42 -43 -46 -50 -56 -61 -62 -62 -64 -66 -68 -68 -68 -70 -71 -71 -71 -69 -66 -61 -56 -51 -47 -43 -39 -35 -32 -29 -26 -23 -21 -23 -26 -30 -35 -39 -44 -49 -51 -52 -53 -52 -50 -45 -42 -41 -43 -46 -46 -44 -43 -47 -55 -60 -62 -60 -57 -52 -48 -45 -43 -45 -48 -51 -29 -29 -29 -29 -27 -27 -26 -26 -27 -29 -31 -32 -35 -38 -40 -41 -42 -38 -33 -28 -23 -15 -11 -10 -10 -9 -11 -13 -16 -17 -18 -19 -20 -21 -20 -19 -18 -19 -20 -20 -18 -16 -15 -15 -17 -19 -20 -20 -18 -17 -16 -15 -13 -11 -10 -10 -12 -14 -15 -16 -16 -16 -17 -17 -17 -17 -16 -17 -19 -21 -23 -24 -24 -22 -19 -17 -16 -17 -17 -17 -18 -19 -20 -21 -22 -22 -21 -20 -20 -20 -21 -22 -22 -23 -24 -26 -29 -33 -36 -39 -40 -40 -40 -38 -35 -32 -32 -33 -34 -34 -34 -33 -30 -26 -22 -17 -16 -18 -22 -25 -25 -24 -23 -21 -20 -20 -21 -22 -23 -24 -24 -25 -26 -27 -29 -30 -32 -35 -37 -37 -36 -35 -34 -32 -30 -29 -30 -32 -34 -35 -35 -34 -32 -30 -28 -28 -29 -31 -33 -35 -36 -36 -36 -35 -35 -34 -34 -34 -34 -33 -32 -30 -27 -25 -24 -23 -22 -22 -22 -24 -26 -28 -29 -30 -30 -31 -31 -32 -33 -34 -35 -36 -37 -37 -37 -35 -27 -19 -13 -9 -7 -5 -4 -4 -6 -9 -12 -15 -16 -18 -21 -23 -26 -28 -30 -32 -34 -36 -36 -37 -36 -36 -33 -29 -23 -18 -15 -17 -19 -18 -15 -10 -9 -11 -13 -13 -12 -13 -15 -17 -17 -16 -14 -13 -14 -16 -18 -19 -20 -21 -20 -17 -13 -9 -8 -10 -13 -16 -18 -19 -20 -21 -22 -22 -24 -27 -30 -35 -39 -43 -46 -47 -49 -52 -54 -55 -56 -55 -54 -52 -50 -48 -46 -45 -46 -47 -49 -51 -53 -55 -57 -59 -61 -63 -65 -67 -67 -67 -63 -58 -54 -50 -48 -49 -53 -57 -60 -58 -52 -43 -35 -31 -32 -35 -38 -42 -45 -49 -53 -57 -60 -63 -66 -69 -72 -74 -74 -71 -66 -62 -61 -61 -63 -63 -61 -59 -57 -56 -55 -55 -55 -55 -53 -49 -44 -40 -38 -39 -40 -42 -44 -48 -54 -59 -62 -63 -64 -66 -68 -69 -69 -70 -71 -72 -72 -71 -68 -64 -59 -54 -50 -46 -43 -40 -37 -33 -29 -26 -24 -24 -26 -29 -33 -37 -42 -47 -50 -51 -51 -51 -50 -45 -41 -38 -39 -43 -45 -46 -45 -47 -55 -59 -61 -59 -55 -53 -49 -45 -43 -42 -44 -48 -28 -29 -31 -31 -30 -29 -28 -27 -28 -29 -31 -33 -36 -39 -40 -41 -41 -39 -32 -24 -15 -7 -6 -6 -7 -8 -11 -14 -15 -15 -14 -14 -14 -14 -14 -15 -17 -19 -21 -21 -19 -17 -16 -18 -20 -22 -23 -22 -20 -20 -18 -16 -12 -9 -7 -7 -8 -11 -14 -16 -18 -18 -19 -20 -22 -23 -22 -21 -20 -21 -22 -23 -23 -22 -19 -17 -15 -13 -12 -12 -14 -16 -19 -21 -22 -23 -22 -21 -20 -20 -20 -21 -21 -20 -20 -21 -23 -28 -34 -38 -40 -41 -40 -37 -34 -31 -30 -31 -32 -33 -34 -33 -31 -28 -25 -21 -19 -18 -19 -23 -25 -25 -23 -20 -18 -17 -18 -19 -21 -22 -23 -24 -25 -26 -27 -28 -30 -33 -35 -37 -37 -37 -36 -35 -34 -31 -29 -30 -32 -34 -36 -35 -34 -32 -30 -28 -28 -30 -32 -34 -34 -35 -35 -35 -35 -34 -34 -33 -34 -34 -34 -33 -31 -29 -27 -25 -24 -22 -23 -24 -25 -27 -29 -30 -31 -32 -32 -32 -32 -34 -34 -35 -37 -38 -38 -38 -33 -25 -17 -11 -8 -6 -5 -5 -5 -7 -11 -14 -15 -16 -19 -22 -25 -26 -28 -30 -33 -34 -35 -36 -36 -35 -34 -30 -25 -19 -15 -17 -19 -19 -16 -12 -9 -9 -10 -11 -10 -11 -13 -15 -15 -13 -12 -11 -12 -15 -16 -18 -19 -20 -20 -18 -15 -12 -11 -12 -13 -15 -17 -18 -20 -20 -21 -22 -23 -26 -29 -33 -37 -41 -44 -46 -48 -51 -53 -55 -55 -55 -55 -53 -51 -49 -47 -46 -45 -46 -47 -49 -51 -53 -55 -57 -59 -61 -63 -66 -68 -69 -67 -63 -58 -53 -49 -48 -50 -53 -57 -56 -53 -47 -39 -35 -34 -35 -38 -41 -44 -48 -51 -55 -59 -63 -67 -70 -74 -75 -75 -72 -67 -62 -60 -60 -62 -63 -62 -60 -58 -56 -56 -56 -56 -56 -55 -52 -48 -43 -39 -38 -39 -40 -42 -46 -51 -57 -62 -63 -64 -66 -68 -70 -71 -71 -72 -72 -72 -71 -70 -67 -62 -57 -52 -49 -46 -44 -41 -38 -34 -31 -28 -26 -27 -29 -31 -34 -38 -44 -48 -50 -50 -49 -48 -45 -40 -36 -36 -40 -43 -46 -47 -47 -52 -57 -59 -58 -55 -53 -51 -46 -43 -41 -42 -45 -28 -30 -33 -35 -34 -32 -31 -28 -28 -29 -31 -33 -36 -39 -40 -41 -41 -37 -29 -18 -7 -2 -2 -3 -5 -8 -14 -16 -15 -13 -10 -9 -9 -9 -10 -11 -14 -16 -17 -17 -16 -15 -15 -17 -18 -19 -18 -18 -18 -19 -19 -19 -17 -14 -12 -11 -10 -11 -13 -16 -17 -17 -19 -21 -23 -25 -23 -21 -19 -18 -18 -20 -21 -21 -20 -17 -15 -12 -11 -11 -13 -15 -16 -17 -19 -20 -20 -19 -18 -18 -20 -21 -21 -20 -18 -18 -18 -20 -25 -30 -34 -36 -35 -32 -29 -28 -28 -29 -29 -30 -31 -32 -31 -30 -28 -27 -25 -22 -20 -21 -24 -25 -23 -21 -19 -18 -17 -17 -19 -21 -23 -25 -25 -25 -26 -26 -27 -30 -32 -35 -36 -37 -37 -36 -35 -34 -31 -29 -29 -32 -34 -35 -34 -33 -31 -30 -29 -29 -31 -33 -33 -33 -34 -35 -35 -35 -35 -34 -33 -34 -35 -35 -33 -32 -30 -28 -27 -24 -24 -24 -24 -25 -28 -30 -31 -32 -32 -32 -32 -33 -34 -35 -36 -37 -38 -38 -37 -31 -24 -15 -11 -8 -6 -5 -5 -7 -10 -13 -15 -16 -19 -22 -24 -26 -27 -29 -31 -33 -34 -35 -35 -35 -34 -31 -26 -21 -16 -16 -17 -18 -16 -13 -11 -9 -8 -9 -9 -9 -9 -10 -11 -10 -9 -9 -10 -12 -14 -16 -18 -20 -20 -20 -18 -16 -14 -13 -14 -15 -16 -18 -20 -21 -21 -21 -22 -25 -28 -32 -36 -39 -43 -45 -47 -49 -52 -54 -55 -55 -54 -53 -52 -51 -49 -47 -45 -45 -46 -48 -50 -52 -54 -56 -58 -60 -62 -64 -67 -69 -69 -66 -61 -56 -52 -49 -48 -50 -53 -54 -52 -48 -41 -36 -34 -34 -36 -40 -43 -46 -50 -54 -58 -63 -67 -71 -74 -76 -76 -73 -68 -62 -59 -59 -61 -63 -63 -61 -59 -56 -55 -55 -55 -56 -56 -54 -51 -46 -41 -39 -38 -39 -41 -44 -49 -55 -61 -62 -63 -65 -68 -70 -71 -72 -72 -72 -72 -71 -70 -68 -64 -60 -55 -51 -48 -46 -44 -42 -40 -36 -33 -31 -29 -30 -31 -32 -35 -41 -46 -48 -50 -49 -48 -45 -40 -36 -33 -36 -40 -44 -47 -48 -51 -54 -58 -59 -57 -55 -53 -48 -44 -41 -41 -43 -29 -33 -35 -37 -37 -36 -33 -29 -27 -29 -31 -33 -34 -37 -39 -40 -40 -35 -23 -12 -4 -2 -1 -1 -3 -9 -16 -17 -15 -10 -7 -6 -6 -6 -6 -6 -8 -9 -10 -11 -12 -12 -13 -13 -13 -12 -11 -11 -13 -15 -17 -18 -19 -18 -16 -14 -13 -13 -14 -14 -14 -13 -15 -17 -19 -21 -21 -19 -17 -15 -14 -16 -18 -19 -20 -19 -18 -17 -16 -15 -15 -16 -15 -16 -16 -16 -17 -17 -17 -18 -20 -22 -24 -23 -22 -20 -18 -16 -19 -23 -27 -29 -28 -27 -25 -25 -26 -27 -27 -27 -28 -29 -30 -30 -30 -30 -29 -27 -25 -22 -22 -23 -24 -23 -23 -23 -22 -21 -20 -21 -22 -24 -25 -26 -27 -27 -27 -27 -29 -31 -33 -35 -37 -37 -36 -35 -33 -30 -28 -29 -33 -35 -35 -34 -33 -31 -30 -29 -30 -30 -31 -32 -33 -35 -36 -36 -35 -35 -34 -34 -35 -35 -34 -33 -32 -31 -31 -28 -26 -25 -24 -24 -26 -29 -31 -33 -33 -33 -33 -33 -34 -35 -36 -36 -37 -37 -37 -35 -30 -22 -16 -11 -8 -5 -5 -7 -10 -13 -16 -18 -20 -22 -24 -25 -26 -28 -29 -31 -33 -34 -35 -35 -34 -32 -28 -23 -17 -15 -15 -17 -16 -13 -10 -9 -8 -8 -8 -8 -8 -8 -9 -9 -10 -10 -11 -12 -13 -14 -16 -18 -19 -20 -21 -20 -18 -16 -14 -14 -15 -17 -19 -22 -22 -22 -22 -23 -26 -30 -34 -38 -41 -43 -45 -47 -50 -53 -54 -55 -54 -53 -53 -52 -50 -49 -47 -46 -45 -46 -48 -50 -52 -54 -56 -58 -60 -62 -64 -67 -68 -67 -64 -59 -55 -51 -49 -48 -49 -51 -51 -49 -43 -37 -33 -33 -34 -38 -41 -45 -48 -53 -58 -63 -68 -72 -75 -76 -76 -74 -68 -63 -59 -58 -60 -62 -63 -62 -59 -57 -55 -55 -55 -55 -56 -56 -54 -50 -44 -40 -38 -38 -40 -42 -47 -52 -59 -62 -63 -64 -67 -70 -71 -72 -72 -72 -71 -71 -70 -68 -66 -63 -59 -54 -50 -48 -47 -45 -43 -41 -38 -35 -33 -31 -31 -31 -33 -38 -43 -47 -50 -52 -49 -46 -41 -36 -31 -33 -36 -42 -46 -48 -50 -53 -57 -59 -59 -58 -56 -52 -47 -43 -41 -42 -33 -35 -37 -39 -39 -37 -34 -30 -26 -28 -30 -32 -34 -35 -37 -39 -39 -33 -20 -10 -5 -4 -2 -2 -4 -10 -15 -15 -11 -7 -5 -5 -5 -5 -4 -5 -5 -5 -6 -8 -10 -11 -11 -11 -9 -7 -6 -7 -8 -10 -13 -15 -18 -19 -18 -17 -15 -14 -13 -12 -11 -10 -10 -12 -13 -16 -18 -18 -17 -15 -12 -12 -14 -17 -20 -21 -21 -20 -19 -19 -19 -18 -17 -16 -16 -15 -16 -16 -18 -19 -21 -23 -24 -24 -23 -21 -18 -15 -16 -19 -22 -25 -25 -24 -24 -24 -25 -25 -25 -25 -25 -26 -27 -28 -29 -31 -31 -29 -27 -22 -20 -21 -23 -24 -25 -25 -25 -25 -24 -24 -24 -24 -25 -26 -26 -27 -26 -27 -27 -29 -30 -33 -35 -36 -36 -36 -35 -32 -30 -28 -30 -33 -35 -36 -36 -33 -30 -28 -27 -27 -28 -30 -32 -34 -35 -36 -36 -36 -35 -35 -35 -34 -34 -34 -33 -33 -33 -31 -29 -27 -25 -24 -25 -28 -31 -33 -34 -34 -33 -33 -33 -34 -35 -36 -37 -37 -37 -35 -33 -27 -21 -17 -12 -9 -7 -7 -9 -12 -15 -18 -20 -22 -23 -25 -26 -27 -28 -30 -31 -33 -34 -34 -34 -32 -30 -26 -20 -15 -14 -14 -15 -13 -10 -7 -4 -4 -5 -7 -8 -8 -11 -14 -16 -17 -15 -13 -12 -12 -14 -16 -18 -21 -23 -23 -21 -18 -14 -13 -14 -16 -19 -22 -24 -23 -23 -23 -25 -28 -32 -37 -40 -42 -44 -45 -49 -52 -53 -54 -54 -54 -53 -53 -52 -50 -48 -47 -46 -46 -47 -49 -51 -52 -54 -56 -58 -60 -62 -64 -66 -67 -66 -62 -57 -53 -50 -48 -47 -48 -49 -49 -44 -38 -33 -32 -33 -36 -39 -43 -47 -52 -58 -63 -68 -72 -74 -76 -77 -75 -69 -63 -59 -58 -60 -62 -62 -62 -60 -58 -56 -54 -54 -54 -56 -57 -56 -53 -48 -43 -39 -38 -38 -40 -44 -50 -57 -61 -62 -64 -67 -69 -71 -72 -72 -71 -71 -71 -70 -69 -68 -65 -62 -57 -52 -50 -48 -47 -46 -44 -41 -39 -36 -34 -32 -30 -31 -34 -40 -45 -49 -52 -51 -48 -43 -38 -33 -32 -34 -39 -45 -48 -50 -53 -56 -58 -59 -60 -62 -58 -53 -47 -43 -42 -36 -38 -39 -39 -38 -37 -34 -30 -27 -28 -31 -33 -34 -34 -36 -39 -39 -33 -19 -11 -8 -9 -6 -5 -7 -10 -13 -11 -8 -6 -5 -6 -6 -6 -5 -5 -5 -5 -6 -8 -10 -12 -12 -12 -10 -8 -7 -6 -6 -7 -9 -12 -16 -20 -20 -19 -16 -14 -12 -10 -10 -9 -9 -9 -10 -13 -16 -18 -17 -15 -12 -12 -13 -16 -19 -21 -21 -20 -20 -20 -19 -19 -19 -19 -19 -18 -18 -18 -20 -21 -22 -23 -22 -21 -19 -17 -16 -15 -16 -18 -21 -24 -26 -26 -26 -25 -25 -24 -24 -23 -23 -23 -23 -25 -27 -29 -30 -29 -26 -21 -17 -17 -19 -21 -23 -24 -26 -28 -29 -29 -29 -28 -27 -26 -26 -26 -27 -27 -27 -27 -28 -29 -31 -34 -36 -37 -37 -35 -32 -30 -29 -30 -33 -35 -36 -35 -32 -29 -26 -24 -25 -26 -29 -31 -33 -34 -35 -36 -36 -36 -35 -35 -33 -33 -32 -33 -33 -33 -31 -29 -26 -23 -24 -26 -30 -33 -34 -34 -34 -33 -32 -34 -35 -36 -37 -37 -37 -36 -34 -31 -26 -21 -17 -13 -9 -8 -8 -10 -13 -16 -19 -21 -23 -24 -26 -27 -28 -29 -30 -32 -33 -34 -33 -32 -30 -27 -22 -17 -13 -12 -13 -12 -9 -6 -2 -1 -2 -3 -6 -9 -13 -16 -17 -17 -16 -15 -13 -12 -12 -14 -17 -21 -24 -25 -23 -20 -15 -13 -13 -16 -19 -22 -24 -24 -23 -23 -24 -27 -31 -35 -39 -42 -43 -44 -47 -50 -52 -53 -54 -54 -54 -54 -53 -51 -49 -47 -46 -45 -46 -48 -49 -50 -51 -54 -56 -58 -60 -62 -65 -66 -66 -62 -58 -54 -51 -49 -47 -46 -47 -48 -44 -38 -34 -32 -33 -35 -38 -41 -45 -51 -57 -63 -68 -72 -75 -76 -77 -75 -70 -64 -59 -57 -59 -61 -62 -62 -61 -59 -57 -55 -53 -53 -54 -56 -57 -56 -51 -45 -40 -38 -38 -39 -43 -48 -55 -60 -62 -63 -66 -69 -71 -71 -72 -72 -72 -72 -71 -70 -69 -67 -64 -59 -55 -52 -50 -48 -47 -45 -44 -42 -40 -37 -33 -30 -29 -32 -37 -43 -48 -51 -50 -48 -45 -43 -38 -35 -35 -38 -43 -46 -49 -51 -54 -57 -59 -60 -63 -63 -59 -53 -47 -44 -39 -39 -39 -38 -37 -35 -33 -31 -29 -29 -31 -32 -33 -32 -36 -40 -41 -32 -19 -12 -11 -12 -10 -9 -9 -11 -11 -8 -6 -5 -6 -8 -9 -8 -7 -6 -5 -5 -5 -7 -9 -11 -12 -13 -13 -11 -9 -6 -4 -4 -6 -10 -16 -22 -23 -21 -18 -14 -11 -11 -11 -11 -11 -10 -10 -12 -15 -16 -16 -15 -13 -13 -14 -15 -17 -18 -18 -18 -18 -17 -17 -18 -20 -22 -23 -23 -22 -22 -22 -22 -22 -21 -19 -16 -14 -13 -14 -16 -18 -20 -22 -26 -29 -31 -32 -30 -27 -25 -24 -23 -22 -22 -22 -23 -25 -27 -28 -27 -25 -21 -16 -14 -14 -16 -18 -21 -25 -28 -31 -32 -33 -32 -30 -27 -26 -26 -26 -27 -27 -27 -26 -26 -28 -31 -34 -36 -37 -36 -34 -31 -29 -28 -30 -33 -35 -35 -33 -29 -26 -23 -23 -24 -27 -29 -31 -33 -35 -36 -37 -37 -36 -35 -33 -32 -32 -32 -32 -33 -32 -31 -29 -25 -25 -26 -29 -32 -34 -34 -34 -32 -32 -33 -34 -35 -36 -37 -36 -36 -35 -32 -28 -24 -20 -16 -12 -9 -7 -7 -11 -15 -19 -21 -22 -24 -25 -26 -27 -28 -29 -31 -33 -33 -33 -32 -30 -28 -24 -18 -13 -9 -9 -9 -7 -4 -1 1 1 -0 -3 -7 -12 -15 -17 -18 -17 -16 -14 -12 -11 -13 -16 -20 -24 -25 -24 -21 -18 -15 -14 -16 -19 -22 -24 -24 -23 -22 -23 -25 -29 -34 -38 -41 -42 -43 -46 -49 -51 -53 -54 -54 -54 -54 -54 -52 -50 -48 -46 -46 -46 -47 -47 -48 -49 -51 -54 -56 -59 -62 -64 -65 -66 -63 -59 -55 -52 -50 -48 -46 -46 -47 -44 -39 -34 -32 -33 -35 -37 -40 -45 -50 -56 -62 -68 -72 -75 -77 -77 -75 -70 -64 -59 -57 -58 -60 -61 -62 -62 -61 -58 -56 -53 -53 -53 -55 -57 -57 -53 -48 -43 -39 -38 -38 -41 -46 -54 -59 -62 -62 -64 -68 -71 -72 -73 -73 -73 -72 -71 -70 -69 -67 -65 -60 -56 -53 -50 -49 -47 -46 -45 -44 -42 -39 -35 -31 -29 -30 -34 -40 -46 -48 -46 -44 -43 -46 -44 -40 -37 -37 -40 -44 -47 -49 -52 -55 -57 -60 -63 -66 -65 -60 -52 -47 -40 -39 -37 -36 -34 -33 -32 -31 -30 -28 -29 -30 -30 -29 -34 -39 -39 -29 -17 -12 -13 -15 -13 -12 -12 -11 -10 -7 -6 -6 -8 -11 -11 -10 -8 -6 -5 -4 -4 -4 -6 -8 -10 -12 -15 -14 -11 -6 -3 -3 -5 -11 -18 -24 -26 -24 -20 -15 -13 -13 -14 -15 -13 -12 -12 -13 -16 -16 -16 -15 -13 -13 -14 -15 -16 -17 -18 -18 -17 -15 -14 -16 -18 -21 -23 -23 -24 -24 -25 -24 -21 -18 -14 -11 -11 -13 -16 -20 -22 -24 -27 -30 -34 -36 -36 -34 -30 -27 -25 -23 -22 -23 -24 -25 -26 -27 -27 -26 -24 -21 -17 -14 -12 -13 -16 -19 -22 -26 -30 -32 -34 -34 -32 -29 -27 -26 -26 -27 -27 -27 -26 -25 -26 -28 -31 -35 -36 -36 -35 -33 -30 -28 -28 -29 -31 -32 -32 -30 -27 -23 -23 -24 -26 -28 -29 -31 -32 -34 -36 -36 -35 -35 -34 -32 -31 -30 -31 -32 -33 -33 -31 -28 -27 -27 -29 -31 -33 -34 -34 -33 -33 -33 -33 -34 -36 -36 -36 -36 -35 -33 -29 -25 -21 -19 -15 -11 -7 -6 -8 -13 -17 -20 -21 -23 -24 -25 -26 -27 -29 -30 -32 -33 -33 -31 -30 -28 -25 -19 -13 -7 -6 -5 -4 -2 1 3 3 2 -0 -5 -10 -14 -17 -18 -18 -17 -15 -13 -12 -13 -15 -19 -22 -26 -27 -26 -23 -17 -15 -15 -17 -21 -23 -24 -23 -20 -21 -24 -27 -32 -37 -40 -42 -42 -44 -48 -51 -53 -53 -54 -54 -54 -54 -53 -51 -49 -47 -46 -46 -46 -46 -46 -46 -48 -51 -54 -58 -61 -63 -65 -66 -64 -60 -56 -53 -52 -50 -47 -46 -46 -44 -40 -36 -33 -34 -36 -38 -41 -44 -49 -55 -61 -67 -72 -75 -77 -77 -74 -70 -65 -60 -57 -57 -59 -60 -62 -62 -61 -60 -57 -54 -53 -53 -54 -56 -57 -56 -51 -45 -40 -38 -38 -40 -45 -52 -58 -61 -61 -63 -67 -71 -73 -74 -74 -73 -72 -72 -70 -69 -67 -65 -61 -57 -53 -51 -49 -48 -47 -46 -45 -44 -41 -37 -33 -30 -30 -32 -37 -44 -45 -41 -37 -38 -46 -46 -44 -40 -39 -39 -41 -44 -46 -48 -51 -55 -59 -63 -67 -68 -64 -57 -52 -39 -37 -35 -33 -31 -30 -29 -28 -28 -26 -27 -28 -28 -27 -31 -35 -35 -25 -16 -13 -14 -16 -15 -14 -13 -12 -10 -8 -8 -9 -11 -12 -11 -10 -8 -6 -5 -4 -3 -3 -3 -4 -7 -10 -14 -15 -13 -10 -6 -5 -8 -14 -20 -26 -29 -28 -24 -18 -17 -17 -18 -18 -16 -17 -18 -20 -21 -20 -19 -18 -17 -17 -17 -17 -18 -18 -19 -19 -19 -17 -16 -16 -16 -18 -19 -19 -19 -20 -20 -19 -16 -13 -10 -10 -14 -18 -22 -25 -28 -30 -33 -36 -39 -39 -37 -34 -31 -27 -24 -22 -22 -24 -26 -28 -28 -27 -26 -25 -24 -22 -19 -17 -15 -14 -15 -17 -20 -24 -27 -30 -32 -32 -32 -31 -29 -27 -26 -27 -27 -27 -26 -26 -26 -27 -29 -32 -34 -35 -35 -34 -32 -29 -28 -27 -26 -29 -30 -30 -29 -25 -23 -23 -24 -26 -27 -28 -29 -30 -32 -33 -33 -33 -33 -32 -31 -30 -30 -31 -32 -33 -32 -31 -29 -28 -29 -30 -32 -33 -34 -33 -32 -31 -31 -32 -34 -35 -35 -35 -34 -33 -30 -26 -23 -21 -18 -14 -10 -5 -6 -9 -13 -17 -19 -21 -23 -24 -25 -26 -28 -30 -32 -32 -32 -32 -30 -28 -25 -20 -14 -7 -3 -1 -0 1 2 4 4 3 1 -4 -8 -12 -15 -16 -17 -17 -16 -15 -14 -14 -15 -18 -22 -26 -29 -29 -26 -20 -16 -15 -16 -19 -22 -23 -22 -19 -19 -21 -25 -29 -34 -38 -41 -42 -43 -47 -50 -53 -53 -54 -54 -54 -54 -53 -51 -49 -47 -46 -46 -45 -45 -44 -44 -45 -47 -52 -56 -60 -62 -64 -65 -64 -61 -58 -54 -53 -52 -50 -48 -47 -46 -42 -38 -35 -35 -37 -39 -41 -44 -48 -53 -59 -65 -71 -75 -76 -75 -72 -68 -64 -60 -57 -57 -58 -59 -61 -61 -61 -60 -58 -56 -54 -53 -53 -55 -57 -57 -54 -48 -43 -39 -38 -39 -43 -50 -56 -60 -61 -63 -67 -70 -74 -75 -75 -75 -74 -73 -71 -69 -67 -65 -62 -58 -54 -51 -49 -48 -47 -47 -46 -44 -42 -38 -35 -33 -31 -31 -34 -41 -43 -39 -34 -33 -44 -47 -46 -43 -41 -40 -39 -40 -43 -45 -48 -51 -56 -62 -66 -68 -66 -60 -54 -37 -35 -33 -31 -29 -27 -26 -25 -25 -24 -25 -26 -27 -28 -30 -31 -29 -23 -18 -16 -16 -16 -15 -14 -13 -12 -11 -10 -11 -11 -11 -10 -9 -8 -7 -7 -6 -5 -5 -3 -2 -3 -6 -10 -13 -16 -16 -15 -12 -9 -11 -15 -21 -27 -29 -28 -26 -23 -21 -21 -22 -23 -24 -26 -27 -29 -29 -28 -26 -25 -24 -22 -21 -20 -19 -19 -19 -18 -17 -17 -18 -19 -20 -20 -19 -18 -18 -19 -18 -16 -15 -14 -15 -16 -19 -22 -25 -28 -30 -33 -35 -37 -37 -36 -33 -31 -30 -26 -22 -19 -20 -24 -26 -27 -27 -26 -25 -24 -24 -23 -22 -20 -18 -15 -15 -16 -17 -20 -23 -26 -28 -30 -31 -31 -30 -29 -28 -27 -27 -27 -27 -27 -26 -27 -28 -30 -32 -34 -34 -34 -33 -31 -29 -27 -24 -25 -27 -29 -30 -27 -24 -23 -22 -24 -25 -26 -26 -28 -29 -30 -32 -32 -33 -32 -31 -30 -30 -30 -32 -33 -33 -32 -31 -29 -29 -30 -32 -34 -34 -34 -32 -31 -30 -30 -31 -32 -33 -33 -33 -32 -31 -28 -26 -24 -23 -19 -14 -8 -5 -6 -9 -13 -17 -20 -22 -24 -25 -26 -28 -30 -31 -32 -32 -32 -31 -28 -25 -21 -16 -8 -3 -0 1 2 3 4 5 4 1 -3 -7 -11 -13 -14 -16 -17 -18 -17 -17 -17 -18 -20 -22 -26 -29 -30 -28 -23 -18 -15 -15 -19 -21 -22 -21 -19 -18 -19 -22 -26 -31 -35 -39 -41 -42 -46 -49 -52 -53 -54 -54 -54 -54 -53 -52 -49 -47 -45 -45 -45 -44 -43 -41 -41 -44 -48 -53 -57 -61 -63 -64 -63 -61 -58 -56 -54 -53 -53 -52 -50 -47 -44 -40 -37 -36 -37 -39 -41 -44 -47 -51 -56 -63 -69 -74 -76 -74 -71 -67 -64 -61 -59 -58 -58 -58 -60 -61 -61 -61 -59 -57 -55 -53 -53 -54 -56 -57 -56 -51 -45 -40 -38 -38 -41 -48 -53 -58 -60 -63 -66 -70 -74 -76 -76 -76 -76 -75 -73 -70 -67 -65 -62 -58 -54 -52 -50 -49 -48 -48 -48 -46 -43 -40 -38 -36 -34 -32 -33 -38 -42 -41 -36 -33 -41 -45 -47 -45 -43 -41 -38 -37 -40 -42 -45 -47 -53 -59 -64 -67 -67 -62 -56 -34 -33 -31 -30 -28 -25 -23 -22 -22 -22 -24 -27 -30 -30 -30 -29 -27 -24 -20 -17 -15 -14 -14 -14 -13 -12 -11 -11 -11 -10 -8 -7 -7 -7 -7 -8 -9 -9 -8 -7 -7 -8 -9 -11 -14 -17 -19 -19 -18 -15 -14 -15 -19 -23 -24 -24 -23 -22 -22 -23 -24 -25 -27 -29 -32 -33 -34 -32 -31 -29 -26 -24 -22 -20 -18 -18 -18 -18 -20 -22 -23 -24 -24 -23 -22 -20 -20 -20 -18 -17 -16 -16 -18 -20 -22 -23 -25 -27 -29 -31 -33 -33 -32 -31 -29 -29 -29 -26 -21 -17 -18 -23 -25 -26 -26 -25 -24 -24 -24 -25 -24 -23 -21 -18 -16 -15 -16 -18 -21 -22 -24 -26 -28 -29 -30 -30 -30 -29 -27 -26 -26 -26 -26 -26 -27 -28 -30 -32 -33 -33 -33 -33 -31 -29 -25 -23 -24 -26 -28 -28 -25 -23 -21 -20 -21 -23 -25 -27 -28 -29 -31 -32 -33 -32 -31 -31 -30 -30 -31 -33 -33 -33 -32 -31 -30 -31 -32 -34 -35 -35 -33 -31 -29 -28 -29 -30 -31 -32 -32 -32 -31 -30 -28 -26 -25 -24 -20 -13 -8 -6 -7 -10 -15 -19 -21 -23 -25 -26 -28 -29 -31 -32 -32 -32 -31 -30 -27 -23 -19 -13 -8 -3 1 4 6 6 5 3 1 -2 -5 -8 -11 -12 -15 -17 -20 -22 -22 -22 -22 -22 -23 -25 -27 -30 -28 -24 -19 -15 -15 -18 -21 -22 -21 -18 -17 -18 -20 -24 -28 -32 -37 -40 -42 -45 -48 -51 -53 -54 -55 -54 -54 -53 -52 -49 -46 -45 -44 -44 -43 -42 -39 -39 -40 -44 -50 -54 -58 -61 -63 -62 -60 -58 -55 -54 -53 -54 -54 -52 -49 -46 -41 -38 -37 -38 -39 -41 -43 -46 -49 -54 -60 -67 -72 -75 -74 -70 -66 -63 -61 -60 -59 -59 -59 -60 -61 -61 -61 -61 -59 -56 -54 -53 -54 -55 -57 -57 -53 -47 -42 -38 -37 -40 -46 -51 -56 -58 -61 -65 -69 -73 -75 -77 -77 -78 -77 -75 -72 -69 -66 -63 -59 -55 -52 -51 -50 -50 -50 -49 -47 -45 -43 -41 -39 -36 -34 -34 -37 -41 -43 -41 -35 -37 -41 -45 -46 -45 -42 -39 -37 -39 -41 -43 -44 -49 -55 -61 -65 -66 -62 -57 -33 -31 -30 -29 -28 -25 -22 -20 -20 -22 -26 -31 -34 -33 -30 -28 -26 -23 -18 -14 -11 -10 -11 -10 -10 -9 -9 -8 -7 -6 -6 -5 -5 -5 -6 -7 -8 -9 -10 -11 -12 -12 -13 -15 -16 -18 -20 -21 -22 -21 -20 -19 -20 -21 -20 -19 -18 -18 -19 -20 -21 -22 -25 -27 -30 -31 -31 -30 -28 -26 -24 -22 -20 -19 -18 -18 -19 -21 -25 -28 -28 -29 -29 -28 -26 -25 -24 -23 -21 -20 -18 -18 -18 -18 -19 -20 -21 -23 -25 -27 -29 -30 -29 -28 -28 -29 -30 -27 -22 -17 -16 -21 -24 -26 -25 -25 -25 -25 -25 -25 -25 -25 -24 -22 -22 -22 -22 -23 -22 -22 -22 -23 -25 -27 -29 -29 -29 -28 -27 -27 -27 -27 -27 -27 -27 -28 -29 -30 -31 -32 -32 -33 -32 -31 -28 -25 -24 -24 -25 -26 -24 -22 -18 -17 -19 -21 -23 -25 -27 -28 -30 -31 -33 -33 -32 -31 -30 -30 -31 -33 -33 -34 -34 -33 -32 -31 -32 -34 -35 -35 -34 -31 -29 -27 -27 -28 -30 -31 -31 -32 -32 -31 -31 -29 -28 -26 -24 -20 -13 -9 -7 -8 -12 -16 -20 -22 -24 -26 -28 -29 -31 -32 -32 -33 -33 -31 -29 -26 -22 -18 -11 -4 2 7 10 9 6 2 -0 -2 -5 -8 -11 -12 -13 -17 -22 -26 -27 -26 -25 -23 -23 -24 -26 -29 -29 -26 -21 -17 -16 -18 -20 -22 -21 -19 -18 -18 -20 -22 -25 -29 -34 -38 -40 -43 -46 -50 -53 -54 -55 -55 -55 -53 -52 -49 -46 -45 -44 -43 -42 -41 -39 -38 -38 -41 -46 -51 -56 -59 -61 -61 -59 -56 -53 -53 -53 -53 -54 -53 -51 -48 -43 -39 -37 -38 -39 -41 -43 -45 -48 -52 -57 -64 -70 -74 -73 -70 -66 -63 -62 -61 -60 -60 -60 -61 -61 -62 -62 -61 -60 -58 -56 -54 -54 -55 -56 -57 -55 -50 -44 -39 -37 -40 -44 -49 -54 -56 -59 -63 -67 -71 -74 -77 -78 -79 -78 -76 -74 -71 -67 -64 -61 -57 -53 -52 -51 -51 -51 -49 -48 -47 -45 -44 -41 -39 -37 -35 -36 -40 -45 -48 -41 -37 -37 -42 -46 -46 -44 -41 -39 -38 -40 -42 -44 -47 -52 -58 -63 -64 -61 -57 -32 -31 -30 -30 -28 -25 -22 -19 -20 -24 -30 -35 -37 -33 -30 -29 -26 -19 -13 -9 -8 -8 -7 -7 -7 -7 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -6 -7 -9 -11 -13 -15 -17 -18 -19 -19 -20 -21 -23 -24 -24 -23 -22 -21 -20 -19 -17 -16 -16 -16 -16 -16 -18 -21 -23 -24 -23 -22 -21 -20 -18 -17 -16 -16 -16 -17 -19 -22 -26 -29 -29 -30 -30 -30 -29 -28 -28 -27 -25 -24 -22 -20 -19 -18 -18 -18 -18 -18 -19 -22 -26 -28 -29 -30 -30 -30 -30 -27 -22 -18 -16 -20 -23 -25 -25 -26 -26 -26 -26 -26 -26 -26 -26 -26 -27 -28 -29 -29 -27 -23 -21 -21 -23 -25 -27 -28 -28 -27 -27 -27 -28 -29 -29 -28 -28 -28 -28 -29 -30 -31 -32 -33 -33 -34 -33 -31 -28 -26 -24 -23 -23 -21 -19 -18 -18 -19 -21 -24 -26 -28 -28 -29 -32 -33 -32 -31 -31 -32 -32 -33 -33 -34 -35 -34 -33 -32 -32 -33 -34 -35 -34 -33 -30 -28 -27 -27 -28 -29 -31 -31 -32 -32 -32 -31 -29 -27 -25 -24 -19 -13 -9 -7 -10 -14 -18 -20 -23 -25 -27 -29 -30 -31 -32 -33 -34 -33 -31 -29 -26 -21 -13 -5 2 7 10 9 6 1 -2 -4 -6 -8 -10 -11 -12 -14 -19 -24 -27 -27 -26 -25 -24 -25 -26 -29 -29 -28 -24 -20 -17 -18 -20 -22 -22 -19 -18 -17 -19 -21 -24 -27 -31 -35 -38 -41 -44 -48 -51 -54 -55 -56 -55 -54 -52 -49 -47 -45 -44 -43 -42 -40 -39 -38 -37 -39 -43 -49 -54 -59 -60 -59 -57 -54 -52 -51 -52 -53 -54 -54 -53 -50 -46 -41 -38 -38 -39 -41 -43 -45 -48 -50 -55 -61 -68 -73 -73 -70 -66 -64 -62 -62 -62 -62 -61 -62 -62 -62 -62 -61 -60 -59 -57 -56 -55 -55 -56 -56 -55 -52 -47 -41 -39 -40 -43 -47 -51 -54 -57 -60 -64 -68 -72 -76 -78 -80 -79 -77 -75 -72 -69 -66 -63 -59 -55 -53 -53 -52 -51 -50 -48 -48 -47 -46 -44 -41 -39 -36 -36 -39 -44 -50 -49 -44 -41 -42 -46 -47 -47 -45 -42 -39 -38 -40 -44 -47 -51 -56 -61 -62 -60 -57 -34 -32 -31 -31 -29 -26 -22 -21 -22 -27 -33 -37 -36 -33 -31 -29 -23 -15 -8 -5 -4 -4 -4 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -3 -4 -5 -7 -9 -12 -15 -18 -19 -19 -18 -18 -19 -22 -25 -25 -24 -22 -21 -21 -20 -19 -17 -15 -13 -12 -11 -11 -12 -14 -15 -16 -16 -15 -14 -12 -12 -11 -11 -12 -12 -15 -18 -21 -23 -25 -26 -27 -28 -29 -29 -30 -29 -27 -26 -25 -23 -22 -22 -21 -19 -17 -15 -17 -21 -25 -29 -32 -33 -33 -32 -30 -27 -24 -20 -18 -19 -22 -24 -25 -26 -26 -26 -26 -25 -25 -26 -27 -28 -29 -31 -33 -33 -30 -26 -23 -21 -22 -24 -26 -27 -26 -25 -25 -26 -28 -29 -30 -29 -29 -28 -28 -28 -29 -30 -31 -33 -34 -36 -36 -35 -33 -30 -25 -23 -22 -22 -22 -21 -20 -20 -21 -24 -26 -26 -26 -27 -29 -31 -32 -32 -34 -34 -33 -32 -33 -34 -35 -35 -34 -33 -32 -32 -33 -34 -35 -34 -32 -30 -28 -27 -27 -28 -30 -31 -31 -32 -32 -32 -30 -28 -26 -25 -22 -18 -13 -9 -9 -12 -15 -19 -22 -24 -27 -29 -30 -31 -32 -33 -34 -34 -34 -32 -30 -26 -18 -9 1 7 9 8 5 1 -3 -4 -5 -6 -9 -11 -12 -14 -17 -21 -24 -26 -26 -26 -27 -27 -27 -29 -30 -30 -27 -23 -20 -19 -20 -22 -23 -21 -19 -18 -18 -21 -23 -25 -28 -32 -35 -38 -41 -45 -49 -52 -54 -56 -55 -54 -52 -49 -47 -46 -45 -43 -41 -40 -39 -38 -37 -38 -41 -46 -52 -57 -59 -59 -57 -54 -52 -52 -52 -53 -54 -55 -54 -52 -49 -44 -39 -38 -39 -41 -43 -45 -47 -50 -54 -60 -66 -71 -72 -70 -67 -64 -63 -63 -63 -63 -63 -63 -63 -63 -62 -61 -61 -60 -59 -57 -56 -56 -55 -55 -55 -53 -50 -44 -41 -41 -43 -45 -48 -51 -54 -57 -61 -65 -70 -73 -76 -78 -78 -77 -75 -73 -70 -68 -65 -61 -57 -55 -54 -54 -52 -50 -48 -48 -48 -48 -46 -44 -40 -37 -36 -37 -42 -48 -51 -51 -49 -48 -48 -49 -50 -49 -46 -41 -38 -38 -43 -46 -50 -54 -58 -58 -56 -55 -34 -32 -31 -31 -29 -26 -24 -24 -26 -31 -35 -36 -35 -32 -31 -27 -21 -12 -5 -2 -1 -0 -1 -2 -3 -4 -4 -5 -5 -4 -4 -4 -3 -3 -2 -1 -2 -4 -6 -9 -11 -13 -15 -16 -16 -15 -15 -16 -20 -23 -23 -22 -20 -20 -20 -21 -21 -20 -18 -15 -12 -10 -7 -7 -8 -10 -13 -14 -14 -13 -11 -10 -9 -8 -7 -7 -9 -11 -14 -17 -19 -21 -23 -25 -26 -27 -27 -28 -26 -25 -24 -24 -24 -24 -22 -20 -18 -17 -19 -22 -27 -31 -34 -36 -36 -34 -30 -28 -26 -23 -21 -21 -23 -24 -26 -26 -26 -26 -25 -24 -23 -24 -26 -28 -30 -31 -32 -33 -31 -28 -24 -22 -22 -24 -26 -26 -25 -23 -23 -24 -26 -28 -30 -30 -30 -29 -28 -28 -28 -29 -31 -33 -35 -37 -36 -35 -34 -32 -28 -25 -23 -22 -22 -22 -22 -22 -22 -25 -25 -25 -24 -24 -26 -28 -30 -32 -33 -34 -34 -33 -32 -33 -35 -35 -35 -34 -33 -33 -34 -35 -36 -35 -34 -32 -29 -27 -27 -27 -29 -30 -31 -31 -32 -32 -31 -29 -27 -26 -25 -22 -18 -13 -11 -11 -13 -16 -20 -23 -26 -28 -29 -30 -32 -33 -34 -35 -35 -35 -34 -32 -25 -15 -2 9 12 11 8 4 0 -2 -3 -3 -6 -10 -13 -16 -17 -19 -21 -23 -25 -27 -28 -28 -29 -30 -32 -32 -30 -27 -24 -22 -22 -23 -24 -23 -21 -20 -19 -21 -23 -25 -26 -29 -32 -35 -38 -42 -46 -49 -52 -54 -55 -54 -52 -50 -48 -47 -45 -43 -41 -39 -38 -37 -37 -38 -40 -44 -49 -55 -58 -59 -59 -58 -56 -55 -55 -55 -55 -55 -55 -54 -52 -47 -42 -38 -37 -40 -42 -44 -47 -49 -54 -59 -64 -69 -70 -69 -66 -64 -63 -63 -64 -64 -64 -64 -63 -63 -62 -61 -61 -60 -59 -58 -57 -56 -55 -54 -53 -53 -51 -47 -44 -43 -43 -44 -46 -48 -51 -55 -60 -64 -68 -71 -74 -76 -77 -76 -75 -73 -71 -69 -67 -62 -59 -56 -55 -54 -52 -50 -49 -48 -48 -49 -48 -45 -41 -38 -36 -36 -40 -45 -49 -52 -52 -50 -49 -50 -51 -52 -50 -45 -40 -37 -40 -45 -49 -52 -55 -54 -53 -54 -33 -31 -30 -30 -28 -27 -26 -28 -30 -33 -34 -34 -32 -30 -28 -24 -18 -11 -5 -1 2 3 2 0 -2 -3 -4 -5 -4 -3 -2 -2 -2 -1 -0 0 -1 -3 -6 -9 -10 -11 -12 -12 -11 -11 -12 -15 -18 -21 -22 -21 -21 -21 -21 -21 -21 -22 -21 -19 -16 -14 -11 -9 -9 -10 -12 -13 -13 -12 -11 -10 -10 -9 -8 -7 -8 -9 -11 -14 -17 -20 -23 -24 -25 -25 -25 -25 -25 -25 -24 -24 -25 -25 -24 -22 -20 -20 -21 -23 -26 -29 -33 -36 -36 -35 -32 -30 -28 -27 -27 -27 -27 -28 -28 -27 -26 -25 -23 -22 -20 -21 -23 -26 -29 -30 -30 -30 -29 -26 -23 -21 -21 -23 -25 -26 -25 -23 -22 -22 -24 -27 -30 -31 -31 -30 -29 -28 -28 -29 -30 -32 -34 -36 -35 -34 -33 -32 -30 -26 -23 -21 -21 -22 -22 -23 -23 -23 -23 -22 -21 -21 -23 -25 -27 -29 -31 -33 -34 -33 -32 -33 -34 -36 -37 -37 -37 -37 -36 -36 -36 -36 -35 -34 -31 -29 -28 -27 -28 -29 -30 -30 -31 -32 -31 -30 -29 -28 -27 -26 -24 -19 -15 -13 -12 -15 -18 -22 -25 -27 -28 -30 -31 -33 -34 -35 -35 -36 -36 -35 -32 -23 -9 9 16 17 14 9 3 0 -0 -0 -3 -8 -14 -17 -18 -19 -20 -22 -25 -28 -29 -29 -30 -31 -32 -33 -32 -30 -28 -26 -25 -25 -25 -24 -23 -22 -21 -21 -22 -24 -26 -28 -31 -33 -36 -39 -43 -47 -50 -52 -54 -54 -53 -51 -48 -47 -45 -44 -42 -40 -38 -37 -37 -38 -40 -43 -48 -53 -57 -59 -60 -60 -59 -58 -57 -56 -56 -56 -56 -55 -54 -50 -45 -39 -36 -38 -41 -43 -45 -48 -52 -57 -63 -68 -69 -68 -66 -64 -63 -63 -64 -64 -65 -64 -64 -63 -62 -61 -60 -60 -59 -58 -57 -55 -54 -52 -52 -51 -51 -49 -46 -44 -44 -44 -45 -47 -49 -53 -59 -64 -68 -71 -73 -75 -75 -74 -73 -72 -72 -71 -68 -64 -60 -58 -56 -56 -54 -52 -49 -48 -48 -48 -48 -46 -42 -38 -36 -35 -38 -43 -47 -51 -52 -50 -48 -49 -50 -53 -53 -50 -45 -38 -38 -42 -47 -50 -51 -50 -51 -54 -30 -30 -29 -28 -28 -28 -29 -31 -32 -32 -32 -32 -30 -28 -23 -18 -14 -11 -7 -2 1 3 3 1 -1 -3 -4 -4 -3 -2 -1 0 1 1 1 1 -0 -2 -5 -7 -7 -8 -8 -9 -10 -10 -11 -13 -16 -19 -20 -21 -22 -23 -23 -23 -23 -23 -23 -22 -21 -20 -19 -17 -16 -15 -15 -15 -14 -12 -12 -12 -12 -12 -11 -10 -10 -11 -14 -16 -19 -22 -24 -24 -24 -24 -24 -25 -25 -25 -25 -24 -24 -25 -25 -25 -24 -23 -23 -24 -25 -27 -31 -34 -35 -36 -35 -33 -31 -30 -30 -31 -32 -32 -32 -31 -28 -26 -23 -20 -19 -19 -21 -24 -26 -28 -28 -28 -26 -23 -20 -18 -18 -21 -23 -25 -25 -23 -22 -21 -23 -26 -29 -30 -30 -30 -30 -29 -29 -29 -29 -30 -31 -33 -33 -32 -31 -30 -29 -26 -23 -21 -20 -21 -21 -22 -22 -21 -20 -19 -18 -18 -20 -21 -23 -26 -29 -33 -35 -35 -34 -34 -34 -35 -36 -37 -38 -38 -37 -36 -35 -35 -36 -35 -34 -31 -29 -28 -28 -28 -29 -30 -30 -31 -31 -31 -31 -30 -29 -29 -27 -25 -21 -17 -15 -15 -17 -20 -24 -27 -28 -29 -31 -33 -35 -36 -36 -37 -37 -37 -36 -31 -21 -2 12 17 15 10 5 2 1 1 -1 -7 -13 -18 -20 -21 -22 -23 -26 -28 -29 -30 -31 -32 -33 -34 -34 -34 -31 -29 -28 -26 -26 -25 -24 -23 -22 -22 -22 -24 -26 -28 -30 -33 -35 -38 -42 -46 -49 -51 -52 -53 -54 -52 -50 -48 -46 -45 -43 -40 -38 -36 -36 -37 -39 -42 -47 -52 -55 -58 -59 -60 -59 -58 -57 -57 -57 -57 -57 -56 -56 -53 -49 -42 -37 -37 -39 -41 -43 -45 -50 -56 -62 -66 -67 -67 -64 -63 -63 -63 -63 -64 -64 -64 -63 -62 -62 -61 -60 -59 -59 -58 -56 -55 -53 -51 -50 -49 -49 -48 -46 -44 -44 -44 -45 -46 -47 -52 -59 -64 -68 -71 -73 -75 -76 -75 -72 -71 -72 -72 -71 -66 -62 -59 -57 -57 -56 -54 -51 -48 -47 -48 -48 -47 -44 -40 -36 -35 -37 -41 -46 -50 -51 -49 -48 -47 -48 -51 -53 -53 -50 -43 -38 -39 -43 -47 -47 -48 -51 -56