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 1 4 6 4 0 0 0 7 12 9 1 0 0 0 3 5 3 0 0 0 0 0 1 0 0 0 0 0 0 0 1 4 2 0 0 0 1 1 1 1 2 4 5 6 6 5 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 3 4 4 4 4 3 2 2 2 3 4 4 4 4 5 8 13 15 12 8 3 0 0 2 2 1 0 0 0 1 2 4 5 6 7 7 7 7 8 10 14 18 18 18 18 21 26 29 29 25 18 12 6 2 0 0 0 0 1 1 1 0 0 0 1 1 1 2 4 6 7 7 7 7 9 11 13 14 14 13 13 11 8 6 5 4 4 2 0 0 0 0 0 0 0 3 9 16 18 12 9 9 11 12 12 10 7 4 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 1 3 5 6 8 10 12 14 12 13 15 17 18 18 20 23 27 31 34 38 42 47 51 55 59 63 70 76 81 85 88 90 92 98 103 106 105 103 102 105 111 116 121 123 125 128 131 133 133 129 123 118 114 108 104 110 124 137 146 152 155 154 150 146 144 144 145 146 142 135 128 122 118 114 110 106 103 103 107 117 126 136 141 142 142 138 136 135 134 133 132 131 130 129 130 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 1 3 7 6 3 0 0 4 16 16 8 0 0 0 2 10 8 0 0 0 0 0 0 1 0 0 0 0 0 0 1 5 6 2 0 0 1 3 4 5 5 7 8 7 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 6 7 6 6 5 5 5 4 3 2 1 1 1 2 2 1 2 3 6 9 11 10 8 6 4 4 5 5 4 1 0 0 0 1 3 5 6 8 8 7 7 8 11 15 20 21 20 18 18 22 25 25 22 18 13 8 4 1 0 0 0 0 0 0 0 0 0 0 0 1 2 3 5 7 8 8 8 9 9 10 12 14 16 17 16 12 7 6 7 9 8 4 1 0 0 0 0 0 2 8 16 21 18 12 11 13 16 17 14 10 8 5 3 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 2 4 6 8 7 8 10 11 12 12 13 15 17 19 20 22 27 31 35 38 41 46 52 59 66 72 77 78 80 84 90 95 99 99 98 99 102 107 112 115 117 121 126 130 133 134 130 126 119 111 101 102 113 127 139 148 153 153 151 147 144 144 146 150 150 145 138 130 124 119 115 110 104 99 96 101 111 123 134 140 141 142 140 138 135 133 131 131 130 129 128 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 1 3 4 4 2 0 0 2 12 19 13 4 0 0 1 11 13 7 0 0 0 0 0 0 0 0 0 0 0 0 1 3 10 6 2 0 2 5 8 9 11 12 12 8 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 12 13 11 8 6 4 3 2 2 1 0 0 0 0 0 0 0 0 2 5 8 8 7 5 4 5 6 7 6 4 3 1 0 1 2 4 6 8 8 8 8 9 11 16 22 24 21 18 16 18 21 22 19 16 12 9 6 3 1 0 0 0 0 0 0 0 0 0 0 0 1 3 5 7 8 10 11 12 12 11 12 13 16 20 21 18 12 7 7 10 12 11 6 1 0 0 0 0 1 6 14 21 22 16 13 14 16 17 14 11 8 5 3 4 5 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 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 1 2 3 4 5 6 7 7 8 9 10 12 13 14 16 19 22 24 27 30 35 41 47 54 60 65 68 71 75 80 86 91 94 95 96 99 103 105 107 111 115 121 127 131 132 131 127 120 105 99 103 112 124 136 145 148 148 145 142 141 142 145 148 149 146 140 132 126 121 116 110 102 94 92 96 106 120 133 137 139 139 137 135 133 132 132 133 131 128 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 1 4 12 15 9 2 0 1 10 18 10 1 0 0 0 0 0 0 0 0 0 0 0 0 3 13 13 6 2 2 6 12 12 14 15 14 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 8 14 16 13 8 4 2 1 1 0 0 0 0 0 0 0 0 0 0 0 2 4 6 6 4 3 4 6 8 8 7 5 4 3 2 2 4 6 8 9 9 9 10 12 18 24 27 24 19 15 15 18 19 17 14 11 9 7 4 2 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 8 10 13 15 17 17 16 16 18 20 22 20 16 11 8 8 11 13 12 7 3 0 0 0 1 4 12 19 22 19 14 13 14 15 13 9 4 2 1 1 3 7 8 5 1 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 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 1 2 2 3 3 3 4 6 7 8 10 12 14 16 18 20 22 26 30 35 41 48 54 58 62 66 71 77 84 89 92 93 94 95 96 99 103 109 114 120 125 129 130 128 116 104 99 100 108 119 131 138 142 141 138 136 137 138 141 145 148 148 142 135 129 124 118 109 98 90 88 92 102 115 126 134 137 137 136 134 134 134 134 134 130 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 9 5 1 2 7 18 18 8 0 0 0 0 0 0 0 0 0 0 0 0 3 10 15 12 5 2 4 10 15 16 15 12 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 12 15 12 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 4 4 3 2 4 6 9 9 8 7 5 4 4 4 6 8 10 10 10 10 13 18 24 27 26 20 15 13 14 16 16 13 11 9 7 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 6 9 13 17 21 24 25 25 24 24 24 21 17 13 9 8 9 11 12 12 8 4 2 0 1 4 9 16 21 20 15 11 11 12 10 7 3 1 0 0 0 2 6 8 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 4 2 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 0 0 0 0 0 0 0 0 1 2 2 2 3 5 7 9 10 12 13 16 18 21 25 31 38 44 50 54 58 63 69 76 82 87 89 89 88 89 91 95 100 105 111 118 124 127 122 110 101 97 97 103 114 124 131 134 133 132 132 132 134 136 141 147 148 146 140 133 126 118 106 95 88 85 88 97 110 121 128 132 134 132 131 132 133 134 131 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 3 1 1 4 13 21 12 4 0 0 0 0 1 0 0 0 0 0 0 0 5 12 14 8 3 2 5 10 13 10 5 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 10 12 8 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 3 2 2 4 6 10 11 10 8 6 5 6 7 8 9 10 10 10 11 16 22 26 26 21 15 12 12 13 13 12 10 8 6 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 5 8 10 14 19 24 28 30 30 29 27 23 19 14 11 9 10 11 11 11 10 8 5 2 2 4 8 14 20 20 15 9 7 9 8 5 2 0 0 0 0 0 1 3 5 4 2 0 0 0 0 0 0 0 1 1 1 2 2 3 4 5 8 10 7 2 0 0 0 2 5 6 5 2 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 1 2 2 2 3 5 7 9 11 14 17 22 28 35 40 44 49 55 61 67 73 79 83 84 84 83 85 88 91 95 101 110 117 117 109 101 96 94 96 101 109 117 123 126 126 127 129 130 130 131 138 144 149 150 146 139 128 116 104 93 84 81 85 94 104 112 118 124 125 125 127 131 132 130 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 2 8 17 18 6 1 0 0 0 2 1 1 0 0 0 0 0 3 8 12 11 6 2 2 4 6 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 9 10 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 2 4 4 3 2 1 3 6 10 12 11 9 8 7 7 9 10 10 10 10 10 14 20 24 24 21 16 12 11 11 11 10 8 6 4 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 6 9 11 14 18 23 27 29 29 27 24 20 16 13 11 11 11 11 10 10 8 6 4 3 4 6 12 18 19 16 9 4 5 6 4 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 3 5 5 4 5 7 10 11 11 10 11 10 6 1 0 0 2 6 8 7 4 1 0 1 3 4 3 1 0 0 0 0 0 0 0 0 0 1 2 3 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 1 1 2 4 7 8 10 14 19 24 30 36 41 47 52 57 63 70 75 79 80 80 81 82 83 86 93 102 104 102 97 92 90 91 93 96 101 108 114 118 122 126 129 128 124 126 133 142 149 153 151 141 128 115 102 90 82 80 83 89 96 102 109 114 118 120 124 130 129 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 19 10 2 0 0 1 3 5 2 2 2 2 1 3 5 8 10 10 7 3 2 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 8 7 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 4 3 1 1 2 6 10 13 12 10 9 9 10 12 12 11 10 10 12 18 22 23 20 16 12 10 10 10 9 7 5 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 6 8 10 12 15 18 21 23 22 21 18 16 14 13 13 13 12 10 9 8 7 6 5 5 7 11 16 19 16 9 2 0 4 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 6 8 10 12 14 17 17 15 12 9 8 6 3 0 0 1 4 6 6 4 2 0 0 1 2 2 2 2 2 2 2 0 0 0 0 1 3 4 6 5 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 1 1 2 3 4 6 9 15 20 27 33 38 43 47 52 58 65 70 74 76 78 79 79 81 87 92 93 90 87 86 86 86 86 88 93 100 106 114 122 129 129 124 120 123 130 140 149 151 148 140 127 113 98 88 80 78 80 84 89 96 102 107 111 116 120 122 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 13 20 17 4 1 0 1 3 8 7 5 5 5 6 8 12 15 15 12 7 3 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 3 5 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 2 1 1 3 5 8 10 10 10 10 12 15 17 15 13 12 13 16 20 21 20 16 12 9 9 9 8 6 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 5 8 10 12 14 15 15 14 14 13 13 14 14 14 13 11 10 9 8 8 8 8 10 12 16 18 16 10 4 1 3 6 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 5 8 10 14 16 16 14 10 5 1 0 0 0 0 0 1 3 4 2 1 0 0 0 0 1 1 0 0 2 3 2 0 0 0 1 5 8 9 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 1 1 0 0 3 7 12 17 23 28 31 35 41 48 54 59 64 70 74 77 78 81 84 86 85 83 82 82 81 79 79 80 86 92 102 114 124 129 126 122 120 123 129 137 143 147 145 138 125 110 96 86 79 76 77 80 86 91 96 101 106 111 114 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 17 17 13 7 5 4 4 6 11 12 13 12 12 15 20 24 23 18 11 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 2 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 1 2 3 2 2 2 4 5 7 7 8 9 11 15 20 21 19 17 16 18 21 22 20 16 12 9 9 9 7 5 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 8 10 10 10 10 10 10 10 12 14 14 13 11 10 9 10 10 11 12 13 14 16 18 16 11 5 2 3 6 8 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 6 8 8 7 4 2 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 1 5 9 10 7 1 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 4 8 13 17 21 27 34 40 45 50 57 63 69 74 79 81 83 83 82 81 80 79 77 74 72 74 79 87 99 112 122 126 125 123 122 124 126 132 138 142 141 134 120 106 94 84 78 75 75 79 83 87 92 98 102 106 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 9 12 13 13 16 24 24 18 11 9 16 25 27 23 20 23 30 31 26 19 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 1 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 1 2 2 3 4 5 6 6 6 6 8 12 17 22 23 22 21 21 22 22 20 17 13 10 8 8 7 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 1 5 8 9 10 10 9 8 9 10 12 13 12 11 10 9 10 12 14 15 16 16 17 17 16 12 7 4 3 6 8 7 4 1 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 0 0 0 0 0 0 0 1 1 0 0 2 5 9 10 7 0 0 0 0 2 4 7 5 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 2 5 10 15 21 27 33 39 45 52 59 65 71 76 79 81 82 82 82 81 78 75 72 70 70 74 81 93 108 117 122 124 123 123 121 123 127 133 138 137 126 113 101 90 83 77 74 75 77 80 85 90 94 98 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 10 8 8 14 28 49 43 27 14 13 25 39 39 32 27 27 31 29 23 17 9 1 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 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 1 2 3 4 5 6 6 6 6 6 9 13 18 21 22 22 22 21 21 20 17 14 11 9 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 5 8 9 10 10 10 10 10 11 11 11 10 9 9 10 12 15 17 18 18 18 17 15 12 8 6 5 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 1 2 2 4 7 12 14 9 2 0 0 0 1 4 8 8 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 1 5 9 15 21 27 34 41 48 54 60 66 70 74 77 79 81 82 82 80 76 72 69 67 68 75 87 99 108 115 119 120 118 116 118 124 132 135 128 117 106 96 88 81 76 73 73 76 80 83 86 88 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 7 11 22 41 60 52 36 26 26 35 40 36 30 25 24 24 20 17 14 8 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 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 1 3 5 6 6 6 5 5 7 9 13 17 19 20 20 20 19 18 16 13 10 9 8 7 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 3 6 8 9 10 11 11 11 10 10 9 8 8 8 10 12 15 17 18 17 16 14 11 9 8 8 8 7 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 1 2 3 5 8 13 17 14 7 0 0 0 0 1 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 1 4 9 14 20 27 35 42 49 55 60 65 69 73 76 79 81 82 81 79 75 70 65 65 71 78 86 94 102 107 108 108 110 116 125 130 127 120 110 100 92 84 77 72 70 72 75 77 79 81 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 9 16 28 43 55 52 43 38 37 37 30 23 18 16 16 15 13 13 11 6 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 1 2 4 5 5 4 4 4 6 9 12 15 16 17 17 16 15 13 11 9 8 7 6 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 1 2 4 6 8 9 9 9 8 8 7 6 5 5 6 9 12 13 14 13 12 10 9 8 8 8 6 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 1 2 2 3 2 2 3 4 7 10 15 15 10 3 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 1 2 6 11 18 25 32 40 48 54 59 63 68 72 76 78 81 83 82 78 71 66 64 66 69 74 80 84 89 93 98 105 116 123 124 120 113 104 95 88 81 74 70 69 70 72 73 75 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 20 29 38 46 47 44 40 35 27 15 9 6 7 9 10 11 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 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 1 2 4 4 4 3 4 6 8 10 12 14 14 13 12 10 9 7 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 1 2 4 4 5 5 4 4 3 2 2 2 3 5 7 8 9 9 9 8 7 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 2 4 5 4 3 1 0 1 3 6 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 1 4 8 14 22 30 39 45 51 56 62 67 71 75 80 83 84 80 74 68 64 63 63 65 67 70 75 81 89 100 111 118 120 117 109 100 92 85 78 71 67 67 69 70 72 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 14 20 25 30 37 39 37 31 23 13 4 1 1 3 6 9 12 12 8 3 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 1 2 3 4 4 5 6 8 9 11 11 11 10 8 6 5 4 4 4 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 1 1 1 0 0 0 0 1 2 3 4 5 6 5 4 2 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 3 4 3 1 1 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 1 3 6 12 20 28 35 42 48 54 60 66 72 77 81 83 81 76 70 66 63 62 61 61 63 66 73 82 93 104 113 117 114 106 98 90 83 75 69 67 68 68 68 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 14 18 21 24 28 27 22 17 11 4 0 0 1 3 7 12 15 12 6 1 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 2 4 5 6 6 6 7 8 9 10 9 8 6 5 4 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 1 1 1 2 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 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 2 5 11 17 25 32 39 46 54 60 66 73 79 81 79 75 71 67 65 63 62 61 61 63 68 74 84 97 110 114 111 105 97 89 81 73 69 68 68 67 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 13 16 17 18 17 14 9 6 5 4 2 1 2 5 10 16 18 13 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 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 2 5 7 8 8 9 9 10 10 10 9 7 5 4 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 1 5 10 16 23 31 38 45 52 60 68 74 76 74 72 70 69 68 67 66 64 62 61 62 68 77 91 104 110 110 104 96 88 79 72 69 68 68 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 14 13 10 7 5 4 5 8 11 9 6 6 8 13 20 20 12 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 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 1 2 3 4 4 4 5 7 9 11 12 12 12 12 11 10 9 8 6 5 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 1 1 1 0 0 0 0 0 1 5 10 17 23 30 37 44 52 60 65 68 69 69 69 70 71 72 70 66 62 59 59 63 73 86 98 105 106 102 95 85 77 70 68 69 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 10 12 10 7 5 6 8 12 18 20 12 7 6 11 18 24 21 10 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 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 1 1 2 3 4 6 8 9 9 10 11 13 14 16 16 16 14 13 12 10 9 7 6 6 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 1 2 2 1 0 0 0 0 0 2 7 12 18 24 30 36 44 51 57 61 64 66 68 70 73 74 72 68 63 60 59 62 70 79 90 98 102 99 92 82 74 69 68 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 7 9 14 19 24 24 18 7 5 8 15 21 22 13 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 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 1 3 4 6 8 10 11 12 13 14 16 18 19 19 19 17 15 13 11 9 8 7 6 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 1 1 2 2 1 0 0 0 0 1 4 10 15 20 25 30 36 43 49 55 59 62 65 70 74 75 74 70 66 62 61 63 67 74 83 91 94 93 87 79 72 69 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 7 8 13 22 28 27 19 8 2 4 12 18 18 11 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 7 6 3 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 8 10 10 11 12 14 17 20 21 21 20 18 16 13 11 9 8 7 6 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 1 1 2 1 0 0 0 0 0 3 8 13 17 21 26 30 36 43 49 54 57 62 68 74 77 77 74 70 67 64 64 66 71 77 83 86 86 83 78 73 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 7 10 18 28 30 22 9 2 1 9 16 17 10 3 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 1 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 7 7 7 8 9 12 16 19 20 20 18 15 12 10 9 7 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 1 1 0 0 0 0 0 0 2 6 11 15 19 22 26 30 36 42 46 51 58 66 74 79 80 77 74 71 68 66 66 69 73 76 79 81 80 77 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 13 22 28 24 12 2 0 6 16 17 11 3 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 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 4 4 3 1 1 2 5 8 12 14 16 16 14 11 9 7 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 1 4 9 13 16 19 22 26 30 35 40 47 54 63 73 78 80 79 77 74 71 68 68 69 70 72 74 76 76 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 9 16 23 22 13 4 0 3 15 21 13 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 2 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 2 1 1 1 0 0 0 2 5 9 12 13 12 10 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 2 6 10 14 16 19 22 26 30 36 43 50 60 68 74 77 78 78 76 74 71 70 69 69 69 70 71 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 17 21 14 6 1 2 9 22 19 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 3 1 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 1 4 8 10 11 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 15 17 19 22 27 32 38 46 55 62 68 72 75 77 77 76 74 73 72 70 68 67 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 11 7 3 3 7 15 16 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 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 1 6 9 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 9 12 14 16 19 23 28 34 41 48 54 60 66 71 75 78 78 78 77 75 72 69 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 4 5 7 7 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 1 4 7 9 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 13 16 20 25 30 35 39 45 52 60 68 73 77 80 82 82 79 76 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 4 7 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 1 3 7 9 10 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 2 5 7 8 10 14 18 22 26 29 34 40 47 55 64 71 76 80 83 84 83 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 1 4 6 8 10 10 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 2 4 5 6 9 13 16 20 24 27 30 35 42 51 62 69 74 79 82 83 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 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 10 11 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 1 3 4 6 8 12 16 19 22 24 27 32 39 49 58 66 72 76 78 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 4 8 11 12 12 11 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 16 18 20 23 26 30 37 46 55 63 68 71 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 15 13 11 9 6 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 1 2 4 6 9 12 16 18 21 23 26 30 36 44 52 59 65 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 10 12 12 10 8 6 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 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 2 4 6 10 13 16 18 20 23 25 29 35 42 49 56 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 5 4 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 1 3 4 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 2 4 7 10 13 15 17 18 20 23 27 32 38 45 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 7 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 7 10 12 13 14 16 17 20 24 29 35 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 13 11 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 5 7 9 10 11 12 13 15 17 22 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 15 17 15 10 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 6 7 8 9 10 11 12 14 17 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 18 21 20 15 7 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 8 10 11 12 13 15 19 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 14 20 25 25 20 11 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 5 6 6 7 8 10 12 13 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 15 22 28 29 24 15 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 7 8 8 9 10 11 13 14 14 15 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 1 4 8 14 23 29 31 26 18 8 1 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 9 11 12 12 12 13 14 14 15 16 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 7 14 22 29 32 28 19 8 2 0 0 0 0 0 0 0 0 0 1 1 1 3 7 11 13 14 15 15 15 15 15 16 17 18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 5 7 14 22 29 33 29 19 9 3 0 0 0 0 0 0 0 0 1 2 3 5 9 12 14 16 17 17 17 17 18 19 20 21 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 13 22 30 33 29 20 11 4 1 0 0 0 0 0 1 3 5 7 8 11 14 16 18 19 20 21 22 23 23 24 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 13 22 30 34 32 25 16 9 5 3 2 2 3 5 7 10 11 12 14 16 19 21 23 25 26 27 29 30 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 13 22 31 37 38 34 27 20 16 13 11 11 12 13 14 15 16 18 20 22 25 27 29 31 33 35 38 41 45 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 12 20 31 41 47 45 41 37 32 28 24 21 20 19 19 19 21 24 26 29 30 32 34 36 38 41 46 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 17 27 41 50 54 55 54 51 46 41 36 32 30 29 29 30 32 34 36 37 38 39 41 44 48 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 7 9 13 22 34 44 53 60 65 66 65 63 62 59 58 57 56 55 54 52 52 52 52 54 56 57 57 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 6 7 11 17 24 32 42 54 66 76 83 88 89 90 91 91 90 89 87 88 86 83 81 79 76 72 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 6 8 10 14 18 20 27 41 57 72 83 90 95 97 97 96 95 95 96 98 99 100 96 90 83 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 13 14 13 14 17 24 33 43 53 60 63 64 63 62 61 61 62 64 66 68 69 67 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 11 15 17 16 13 11 10 10 9 11 14 16 18 20 20 21 23 25 26 27 27 27 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 7 12 16 18 18 14 10 6 4 2 0 0 0 0 1 2 3 4 5 6 6 7 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 0 0 0 0 0 0 0 0 0 0 0 0 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 9 15 19 20 18 14 10 6 2 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 13 20 24 24 22 19 15 12 8 5 3 3 3 3 3 3 3 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 19 23 24 24 24 24 24 23 22 20 16 14 12 10 9 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 10 13 16 18 21 24 26 27 27 25 23 21 17 14 12 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 11 13 15 15 14 12 10 9 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 4 4 3 2 2 1 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 15 15 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 15 15 15 15 15 15 15 16 16 16 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 9 9 9 9 10 10 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 13 12 nan nan 12 12 12 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 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 11 11 11 11 11 12 12 12 12 12 12 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 16 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 16 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 15 15 15 15 15 16 16 16 16 17 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 10 10 10 10 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 13 13 12 12 13 13 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 8 8 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 11 11 11 11 11 12 12 12 12 12 12 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 16 17 17 nan nan nan nan 19 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 nan nan nan nan nan nan nan 19 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 18 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 15 15 15 15 16 16 16 16 16 17 17 17 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 11 11 11 11 11 11 11 12 12 nan nan nan 11 12 nan nan nan nan nan nan nan nan 13 13 13 13 13 13 13 13 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 4 4 5 5 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 8 8 8 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 11 11 11 11 12 12 12 12 12 12 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 17 17 nan nan nan nan nan 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 19 nan nan nan nan 19 19 19 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 18 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 15 15 15 15 16 16 16 16 17 17 17 17 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 13 13 12 12 12 12 12 12 12 13 13 13 nan nan 12 12 13 nan nan nan nan nan nan nan 14 14 14 14 14 13 14 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 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 7 7 8 8 8 8 8 9 9 9 8 8 8 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 11 11 11 11 12 12 12 12 12 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 19 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 20 nan nan nan nan 19 20 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 18 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 15 15 16 16 16 17 17 17 17 17 17 17 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 14 13 13 13 13 13 13 13 14 14 nan nan nan 13 13 13 nan nan nan nan nan nan nan 14 15 14 14 14 14 14 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 5 5 5 5 5 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 7 7 7 8 8 8 8 9 9 9 8 8 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 11 11 11 11 12 12 12 12 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 19 19 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 20 nan nan nan nan 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 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 18 nan nan nan nan nan nan nan nan 17 nan nan 16 16 16 16 17 17 17 17 17 17 17 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 15 15 14 14 14 14 14 14 14 14 14 14 nan nan 14 14 14 14 nan nan nan nan nan nan 15 15 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 5 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 7 7 7 7 8 8 8 8 9 9 9 9 8 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 11 11 11 12 12 12 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 19 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 18 18 18 nan nan nan nan nan nan 17 nan nan 17 16 16 17 17 17 18 17 17 17 17 18 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 16 16 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 nan nan nan nan nan nan nan 15 15 16 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 14 14 14 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 9 9 9 9 8 8 8 9 9 9 9 9 10 10 10 10 10 10 10 10 10 11 11 11 11 12 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 19 19 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 19 19 18 18 nan nan 18 18 18 18 17 17 17 17 17 18 18 18 18 18 18 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 16 16 16 16 16 16 16 16 16 16 16 15 15 15 16 16 nan nan nan nan nan nan nan 15 16 16 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 14 14 14 15 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 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 9 9 9 9 8 8 8 8 9 9 9 9 10 10 10 10 10 10 10 10 10 11 11 11 11 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 18 18 19 nan nan nan nan nan nan nan nan nan nan nan nan 20 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 19 19 nan 18 18 18 18 18 18 18 18 18 18 18 18 18 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 17 17 17 17 17 17 17 16 16 16 16 16 16 nan nan nan nan nan nan nan 16 16 17 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 15 15 15 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 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 9 9 9 8 8 8 8 8 9 9 9 10 10 10 10 10 10 10 10 10 10 11 11 11 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 20 20 20 20 20 20 20 20 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 19 18 18 18 18 18 18 18 18 19 19 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 17 17 17 nan nan 17 17 17 17 17 17 17 nan nan 17 17 17 17 17 17 17 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 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 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 8 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 10 10 10 10 10 10 10 10 10 11 11 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 17 18 19 19 19 19 nan 20 20 20 20 20 20 20 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 19 19 19 19 19 19 19 19 19 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 17 17 17 17 17 nan nan 17 17 17 17 18 18 18 18 18 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 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 7 7 7 7 7 7 7 7 7 7 8 8 8 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 9 9 9 9 10 10 10 10 10 10 10 10 10 10 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 19 19 20 20 20 20 19 19 20 20 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 19 19 19 19 19 19 20 20 20 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 17 17 nan 18 18 18 18 nan nan nan nan 18 18 18 18 18 18 18 18 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 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 7 7 7 7 7 7 7 7 8 8 7 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 9 9 9 9 10 10 10 10 10 10 10 10 10 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 17 17 17 18 19 19 19 20 20 20 19 19 19 19 20 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 20 20 20 20 20 20 20 21 21 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 18 18 18 18 18 nan nan nan nan nan nan 18 18 18 18 18 18 18 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 19 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 7 7 7 7 7 7 7 8 8 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 9 9 9 9 9 10 10 10 10 10 10 10 10 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 17 17 17 18 19 19 19 20 20 20 20 20 19 19 20 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 20 20 20 20 20 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 19 19 19 19 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 10 10 10 10 10 10 10 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 17 17 17 17 18 19 19 19 20 20 20 nan nan nan nan nan 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 20 20 20 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 7 7 7 7 7 7 7 7 8 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 10 10 10 10 10 10 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 17 17 17 17 18 19 19 19 20 20 nan nan nan nan nan nan 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 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 7 7 7 7 7 7 8 8 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 10 10 10 10 10 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 17 17 17 18 18 19 19 20 20 nan nan nan nan nan nan 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 7 7 7 7 7 8 8 7 8 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 10 10 10 10 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 18 18 17 18 18 19 nan nan nan nan nan nan nan nan nan 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 7 7 7 8 8 8 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 10 10 10 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 18 18 18 nan nan nan nan nan nan 20 nan nan nan nan 20 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 21 21 21 22 22 22 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 7 7 8 8 8 8 7 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 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 18 18 18 nan nan nan nan 20 20 20 20 nan nan 20 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 22 22 22 22 22 22 22 22 22 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 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 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 19 19 19 20 20 nan nan nan 20 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 22 22 22 22 22 22 22 22 22 22 22 22 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 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 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 18 18 19 19 20 nan nan nan 20 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 22 22 22 23 23 23 23 23 23 22 22 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 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 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 18 18 18 19 20 nan nan nan nan 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 nan nan 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 23 23 23 23 23 23 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 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 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 18 18 19 19 20 nan nan nan 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 nan nan nan nan 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 23 23 23 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 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 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 19 19 19 19 nan nan nan 20 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 23 23 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 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 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 19 19 19 19 nan nan nan nan 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 24 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 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 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 20 20 nan nan nan nan 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 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 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 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 nan nan nan nan nan nan nan nan nan nan nan nan 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 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 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 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 9 9 9 9 9 9 9 9 9 9 9 9 9 9 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 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 9 9 9 9 9 9 9 9 9 9 9 9 9 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 24 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 9 9 10 10 10 9 10 9 9 9 9 9 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 24 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 10 10 10 10 10 10 10 9 9 9 9 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 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 10 10 10 10 10 10 10 9 9 9 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 10 10 10 10 10 10 10 10 9 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 10 10 10 10 10 10 10 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 15 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 10 10 10 10 10 10 10 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 16 12 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 10 10 10 10 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 20 18 14 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 10 10 11 10 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 21 19 16 12 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 10 11 10 11 10 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 22 20 18 13 6 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 11 10 11 11 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 22 21 19 15 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 11 11 10 11 11 10 11 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 23 22 21 18 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 11 11 11 11 10 10 11 11 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 23 22 22 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 11 11 11 11 10 10 10 10 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 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 23 23 24 18 15 nan nan nan nan nan nan nan nan nan nan nan nan 13 13 12 12 11 11 11 11 10 10 10 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 nan 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 25 23 20 nan nan nan nan nan nan nan nan nan 14 14 14 13 13 12 12 11 11 11 10 10 10 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 nan nan 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 25 25 23 21 19 18 17 16 16 16 16 15 15 14 14 14 13 12 12 11 11 11 10 10 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 nan nan nan 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 25 25 25 25 23 21 20 19 18 18 17 17 16 15 15 14 14 13 12 12 11 11 11 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 23 22 20 19 18 17 17 16 16 15 15 14 13 13 12 12 11 11 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 23 22 20 19 18 17 17 16 16 15 14 14 13 13 12 12 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 23 22 21 20 18 17 17 16 15 14 14 13 13 12 12 12 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 nan nan nan nan nan nan nan 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 23 20 19 19 18 17 15 14 13 13 12 12 12 12 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 nan nan nan nan nan nan nan 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 24 25 25 25 24 22 19 15 13 9 11 11 11 11 11 11 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 24 nan nan 24 24 24 24 23 22 10 0 4 6 7 7 8 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 nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 24 24 24 24 24 23 22 16 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 24 24 24 24 24 24 23 23 23 22 20 17 15 12 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 23 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 345 345 345 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 340 339 339 339 339 339 340 341 342 343 343 344 344 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 321 320 320 321 323 324 326 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 331 332 331 nan nan 330 330 330 330 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 156 152 152 151 150 148 145 143 143 142 140 141 139 139 139 139 138 137 136 136 135 133 132 133 132 131 130 129 128 127 125 124 125 125 125 125 125 125 124 123 123 122 121 120 120 120 120 121 122 123 124 123 122 121 120 119 118 118 118 118 119 120 120 120 119 119 120 121 120 120 120 120 120 119 118 116 115 113 113 113 113 111 110 109 108 107 107 106 106 106 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 347 347 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 339 339 339 339 340 340 341 341 342 343 344 344 344 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 323 323 323 323 325 327 328 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 332 333 333 331 331 331 331 332 332 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 151 149 147 144 145 142 141 141 141 141 139 139 139 138 136 136 135 133 132 132 131 130 129 129 128 127 126 126 126 126 126 125 125 125 125 125 125 123 122 121 120 120 122 122 123 124 124 124 123 122 121 119 118 118 118 118 120 120 120 120 119 119 119 120 120 119 119 119 118 118 117 116 114 113 112 111 111 110 109 109 108 107 107 106 106 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 8 9 nan nan nan nan 13 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 nan nan nan nan nan nan nan 7 6 6 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 356 356 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 339 339 339 340 341 341 342 342 343 343 343 343 343 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 329 328 327 325 326 326 326 326 327 329 329 nan nan nan 328 330 nan nan nan nan nan nan nan nan 333 334 333 332 331 331 332 333 333 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 142 141 140 141 139 139 139 139 138 136 135 134 133 132 132 131 130 129 129 128 127 127 126 126 126 126 126 126 126 127 127 126 125 124 122 122 122 122 123 124 125 125 125 124 122 120 119 118 118 118 119 120 120 120 120 119 119 119 119 119 119 119 118 118 118 116 115 113 113 111 111 110 109 109 108 107 107 106 106 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 10 nan nan nan nan nan 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 9 nan nan nan nan 7 7 7 7 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 357 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 339 339 339 340 341 342 342 343 343 343 344 344 343 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 333 332 330 329 328 328 328 328 328 329 330 331 331 nan nan 329 330 330 nan nan nan nan nan nan nan 334 335 334 334 333 332 333 334 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 139 138 137 138 136 136 135 134 133 132 132 130 129 129 128 128 127 127 127 126 126 126 126 126 126 127 127 127 127 125 124 123 123 123 124 125 126 126 125 124 122 120 119 118 118 118 119 120 120 121 120 119 119 119 119 118 118 118 118 118 117 116 115 114 112 111 111 110 109 109 108 107 106 106 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 10 10 nan nan nan nan 8 8 8 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 358 358 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 340 339 340 340 342 342 343 343 343 344 344 344 343 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 334 333 332 332 331 331 332 332 332 333 333 333 nan nan nan 332 332 332 nan nan nan nan nan nan nan 335 335 335 335 334 334 334 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 135 134 135 135 134 132 132 131 130 130 129 129 128 128 127 127 126 126 125 125 125 126 127 127 127 127 126 125 124 123 124 125 125 126 126 126 124 122 121 119 118 118 118 119 120 121 121 120 120 119 119 119 118 118 117 117 117 117 116 116 115 113 112 112 111 109 108 108 107 106 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 nan nan nan nan 8 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 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 349 nan nan nan nan nan nan nan nan 345 nan nan 342 341 341 341 342 344 344 344 344 344 344 344 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 336 335 335 335 334 334 334 335 335 335 335 335 334 nan nan 334 335 335 335 nan nan nan nan nan nan 335 336 336 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 133 132 132 131 131 130 130 129 129 129 128 128 127 126 126 126 125 125 125 127 127 127 127 126 125 124 125 125 125 126 126 126 126 125 123 121 119 118 118 118 118 120 121 121 121 120 120 119 118 118 117 117 117 117 117 117 116 115 114 113 112 111 109 108 108 107 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 11 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 350 350 349 nan nan nan nan nan nan 346 nan nan 343 342 342 342 344 344 345 345 344 344 344 344 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 337 337 337 337 337 337 338 338 338 338 337 336 335 335 336 336 337 nan nan nan nan nan nan nan 335 337 338 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 329 329 328 327 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 130 131 130 131 130 129 130 128 128 127 126 126 126 125 125 125 125 125 127 127 125 125 124 124 126 126 126 127 127 127 126 124 123 121 119 118 118 120 120 121 122 122 121 121 120 118 117 117 117 117 117 117 117 117 116 115 114 112 111 110 109 108 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 14 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 nan nan nan nan nan nan nan nan nan nan nan 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 351 350 349 nan nan 347 347 347 347 346 345 343 343 344 345 346 346 346 345 345 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 339 339 339 339 339 339 340 340 340 339 338 338 338 338 338 338 nan nan nan nan nan nan nan 336 337 338 338 nan nan 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 330 330 331 331 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 130 129 130 129 129 128 128 127 126 126 126 125 125 125 125 125 126 125 125 124 124 126 126 126 127 127 127 127 127 126 123 121 120 118 119 120 121 122 123 122 122 121 120 118 118 117 117 117 117 117 117 117 116 115 114 113 111 111 110 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 11 13 nan nan nan nan nan nan nan nan nan nan nan nan 12 12 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 351 351 nan 348 348 348 348 348 347 346 345 345 345 347 347 348 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 340 340 341 341 341 341 341 341 340 340 340 340 340 nan nan nan nan nan nan nan 338 338 339 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 332 332 332 334 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 129 129 129 129 128 127 126 127 126 125 125 125 124 124 124 124 123 123 124 124 126 126 127 127 127 128 128 127 127 124 123 121 120 120 121 122 123 124 123 123 122 120 119 118 118 117 117 117 117 117 117 117 116 115 114 112 111 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 7 9 12 nan nan nan nan nan 13 13 13 13 12 12 11 11 11 11 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 349 348 348 348 348 348 347 347 347 348 349 349 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 341 342 342 nan nan 342 342 342 341 342 341 341 nan nan 341 341 341 341 341 340 340 340 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 nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 128 128 127 127 126 126 126 125 125 124 123 123 123 123 123 124 124 125 126 127 127 127 128 128 128 128 127 126 125 123 122 121 122 122 124 124 125 123 122 121 120 118 118 117 117 117 117 118 118 117 116 116 114 113 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 6 9 11 12 12 12 nan 12 12 12 11 11 10 10 10 10 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 350 349 349 349 349 349 349 350 350 351 351 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 343 343 343 343 343 nan nan 342 342 342 342 342 343 342 342 342 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 nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 127 127 126 125 125 124 124 123 123 123 123 123 124 124 125 126 126 127 127 128 128 129 129 129 129 128 127 125 124 123 123 124 125 125 125 124 123 122 120 118 118 118 117 117 118 118 118 118 117 116 115 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 6 8 10 11 12 12 13 11 11 11 10 9 9 9 10 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 350 350 350 350 351 351 351 352 353 353 352 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 342 343 nan 343 343 344 344 nan nan nan nan 343 343 343 343 343 343 343 343 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 338 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 126 125 125 124 124 123 123 123 122 123 123 124 124 126 126 127 127 127 128 129 129 130 130 130 129 128 127 126 125 125 125 126 126 125 125 123 122 121 119 119 118 118 118 118 119 119 118 117 116 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 5 5 7 9 10 11 12 12 11 11 10 9 9 9 9 9 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 351 351 351 352 352 353 353 354 354 354 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 343 343 343 343 344 nan nan nan nan nan nan 344 344 344 344 344 344 344 344 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 340 341 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 124 124 124 124 123 123 123 123 123 123 124 126 126 127 127 127 128 128 130 130 130 130 130 129 128 128 127 126 126 126 127 127 126 124 123 123 121 120 119 119 119 119 119 119 119 118 118 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 5 5 6 9 10 11 11 12 11 10 10 9 9 9 9 9 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 352 353 353 353 354 355 355 355 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 345 346 346 345 345 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 342 343 343 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 123 124 123 123 123 123 123 123 124 125 126 127 127 127 128 128 129 129 130 130 130 129 129 129 128 127 128 128 127 127 126 126 125 124 123 122 121 120 119 119 119 119 120 119 118 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 6 5 6 7 9 10 11 12 12 11 nan nan nan nan nan 9 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 353 354 354 355 355 356 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 123 123 124 124 124 125 125 126 126 127 127 128 128 129 129 129 129 129 129 128 128 127 127 128 128 128 128 127 127 126 125 124 123 122 122 121 120 119 120 120 120 119 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 6 5 6 7 9 10 11 12 12 nan nan nan nan nan nan 9 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 355 355 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 123 124 124 125 125 126 126 126 127 128 128 129 129 129 129 129 129 129 127 127 127 127 127 128 128 127 127 126 126 125 124 123 123 122 121 121 120 120 121 120 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 6 6 6 8 10 11 12 12 nan nan nan nan nan nan 10 9 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 124 124 125 126 126 126 126 127 128 129 129 130 130 129 129 129 128 127 128 127 128 127 127 128 128 127 127 126 125 125 123 123 123 122 121 121 121 121 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 6 6 6 8 10 nan nan nan nan nan nan nan nan nan 9 9 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 126 126 126 126 126 128 129 129 130 130 129 129 129 129 128 128 127 128 127 127 128 127 127 127 126 126 125 125 125 124 123 123 122 121 121 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 7 6 nan nan nan nan nan nan 12 nan nan nan nan 9 9 9 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 357 357 357 358 358 358 358 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 126 126 126 126 127 128 129 130 129 129 128 128 128 128 128 128 128 127 127 127 127 127 127 127 128 127 127 126 125 125 124 124 123 123 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 7 7 nan nan nan nan 10 11 11 10 nan nan 9 9 9 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 358 358 358 358 358 358 359 359 359 358 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 126 126 127 127 128 128 129 129 127 127 127 127 128 128 128 127 128 127 127 127 126 126 128 128 128 127 126 126 125 125 125 124 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 8 9 9 10 nan nan nan 9 9 9 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 360 359 359 359 359 359 359 359 359 359 359 359 359 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 126 126 127 128 129 128 127 127 127 126 127 128 128 128 128 127 126 126 126 126 127 128 128 128 127 127 126 126 126 126 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 6 7 8 9 nan nan nan 9 9 9 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 360 359 359 359 360 360 360 0 0 360 360 360 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 125 126 127 127 128 127 127 127 126 127 127 127 127 127 126 126 125 125 126 127 128 128 128 127 128 127 127 127 127 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 5 6 7 9 nan nan nan nan 9 10 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 360 0 0 1 1 1 0 0 360 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 125 125 126 126 126 127 127 126 127 127 127 127 127 126 125 125 125 126 127 128 128 128 128 128 127 127 127 127 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 6 6 8 10 nan nan nan 10 10 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 1 1 1 1 1 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 125 126 126 126 127 127 127 127 127 127 127 126 125 125 125 125 127 128 128 129 128 128 128 128 127 128 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 7 7 9 nan nan nan 10 10 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 2 2 2 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 124 125 126 126 127 128 128 127 127 126 126 125 125 124 125 126 127 128 129 129 129 129 128 128 128 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 9 9 9 nan nan nan nan 11 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 3 3 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 124 125 127 127 128 128 128 127 126 125 125 124 124 125 127 128 129 130 129 129 129 129 130 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 10 nan nan nan nan 11 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 3 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 125 126 127 128 127 127 125 125 124 124 124 125 126 127 129 130 131 131 131 131 130 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 126 127 126 126 125 125 124 123 123 124 125 127 128 129 131 132 132 132 132 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 126 125 125 125 123 123 123 123 125 126 127 129 131 132 133 133 133 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 124 123 123 123 122 122 123 124 126 127 129 131 132 133 134 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 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 122 122 122 122 122 123 123 124 126 128 130 131 133 134 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 5 5 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 121 121 121 121 121 122 122 124 126 128 130 132 133 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 4 5 5 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 120 120 120 120 120 121 122 124 126 128 130 132 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 4 4 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 118 118 118 119 119 120 121 123 126 128 131 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 117 117 117 117 117 118 119 120 123 125 128 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 116 116 116 117 117 118 119 121 124 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 307 289 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 115 115 115 115 116 116 119 120 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 312 298 277 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 114 114 115 116 117 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 324 316 306 288 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 113 113 113 114 115 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 326 320 311 297 261 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 113 113 112 112 112 112 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 329 324 317 306 283 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 113 113 112 112 111 111 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 335 332 329 323 315 302 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 109 111 112 113 113 113 113 112 112 111 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 335 332 328 324 321 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 106 108 109 111 112 113 113 113 113 113 112 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 339 337 336 334 332 349 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 102 104 106 108 110 112 113 114 114 114 114 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 340 339 340 343 3 40 nan nan nan nan nan nan nan nan nan nan nan nan 95 97 99 103 105 108 110 112 113 114 115 115 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 342 342 344 350 3 32 nan nan nan nan nan nan nan nan nan 88 89 90 93 95 98 102 105 108 110 112 113 115 116 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 344 345 347 351 0 22 39 55 67 74 76 77 79 80 82 84 86 88 91 94 98 102 105 108 110 112 114 115 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 345 345 346 348 351 359 13 28 44 56 63 67 71 74 77 79 82 84 87 90 94 98 101 105 108 110 112 114 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 347 347 348 351 357 6 20 36 49 58 64 69 73 76 78 81 84 87 90 94 97 100 103 106 108 110 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 348 348 349 351 355 1 14 30 45 57 65 69 73 76 79 82 85 88 91 94 97 100 102 103 106 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 350 349 350 350 352 357 9 24 39 51 62 68 73 77 80 85 88 91 94 97 98 100 101 103 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 351 350 351 352 354 0 10 26 35 41 50 63 76 84 89 94 97 99 100 100 101 103 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 352 351 351 351 352 353 353 355 360 7 17 27 27 18 71 104 107 109 109 109 108 108 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 353 352 352 352 352 352 nan nan 352 352 351 350 347 341 339 259 155 142 137 133 131 128 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 353 352 352 352 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 352 353 353 354 354 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 352 353 353 353 354 355 355 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 352 352 352 352 352 352 353 354 355 355 353 349 339 316 293 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 350 350 349 348 348 349 349 349 348 345 339 330 318 305 291 281 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 345 345 344 343 341 336 330 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 -21 -22 -23 -24 -24 -24 -24 -24 -24 -25 -25 -25 -24 -23 -23 -22 -23 -23 -23 -22 -21 -21 -20 -20 -21 -21 -22 -22 -21 -21 -20 -19 -18 -16 -15 -14 -12 -11 -10 -8 -6 -5 -3 -0 2 5 6 6 7 7 7 7 7 7 6 5 3 2 1 1 2 3 3 2 2 3 4 6 6 7 7 6 4 2 1 -0 0 -0 -3 -6 -8 -10 -11 -13 -15 -15 -14 -13 -13 -12 -10 -10 -13 -15 -14 -9 -3 -0 1 3 3 4 4 5 4 3 3 4 6 6 4 2 2 3 4 4 4 4 6 7 9 11 12 14 15 16 17 17 18 18 19 20 20 21 21 22 22 22 22 21 21 21 21 22 22 22 22 22 22 22 23 23 22 21 21 21 21 22 23 23 21 17 13 10 8 8 10 11 12 13 13 12 12 11 12 13 14 15 15 16 16 17 18 19 19 20 21 22 23 23 22 20 19 18 17 16 15 14 13 13 14 15 16 16 15 15 15 14 14 14 14 15 15 15 15 14 14 13 12 11 9 7 5 5 5 6 6 5 3 2 2 3 5 6 7 8 9 9 10 9 9 9 10 12 12 13 13 13 13 14 15 15 14 12 10 9 9 9 9 10 10 9 9 9 10 10 10 10 9 9 10 10 11 11 11 9 8 6 6 7 9 10 10 9 9 9 9 10 10 11 10 10 11 11 11 11 11 11 11 12 12 13 13 13 14 14 15 16 16 16 16 16 16 16 16 16 16 16 17 17 17 16 16 15 16 17 19 20 21 21 21 22 21 21 20 20 20 19 19 19 19 19 18 18 17 16 15 14 13 13 12 11 11 11 11 12 13 14 14 14 14 16 16 16 16 15 14 14 14 15 16 18 21 23 23 22 21 19 17 15 13 11 11 11 11 11 10 9 9 9 9 9 9 8 7 6 5 4 4 4 4 4 3 1 -0 -1 -2 -1 -1 -1 -1 -1 -22 -22 -23 -24 -24 -24 -24 -24 -25 -26 -26 -26 -25 -25 -24 -24 -24 -24 -23 -21 -21 -21 -21 -21 -21 -21 -21 -21 -21 -21 -20 -19 -18 -16 -15 -13 -12 -10 -8 -7 -6 -5 -3 -0 2 4 5 5 5 5 6 6 7 7 6 5 3 2 2 2 2 2 2 1 1 2 4 5 5 5 5 4 3 1 0 1 2 0 -3 -7 -9 -8 -7 -10 -14 -16 -15 -14 -14 -13 -9 -8 -12 -16 -15 -10 -3 1 2 3 4 5 5 6 5 5 6 7 6 5 3 2 3 3 3 4 4 6 8 11 12 14 15 16 16 17 17 17 17 18 18 19 20 20 21 21 21 21 21 21 21 21 21 22 22 22 21 22 22 22 22 22 21 20 20 20 20 21 22 21 19 16 14 11 10 10 10 10 10 10 10 10 11 11 13 14 16 16 16 17 17 18 19 20 20 21 23 24 24 24 23 22 20 18 17 15 14 13 13 14 15 16 16 16 16 16 16 15 14 14 14 14 14 15 15 15 14 13 11 10 8 6 5 4 4 5 5 5 4 3 2 2 4 5 6 7 8 9 9 9 9 9 9 10 11 12 13 13 14 15 17 17 16 14 11 9 8 8 9 9 9 9 8 8 8 8 8 8 8 8 8 9 10 10 9 7 6 5 5 7 9 9 9 8 8 8 8 9 9 9 9 9 9 10 10 10 10 10 10 10 11 11 11 12 12 13 14 15 15 15 15 15 15 15 15 15 15 15 16 16 16 15 15 14 14 15 17 19 19 19 20 20 20 20 20 20 20 20 20 20 19 19 19 18 17 16 15 15 14 14 13 12 12 11 10 11 11 12 12 12 13 14 15 15 14 14 13 12 12 12 13 16 19 21 22 22 21 19 17 15 12 11 10 10 10 9 9 8 8 8 9 9 9 9 8 6 6 5 5 4 4 3 3 2 1 0 0 1 1 1 0 -1 -22 -22 -23 -23 -23 -23 -23 -24 -26 -27 -27 -27 -26 -26 -25 -25 -25 -24 -23 -21 -20 -20 -20 -21 -21 -21 -21 -20 -21 -21 -20 -19 -17 -15 -14 -12 -10 -8 -7 -6 -6 -5 -4 -1 1 2 3 3 4 4 5 6 7 7 6 5 3 2 2 2 2 2 1 1 1 2 3 3 3 3 2 2 0 -0 -0 0 0 -2 -5 -8 -8 -6 -5 -9 -15 -19 -18 -16 -15 -12 -8 -6 -10 -16 -16 -11 -3 2 3 3 4 5 6 6 6 7 8 7 6 5 4 4 4 4 4 4 6 9 12 13 15 15 16 16 16 16 16 16 17 17 18 19 19 20 20 21 21 21 20 20 21 21 22 22 22 21 21 21 21 22 21 21 20 19 18 18 19 20 20 19 18 16 14 12 11 11 11 10 10 10 10 10 11 12 14 15 17 17 17 17 17 18 19 20 21 22 24 24 25 24 23 21 20 18 17 15 14 14 14 15 16 16 16 16 16 16 16 15 15 14 14 14 14 15 16 15 14 12 10 8 7 6 5 4 3 4 5 6 5 4 2 2 3 4 5 6 7 8 8 9 9 9 10 10 11 12 13 13 14 16 17 18 18 15 12 9 8 8 8 9 8 8 7 7 7 6 6 6 6 6 7 7 8 7 6 5 4 4 5 6 7 7 7 6 6 6 6 7 7 7 7 8 8 8 8 8 8 9 9 9 9 10 10 10 11 12 13 13 14 14 14 14 14 14 14 14 14 15 15 15 15 15 14 14 13 14 16 17 17 18 18 18 18 18 19 19 19 19 19 20 20 20 19 19 18 17 16 15 14 14 14 13 13 12 11 11 10 10 10 10 11 12 12 13 13 13 12 11 10 10 11 13 16 18 19 20 20 19 17 15 13 11 10 10 9 9 8 7 7 7 8 9 9 9 8 7 6 5 5 4 4 3 3 2 2 3 3 3 2 2 1 0 -23 -23 -23 -23 -23 -23 -23 -24 -26 -27 -28 -28 -27 -27 -26 -26 -25 -24 -22 -21 -20 -20 -20 -21 -21 -21 -21 -21 -22 -21 -20 -18 -16 -14 -12 -10 -8 -7 -6 -6 -6 -6 -4 -3 -1 0 1 1 2 3 4 5 6 6 5 4 4 3 3 2 1 1 0 0 0 1 1 1 0 0 -1 -1 -2 -2 -2 -2 -3 -5 -7 -7 -5 -3 -5 -11 -17 -21 -20 -17 -14 -11 -7 -6 -10 -15 -14 -8 -1 2 3 3 4 5 6 6 7 8 9 7 6 5 5 6 5 5 5 7 10 12 14 14 15 15 15 15 15 15 16 16 17 17 18 18 19 19 19 20 20 20 20 21 21 22 22 22 22 21 21 21 21 21 21 21 20 19 18 18 18 18 18 18 17 16 15 14 13 12 11 10 10 10 10 11 12 14 15 16 16 16 16 17 17 18 20 21 22 23 24 24 24 23 22 20 19 18 18 16 16 15 16 16 17 17 16 16 16 16 15 15 15 14 14 15 15 16 16 15 13 11 8 7 6 5 5 4 3 4 5 6 6 4 3 2 2 3 4 5 5 7 8 8 9 9 10 10 11 12 12 13 13 15 16 18 18 16 13 10 8 7 7 8 8 8 8 7 6 6 5 5 5 5 6 6 6 5 4 3 3 4 5 6 6 6 5 5 5 5 5 5 4 4 5 5 6 6 6 6 7 7 8 8 8 8 9 9 10 10 11 12 12 12 13 13 13 13 13 13 13 14 14 15 15 14 14 13 13 14 15 15 16 17 17 17 17 17 17 18 18 18 19 19 19 19 19 18 18 17 17 16 15 14 14 14 13 13 12 11 11 10 9 9 9 10 10 11 11 11 11 10 10 9 9 10 12 14 16 17 18 18 17 15 13 12 11 10 10 9 8 7 7 7 7 8 8 8 8 7 6 5 5 5 4 4 3 3 4 4 4 4 3 2 1 1 -23 -23 -23 -23 -24 -24 -24 -25 -26 -27 -28 -28 -28 -27 -27 -26 -25 -23 -22 -20 -20 -20 -20 -21 -21 -21 -22 -22 -22 -21 -19 -17 -15 -13 -11 -8 -7 -7 -7 -7 -7 -6 -5 -4 -3 -1 -0 0 2 3 4 4 4 4 4 4 4 3 1 0 -1 -1 -1 -1 -1 -0 -1 -1 -2 -3 -4 -4 -5 -5 -5 -5 -6 -7 -7 -5 -4 -3 -6 -12 -17 -22 -22 -18 -13 -8 -6 -8 -12 -16 -12 -3 2 3 4 4 4 5 5 6 7 8 8 7 6 5 6 6 6 6 8 10 12 13 14 14 14 14 14 15 15 16 16 17 17 18 18 18 18 18 19 19 19 19 20 21 21 21 21 21 21 21 21 21 21 21 21 20 20 19 18 17 17 17 17 17 16 16 15 14 13 11 10 10 10 10 11 12 13 14 15 16 16 16 16 17 18 19 21 22 22 23 23 23 23 22 20 20 20 19 19 18 17 16 17 17 17 16 16 15 15 15 14 14 14 14 14 15 15 16 17 16 14 11 8 6 6 5 5 4 3 3 4 5 5 4 3 2 2 3 3 4 5 6 7 8 8 8 9 9 10 10 11 11 11 13 14 16 16 16 13 11 9 8 8 8 9 9 9 8 7 6 5 5 5 5 5 6 6 5 4 4 4 5 6 6 5 5 5 5 5 4 4 3 2 1 2 2 3 3 4 4 5 5 6 7 7 8 8 8 8 9 9 10 10 11 11 11 12 12 12 12 12 12 13 13 13 13 13 13 13 14 14 15 15 16 16 16 16 16 16 17 17 17 18 18 18 18 18 18 18 17 17 16 16 15 14 14 13 13 13 12 11 10 9 9 9 8 9 9 9 10 10 9 9 8 8 8 9 11 13 15 16 17 16 15 14 13 12 11 11 10 9 8 8 7 7 7 7 7 7 6 6 5 5 5 5 4 4 4 4 5 4 4 3 2 1 1 -23 -23 -23 -23 -24 -24 -25 -26 -27 -28 -29 -29 -29 -28 -27 -26 -25 -23 -21 -21 -20 -20 -20 -20 -21 -21 -22 -22 -21 -19 -18 -16 -14 -11 -9 -7 -6 -6 -6 -6 -6 -6 -5 -4 -3 -2 -1 0 2 3 4 4 3 3 4 4 3 1 -0 -1 -2 -2 -2 -2 -1 -1 -2 -4 -5 -6 -7 -7 -7 -7 -7 -8 -8 -7 -6 -4 -3 -4 -7 -13 -18 -22 -22 -18 -13 -9 -8 -11 -15 -18 -12 -1 3 3 4 4 3 3 4 5 7 7 7 6 5 5 6 7 8 9 11 12 13 13 13 13 13 14 15 16 16 17 17 17 18 18 18 19 19 19 18 18 18 19 20 20 20 20 20 21 21 21 21 21 21 21 21 20 20 19 18 18 18 17 16 16 16 16 16 15 13 11 10 10 10 11 11 13 14 14 15 15 15 16 17 18 20 21 22 22 22 22 22 22 21 20 20 20 20 20 19 18 18 17 17 17 16 16 15 14 13 13 13 13 13 13 13 14 15 17 18 17 15 13 10 8 7 6 5 4 2 2 3 4 4 4 3 2 2 2 3 3 4 5 7 7 8 7 7 7 8 8 9 9 10 11 12 14 15 15 13 12 11 10 10 11 12 12 12 10 9 7 6 6 5 6 6 6 6 5 5 5 6 7 6 6 6 5 5 5 5 5 4 2 1 0 -0 -0 0 1 1 2 3 3 4 5 5 6 6 6 6 7 8 8 9 9 9 10 10 10 10 10 10 11 11 12 12 12 12 12 13 13 14 14 15 15 15 15 15 15 15 16 16 16 17 17 17 17 17 17 17 17 17 16 16 15 14 14 13 13 12 12 11 11 10 9 9 8 8 8 8 8 8 8 8 8 7 6 7 8 10 12 14 15 15 15 14 13 13 12 12 11 10 10 9 8 8 7 7 6 5 5 5 5 5 5 4 4 4 4 4 4 4 3 2 2 1 1 -24 -23 -23 -24 -24 -25 -26 -26 -27 -28 -29 -30 -30 -29 -28 -27 -25 -23 -22 -21 -21 -20 -20 -20 -20 -20 -21 -20 -19 -18 -16 -14 -12 -10 -7 -5 -5 -4 -5 -5 -5 -5 -4 -3 -2 -1 -1 1 3 4 4 3 3 3 4 3 2 0 -1 -1 -2 -2 -2 -2 -2 -3 -4 -6 -7 -8 -9 -9 -9 -9 -10 -9 -8 -7 -5 -4 -3 -5 -9 -14 -18 -21 -20 -17 -13 -12 -12 -14 -16 -19 -12 -2 2 2 2 2 1 1 3 4 6 6 5 5 5 6 7 8 10 11 12 12 12 12 12 13 14 15 16 17 17 17 17 17 18 19 19 19 19 19 18 18 19 19 19 19 19 19 20 20 20 20 21 21 20 20 20 20 20 20 19 19 18 17 16 16 16 16 15 14 13 12 11 10 10 10 11 12 13 13 14 14 15 16 18 20 21 22 22 22 22 22 21 21 20 20 20 20 20 20 19 18 18 18 18 17 16 15 14 13 11 11 11 12 12 12 12 13 15 17 18 19 18 15 13 10 8 7 5 3 2 2 2 3 3 2 2 1 1 1 2 2 3 5 6 7 6 6 5 5 6 6 7 8 9 10 11 13 13 13 13 13 13 14 14 16 16 16 14 13 11 9 8 7 7 7 7 7 6 6 6 7 8 8 7 6 5 4 4 5 6 6 5 3 2 1 -1 -2 -2 -1 -0 0 1 1 2 3 3 4 4 4 5 5 6 7 7 8 8 8 8 8 9 9 10 10 11 11 11 11 11 11 12 12 13 14 14 14 14 14 14 14 15 15 15 16 16 16 16 16 16 16 16 16 16 16 15 15 14 14 13 12 12 12 11 11 10 9 9 9 8 8 8 8 7 7 7 7 6 5 5 6 8 10 11 13 13 14 13 13 13 13 13 12 12 11 10 9 8 8 7 6 5 5 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 -25 -24 -24 -24 -25 -26 -26 -27 -28 -29 -30 -31 -31 -30 -29 -28 -25 -23 -22 -22 -21 -20 -19 -19 -19 -19 -19 -19 -18 -17 -15 -13 -10 -8 -5 -3 -3 -3 -3 -4 -4 -3 -2 -2 -1 -0 1 3 4 5 5 4 4 4 4 3 2 1 0 -1 -1 -2 -2 -2 -2 -4 -6 -8 -9 -9 -10 -10 -11 -11 -11 -10 -9 -6 -5 -4 -4 -6 -11 -14 -16 -17 -16 -15 -15 -17 -17 -16 -15 -17 -11 -3 -0 0 -0 -0 -0 1 3 5 5 5 4 5 6 7 8 10 11 12 12 12 12 12 12 14 15 17 18 18 18 17 17 18 19 20 20 20 20 19 19 19 19 19 19 18 19 19 19 20 20 20 20 20 20 20 20 20 20 20 20 19 18 17 17 16 16 15 14 13 12 12 11 10 10 10 11 11 12 12 12 13 15 17 19 21 22 22 21 21 21 21 20 19 19 19 19 19 19 19 18 19 19 18 18 17 16 15 13 12 11 10 10 11 12 12 12 13 14 17 19 20 19 18 15 13 10 7 5 3 2 2 2 2 2 1 1 0 0 1 1 2 4 5 6 6 5 4 4 4 5 5 7 8 9 11 12 12 13 13 13 14 14 16 17 18 19 18 17 16 13 11 10 9 8 8 8 8 7 7 8 8 9 8 6 5 4 3 3 4 5 5 5 5 4 2 -0 -2 -3 -2 -1 -1 -1 -0 0 1 2 2 2 3 3 4 4 5 6 6 6 6 6 7 8 9 10 10 10 10 10 10 10 10 11 11 12 12 13 13 13 13 13 14 14 14 15 15 15 15 15 15 15 15 15 15 15 15 15 15 14 13 12 12 12 11 11 10 10 9 9 9 9 8 8 8 7 7 6 6 5 5 4 5 6 8 9 10 11 11 12 12 12 13 13 13 13 11 10 9 8 8 7 7 6 5 4 4 3 3 3 3 3 3 4 4 4 4 3 3 3 2 -26 -25 -25 -26 -26 -27 -28 -29 -29 -30 -30 -30 -31 -30 -30 -29 -27 -24 -23 -22 -21 -20 -19 -19 -19 -19 -19 -18 -17 -15 -13 -11 -8 -6 -3 -1 -1 -2 -2 -3 -3 -2 -1 -1 -0 1 2 4 5 5 6 6 6 5 5 4 4 3 2 -0 -1 -1 -1 -1 -3 -5 -7 -8 -9 -9 -10 -11 -11 -11 -11 -10 -9 -7 -5 -4 -5 -7 -9 -10 -10 -11 -12 -15 -18 -21 -20 -17 -13 -13 -7 -3 -2 -1 -1 -1 1 3 4 5 4 4 5 6 7 8 9 10 11 11 11 11 11 12 13 15 17 18 18 18 18 18 18 19 20 21 21 20 20 20 20 20 19 19 19 19 19 19 19 19 20 19 19 19 19 19 20 20 20 20 20 19 18 17 17 16 15 14 13 12 12 12 11 11 10 10 11 11 10 10 11 12 15 17 20 21 21 21 20 20 20 19 19 18 18 18 18 18 18 18 18 18 19 19 18 17 16 14 13 12 11 11 11 11 12 12 12 12 14 16 18 19 19 18 16 14 11 8 6 4 3 3 3 2 1 0 0 0 1 1 2 3 4 5 5 5 4 3 3 4 5 6 7 9 10 11 12 12 13 13 13 14 15 16 17 18 19 19 19 18 16 14 12 11 10 9 8 8 8 8 9 9 8 7 5 4 3 2 3 3 4 5 5 5 5 3 0 -2 -3 -3 -2 -2 -1 -1 0 1 2 2 2 1 2 2 3 4 5 5 5 5 6 7 9 10 10 9 8 8 8 8 9 10 10 10 11 11 12 12 12 13 13 13 14 14 14 14 14 15 15 15 15 15 14 13 14 14 15 14 13 12 12 11 11 11 10 10 9 9 9 9 9 9 8 8 7 7 6 6 6 5 5 5 6 7 7 8 9 9 10 11 12 13 14 14 13 12 10 9 8 8 8 7 6 5 4 4 3 3 3 3 3 3 4 4 5 5 5 5 4 4 -27 -26 -26 -27 -28 -28 -29 -29 -30 -30 -30 -31 -30 -30 -29 -28 -26 -24 -23 -22 -20 -19 -18 -18 -19 -19 -18 -17 -15 -13 -11 -8 -6 -3 -1 0 0 -0 -1 -2 -2 -2 -1 -0 1 2 4 5 5 6 6 6 6 6 6 6 5 4 2 1 0 1 0 -1 -4 -6 -7 -8 -9 -10 -10 -10 -10 -10 -10 -10 -9 -7 -6 -6 -6 -6 -4 -1 -2 -5 -10 -15 -19 -21 -20 -16 -12 -10 -3 -2 -2 -1 1 2 4 6 5 4 4 4 6 7 8 9 9 9 10 11 11 11 11 12 14 16 18 18 18 18 18 18 19 20 21 21 21 20 20 20 20 20 19 20 20 21 20 20 20 19 19 19 19 19 19 19 20 20 20 20 19 19 18 18 17 16 15 14 13 12 12 11 11 11 11 11 10 10 9 9 10 13 16 19 20 21 20 19 19 19 18 18 17 17 17 17 17 16 16 17 17 18 18 18 18 17 16 15 14 13 12 12 12 12 12 12 12 12 13 14 16 17 17 17 16 14 12 10 7 6 5 4 4 3 2 1 1 2 2 3 3 4 5 5 5 4 4 3 4 5 6 8 9 9 10 11 11 12 13 13 13 13 14 15 16 17 18 18 18 18 16 14 12 11 10 8 8 7 8 8 9 9 8 6 5 4 3 2 3 3 4 4 5 5 4 2 -1 -3 -4 -4 -3 -3 -2 -1 1 3 3 3 2 1 2 3 5 6 6 6 5 6 7 8 9 8 7 5 5 5 6 7 9 10 10 10 10 11 11 12 12 13 13 13 13 13 13 14 14 14 15 15 15 15 14 12 12 13 14 14 13 12 11 11 10 10 10 9 9 9 9 9 9 8 8 8 8 7 7 7 6 6 6 6 6 7 7 7 8 8 9 10 12 13 14 14 13 12 10 9 8 8 8 8 7 6 5 4 3 3 3 3 3 3 4 5 6 6 6 6 6 5 -29 -28 -28 -28 -29 -29 -30 -30 -30 -30 -30 -30 -30 -29 -28 -27 -25 -24 -23 -21 -19 -18 -18 -18 -19 -18 -17 -15 -13 -10 -8 -5 -3 -0 1 2 2 1 -0 -1 -2 -1 -0 1 2 3 4 5 5 5 6 6 6 5 6 6 6 4 2 1 2 2 1 -1 -4 -6 -7 -8 -9 -10 -10 -10 -9 -9 -9 -10 -9 -8 -7 -6 -5 -2 3 4 2 -4 -10 -15 -19 -19 -18 -16 -13 -9 -2 -0 1 3 5 7 8 8 6 4 3 4 6 8 8 8 8 9 10 11 11 11 12 13 15 17 18 18 18 18 18 19 21 21 22 21 20 20 20 20 20 19 20 21 22 21 21 20 20 20 19 19 19 19 19 19 20 20 20 19 19 19 18 18 17 16 15 14 13 12 12 11 11 11 11 11 10 9 9 10 12 15 19 20 20 19 18 18 18 17 16 15 15 16 16 15 15 15 15 16 16 17 17 17 17 17 16 15 15 14 13 12 12 12 12 12 13 12 13 13 15 16 16 16 15 14 13 11 9 8 7 6 5 4 4 4 4 4 4 4 4 5 5 5 5 5 4 5 5 7 8 9 9 10 10 10 11 12 13 13 13 13 13 13 14 14 15 16 16 15 14 12 11 10 9 8 7 7 7 8 8 8 7 6 5 4 4 3 3 4 4 4 4 4 2 1 -1 -3 -4 -4 -3 -3 -1 1 3 5 5 4 3 3 4 6 7 8 8 8 7 7 8 8 8 6 5 4 4 5 6 8 9 10 10 11 11 11 12 12 12 13 13 13 13 13 13 13 14 14 14 14 15 14 14 12 11 11 12 13 13 12 11 11 10 10 9 9 9 8 8 8 8 8 8 8 8 8 7 7 7 7 7 7 7 7 8 8 8 8 9 10 11 12 13 13 12 11 10 9 8 8 8 8 7 7 6 5 4 3 3 3 3 4 5 5 6 7 8 8 7 7 -31 -30 -30 -29 -29 -29 -30 -30 -30 -29 -29 -30 -30 -29 -28 -27 -25 -23 -22 -21 -19 -19 -18 -19 -19 -17 -15 -13 -11 -8 -5 -2 0 1 2 3 3 1 -0 -1 -1 0 2 3 4 4 4 4 4 4 4 5 5 5 5 5 4 3 2 1 2 2 1 -1 -3 -5 -6 -7 -9 -10 -10 -9 -9 -9 -9 -10 -10 -10 -8 -6 -2 3 6 4 -0 -5 -9 -12 -14 -15 -15 -12 -10 -8 1 3 5 7 9 10 11 9 6 4 3 4 5 6 6 7 8 9 10 11 11 12 13 14 16 17 17 17 18 18 20 21 22 22 21 20 20 20 20 20 19 19 21 22 22 22 21 21 20 20 20 19 19 19 19 20 20 19 19 19 18 18 18 18 17 16 14 13 13 12 12 12 12 12 11 11 10 10 11 13 16 19 21 21 19 18 17 17 16 15 14 13 14 14 14 13 13 13 14 15 15 16 17 17 17 17 17 16 15 14 13 12 11 11 12 13 13 13 13 14 15 16 16 16 16 15 14 13 11 10 9 7 6 6 6 7 7 6 6 5 5 6 6 6 6 6 6 6 7 8 8 9 9 9 10 10 11 12 12 12 12 11 11 11 12 12 13 13 12 11 10 9 9 8 8 7 6 7 7 7 7 7 6 6 6 5 5 5 4 4 3 3 2 2 1 0 -1 -2 -3 -2 -2 -1 1 4 6 6 6 6 6 6 7 9 10 11 10 10 9 9 9 8 7 6 5 4 4 5 6 7 8 8 9 10 10 11 11 12 12 12 13 13 13 13 13 14 14 14 14 14 14 14 14 13 12 11 11 11 12 12 12 11 10 10 9 9 8 8 8 8 8 8 8 8 8 8 8 7 7 7 7 7 8 8 9 9 9 9 9 10 11 11 12 12 11 10 9 8 8 7 7 7 7 7 7 6 5 4 3 3 3 4 5 6 7 8 9 9 9 8 -32 -32 -32 -31 -30 -30 -30 -30 -30 -29 -29 -29 -29 -29 -27 -26 -25 -24 -22 -21 -20 -20 -19 -19 -18 -16 -14 -11 -9 -6 -2 -0 1 2 3 4 3 1 -1 -1 1 3 5 6 6 5 4 3 3 2 3 3 3 3 3 2 1 0 -0 0 1 1 1 -1 -2 -4 -6 -8 -9 -9 -9 -9 -9 -9 -9 -10 -11 -10 -8 -5 -1 3 3 1 -2 -4 -5 -7 -11 -12 -11 -10 -8 -6 4 7 8 10 11 12 11 10 7 5 4 4 4 4 5 7 8 10 10 11 12 13 14 15 16 16 16 17 18 20 22 23 22 22 20 19 19 20 19 19 19 21 22 23 22 22 22 21 21 21 20 20 20 20 20 20 19 19 18 18 18 18 18 17 16 15 14 13 13 13 13 13 13 12 12 11 11 12 14 16 19 21 21 19 17 16 15 15 13 12 12 12 13 13 12 12 12 12 13 14 15 16 17 17 17 18 17 16 15 13 12 10 10 11 12 13 14 14 15 15 16 17 18 18 17 17 16 15 14 12 11 9 9 9 9 9 9 8 7 6 6 7 7 8 7 7 7 7 8 8 8 9 9 9 9 10 10 11 10 9 9 9 9 10 10 10 10 9 8 8 8 8 8 8 7 7 6 6 7 7 7 7 6 6 6 6 6 5 4 3 2 1 1 1 1 1 1 1 0 1 2 3 5 7 8 8 9 9 9 9 10 11 11 12 11 11 10 9 8 7 6 4 3 3 3 3 4 4 5 6 7 8 9 9 10 10 11 11 12 12 12 13 13 13 14 14 14 14 13 13 14 14 13 11 10 10 11 12 12 11 11 10 9 9 9 8 8 8 8 8 8 8 8 8 8 8 8 7 7 8 8 9 9 10 10 10 10 10 11 11 11 11 10 9 9 8 7 7 7 7 7 7 7 6 5 5 4 4 4 4 4 5 6 7 8 9 9 10 -33 -33 -33 -32 -31 -30 -30 -30 -30 -29 -29 -29 -28 -27 -25 -24 -24 -24 -23 -21 -20 -20 -19 -19 -17 -15 -13 -10 -7 -4 -1 1 2 3 4 4 2 0 -0 1 3 6 8 8 7 5 4 2 2 1 2 2 2 2 1 -0 -1 -2 -1 -0 1 1 0 -1 -2 -5 -7 -8 -8 -8 -8 -8 -7 -8 -9 -10 -11 -11 -8 -5 -1 1 0 -1 -2 -1 -2 -4 -9 -10 -9 -7 -6 -4 7 9 11 12 13 13 12 10 8 6 4 3 3 4 6 8 9 9 10 11 13 13 14 14 14 15 16 18 20 22 22 22 21 20 19 19 19 19 19 19 20 22 23 22 22 22 22 22 21 21 21 20 20 20 20 19 19 18 18 18 18 18 17 16 16 15 14 13 13 13 13 13 13 13 13 13 14 15 17 19 20 20 18 16 15 15 14 13 11 11 11 11 11 11 11 11 12 12 13 14 15 16 17 17 17 17 17 15 14 12 10 9 9 10 12 13 14 15 16 17 17 18 19 19 19 18 17 17 16 14 13 11 11 11 11 11 10 9 8 8 8 9 9 9 8 8 8 7 7 8 8 8 9 9 9 9 9 8 7 7 6 7 7 8 8 8 7 7 7 8 8 8 8 8 7 6 6 6 7 7 7 6 6 6 6 6 6 5 4 2 2 1 1 2 3 3 4 4 4 5 6 7 9 10 10 11 11 12 11 11 11 11 11 11 11 11 9 7 5 4 3 1 0 0 1 1 2 3 3 4 5 6 6 7 8 9 9 10 10 11 11 12 12 13 13 14 14 13 13 12 13 14 14 12 10 9 10 11 11 11 10 10 9 9 9 9 9 8 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 10 10 10 11 11 11 11 11 11 10 10 9 8 7 7 7 7 7 7 7 7 6 5 5 4 4 4 4 5 6 6 8 9 10 10 -34 -34 -34 -34 -33 -32 -31 -30 -30 -30 -29 -28 -26 -24 -23 -23 -24 -24 -23 -21 -19 -19 -18 -17 -16 -14 -12 -8 -5 -2 0 2 4 5 5 3 2 1 2 4 6 8 9 8 7 5 3 2 1 1 1 1 1 0 -0 -1 -2 -2 -1 -0 0 -0 -1 -2 -4 -6 -7 -7 -7 -6 -6 -6 -6 -7 -8 -10 -11 -11 -8 -5 -2 -1 -2 -1 1 2 1 -4 -9 -10 -8 -5 -4 -3 8 10 11 12 12 12 11 10 8 7 5 4 5 6 8 9 9 9 10 12 13 14 14 14 14 15 17 19 21 22 21 20 19 18 17 18 18 18 19 20 22 23 22 21 21 21 22 22 22 22 21 21 21 20 20 19 18 18 18 18 18 17 17 16 15 14 14 13 12 12 12 12 13 13 14 15 17 19 20 20 19 17 15 14 14 13 12 11 10 10 10 10 10 10 11 11 12 13 14 14 15 15 16 16 16 16 15 14 12 11 9 9 10 10 12 13 14 16 17 18 19 20 20 20 20 20 19 18 17 16 14 14 13 13 12 12 11 10 10 10 10 10 10 9 8 8 7 7 7 7 8 8 8 8 8 7 6 6 5 5 5 5 6 6 7 7 7 8 9 9 10 9 8 7 6 5 5 5 6 7 7 6 5 5 5 5 5 4 4 3 3 3 3 4 5 6 6 7 8 9 10 11 12 13 13 14 14 13 12 11 11 11 11 11 11 10 7 4 2 1 -0 -1 -2 -1 -1 -0 0 1 2 2 3 4 5 5 6 7 8 8 9 10 10 11 11 12 12 13 13 13 12 11 11 12 13 12 11 9 9 9 10 10 10 9 9 9 9 9 9 9 9 9 8 8 8 8 8 8 8 8 8 8 9 9 9 10 10 11 11 11 11 11 11 11 11 10 10 9 8 8 7 7 8 8 8 7 7 6 6 5 5 5 5 5 5 6 7 8 10 11 -36 -36 -36 -36 -35 -33 -31 -30 -30 -30 -29 -27 -24 -23 -22 -23 -23 -22 -21 -20 -19 -18 -16 -15 -14 -12 -9 -6 -3 0 2 5 6 6 5 4 3 4 5 7 8 9 9 8 6 5 3 2 2 2 2 1 1 0 -0 -1 -1 -1 -1 -0 -0 -1 -2 -3 -5 -6 -6 -6 -6 -5 -5 -4 -5 -6 -8 -10 -11 -11 -8 -5 -2 -2 -1 1 3 3 1 -4 -8 -10 -8 -4 -3 -3 7 9 10 11 11 11 9 9 8 7 7 6 7 8 9 9 9 9 11 13 13 14 13 13 14 16 18 20 20 20 19 17 16 16 16 17 17 18 19 21 22 21 20 19 20 21 22 23 23 22 22 22 21 21 20 19 18 18 18 18 18 17 16 15 15 14 13 12 11 10 10 11 12 14 15 17 19 19 19 17 15 13 12 12 12 12 11 10 10 10 10 10 10 10 11 12 13 14 14 14 14 14 14 14 14 14 14 13 12 11 11 11 11 12 12 13 14 15 17 18 19 20 21 21 22 21 20 19 18 17 17 16 15 14 13 12 11 11 11 11 11 10 9 8 8 7 7 7 8 8 8 8 8 7 6 5 5 4 4 5 5 6 6 6 7 7 8 9 10 10 10 9 8 7 5 5 5 6 6 6 5 4 4 4 5 5 5 5 5 4 4 4 4 5 6 7 8 9 10 11 12 13 14 15 15 15 14 13 12 11 11 11 11 11 11 8 5 3 2 1 -0 -1 -2 -2 -1 -1 -0 0 1 1 2 3 3 4 5 5 6 7 8 9 9 10 10 10 11 11 12 12 12 10 10 9 10 10 10 9 8 8 8 9 9 9 8 8 8 8 8 9 9 9 9 9 8 8 8 8 8 8 8 8 9 9 9 10 10 11 11 11 11 11 11 11 11 11 10 10 9 9 9 9 9 9 8 8 7 7 6 6 6 5 5 5 5 6 7 8 10 11 -37 -37 -38 -37 -36 -34 -32 -31 -30 -29 -27 -25 -23 -22 -22 -22 -21 -20 -19 -18 -17 -15 -14 -13 -12 -9 -7 -4 -1 1 4 6 8 8 7 6 7 8 9 9 9 9 8 7 6 5 4 4 3 3 2 2 1 1 1 0 -0 -0 0 -0 -1 -2 -4 -5 -5 -5 -5 -5 -5 -4 -3 -3 -4 -5 -7 -9 -10 -9 -8 -5 -3 -2 -1 2 3 3 -0 -5 -9 -10 -8 -5 -3 -3 6 8 8 9 10 9 8 7 7 8 8 9 10 10 9 9 9 10 12 13 13 13 13 14 15 17 18 19 19 18 16 15 14 14 15 16 17 18 20 21 20 18 17 18 20 21 22 23 23 23 23 22 21 20 20 19 19 18 18 18 17 17 16 15 14 12 11 9 8 8 9 11 12 15 17 18 18 18 16 14 12 11 11 11 11 10 10 9 9 9 9 9 9 10 11 12 13 14 13 13 13 13 14 14 14 14 14 14 14 13 13 13 14 14 14 14 14 15 16 17 19 20 21 22 22 22 21 21 20 19 19 18 17 16 14 13 13 12 12 12 11 10 9 9 8 8 8 8 9 9 9 8 7 6 5 4 4 5 6 6 7 7 7 8 8 9 10 10 10 10 9 8 7 7 6 5 6 6 5 4 2 2 3 4 5 6 6 6 6 5 5 5 5 6 6 7 8 8 9 10 12 13 14 14 14 13 13 12 11 11 11 11 11 11 10 7 6 5 4 3 1 0 -1 -1 -1 -1 -0 -0 0 1 1 2 2 3 4 4 5 6 7 8 8 9 9 9 9 10 10 11 11 10 9 8 7 8 9 9 9 8 7 7 7 8 7 7 7 7 8 8 8 8 9 9 9 9 9 8 8 8 8 8 8 9 9 10 10 10 10 10 10 11 11 11 11 11 11 10 10 10 10 10 10 10 9 8 8 7 7 7 7 6 6 5 5 6 7 8 9 10 -37 -37 -37 -37 -36 -35 -33 -32 -30 -28 -26 -24 -23 -22 -21 -19 -19 -18 -18 -17 -15 -14 -13 -12 -11 -8 -5 -3 -0 2 5 8 10 11 10 10 10 11 11 10 9 8 8 7 7 7 6 6 5 4 3 3 3 3 3 2 1 1 1 -0 -2 -4 -5 -5 -5 -4 -4 -4 -3 -3 -2 -2 -3 -5 -6 -7 -7 -8 -7 -5 -4 -2 0 2 2 1 -2 -6 -10 -11 -9 -6 -4 -4 4 6 7 8 9 8 7 7 7 8 9 10 11 10 9 9 10 12 13 13 13 13 14 15 16 17 18 18 17 16 14 13 13 13 14 15 17 19 20 19 17 15 16 18 20 21 22 23 23 23 22 22 21 20 19 19 19 18 18 18 17 16 15 14 12 10 8 7 7 8 10 12 14 16 17 17 16 14 12 11 10 10 10 10 10 9 9 9 8 8 8 9 10 11 12 13 14 13 13 12 13 13 14 14 14 15 15 16 16 16 16 16 16 16 15 15 15 15 16 17 18 19 21 22 23 23 23 22 22 22 21 20 19 17 16 15 14 13 13 12 11 10 10 9 9 9 9 9 9 9 8 7 6 5 5 5 6 7 8 9 9 10 9 10 10 10 11 10 10 9 9 8 8 7 7 7 6 5 3 1 1 2 4 6 7 7 7 6 6 6 5 5 5 6 6 7 7 8 9 9 10 11 11 11 11 11 11 12 12 12 12 12 12 11 10 8 8 7 6 4 2 1 0 -0 -0 -0 -0 -0 -0 0 0 1 1 2 3 4 5 5 6 6 7 7 8 8 8 8 9 9 10 9 8 7 6 6 7 8 9 8 6 5 6 6 6 6 6 6 6 7 7 7 8 8 9 9 9 9 9 8 8 8 8 8 9 9 10 10 10 10 10 11 11 11 11 10 10 10 10 10 11 11 10 10 10 9 9 8 8 8 7 7 6 6 5 6 6 7 8 9 -37 -37 -37 -36 -35 -35 -33 -31 -29 -28 -26 -24 -23 -21 -19 -18 -17 -17 -17 -16 -15 -14 -13 -12 -10 -7 -4 -2 1 4 8 12 14 14 13 13 13 13 12 11 9 8 8 8 9 9 8 8 7 6 5 5 5 5 4 3 2 2 1 -1 -3 -5 -6 -5 -4 -3 -2 -2 -1 -1 -0 -1 -2 -3 -4 -4 -5 -6 -6 -5 -4 -2 0 1 1 -0 -3 -7 -11 -12 -11 -8 -5 -4 3 5 7 8 8 8 7 7 8 9 10 11 11 10 10 10 12 14 13 13 13 14 14 15 16 17 17 17 16 14 13 12 12 13 14 16 17 19 18 16 14 14 15 17 19 21 22 22 22 22 21 21 20 19 19 19 19 18 18 18 17 16 14 12 10 8 7 8 9 11 13 14 16 17 16 15 13 12 10 10 9 9 9 9 9 9 8 8 7 8 9 10 11 12 13 13 13 12 12 12 13 13 14 14 15 16 16 17 17 17 17 17 17 16 16 15 14 15 15 16 17 19 20 21 22 23 24 24 24 23 22 21 20 18 17 16 15 14 13 12 12 11 11 10 10 9 9 9 9 8 7 7 6 6 7 7 9 10 11 11 12 12 12 12 12 11 11 11 10 10 10 10 9 9 8 7 6 4 2 2 3 6 8 9 8 7 6 6 5 5 5 5 6 6 6 6 7 7 7 8 8 8 7 8 8 10 12 13 14 14 14 14 13 12 11 11 10 9 6 4 2 1 1 1 0 -0 -0 -0 -0 -0 0 0 1 2 3 3 4 5 5 6 6 7 7 7 8 8 8 8 9 9 8 8 7 6 6 7 8 8 7 5 5 5 5 5 5 5 5 6 6 6 6 7 7 8 8 8 9 9 9 8 8 8 8 9 9 9 9 10 10 11 11 11 10 10 10 10 11 11 11 11 11 10 10 10 9 9 9 8 8 7 7 6 6 5 6 6 7 8 -36 -36 -36 -35 -34 -33 -31 -30 -29 -27 -25 -23 -21 -19 -18 -17 -17 -17 -16 -16 -15 -14 -13 -11 -9 -6 -3 0 4 9 13 16 17 17 15 14 14 13 12 11 9 8 8 9 10 11 11 10 9 8 8 7 7 7 5 4 3 2 -0 -2 -4 -5 -4 -3 -2 -1 -0 1 1 2 1 0 -1 -2 -3 -3 -5 -6 -6 -6 -4 -3 -1 -0 -0 -1 -3 -7 -11 -14 -14 -11 -7 -2 5 7 8 9 9 9 9 9 9 9 9 10 10 10 11 13 14 14 12 13 13 14 15 15 15 16 16 16 15 13 11 10 11 13 15 16 17 18 16 13 12 13 15 16 18 19 20 20 20 20 20 20 19 19 18 18 18 18 18 17 16 15 13 11 9 8 9 10 12 14 15 16 17 16 15 14 12 10 10 9 9 9 9 9 8 8 8 7 8 9 10 11 12 12 13 12 12 11 11 12 12 12 13 13 14 15 16 16 16 16 16 16 16 16 15 14 14 14 15 16 17 18 19 20 21 22 23 23 23 23 22 21 21 20 19 18 17 15 14 14 13 13 12 11 10 10 9 9 9 8 8 8 8 8 9 10 11 12 12 13 13 13 13 13 12 12 12 11 11 11 11 11 10 9 8 7 5 4 3 4 7 9 9 8 7 5 5 5 5 5 5 6 6 6 6 6 6 6 6 5 5 5 5 7 9 11 13 15 16 16 16 16 15 15 14 13 12 9 6 4 2 2 1 1 0 -0 -1 -1 -1 -0 1 1 2 2 3 3 4 4 5 5 6 7 8 8 9 9 8 8 8 9 9 9 8 7 7 7 8 8 7 6 5 4 4 4 4 4 4 5 5 5 6 6 6 6 6 7 8 8 9 9 8 8 8 8 9 9 9 9 10 10 10 11 11 11 11 11 11 11 11 11 11 11 10 10 10 9 9 9 8 8 7 7 6 6 6 6 6 7 -35 -35 -34 -34 -32 -31 -30 -29 -28 -26 -24 -21 -19 -18 -17 -17 -17 -17 -16 -16 -15 -14 -11 -9 -6 -3 1 5 10 15 18 19 19 17 14 13 13 13 13 12 10 9 9 10 11 12 12 12 11 10 9 9 9 8 7 5 3 1 -1 -3 -4 -4 -3 -1 1 3 4 4 4 4 2 1 -0 -1 -2 -4 -5 -7 -7 -6 -5 -4 -3 -2 -2 -2 -3 -5 -9 -14 -16 -15 -10 -4 6 8 9 10 10 10 10 10 9 9 8 8 9 10 13 14 14 12 12 13 13 14 14 14 14 15 16 15 14 11 10 10 12 13 15 16 16 15 13 12 12 13 14 15 16 17 17 17 18 18 18 18 18 18 18 18 18 18 18 17 15 13 12 10 10 10 12 13 15 16 17 17 17 16 14 13 11 11 10 10 9 9 8 8 8 8 8 8 9 10 11 12 12 12 12 11 11 11 11 11 11 11 11 11 12 13 13 14 14 14 15 15 15 14 14 13 13 14 14 15 16 18 19 20 20 21 21 22 22 22 22 21 21 21 20 19 18 17 16 15 15 14 13 12 11 10 10 10 9 9 9 9 10 10 11 12 12 13 13 13 13 13 14 14 13 13 13 13 13 13 13 12 10 9 8 6 5 4 5 7 9 9 8 6 5 4 5 5 5 5 5 5 5 5 5 5 5 4 4 4 4 4 6 8 11 13 14 16 17 18 18 18 18 18 17 15 13 10 7 4 3 3 2 1 0 -0 -1 -0 0 1 2 3 3 3 3 4 4 4 5 6 6 7 8 9 9 9 9 9 9 9 9 10 10 9 9 8 8 7 7 6 5 4 4 4 3 3 3 4 4 5 5 5 5 5 5 5 6 7 8 8 9 9 8 8 8 8 9 9 9 10 10 10 11 11 11 11 11 12 12 12 11 11 11 10 10 10 9 9 9 8 8 8 7 7 6 6 6 7 -35 -34 -33 -32 -31 -30 -29 -29 -28 -25 -22 -19 -18 -17 -16 -16 -16 -16 -17 -17 -15 -13 -10 -6 -3 1 5 10 15 18 21 20 18 15 13 12 12 13 13 12 11 10 10 11 12 12 12 12 11 10 9 9 9 8 7 6 4 2 -0 -2 -3 -3 -1 2 5 6 7 7 6 4 2 1 -0 -2 -3 -4 -6 -8 -8 -7 -6 -5 -4 -3 -3 -3 -3 -4 -8 -13 -16 -15 -11 -5 6 8 9 10 11 11 11 10 8 7 7 7 9 12 14 14 13 12 12 13 13 13 13 13 14 14 15 14 12 10 9 10 12 13 14 15 14 13 11 11 12 12 13 14 15 15 15 15 16 16 17 17 17 17 17 17 17 17 17 16 14 13 11 11 12 13 14 16 16 17 17 17 16 15 14 13 12 11 10 10 9 8 8 8 8 8 9 10 11 12 12 12 12 11 11 11 11 11 11 10 10 9 9 9 10 10 11 11 12 13 14 14 14 13 13 13 13 13 14 14 16 17 18 19 20 20 20 20 20 21 21 21 21 21 20 19 18 18 17 16 16 15 14 13 13 12 11 11 10 10 11 11 11 12 12 13 13 14 14 13 13 13 14 14 14 14 14 14 14 13 12 11 9 8 7 6 5 6 7 8 8 7 6 5 5 5 6 6 6 5 5 4 4 4 4 5 4 4 3 3 4 6 8 10 12 13 14 16 17 18 19 20 20 19 18 16 13 10 8 6 5 4 3 2 1 1 1 1 2 2 3 3 3 3 3 4 4 5 5 6 7 8 8 9 9 9 9 9 9 9 10 10 11 11 11 10 9 8 7 6 5 4 4 3 3 3 3 4 5 5 6 6 6 5 5 5 5 5 6 7 8 8 9 9 9 8 8 8 9 9 9 10 10 11 11 11 12 12 12 12 12 12 11 11 10 10 10 9 9 9 9 8 8 8 7 7 7 7 -35 -34 -33 -31 -30 -29 -29 -29 -27 -24 -21 -18 -17 -16 -15 -15 -15 -15 -16 -16 -14 -11 -8 -5 -1 3 8 13 16 19 20 19 17 14 13 12 12 13 12 11 10 8 9 9 10 11 11 11 10 9 8 8 8 8 8 7 6 4 2 -0 -1 -0 2 5 8 9 8 7 5 3 1 -1 -2 -3 -5 -6 -7 -9 -10 -9 -8 -6 -5 -5 -4 -4 -4 -5 -7 -10 -14 -14 -9 -4 6 8 10 11 11 11 10 9 7 6 6 8 11 13 14 13 12 12 12 12 12 11 12 12 13 13 13 12 10 9 9 10 11 12 13 13 12 11 11 11 11 11 12 13 13 13 13 13 14 15 15 16 16 15 15 15 16 16 16 15 14 13 12 13 14 15 16 17 17 17 16 16 15 15 14 13 12 11 10 9 8 8 8 8 9 9 10 11 11 12 12 11 11 11 10 10 10 10 10 9 8 8 8 8 8 8 8 9 11 12 14 14 14 13 13 12 12 13 13 14 15 16 18 19 20 20 20 20 20 20 20 21 21 21 20 20 19 18 18 17 16 16 15 15 14 13 13 12 11 11 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 11 10 9 8 7 7 6 6 7 7 6 6 6 6 6 7 7 6 6 5 5 4 4 4 5 5 4 4 3 4 5 7 10 12 13 13 14 15 17 18 19 20 20 19 18 16 14 12 10 8 6 5 4 4 3 3 3 3 3 3 3 2 2 2 3 4 4 5 6 7 8 9 9 9 9 9 9 9 9 9 9 10 11 12 13 13 12 10 9 8 6 5 4 3 3 3 4 4 5 6 7 7 7 6 6 5 4 4 4 5 6 7 8 8 9 9 9 8 8 9 9 10 10 11 11 11 12 12 12 12 12 12 12 11 10 10 10 10 10 9 9 9 9 9 9 8 8 8 -36 -35 -33 -31 -30 -29 -28 -28 -25 -22 -19 -17 -15 -13 -12 -12 -12 -13 -15 -15 -13 -10 -7 -3 1 5 10 13 16 17 18 17 15 14 13 12 12 10 9 8 7 6 7 8 9 10 10 10 9 9 8 8 8 8 9 9 8 6 4 3 3 3 5 7 9 9 8 6 4 1 -1 -3 -4 -5 -6 -7 -9 -11 -12 -11 -10 -8 -7 -7 -7 -6 -6 -6 -6 -9 -12 -12 -9 -3 6 9 10 11 11 10 9 7 6 6 7 10 12 13 13 12 12 12 12 11 10 10 11 11 12 12 11 11 9 9 9 9 10 10 11 11 10 10 11 11 10 11 11 11 11 11 12 12 13 13 14 14 14 14 14 14 15 16 15 14 13 13 13 14 16 17 17 17 17 16 16 15 15 14 14 13 12 11 10 9 8 8 9 9 10 10 11 11 11 11 11 11 10 10 10 10 10 9 9 8 8 7 7 7 7 7 8 9 11 12 13 14 14 13 13 13 13 12 13 13 14 16 17 18 19 20 20 21 21 21 21 21 21 21 21 20 20 19 18 18 18 17 17 16 16 15 14 13 12 12 12 12 12 12 13 13 12 12 12 12 12 12 12 12 12 12 12 12 11 11 11 10 10 9 9 8 7 7 6 6 6 7 7 8 8 8 7 7 6 6 5 5 5 5 5 5 5 4 4 5 6 9 11 12 13 14 14 15 16 17 18 18 19 18 18 17 16 14 12 9 8 7 6 6 5 5 5 4 4 3 2 1 1 2 3 4 5 6 7 9 10 10 10 10 10 10 10 10 10 9 10 10 11 12 13 14 15 14 13 11 9 7 6 4 4 4 4 5 6 7 7 8 8 8 8 7 6 4 4 4 4 5 6 7 8 9 9 9 9 9 9 9 10 10 11 11 12 12 12 13 13 12 12 11 10 10 10 11 10 10 10 10 10 10 10 9 9 9 -37 -36 -34 -31 -29 -27 -26 -25 -23 -20 -17 -15 -13 -11 -11 -11 -11 -12 -13 -13 -12 -9 -5 -2 3 7 11 14 17 18 18 17 15 14 13 12 10 7 5 5 5 6 7 8 8 9 9 10 9 9 9 9 9 9 10 10 9 8 7 6 6 7 7 8 9 8 7 5 3 0 -3 -5 -5 -6 -7 -8 -10 -12 -13 -13 -12 -11 -10 -10 -9 -8 -7 -7 -7 -9 -12 -13 -10 -4 7 10 11 11 10 8 7 5 5 7 9 12 13 12 12 11 12 12 11 9 9 9 10 10 10 10 10 9 8 8 8 8 8 8 9 9 10 10 11 11 10 10 10 10 10 10 10 10 11 12 12 12 12 12 13 15 15 14 13 12 11 11 12 15 17 18 18 17 17 16 16 15 15 14 14 13 12 11 10 9 8 9 10 10 10 10 10 10 10 10 10 10 10 10 10 9 9 9 8 8 7 7 6 6 6 7 8 9 10 11 12 12 13 13 13 13 13 13 13 13 14 14 16 17 18 20 21 21 21 22 22 22 21 21 21 21 21 20 20 20 19 19 18 18 17 16 15 14 14 13 12 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 11 10 9 8 8 7 8 9 10 10 10 10 9 8 8 7 7 7 7 6 6 6 5 5 5 5 6 7 9 11 12 13 14 15 15 15 16 16 17 18 18 18 18 17 16 13 11 10 9 8 8 7 6 5 4 3 2 1 1 1 2 3 4 5 7 9 10 11 12 12 12 12 12 12 12 12 11 11 11 11 12 12 13 14 15 16 16 14 12 10 7 6 5 5 5 6 7 8 9 9 10 10 9 8 6 5 4 4 4 5 6 7 8 9 10 10 10 10 10 10 10 11 12 12 13 13 13 13 12 12 11 11 11 11 11 11 11 11 11 10 10 10 10 10 10 -37 -36 -33 -30 -27 -26 -24 -23 -20 -17 -14 -12 -11 -10 -10 -10 -11 -11 -12 -12 -10 -6 -3 1 5 9 12 16 19 19 19 16 15 13 12 10 8 5 4 4 5 6 7 7 8 8 9 9 10 10 10 10 10 10 10 11 10 10 9 8 8 8 8 8 8 7 6 5 3 -0 -4 -6 -6 -7 -8 -9 -10 -12 -14 -14 -14 -14 -13 -12 -11 -9 -7 -7 -8 -10 -14 -15 -12 -5 7 11 11 10 9 6 5 5 6 8 11 12 11 11 11 11 12 11 9 8 8 8 9 9 9 9 8 8 7 7 7 6 6 7 8 9 10 11 11 11 11 10 10 10 9 8 8 9 9 10 10 10 10 12 14 14 14 12 9 8 7 9 12 15 17 18 18 18 17 16 15 15 14 14 13 12 11 10 9 9 9 10 10 10 10 10 9 9 9 9 10 10 10 10 9 9 9 8 8 8 7 6 6 5 6 6 7 8 9 10 10 11 12 12 13 13 14 14 14 13 14 14 15 16 17 19 20 21 22 23 23 23 23 23 22 22 22 22 22 22 22 21 21 20 19 19 18 17 16 15 14 13 12 11 11 11 11 12 12 13 13 13 12 12 12 13 13 13 13 14 14 14 13 13 12 11 11 10 11 11 12 12 12 11 10 9 9 9 9 8 8 8 8 7 7 6 6 6 6 7 8 9 10 11 13 14 14 14 14 15 16 16 17 18 18 18 18 16 15 14 12 11 10 9 8 7 6 5 4 3 2 2 2 3 4 5 6 8 10 12 12 13 14 15 15 16 15 15 15 14 13 13 13 12 13 13 14 14 15 16 16 16 15 13 10 8 7 6 6 7 7 8 9 10 11 11 10 9 8 6 5 5 4 5 6 7 9 10 10 11 11 10 10 11 11 12 13 13 13 13 13 13 12 12 12 12 12 12 13 12 12 12 11 11 11 11 11 10 -38 -36 -33 -30 -28 -26 -24 -21 -18 -14 -11 -9 -9 -9 -10 -10 -11 -11 -11 -10 -7 -4 -0 3 7 10 14 18 20 20 18 16 14 12 10 8 6 5 5 6 7 8 8 7 8 8 9 10 10 10 10 9 9 10 10 11 11 11 10 9 9 9 8 8 7 7 6 4 2 -1 -3 -5 -7 -8 -8 -9 -11 -13 -14 -15 -15 -16 -14 -12 -10 -7 -5 -6 -8 -11 -15 -16 -14 -8 5 10 10 8 7 5 4 5 7 10 11 10 9 9 10 11 11 9 7 6 7 8 8 8 8 8 7 7 6 6 6 6 6 6 8 9 10 11 11 11 11 11 10 9 8 7 7 7 7 8 7 7 9 12 14 14 11 8 5 4 6 9 13 15 17 17 18 18 17 16 15 14 13 13 12 11 10 10 9 10 10 10 10 10 9 8 8 8 9 10 10 11 10 9 9 9 9 9 8 8 7 7 6 6 6 6 7 7 8 8 9 10 11 11 13 13 14 14 15 15 14 14 15 16 17 18 19 21 22 23 23 24 24 24 24 24 25 25 25 25 25 24 24 23 23 22 21 20 19 18 17 16 15 14 14 14 15 15 16 15 15 14 14 14 14 14 14 15 15 15 15 15 15 14 14 14 14 14 14 14 14 13 12 11 10 10 10 10 10 9 9 9 8 8 8 7 7 7 7 8 8 8 9 10 12 14 14 14 14 15 16 17 17 18 18 18 18 17 17 16 15 14 12 11 9 8 7 6 5 4 4 4 4 4 5 6 8 9 11 12 13 14 16 17 18 18 18 18 17 17 16 15 14 14 13 13 14 14 14 15 16 16 17 17 16 14 12 10 8 8 8 8 9 10 11 11 11 11 10 10 8 7 6 5 5 6 8 9 10 11 11 11 11 11 12 12 13 14 14 14 14 13 13 13 13 13 13 14 14 14 13 13 12 12 12 12 12 11 -38 -36 -33 -30 -28 -26 -23 -19 -14 -11 -8 -7 -7 -8 -9 -10 -10 -10 -9 -7 -4 -1 2 5 7 10 15 18 20 19 17 14 12 10 7 6 5 5 7 8 9 8 8 8 9 9 9 10 10 10 9 9 9 10 10 11 11 11 10 9 9 9 8 8 8 7 5 4 1 -1 -3 -5 -6 -8 -9 -10 -12 -13 -14 -15 -16 -16 -14 -11 -8 -6 -6 -8 -9 -10 -12 -13 -11 -8 -1 6 8 7 5 4 5 7 8 9 8 7 7 9 10 10 9 6 6 6 7 8 8 7 7 7 6 6 5 5 5 5 6 6 8 9 10 11 11 12 12 11 10 9 7 6 5 5 5 5 5 6 10 12 13 12 8 4 3 4 7 11 14 15 16 17 17 17 16 15 13 12 11 11 11 10 10 10 10 11 11 10 9 9 8 8 9 9 10 11 11 11 10 9 9 9 9 9 9 9 8 8 7 6 6 6 6 6 7 7 8 9 10 11 12 13 14 15 16 16 16 16 16 16 17 18 19 20 21 22 23 24 24 25 25 26 26 27 27 27 27 27 27 26 26 25 25 24 23 22 21 20 19 19 19 19 19 19 19 18 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 15 14 13 13 12 11 11 11 10 10 10 9 9 9 9 9 8 8 8 8 8 8 8 8 10 12 14 14 14 15 16 16 17 17 18 18 18 18 18 18 17 16 15 14 13 11 9 8 7 7 7 6 6 6 5 5 6 8 10 12 13 13 15 16 18 19 19 19 19 19 19 18 17 16 15 15 15 15 15 15 16 16 17 17 18 18 18 17 15 12 10 9 9 9 10 11 11 12 12 12 12 11 10 8 7 6 6 7 8 10 11 11 12 12 13 13 13 14 15 15 15 15 14 14 14 14 14 14 15 15 15 14 14 13 13 13 13 13 12 -37 -34 -32 -30 -28 -25 -21 -16 -11 -8 -6 -5 -5 -6 -7 -8 -8 -8 -6 -3 -1 0 2 4 5 8 14 18 18 17 14 13 10 8 5 4 4 6 8 9 9 9 10 10 11 10 10 10 9 9 9 9 10 10 10 11 11 11 11 10 10 10 9 8 7 6 5 3 1 -1 -3 -5 -6 -8 -10 -11 -13 -14 -14 -15 -15 -15 -14 -15 -12 -8 -8 -11 -12 -12 -11 -10 -7 -6 -4 3 6 5 5 5 6 7 7 6 5 5 7 9 10 9 7 6 6 7 8 8 7 7 7 6 6 5 5 5 5 5 6 7 8 9 10 11 12 12 12 11 10 9 7 6 5 4 4 3 4 6 10 12 12 10 6 3 3 6 10 12 13 13 15 16 17 17 15 13 12 11 10 10 10 11 11 11 11 11 10 9 9 9 9 9 10 11 11 11 11 10 9 9 10 10 11 11 11 11 10 9 8 7 7 6 6 6 7 7 7 8 9 10 11 12 14 15 16 16 17 17 17 17 17 18 19 19 20 21 22 23 24 25 25 26 27 27 28 28 28 28 28 28 28 28 27 26 26 24 24 23 23 22 22 21 21 20 20 19 19 18 18 18 18 17 17 17 17 17 17 17 17 17 17 18 17 17 16 16 15 14 14 13 12 12 11 10 10 10 10 10 10 10 10 9 9 9 9 9 8 8 9 11 13 14 15 15 16 17 17 17 18 18 19 19 19 19 19 18 18 17 16 14 12 11 9 8 8 8 8 7 6 5 5 7 8 10 12 12 13 14 16 17 18 19 19 19 19 19 19 18 18 17 17 17 17 17 17 18 18 19 19 19 19 19 19 18 17 14 12 10 10 10 11 11 12 12 12 12 11 11 10 9 7 7 7 8 9 10 11 12 13 13 14 14 14 15 16 17 17 16 16 15 15 15 16 16 16 16 16 15 14 14 14 14 13 13 -35 -33 -31 -29 -27 -24 -19 -13 -9 -6 -4 -3 -2 -3 -4 -5 -5 -5 -3 -1 1 2 2 3 4 8 14 17 17 14 12 11 9 6 4 2 3 6 8 10 11 11 12 12 12 11 10 9 9 9 8 9 9 10 11 11 11 11 11 11 11 11 9 8 7 5 3 2 -0 -2 -3 -5 -6 -8 -11 -13 -14 -14 -15 -15 -15 -15 -15 -18 -17 -13 -10 -10 -11 -13 -14 -12 -8 -7 -7 1 5 5 5 6 6 6 5 4 4 6 8 9 8 7 6 6 7 8 8 7 7 7 7 6 6 5 5 5 5 5 6 7 8 9 10 11 12 12 12 12 11 9 7 6 5 4 3 2 3 7 10 12 11 8 5 3 5 9 11 12 11 12 14 16 16 15 13 12 11 10 11 11 12 12 12 11 11 10 9 9 9 10 10 11 12 12 12 11 10 10 10 11 12 12 13 13 13 13 12 11 9 8 8 8 7 7 7 7 7 7 8 9 10 11 12 14 15 16 17 17 17 17 18 18 18 19 20 20 21 22 23 24 25 26 26 27 27 27 28 28 28 28 28 28 28 27 26 26 25 25 24 24 23 22 21 21 20 20 20 20 20 20 20 19 19 18 18 18 17 18 18 18 18 18 18 18 17 17 16 16 15 14 13 13 12 11 10 10 10 10 11 11 11 10 10 10 10 9 9 9 10 12 14 15 16 16 17 18 18 19 19 19 20 20 20 20 20 20 19 19 18 16 14 12 10 9 10 10 9 8 6 5 5 7 9 10 11 11 12 13 15 16 17 18 19 19 20 20 20 20 20 20 19 19 19 19 19 20 20 20 20 20 20 20 20 20 20 18 16 13 11 11 11 11 11 12 12 11 11 11 11 10 9 8 8 8 9 10 11 12 13 13 14 15 15 16 17 17 18 18 18 17 17 17 17 17 17 17 16 16 15 15 15 14 14 14 -33 -31 -29 -28 -25 -21 -16 -11 -6 -4 -2 0 1 1 0 -1 -1 -2 -1 1 2 2 1 1 4 9 13 15 15 13 10 9 6 4 2 2 4 6 8 10 12 13 13 12 11 10 9 9 9 8 8 8 10 11 11 11 11 11 12 12 12 11 9 7 5 4 2 0 -1 -2 -3 -5 -6 -9 -11 -13 -14 -15 -16 -16 -16 -16 -18 -20 -20 -17 -14 -11 -10 -13 -16 -16 -12 -9 -10 -2 3 5 5 6 5 3 3 3 5 6 7 7 7 6 6 7 8 8 7 7 7 8 7 7 7 6 6 6 5 6 6 7 8 9 10 11 12 12 12 12 11 9 8 7 6 5 3 3 4 7 9 10 10 8 7 6 8 10 11 10 10 13 15 15 15 13 11 11 11 11 12 13 13 13 12 11 10 9 9 10 10 11 12 12 12 12 11 10 10 10 11 13 13 14 14 14 14 14 13 12 10 10 9 9 8 8 7 7 7 8 8 8 9 10 11 12 13 14 15 16 17 17 17 17 18 18 19 20 21 22 23 24 25 25 25 26 26 26 26 27 27 27 27 27 27 26 26 26 25 25 24 23 22 22 21 21 20 21 21 21 21 21 21 21 20 19 19 18 18 18 18 19 19 19 19 18 18 18 18 17 16 16 15 14 13 12 11 11 11 11 12 12 11 11 11 11 11 11 11 11 12 14 15 16 17 18 18 19 19 20 20 21 21 21 21 21 21 21 20 20 19 18 16 13 11 10 10 10 10 8 7 6 6 8 9 10 11 11 11 12 14 15 16 18 19 19 20 20 21 21 22 22 21 21 20 20 21 21 22 22 21 21 21 22 22 22 22 21 20 17 14 13 12 11 11 11 11 11 11 10 10 10 9 9 9 9 9 10 11 12 13 13 14 15 16 16 17 18 18 19 19 19 18 18 18 18 18 18 17 16 16 15 15 15 15 15 -31 -29 -27 -25 -21 -17 -12 -8 -4 -1 1 2 3 4 4 3 2 1 1 2 3 2 1 2 4 9 12 14 13 11 8 6 4 3 2 2 4 6 8 10 11 12 12 10 10 9 9 9 8 8 8 8 10 11 12 12 11 11 12 12 12 10 8 6 3 2 1 -1 -2 -3 -4 -5 -6 -8 -11 -13 -15 -16 -17 -17 -17 -17 -20 -21 -21 -20 -17 -14 -11 -13 -16 -18 -16 -13 -13 -7 1 5 4 3 2 2 2 4 5 6 6 5 5 6 7 8 8 7 7 7 8 8 8 8 8 7 7 6 6 6 7 7 8 9 10 11 11 12 12 11 10 9 8 8 7 6 5 4 5 6 7 8 9 9 9 9 10 11 10 11 12 14 15 14 12 10 9 10 11 13 14 14 14 12 11 10 10 10 10 11 12 12 13 13 12 11 10 10 11 12 13 14 15 15 15 15 15 14 13 12 11 11 10 10 9 9 8 8 8 8 8 8 9 9 9 10 11 12 13 14 15 16 16 17 17 18 18 19 20 22 23 23 24 24 25 25 25 26 26 26 26 26 26 26 26 26 26 25 25 25 24 23 22 22 21 21 21 21 21 21 21 21 21 21 20 20 20 19 19 19 19 19 19 19 20 20 20 20 19 19 18 17 16 15 15 14 13 13 13 13 13 13 13 12 12 12 12 12 12 13 14 16 17 18 18 19 19 20 21 21 21 22 22 22 22 22 22 21 21 21 21 19 17 14 12 11 11 11 10 9 8 7 8 9 10 10 10 10 11 12 13 14 16 17 18 19 20 20 21 22 22 22 22 21 21 21 21 21 22 22 22 22 22 23 24 24 24 23 23 22 21 17 14 12 12 11 11 11 10 10 9 9 9 9 9 9 9 10 11 12 13 14 14 15 16 17 17 18 19 19 20 20 20 19 19 19 19 18 18 17 16 16 15 15 15 15 -29 -26 -24 -21 -18 -14 -10 -6 -3 0 2 4 5 6 6 5 4 3 2 2 2 1 1 2 5 8 12 13 12 10 7 5 3 2 1 2 4 6 7 9 10 10 9 9 9 9 9 8 8 8 8 8 10 11 12 12 11 11 12 12 11 9 6 3 1 0 -1 -1 -2 -3 -4 -5 -6 -8 -10 -12 -14 -16 -17 -17 -18 -19 -21 -22 -22 -21 -19 -17 -15 -14 -16 -18 -18 -15 -15 -11 -2 4 2 1 1 2 3 4 5 4 4 4 5 6 7 7 6 6 7 8 8 8 8 8 8 8 7 7 6 6 7 7 7 8 9 9 10 10 10 10 9 9 9 8 8 7 6 6 6 6 6 7 8 9 10 11 12 12 12 13 15 15 14 11 9 8 9 10 12 14 14 14 12 11 11 11 11 11 11 12 13 13 13 12 11 10 10 11 12 14 15 16 16 15 15 15 14 14 13 12 12 11 11 10 10 9 9 9 9 9 9 9 9 9 9 9 9 10 11 12 13 14 15 16 17 17 18 19 20 21 22 23 24 24 25 25 26 26 26 27 27 27 27 27 27 27 26 26 26 25 25 24 24 23 23 23 22 22 22 21 21 21 21 21 21 20 20 20 19 19 19 20 20 20 21 21 21 21 21 20 20 19 18 18 17 16 16 15 15 15 15 15 14 14 14 14 14 14 14 15 16 17 18 19 20 20 21 22 22 22 22 23 23 23 23 23 22 22 22 22 22 21 18 16 13 12 11 10 10 9 9 9 10 10 11 11 10 10 11 11 13 14 16 17 18 19 19 20 21 21 22 22 21 21 21 21 21 21 21 21 22 23 24 24 25 24 24 24 25 25 25 24 21 17 14 12 11 10 10 9 8 8 8 8 8 9 9 10 11 12 13 14 15 15 16 17 17 18 19 20 20 21 21 20 20 20 19 19 18 18 17 16 16 15 15 15 -27 -23 -21 -19 -16 -13 -9 -5 -1 2 3 5 7 8 8 7 6 4 3 2 0 0 1 3 5 8 11 12 11 9 6 4 3 2 2 3 5 6 7 7 8 7 7 7 8 9 9 8 8 8 8 8 9 11 12 11 10 10 10 11 10 7 5 2 -1 -1 -1 -2 -2 -3 -4 -6 -7 -8 -10 -12 -14 -16 -17 -17 -18 -19 -20 -21 -22 -21 -20 -19 -18 -17 -17 -19 -20 -18 -13 -12 -5 1 0 -1 1 3 4 4 3 2 2 3 4 5 6 5 5 5 6 7 7 8 8 8 8 7 7 6 6 6 6 6 6 6 6 7 8 8 8 8 8 8 8 8 8 7 7 7 6 6 5 6 7 8 10 11 12 13 14 16 16 14 12 9 7 7 9 11 12 13 13 12 11 11 11 12 12 12 12 13 13 13 12 11 10 10 10 12 14 15 16 16 15 15 14 14 13 13 12 12 11 11 11 10 10 10 10 10 10 10 9 9 9 9 9 9 9 9 9 10 11 12 13 14 15 17 18 19 20 21 21 22 23 24 25 26 26 27 27 28 28 28 28 28 28 28 28 28 27 27 26 26 25 25 25 24 24 23 23 22 22 22 22 21 21 21 21 20 20 20 20 20 20 21 21 22 22 22 22 22 22 21 21 20 19 19 18 18 18 18 17 17 17 16 16 16 15 15 16 16 17 18 19 20 21 22 23 23 23 23 23 24 24 24 24 23 23 23 23 22 22 21 20 17 14 12 11 10 10 10 10 11 11 12 12 11 10 10 11 12 13 15 16 16 17 18 18 19 20 21 21 21 21 20 21 21 21 21 21 21 22 24 25 25 25 25 24 25 25 26 27 27 26 24 21 17 13 11 9 8 8 7 7 7 8 8 9 9 10 11 13 14 15 16 16 17 18 18 19 20 20 21 21 21 20 20 19 19 19 18 17 17 16 16 15 15 -25 -22 -20 -18 -16 -12 -8 -3 1 3 5 6 7 8 9 8 7 5 3 1 -0 -0 1 3 5 7 10 12 11 8 6 4 3 3 4 5 6 6 6 6 6 6 6 7 8 8 8 8 8 8 8 8 9 10 11 11 10 9 9 9 9 6 4 2 -1 -2 -2 -2 -2 -2 -4 -6 -8 -9 -10 -12 -14 -16 -16 -17 -18 -19 -18 -19 -21 -22 -22 -21 -21 -20 -20 -20 -20 -18 -14 -15 -10 -4 -1 0 2 3 3 2 1 1 2 3 4 4 4 4 4 5 5 6 6 6 7 7 6 5 5 5 4 4 3 3 3 3 4 5 5 5 6 6 6 7 7 8 7 7 7 7 7 6 6 6 6 7 8 9 11 13 15 16 15 12 9 7 7 8 10 11 11 11 10 10 10 11 11 12 12 12 13 13 13 12 11 10 9 10 11 13 15 16 16 15 14 13 12 12 12 12 11 11 11 10 10 10 10 10 10 10 10 10 10 10 10 9 9 9 8 8 8 9 9 10 11 13 14 15 17 18 19 19 20 21 22 23 25 25 26 27 27 28 28 29 29 29 29 29 29 29 28 28 27 26 26 26 26 26 26 25 25 24 24 23 23 23 23 22 22 21 21 20 20 20 21 21 22 22 22 23 23 23 23 23 23 22 22 21 21 21 20 20 20 20 19 19 18 17 17 17 17 18 18 19 20 21 22 23 23 24 24 24 25 25 25 25 25 24 24 23 23 23 23 22 21 18 15 13 12 11 10 10 11 12 13 13 12 12 11 11 11 12 13 15 15 16 16 17 18 19 19 20 20 20 20 20 21 21 21 21 21 22 22 24 25 26 25 25 25 25 25 26 27 29 29 28 27 24 21 16 11 9 7 7 6 6 7 7 8 9 9 10 11 13 15 16 16 17 17 18 19 19 20 21 21 21 20 20 19 19 18 18 18 17 16 16 15 15 -23 -21 -19 -17 -15 -11 -7 -2 1 4 5 6 7 8 9 9 8 6 3 1 -0 -0 1 3 5 6 9 11 10 7 6 5 5 5 5 6 6 6 5 5 5 5 6 7 8 8 8 9 9 9 8 8 9 10 11 10 9 9 9 9 8 7 5 3 1 -1 -2 -2 -2 -3 -4 -7 -8 -10 -11 -12 -13 -15 -15 -17 -18 -18 -18 -19 -21 -22 -23 -22 -23 -23 -23 -23 -22 -21 -17 -18 -15 -8 -1 0 1 1 0 -0 -0 0 2 3 3 3 3 3 3 3 4 4 4 5 5 4 4 3 3 3 2 2 1 -0 -0 0 1 2 3 3 4 4 5 5 6 6 6 5 5 6 6 6 6 6 5 5 5 6 8 11 13 13 11 8 6 6 7 8 9 9 9 8 8 8 9 10 10 11 11 12 12 13 12 11 10 9 9 10 11 13 14 15 14 14 13 12 12 11 11 10 10 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 9 9 8 8 8 8 9 9 10 11 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 27 28 28 29 29 29 29 29 29 28 28 27 27 27 27 27 27 27 27 27 26 26 25 25 25 25 24 24 23 22 21 21 21 21 21 22 22 23 23 24 24 24 24 24 24 24 23 23 23 23 23 22 22 22 21 20 19 19 19 19 20 20 21 22 22 23 23 24 25 25 26 26 26 26 26 26 25 24 24 23 23 23 23 21 19 16 14 12 12 11 11 12 13 13 13 13 12 12 11 11 12 14 15 16 16 16 17 17 18 19 20 21 21 21 21 21 21 21 22 22 22 23 24 25 26 26 26 25 25 25 26 28 29 30 31 30 29 27 24 20 14 9 7 6 6 6 6 7 8 9 9 10 12 14 15 16 17 17 18 18 19 19 20 20 20 20 19 19 18 18 18 18 17 17 16 16 15 -21 -19 -17 -15 -12 -9 -6 -2 1 3 3 4 6 8 9 9 8 6 4 1 0 1 2 3 4 5 8 9 9 7 6 6 6 6 6 5 4 3 4 5 6 7 8 7 7 8 9 10 10 9 9 9 10 10 10 10 10 10 10 10 9 8 7 4 2 0 -1 -2 -2 -3 -4 -7 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -18 -20 -20 -21 -22 -23 -24 -24 -24 -24 -24 -24 -20 -17 -14 -9 -2 -1 -2 -2 -2 -2 -1 -0 1 2 2 2 2 2 2 2 2 2 3 3 3 2 1 1 1 1 0 -1 -2 -2 -2 -1 -1 -0 0 1 2 2 3 3 3 3 3 3 4 4 5 6 6 5 4 3 3 4 6 8 9 8 6 5 5 5 7 7 7 6 6 6 6 7 8 8 8 8 9 11 11 12 11 10 9 9 9 10 11 13 13 13 13 13 12 11 11 10 9 9 8 8 8 8 8 8 8 9 9 9 9 10 10 10 10 9 9 9 8 8 8 8 8 9 9 10 11 12 14 15 16 17 18 19 20 21 22 23 24 25 25 26 27 27 28 28 28 28 28 28 28 27 27 27 27 27 27 27 28 28 27 27 27 27 27 27 26 26 25 25 24 23 22 22 22 22 22 23 23 24 24 24 25 25 25 25 25 25 25 25 25 25 24 24 24 23 22 21 21 21 21 22 23 23 24 24 24 24 24 25 26 27 27 27 27 27 27 26 25 24 24 23 23 23 22 20 17 15 13 12 12 12 12 12 13 13 13 13 12 12 12 13 14 15 16 16 17 17 18 18 19 20 21 22 22 21 21 21 22 22 22 23 23 24 25 26 27 27 27 26 26 27 28 29 30 31 32 32 31 30 28 24 17 11 7 6 6 6 7 8 8 9 10 10 12 14 16 17 17 17 17 17 18 18 19 19 19 19 18 18 18 18 17 17 17 16 16 15 -19 -16 -14 -11 -9 -7 -5 -3 -0 1 2 3 5 7 8 9 8 7 4 2 1 2 3 4 4 6 8 9 9 8 7 6 6 5 3 2 2 3 5 6 8 9 8 7 8 8 9 9 8 8 9 9 9 9 10 11 11 11 11 11 10 9 8 5 3 1 -1 -2 -2 -3 -4 -6 -9 -12 -13 -13 -13 -13 -15 -16 -17 -18 -18 -18 -19 -20 -21 -23 -25 -26 -25 -25 -25 -25 -22 -17 -15 -11 -5 -3 -4 -4 -4 -3 -3 -2 -1 0 1 1 1 1 1 1 1 1 2 1 0 -0 -0 0 -0 -1 -2 -3 -3 -4 -3 -3 -2 -2 -1 -1 -0 0 0 1 1 1 1 2 2 2 3 4 5 5 4 3 3 3 4 4 4 3 2 2 3 5 6 5 4 4 4 4 5 6 6 6 6 7 8 9 10 10 10 9 8 8 8 10 11 12 12 12 12 12 12 11 10 9 8 8 8 8 8 7 7 7 8 8 8 9 9 10 10 10 10 9 9 9 8 8 8 8 8 8 8 9 10 11 12 14 15 16 17 18 19 20 21 22 22 23 24 25 26 26 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 28 27 27 27 27 26 25 25 24 23 23 23 23 23 24 24 24 24 25 25 25 26 26 26 26 26 26 26 25 25 25 24 24 23 23 23 23 24 25 25 25 25 25 25 25 26 27 27 28 28 28 28 27 27 26 25 24 24 24 24 23 21 18 16 14 13 13 12 12 12 12 13 13 13 12 12 12 13 15 16 17 17 18 18 18 19 19 20 21 22 22 22 22 22 22 22 23 23 24 24 26 27 28 28 28 28 28 28 28 29 31 32 33 33 34 34 33 31 26 20 14 9 6 6 7 8 8 9 9 10 11 12 14 15 16 16 16 16 16 16 17 18 18 18 18 17 17 17 17 17 16 16 16 15 -16 -13 -10 -8 -6 -5 -4 -2 0 2 2 3 4 6 7 9 9 7 5 4 4 6 7 7 7 8 10 11 11 10 7 5 3 2 1 1 3 4 6 7 9 9 9 8 8 7 7 6 7 8 9 9 8 9 10 11 12 12 11 11 11 10 8 6 4 2 -0 -1 -2 -3 -4 -6 -9 -12 -13 -13 -13 -14 -15 -17 -18 -18 -17 -17 -18 -19 -21 -22 -25 -26 -27 -26 -26 -26 -23 -19 -18 -17 -11 -5 -6 -5 -5 -4 -4 -3 -2 -1 -1 -0 -0 -0 -0 0 0 1 0 -1 -1 -1 -1 -1 -1 -2 -3 -4 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -1 -1 -1 -1 -0 0 1 1 2 2 3 3 4 4 4 4 3 2 1 0 0 2 3 4 4 3 2 2 3 4 5 5 5 4 5 6 7 8 9 9 8 8 8 8 8 9 10 11 11 11 11 11 11 10 9 8 7 7 7 7 7 7 7 7 7 8 8 8 9 9 10 10 10 9 9 9 8 8 8 8 8 8 8 9 10 10 12 13 14 15 17 18 19 19 20 21 22 23 23 24 25 25 25 25 26 26 26 26 26 26 26 26 26 26 26 26 27 27 27 27 27 27 28 27 27 27 27 27 26 26 25 24 24 24 24 24 24 24 24 24 25 25 26 26 27 27 27 27 27 27 26 26 26 25 25 24 24 24 24 25 26 26 26 26 26 25 26 27 27 28 28 29 29 29 28 27 26 25 25 24 24 24 23 21 19 17 15 14 13 12 12 12 12 13 13 13 13 12 13 14 15 16 17 18 18 19 19 19 20 20 21 22 22 23 22 22 22 22 23 23 24 25 26 28 29 29 30 30 30 30 30 30 31 32 33 34 35 36 36 35 33 29 23 17 10 8 7 7 8 9 9 9 9 10 12 13 15 16 16 16 15 15 16 16 17 17 17 16 16 16 16 16 16 15 15 15 -12 -9 -6 -4 -4 -3 -3 -1 1 3 3 3 3 4 8 10 9 8 7 6 7 8 9 9 9 10 12 12 11 8 6 4 2 1 2 3 4 5 7 8 9 9 8 8 6 5 4 4 6 8 8 8 8 9 10 12 12 12 12 11 11 10 9 7 4 2 1 -1 -1 -2 -3 -5 -8 -10 -12 -12 -12 -14 -15 -17 -17 -18 -17 -17 -17 -19 -20 -22 -24 -26 -27 -27 -27 -26 -25 -21 -21 -21 -17 -8 -6 -6 -5 -5 -4 -4 -3 -2 -1 -1 -1 -1 -0 -0 -0 -0 -1 -2 -2 -2 -2 -2 -2 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -1 -0 0 1 0 0 1 2 3 4 5 4 3 2 1 0 1 2 2 2 2 2 2 3 4 5 5 4 4 4 5 6 7 7 8 8 8 8 8 7 8 8 9 11 11 11 11 11 11 10 9 8 7 7 7 7 6 6 6 7 7 7 8 8 9 9 10 10 9 9 9 9 9 9 8 8 8 8 8 9 9 10 11 13 14 15 16 18 19 20 21 21 22 23 23 24 24 24 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 26 26 26 27 27 27 27 27 27 27 27 26 26 25 25 25 25 24 24 24 23 23 24 25 26 27 27 27 27 27 27 27 27 27 26 26 26 26 26 25 25 25 25 26 26 26 26 26 26 27 27 27 28 28 28 29 28 28 27 26 25 25 24 24 24 23 21 20 18 16 15 14 13 12 12 12 13 13 13 13 13 13 14 15 16 17 18 19 19 20 20 19 20 20 21 22 22 22 22 22 22 22 23 24 25 27 29 30 31 31 31 32 32 31 31 31 32 33 34 35 37 38 38 37 35 32 26 19 13 9 7 8 8 8 8 8 9 9 11 12 14 15 15 15 14 15 15 15 16 16 15 15 15 15 15 15 14 14 14 -9 -6 -4 -2 -2 -2 -1 1 4 5 4 3 3 6 9 10 10 8 7 7 7 8 9 9 9 10 11 10 9 7 5 3 2 2 3 4 5 6 8 8 8 7 7 5 4 3 3 3 5 6 7 8 9 10 11 12 13 13 12 12 12 11 9 7 5 3 2 1 -0 -1 -2 -4 -6 -8 -10 -11 -13 -14 -15 -16 -17 -17 -18 -17 -17 -18 -20 -21 -23 -24 -25 -26 -27 -28 -28 -25 -23 -22 -22 -13 -7 -6 -6 -5 -4 -4 -3 -3 -2 -1 -1 -1 -0 -0 -0 -1 -2 -2 -2 -2 -2 -3 -3 -4 -4 -5 -4 -4 -4 -4 -5 -5 -5 -4 -4 -3 -3 -4 -4 -3 -2 -1 -0 -0 -0 -0 -0 1 2 3 4 3 2 2 1 1 1 1 1 1 1 1 2 3 4 4 4 3 3 4 5 6 7 7 7 8 8 8 7 6 6 7 9 10 11 11 11 11 10 9 8 7 7 7 7 6 6 6 6 6 7 7 8 8 9 9 9 9 9 9 9 9 9 9 9 8 8 8 9 9 10 11 12 13 14 15 16 18 19 20 21 22 23 23 24 24 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 25 25 26 26 26 26 26 26 26 26 26 26 25 25 25 25 25 24 23 23 23 23 24 26 27 28 29 29 28 28 28 27 27 27 27 27 27 27 27 26 26 25 25 25 25 25 26 26 26 27 27 27 27 27 28 28 28 27 27 26 25 24 24 23 23 22 21 20 19 17 16 15 14 13 12 12 13 13 14 14 14 14 15 15 16 17 18 19 20 20 19 19 19 19 19 20 21 21 22 21 21 22 22 23 25 27 29 31 31 32 32 32 33 33 33 32 32 33 34 36 37 39 40 40 40 38 35 29 22 15 9 7 7 8 8 8 8 8 8 10 11 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13 -6 -3 -1 -0 -0 0 2 4 6 7 5 4 5 6 9 9 8 6 5 5 6 6 6 6 6 7 8 7 6 5 4 3 2 3 3 4 5 7 7 7 6 5 4 2 1 2 2 3 4 5 6 8 10 11 12 13 13 13 13 13 13 12 10 8 6 5 4 2 1 0 -1 -3 -5 -7 -9 -11 -13 -15 -16 -16 -17 -17 -18 -17 -17 -17 -18 -20 -21 -22 -24 -25 -27 -29 -31 -30 -26 -25 -26 -21 -9 -5 -5 -5 -4 -4 -4 -3 -2 -2 -1 -1 -0 -0 -0 -1 -2 -2 -2 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -5 -4 -4 -4 -4 -4 -4 -3 -2 -1 -1 -1 -1 -1 -0 1 2 2 2 2 2 2 2 1 1 0 0 1 1 2 3 3 3 3 3 3 4 5 5 6 6 7 7 7 7 5 4 4 6 8 10 11 11 11 10 9 8 8 7 7 7 6 5 5 5 5 6 6 7 7 8 8 9 9 9 9 9 9 10 9 9 9 9 9 9 9 10 11 11 12 13 14 15 17 18 19 20 22 23 23 24 25 25 25 25 26 26 25 25 25 24 24 24 24 24 24 24 24 24 24 24 25 25 26 26 25 25 25 25 25 25 25 25 25 25 25 24 23 23 22 22 23 25 27 28 29 30 30 30 29 29 28 28 28 28 28 28 28 28 27 26 25 24 23 23 24 25 26 27 27 27 27 27 26 26 27 27 27 26 25 25 24 23 23 22 22 21 20 19 18 17 16 15 14 13 13 13 14 14 15 15 15 15 16 17 18 18 19 19 19 18 18 17 17 18 18 19 20 21 21 21 21 22 23 24 27 29 31 32 32 32 32 33 33 34 34 33 34 35 36 38 39 40 41 42 42 41 37 31 24 16 8 6 7 7 7 7 7 7 8 9 10 12 13 13 13 12 12 12 13 12 12 13 13 13 13 13 12 12 -4 -0 1 3 3 4 5 6 8 8 6 5 5 7 8 8 5 3 2 3 3 3 3 3 4 5 4 4 4 3 3 2 1 2 2 3 4 7 6 5 4 2 1 -0 0 1 3 3 4 5 7 9 11 13 13 12 12 12 13 14 15 13 11 9 8 7 6 5 3 2 -0 -2 -4 -6 -8 -11 -14 -16 -17 -17 -17 -18 -18 -17 -16 -17 -18 -19 -20 -22 -24 -26 -28 -29 -30 -30 -28 -25 -26 -26 -12 -5 -4 -5 -4 -4 -3 -2 -2 -1 -1 -0 0 0 -0 -1 -2 -2 -3 -3 -3 -4 -5 -5 -5 -5 -5 -5 -6 -7 -7 -7 -7 -6 -5 -4 -4 -5 -5 -5 -4 -3 -2 -2 -1 -1 -1 -0 0 1 1 1 2 2 2 2 1 -0 -0 -0 0 1 2 2 2 2 2 2 3 3 4 4 5 6 6 6 5 4 3 2 3 6 9 11 11 10 10 9 8 7 7 7 7 6 5 5 5 5 5 6 6 7 7 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 10 11 11 12 13 13 14 15 16 18 19 20 21 22 23 24 25 25 26 26 26 26 26 26 25 25 25 24 24 24 24 24 24 24 24 25 25 26 26 26 25 25 25 25 25 25 25 25 25 25 24 24 23 22 22 23 24 26 27 29 30 30 31 31 30 30 29 29 29 29 29 29 28 28 27 26 25 23 22 22 23 25 26 27 28 27 27 26 26 25 26 26 26 26 25 25 24 23 23 22 22 21 20 19 19 18 17 16 14 14 13 14 15 15 16 16 16 16 17 17 18 18 19 18 18 17 17 16 16 17 17 18 19 20 20 20 21 21 22 23 26 28 30 31 32 32 32 33 33 34 35 35 35 35 37 38 39 40 41 42 43 44 42 38 33 25 16 6 5 5 6 6 6 6 6 7 8 9 10 11 11 11 10 11 11 11 11 11 11 11 12 12 12 11 -2 2 4 7 8 7 7 7 9 8 6 5 6 7 7 5 2 0 -1 0 1 1 2 2 2 2 2 2 2 2 1 0 -0 -0 -1 -0 2 5 4 3 1 -0 -1 -1 -0 0 1 3 4 6 7 10 12 13 12 11 11 11 12 14 14 13 12 11 10 9 8 6 5 2 0 -2 -4 -6 -9 -11 -13 -16 -17 -18 -18 -18 -18 -18 -18 -17 -18 -19 -21 -23 -26 -28 -30 -29 -28 -30 -30 -30 -28 -30 -18 -8 -4 -4 -4 -3 -2 -2 -1 -1 0 1 1 1 0 -1 -2 -2 -3 -3 -4 -4 -5 -5 -5 -5 -5 -6 -6 -7 -8 -8 -7 -6 -5 -5 -5 -5 -6 -6 -5 -4 -3 -3 -2 -1 -1 -1 -0 -0 0 1 1 2 2 1 0 -0 -1 -1 -0 0 1 1 1 0 1 1 2 3 3 4 4 5 5 4 3 1 0 0 3 6 9 10 10 8 7 6 6 6 7 7 6 5 4 4 5 5 5 6 6 7 7 7 8 8 8 8 8 8 8 9 9 9 9 9 9 10 10 11 11 12 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 26 26 26 26 26 26 25 25 25 25 24 24 24 24 24 24 25 26 26 26 26 25 25 25 25 25 25 25 25 25 25 24 24 23 23 23 24 25 27 27 28 29 29 30 30 31 31 31 31 31 30 30 29 29 28 27 25 24 23 22 23 24 25 27 28 28 28 27 26 25 25 25 25 25 25 25 25 24 23 23 23 22 21 21 20 19 18 17 16 15 14 14 15 16 16 16 16 16 17 17 18 18 19 18 17 17 16 16 16 16 16 17 17 18 19 20 20 21 21 22 23 24 26 28 30 31 31 32 32 33 34 35 35 36 36 37 38 39 39 40 41 42 44 45 43 40 34 26 14 5 2 4 5 5 6 6 6 6 6 7 8 8 8 8 8 9 9 9 9 10 10 10 10 10 10 1 4 7 10 11 9 7 7 8 8 7 6 7 7 6 3 0 -1 -2 -1 -1 1 2 3 2 2 1 1 1 0 0 -1 -2 -3 -3 -3 -0 2 2 1 -0 -1 -1 -1 -1 -1 1 3 5 6 8 10 11 10 9 9 9 9 10 11 12 12 11 11 10 9 8 7 4 2 -0 -2 -4 -6 -9 -11 -13 -14 -16 -18 -18 -18 -18 -19 -19 -19 -20 -20 -22 -24 -28 -31 -32 -29 -27 -28 -30 -31 -30 -29 -22 -12 -5 -3 -3 -2 -1 -1 -0 0 1 1 2 1 0 -0 -1 -2 -3 -3 -3 -4 -4 -4 -4 -4 -4 -5 -6 -7 -7 -7 -7 -6 -6 -5 -5 -5 -6 -6 -6 -5 -5 -4 -3 -2 -1 -1 -1 -1 -0 0 1 2 2 2 1 -0 -1 -1 -0 -0 -0 -0 -0 -0 -0 1 1 2 3 3 4 4 4 3 1 -1 -2 -0 3 7 9 9 7 5 4 4 5 6 6 6 5 5 5 5 5 6 6 6 7 7 7 7 7 7 7 7 7 7 8 8 8 9 9 9 9 9 10 10 10 11 12 12 13 14 15 16 17 18 19 20 21 22 23 24 25 25 26 26 26 26 26 25 25 25 25 24 24 24 24 24 24 25 26 26 26 26 26 26 26 26 26 26 26 26 26 25 25 24 24 24 25 26 27 27 28 28 28 28 29 29 30 30 31 32 32 32 31 30 29 28 26 25 23 23 23 24 25 26 28 29 29 28 27 26 25 24 24 24 25 25 25 25 24 24 23 23 22 22 21 20 19 19 18 17 16 15 15 16 16 17 17 16 16 17 18 18 18 18 18 17 16 16 15 15 16 16 17 17 18 19 20 20 21 21 21 22 24 25 27 29 30 31 32 33 34 34 35 35 36 37 38 38 39 39 40 40 41 43 45 46 45 41 34 25 13 4 -0 2 3 4 4 4 4 4 4 4 5 5 6 6 7 7 8 8 8 8 8 9 9 9 4 6 9 12 13 10 8 7 9 9 9 8 7 7 5 2 -1 -2 -3 -2 -1 0 2 3 3 2 2 1 -1 -1 -1 -2 -3 -4 -5 -5 -3 -1 -1 -1 -1 -1 -1 -1 0 2 3 4 5 7 8 8 8 7 7 8 8 8 9 9 9 10 10 9 9 8 7 5 3 1 -1 -3 -4 -7 -9 -12 -13 -14 -15 -17 -19 -19 -19 -20 -21 -22 -22 -23 -23 -25 -28 -32 -34 -31 -27 -26 -29 -31 -30 -29 -26 -18 -9 -3 -3 -2 -1 -0 0 1 2 2 2 2 1 -0 -1 -2 -2 -3 -3 -3 -3 -3 -2 -2 -3 -4 -5 -5 -6 -7 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -4 -3 -3 -3 -3 -3 -2 -1 0 1 2 2 1 1 0 -0 -1 -1 -1 -1 -1 -1 -0 0 1 2 3 4 4 5 4 2 -0 -2 -2 0 4 7 8 6 4 2 2 2 4 5 5 5 4 4 5 5 6 6 6 7 7 7 7 7 7 7 7 6 6 7 7 7 8 8 8 9 9 9 9 9 9 10 10 11 12 13 13 14 15 16 17 18 20 21 22 22 23 24 24 25 25 25 25 25 25 25 24 24 24 23 24 24 25 25 26 26 27 27 27 27 27 27 27 27 27 27 27 26 26 26 26 27 28 28 29 29 28 28 28 29 29 29 30 30 31 32 32 32 31 31 30 28 26 24 24 24 24 25 26 28 29 29 29 29 28 27 25 24 24 24 25 25 25 25 25 24 24 24 23 22 21 20 19 19 18 18 17 16 15 16 17 17 17 17 16 17 17 18 18 18 18 17 16 16 15 15 16 16 17 17 18 19 20 20 21 21 22 22 23 25 26 28 30 32 33 34 34 35 35 35 36 37 38 39 39 39 39 40 40 42 43 45 47 46 42 34 25 15 4 0 -0 0 1 1 1 1 0 1 2 2 3 4 5 5 6 6 6 6 6 6 7 7 5 7 8 11 12 11 9 9 9 10 9 7 6 5 2 -0 -2 -4 -4 -3 -1 0 1 2 2 2 2 -0 -2 -3 -3 -3 -3 -5 -6 -7 -7 -5 -4 -4 -3 -1 0 2 4 6 6 7 8 8 7 6 6 5 6 6 7 7 7 7 7 8 8 7 6 5 5 4 2 -0 -2 -3 -5 -8 -10 -13 -14 -15 -16 -17 -19 -21 -22 -23 -24 -25 -25 -25 -24 -25 -28 -32 -34 -32 -27 -23 -24 -27 -29 -28 -28 -23 -14 -5 -2 -1 -0 0 1 1 2 2 2 2 1 0 -1 -1 -2 -2 -2 -2 -1 -1 -1 -1 -2 -3 -4 -4 -5 -6 -6 -7 -7 -7 -7 -7 -6 -6 -7 -7 -6 -6 -6 -5 -5 -5 -5 -5 -3 -2 -1 0 1 2 2 1 1 -0 -0 -1 -1 -1 -1 -1 -1 0 1 2 3 4 5 5 4 2 -1 -3 -2 1 5 7 6 3 1 -0 -0 1 3 4 4 4 4 4 5 5 6 6 6 7 7 7 7 7 6 6 6 6 6 6 6 7 7 8 8 8 8 8 8 8 8 8 9 9 10 11 12 13 14 15 16 17 18 19 20 21 21 22 23 24 24 25 25 25 25 24 24 24 24 24 24 25 25 26 26 27 27 28 28 28 29 29 29 28 28 28 28 27 27 28 29 30 30 31 30 30 29 29 29 29 30 30 30 31 31 31 31 31 31 31 30 28 27 25 25 25 26 26 28 29 29 29 29 29 29 28 26 24 24 24 24 25 25 25 25 25 24 24 23 23 22 21 20 19 19 18 17 16 16 16 16 17 17 17 16 16 17 17 17 17 17 17 16 16 16 16 16 16 17 17 18 19 20 20 21 21 22 22 23 24 26 28 30 32 33 34 35 35 36 36 36 37 38 39 40 40 40 40 40 40 42 43 45 47 46 42 36 27 18 8 2 -1 -2 -2 -2 -2 -2 -1 -1 0 1 2 3 3 4 4 4 4 4 4 4 5 5 5 7 9 11 10 10 10 9 9 6 4 2 1 -0 -3 -5 -5 -5 -4 -2 -0 0 0 0 0 0 -1 -3 -4 -4 -5 -5 -7 -8 -9 -10 -9 -7 -5 -2 1 4 7 9 9 8 8 8 6 5 4 3 4 4 5 5 6 6 6 6 6 6 5 3 2 3 2 1 -1 -2 -4 -6 -8 -11 -14 -16 -17 -17 -18 -20 -22 -24 -26 -27 -28 -28 -26 -24 -24 -28 -31 -32 -29 -25 -21 -21 -23 -25 -27 -28 -26 -19 -9 -3 -1 -0 1 1 2 2 3 3 2 2 1 -0 -1 -1 -1 -1 -1 -0 0 0 -0 -1 -2 -3 -4 -5 -5 -6 -7 -8 -9 -9 -8 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -6 -5 -3 -2 -1 -0 0 1 1 0 0 -0 -0 -1 -1 -1 -1 -1 0 2 3 4 6 7 7 5 2 -1 -3 -1 3 6 7 4 1 -1 -2 -1 1 3 3 2 2 3 4 5 5 6 6 6 7 7 6 6 6 6 5 5 5 5 5 5 6 6 7 7 8 8 8 8 7 7 7 7 8 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 24 24 24 24 24 24 24 24 24 25 25 26 26 27 27 27 28 28 29 29 29 29 29 29 29 29 28 29 30 31 32 32 32 31 31 30 30 30 30 31 31 31 31 31 31 30 30 31 31 30 29 28 27 27 26 27 28 29 29 29 29 30 30 30 29 27 25 24 24 24 25 25 25 25 25 25 24 24 23 22 21 20 20 19 19 18 16 16 15 15 16 16 16 16 16 16 16 17 17 17 17 17 17 16 16 16 16 17 17 18 19 20 21 21 21 22 22 23 24 26 28 30 32 33 35 35 36 36 37 37 37 38 40 41 41 41 40 40 39 40 41 43 45 46 46 43 38 30 22 13 5 -0 -2 -3 -3 -3 -2 -2 -1 -0 0 1 1 1 1 1 1 1 1 2 2 3 4 5 7 9 9 9 8 7 5 2 -0 -1 -2 -3 -5 -6 -7 -6 -5 -2 -1 -1 -1 -2 -2 -1 -2 -3 -4 -6 -7 -8 -9 -11 -11 -11 -10 -8 -5 0 5 9 11 11 9 7 6 5 3 1 1 2 3 4 3 4 4 5 5 5 5 5 3 1 0 1 1 -0 -2 -3 -4 -6 -9 -11 -14 -17 -19 -19 -20 -22 -24 -26 -28 -29 -30 -29 -27 -25 -26 -28 -30 -28 -24 -22 -21 -21 -21 -23 -25 -27 -27 -23 -16 -7 -1 0 1 2 3 3 3 3 3 2 1 1 0 -0 -0 -0 -0 0 0 0 -0 -1 -3 -4 -4 -4 -5 -6 -7 -9 -10 -10 -9 -8 -8 -7 -8 -8 -7 -7 -8 -8 -8 -7 -7 -5 -4 -3 -2 -1 -1 -0 0 0 0 0 -0 -0 -1 -1 -1 -1 1 2 4 6 8 9 8 6 2 -1 -2 1 4 6 5 2 -1 -3 -2 -1 1 2 1 1 2 3 4 5 5 6 6 6 7 6 6 6 6 5 5 4 4 4 4 5 5 6 6 7 7 7 7 7 7 6 6 6 7 7 8 9 10 11 12 13 14 15 15 17 18 19 20 21 22 23 23 24 24 24 24 24 25 25 26 26 26 26 26 27 27 27 28 28 29 29 30 30 30 30 30 30 30 30 31 32 33 33 32 31 31 30 30 30 31 31 32 32 32 32 31 30 30 30 30 30 29 28 28 28 27 28 29 30 29 29 30 30 31 31 29 27 26 24 24 24 25 25 26 26 25 25 24 24 23 23 22 21 21 20 19 18 17 15 15 15 15 16 16 16 16 16 16 16 17 18 18 18 18 17 16 16 16 16 17 18 19 20 21 21 21 22 22 23 24 26 28 30 31 33 34 35 36 37 37 38 38 39 40 41 42 42 41 40 39 39 39 40 41 42 44 45 44 40 34 26 17 8 1 -2 -3 -3 -3 -2 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -0 0 1 2 4 6 8 8 7 6 4 2 -1 -3 -3 -4 -5 -7 -8 -8 -7 -5 -3 -2 -3 -3 -3 -3 -3 -3 -3 -4 -6 -8 -10 -11 -12 -11 -11 -9 -6 -2 3 8 11 11 9 6 4 3 1 -0 -0 0 2 3 3 2 3 4 6 6 6 5 4 2 1 0 1 1 -1 -2 -4 -5 -8 -10 -12 -15 -17 -19 -20 -21 -23 -25 -27 -30 -31 -31 -30 -29 -27 -29 -30 -29 -24 -17 -19 -20 -21 -21 -22 -24 -26 -26 -23 -18 -11 -3 1 2 3 4 4 4 4 4 3 2 2 1 1 0 0 0 0 0 0 -0 -2 -3 -4 -4 -4 -4 -5 -7 -9 -10 -10 -10 -9 -9 -8 -7 -7 -7 -7 -7 -8 -8 -8 -7 -6 -4 -3 -2 -2 -1 -1 -0 -0 0 0 1 0 -0 -1 -1 -1 1 4 6 8 10 10 8 5 1 -1 -1 2 5 5 3 -0 -2 -3 -1 0 1 1 1 1 2 3 4 5 5 6 6 7 7 7 7 6 6 5 5 4 4 4 4 4 5 5 5 6 6 7 7 7 7 6 6 6 6 7 8 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 23 24 24 24 25 26 26 27 27 27 27 27 27 27 27 27 28 28 29 29 30 30 30 30 31 31 32 32 32 32 32 32 31 30 30 30 30 31 31 32 32 32 32 31 31 31 31 31 30 29 29 28 28 28 29 30 30 29 29 30 31 32 31 30 28 26 25 24 24 25 26 26 26 26 25 25 24 24 23 23 22 22 21 20 19 17 16 15 15 15 15 16 16 16 16 16 16 17 18 19 19 19 18 17 16 16 16 17 18 19 20 21 21 21 21 22 23 24 26 27 29 30 32 33 34 35 36 38 39 39 40 41 42 43 44 43 41 40 39 38 37 38 39 40 41 43 43 41 36 30 21 12 4 -1 -3 -3 -2 -2 -2 -2 -2 -2 -3 -3 -3 -2 -2 -2 -2 -2 -0 1 3 6 6 6 6 4 2 -1 -4 -4 -4 -5 -6 -8 -9 -9 -8 -6 -5 -4 -4 -5 -5 -4 -3 -3 -2 -3 -5 -7 -9 -11 -10 -9 -7 -5 -2 2 5 7 8 7 4 2 1 1 -0 0 1 2 3 2 2 2 4 6 7 7 6 4 2 1 1 1 3 2 0 -2 -4 -6 -9 -10 -12 -14 -17 -19 -20 -22 -24 -26 -28 -30 -32 -33 -33 -32 -31 -31 -32 -30 -24 -16 -17 -18 -19 -19 -21 -24 -27 -28 -26 -21 -14 -5 1 3 4 5 5 5 5 5 4 3 3 2 2 1 1 0 0 0 -0 -1 -2 -3 -4 -4 -4 -4 -5 -6 -8 -9 -10 -10 -10 -9 -8 -7 -6 -5 -5 -6 -7 -7 -7 -7 -6 -4 -3 -2 -1 -1 -0 -0 0 1 1 1 1 0 -1 -1 -0 2 5 7 9 10 10 7 4 0 -2 -0 3 4 3 1 -2 -2 -1 0 1 1 1 1 2 3 4 4 5 5 6 7 7 7 7 7 7 7 6 6 5 5 5 5 5 5 5 5 6 6 6 7 7 7 7 6 6 7 7 8 8 9 10 11 12 13 14 15 15 16 17 18 19 20 21 22 23 23 24 25 25 26 26 26 26 26 26 26 26 26 27 27 27 28 28 29 30 30 31 31 31 32 32 32 32 32 32 31 31 30 30 30 30 30 31 32 32 32 32 32 32 32 32 32 31 30 29 29 29 30 30 31 30 30 31 31 32 32 32 31 29 27 26 25 25 25 26 26 26 26 25 25 24 24 24 24 24 23 22 21 19 18 16 15 15 15 15 16 16 16 17 17 17 18 19 20 20 20 19 18 17 16 16 16 18 19 20 21 21 21 21 21 22 23 25 27 28 30 31 31 32 34 35 37 38 39 40 41 42 43 44 44 43 41 39 38 37 36 36 36 37 39 40 41 40 38 33 25 15 7 1 -2 -3 -2 -2 -3 -3 -3 -3 -3 -3 -4 -4 -5 -5 -5 -1 0 3 5 5 5 4 2 -1 -4 -6 -6 -6 -6 -8 -10 -11 -10 -8 -7 -6 -6 -6 -6 -6 -5 -4 -3 -1 -1 -3 -6 -7 -8 -7 -5 -2 1 3 5 3 2 1 2 1 1 1 1 3 4 4 3 1 0 2 5 6 7 7 7 6 4 2 2 2 2 3 2 0 -2 -4 -7 -9 -11 -12 -14 -16 -19 -20 -22 -23 -26 -28 -30 -32 -34 -35 -35 -33 -31 -30 -27 -22 -16 -17 -19 -19 -20 -23 -28 -32 -30 -27 -26 -25 -18 -6 2 5 6 6 7 6 6 5 5 4 3 3 2 1 1 0 0 -0 -1 -2 -2 -3 -3 -3 -4 -5 -6 -7 -9 -9 -10 -9 -9 -7 -6 -5 -4 -4 -5 -5 -6 -6 -6 -5 -4 -3 -2 -1 -0 0 1 1 2 2 3 2 1 0 -1 0 2 5 8 9 10 8 5 1 -1 -1 1 3 3 1 -1 -1 -1 1 2 2 1 1 2 3 4 4 4 5 5 6 7 7 8 8 8 8 7 7 7 7 6 6 6 6 6 6 6 6 6 6 6 7 7 7 7 7 8 8 8 9 10 10 11 12 13 14 15 16 16 16 17 18 19 20 21 22 23 23 24 25 25 25 25 25 25 26 26 26 27 27 27 28 28 29 29 30 30 31 31 32 32 33 32 32 32 31 31 31 30 30 30 30 30 31 31 31 31 31 32 33 33 33 33 32 31 30 29 30 30 31 31 31 31 32 33 33 33 32 31 30 28 27 26 26 26 26 27 27 26 26 25 24 25 25 25 25 25 24 22 20 18 17 16 16 15 15 16 16 17 17 17 18 18 19 20 21 21 20 19 18 16 16 16 17 18 20 20 21 21 20 20 20 21 23 25 27 29 30 31 31 32 34 36 38 39 40 41 42 43 44 44 44 42 41 39 37 36 35 34 34 35 36 37 38 39 39 36 30 22 14 6 4 2 -1 -5 -7 -7 -7 -7 -7 -7 -8 -9 -10 -10 -2 -1 1 3 3 3 2 0 -2 -6 -8 -8 -8 -8 -10 -12 -12 -11 -9 -8 -7 -8 -7 -6 -6 -5 -4 -2 0 1 -1 -4 -5 -5 -4 -2 1 4 4 1 -3 -5 -4 -1 1 2 3 4 6 6 3 0 -1 -1 3 6 7 6 6 6 6 5 4 3 2 2 1 1 -1 -3 -4 -6 -8 -10 -12 -14 -17 -19 -21 -23 -24 -27 -29 -31 -33 -34 -36 -35 -31 -25 -22 -19 -17 -16 -18 -20 -21 -22 -27 -33 -34 -28 -24 -23 -25 -23 -13 -1 6 7 7 8 8 7 7 6 5 5 4 3 2 2 1 1 0 -0 -1 -1 -2 -2 -3 -4 -5 -6 -7 -8 -8 -8 -8 -8 -7 -5 -3 -3 -3 -3 -4 -4 -5 -5 -5 -4 -3 -2 -1 -1 0 1 2 3 4 4 4 3 1 0 1 3 5 7 9 8 5 2 -1 -1 1 3 3 2 0 0 1 3 3 3 2 1 1 3 3 4 4 4 4 5 6 6 7 7 8 8 8 8 8 8 8 8 8 8 8 7 7 7 7 7 7 7 7 7 8 8 8 8 9 9 10 10 11 12 13 15 15 16 16 16 16 16 17 18 19 20 21 22 22 23 23 23 23 23 24 24 25 26 27 27 28 28 29 30 30 31 31 31 31 32 32 32 32 32 32 32 32 31 31 30 30 30 30 30 30 30 31 31 31 32 33 34 34 34 33 32 31 30 31 31 31 31 31 33 34 34 34 33 33 32 31 29 28 27 26 27 27 27 27 27 26 25 25 25 26 26 26 26 25 23 21 19 18 17 16 16 16 16 16 17 17 18 18 18 19 20 21 21 21 20 19 17 16 16 17 18 19 20 20 20 20 19 19 20 22 24 26 28 30 31 31 32 33 35 37 38 39 41 42 43 44 45 44 43 42 40 38 37 35 34 33 33 33 34 35 37 38 38 37 34 30 25 20 15 10 7 7 9 -4 -12 -12 -13 -14 -15 -15 -15 -3 -2 -1 0 1 2 2 0 -3 -7 -10 -10 -10 -10 -12 -13 -14 -13 -11 -9 -8 -9 -8 -6 -4 -3 -3 -2 0 0 -1 -3 -5 -4 -3 -2 0 2 1 -3 -7 -9 -8 -5 -1 2 4 6 7 4 1 -1 -1 0 4 6 6 6 6 6 6 5 5 4 3 2 0 -1 -1 -2 -4 -6 -8 -11 -13 -16 -19 -21 -23 -24 -26 -28 -29 -31 -32 -33 -33 -31 -28 -26 -24 -23 -21 -20 -25 -28 -28 -28 -32 -36 -36 -31 -25 -22 -23 -24 -16 -4 5 8 8 8 8 8 8 7 7 6 5 4 4 3 3 2 2 1 0 -0 -1 -1 -2 -3 -4 -5 -6 -7 -7 -7 -7 -7 -6 -5 -3 -2 -2 -2 -2 -3 -3 -3 -4 -4 -3 -2 -2 -1 -0 1 2 3 5 5 5 4 3 1 1 3 5 7 7 6 3 0 -1 1 3 3 2 1 1 3 5 5 5 3 2 1 2 3 3 3 2 3 4 5 5 6 6 7 7 7 7 7 7 8 8 9 9 9 9 9 9 9 8 8 8 8 8 8 9 9 9 10 10 10 11 12 13 14 15 15 16 16 16 16 16 17 17 17 18 19 20 20 21 21 22 22 22 22 23 24 24 25 26 27 28 29 30 31 32 32 32 32 32 32 32 32 32 33 33 33 33 32 32 31 31 30 30 30 30 30 31 31 32 33 34 35 35 35 34 33 32 32 31 31 31 31 33 34 35 35 35 34 34 33 32 31 29 28 27 27 27 27 27 27 27 26 26 26 26 27 27 27 26 25 22 20 19 18 17 17 16 16 16 16 17 18 18 18 19 20 21 22 22 21 20 18 17 17 17 17 18 19 20 20 19 18 18 19 20 23 25 28 30 31 32 32 33 34 36 37 39 40 41 42 44 45 45 44 43 42 40 38 36 34 33 33 33 33 33 34 35 35 35 34 33 31 29 28 27 26 26 27 13 2 -5 -9 -11 -13 -14 -15 -5 -4 -2 -1 0 1 2 1 -3 -8 -11 -12 -12 -12 -13 -15 -15 -14 -12 -10 -9 -9 -8 -6 -4 -3 -4 -3 -2 -1 -2 -5 -6 -5 -4 -2 -1 -0 -2 -6 -9 -11 -10 -8 -3 1 4 5 3 1 -1 -1 -0 2 5 4 4 4 5 5 5 5 6 6 4 2 0 -1 -1 -1 -2 -5 -8 -11 -15 -19 -22 -22 -24 -25 -26 -27 -28 -28 -29 -30 -30 -28 -28 -31 -32 -31 -29 -28 -33 -36 -36 -35 -35 -36 -36 -34 -30 -25 -23 -24 -19 -10 -1 6 9 8 9 9 9 8 8 7 6 6 5 5 5 4 3 2 2 1 1 0 -1 -2 -4 -5 -5 -5 -5 -6 -6 -6 -6 -5 -3 -2 -1 -1 -1 -1 -1 -2 -3 -3 -3 -2 -2 -2 -1 -0 1 3 5 6 6 5 4 2 2 3 4 5 5 3 1 1 1 3 4 2 1 1 3 5 7 6 4 2 1 1 2 2 2 1 1 2 3 4 4 4 5 6 6 6 6 6 6 7 8 8 9 10 10 10 10 10 10 10 9 9 9 10 10 10 10 11 11 11 12 13 14 15 16 16 17 17 17 17 17 17 17 17 17 18 19 19 20 20 21 21 21 22 23 23 24 25 26 27 28 30 31 32 32 32 32 32 32 32 32 32 33 33 33 33 33 33 32 32 31 31 31 30 30 31 31 32 33 34 35 35 36 35 34 33 33 33 32 32 32 33 34 35 36 36 36 36 35 34 33 32 31 29 28 28 28 28 28 28 27 27 27 27 27 28 28 28 28 26 24 22 20 19 18 17 17 16 16 16 17 17 18 18 18 19 20 21 22 22 21 20 18 18 17 18 18 19 20 20 19 18 17 18 19 21 23 26 29 31 32 33 33 34 35 37 38 39 40 41 43 44 44 44 44 42 41 39 38 36 34 34 33 33 33 33 33 32 32 30 29 27 26 25 25 26 27 28 25 16 2 -4 -7 -8 -9 -9 -7 -5 -3 -1 1 2 2 -0 -5 -9 -13 -15 -14 -14 -14 -16 -16 -15 -13 -12 -10 -8 -7 -5 -4 -5 -5 -6 -4 -3 -4 -6 -8 -6 -4 -2 -1 -2 -4 -7 -9 -10 -9 -7 -3 0 2 2 0 -1 -0 -0 1 3 4 3 2 3 4 4 5 5 6 6 4 2 0 -1 -1 -1 -1 -3 -7 -11 -16 -20 -23 -23 -23 -23 -23 -24 -24 -25 -25 -26 -27 -29 -31 -34 -35 -36 -35 -35 -36 -38 -38 -38 -36 -33 -34 -34 -33 -29 -24 -23 -21 -17 -10 -0 8 8 9 9 9 9 8 8 7 7 7 7 6 6 5 4 3 3 2 1 0 -1 -2 -3 -4 -4 -4 -4 -4 -5 -5 -4 -3 -1 -0 0 0 0 -0 -1 -2 -2 -2 -2 -2 -2 -1 -1 0 2 4 5 5 5 4 3 2 3 3 3 3 2 2 3 4 5 3 0 0 2 5 7 6 4 2 0 -0 1 2 1 -0 -0 1 2 3 3 3 3 4 5 5 5 5 5 5 6 7 8 8 9 9 10 10 10 11 11 11 11 11 11 11 12 12 12 12 12 13 14 15 16 17 17 18 18 18 19 18 18 18 18 18 18 18 19 20 20 20 21 21 22 22 23 24 25 25 27 28 29 31 32 32 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 32 32 31 31 31 31 31 32 33 34 35 35 35 35 34 34 33 33 33 33 34 35 36 36 36 36 36 36 36 35 35 33 32 31 30 29 28 28 28 28 28 28 28 28 28 29 29 29 29 27 25 23 21 20 19 18 17 16 16 16 16 17 17 17 17 18 19 20 22 22 22 21 20 19 19 19 19 20 20 20 19 18 17 17 18 19 22 24 27 30 31 32 33 34 35 36 37 37 38 39 41 42 43 44 44 43 42 40 39 37 35 34 34 34 34 33 32 31 29 28 26 24 22 21 20 20 21 23 21 15 4 -2 -5 -7 -7 -7 -8 -5 -3 -0 2 2 1 -3 -7 -11 -14 -16 -16 -15 -16 -17 -18 -16 -15 -12 -10 -8 -6 -5 -5 -6 -7 -7 -7 -6 -6 -7 -8 -6 -4 -2 -2 -3 -5 -7 -9 -9 -7 -5 -3 -0 -0 -1 -1 -0 0 1 2 3 2 1 1 1 2 2 4 5 5 4 3 1 0 -1 -1 -0 -0 -3 -7 -11 -16 -20 -23 -22 -20 -20 -20 -20 -21 -22 -23 -25 -27 -30 -33 -35 -37 -38 -38 -37 -37 -37 -37 -37 -35 -33 -33 -33 -32 -29 -25 -23 -23 -22 -18 -9 5 8 9 9 10 10 9 9 8 8 7 7 7 7 7 6 5 4 4 3 2 1 -1 -2 -2 -2 -2 -2 -2 -3 -3 -3 -2 -1 0 1 1 1 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 2 3 4 4 3 3 2 2 2 2 2 3 4 6 6 4 0 -1 1 3 5 6 3 0 -1 -1 -0 1 1 -1 -1 -1 1 2 2 2 2 3 4 4 4 4 4 4 5 5 6 7 7 8 8 9 10 10 11 11 11 11 12 12 12 12 13 13 13 13 14 15 16 17 18 18 19 19 20 20 19 19 19 18 18 18 19 19 20 20 21 21 22 22 23 23 24 25 26 27 28 29 31 32 32 33 33 34 34 33 33 33 33 33 33 33 34 34 34 33 33 32 32 31 31 31 31 31 32 33 33 34 34 34 34 34 33 34 34 35 36 37 37 37 36 37 37 37 36 36 35 35 33 32 31 30 29 28 28 28 28 28 29 29 29 30 30 30 30 28 27 25 23 21 20 19 18 17 16 16 17 17 17 17 17 17 18 19 21 22 22 22 21 21 21 20 21 21 21 20 19 18 17 17 17 18 20 23 26 28 30 32 33 33 34 35 35 36 36 37 38 40 41 42 42 42 41 40 39 37 36 35 34 34 35 34 33 32 30 28 26 25 23 21 19 18 17 18 19 19 9 3 -1 -4 -5 -4 -8 -6 -3 -1 1 2 -1 -5 -9 -12 -14 -16 -17 -18 -18 -18 -18 -17 -15 -13 -10 -8 -5 -5 -5 -7 -8 -8 -8 -8 -8 -8 -9 -6 -4 -2 -2 -3 -5 -6 -8 -8 -6 -4 -3 -3 -3 -2 -1 -0 -0 0 1 1 0 -0 -1 -2 -2 -1 1 2 2 1 0 0 0 1 1 0 -1 -3 -6 -10 -15 -19 -20 -18 -16 -17 -18 -19 -21 -23 -25 -27 -29 -31 -33 -36 -38 -39 -39 -38 -37 -37 -37 -37 -35 -33 -31 -30 -30 -30 -28 -24 -24 -26 -25 -17 -3 5 8 9 10 10 10 9 9 8 8 7 7 7 7 7 6 6 5 5 4 3 1 0 -0 -0 0 0 -0 -1 -1 -2 -1 -0 1 2 2 2 1 0 -0 -0 -0 -1 -1 -1 -1 -1 -1 -1 0 1 2 2 2 1 1 0 0 1 3 5 6 6 4 1 -1 0 3 4 4 2 -1 -3 -3 -1 1 1 -0 -1 -1 0 2 2 2 2 2 3 4 4 4 4 4 4 5 6 6 6 7 7 8 8 9 10 10 10 10 11 11 11 12 12 13 13 13 13 14 15 16 17 18 19 19 20 20 20 20 19 19 19 19 19 19 20 20 21 21 22 22 23 24 24 25 26 27 28 29 30 31 32 33 33 34 34 34 34 34 33 33 33 34 34 34 34 34 34 33 33 32 31 30 30 30 30 31 31 32 32 33 33 33 33 33 33 34 35 36 37 37 36 36 36 36 36 36 36 36 35 35 33 32 31 30 29 28 28 29 29 30 30 31 31 31 31 31 29 28 26 24 23 21 20 18 17 16 17 17 17 17 17 17 17 18 19 20 21 22 23 23 23 22 22 22 23 23 22 21 19 18 17 17 17 19 21 24 27 29 31 32 32 33 33 34 34 35 35 36 37 39 40 40 40 39 38 37 36 35 34 33 33 34 34 34 33 32 31 29 28 27 26 24 22 21 20 21 21 23 19 12 6 4 4 -7 -5 -3 -2 -0 -0 -4 -7 -9 -12 -14 -16 -18 -19 -19 -19 -18 -17 -16 -13 -11 -8 -6 -5 -5 -7 -8 -9 -9 -10 -9 -9 -9 -7 -4 -3 -2 -3 -4 -6 -8 -8 -5 -3 -5 -6 -5 -3 -2 -2 -1 -0 -0 -1 -2 -3 -5 -7 -8 -7 -4 -2 -1 -0 1 2 3 2 1 -0 -2 -4 -6 -9 -13 -16 -17 -15 -15 -17 -19 -21 -23 -26 -28 -29 -30 -31 -33 -35 -37 -39 -39 -39 -38 -37 -36 -34 -32 -30 -29 -28 -28 -29 -30 -27 -23 -23 -24 -24 -18 -5 5 9 10 10 10 10 9 8 7 7 6 6 6 6 6 7 7 6 5 4 3 2 2 2 2 2 2 1 1 0 0 1 2 3 3 2 1 1 1 1 0 -0 -0 -0 -1 -2 -2 -1 -1 -1 -0 0 0 -0 -1 -1 -0 2 4 6 6 4 1 -1 -0 3 5 4 2 -1 -3 -3 -1 1 2 1 -1 -1 -0 1 2 2 2 2 3 4 4 4 4 4 4 5 6 6 7 7 7 7 7 8 9 9 9 9 9 10 10 10 11 11 12 12 12 13 13 14 15 16 17 18 18 19 19 19 19 19 19 19 19 20 20 21 21 22 22 23 23 24 25 26 27 28 29 29 30 31 31 32 33 34 34 35 34 34 34 34 33 34 34 34 34 34 34 34 33 33 32 31 29 29 28 28 29 30 30 31 32 32 32 33 33 32 33 34 35 36 36 36 36 36 36 37 37 37 36 36 35 34 33 32 31 29 29 29 29 29 30 31 32 32 32 32 31 30 29 27 25 24 23 21 19 18 18 18 18 18 18 18 17 18 18 19 19 20 22 23 24 24 24 24 24 24 24 23 22 21 19 18 17 17 18 20 22 25 27 29 30 31 31 32 32 32 33 33 34 35 36 37 38 37 36 36 35 35 34 33 32 31 31 32 33 34 34 33 32 32 32 31 30 29 28 27 27 27 28 27 25 22 18 15 -6 -5 -4 -3 -2 -2 -5 -7 -9 -11 -13 -16 -17 -19 -20 -20 -18 -17 -16 -14 -13 -10 -8 -6 -6 -7 -8 -9 -10 -11 -10 -9 -8 -7 -5 -3 -2 -2 -3 -6 -7 -6 -4 -4 -7 -7 -5 -2 -1 -1 -2 -3 -5 -6 -6 -8 -10 -13 -13 -12 -9 -6 -3 -1 1 3 4 3 1 -1 -3 -5 -7 -10 -12 -14 -15 -14 -15 -17 -20 -22 -24 -27 -28 -30 -31 -32 -33 -34 -36 -38 -39 -39 -38 -37 -34 -31 -28 -27 -27 -26 -25 -25 -28 -26 -22 -21 -24 -27 -27 -19 -7 3 9 9 9 9 8 7 6 5 4 4 4 5 6 7 7 7 6 5 4 4 3 4 4 4 4 4 3 2 2 3 3 3 3 3 2 2 2 1 1 0 0 0 -1 -2 -2 -2 -2 -2 -2 -1 -1 -1 -2 -1 0 3 6 6 5 2 -1 -1 2 5 5 3 0 -2 -2 0 2 3 2 0 -1 -0 0 1 2 2 2 3 4 5 5 5 4 4 5 6 7 7 7 7 7 7 8 8 9 9 9 9 9 9 9 10 10 10 11 11 11 12 13 14 14 14 15 15 16 16 17 17 17 17 18 19 19 20 21 21 22 23 23 24 24 25 26 27 28 29 30 31 31 31 32 33 34 34 35 35 35 35 34 34 33 34 34 34 34 34 34 34 33 32 31 30 29 28 28 28 29 30 30 31 31 31 32 32 32 32 32 33 34 35 36 36 36 37 37 37 37 37 37 37 36 35 34 33 31 30 29 29 29 30 31 32 32 33 33 33 32 31 29 28 26 25 24 22 21 20 19 20 20 19 19 19 19 19 19 20 20 21 22 23 25 25 26 25 25 25 25 25 24 22 20 19 17 17 17 18 20 23 26 28 29 30 30 30 31 31 31 32 33 33 34 35 35 35 34 34 33 33 32 32 30 29 29 29 30 31 32 32 32 33 33 34 34 34 33 32 32 31 31 30 29 27 25 23 -6 -5 -4 -3 -3 -4 -6 -8 -10 -12 -13 -15 -17 -18 -19 -20 -19 -17 -16 -15 -15 -14 -11 -8 -7 -7 -7 -9 -11 -11 -11 -10 -8 -6 -5 -4 -4 -4 -4 -6 -7 -6 -5 -6 -8 -7 -3 -1 -1 -5 -8 -10 -10 -10 -11 -13 -15 -16 -16 -13 -11 -9 -6 -3 -1 0 2 2 1 -1 -4 -7 -9 -11 -11 -11 -12 -12 -14 -17 -19 -22 -24 -26 -28 -29 -31 -32 -33 -34 -35 -36 -37 -38 -38 -37 -34 -31 -26 -24 -23 -21 -19 -20 -25 -27 -24 -19 -17 -19 -24 -26 -20 -9 2 7 7 7 6 5 4 3 2 2 2 3 4 6 7 7 7 6 5 4 4 5 5 5 6 5 5 4 4 4 4 4 3 3 3 4 3 2 1 1 1 0 -1 -2 -2 -2 -3 -3 -2 -2 -2 -2 -2 -1 1 3 5 5 3 0 -1 1 4 5 3 1 -0 -0 2 4 4 4 3 1 1 1 1 1 2 3 4 5 6 6 6 4 4 4 6 7 8 8 8 8 8 8 8 9 9 9 9 8 9 9 9 10 10 10 11 11 11 12 13 13 13 13 13 13 13 14 14 14 15 16 17 18 19 20 21 22 23 23 24 24 25 26 27 28 29 30 30 31 31 32 32 33 34 35 36 36 36 35 34 34 34 34 34 34 35 35 34 34 33 32 31 30 29 28 29 29 30 31 31 31 31 31 32 31 31 31 31 33 34 35 36 36 37 37 37 37 37 37 37 37 37 36 35 33 32 31 30 30 30 31 31 32 33 33 33 33 32 31 29 28 27 26 25 24 23 22 22 22 22 21 20 20 20 20 21 21 22 22 22 23 25 26 27 26 26 25 25 25 25 23 22 20 18 17 17 18 20 22 24 26 28 28 29 29 30 30 30 31 31 32 32 33 34 34 33 33 32 32 32 31 30 29 28 28 28 28 29 30 30 31 31 32 33 34 34 34 33 32 31 30 28 27 25 24 -6 -5 -4 -4 -4 -5 -8 -10 -11 -13 -14 -15 -16 -18 -19 -21 -21 -19 -17 -18 -19 -19 -17 -12 -9 -8 -8 -10 -11 -12 -11 -10 -7 -6 -5 -6 -6 -6 -5 -7 -7 -7 -7 -8 -8 -6 -4 -4 -6 -11 -14 -15 -14 -14 -15 -16 -17 -16 -15 -14 -13 -11 -8 -6 -5 -3 -1 -0 -0 -2 -4 -7 -10 -10 -9 -8 -8 -10 -12 -15 -18 -20 -22 -24 -26 -28 -30 -31 -32 -33 -35 -36 -36 -37 -37 -37 -35 -32 -27 -22 -18 -13 -12 -15 -22 -26 -23 -15 -9 -11 -17 -25 -26 -20 -10 -1 3 4 3 2 1 0 -0 -0 0 1 3 4 5 6 6 5 5 5 5 5 6 6 7 7 7 6 6 6 5 5 4 4 5 5 4 3 2 1 1 -0 -1 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 -0 1 3 4 2 1 -0 1 2 4 3 1 0 1 3 5 5 5 4 3 3 2 2 2 2 3 5 6 7 7 7 5 4 4 5 7 8 8 8 8 8 8 8 9 9 9 9 9 9 9 10 10 11 11 11 11 12 12 12 13 13 12 12 12 12 12 12 13 13 14 15 16 18 19 20 22 23 23 24 24 25 26 26 27 28 29 29 30 30 31 31 32 33 34 35 36 37 36 35 35 34 34 34 34 34 34 35 34 34 33 32 31 30 30 30 31 32 32 32 31 30 30 31 31 30 30 30 31 32 34 35 36 36 37 37 37 37 37 37 37 38 37 37 36 34 33 32 32 31 31 31 31 32 33 33 34 33 33 31 29 28 27 26 25 25 24 24 25 25 24 23 22 21 21 21 22 23 23 23 23 23 24 25 27 27 27 26 26 25 25 24 23 21 19 17 17 18 20 22 24 26 27 28 28 29 29 30 30 30 30 30 31 32 33 34 34 33 33 32 32 32 31 30 29 28 27 27 28 29 29 30 29 29 30 31 32 32 32 31 30 29 28 26 25 23 -6 -4 -4 -4 -5 -7 -9 -11 -12 -13 -15 -16 -17 -19 -21 -22 -23 -23 -22 -21 -21 -22 -22 -19 -16 -13 -11 -12 -13 -12 -11 -10 -8 -7 -6 -6 -6 -6 -6 -7 -8 -8 -9 -9 -8 -6 -6 -8 -12 -16 -17 -17 -17 -16 -16 -17 -17 -17 -16 -16 -15 -13 -11 -9 -7 -6 -4 -2 -1 -2 -5 -7 -8 -8 -7 -5 -6 -8 -11 -14 -17 -19 -21 -23 -24 -26 -28 -29 -31 -32 -34 -35 -36 -36 -36 -37 -36 -34 -30 -23 -14 -7 -5 -9 -15 -20 -19 -12 -5 -5 -9 -16 -23 -26 -23 -14 -5 -1 -1 -2 -2 -2 -2 -2 -1 0 1 3 3 4 4 5 5 5 5 5 6 7 7 8 8 8 8 7 6 6 6 6 7 6 5 4 2 1 0 -1 -1 -2 -2 -2 -2 -1 -1 -1 -1 -1 -1 -0 1 1 1 -0 -0 1 2 3 2 0 -0 1 3 5 6 6 5 5 5 4 4 3 3 3 4 6 8 8 8 7 5 4 5 7 9 9 8 8 8 8 8 9 9 9 9 9 9 9 10 11 11 12 12 12 12 13 13 13 13 13 12 12 12 12 12 12 12 13 14 15 17 18 20 21 22 23 24 24 25 25 26 26 27 28 28 29 29 30 30 31 32 33 34 35 36 36 36 35 35 34 34 34 34 34 35 35 34 34 33 32 32 31 31 32 33 33 33 32 31 30 30 30 30 30 29 30 31 32 33 34 35 36 36 36 36 36 36 36 37 37 37 37 37 36 35 34 33 32 32 32 32 32 33 33 34 33 32 31 29 28 27 26 26 26 26 27 27 27 27 26 24 23 22 22 23 24 24 24 24 24 24 24 26 27 27 27 27 26 25 25 24 22 20 19 18 19 20 23 25 26 27 27 28 29 29 30 30 30 29 29 30 31 33 34 35 35 34 33 33 33 32 32 31 29 28 27 27 28 29 30 30 30 29 30 30 31 32 31 31 30 29 28 26 24 -6 -4 -4 -6 -8 -9 -10 -10 -11 -12 -14 -16 -18 -20 -22 -23 -23 -24 -24 -23 -22 -23 -23 -22 -19 -16 -14 -13 -13 -13 -12 -10 -9 -8 -7 -6 -6 -6 -6 -7 -9 -10 -10 -9 -6 -5 -8 -12 -17 -18 -18 -18 -17 -17 -16 -17 -18 -19 -19 -19 -18 -16 -14 -12 -10 -8 -5 -3 -2 -3 -5 -6 -4 -4 -4 -4 -5 -7 -10 -13 -15 -17 -19 -21 -23 -24 -25 -27 -29 -32 -34 -35 -35 -35 -36 -36 -36 -35 -32 -26 -16 -8 -4 -5 -7 -12 -14 -11 -7 -6 -6 -9 -15 -23 -28 -26 -17 -10 -6 -5 -5 -4 -4 -3 -2 -1 0 1 2 2 3 4 4 4 5 5 6 7 8 9 9 10 9 9 8 7 7 8 8 8 6 5 3 1 -1 -1 -2 -2 -2 -2 -1 -0 0 0 0 -0 -1 -1 -1 -1 -2 -1 -0 1 2 1 -1 -1 0 2 4 5 5 5 5 6 6 6 5 4 4 4 6 8 9 9 8 6 4 5 7 9 9 9 8 7 8 8 8 9 9 9 9 9 10 10 11 11 12 13 13 13 14 14 14 14 14 13 13 12 12 12 12 13 13 14 15 16 17 19 21 22 23 24 25 25 25 25 26 26 27 27 27 28 28 29 29 30 31 32 34 35 36 36 35 35 34 34 34 34 35 35 35 35 35 34 33 33 33 32 33 33 33 33 32 31 30 30 30 30 29 29 29 30 30 31 32 34 35 36 36 36 35 35 35 35 36 36 37 38 38 37 36 35 34 33 33 33 32 32 33 33 33 33 32 31 29 28 27 27 27 27 28 28 29 29 29 28 26 25 23 23 24 25 25 25 25 25 24 24 24 26 27 28 28 27 26 25 24 23 21 20 20 20 22 24 26 27 28 28 28 28 29 30 30 29 29 29 30 32 33 35 36 35 35 34 33 33 33 33 32 31 30 28 28 28 29 30 31 32 31 31 31 32 33 33 33 32 31 30 29 27 -7 -6 -6 -8 -9 -9 -10 -10 -11 -12 -13 -15 -17 -20 -21 -23 -23 -25 -25 -23 -22 -22 -22 -22 -21 -19 -16 -15 -14 -13 -12 -11 -9 -8 -7 -6 -6 -6 -7 -9 -10 -11 -10 -8 -5 -6 -10 -15 -18 -18 -17 -18 -18 -17 -16 -18 -20 -22 -22 -22 -20 -18 -16 -14 -12 -9 -6 -4 -3 -4 -5 -5 -3 -1 -0 -1 -3 -6 -9 -11 -14 -16 -18 -20 -21 -23 -24 -26 -29 -31 -33 -34 -34 -34 -34 -34 -33 -32 -32 -31 -25 -15 -8 -7 -8 -9 -10 -12 -14 -17 -16 -13 -12 -16 -22 -27 -27 -21 -15 -9 -7 -6 -5 -4 -3 -1 -1 -0 0 1 2 3 3 4 4 5 6 7 9 10 10 11 11 10 9 9 9 10 10 9 7 5 3 0 -1 -2 -2 -2 -2 -1 -0 0 1 0 0 -1 -1 -1 -2 -2 -2 -1 0 0 -0 -2 -2 -1 1 2 3 3 4 4 5 7 7 7 6 5 4 5 7 9 10 9 8 5 5 6 8 10 9 8 7 7 8 8 8 8 9 9 10 10 10 11 11 12 12 13 13 14 14 14 14 14 14 13 13 13 13 13 13 13 14 15 16 17 19 20 22 23 24 25 25 25 25 26 26 26 26 26 27 27 28 28 29 30 31 32 33 34 35 35 34 34 34 34 34 34 35 35 36 36 35 35 34 34 34 34 34 34 33 32 31 31 31 31 30 30 29 29 30 30 30 30 31 32 34 35 36 36 35 35 34 34 34 35 36 37 38 38 37 36 35 34 34 33 33 32 32 32 32 32 31 30 29 28 28 28 28 28 29 30 31 31 31 31 29 27 25 24 25 25 26 26 26 26 25 24 24 25 26 28 29 28 28 26 25 24 23 22 22 22 24 26 28 29 30 29 28 28 28 28 29 29 29 29 30 32 33 35 35 35 35 34 34 33 33 34 33 33 32 30 29 29 29 30 32 33 33 33 33 34 35 35 35 34 33 32 31 29 -10 -9 -8 -9 -9 -9 -9 -10 -11 -12 -13 -15 -16 -18 -20 -21 -22 -23 -24 -24 -23 -22 -22 -22 -21 -20 -18 -16 -15 -13 -12 -11 -10 -8 -7 -6 -6 -7 -8 -10 -11 -11 -10 -7 -6 -8 -13 -17 -19 -17 -17 -18 -18 -18 -17 -19 -21 -22 -22 -21 -20 -18 -17 -15 -13 -10 -6 -5 -4 -5 -5 -2 -0 3 5 3 -1 -4 -7 -9 -11 -13 -16 -18 -20 -22 -23 -25 -27 -29 -31 -33 -33 -33 -32 -30 -29 -29 -30 -31 -26 -19 -14 -13 -13 -12 -14 -18 -24 -30 -33 -29 -20 -12 -10 -18 -27 -30 -25 -17 -11 -10 -8 -6 -4 -2 -1 -1 -0 0 1 2 3 4 5 6 7 8 9 10 11 11 11 11 11 11 11 11 10 10 8 6 3 0 -2 -3 -2 -2 -1 -1 -0 0 0 0 -0 -1 -2 -2 -3 -3 -2 -1 -1 -2 -3 -3 -2 -1 1 2 2 2 3 4 6 7 8 7 6 5 5 7 9 10 10 9 7 5 5 7 9 9 8 7 7 7 7 8 8 8 9 9 10 10 10 11 11 11 12 12 13 13 14 14 14 14 13 13 13 12 13 13 13 14 15 16 17 18 20 21 23 24 24 25 25 25 25 25 26 26 26 26 26 27 27 28 28 29 30 31 32 33 34 34 33 33 33 33 33 34 35 35 36 36 36 36 35 35 35 35 35 34 33 33 32 32 32 31 31 30 30 30 30 30 30 30 31 32 33 34 35 36 36 35 34 34 34 34 35 37 38 38 38 37 36 35 34 33 33 33 32 32 32 31 30 30 29 29 29 29 29 29 30 31 32 33 33 33 31 29 27 26 26 26 27 27 27 27 26 25 25 25 26 28 29 30 29 28 27 25 24 23 23 24 25 27 30 31 32 31 29 28 28 27 27 28 28 29 30 31 33 34 34 34 34 34 33 33 33 33 33 33 33 32 30 30 29 30 31 33 33 34 34 34 34 35 35 34 33 32 31 30 -12 -11 -10 -9 -8 -7 -7 -9 -10 -12 -14 -15 -16 -17 -18 -19 -20 -22 -24 -24 -23 -23 -22 -22 -22 -21 -19 -17 -15 -14 -13 -11 -10 -9 -8 -7 -7 -8 -9 -11 -11 -10 -9 -8 -8 -11 -16 -18 -19 -18 -19 -20 -20 -19 -18 -18 -19 -20 -20 -20 -19 -17 -15 -14 -12 -10 -7 -6 -7 -7 -5 -0 4 8 9 6 2 -1 -4 -6 -9 -11 -14 -17 -19 -21 -23 -24 -25 -28 -30 -31 -32 -32 -31 -29 -28 -28 -29 -30 -28 -25 -24 -25 -24 -19 -21 -27 -32 -32 -33 -37 -34 -25 -16 -16 -27 -33 -32 -26 -21 -16 -12 -9 -6 -4 -2 -1 -1 0 1 2 3 5 6 7 8 9 10 11 12 12 13 13 13 13 12 12 11 11 10 8 4 0 -2 -2 -2 -2 -1 -1 -0 -0 -0 -1 -1 -2 -3 -3 -3 -3 -3 -3 -4 -4 -5 -4 -3 -1 -0 1 1 2 3 4 6 7 8 7 6 6 7 9 10 11 10 9 6 5 6 8 9 8 7 6 7 7 7 8 8 8 9 9 10 10 10 11 11 11 11 12 12 13 13 13 13 12 12 12 12 12 12 12 13 14 15 16 18 19 21 22 23 23 24 24 24 24 24 24 25 25 25 25 25 26 27 27 28 29 30 31 32 32 33 33 33 33 33 33 33 33 34 35 35 36 36 36 36 36 36 36 36 35 35 34 34 34 33 32 32 31 31 30 30 30 30 31 31 31 32 33 34 35 36 36 35 34 34 34 35 36 37 38 38 37 37 36 35 34 33 32 32 32 31 30 30 29 29 30 30 31 31 30 31 32 33 34 34 34 33 31 29 28 27 27 28 28 29 29 28 28 27 26 27 28 30 31 31 30 29 28 26 25 25 25 27 29 31 33 34 33 31 29 28 27 26 26 27 27 29 30 31 33 33 34 33 33 32 32 32 33 33 33 33 32 32 31 30 30 31 32 33 34 34 34 34 34 34 33 32 31 30 30 -14 -12 -10 -8 -6 -5 -6 -8 -10 -11 -13 -15 -16 -16 -17 -17 -18 -21 -24 -24 -24 -24 -23 -24 -24 -22 -20 -18 -16 -15 -13 -12 -11 -11 -10 -10 -10 -10 -10 -11 -11 -11 -10 -10 -10 -14 -17 -19 -19 -20 -21 -22 -21 -20 -18 -18 -20 -21 -21 -20 -18 -16 -16 -15 -13 -11 -9 -8 -9 -10 -8 -2 7 12 11 7 4 1 -1 -4 -6 -8 -11 -14 -17 -19 -21 -22 -23 -26 -28 -30 -30 -30 -30 -30 -29 -29 -29 -29 -30 -30 -30 -31 -31 -29 -30 -32 -35 -36 -38 -41 -41 -37 -28 -20 -22 -26 -27 -26 -29 -27 -20 -13 -9 -7 -5 -2 -1 0 1 2 4 6 8 9 9 10 11 11 12 13 14 15 15 15 13 12 12 12 11 9 5 1 -1 -1 -1 -1 -1 -0 -0 -1 -1 -2 -3 -3 -4 -5 -5 -5 -5 -6 -6 -6 -6 -5 -4 -2 -1 -0 1 2 3 4 5 7 7 7 7 7 8 10 11 11 10 8 6 6 7 8 8 7 6 7 7 7 8 8 8 8 9 9 9 10 10 10 10 10 10 11 11 12 12 12 12 11 11 11 11 11 11 12 13 14 15 16 18 19 20 21 22 22 22 23 23 23 23 23 23 24 24 24 25 25 26 27 27 28 29 30 31 31 31 32 32 32 32 32 33 33 33 34 35 35 35 36 36 35 35 36 36 36 36 36 35 35 34 33 33 32 32 31 31 30 31 31 31 31 32 33 34 35 36 36 36 35 34 34 34 35 35 36 37 37 37 36 35 34 33 32 32 31 31 30 30 29 30 30 31 31 31 31 31 32 34 35 35 35 34 33 31 30 29 29 30 30 31 31 31 30 30 29 29 30 31 32 33 33 32 30 29 28 27 27 28 29 32 35 36 36 34 31 29 27 26 25 25 25 26 28 30 31 33 33 33 33 32 32 32 32 33 33 33 33 32 31 31 30 31 32 33 33 34 33 33 33 34 34 33 32 31 30 -15 -13 -10 -8 -6 -5 -6 -7 -9 -10 -12 -13 -15 -16 -16 -16 -18 -21 -24 -25 -25 -25 -25 -25 -25 -23 -21 -19 -17 -16 -15 -14 -14 -14 -14 -14 -13 -12 -12 -12 -12 -13 -13 -13 -13 -16 -18 -19 -20 -22 -24 -23 -22 -20 -19 -20 -22 -23 -22 -21 -19 -19 -18 -17 -16 -14 -12 -12 -13 -12 -9 0 10 13 11 8 5 2 0 -2 -4 -7 -9 -12 -14 -17 -19 -20 -22 -24 -26 -28 -29 -30 -30 -30 -30 -30 -29 -29 -30 -31 -32 -34 -36 -35 -35 -36 -37 -37 -38 -41 -42 -41 -38 -32 -26 -24 -23 -24 -27 -29 -26 -20 -15 -11 -8 -5 -2 1 2 3 5 7 9 10 11 11 11 12 13 14 16 17 17 16 15 14 14 14 12 9 6 3 1 0 -0 -0 -0 -0 -1 -2 -2 -3 -4 -5 -6 -6 -7 -7 -8 -8 -8 -7 -7 -6 -5 -4 -2 -1 0 1 2 4 5 6 7 7 7 8 9 10 11 10 8 7 6 6 8 8 7 7 7 7 8 8 8 8 8 8 8 8 8 8 9 9 9 9 10 10 11 11 11 11 10 10 10 10 10 10 10 11 12 13 15 16 17 18 19 20 20 20 21 21 21 22 22 22 22 23 23 24 24 25 25 26 27 27 28 29 29 30 30 31 31 32 32 32 32 33 33 33 34 34 34 35 35 34 34 35 35 36 36 36 36 36 35 35 34 33 32 32 31 31 31 31 31 32 32 32 33 34 35 36 36 36 35 34 34 34 35 35 36 37 37 36 35 34 33 32 32 31 31 30 30 30 31 31 32 32 32 32 32 33 34 35 36 36 35 34 32 31 31 31 31 32 33 34 34 34 33 32 32 32 33 34 35 35 34 33 31 30 29 28 28 30 33 36 38 39 37 33 30 28 26 25 24 24 24 26 28 31 33 34 34 34 33 33 33 33 33 32 32 32 32 32 31 31 31 31 32 33 34 34 34 34 34 34 35 34 33 32 -14 -12 -11 -9 -7 -6 -6 -7 -8 -9 -11 -12 -14 -15 -17 -18 -19 -21 -23 -25 -25 -25 -25 -26 -25 -23 -22 -20 -19 -18 -17 -17 -16 -17 -17 -16 -15 -14 -14 -14 -14 -15 -16 -17 -17 -19 -20 -21 -22 -25 -27 -25 -23 -22 -21 -21 -22 -23 -23 -23 -21 -21 -21 -19 -18 -17 -16 -16 -16 -13 -7 4 12 13 11 8 5 3 0 -2 -4 -6 -8 -10 -13 -15 -17 -19 -20 -22 -24 -26 -27 -28 -30 -31 -31 -31 -31 -31 -31 -33 -34 -37 -39 -39 -39 -39 -39 -40 -41 -42 -42 -42 -43 -43 -37 -31 -27 -25 -24 -23 -23 -23 -22 -19 -15 -10 -5 -1 3 4 6 8 9 11 11 11 12 13 14 16 18 19 19 18 16 15 15 14 12 9 6 4 3 2 2 1 1 0 -1 -2 -3 -4 -5 -6 -7 -8 -8 -9 -9 -9 -9 -8 -8 -7 -6 -5 -3 -2 -0 1 2 3 4 5 6 7 7 8 9 10 10 9 7 6 6 7 8 8 7 7 8 8 8 8 8 8 8 7 7 7 6 7 7 7 8 8 9 10 10 10 10 9 9 9 9 9 9 10 10 11 12 13 14 15 16 16 16 17 17 18 18 19 19 19 20 20 21 21 22 22 23 23 24 24 25 26 26 27 27 28 29 30 31 31 32 32 32 32 33 33 33 34 34 34 34 33 33 34 35 35 36 37 37 37 36 36 35 34 33 33 32 32 32 32 32 32 32 33 33 34 35 36 37 37 36 35 34 34 34 35 36 36 36 36 35 34 33 33 32 32 31 31 31 32 32 32 33 32 32 32 33 34 35 36 37 36 36 35 33 33 32 32 33 34 35 36 37 37 36 36 35 35 35 36 37 37 36 35 33 32 31 29 29 30 33 36 39 40 38 35 32 29 27 25 24 23 23 24 27 29 32 34 36 36 35 34 34 33 33 32 32 32 32 32 32 31 31 31 32 33 34 34 34 34 34 35 35 36 35 34 -14 -13 -11 -10 -8 -7 -7 -7 -8 -8 -9 -11 -13 -15 -17 -18 -19 -21 -22 -24 -24 -25 -26 -26 -25 -23 -21 -20 -20 -19 -18 -18 -18 -19 -18 -17 -16 -16 -17 -16 -17 -19 -19 -20 -21 -21 -22 -23 -25 -27 -28 -26 -24 -22 -21 -21 -21 -22 -23 -23 -22 -22 -21 -20 -20 -20 -21 -20 -18 -12 -3 8 13 12 10 8 6 3 0 -2 -4 -6 -8 -10 -12 -14 -16 -17 -19 -21 -23 -25 -26 -27 -29 -31 -32 -33 -33 -34 -35 -36 -38 -40 -41 -42 -42 -41 -41 -42 -44 -44 -42 -42 -44 -47 -44 -37 -31 -27 -23 -19 -18 -19 -22 -24 -22 -17 -11 -5 1 5 7 8 9 10 11 11 12 13 15 18 20 21 20 19 18 17 16 13 11 8 7 5 4 4 3 3 2 0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -9 -9 -9 -9 -9 -9 -8 -8 -6 -4 -2 -1 1 2 4 5 5 6 6 7 7 9 9 9 8 7 6 7 7 8 8 8 8 8 8 8 8 7 7 6 6 5 4 4 5 5 6 6 7 8 9 9 9 8 8 8 8 9 9 9 10 10 11 11 12 13 13 13 13 14 14 14 15 15 15 16 17 17 18 18 19 20 20 21 21 22 22 23 23 24 25 26 27 28 29 30 31 32 32 32 32 33 33 33 33 33 33 33 33 33 33 34 35 36 37 37 38 37 37 37 36 35 34 33 33 33 33 33 33 33 33 34 34 35 36 37 37 37 36 35 35 35 36 36 36 36 36 35 35 34 33 33 32 32 32 33 33 33 33 33 33 32 32 33 35 36 37 38 37 36 35 34 34 33 34 35 36 37 38 39 39 39 38 38 37 37 37 38 38 37 36 35 34 32 31 30 31 34 37 39 40 39 36 33 30 28 26 24 23 22 23 25 28 31 34 36 37 37 36 35 34 33 32 32 32 32 32 32 31 31 31 31 32 33 34 34 35 35 35 36 36 36 36 -13 -12 -12 -11 -9 -8 -7 -8 -8 -8 -9 -10 -12 -14 -15 -17 -18 -19 -20 -22 -23 -24 -26 -26 -25 -23 -21 -20 -20 -19 -19 -19 -19 -19 -18 -17 -17 -17 -18 -19 -21 -21 -22 -22 -23 -23 -24 -24 -26 -27 -27 -25 -23 -22 -21 -19 -19 -20 -21 -22 -22 -21 -21 -21 -21 -22 -23 -21 -16 -8 2 9 12 11 9 7 6 3 1 -2 -4 -6 -8 -10 -11 -12 -13 -15 -19 -22 -24 -25 -26 -27 -29 -31 -32 -34 -36 -38 -39 -41 -42 -42 -43 -44 -44 -43 -42 -42 -44 -44 -43 -43 -44 -47 -45 -38 -32 -28 -25 -20 -16 -15 -16 -20 -22 -22 -19 -13 -6 1 6 8 9 10 11 11 13 15 18 21 22 22 21 20 19 18 16 13 10 8 6 5 5 5 4 3 2 1 -1 -2 -3 -4 -4 -5 -6 -7 -8 -8 -9 -9 -9 -10 -9 -9 -8 -7 -5 -3 -1 1 3 4 5 6 6 6 6 7 8 9 9 8 7 7 7 8 8 8 8 8 8 8 7 7 6 5 4 3 3 2 2 3 3 4 5 6 7 7 7 7 7 7 7 8 9 9 9 10 10 10 10 10 11 11 11 11 11 11 12 12 12 13 13 14 15 15 16 17 17 18 18 19 19 19 20 21 22 23 25 26 28 29 30 31 32 32 32 33 33 33 33 34 34 34 33 33 33 34 34 35 36 37 38 38 39 39 38 38 37 36 35 35 35 35 35 34 34 34 35 35 36 37 38 38 38 37 36 36 36 36 36 36 36 35 35 35 34 34 33 33 33 33 34 34 35 34 34 34 33 33 34 35 37 38 38 38 37 36 35 35 35 35 36 37 38 39 39 40 40 40 40 39 38 38 38 38 38 37 37 35 34 32 32 33 35 37 39 39 38 36 34 31 28 27 25 23 22 23 24 27 30 33 35 37 37 37 36 35 34 33 32 32 31 32 32 32 31 31 30 31 32 34 35 35 35 36 36 37 37 37 -11 -11 -11 -11 -10 -9 -8 -8 -8 -9 -9 -9 -10 -12 -13 -14 -15 -17 -18 -20 -22 -24 -25 -25 -24 -22 -20 -19 -19 -19 -18 -19 -19 -19 -18 -17 -17 -18 -19 -21 -23 -23 -23 -22 -23 -24 -24 -24 -25 -25 -25 -24 -23 -22 -20 -18 -18 -18 -20 -21 -21 -20 -21 -22 -22 -21 -20 -16 -10 -3 4 8 10 9 8 7 6 4 2 -0 -3 -5 -7 -9 -10 -11 -12 -15 -19 -23 -25 -26 -26 -27 -29 -31 -32 -35 -38 -41 -43 -44 -44 -44 -44 -45 -46 -45 -42 -41 -43 -44 -44 -44 -45 -47 -44 -38 -32 -29 -26 -23 -20 -16 -12 -11 -13 -18 -21 -20 -15 -8 2 6 8 9 10 11 14 17 20 23 24 23 22 21 20 19 16 13 9 7 5 5 5 5 4 4 2 0 -1 -2 -2 -3 -3 -4 -5 -6 -7 -8 -9 -9 -10 -10 -10 -9 -8 -7 -5 -3 -1 1 3 5 6 6 6 5 5 6 7 8 9 8 8 8 7 8 8 8 8 7 7 7 6 5 4 4 2 1 1 1 1 1 2 2 3 4 5 5 5 6 6 7 7 8 9 9 9 8 8 8 8 8 8 8 8 8 9 9 10 10 11 11 12 12 13 14 14 15 15 16 16 16 16 17 18 19 20 22 24 26 28 29 30 31 32 32 33 33 33 33 34 34 34 34 34 34 35 35 35 35 36 37 38 39 39 40 40 40 39 39 38 38 37 37 37 37 37 37 37 37 37 38 38 39 39 38 38 37 37 37 37 36 36 36 35 35 35 35 34 34 34 34 35 35 36 35 35 35 34 35 35 36 38 39 39 39 38 37 36 36 36 36 37 38 38 39 40 40 40 40 40 40 39 39 39 39 39 38 38 37 36 35 35 35 36 37 38 38 37 36 34 32 30 28 26 24 23 23 24 26 28 31 33 35 36 36 36 35 35 34 33 32 31 31 32 32 32 31 31 31 32 33 34 36 36 36 37 37 38 38 -10 -10 -10 -10 -10 -9 -9 -9 -8 -8 -8 -7 -7 -9 -11 -13 -14 -16 -17 -19 -21 -23 -23 -23 -22 -21 -19 -18 -18 -18 -18 -18 -19 -18 -17 -17 -17 -18 -19 -21 -22 -22 -22 -21 -21 -22 -22 -22 -22 -23 -24 -24 -23 -22 -20 -18 -18 -18 -19 -20 -20 -21 -23 -23 -22 -18 -14 -10 -4 0 5 8 9 8 7 6 7 7 5 2 -1 -3 -5 -7 -9 -11 -14 -17 -21 -24 -26 -28 -28 -28 -29 -31 -33 -36 -39 -42 -44 -46 -46 -45 -42 -41 -42 -43 -44 -41 -42 -43 -44 -45 -45 -46 -42 -35 -30 -30 -30 -31 -29 -25 -19 -13 -10 -9 -12 -17 -21 -17 -7 2 7 8 9 12 15 19 22 24 25 24 23 22 21 19 17 13 10 7 5 4 4 4 4 3 2 0 -1 -2 -3 -3 -3 -3 -4 -5 -6 -7 -8 -9 -9 -9 -9 -9 -7 -6 -4 -2 -0 2 3 5 6 6 5 5 5 6 7 8 9 9 8 8 7 7 7 7 7 6 6 5 5 4 3 2 1 -0 -0 -0 -0 -0 0 1 2 3 3 4 4 5 6 7 8 8 8 8 7 6 6 5 5 5 5 6 6 7 7 8 9 9 10 10 11 12 12 13 13 14 14 14 14 14 15 16 17 18 20 21 24 26 27 29 30 31 32 32 33 33 33 33 33 34 34 34 34 35 35 35 35 35 36 37 38 39 40 41 41 41 41 41 41 40 40 40 39 39 39 39 39 39 39 39 39 40 40 40 39 39 38 38 37 37 36 36 36 36 35 36 35 35 35 35 36 37 37 37 36 36 36 36 37 38 39 40 41 41 40 39 38 37 37 37 38 38 39 39 40 40 40 40 40 40 40 40 40 40 40 40 40 40 39 38 38 38 38 38 37 37 36 36 35 33 31 29 27 25 24 23 24 25 27 29 31 33 34 35 35 35 35 34 34 33 32 32 32 32 32 32 31 31 31 33 34 35 36 37 37 38 38 39 -9 -9 -9 -9 -9 -9 -9 -8 -8 -7 -7 -7 -6 -8 -10 -12 -13 -15 -17 -18 -20 -20 -21 -21 -21 -20 -19 -18 -18 -18 -19 -19 -19 -18 -18 -17 -17 -17 -18 -20 -20 -20 -20 -20 -20 -21 -21 -20 -20 -21 -22 -23 -23 -22 -21 -19 -19 -19 -20 -21 -21 -22 -24 -23 -20 -15 -10 -5 1 4 6 8 9 8 8 9 9 8 6 2 -0 -3 -4 -7 -10 -13 -16 -19 -22 -24 -26 -27 -28 -29 -30 -32 -34 -36 -40 -42 -44 -46 -48 -49 -47 -44 -42 -41 -42 -41 -43 -45 -46 -46 -45 -45 -41 -34 -29 -29 -33 -38 -39 -36 -31 -24 -18 -12 -8 -8 -11 -16 -14 -4 4 7 9 12 16 20 23 25 25 25 24 23 22 20 17 14 11 8 5 4 3 3 3 3 2 -0 -2 -3 -4 -3 -3 -3 -3 -4 -5 -6 -7 -8 -8 -8 -8 -7 -6 -5 -4 -2 -1 1 3 4 5 5 5 5 5 6 7 8 9 9 8 7 7 7 7 6 6 5 5 4 4 3 2 1 -0 -1 -1 -1 -1 -1 -0 0 1 2 2 3 4 5 6 7 7 7 6 5 4 3 3 3 3 3 4 4 5 6 7 7 8 8 9 9 10 11 12 12 12 13 13 13 13 14 14 15 16 18 19 21 23 25 27 28 30 31 31 32 32 32 32 32 33 33 33 34 34 35 35 35 35 35 35 36 37 38 39 40 41 42 42 43 43 42 42 42 42 42 42 42 42 42 41 41 40 40 40 40 40 40 39 39 38 38 37 37 36 36 36 37 36 36 36 36 37 38 38 38 37 37 37 37 38 39 40 42 42 42 41 40 39 39 38 38 39 39 39 40 40 39 39 40 40 41 41 41 41 42 42 43 43 43 43 43 42 41 40 38 37 36 36 36 35 33 32 30 28 26 25 24 24 25 26 28 30 32 33 34 34 34 35 34 34 34 33 33 33 33 33 33 32 32 32 32 34 35 36 37 37 38 39 39 -8 -8 -8 -7 -7 -7 -8 -7 -7 -6 -6 -6 -7 -8 -10 -12 -13 -15 -16 -17 -17 -17 -18 -19 -20 -20 -19 -19 -19 -20 -20 -19 -19 -19 -19 -18 -17 -17 -18 -20 -19 -19 -19 -19 -19 -21 -20 -20 -19 -20 -21 -22 -23 -22 -21 -21 -21 -21 -21 -21 -22 -23 -24 -23 -19 -12 -6 -1 3 6 8 9 9 8 8 8 8 6 4 1 -1 -3 -5 -8 -11 -14 -18 -20 -22 -24 -25 -26 -28 -29 -32 -34 -36 -37 -40 -42 -44 -46 -48 -49 -49 -46 -43 -42 -41 -42 -43 -45 -47 -48 -47 -43 -37 -33 -31 -32 -35 -38 -39 -38 -37 -35 -31 -23 -16 -12 -11 -16 -18 -10 -1 4 7 11 16 20 23 24 25 25 25 24 23 21 18 15 12 9 7 4 3 3 3 2 2 -0 -2 -4 -5 -5 -4 -3 -3 -3 -4 -5 -5 -6 -7 -7 -6 -6 -5 -4 -4 -3 -2 -0 2 4 5 5 5 5 6 6 7 8 8 8 7 7 6 6 6 5 5 4 4 3 3 2 1 -0 -1 -1 -1 -1 -1 -1 -1 0 1 1 2 3 4 5 5 5 5 4 3 2 1 1 1 2 2 2 3 3 4 5 6 6 7 7 8 9 10 10 11 11 12 12 12 12 12 13 14 14 15 17 18 20 21 23 25 26 28 29 30 30 31 31 31 31 32 32 32 33 34 34 34 34 34 34 35 36 37 38 39 40 41 42 42 43 43 43 43 43 43 44 44 45 45 44 43 42 42 41 41 41 41 41 40 40 39 39 38 37 37 37 37 37 37 37 37 37 38 39 39 39 39 38 38 39 39 41 42 44 44 44 43 42 41 40 40 40 40 40 40 41 40 40 40 40 40 41 42 43 44 44 45 45 46 47 48 47 46 44 42 39 37 36 36 36 35 34 32 31 29 28 27 26 25 26 26 28 29 31 33 34 34 34 34 34 34 34 34 34 34 34 34 33 33 32 32 33 34 35 37 37 38 39 39 40 -8 -7 -7 -6 -6 -6 -6 -6 -5 -5 -5 -6 -7 -9 -10 -12 -13 -14 -15 -14 -14 -15 -17 -19 -20 -20 -21 -21 -20 -21 -20 -20 -19 -19 -18 -18 -17 -18 -19 -20 -20 -20 -20 -20 -20 -21 -21 -20 -19 -19 -19 -20 -20 -20 -20 -21 -22 -22 -22 -21 -21 -23 -23 -21 -16 -9 -3 1 4 7 10 10 9 6 5 4 4 3 1 -0 -1 -3 -6 -9 -12 -15 -18 -21 -22 -23 -24 -26 -28 -31 -34 -36 -38 -39 -40 -43 -44 -46 -46 -48 -48 -46 -44 -43 -42 -42 -43 -45 -47 -49 -47 -42 -38 -36 -35 -37 -40 -40 -40 -39 -38 -37 -36 -32 -27 -21 -16 -18 -20 -14 -6 -1 4 9 14 18 20 22 23 24 24 24 23 21 19 16 13 10 8 5 3 3 2 3 2 0 -2 -4 -6 -6 -5 -4 -3 -3 -3 -3 -4 -4 -5 -5 -5 -4 -3 -3 -4 -4 -3 -1 1 3 5 5 5 5 5 6 6 7 7 7 7 6 6 6 5 5 4 3 3 3 2 2 1 -0 -1 -1 -1 -1 -1 -1 -1 -0 0 1 2 3 3 4 4 3 2 1 -0 -1 -1 -0 1 1 1 2 2 3 4 5 5 6 6 7 7 8 9 9 10 10 10 10 10 11 11 12 12 13 13 14 16 17 19 20 22 23 25 26 27 28 28 29 29 30 30 30 31 31 32 33 33 33 33 34 34 35 36 37 38 39 40 40 41 42 42 42 42 42 43 44 45 46 46 46 45 44 43 42 42 42 42 42 41 41 40 39 39 38 38 38 38 38 37 37 38 38 39 40 40 40 40 40 40 40 41 42 44 45 45 45 44 43 42 41 41 41 41 42 42 42 42 42 41 41 41 43 44 45 46 47 47 48 49 51 52 52 51 48 44 41 38 36 36 36 36 35 33 31 30 29 28 28 28 27 27 28 30 32 33 34 35 35 34 34 34 34 34 34 34 34 34 34 34 33 33 33 34 35 37 38 39 39 40 41 -7 -7 -6 -5 -5 -5 -5 -4 -4 -4 -4 -5 -6 -9 -11 -12 -12 -13 -13 -13 -13 -15 -18 -20 -21 -22 -22 -22 -22 -22 -21 -20 -20 -19 -18 -18 -18 -19 -20 -21 -21 -21 -21 -21 -21 -22 -22 -21 -20 -19 -19 -18 -18 -18 -19 -20 -22 -23 -23 -23 -22 -23 -22 -19 -14 -7 -2 2 5 8 10 11 8 4 1 -0 0 1 0 -0 -1 -3 -7 -9 -11 -15 -18 -21 -22 -22 -23 -25 -29 -33 -35 -37 -39 -40 -41 -43 -45 -45 -46 -46 -46 -45 -45 -44 -44 -43 -43 -44 -47 -49 -49 -47 -45 -43 -42 -42 -43 -43 -41 -40 -38 -37 -36 -34 -32 -29 -26 -24 -21 -15 -10 -7 -3 3 10 14 17 19 21 22 23 24 24 22 19 16 14 11 9 7 5 4 3 4 4 2 -1 -4 -7 -8 -7 -6 -4 -3 -2 -2 -2 -3 -3 -3 -3 -2 -2 -3 -4 -5 -4 -2 0 3 4 5 5 5 5 5 6 7 7 7 6 5 5 5 5 5 4 3 3 3 2 1 1 -0 -1 -1 -1 -1 -1 -1 -0 0 1 1 2 2 2 2 1 -0 -1 -2 -2 -2 -1 -0 0 1 1 1 2 3 4 5 5 5 6 6 7 7 8 8 8 8 8 8 8 8 9 9 9 10 10 12 13 14 16 17 18 19 21 22 24 25 25 26 27 27 28 28 29 30 30 31 31 32 32 33 33 34 35 36 36 37 38 39 39 40 40 40 41 41 42 43 44 45 46 46 46 45 44 44 43 43 43 43 42 42 41 40 39 39 39 39 38 38 37 38 38 39 40 41 41 42 42 42 42 42 43 44 45 46 46 46 45 44 44 43 43 42 43 43 43 44 44 44 43 43 44 45 46 47 48 49 49 50 52 54 56 56 55 52 48 44 40 38 36 36 36 35 34 32 31 30 30 30 30 30 29 30 31 33 34 35 35 35 35 35 35 35 35 35 35 35 35 35 35 34 34 34 34 35 37 38 40 40 41 42 -6 -7 -6 -5 -5 -5 -4 -3 -3 -3 -3 -5 -7 -8 -9 -11 -12 -13 -13 -13 -14 -16 -19 -21 -22 -22 -22 -22 -22 -23 -23 -21 -20 -19 -19 -19 -19 -20 -21 -21 -21 -20 -21 -22 -23 -23 -23 -22 -22 -21 -20 -20 -19 -19 -19 -20 -21 -22 -23 -24 -24 -23 -20 -17 -12 -7 -2 2 6 9 10 10 6 1 -2 -2 -1 -0 0 0 -1 -4 -7 -8 -11 -15 -18 -20 -21 -21 -23 -27 -31 -34 -36 -38 -39 -40 -42 -43 -45 -45 -45 -46 -46 -45 -45 -46 -47 -47 -45 -45 -47 -48 -51 -52 -51 -48 -45 -44 -44 -44 -42 -40 -39 -37 -36 -35 -33 -32 -32 -30 -25 -19 -13 -11 -11 -6 3 9 12 15 17 19 21 22 23 22 20 17 14 12 10 8 7 6 5 5 5 3 1 -2 -6 -8 -9 -8 -6 -4 -2 -2 -2 -2 -2 -2 -2 -2 -2 -3 -4 -5 -4 -3 -0 2 4 5 5 5 5 5 6 6 6 6 5 5 5 5 5 4 4 4 3 2 2 1 0 -0 -0 -1 -0 -0 0 0 0 1 1 1 1 1 0 -1 -2 -3 -4 -4 -4 -2 -1 -0 0 1 1 2 3 4 4 5 5 5 6 6 6 6 6 5 5 5 5 5 5 5 5 5 6 6 7 8 10 11 12 13 14 16 17 19 20 21 22 23 24 25 25 26 26 27 28 28 29 30 30 31 32 33 33 34 35 36 37 37 37 38 38 38 38 39 40 42 43 44 45 46 46 46 45 45 44 44 44 43 43 43 42 41 40 40 39 39 38 37 37 38 39 40 41 42 42 43 43 43 43 44 45 46 46 46 46 46 46 45 45 44 44 44 44 44 45 45 46 46 46 46 46 47 48 49 50 50 51 52 53 55 57 59 58 56 53 48 44 41 38 37 36 36 35 33 32 31 32 32 32 32 32 32 33 33 34 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 37 38 40 41 42 42 -5 -6 -6 -5 -5 -4 -3 -1 0 -0 -2 -4 -5 -6 -8 -9 -10 -11 -12 -13 -14 -16 -18 -20 -22 -22 -21 -22 -23 -24 -24 -22 -20 -19 -19 -19 -20 -20 -21 -20 -19 -19 -20 -22 -24 -24 -23 -23 -23 -23 -23 -23 -23 -22 -20 -19 -19 -21 -23 -25 -25 -22 -19 -15 -12 -8 -4 1 7 10 10 7 2 -1 -3 -3 -3 -3 -2 -2 -3 -5 -7 -8 -11 -15 -17 -18 -19 -20 -23 -28 -32 -35 -36 -38 -40 -41 -42 -44 -45 -45 -46 -46 -47 -46 -46 -46 -49 -50 -49 -49 -48 -48 -50 -51 -50 -47 -45 -43 -44 -44 -42 -41 -39 -37 -37 -36 -34 -33 -32 -31 -26 -20 -15 -12 -12 -9 -2 3 5 7 12 15 17 20 21 21 19 17 14 12 10 8 8 7 7 6 6 5 3 -0 -3 -6 -8 -9 -7 -5 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -3 -4 -4 -3 -1 1 4 5 5 5 5 5 6 6 6 6 5 4 5 5 5 4 4 4 3 2 2 1 0 -0 -0 -0 0 1 1 1 1 1 1 0 -0 -1 -2 -3 -4 -5 -5 -4 -3 -2 -1 -0 0 0 1 2 3 4 4 5 5 5 5 4 4 3 3 2 2 2 1 1 1 1 1 1 2 3 4 5 6 7 8 9 11 12 14 15 16 18 19 20 21 22 23 23 24 24 25 26 26 27 28 29 30 31 32 33 34 35 36 36 36 36 36 36 37 37 38 40 41 43 44 45 46 46 46 46 45 45 44 44 43 43 42 42 41 40 39 38 37 37 37 38 39 41 42 43 43 44 44 44 44 45 46 46 46 46 46 46 46 46 46 45 45 44 44 44 45 46 47 48 49 49 49 50 50 50 51 51 52 53 54 56 58 59 59 58 56 53 49 45 41 39 37 37 36 34 33 32 33 33 34 33 33 33 33 34 34 35 36 36 36 36 36 36 36 35 35 35 35 36 36 36 36 35 35 35 36 38 39 41 42 43 -6 -6 -5 -4 -3 -1 0 2 2 1 -1 -3 -3 -5 -7 -8 -9 -10 -11 -12 -14 -16 -18 -20 -21 -21 -21 -21 -22 -24 -25 -23 -20 -17 -17 -18 -19 -19 -19 -18 -18 -19 -20 -22 -23 -23 -23 -23 -23 -24 -25 -27 -27 -24 -19 -16 -17 -19 -22 -25 -24 -19 -16 -14 -12 -9 -5 1 8 11 9 3 -2 -3 -5 -6 -7 -8 -7 -7 -7 -8 -9 -10 -12 -14 -16 -16 -17 -20 -24 -29 -33 -35 -37 -38 -40 -42 -43 -44 -45 -45 -45 -45 -47 -47 -45 -45 -47 -51 -53 -53 -51 -49 -49 -49 -48 -46 -44 -43 -43 -43 -42 -41 -39 -38 -38 -37 -34 -30 -26 -24 -21 -18 -16 -12 -10 -7 -4 -3 -3 -3 3 8 12 16 19 19 19 17 14 12 10 9 8 8 8 8 7 6 4 2 0 -3 -6 -8 -8 -7 -5 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -2 -1 1 3 4 5 5 6 6 6 6 6 5 5 4 5 5 5 5 5 4 3 2 1 1 0 -0 -0 0 1 1 1 1 0 0 -0 -1 -2 -3 -4 -5 -5 -6 -5 -4 -2 -1 -1 -0 -0 1 2 3 3 4 4 4 4 4 3 2 1 0 -0 -1 -1 -2 -2 -3 -3 -3 -3 -3 -2 -1 1 2 3 4 5 7 8 10 11 12 13 15 16 17 19 19 20 20 21 21 22 22 23 24 25 26 27 28 30 32 33 34 35 35 36 36 35 35 36 36 37 38 40 42 43 45 45 46 45 45 45 44 44 44 43 43 42 42 41 40 39 38 37 37 37 38 40 41 43 44 44 44 44 44 44 45 46 46 46 46 46 46 46 46 46 46 46 45 45 45 45 47 48 49 50 51 51 51 51 51 51 52 53 54 56 57 58 58 59 58 57 55 52 48 45 42 40 38 37 36 34 34 34 34 35 34 34 34 34 34 34 35 36 37 38 38 37 37 37 36 36 36 35 35 36 36 36 36 36 36 36 37 39 40 42 43 -6 -5 -3 -2 -0 2 3 4 3 1 -0 -1 -1 -3 -6 -7 -8 -9 -11 -13 -15 -17 -19 -20 -21 -21 -21 -21 -21 -23 -24 -22 -19 -15 -14 -15 -15 -16 -16 -16 -17 -18 -19 -19 -20 -21 -22 -22 -22 -23 -26 -27 -24 -20 -17 -16 -20 -21 -23 -24 -23 -18 -14 -13 -13 -10 -4 2 7 8 4 -1 -5 -7 -9 -11 -11 -11 -11 -11 -11 -11 -11 -12 -14 -15 -16 -17 -18 -21 -25 -29 -32 -35 -37 -39 -40 -42 -44 -45 -45 -44 -43 -43 -46 -46 -44 -43 -43 -45 -49 -51 -51 -50 -48 -47 -46 -45 -43 -42 -42 -42 -41 -40 -39 -38 -38 -36 -31 -22 -15 -14 -16 -18 -18 -15 -12 -10 -8 -7 -8 -10 -7 -2 4 10 14 16 16 15 14 12 10 9 8 8 8 8 8 7 6 5 3 1 -2 -5 -7 -7 -6 -4 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 0 2 4 5 6 6 6 6 6 6 5 5 4 5 5 5 5 5 4 3 2 2 1 0 -0 -0 0 1 1 1 0 -0 -1 -2 -3 -4 -4 -5 -6 -6 -5 -4 -2 -1 -1 -1 -0 0 1 2 3 3 3 3 3 3 2 1 -0 -2 -2 -3 -4 -4 -5 -5 -6 -6 -6 -6 -5 -4 -3 -2 -1 -0 1 3 4 6 7 8 9 11 12 13 15 15 16 17 17 17 18 18 19 20 20 21 23 24 26 27 29 31 33 34 35 36 36 35 35 35 35 36 37 39 41 43 44 44 45 45 44 44 43 43 43 43 42 42 42 41 40 40 39 38 38 39 39 41 42 43 44 44 44 44 44 44 44 45 45 46 46 46 46 46 46 46 46 46 45 45 45 46 47 49 50 52 52 53 52 52 52 52 53 54 56 57 58 58 58 57 57 57 55 53 50 47 44 42 40 39 38 36 35 35 35 35 35 34 34 34 34 35 36 37 38 39 39 39 38 38 37 37 36 36 35 36 36 37 37 37 36 36 36 38 40 41 42 -5 -3 -1 1 3 4 5 5 3 1 1 1 -0 -2 -4 -6 -7 -9 -11 -14 -16 -18 -19 -20 -21 -21 -20 -20 -21 -22 -22 -19 -16 -14 -13 -13 -14 -14 -14 -15 -16 -16 -17 -17 -18 -19 -21 -21 -21 -20 -20 -20 -19 -18 -17 -17 -18 -20 -21 -22 -20 -16 -13 -12 -11 -9 -4 1 5 5 1 -4 -6 -9 -11 -13 -12 -10 -10 -11 -12 -12 -13 -14 -15 -16 -17 -18 -19 -22 -26 -29 -32 -34 -36 -38 -40 -42 -45 -45 -44 -42 -41 -41 -42 -42 -42 -43 -44 -46 -48 -51 -51 -49 -45 -41 -41 -42 -41 -41 -42 -42 -41 -39 -38 -38 -38 -33 -25 -17 -14 -14 -15 -17 -18 -17 -16 -14 -11 -6 -4 -5 -10 -11 -7 1 8 10 12 13 13 12 11 9 8 7 7 8 8 7 7 6 5 4 2 -1 -4 -6 -7 -6 -4 -3 -3 -3 -2 -2 -2 -2 -1 -1 -1 -1 -0 1 2 3 4 5 6 6 6 6 5 5 5 5 5 5 5 5 5 4 3 3 2 1 0 -0 -0 0 0 0 -0 -1 -2 -2 -3 -4 -5 -6 -6 -6 -5 -4 -2 -1 -0 -0 -0 0 1 2 2 3 3 2 2 2 1 -1 -2 -3 -4 -5 -5 -6 -7 -8 -9 -9 -9 -9 -8 -7 -6 -6 -5 -4 -2 -1 0 2 3 4 6 7 8 10 11 12 12 13 13 14 14 15 16 16 17 18 19 20 21 23 25 27 30 32 34 35 36 36 35 35 35 35 35 37 38 40 41 43 43 44 44 43 43 42 42 42 42 42 42 41 41 40 40 40 40 40 40 41 41 43 44 44 44 44 43 43 43 43 44 44 45 46 46 46 46 46 46 46 46 46 45 45 46 47 49 51 52 53 54 53 53 53 54 55 56 58 58 58 58 56 55 55 55 54 53 50 48 45 44 42 41 40 38 37 36 36 35 35 34 34 34 34 35 36 37 39 40 40 40 39 39 38 38 37 36 36 35 36 36 37 37 37 36 36 37 39 40 42 -2 -0 2 3 5 6 6 5 2 2 2 1 0 -1 -3 -5 -7 -10 -12 -15 -17 -18 -19 -19 -19 -19 -19 -20 -21 -22 -19 -16 -13 -12 -12 -12 -12 -12 -12 -13 -14 -15 -15 -17 -18 -20 -21 -20 -18 -17 -16 -15 -14 -13 -14 -17 -20 -21 -21 -18 -15 -12 -11 -11 -10 -8 -4 -0 3 2 -1 -5 -7 -10 -12 -13 -12 -9 -10 -12 -12 -12 -13 -14 -16 -18 -19 -19 -20 -23 -26 -28 -31 -33 -35 -37 -39 -42 -44 -45 -44 -42 -41 -40 -41 -42 -44 -45 -47 -48 -49 -50 -50 -48 -45 -41 -40 -39 -39 -40 -41 -42 -41 -39 -37 -35 -32 -26 -20 -17 -16 -15 -15 -15 -15 -14 -14 -14 -12 -8 -4 -1 -2 -6 -9 -9 -3 1 5 8 9 10 10 10 9 8 7 7 7 7 7 6 6 5 4 2 -1 -4 -6 -7 -6 -4 -3 -3 -2 -2 -2 -2 -1 -0 -0 0 1 2 3 3 4 5 6 6 6 6 6 5 5 5 6 6 6 5 5 4 4 3 2 1 0 -0 -0 -1 -1 -1 -2 -2 -3 -4 -5 -5 -6 -6 -6 -5 -4 -2 -1 -0 0 0 0 1 1 2 2 2 2 1 0 -1 -2 -4 -5 -6 -6 -7 -8 -9 -10 -10 -11 -11 -11 -10 -10 -9 -8 -7 -6 -6 -4 -3 -2 -1 1 2 3 5 6 7 8 9 10 10 11 11 12 13 14 14 15 16 17 18 20 22 24 26 28 31 33 35 36 36 35 35 35 35 35 36 37 39 40 41 42 42 42 42 41 40 40 40 40 41 41 41 41 41 41 41 42 42 42 42 42 43 43 43 43 42 42 42 42 42 43 43 44 45 46 46 47 47 47 47 46 46 46 46 47 48 49 51 53 54 55 55 55 55 55 56 57 58 58 57 56 55 54 54 54 53 52 49 47 45 44 43 43 42 40 39 37 36 36 35 34 34 34 34 35 36 37 39 40 41 41 40 39 39 38 37 37 36 35 35 36 37 37 37 37 36 37 38 40 42 2 3 4 4 6 6 6 4 3 3 2 2 0 -1 -4 -6 -8 -11 -14 -16 -17 -17 -17 -16 -16 -17 -18 -19 -21 -21 -18 -15 -12 -11 -10 -9 -9 -10 -11 -12 -13 -14 -16 -17 -19 -20 -20 -18 -16 -15 -14 -13 -11 -12 -15 -19 -21 -21 -18 -14 -11 -9 -8 -9 -9 -8 -5 -3 0 1 -1 -5 -9 -11 -13 -14 -13 -11 -12 -13 -13 -13 -14 -15 -17 -19 -20 -20 -21 -23 -25 -27 -29 -32 -34 -37 -39 -42 -45 -46 -45 -43 -42 -40 -41 -43 -45 -47 -48 -49 -49 -49 -49 -48 -45 -41 -39 -38 -38 -39 -40 -41 -41 -39 -34 -27 -25 -22 -20 -19 -19 -19 -18 -16 -14 -13 -14 -15 -14 -12 -10 -10 -7 -5 -5 -7 -9 -8 -5 -2 0 4 8 8 9 9 8 7 7 7 7 6 6 5 5 4 3 -1 -4 -6 -7 -5 -4 -3 -2 -2 -1 -1 -1 0 1 2 2 3 4 4 4 5 6 6 6 6 6 6 6 6 6 6 6 5 4 4 3 3 2 1 0 -0 -1 -1 -2 -2 -3 -4 -4 -5 -6 -7 -7 -6 -5 -4 -2 -1 0 0 0 0 1 1 2 2 1 1 0 -1 -2 -3 -5 -6 -7 -8 -8 -9 -10 -11 -12 -13 -13 -13 -12 -11 -11 -10 -9 -9 -8 -7 -6 -5 -4 -3 -1 0 2 3 5 6 7 7 8 9 10 10 11 12 13 14 14 15 16 18 19 21 23 25 27 30 32 33 35 35 35 35 34 34 35 35 36 38 39 40 40 40 40 40 39 39 38 38 39 39 40 40 41 41 42 43 43 43 43 42 42 42 41 41 41 41 41 41 42 42 42 43 44 45 46 47 47 47 47 47 47 47 47 47 48 49 50 52 54 55 56 56 56 56 57 57 57 57 57 55 54 53 52 52 52 52 51 49 46 43 42 42 43 43 42 41 39 37 37 36 35 35 35 35 35 36 37 38 40 41 42 41 40 39 38 38 37 36 35 35 36 36 37 37 37 37 37 38 39 41 5 6 6 5 5 6 7 6 4 4 4 3 0 -3 -6 -8 -10 -11 -13 -14 -14 -15 -15 -15 -16 -17 -18 -18 -19 -18 -16 -13 -11 -9 -8 -7 -8 -9 -11 -13 -15 -15 -17 -18 -19 -19 -18 -16 -15 -14 -14 -13 -11 -13 -16 -20 -21 -19 -14 -10 -7 -7 -7 -8 -9 -9 -7 -5 -2 -0 -1 -6 -10 -13 -14 -13 -12 -12 -14 -14 -14 -14 -15 -17 -19 -20 -21 -22 -22 -23 -25 -27 -29 -32 -35 -38 -41 -44 -47 -47 -47 -46 -43 -41 -41 -42 -44 -47 -48 -48 -48 -49 -49 -49 -46 -43 -40 -38 -38 -38 -39 -40 -41 -40 -34 -25 -23 -23 -22 -23 -24 -25 -24 -20 -16 -14 -13 -14 -14 -15 -19 -22 -19 -15 -11 -8 -6 -7 -10 -14 -14 -7 1 3 5 7 8 7 7 8 8 7 6 5 5 5 4 2 -1 -5 -6 -6 -4 -2 -1 -0 -0 0 0 1 2 3 4 4 4 4 5 5 6 6 7 7 7 6 6 7 7 6 6 4 4 3 3 3 2 1 -0 -1 -2 -2 -3 -4 -5 -5 -6 -7 -7 -7 -7 -5 -4 -2 -1 -0 0 0 0 1 1 1 1 1 0 -1 -2 -3 -5 -6 -7 -8 -9 -9 -10 -11 -12 -13 -14 -15 -14 -14 -13 -12 -12 -11 -10 -10 -9 -8 -7 -6 -5 -3 -2 -0 1 3 4 5 6 7 8 9 10 11 12 13 13 14 14 15 16 17 19 21 22 24 26 28 30 32 33 33 34 34 34 34 34 34 35 36 37 38 38 38 38 38 38 37 37 37 38 38 39 40 41 42 43 43 43 43 42 42 41 40 39 39 39 39 40 40 41 41 41 41 42 43 45 46 47 48 48 49 49 48 48 49 49 50 51 53 55 56 57 58 58 58 57 57 57 56 54 53 52 51 50 51 51 51 50 48 45 42 40 40 42 44 44 43 41 39 38 37 37 37 36 36 36 36 36 37 39 41 42 42 41 40 39 38 37 36 36 35 35 36 37 38 38 38 37 38 38 40 7 9 8 5 5 6 7 7 7 6 5 3 -0 -4 -6 -8 -10 -11 -11 -12 -13 -14 -15 -15 -16 -15 -15 -15 -15 -15 -14 -12 -11 -9 -7 -7 -8 -11 -13 -15 -17 -17 -17 -17 -17 -16 -16 -15 -15 -15 -14 -14 -14 -15 -18 -19 -18 -15 -10 -6 -5 -6 -7 -8 -9 -9 -9 -7 -4 -2 -2 -6 -11 -13 -12 -11 -11 -13 -15 -15 -15 -16 -18 -20 -21 -23 -25 -27 -26 -26 -27 -29 -32 -34 -37 -40 -43 -46 -48 -48 -47 -46 -44 -43 -43 -43 -44 -46 -47 -48 -49 -49 -50 -49 -48 -45 -42 -40 -39 -38 -38 -38 -39 -38 -35 -29 -29 -28 -28 -30 -31 -29 -26 -23 -21 -20 -15 -13 -14 -18 -24 -28 -27 -25 -22 -18 -12 -11 -13 -18 -19 -13 -5 -4 -1 2 4 6 7 7 8 8 7 5 4 4 4 3 1 -2 -4 -5 -4 -1 0 1 1 1 1 2 2 3 4 5 5 5 5 6 6 7 7 7 7 7 7 7 7 6 5 4 3 2 2 2 2 1 -1 -1 -2 -3 -4 -5 -6 -7 -8 -8 -8 -7 -6 -4 -3 -1 -1 -1 -1 -1 -0 0 1 1 1 -0 -1 -3 -4 -5 -7 -8 -9 -9 -10 -11 -12 -13 -14 -15 -16 -15 -15 -14 -13 -13 -12 -12 -11 -10 -9 -8 -7 -6 -4 -3 -1 0 2 3 4 5 6 7 8 9 10 11 12 13 13 14 14 15 15 16 18 19 21 22 24 26 27 29 30 31 31 31 31 32 32 33 34 35 36 36 36 36 36 36 36 36 36 36 37 38 39 40 41 41 42 42 42 42 41 40 39 37 36 36 36 37 38 39 39 39 39 40 40 41 43 45 47 49 50 50 50 50 50 50 51 51 53 54 56 57 58 58 58 58 57 56 55 54 52 51 50 50 49 49 50 50 49 47 44 41 39 38 40 43 45 45 43 41 40 39 39 39 38 37 37 37 37 37 38 40 41 42 42 41 40 39 38 37 36 35 35 36 36 38 38 38 38 38 38 39 9 11 9 6 6 8 9 9 8 6 4 1 -2 -4 -6 -8 -9 -10 -10 -12 -13 -14 -15 -15 -14 -12 -12 -12 -12 -12 -12 -12 -11 -9 -8 -9 -11 -13 -15 -16 -17 -17 -16 -15 -14 -14 -15 -15 -16 -16 -16 -16 -18 -19 -19 -17 -14 -11 -7 -4 -4 -6 -8 -9 -9 -9 -8 -7 -5 -3 -3 -7 -11 -12 -10 -9 -8 -12 -15 -16 -17 -19 -21 -25 -27 -29 -31 -32 -32 -30 -31 -32 -34 -36 -38 -40 -43 -45 -45 -44 -43 -42 -43 -44 -45 -45 -45 -46 -46 -47 -48 -49 -49 -49 -48 -47 -45 -43 -42 -40 -39 -38 -36 -34 -32 -32 -35 -35 -35 -36 -36 -31 -26 -25 -28 -29 -22 -17 -15 -18 -24 -29 -29 -30 -31 -30 -25 -22 -21 -22 -22 -16 -6 -4 -3 -3 -3 1 4 6 6 7 7 6 4 3 2 2 1 -0 -2 -3 -3 -1 1 2 3 2 2 3 3 4 4 5 6 6 6 6 6 7 7 7 8 8 8 7 6 5 4 3 2 2 2 2 1 0 -1 -2 -3 -4 -5 -6 -8 -8 -9 -8 -7 -6 -5 -3 -2 -2 -2 -2 -2 -1 -0 0 0 0 -0 -2 -3 -4 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -16 -16 -16 -15 -14 -14 -13 -13 -12 -11 -10 -9 -8 -6 -5 -3 -2 -0 1 2 3 4 5 6 7 8 8 9 10 11 11 12 12 13 13 14 14 16 17 19 20 21 23 24 25 27 28 28 28 28 29 29 30 32 33 34 34 34 34 34 34 34 35 35 36 37 38 39 40 40 41 41 40 40 39 39 38 36 35 34 34 34 35 36 37 37 38 38 38 38 40 41 44 47 49 51 51 51 51 51 51 52 53 54 55 56 57 58 58 57 57 56 55 53 52 51 50 49 49 48 48 48 49 48 47 44 41 38 37 38 41 44 46 46 44 43 42 42 42 41 40 39 38 38 38 39 40 41 42 43 42 41 39 38 38 37 36 35 36 36 37 38 39 38 38 37 38 11 11 9 7 7 9 10 10 8 5 3 -0 -2 -4 -6 -8 -9 -10 -11 -13 -14 -14 -14 -13 -12 -10 -10 -10 -10 -10 -11 -11 -12 -12 -11 -12 -13 -15 -15 -16 -15 -15 -14 -13 -13 -15 -16 -18 -19 -20 -20 -20 -21 -21 -19 -15 -12 -9 -6 -3 -3 -5 -8 -9 -8 -7 -6 -5 -5 -5 -5 -6 -9 -10 -9 -9 -9 -12 -15 -17 -19 -22 -26 -30 -33 -34 -34 -32 -30 -27 -26 -27 -30 -33 -36 -39 -41 -43 -44 -44 -43 -43 -43 -43 -45 -46 -47 -47 -46 -46 -48 -49 -49 -49 -48 -47 -46 -46 -45 -44 -42 -39 -34 -28 -24 -29 -37 -39 -39 -38 -37 -33 -29 -29 -31 -33 -31 -25 -21 -19 -21 -27 -29 -30 -32 -35 -35 -32 -29 -28 -25 -19 -10 -5 -3 -4 -7 -4 1 3 3 4 6 6 4 2 0 -1 -1 -1 -1 -2 -2 0 2 3 4 3 3 3 3 4 4 5 6 7 7 7 7 7 7 8 8 8 8 7 6 5 3 2 1 1 1 1 0 -0 -1 -2 -3 -4 -6 -7 -9 -9 -9 -8 -6 -5 -4 -3 -3 -3 -3 -3 -2 -2 -1 -1 -1 -1 -2 -3 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -16 -16 -16 -15 -15 -14 -14 -13 -13 -12 -10 -9 -7 -6 -4 -3 -2 -1 0 1 1 2 2 3 4 5 5 6 7 7 8 9 9 10 10 10 11 12 13 14 16 17 18 19 20 22 23 23 24 24 25 25 26 27 29 30 31 31 32 32 32 32 33 34 35 36 38 39 39 40 40 39 39 38 38 37 36 35 34 33 32 31 32 32 33 34 35 35 36 37 37 38 40 43 46 49 51 52 52 52 52 52 53 54 55 56 56 57 57 57 56 56 55 54 52 51 50 50 49 49 48 48 48 48 47 46 44 41 39 37 37 40 43 47 48 47 46 46 45 45 43 42 41 40 40 40 40 41 41 42 43 43 42 41 39 39 38 37 36 36 36 37 38 39 39 38 38 37 11 10 8 7 8 9 10 10 8 5 2 -1 -3 -5 -7 -8 -10 -11 -13 -14 -14 -13 -12 -11 -9 -8 -7 -8 -8 -9 -10 -12 -14 -15 -15 -14 -14 -14 -13 -13 -13 -12 -12 -12 -14 -17 -20 -22 -22 -23 -22 -23 -22 -21 -18 -15 -12 -8 -6 -4 -4 -5 -8 -7 -6 -4 -2 -2 -3 -5 -6 -8 -9 -10 -9 -10 -12 -15 -17 -19 -22 -25 -29 -31 -33 -32 -30 -27 -24 -24 -26 -28 -31 -33 -35 -38 -40 -43 -44 -44 -45 -45 -45 -45 -45 -46 -48 -49 -47 -47 -48 -49 -49 -49 -48 -47 -47 -46 -46 -45 -44 -40 -34 -28 -25 -29 -35 -38 -39 -38 -37 -36 -34 -32 -32 -33 -35 -34 -31 -27 -24 -26 -28 -29 -30 -32 -35 -34 -32 -29 -27 -24 -19 -13 -8 -5 -6 -6 -3 -1 -1 -1 1 3 3 1 -1 -4 -4 -3 -2 -1 -0 1 2 3 4 5 5 4 4 4 4 5 7 7 8 7 7 7 8 8 8 8 8 7 5 4 2 1 1 0 0 0 -0 -1 -1 -2 -3 -5 -7 -8 -9 -9 -8 -6 -5 -5 -4 -4 -4 -4 -4 -3 -3 -2 -2 -2 -3 -4 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -16 -16 -16 -16 -15 -14 -14 -13 -12 -11 -10 -8 -7 -5 -4 -2 -1 -1 -1 -1 -1 -1 -1 -0 0 1 1 2 3 3 4 5 6 6 7 7 7 8 9 10 11 13 14 15 16 17 18 18 19 20 20 21 22 23 24 25 26 27 28 29 29 30 31 32 34 35 36 38 39 39 39 39 38 37 36 36 35 34 33 32 31 30 30 30 30 31 32 32 34 35 36 37 37 39 41 44 48 50 52 52 53 53 53 54 54 55 55 56 56 55 55 55 55 54 52 51 50 49 49 49 48 48 47 47 47 46 46 44 42 39 37 38 40 43 46 48 49 49 49 49 48 46 44 43 42 41 42 42 42 42 42 43 43 43 42 41 40 39 38 37 37 37 37 38 39 40 39 39 38 11 10 8 7 8 10 11 10 7 4 1 -2 -4 -6 -8 -10 -12 -14 -15 -15 -14 -12 -10 -8 -7 -6 -5 -6 -7 -9 -11 -14 -16 -16 -16 -15 -13 -11 -11 -11 -12 -12 -13 -15 -17 -20 -22 -23 -23 -23 -22 -22 -22 -20 -18 -15 -12 -9 -6 -4 -4 -5 -6 -5 -4 -2 -1 -0 -2 -4 -7 -9 -9 -9 -11 -14 -17 -19 -21 -23 -26 -29 -30 -30 -29 -27 -25 -24 -24 -27 -29 -30 -30 -32 -35 -38 -41 -43 -43 -44 -45 -46 -47 -47 -46 -48 -49 -50 -49 -48 -49 -50 -50 -50 -49 -48 -48 -47 -46 -44 -43 -42 -40 -37 -36 -36 -37 -38 -38 -37 -36 -35 -34 -34 -34 -34 -34 -34 -33 -32 -31 -29 -28 -28 -29 -31 -33 -32 -29 -27 -28 -30 -29 -24 -18 -13 -9 -7 -6 -6 -7 -8 -7 -5 -2 -2 -3 -6 -8 -8 -5 -2 -0 1 3 4 5 6 6 5 4 4 4 5 7 8 8 8 7 7 7 8 8 8 7 6 5 3 2 1 -0 -0 -0 -0 -1 -1 -1 -2 -4 -6 -7 -8 -8 -7 -6 -6 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -4 -5 -5 -6 -6 -7 -7 -8 -9 -10 -11 -12 -13 -14 -14 -15 -16 -16 -16 -15 -15 -14 -13 -12 -12 -11 -9 -8 -7 -5 -4 -3 -2 -2 -2 -3 -3 -4 -4 -4 -4 -3 -3 -2 -2 -1 -0 1 1 2 3 3 4 4 5 6 7 8 10 11 12 13 13 14 15 15 16 17 17 18 19 20 22 23 24 25 27 28 30 31 33 34 35 36 36 37 37 37 37 36 36 35 34 34 33 32 30 29 29 28 28 28 28 29 30 32 34 35 36 37 38 40 43 46 49 51 52 53 53 53 53 53 54 54 54 53 53 53 53 53 52 51 49 48 48 48 48 49 48 48 47 46 46 45 44 43 41 39 39 41 43 47 49 50 51 51 51 50 49 46 44 43 42 42 43 43 44 43 43 43 43 43 42 42 41 40 39 38 37 38 39 40 41 41 40 39 9 9 8 8 10 11 11 9 6 3 -1 -4 -6 -9 -11 -12 -14 -15 -16 -16 -13 -10 -6 -4 -3 -3 -3 -5 -7 -10 -13 -14 -14 -13 -12 -11 -10 -11 -12 -13 -12 -11 -12 -16 -19 -21 -22 -23 -23 -23 -22 -21 -20 -18 -16 -15 -13 -10 -7 -4 -2 -2 -4 -3 -2 -1 -0 1 -1 -4 -8 -10 -11 -12 -15 -18 -21 -23 -25 -28 -30 -31 -30 -26 -24 -24 -25 -25 -27 -30 -31 -31 -30 -32 -35 -38 -41 -43 -43 -44 -45 -47 -48 -48 -47 -47 -48 -49 -49 -48 -49 -51 -52 -52 -51 -49 -48 -47 -46 -44 -43 -42 -41 -40 -39 -38 -38 -38 -38 -37 -36 -35 -35 -36 -36 -36 -35 -36 -36 -35 -34 -31 -30 -29 -27 -26 -26 -27 -28 -29 -31 -34 -32 -29 -27 -25 -22 -17 -15 -14 -15 -17 -19 -17 -12 -8 -7 -9 -11 -12 -10 -6 -2 1 3 5 6 7 6 5 4 4 4 6 7 8 8 8 7 7 7 7 8 7 7 6 4 3 1 0 -1 -1 -1 -1 -1 -1 -2 -3 -5 -6 -7 -7 -7 -6 -6 -5 -6 -6 -6 -6 -5 -5 -4 -4 -5 -6 -7 -7 -8 -8 -8 -8 -8 -9 -10 -11 -12 -12 -13 -14 -15 -15 -15 -15 -15 -14 -13 -12 -12 -11 -10 -9 -8 -7 -6 -5 -4 -4 -4 -4 -4 -5 -6 -7 -8 -8 -8 -7 -7 -6 -5 -5 -4 -3 -2 -1 -1 -0 0 1 2 2 4 5 6 7 9 10 10 11 12 12 13 14 14 15 16 18 19 21 22 24 26 28 30 31 33 33 34 34 34 34 34 34 34 34 34 34 33 33 32 31 30 28 27 27 26 26 27 27 28 31 33 34 35 36 36 38 41 44 47 50 52 53 53 53 52 52 51 51 51 51 51 51 51 51 50 49 47 46 46 47 48 49 49 48 47 46 45 45 45 44 43 42 42 42 44 47 49 51 52 52 53 52 50 48 46 43 42 42 42 43 44 45 45 44 44 44 43 43 42 42 40 39 39 39 39 40 42 42 42 41 8 9 9 10 11 11 10 7 5 1 -3 -6 -9 -11 -13 -14 -15 -15 -15 -15 -12 -7 -4 -1 -0 -0 -2 -5 -9 -13 -14 -13 -11 -9 -8 -9 -11 -13 -14 -13 -11 -10 -12 -15 -19 -21 -22 -23 -24 -24 -23 -22 -19 -17 -15 -14 -12 -9 -6 -3 -1 0 -0 -1 -1 -0 0 1 -2 -6 -11 -15 -16 -18 -20 -22 -24 -26 -29 -31 -32 -30 -26 -22 -21 -23 -26 -27 -30 -31 -31 -30 -31 -34 -37 -39 -41 -42 -44 -45 -46 -47 -47 -47 -46 -47 -49 -50 -50 -49 -50 -52 -54 -54 -53 -51 -49 -48 -46 -45 -44 -43 -42 -41 -40 -40 -39 -39 -39 -38 -37 -35 -35 -37 -39 -38 -37 -37 -38 -38 -37 -35 -33 -32 -29 -23 -16 -18 -24 -29 -31 -29 -28 -28 -28 -28 -29 -30 -28 -26 -25 -27 -31 -31 -26 -20 -15 -13 -14 -16 -16 -12 -5 0 4 6 7 7 6 5 4 4 5 6 7 8 8 8 7 6 6 6 7 6 6 5 3 2 0 -1 -1 -1 -1 -1 -2 -2 -3 -4 -6 -7 -7 -6 -6 -5 -6 -6 -6 -7 -6 -6 -5 -5 -5 -6 -7 -8 -9 -10 -9 -9 -9 -9 -9 -10 -10 -11 -12 -13 -13 -14 -14 -15 -15 -14 -14 -13 -12 -11 -10 -10 -9 -8 -8 -7 -7 -7 -6 -6 -6 -6 -7 -8 -9 -10 -11 -11 -11 -11 -10 -10 -9 -8 -8 -7 -6 -5 -4 -4 -3 -2 -2 -1 0 1 3 5 6 7 8 9 10 10 11 12 12 13 14 16 18 19 21 23 25 27 29 31 32 32 31 30 30 30 30 31 31 32 32 32 31 31 30 30 29 27 26 25 25 24 25 26 27 29 31 33 34 34 35 36 39 42 45 48 50 51 52 51 50 49 49 49 49 48 48 48 48 48 47 46 45 44 45 46 47 48 48 48 46 45 45 45 45 45 45 44 44 44 45 47 49 51 52 52 53 52 51 49 47 44 43 42 42 43 44 46 46 46 45 44 44 44 43 43 42 41 40 40 40 41 43 44 44 43 7 9 10 12 12 10 7 5 2 -3 -6 -8 -11 -13 -14 -14 -14 -14 -13 -12 -9 -4 -1 1 2 1 -2 -6 -10 -13 -14 -12 -8 -6 -6 -10 -13 -15 -15 -12 -10 -10 -12 -15 -19 -21 -22 -23 -24 -24 -23 -21 -18 -16 -15 -14 -12 -9 -5 -2 1 2 2 1 -0 -0 -0 -2 -6 -12 -17 -20 -22 -24 -24 -25 -26 -28 -31 -32 -31 -26 -21 -20 -22 -24 -26 -28 -31 -30 -30 -31 -33 -36 -38 -40 -42 -43 -46 -48 -49 -48 -46 -44 -45 -47 -51 -53 -53 -51 -52 -54 -56 -57 -56 -53 -50 -48 -47 -46 -45 -44 -43 -42 -41 -41 -41 -41 -40 -39 -37 -35 -34 -35 -36 -37 -37 -38 -40 -40 -40 -38 -36 -34 -32 -28 -23 -22 -25 -28 -30 -29 -28 -29 -30 -30 -30 -29 -27 -27 -27 -28 -31 -33 -34 -33 -29 -22 -19 -19 -20 -18 -11 -3 4 7 7 7 6 5 5 5 5 6 7 8 8 7 6 5 5 5 5 5 4 3 2 1 -1 -1 -2 -2 -2 -2 -3 -3 -5 -6 -7 -7 -6 -5 -5 -6 -6 -7 -7 -7 -6 -6 -5 -6 -7 -8 -10 -11 -11 -11 -11 -10 -10 -10 -10 -11 -11 -12 -12 -13 -13 -14 -14 -14 -13 -13 -12 -11 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -8 -8 -9 -9 -11 -12 -13 -14 -15 -15 -14 -14 -13 -13 -12 -11 -11 -9 -8 -8 -7 -6 -6 -5 -4 -3 -2 0 2 4 5 7 8 8 9 10 11 12 13 14 16 18 20 22 24 25 27 28 29 29 29 28 27 27 27 27 28 28 29 29 29 29 29 29 28 27 26 24 23 23 23 24 25 27 28 29 31 31 32 33 34 36 39 43 46 48 49 49 48 47 47 47 46 46 45 45 45 45 45 44 44 43 43 43 44 46 47 48 47 46 45 44 44 45 46 46 46 46 46 46 48 49 50 51 51 52 52 51 50 48 46 44 42 42 43 44 46 47 47 46 45 44 44 44 43 43 42 41 41 41 42 43 45 45 45 7 9 11 11 9 6 3 1 -2 -5 -7 -9 -11 -13 -13 -13 -13 -13 -12 -11 -7 -2 1 3 2 -0 -5 -8 -11 -12 -12 -10 -7 -6 -7 -11 -15 -15 -14 -11 -10 -11 -12 -15 -18 -21 -23 -24 -23 -23 -22 -20 -17 -16 -15 -14 -11 -8 -5 -2 0 2 2 1 -1 -2 -3 -7 -13 -18 -22 -24 -26 -27 -28 -27 -28 -30 -33 -32 -28 -22 -18 -20 -24 -25 -25 -27 -29 -29 -30 -32 -35 -37 -39 -42 -44 -46 -48 -51 -51 -48 -45 -42 -44 -47 -50 -53 -55 -54 -54 -56 -58 -59 -59 -56 -52 -49 -48 -47 -46 -44 -42 -42 -41 -41 -42 -42 -41 -40 -37 -35 -34 -33 -33 -35 -37 -39 -40 -42 -42 -40 -38 -37 -35 -32 -29 -26 -26 -27 -29 -30 -29 -30 -32 -33 -32 -29 -28 -28 -29 -29 -31 -33 -35 -37 -37 -32 -27 -24 -24 -23 -18 -8 1 7 8 6 5 5 5 5 6 6 7 8 7 6 5 4 3 3 3 3 3 2 0 -1 -2 -2 -2 -2 -3 -3 -4 -5 -6 -7 -7 -6 -5 -5 -6 -6 -7 -7 -7 -6 -6 -5 -6 -7 -9 -11 -13 -13 -13 -12 -12 -12 -11 -11 -11 -11 -12 -12 -12 -13 -13 -13 -13 -13 -12 -12 -11 -10 -10 -10 -10 -10 -11 -11 -12 -12 -12 -11 -11 -11 -11 -11 -12 -13 -15 -16 -17 -18 -18 -17 -17 -17 -16 -15 -15 -13 -12 -11 -10 -10 -9 -9 -8 -8 -7 -5 -3 -1 1 3 5 6 7 8 9 10 11 12 14 16 18 20 22 24 25 25 26 26 26 25 25 24 24 24 25 26 26 27 27 27 27 27 27 27 26 24 22 21 22 22 24 25 26 27 28 29 30 30 31 32 34 36 39 43 45 46 46 45 45 44 44 44 43 42 42 42 41 41 41 41 41 41 42 43 45 46 46 46 45 44 43 43 44 46 47 47 47 47 47 47 48 49 49 50 50 51 51 51 49 47 45 44 43 43 44 46 47 47 47 45 44 43 43 43 43 43 42 42 42 43 44 45 46 46 7 8 8 7 4 2 -0 -2 -4 -6 -8 -10 -11 -12 -12 -11 -11 -12 -12 -11 -6 -1 1 2 0 -3 -8 -11 -12 -12 -11 -9 -7 -7 -9 -14 -15 -15 -13 -11 -10 -12 -13 -15 -18 -22 -24 -23 -22 -21 -20 -19 -17 -17 -15 -13 -10 -8 -6 -4 -2 -1 -1 -2 -4 -6 -9 -15 -20 -24 -26 -27 -27 -28 -28 -29 -30 -32 -33 -31 -26 -20 -18 -23 -26 -26 -26 -27 -28 -30 -32 -35 -37 -40 -43 -46 -48 -50 -51 -52 -51 -48 -44 -43 -45 -48 -51 -53 -54 -56 -56 -57 -58 -60 -60 -58 -55 -52 -50 -49 -47 -44 -42 -41 -41 -41 -42 -42 -41 -39 -37 -35 -35 -34 -34 -36 -38 -40 -42 -43 -44 -42 -40 -39 -37 -35 -31 -28 -27 -26 -27 -28 -29 -31 -33 -35 -34 -32 -31 -31 -31 -29 -30 -33 -36 -39 -40 -37 -34 -32 -30 -27 -24 -15 -5 3 6 5 4 4 4 5 6 7 7 7 6 5 4 3 2 2 1 1 1 -0 -2 -3 -3 -3 -3 -3 -4 -5 -6 -7 -8 -8 -7 -6 -5 -6 -6 -7 -7 -7 -6 -6 -6 -6 -8 -10 -12 -14 -14 -14 -14 -13 -13 -13 -13 -13 -12 -12 -12 -12 -12 -13 -13 -13 -13 -12 -12 -11 -11 -10 -11 -11 -12 -13 -13 -13 -14 -14 -14 -13 -13 -13 -13 -14 -15 -16 -18 -19 -20 -21 -21 -21 -20 -20 -19 -18 -17 -16 -15 -14 -13 -13 -13 -12 -12 -11 -10 -8 -6 -4 -2 1 3 4 5 6 7 8 9 11 13 15 17 19 21 22 22 23 23 23 22 22 22 23 23 24 24 25 26 26 26 26 27 27 26 25 23 22 21 21 21 22 23 24 25 26 27 28 28 29 30 30 31 33 35 38 40 41 42 42 42 41 41 41 40 40 39 38 38 38 39 39 39 40 40 41 43 44 45 45 44 43 42 43 44 45 46 47 47 47 47 47 47 48 48 48 49 50 51 51 50 49 47 45 44 44 44 45 46 47 47 46 44 43 43 43 43 43 43 43 43 43 44 45 46 47 5 5 4 2 0 -1 -2 -4 -5 -7 -9 -10 -11 -11 -11 -10 -11 -13 -13 -11 -5 -1 1 0 -2 -6 -10 -12 -13 -12 -10 -8 -7 -8 -11 -15 -15 -14 -12 -11 -11 -13 -14 -16 -19 -22 -22 -20 -19 -18 -18 -18 -18 -17 -15 -11 -8 -7 -7 -7 -6 -5 -6 -8 -11 -15 -18 -22 -25 -27 -27 -26 -25 -25 -25 -27 -29 -32 -32 -29 -26 -23 -23 -25 -26 -26 -27 -28 -29 -32 -34 -36 -39 -43 -46 -48 -49 -50 -50 -49 -47 -46 -46 -47 -48 -50 -52 -53 -54 -55 -56 -57 -58 -60 -60 -59 -57 -54 -53 -51 -49 -47 -44 -42 -41 -41 -41 -41 -40 -38 -36 -36 -37 -37 -37 -36 -38 -41 -43 -45 -44 -43 -42 -42 -40 -38 -34 -30 -29 -27 -26 -26 -27 -30 -33 -36 -36 -34 -33 -32 -30 -29 -30 -32 -35 -38 -40 -38 -37 -36 -34 -33 -31 -24 -15 -6 2 4 3 3 4 5 6 6 6 6 6 5 3 2 0 -0 -1 -1 -2 -3 -3 -4 -4 -4 -4 -5 -5 -6 -8 -9 -9 -9 -8 -6 -6 -6 -7 -7 -7 -6 -5 -5 -7 -9 -11 -13 -15 -15 -15 -15 -14 -14 -14 -14 -14 -14 -13 -13 -12 -12 -13 -13 -13 -13 -12 -12 -12 -12 -11 -12 -13 -13 -14 -15 -15 -15 -15 -15 -15 -15 -15 -16 -16 -17 -18 -20 -21 -22 -23 -23 -24 -24 -23 -22 -21 -20 -19 -18 -17 -17 -17 -16 -16 -16 -15 -15 -14 -12 -10 -8 -5 -3 -1 1 3 4 5 5 7 8 10 12 15 17 18 19 20 20 20 20 20 20 21 22 23 24 25 26 26 26 27 27 27 26 25 24 22 21 20 21 21 22 23 23 24 25 26 27 28 28 29 29 29 29 31 32 34 36 37 38 38 38 39 39 38 37 36 35 35 35 36 36 37 38 39 39 40 41 42 43 43 42 42 42 43 44 45 46 46 46 46 46 46 47 47 48 49 50 51 51 51 49 47 46 44 44 44 45 45 46 46 46 44 43 43 42 43 43 43 43 43 43 44 45 46 48 2 1 -0 -1 -2 -3 -4 -5 -5 -7 -9 -10 -11 -10 -11 -12 -13 -14 -14 -11 -5 -1 0 -1 -5 -8 -11 -12 -12 -11 -9 -7 -7 -9 -12 -15 -15 -13 -11 -10 -11 -12 -14 -17 -19 -20 -18 -17 -17 -17 -17 -18 -19 -18 -15 -10 -7 -8 -8 -8 -8 -9 -12 -15 -19 -22 -24 -25 -27 -28 -28 -28 -27 -26 -26 -28 -30 -31 -30 -27 -25 -25 -26 -27 -26 -27 -28 -29 -30 -32 -34 -37 -41 -44 -46 -48 -48 -48 -46 -44 -44 -45 -48 -49 -48 -48 -49 -51 -52 -54 -56 -58 -59 -59 -59 -58 -57 -56 -55 -54 -52 -50 -47 -45 -43 -41 -40 -39 -39 -37 -36 -38 -41 -42 -41 -38 -40 -44 -46 -45 -43 -43 -45 -46 -45 -42 -37 -33 -30 -29 -28 -28 -28 -30 -33 -35 -35 -34 -32 -30 -29 -29 -30 -32 -34 -36 -38 -37 -36 -36 -36 -35 -35 -33 -28 -18 -7 0 2 2 3 4 5 5 5 5 5 4 2 1 -1 -2 -2 -3 -4 -4 -5 -5 -5 -5 -6 -6 -7 -8 -9 -10 -10 -9 -8 -7 -7 -7 -7 -7 -6 -5 -5 -6 -9 -11 -14 -15 -16 -16 -16 -15 -15 -15 -15 -15 -15 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -15 -16 -16 -16 -17 -17 -17 -17 -17 -17 -18 -18 -19 -20 -22 -23 -24 -24 -25 -26 -26 -26 -25 -24 -23 -21 -20 -19 -19 -19 -19 -19 -19 -19 -19 -19 -18 -16 -15 -13 -10 -7 -5 -3 -1 0 1 2 3 4 6 8 11 13 15 16 17 17 17 18 18 20 21 23 24 25 26 26 26 26 26 26 26 25 24 23 22 21 21 21 21 21 22 22 23 24 25 26 27 27 28 27 27 27 27 28 29 31 33 34 35 36 36 36 36 35 33 32 32 32 33 34 35 36 37 38 38 39 40 41 41 41 41 41 42 43 44 45 45 45 44 44 44 45 46 47 49 50 51 51 51 50 48 46 44 43 43 44 45 45 45 45 44 43 43 42 43 43 43 43 43 44 44 45 46 47 -1 -3 -4 -3 -3 -4 -5 -5 -6 -8 -10 -10 -10 -11 -12 -14 -16 -16 -14 -11 -5 -1 -0 -2 -5 -8 -9 -10 -10 -9 -7 -6 -7 -9 -12 -15 -15 -12 -10 -8 -9 -10 -14 -16 -18 -18 -17 -18 -19 -20 -20 -21 -21 -19 -15 -11 -10 -10 -10 -10 -11 -14 -17 -21 -24 -26 -27 -28 -30 -31 -31 -31 -30 -30 -30 -30 -30 -30 -28 -26 -25 -26 -27 -27 -27 -28 -30 -31 -33 -34 -36 -39 -42 -45 -46 -47 -47 -46 -43 -42 -43 -46 -48 -48 -47 -46 -46 -48 -51 -53 -55 -58 -59 -59 -58 -57 -56 -56 -56 -56 -55 -53 -50 -48 -46 -41 -37 -36 -37 -37 -37 -37 -38 -38 -38 -39 -41 -42 -42 -43 -43 -44 -47 -48 -48 -46 -41 -36 -33 -32 -31 -31 -30 -31 -32 -33 -33 -31 -29 -29 -29 -30 -31 -33 -34 -36 -37 -36 -36 -36 -35 -35 -36 -37 -36 -30 -19 -8 -1 1 2 2 2 3 4 4 4 3 2 0 -2 -3 -4 -5 -5 -6 -6 -6 -6 -7 -7 -8 -9 -10 -11 -11 -11 -10 -9 -9 -8 -8 -7 -6 -5 -5 -6 -8 -11 -13 -15 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -15 -14 -14 -13 -13 -13 -14 -14 -14 -14 -15 -15 -16 -17 -17 -18 -18 -18 -19 -19 -19 -19 -19 -20 -20 -21 -22 -24 -25 -26 -26 -27 -27 -28 -28 -28 -26 -25 -23 -22 -21 -21 -21 -21 -22 -22 -22 -22 -22 -22 -21 -20 -19 -17 -14 -11 -9 -7 -5 -4 -3 -2 -1 0 2 5 7 9 10 12 13 14 15 16 17 18 20 22 24 25 25 25 25 24 24 23 23 22 22 22 21 21 21 21 21 20 21 22 23 23 24 25 26 26 26 26 25 25 24 24 25 27 29 31 32 33 34 35 34 33 31 30 29 30 30 31 33 34 35 36 36 37 38 39 40 40 39 39 40 41 42 43 43 43 43 42 42 43 45 46 48 49 51 52 52 51 49 47 45 43 43 43 44 44 45 45 44 43 43 42 42 43 43 44 44 44 44 45 46 47 -3 -5 -5 -4 -4 -5 -5 -5 -6 -8 -10 -10 -10 -12 -15 -16 -16 -16 -14 -11 -6 -1 -0 -1 -4 -7 -9 -9 -8 -6 -5 -5 -7 -10 -12 -12 -11 -9 -7 -7 -8 -11 -14 -17 -18 -18 -18 -20 -22 -23 -23 -23 -21 -17 -14 -14 -14 -13 -12 -13 -15 -18 -22 -25 -27 -28 -29 -30 -32 -33 -34 -34 -34 -33 -32 -32 -31 -29 -27 -25 -25 -26 -28 -30 -32 -33 -34 -34 -36 -37 -38 -40 -42 -44 -45 -45 -45 -43 -42 -42 -44 -47 -48 -47 -45 -43 -43 -45 -49 -52 -55 -57 -59 -59 -58 -56 -55 -55 -55 -56 -56 -55 -53 -50 -47 -44 -40 -38 -38 -38 -39 -38 -38 -37 -37 -38 -38 -39 -40 -42 -43 -45 -48 -49 -49 -47 -43 -38 -36 -34 -34 -33 -33 -33 -32 -31 -30 -29 -30 -31 -31 -32 -32 -34 -35 -36 -37 -37 -36 -36 -35 -34 -35 -36 -37 -36 -30 -20 -9 -3 -0 -0 -1 0 1 2 2 2 1 -1 -2 -4 -5 -6 -7 -7 -7 -7 -8 -8 -9 -9 -10 -11 -12 -12 -11 -11 -10 -10 -9 -8 -7 -5 -5 -6 -7 -10 -13 -15 -16 -17 -17 -17 -17 -17 -17 -17 -17 -17 -16 -16 -15 -15 -14 -14 -14 -14 -15 -15 -16 -16 -17 -18 -18 -19 -19 -20 -20 -20 -21 -21 -21 -21 -21 -22 -23 -24 -26 -27 -28 -28 -28 -28 -29 -29 -29 -28 -27 -25 -23 -22 -22 -22 -22 -23 -23 -24 -24 -24 -24 -24 -23 -22 -21 -19 -17 -15 -12 -10 -8 -7 -6 -6 -4 -3 -1 0 2 4 5 7 8 10 11 13 14 16 18 19 20 21 21 20 20 19 19 18 19 19 20 20 21 21 20 20 20 20 20 21 22 23 24 24 24 24 25 24 24 23 22 22 22 23 26 28 30 32 33 34 34 32 31 29 28 28 28 29 30 31 32 33 34 35 37 38 38 38 37 37 37 38 39 40 41 41 41 40 40 41 43 45 47 49 50 51 52 51 49 47 45 43 42 42 43 44 44 44 44 43 42 42 42 42 43 44 44 44 45 46 46 47 -5 -5 -5 -5 -5 -5 -5 -5 -6 -8 -10 -11 -12 -15 -17 -17 -17 -16 -14 -12 -7 -2 -0 -1 -3 -7 -9 -9 -8 -6 -5 -5 -7 -9 -10 -9 -8 -7 -8 -9 -11 -14 -17 -20 -20 -20 -21 -23 -24 -24 -23 -21 -18 -16 -16 -17 -18 -17 -16 -16 -17 -21 -25 -28 -29 -29 -30 -31 -33 -34 -34 -35 -35 -35 -33 -32 -32 -30 -27 -24 -24 -26 -29 -32 -35 -36 -36 -36 -37 -38 -39 -40 -41 -43 -43 -43 -43 -42 -41 -43 -47 -49 -49 -46 -43 -42 -42 -44 -48 -51 -54 -56 -58 -59 -59 -57 -55 -53 -53 -54 -55 -55 -53 -51 -49 -47 -44 -41 -39 -40 -40 -39 -38 -38 -37 -38 -38 -39 -40 -41 -42 -44 -47 -49 -49 -47 -43 -40 -37 -36 -36 -36 -36 -35 -35 -33 -30 -30 -32 -34 -35 -35 -34 -35 -36 -37 -38 -37 -37 -36 -35 -34 -34 -35 -36 -37 -36 -31 -21 -11 -4 -3 -4 -3 -2 -1 0 1 0 -1 -3 -5 -6 -7 -8 -9 -9 -8 -9 -9 -10 -10 -11 -11 -12 -12 -12 -11 -11 -11 -10 -8 -7 -6 -6 -7 -9 -12 -14 -16 -17 -18 -18 -18 -18 -18 -18 -18 -18 -17 -17 -16 -16 -16 -15 -15 -15 -16 -16 -17 -18 -18 -19 -19 -20 -21 -21 -21 -22 -22 -23 -23 -23 -23 -24 -24 -26 -28 -29 -30 -30 -30 -30 -29 -29 -29 -29 -27 -26 -24 -23 -22 -22 -22 -22 -23 -24 -24 -25 -25 -24 -24 -23 -22 -22 -20 -19 -16 -14 -12 -10 -9 -8 -8 -7 -6 -5 -5 -4 -3 -2 0 2 4 7 9 11 13 14 15 15 15 15 14 14 13 13 13 14 15 17 18 19 19 19 19 19 19 20 21 22 23 23 23 23 23 22 22 22 21 20 20 20 21 24 26 28 30 32 33 33 32 30 28 27 26 26 27 28 29 30 31 32 33 34 36 36 36 35 34 33 33 35 36 38 38 38 38 38 39 40 43 45 48 50 51 51 51 50 48 46 44 42 42 42 43 43 44 43 42 41 41 41 42 43 44 45 45 46 46 47 47 -6 -6 -5 -5 -6 -6 -5 -5 -6 -9 -11 -14 -16 -17 -17 -16 -15 -14 -12 -10 -7 -3 -1 -1 -3 -6 -9 -8 -7 -6 -5 -5 -6 -8 -9 -9 -8 -9 -10 -12 -14 -17 -20 -22 -23 -23 -23 -23 -23 -22 -20 -18 -17 -17 -19 -20 -22 -21 -20 -19 -20 -23 -27 -29 -30 -30 -30 -31 -32 -32 -33 -34 -35 -34 -34 -33 -33 -31 -27 -24 -23 -24 -28 -32 -35 -35 -35 -35 -36 -37 -38 -39 -41 -41 -41 -41 -41 -41 -42 -46 -49 -50 -48 -45 -42 -41 -42 -45 -48 -50 -53 -55 -58 -59 -58 -56 -54 -52 -51 -52 -53 -53 -52 -50 -50 -49 -45 -42 -40 -41 -40 -40 -39 -39 -38 -38 -39 -41 -41 -41 -42 -44 -47 -48 -48 -47 -44 -41 -39 -38 -38 -37 -37 -38 -37 -35 -31 -31 -34 -38 -41 -42 -40 -37 -37 -38 -40 -40 -40 -38 -36 -35 -35 -36 -36 -37 -36 -36 -32 -23 -13 -6 -7 -7 -7 -5 -3 -2 -2 -3 -4 -6 -7 -9 -9 -10 -10 -9 -10 -10 -10 -11 -11 -12 -12 -12 -12 -12 -11 -11 -10 -9 -7 -7 -8 -9 -11 -13 -15 -17 -18 -19 -19 -19 -19 -19 -19 -18 -18 -17 -17 -17 -17 -17 -17 -17 -17 -17 -18 -19 -19 -20 -21 -21 -22 -22 -23 -23 -24 -24 -25 -25 -25 -25 -26 -27 -29 -31 -32 -32 -32 -31 -30 -29 -29 -28 -27 -26 -24 -23 -22 -22 -22 -22 -22 -22 -23 -24 -24 -24 -24 -23 -23 -22 -21 -20 -19 -17 -15 -13 -12 -11 -10 -10 -10 -10 -10 -10 -10 -9 -8 -7 -4 -1 2 5 7 9 10 10 10 10 10 9 9 9 9 9 10 12 14 15 16 17 17 18 18 19 19 20 22 22 23 22 21 21 20 20 19 19 19 19 19 19 21 24 26 28 29 30 31 30 29 28 27 26 25 26 26 27 28 29 30 31 32 33 34 33 32 30 29 29 30 32 34 36 36 36 36 36 38 40 43 46 48 50 50 50 49 47 46 44 42 41 41 41 42 43 43 42 41 40 40 41 42 44 45 46 46 46 47 47 -7 -7 -6 -5 -6 -5 -5 -6 -8 -12 -15 -17 -18 -18 -17 -15 -13 -10 -9 -8 -6 -4 -2 -1 -2 -5 -7 -7 -7 -6 -5 -5 -6 -8 -10 -11 -11 -13 -14 -15 -17 -20 -22 -24 -24 -23 -21 -20 -19 -18 -17 -16 -18 -20 -22 -25 -26 -25 -23 -22 -22 -24 -27 -29 -29 -29 -29 -30 -30 -31 -32 -34 -35 -34 -35 -35 -34 -31 -27 -24 -22 -22 -26 -30 -31 -32 -32 -34 -34 -35 -37 -39 -40 -40 -40 -40 -41 -41 -43 -48 -51 -50 -47 -43 -41 -42 -43 -45 -47 -50 -52 -55 -56 -57 -57 -55 -53 -51 -50 -51 -51 -50 -50 -49 -49 -48 -45 -42 -41 -41 -41 -41 -40 -39 -38 -38 -38 -39 -40 -41 -43 -44 -46 -48 -49 -48 -45 -42 -40 -38 -38 -38 -38 -38 -37 -35 -32 -32 -35 -39 -43 -45 -43 -40 -38 -39 -42 -44 -44 -43 -40 -37 -37 -38 -38 -37 -36 -37 -39 -35 -25 -12 -11 -11 -11 -10 -8 -6 -5 -5 -6 -7 -8 -10 -10 -11 -11 -10 -10 -11 -11 -11 -11 -12 -12 -12 -12 -12 -12 -11 -10 -9 -9 -9 -10 -11 -13 -15 -17 -19 -20 -21 -20 -20 -20 -20 -19 -19 -18 -18 -18 -18 -18 -18 -19 -19 -19 -19 -19 -20 -21 -21 -22 -22 -23 -23 -24 -24 -25 -26 -26 -27 -27 -28 -29 -30 -32 -33 -34 -33 -32 -31 -29 -28 -27 -26 -25 -24 -23 -22 -21 -21 -21 -21 -21 -21 -22 -22 -22 -23 -22 -22 -22 -21 -21 -21 -19 -18 -16 -14 -13 -12 -12 -12 -13 -13 -13 -14 -14 -14 -13 -11 -8 -5 -2 1 3 5 6 6 6 6 6 6 6 6 6 6 7 8 10 11 13 14 15 16 17 17 18 20 21 22 22 22 21 19 18 18 17 17 17 17 17 18 19 21 23 25 26 27 27 28 28 27 26 25 25 25 25 26 27 27 28 28 29 30 30 31 29 27 26 25 26 28 31 33 35 35 34 34 36 38 41 44 47 48 49 48 47 46 45 44 42 41 40 40 41 42 43 42 41 40 40 40 42 44 45 46 47 47 47 46 -7 -7 -6 -5 -5 -4 -5 -8 -11 -15 -17 -17 -17 -17 -16 -13 -10 -8 -6 -6 -6 -5 -3 -1 -2 -4 -6 -7 -6 -6 -5 -5 -7 -10 -13 -15 -16 -16 -17 -17 -19 -21 -22 -23 -23 -21 -18 -16 -15 -15 -16 -18 -21 -24 -26 -29 -29 -28 -25 -24 -25 -26 -28 -28 -28 -28 -28 -27 -28 -30 -32 -33 -33 -34 -35 -35 -33 -30 -27 -23 -20 -20 -23 -25 -28 -29 -30 -32 -31 -32 -35 -37 -39 -39 -40 -41 -42 -43 -45 -50 -51 -49 -45 -42 -41 -42 -44 -46 -48 -51 -53 -55 -56 -57 -56 -54 -52 -51 -50 -50 -50 -49 -48 -47 -46 -45 -43 -41 -41 -40 -41 -41 -40 -39 -38 -37 -36 -36 -38 -41 -43 -44 -46 -47 -48 -49 -47 -44 -41 -39 -38 -38 -38 -38 -37 -34 -33 -33 -36 -39 -43 -45 -43 -41 -40 -41 -44 -47 -47 -45 -42 -41 -40 -39 -38 -37 -37 -39 -41 -39 -32 -20 -17 -16 -16 -15 -14 -11 -9 -8 -8 -8 -9 -11 -11 -12 -12 -11 -11 -11 -11 -11 -12 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -11 -11 -13 -14 -17 -19 -20 -21 -21 -21 -21 -21 -21 -20 -19 -19 -18 -19 -19 -20 -21 -21 -20 -20 -20 -20 -21 -22 -23 -23 -24 -24 -24 -25 -26 -26 -27 -28 -29 -29 -30 -31 -32 -33 -34 -34 -33 -31 -29 -28 -26 -25 -24 -23 -22 -21 -20 -20 -20 -19 -19 -20 -20 -20 -21 -21 -22 -22 -22 -22 -22 -22 -21 -21 -19 -18 -16 -15 -15 -14 -14 -14 -14 -14 -14 -15 -15 -14 -13 -10 -8 -5 -2 0 2 3 3 3 3 3 3 3 3 4 4 5 6 7 8 9 11 12 13 14 15 16 18 19 21 22 21 20 18 17 16 16 16 16 16 16 16 16 17 19 20 21 22 24 25 25 25 25 24 24 24 25 25 26 26 26 26 26 26 27 28 27 25 23 22 23 25 28 31 33 33 33 32 33 35 37 41 44 46 46 45 44 44 44 43 42 41 40 40 40 41 42 42 41 40 40 40 41 43 45 46 47 47 46 46 -7 -6 -5 -4 -4 -4 -7 -10 -13 -15 -16 -16 -17 -16 -15 -11 -7 -5 -5 -5 -6 -5 -3 -2 -2 -4 -6 -7 -7 -7 -7 -8 -10 -14 -17 -19 -18 -18 -17 -18 -19 -21 -22 -22 -20 -17 -14 -13 -14 -15 -18 -22 -25 -27 -29 -31 -31 -29 -27 -27 -27 -28 -28 -26 -26 -26 -26 -25 -27 -29 -30 -30 -30 -32 -33 -32 -31 -29 -26 -22 -19 -18 -20 -24 -26 -28 -30 -31 -31 -32 -34 -37 -40 -42 -43 -44 -46 -47 -49 -52 -51 -47 -42 -40 -42 -44 -46 -48 -50 -53 -54 -55 -56 -57 -56 -54 -53 -51 -50 -50 -49 -49 -48 -46 -44 -42 -41 -41 -40 -40 -40 -41 -41 -39 -38 -37 -36 -36 -38 -41 -43 -43 -43 -44 -46 -48 -48 -47 -44 -40 -38 -38 -39 -39 -38 -35 -35 -35 -37 -40 -42 -43 -43 -42 -41 -42 -46 -51 -52 -50 -46 -44 -43 -41 -39 -38 -39 -41 -43 -44 -40 -31 -26 -24 -22 -20 -20 -18 -15 -12 -10 -10 -10 -11 -12 -13 -13 -12 -12 -11 -11 -11 -12 -12 -12 -12 -12 -13 -12 -12 -11 -11 -12 -12 -13 -14 -16 -18 -20 -21 -22 -22 -22 -21 -21 -21 -21 -20 -20 -20 -20 -21 -22 -23 -22 -22 -22 -21 -22 -22 -23 -24 -24 -25 -25 -25 -26 -26 -28 -28 -29 -30 -31 -31 -32 -33 -34 -34 -33 -31 -29 -27 -25 -23 -22 -21 -21 -20 -20 -19 -19 -18 -18 -18 -18 -19 -19 -20 -21 -22 -22 -22 -23 -23 -23 -23 -23 -22 -21 -20 -18 -17 -16 -15 -14 -14 -14 -14 -14 -14 -14 -13 -11 -9 -7 -5 -3 -1 0 1 1 1 0 0 0 1 2 2 3 3 4 5 6 7 8 9 10 12 13 15 17 19 20 20 18 17 16 15 15 15 15 15 14 13 12 13 14 16 17 19 20 22 23 23 23 22 22 23 23 23 24 24 24 24 24 24 24 25 25 24 22 21 21 22 25 28 30 31 31 30 30 31 33 36 40 43 43 43 42 42 42 42 42 41 40 40 40 41 42 42 41 41 40 40 41 43 44 45 46 46 46 45 -7 -6 -5 -4 -4 -6 -9 -12 -14 -15 -15 -16 -16 -15 -13 -9 -5 -4 -5 -5 -6 -5 -4 -3 -3 -5 -6 -7 -8 -8 -9 -10 -13 -16 -18 -18 -17 -16 -17 -18 -19 -20 -20 -19 -17 -14 -13 -14 -16 -18 -21 -24 -26 -29 -31 -32 -31 -31 -30 -29 -29 -29 -26 -24 -23 -24 -25 -24 -26 -28 -28 -27 -27 -28 -29 -29 -29 -28 -26 -22 -19 -18 -20 -23 -26 -29 -32 -33 -34 -34 -35 -38 -42 -45 -47 -48 -49 -49 -50 -50 -48 -44 -41 -41 -44 -46 -49 -51 -53 -54 -55 -55 -56 -56 -56 -55 -53 -51 -50 -50 -49 -48 -47 -45 -43 -42 -42 -42 -42 -42 -40 -39 -40 -40 -40 -38 -37 -37 -39 -41 -42 -42 -43 -43 -44 -46 -47 -46 -44 -42 -39 -39 -40 -40 -39 -37 -37 -38 -39 -41 -42 -42 -42 -42 -42 -43 -47 -52 -55 -53 -50 -48 -46 -43 -42 -41 -42 -43 -46 -48 -47 -43 -38 -34 -29 -24 -23 -23 -21 -17 -14 -12 -12 -13 -13 -14 -14 -14 -13 -12 -12 -11 -12 -12 -12 -13 -13 -13 -12 -12 -12 -12 -12 -13 -14 -15 -17 -19 -20 -21 -22 -22 -22 -22 -22 -22 -21 -21 -21 -22 -22 -23 -24 -24 -24 -23 -23 -23 -23 -24 -24 -25 -25 -25 -25 -25 -26 -27 -28 -29 -30 -31 -31 -32 -32 -33 -33 -32 -31 -29 -27 -25 -23 -21 -20 -19 -19 -19 -19 -19 -18 -17 -17 -17 -17 -18 -19 -21 -22 -23 -23 -24 -24 -25 -25 -26 -26 -25 -25 -23 -21 -20 -18 -16 -15 -14 -13 -13 -13 -13 -13 -12 -11 -10 -8 -7 -5 -4 -2 -1 -1 -1 -1 -2 -1 -1 0 1 1 2 2 2 3 4 5 6 7 8 10 11 13 15 17 17 16 15 15 14 14 14 14 13 11 10 8 8 10 12 14 16 18 20 21 21 21 20 20 20 21 21 22 23 23 23 22 22 22 23 23 23 22 21 19 20 22 25 27 29 28 28 27 27 29 31 33 36 39 38 39 40 40 41 41 41 41 40 40 40 41 42 42 41 41 40 41 42 43 44 45 45 45 45 -7 -6 -5 -5 -7 -9 -12 -14 -14 -14 -15 -16 -16 -14 -11 -6 -4 -4 -6 -6 -6 -5 -5 -4 -5 -5 -6 -7 -8 -9 -11 -13 -14 -15 -15 -15 -15 -16 -18 -19 -19 -19 -19 -17 -15 -14 -13 -15 -18 -20 -22 -25 -27 -30 -32 -33 -33 -33 -32 -31 -31 -29 -25 -21 -21 -22 -23 -24 -25 -26 -26 -25 -25 -25 -25 -26 -26 -26 -24 -23 -21 -21 -22 -24 -27 -30 -33 -35 -36 -36 -37 -39 -43 -47 -50 -51 -50 -49 -47 -47 -45 -42 -40 -42 -46 -49 -52 -55 -57 -57 -57 -56 -56 -56 -56 -55 -53 -52 -51 -51 -50 -49 -47 -45 -42 -42 -42 -43 -44 -45 -44 -41 -39 -40 -41 -39 -38 -38 -39 -40 -41 -41 -42 -43 -44 -46 -46 -46 -45 -43 -41 -41 -41 -40 -38 -37 -39 -40 -42 -43 -44 -43 -43 -42 -42 -43 -46 -51 -53 -53 -52 -52 -50 -47 -45 -44 -45 -47 -48 -51 -52 -51 -46 -41 -34 -28 -26 -27 -26 -23 -19 -16 -15 -14 -15 -15 -15 -15 -14 -13 -12 -12 -12 -12 -13 -13 -14 -14 -13 -13 -12 -12 -13 -14 -15 -17 -18 -19 -20 -21 -21 -22 -22 -22 -22 -22 -22 -22 -23 -23 -24 -25 -25 -25 -25 -24 -24 -25 -25 -25 -26 -26 -26 -25 -25 -26 -27 -28 -28 -29 -30 -30 -31 -31 -32 -31 -31 -30 -28 -27 -25 -24 -22 -20 -19 -19 -19 -19 -19 -19 -18 -17 -17 -17 -17 -18 -20 -21 -23 -24 -25 -25 -25 -26 -27 -27 -28 -28 -28 -26 -24 -22 -20 -18 -17 -15 -14 -14 -13 -13 -13 -13 -12 -11 -10 -8 -7 -6 -5 -3 -3 -2 -3 -3 -3 -2 -1 -1 -0 -0 -1 -1 -0 1 1 3 4 5 6 7 9 10 12 13 13 13 13 13 13 13 12 10 8 6 5 5 6 10 13 15 17 18 19 19 18 17 17 17 18 18 20 21 21 21 21 21 20 21 22 22 22 20 18 18 19 21 24 26 26 25 24 24 24 24 23 26 30 31 35 37 38 39 40 41 41 40 40 40 40 41 41 42 41 41 41 41 42 43 44 45 45 45 -5 -5 -6 -7 -11 -13 -15 -15 -15 -14 -14 -14 -13 -11 -8 -6 -4 -5 -6 -6 -6 -6 -6 -5 -5 -5 -6 -7 -8 -10 -12 -13 -13 -12 -12 -12 -14 -17 -19 -19 -18 -18 -18 -17 -15 -14 -13 -15 -17 -20 -23 -25 -28 -31 -34 -35 -35 -33 -32 -32 -31 -29 -24 -20 -19 -20 -22 -23 -24 -25 -24 -23 -22 -22 -23 -24 -25 -25 -24 -24 -24 -24 -25 -26 -28 -32 -35 -37 -37 -37 -38 -39 -43 -49 -52 -52 -51 -47 -44 -43 -41 -40 -40 -43 -47 -51 -55 -58 -61 -61 -60 -58 -57 -56 -56 -55 -53 -52 -52 -52 -51 -49 -47 -44 -42 -42 -42 -43 -43 -43 -42 -40 -39 -38 -39 -39 -39 -39 -40 -41 -41 -41 -41 -41 -43 -44 -44 -44 -44 -43 -42 -41 -39 -38 -37 -38 -41 -43 -44 -45 -45 -44 -44 -45 -46 -46 -46 -49 -51 -53 -53 -55 -54 -51 -47 -46 -49 -50 -52 -53 -55 -55 -50 -44 -36 -31 -30 -30 -30 -28 -25 -21 -18 -17 -17 -17 -17 -16 -15 -14 -13 -13 -13 -13 -14 -14 -15 -15 -14 -14 -13 -13 -13 -14 -16 -17 -18 -19 -20 -20 -21 -21 -22 -22 -23 -23 -24 -24 -24 -25 -25 -25 -26 -25 -25 -25 -26 -27 -27 -27 -27 -27 -26 -26 -25 -26 -27 -28 -28 -29 -29 -30 -30 -30 -30 -30 -29 -28 -27 -26 -25 -23 -22 -20 -19 -19 -19 -19 -19 -19 -18 -18 -17 -17 -18 -19 -20 -22 -24 -26 -26 -27 -27 -28 -28 -29 -29 -30 -29 -28 -27 -25 -23 -21 -19 -17 -16 -15 -14 -14 -14 -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 1 2 3 4 5 6 8 9 10 10 10 10 10 10 9 7 4 3 2 2 3 7 11 14 16 16 17 17 16 13 11 11 13 15 16 17 19 20 20 20 19 19 20 21 21 20 18 16 16 18 20 22 23 22 21 20 19 14 11 12 17 18 26 32 36 38 39 40 41 41 40 39 39 40 40 41 41 41 41 41 42 42 43 43 44 44 -4 -5 -7 -10 -13 -16 -17 -17 -16 -14 -12 -11 -10 -9 -7 -7 -6 -6 -6 -7 -8 -8 -7 -6 -6 -6 -6 -8 -9 -12 -13 -13 -12 -11 -11 -13 -17 -20 -20 -18 -17 -17 -18 -17 -16 -14 -13 -14 -16 -19 -22 -25 -29 -33 -35 -35 -35 -33 -32 -31 -30 -27 -22 -19 -18 -19 -21 -23 -23 -23 -22 -21 -20 -21 -22 -23 -24 -24 -25 -25 -26 -26 -28 -29 -32 -34 -36 -36 -36 -36 -38 -40 -44 -48 -51 -52 -50 -46 -41 -40 -39 -39 -41 -45 -50 -54 -58 -61 -63 -64 -63 -61 -59 -57 -55 -54 -52 -52 -52 -52 -51 -48 -45 -42 -41 -41 -43 -44 -44 -42 -41 -40 -38 -37 -38 -41 -41 -41 -40 -41 -41 -41 -41 -41 -42 -42 -43 -43 -44 -43 -44 -43 -41 -39 -38 -39 -43 -47 -49 -48 -46 -45 -45 -47 -49 -49 -47 -47 -48 -50 -52 -55 -56 -53 -49 -48 -51 -53 -54 -56 -57 -59 -54 -46 -40 -36 -34 -32 -33 -34 -32 -27 -23 -20 -19 -19 -18 -18 -17 -16 -15 -14 -14 -15 -15 -16 -17 -16 -16 -15 -14 -14 -14 -15 -16 -17 -18 -19 -19 -20 -21 -22 -22 -23 -24 -25 -25 -25 -25 -26 -26 -26 -25 -25 -25 -26 -27 -28 -29 -29 -28 -27 -26 -26 -26 -26 -27 -27 -28 -28 -28 -28 -28 -28 -28 -28 -28 -27 -27 -26 -25 -24 -22 -20 -19 -19 -18 -19 -19 -19 -19 -19 -19 -19 -19 -20 -21 -23 -25 -27 -28 -29 -30 -30 -30 -30 -31 -31 -31 -30 -29 -27 -26 -24 -22 -20 -18 -17 -16 -16 -15 -15 -14 -14 -13 -12 -11 -11 -10 -8 -7 -6 -5 -5 -5 -5 -5 -5 -4 -4 -5 -5 -6 -5 -5 -4 -2 -1 -0 1 1 3 5 7 8 9 8 7 7 6 5 3 1 0 -1 -1 1 3 7 11 13 13 12 12 10 7 1 2 6 9 10 11 15 17 17 18 18 17 17 18 19 19 16 14 14 15 17 19 20 20 19 17 13 5 1 2 4 5 13 22 30 36 37 39 40 40 40 39 39 38 39 40 41 42 42 42 42 42 42 42 43 43 -3 -7 -10 -12 -15 -16 -18 -17 -15 -13 -12 -10 -9 -8 -8 -7 -7 -7 -8 -8 -9 -9 -9 -8 -8 -8 -8 -9 -11 -12 -13 -12 -11 -11 -13 -17 -21 -22 -20 -18 -18 -19 -19 -18 -16 -14 -14 -15 -17 -20 -23 -26 -31 -34 -35 -35 -34 -32 -31 -30 -27 -24 -20 -18 -17 -18 -20 -23 -23 -22 -20 -19 -18 -21 -22 -23 -23 -24 -26 -26 -26 -28 -30 -33 -36 -38 -37 -35 -34 -36 -39 -43 -45 -48 -49 -50 -49 -45 -41 -39 -39 -40 -43 -48 -52 -56 -60 -63 -65 -65 -64 -62 -59 -57 -55 -52 -50 -50 -51 -53 -52 -49 -44 -40 -39 -40 -42 -44 -45 -44 -42 -40 -39 -38 -38 -41 -42 -42 -40 -40 -40 -41 -41 -41 -41 -42 -43 -44 -44 -44 -44 -44 -43 -41 -40 -41 -43 -46 -48 -49 -50 -49 -48 -48 -48 -48 -47 -47 -48 -50 -52 -55 -56 -55 -53 -51 -51 -54 -56 -58 -59 -60 -57 -51 -46 -43 -40 -37 -37 -38 -39 -35 -28 -24 -22 -21 -20 -19 -18 -18 -17 -16 -16 -17 -18 -19 -19 -18 -17 -16 -15 -14 -15 -15 -16 -17 -18 -19 -19 -20 -21 -22 -23 -24 -25 -26 -26 -26 -26 -26 -26 -26 -25 -25 -26 -27 -28 -30 -30 -30 -29 -28 -27 -26 -26 -26 -26 -27 -27 -27 -27 -27 -27 -27 -27 -27 -27 -28 -28 -27 -26 -24 -23 -21 -20 -19 -19 -19 -19 -20 -21 -21 -22 -22 -21 -22 -22 -24 -26 -29 -31 -32 -32 -32 -32 -32 -32 -33 -32 -31 -30 -29 -28 -26 -25 -23 -21 -19 -18 -17 -17 -17 -16 -15 -15 -14 -13 -13 -12 -11 -9 -8 -7 -7 -6 -7 -7 -6 -6 -6 -7 -8 -9 -8 -8 -6 -5 -4 -3 -2 -2 -0 2 4 6 7 7 5 4 3 2 0 -1 -2 -3 -3 -3 -2 1 4 8 7 4 2 -0 -4 -10 -10 -5 -1 0 1 8 10 12 15 16 15 15 15 16 16 15 13 12 12 13 15 16 17 16 13 7 -1 -5 -4 -0 6 6 11 22 34 36 38 39 40 40 39 38 37 37 38 39 41 42 43 42 42 41 41 41 42 -4 -7 -9 -11 -14 -15 -16 -16 -15 -13 -11 -10 -9 -9 -8 -8 -8 -9 -8 -9 -10 -11 -11 -11 -11 -11 -10 -11 -12 -13 -12 -12 -13 -15 -18 -21 -24 -23 -21 -21 -22 -23 -22 -19 -18 -17 -17 -18 -20 -23 -26 -29 -32 -34 -35 -35 -34 -32 -30 -27 -24 -20 -17 -17 -18 -20 -21 -22 -22 -20 -18 -17 -18 -21 -22 -22 -23 -24 -25 -26 -26 -28 -31 -35 -38 -39 -37 -35 -36 -39 -42 -44 -46 -47 -48 -49 -48 -45 -41 -39 -40 -43 -47 -50 -54 -57 -61 -63 -64 -64 -63 -61 -59 -57 -53 -50 -48 -48 -50 -52 -52 -49 -44 -39 -38 -38 -39 -41 -42 -42 -41 -40 -40 -39 -38 -40 -42 -42 -40 -39 -39 -40 -41 -42 -41 -41 -43 -44 -44 -44 -45 -45 -44 -43 -42 -42 -43 -44 -46 -49 -52 -54 -52 -49 -48 -48 -49 -49 -49 -50 -51 -53 -56 -58 -57 -56 -55 -56 -58 -59 -61 -61 -59 -56 -53 -53 -51 -45 -41 -41 -44 -42 -35 -30 -26 -23 -22 -21 -20 -19 -18 -18 -18 -19 -20 -20 -20 -19 -18 -16 -15 -15 -15 -16 -17 -18 -18 -19 -20 -21 -22 -23 -25 -26 -26 -27 -27 -27 -27 -27 -26 -25 -25 -25 -26 -27 -29 -30 -31 -31 -30 -29 -28 -27 -26 -26 -26 -27 -27 -27 -26 -26 -25 -25 -26 -27 -27 -28 -28 -28 -27 -25 -23 -22 -21 -20 -19 -19 -20 -21 -22 -23 -24 -24 -24 -24 -24 -26 -28 -31 -34 -35 -35 -35 -34 -34 -35 -35 -34 -34 -33 -31 -30 -29 -27 -25 -24 -22 -21 -19 -19 -18 -18 -17 -17 -16 -16 -15 -14 -13 -12 -10 -9 -8 -8 -8 -8 -8 -8 -8 -10 -11 -11 -11 -10 -8 -7 -6 -5 -4 -4 -3 -1 2 5 6 6 4 1 -0 -1 -2 -3 -5 -6 -7 -8 -9 -9 -7 2 -1 -7 -11 -12 -13 -12 -12 -12 -13 -12 -9 -3 -0 3 9 12 13 12 11 12 13 13 12 10 10 10 12 13 14 14 11 2 -5 -7 -5 -2 11 12 12 19 31 34 36 38 39 39 38 37 36 36 36 38 40 42 43 43 42 41 40 40 39 -5 -7 -9 -11 -14 -16 -16 -15 -14 -13 -11 -9 -9 -9 -10 -10 -11 -9 -8 -9 -11 -14 -15 -15 -14 -13 -12 -12 -13 -13 -13 -14 -16 -19 -22 -24 -25 -24 -25 -27 -28 -28 -26 -23 -22 -22 -22 -23 -25 -28 -30 -31 -33 -33 -34 -34 -33 -31 -27 -23 -20 -17 -16 -17 -20 -22 -23 -23 -21 -19 -17 -17 -19 -21 -22 -23 -23 -24 -25 -26 -27 -30 -34 -37 -39 -40 -39 -38 -40 -43 -44 -44 -44 -45 -48 -48 -46 -42 -39 -39 -42 -45 -48 -51 -53 -56 -59 -61 -64 -65 -63 -60 -57 -53 -50 -47 -46 -47 -49 -51 -51 -48 -44 -40 -38 -38 -38 -38 -39 -40 -40 -40 -40 -41 -40 -40 -41 -41 -40 -38 -37 -38 -40 -42 -42 -42 -43 -43 -44 -45 -47 -47 -46 -44 -44 -44 -44 -44 -45 -47 -52 -56 -55 -52 -49 -49 -50 -51 -50 -50 -51 -52 -55 -57 -59 -59 -60 -61 -62 -62 -61 -61 -61 -61 -62 -63 -64 -57 -45 -38 -39 -45 -43 -38 -32 -28 -25 -24 -22 -21 -20 -19 -19 -20 -21 -21 -21 -20 -19 -17 -17 -16 -17 -17 -18 -19 -19 -20 -21 -22 -24 -25 -26 -27 -27 -27 -27 -27 -27 -27 -26 -25 -25 -25 -26 -28 -29 -31 -32 -32 -31 -30 -29 -28 -27 -27 -27 -27 -27 -26 -26 -25 -25 -25 -26 -27 -28 -29 -29 -28 -27 -26 -24 -23 -22 -21 -21 -21 -21 -23 -24 -25 -26 -26 -26 -26 -27 -29 -31 -34 -36 -38 -38 -38 -37 -37 -37 -37 -37 -36 -35 -34 -32 -30 -29 -27 -26 -24 -23 -21 -20 -20 -19 -19 -19 -19 -18 -18 -17 -16 -14 -13 -11 -10 -9 -9 -9 -9 -10 -11 -12 -13 -14 -14 -12 -10 -8 -7 -6 -6 -5 -4 -3 -0 3 5 5 2 -1 -4 -4 -5 -6 -10 -14 -15 -15 -18 -20 -18 -8 -10 -15 -17 -17 -16 -9 -6 -9 -15 -17 -15 -14 -12 -9 -2 6 9 9 9 9 10 11 11 9 8 8 9 10 11 12 10 2 -5 -6 -3 -5 8 16 21 24 29 32 35 37 38 38 37 36 35 35 35 36 38 41 42 42 42 41 40 38 37 -5 -7 -9 -12 -14 -15 -15 -15 -14 -13 -10 -9 -9 -10 -11 -13 -12 -10 -9 -10 -13 -17 -19 -18 -16 -13 -11 -12 -14 -15 -16 -18 -20 -23 -25 -26 -27 -28 -30 -32 -33 -32 -30 -28 -26 -26 -26 -27 -29 -30 -31 -31 -31 -30 -29 -29 -29 -26 -21 -18 -17 -16 -16 -19 -22 -24 -24 -23 -20 -17 -16 -17 -20 -22 -22 -23 -23 -23 -24 -26 -28 -31 -35 -38 -40 -40 -40 -40 -42 -44 -44 -43 -42 -46 -51 -49 -45 -40 -39 -42 -45 -48 -50 -52 -53 -55 -57 -61 -64 -66 -64 -59 -54 -49 -47 -46 -46 -47 -49 -50 -49 -48 -46 -43 -41 -39 -38 -38 -38 -38 -39 -39 -40 -40 -40 -42 -43 -43 -41 -40 -38 -38 -39 -41 -42 -42 -41 -42 -43 -45 -48 -49 -47 -46 -45 -46 -46 -45 -45 -46 -50 -54 -55 -53 -51 -51 -52 -53 -53 -52 -51 -52 -54 -57 -59 -62 -63 -64 -63 -62 -62 -62 -63 -63 -63 -64 -64 -60 -50 -40 -34 -38 -45 -47 -43 -35 -30 -27 -25 -22 -21 -20 -20 -21 -21 -22 -21 -20 -19 -18 -18 -18 -18 -18 -19 -20 -21 -22 -23 -24 -25 -27 -27 -28 -28 -28 -27 -27 -27 -27 -26 -26 -25 -26 -27 -28 -29 -31 -32 -32 -32 -32 -31 -30 -29 -28 -27 -27 -27 -27 -26 -25 -25 -25 -26 -27 -28 -29 -29 -28 -27 -26 -25 -25 -24 -23 -23 -23 -23 -24 -26 -27 -28 -28 -28 -29 -30 -31 -34 -36 -38 -40 -40 -40 -39 -38 -38 -38 -38 -38 -37 -35 -34 -32 -30 -29 -27 -26 -25 -23 -22 -22 -21 -21 -22 -22 -21 -20 -19 -18 -16 -15 -13 -11 -10 -9 -9 -10 -11 -12 -14 -15 -16 -16 -14 -12 -10 -9 -7 -7 -6 -5 -4 -2 1 3 4 2 -2 -7 -10 -11 -14 -19 -26 -26 -24 -25 -27 -25 -18 -19 -19 -17 -16 -13 -9 -7 -9 -14 -20 -19 -16 -15 -17 -14 -5 3 7 7 6 8 9 9 8 7 6 7 7 7 8 8 4 -2 -5 1 -8 -1 12 25 26 28 30 32 35 36 37 36 35 34 34 34 34 36 39 40 41 41 40 39 37 36 -6 -8 -10 -12 -13 -14 -15 -15 -14 -13 -10 -9 -10 -12 -14 -15 -14 -11 -10 -13 -17 -22 -22 -21 -17 -13 -11 -12 -15 -17 -20 -22 -24 -25 -27 -29 -30 -32 -33 -34 -35 -34 -32 -30 -28 -27 -27 -27 -28 -29 -29 -28 -26 -24 -24 -24 -23 -19 -15 -13 -13 -14 -15 -20 -24 -26 -25 -21 -17 -15 -14 -16 -19 -20 -21 -22 -23 -23 -24 -25 -28 -31 -34 -37 -38 -40 -41 -43 -45 -45 -43 -40 -41 -47 -51 -49 -44 -40 -39 -42 -46 -49 -52 -54 -53 -54 -56 -60 -64 -66 -63 -58 -52 -47 -44 -43 -44 -46 -47 -48 -49 -48 -47 -44 -42 -41 -40 -39 -38 -37 -38 -38 -38 -38 -39 -42 -43 -43 -42 -41 -40 -39 -40 -41 -41 -40 -40 -40 -42 -44 -46 -46 -46 -46 -47 -48 -48 -47 -47 -47 -48 -51 -52 -52 -52 -52 -52 -53 -53 -53 -52 -53 -55 -57 -61 -64 -65 -65 -65 -64 -63 -63 -63 -63 -62 -62 -62 -62 -57 -49 -39 -34 -38 -44 -47 -45 -40 -35 -29 -25 -22 -21 -21 -21 -21 -22 -22 -21 -20 -20 -19 -19 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -29 -28 -28 -27 -27 -27 -27 -26 -26 -26 -26 -27 -28 -30 -31 -32 -33 -33 -33 -33 -31 -30 -29 -29 -28 -28 -27 -27 -26 -25 -25 -26 -27 -28 -29 -29 -28 -28 -27 -27 -27 -26 -26 -26 -25 -26 -26 -27 -28 -29 -30 -31 -32 -33 -34 -36 -38 -40 -41 -41 -41 -39 -39 -38 -38 -38 -38 -37 -36 -34 -32 -31 -29 -28 -27 -26 -25 -24 -24 -23 -24 -24 -24 -23 -22 -21 -19 -18 -17 -15 -13 -11 -10 -10 -11 -12 -14 -15 -17 -17 -17 -16 -14 -12 -10 -9 -8 -7 -6 -4 -3 -1 2 3 2 -2 -10 -18 -22 -24 -28 -32 -29 -22 -23 -29 -29 -26 -25 -21 -17 -14 -11 -14 -16 -16 -18 -22 -21 -17 -14 -17 -18 -15 -5 4 6 5 6 8 8 8 6 4 4 4 3 -2 -2 -4 -8 -10 -2 -12 -9 5 23 25 26 27 29 32 35 35 35 34 33 33 33 33 34 36 38 38 38 39 38 37 35 -7 -8 -10 -12 -13 -14 -15 -15 -14 -12 -10 -10 -11 -13 -16 -17 -15 -12 -13 -16 -21 -24 -23 -21 -18 -15 -12 -15 -18 -21 -23 -25 -26 -28 -30 -32 -33 -34 -34 -35 -35 -34 -32 -30 -27 -26 -25 -25 -25 -25 -24 -23 -21 -21 -22 -21 -18 -13 -9 -8 -9 -10 -13 -20 -26 -27 -25 -19 -14 -12 -13 -15 -17 -19 -21 -22 -23 -23 -24 -26 -29 -31 -33 -35 -37 -39 -41 -43 -46 -45 -42 -39 -40 -46 -50 -48 -44 -40 -39 -41 -45 -49 -52 -52 -52 -53 -56 -58 -61 -62 -61 -57 -52 -46 -42 -41 -42 -44 -45 -47 -49 -50 -49 -46 -43 -42 -42 -41 -40 -37 -37 -39 -40 -40 -41 -44 -45 -44 -42 -42 -42 -42 -41 -41 -41 -40 -40 -40 -42 -44 -44 -45 -46 -48 -51 -52 -50 -50 -50 -50 -47 -46 -47 -48 -51 -52 -51 -51 -51 -52 -53 -55 -56 -59 -62 -66 -68 -67 -66 -64 -64 -63 -63 -62 -62 -62 -62 -62 -61 -57 -49 -40 -37 -40 -44 -47 -48 -47 -40 -31 -24 -22 -21 -21 -21 -22 -22 -22 -22 -21 -21 -21 -21 -21 -22 -23 -24 -26 -27 -28 -29 -30 -29 -29 -28 -28 -27 -27 -27 -27 -27 -26 -26 -27 -28 -29 -30 -32 -33 -34 -35 -35 -34 -33 -32 -31 -30 -29 -29 -29 -28 -27 -26 -26 -27 -28 -28 -29 -29 -29 -28 -28 -28 -28 -28 -28 -28 -28 -28 -28 -28 -29 -30 -31 -33 -34 -35 -36 -38 -40 -41 -41 -40 -39 -38 -38 -37 -37 -36 -36 -36 -35 -34 -32 -31 -29 -28 -27 -26 -26 -25 -25 -25 -25 -25 -25 -24 -23 -22 -20 -19 -17 -16 -15 -13 -11 -11 -12 -13 -15 -16 -18 -18 -18 -17 -15 -13 -11 -10 -8 -6 -5 -3 -2 -1 0 2 3 -0 -10 -24 -30 -32 -33 -34 -30 -22 -22 -30 -31 -29 -28 -27 -23 -17 -13 -19 -23 -24 -23 -24 -23 -20 -17 -19 -19 -18 -12 -2 5 5 6 6 7 7 4 0 -1 -1 -3 -13 -16 -17 -18 -18 -13 -16 -11 3 18 22 23 24 26 29 32 33 33 33 32 32 32 32 31 30 35 35 35 36 36 36 34 -7 -9 -11 -12 -13 -14 -15 -16 -15 -13 -10 -10 -12 -15 -17 -17 -15 -15 -18 -21 -24 -24 -23 -21 -19 -17 -15 -18 -22 -25 -26 -27 -29 -32 -34 -35 -35 -36 -35 -35 -35 -34 -32 -29 -26 -24 -23 -22 -22 -22 -21 -19 -18 -20 -20 -19 -15 -10 -7 -7 -7 -8 -11 -20 -27 -28 -23 -16 -11 -9 -10 -13 -15 -17 -20 -22 -23 -23 -25 -27 -29 -31 -32 -33 -36 -38 -41 -43 -45 -44 -41 -39 -40 -45 -48 -47 -43 -39 -38 -41 -44 -47 -48 -49 -52 -54 -55 -56 -57 -57 -57 -55 -52 -46 -41 -39 -39 -42 -45 -47 -50 -51 -51 -49 -45 -44 -43 -42 -40 -37 -38 -41 -44 -45 -43 -43 -43 -43 -42 -43 -43 -43 -42 -42 -42 -41 -41 -41 -41 -42 -43 -44 -47 -50 -52 -51 -50 -51 -53 -53 -49 -46 -47 -48 -50 -50 -50 -51 -52 -54 -55 -56 -58 -60 -63 -67 -70 -69 -66 -64 -64 -64 -63 -63 -63 -64 -63 -62 -62 -60 -56 -50 -45 -43 -42 -40 -45 -50 -49 -41 -29 -23 -22 -22 -22 -22 -23 -24 -24 -23 -23 -23 -23 -23 -24 -25 -26 -27 -29 -30 -31 -31 -30 -30 -29 -28 -28 -28 -28 -27 -27 -27 -27 -28 -29 -30 -31 -33 -34 -35 -36 -36 -36 -35 -34 -32 -31 -31 -31 -30 -29 -28 -27 -27 -28 -28 -29 -29 -29 -29 -29 -29 -29 -30 -30 -30 -30 -30 -30 -30 -30 -30 -32 -33 -35 -36 -37 -38 -39 -40 -40 -39 -38 -37 -36 -35 -35 -34 -34 -34 -34 -34 -33 -32 -31 -29 -28 -27 -26 -25 -25 -25 -25 -25 -25 -25 -25 -24 -22 -21 -20 -19 -18 -17 -15 -14 -13 -13 -15 -16 -17 -18 -19 -19 -18 -16 -14 -12 -10 -8 -6 -3 -1 -0 -0 1 2 3 2 -8 -24 -33 -35 -34 -32 -29 -23 -23 -31 -32 -31 -29 -25 -18 -11 -14 -20 -24 -24 -24 -24 -23 -23 -21 -19 -17 -18 -17 -10 -0 4 5 5 5 4 1 -6 -10 -10 -10 -20 -24 -24 -24 -24 -23 -21 -11 3 11 17 20 21 23 25 29 31 32 31 30 30 31 30 27 23 31 32 31 32 32 32 31 -8 -11 -12 -13 -14 -14 -15 -15 -14 -13 -13 -13 -15 -17 -18 -18 -17 -18 -19 -21 -22 -22 -22 -21 -20 -19 -18 -21 -25 -28 -29 -31 -33 -34 -35 -35 -36 -36 -36 -36 -34 -33 -31 -28 -26 -23 -21 -20 -20 -20 -19 -18 -18 -19 -18 -16 -12 -8 -6 -6 -7 -8 -12 -21 -27 -26 -20 -12 -7 -6 -8 -10 -13 -16 -19 -20 -21 -22 -25 -28 -30 -30 -31 -33 -36 -39 -41 -43 -44 -43 -41 -40 -41 -45 -47 -47 -43 -39 -38 -42 -43 -44 -45 -48 -52 -54 -54 -53 -52 -52 -52 -53 -50 -44 -38 -37 -38 -41 -45 -47 -49 -50 -51 -51 -48 -46 -45 -43 -40 -38 -39 -43 -47 -49 -46 -42 -41 -42 -42 -43 -44 -43 -42 -42 -42 -42 -41 -41 -40 -40 -42 -44 -47 -51 -53 -53 -51 -51 -52 -52 -49 -46 -46 -47 -48 -49 -50 -51 -53 -55 -56 -58 -60 -61 -63 -66 -69 -68 -66 -64 -65 -66 -66 -65 -65 -64 -64 -63 -62 -61 -60 -58 -55 -50 -43 -35 -39 -46 -49 -45 -36 -26 -24 -24 -24 -24 -25 -26 -26 -26 -25 -25 -24 -24 -25 -26 -27 -29 -30 -31 -32 -32 -31 -30 -30 -29 -29 -29 -28 -28 -28 -28 -29 -29 -30 -31 -32 -34 -35 -36 -37 -37 -37 -36 -35 -34 -33 -32 -32 -31 -30 -29 -29 -29 -29 -30 -30 -30 -30 -29 -29 -29 -30 -31 -32 -32 -32 -32 -32 -31 -32 -33 -34 -35 -37 -37 -38 -39 -40 -40 -39 -36 -34 -34 -33 -33 -33 -32 -32 -32 -33 -33 -33 -32 -31 -30 -29 -27 -26 -25 -25 -24 -24 -24 -24 -25 -24 -24 -23 -22 -21 -20 -20 -20 -19 -18 -17 -16 -17 -18 -19 -19 -19 -19 -18 -17 -15 -13 -11 -8 -4 -1 1 2 2 2 2 3 3 -4 -18 -30 -35 -33 -27 -24 -22 -25 -33 -33 -32 -29 -22 -9 -8 -16 -22 -23 -22 -23 -23 -23 -23 -22 -18 -12 -12 -14 -11 -4 -2 1 2 0 -3 -4 -12 -19 -20 -19 -25 -28 -28 -27 -28 -28 -26 -18 -8 -3 8 15 18 19 22 25 28 29 29 28 28 29 29 26 20 28 29 28 27 27 24 22 -9 -12 -13 -14 -14 -15 -15 -15 -15 -14 -14 -14 -16 -18 -19 -19 -18 -19 -20 -21 -21 -22 -22 -21 -21 -21 -21 -24 -28 -31 -34 -36 -36 -35 -34 -34 -35 -36 -35 -34 -32 -30 -29 -28 -25 -23 -20 -19 -19 -19 -18 -18 -18 -17 -15 -12 -9 -5 -4 -5 -7 -10 -16 -22 -25 -23 -16 -8 -4 -3 -5 -8 -12 -15 -17 -18 -19 -21 -25 -28 -29 -30 -31 -34 -37 -40 -41 -42 -42 -43 -42 -43 -44 -46 -48 -48 -46 -41 -40 -41 -42 -43 -46 -50 -53 -53 -52 -50 -49 -49 -49 -49 -46 -40 -36 -36 -39 -42 -46 -47 -47 -48 -50 -51 -51 -49 -46 -44 -42 -41 -41 -44 -48 -50 -48 -43 -41 -40 -42 -44 -44 -43 -42 -42 -42 -42 -42 -41 -40 -40 -42 -45 -47 -50 -52 -53 -53 -52 -50 -50 -48 -47 -47 -47 -48 -49 -50 -51 -53 -55 -57 -59 -61 -62 -64 -67 -70 -70 -68 -65 -65 -66 -67 -68 -67 -66 -65 -65 -63 -62 -62 -62 -60 -54 -44 -33 -34 -38 -41 -41 -37 -29 -27 -26 -27 -27 -27 -28 -28 -28 -27 -26 -26 -26 -26 -27 -28 -30 -32 -33 -34 -33 -33 -32 -31 -31 -30 -30 -30 -30 -29 -30 -30 -31 -32 -33 -34 -35 -37 -38 -39 -39 -38 -37 -36 -35 -34 -33 -33 -32 -32 -31 -31 -31 -31 -31 -31 -31 -30 -30 -29 -29 -30 -32 -33 -34 -34 -33 -33 -33 -34 -35 -36 -37 -38 -38 -39 -40 -40 -38 -36 -34 -32 -31 -31 -31 -31 -31 -31 -31 -32 -32 -33 -33 -32 -32 -30 -29 -27 -25 -24 -24 -23 -23 -24 -24 -24 -24 -24 -23 -22 -22 -22 -23 -23 -22 -21 -20 -19 -20 -20 -20 -20 -19 -18 -17 -15 -13 -10 -7 -4 -0 2 3 3 2 1 0 -0 -3 -12 -23 -33 -28 -20 -19 -23 -29 -34 -33 -32 -29 -22 -10 -8 -16 -21 -22 -21 -22 -22 -22 -22 -23 -18 -8 -5 -8 -7 -2 -3 -5 -5 -8 -13 -12 -16 -23 -26 -27 -28 -29 -29 -29 -29 -30 -28 -25 -21 -17 -5 6 14 15 18 21 24 26 26 25 25 25 26 25 22 25 26 25 23 19 13 11 -11 -13 -14 -15 -15 -15 -16 -15 -15 -15 -16 -16 -17 -19 -21 -21 -20 -21 -21 -22 -22 -23 -23 -22 -21 -22 -23 -27 -31 -35 -38 -39 -37 -35 -33 -33 -34 -34 -33 -32 -30 -28 -27 -27 -26 -24 -22 -21 -20 -19 -18 -18 -17 -13 -11 -8 -5 -2 -2 -4 -7 -11 -16 -19 -20 -17 -11 -4 -2 -3 -4 -6 -9 -13 -14 -16 -19 -23 -27 -29 -29 -30 -31 -35 -38 -39 -39 -40 -40 -42 -43 -44 -45 -46 -48 -50 -49 -44 -38 -37 -39 -43 -47 -51 -54 -54 -51 -49 -48 -47 -46 -44 -41 -36 -35 -37 -41 -44 -46 -46 -46 -46 -47 -50 -52 -50 -47 -44 -43 -44 -44 -45 -48 -50 -47 -43 -39 -38 -40 -44 -45 -45 -43 -43 -44 -44 -43 -42 -42 -42 -43 -46 -49 -51 -50 -51 -52 -51 -49 -47 -47 -47 -47 -48 -49 -49 -50 -52 -54 -56 -58 -60 -61 -62 -63 -64 -65 -65 -65 -65 -65 -67 -69 -71 -71 -69 -67 -65 -64 -64 -63 -63 -61 -55 -44 -32 -30 -31 -34 -36 -37 -33 -30 -30 -30 -30 -30 -30 -30 -30 -30 -29 -28 -27 -27 -28 -29 -31 -33 -35 -36 -36 -35 -34 -33 -33 -33 -32 -32 -32 -32 -32 -33 -34 -35 -35 -36 -38 -39 -40 -41 -41 -40 -39 -37 -36 -35 -34 -33 -33 -33 -33 -33 -33 -33 -33 -33 -32 -31 -30 -30 -30 -31 -33 -34 -34 -35 -35 -35 -35 -36 -37 -37 -38 -38 -39 -39 -39 -38 -36 -34 -32 -30 -30 -30 -30 -30 -30 -30 -30 -31 -32 -33 -33 -34 -33 -32 -31 -28 -26 -25 -24 -23 -23 -23 -24 -24 -24 -24 -24 -23 -23 -24 -25 -26 -25 -24 -23 -21 -21 -21 -21 -21 -20 -19 -18 -16 -14 -11 -8 -4 -1 1 2 2 0 -2 -4 -5 -6 -10 -18 -25 -21 -22 -25 -29 -33 -34 -32 -31 -29 -26 -17 -13 -16 -18 -16 -16 -19 -19 -18 -18 -22 -19 -8 -1 -4 -9 -3 -2 -4 -10 -14 -15 -17 -20 -24 -26 -28 -26 -26 -28 -30 -29 -28 -28 -29 -27 -24 -14 -1 10 12 14 18 21 23 24 23 21 21 21 20 16 16 19 20 17 9 3 3 -12 -13 -14 -15 -16 -16 -17 -17 -16 -16 -17 -17 -19 -21 -23 -24 -22 -22 -22 -23 -24 -25 -25 -23 -22 -22 -24 -29 -34 -39 -42 -41 -37 -35 -33 -33 -33 -31 -30 -29 -29 -29 -28 -27 -26 -25 -23 -22 -20 -19 -18 -18 -14 -10 -7 -4 -2 0 -0 -2 -5 -9 -12 -14 -14 -12 -8 -6 -5 -4 -4 -5 -8 -11 -14 -17 -20 -25 -29 -29 -29 -29 -31 -34 -37 -38 -38 -38 -39 -41 -42 -44 -45 -47 -50 -51 -49 -44 -36 -32 -33 -38 -42 -45 -48 -50 -52 -51 -48 -44 -41 -39 -37 -35 -36 -39 -42 -44 -44 -43 -44 -44 -46 -49 -52 -51 -47 -44 -44 -45 -46 -47 -49 -49 -46 -42 -39 -37 -38 -43 -47 -47 -46 -45 -47 -47 -46 -45 -44 -45 -46 -48 -51 -51 -49 -49 -50 -50 -49 -47 -47 -47 -48 -48 -49 -50 -51 -52 -54 -56 -58 -60 -61 -62 -62 -63 -63 -64 -65 -65 -66 -67 -70 -73 -73 -71 -67 -63 -61 -61 -61 -61 -59 -54 -44 -32 -29 -30 -33 -38 -43 -40 -35 -33 -33 -33 -33 -33 -33 -33 -32 -31 -30 -29 -29 -29 -31 -33 -35 -36 -38 -38 -38 -38 -37 -36 -36 -35 -35 -35 -35 -35 -36 -37 -38 -38 -39 -40 -41 -42 -43 -43 -42 -41 -39 -38 -36 -35 -34 -34 -34 -35 -35 -35 -35 -34 -34 -33 -32 -31 -30 -31 -32 -33 -34 -35 -35 -35 -36 -37 -37 -37 -37 -38 -38 -39 -39 -38 -36 -34 -32 -31 -30 -30 -29 -29 -30 -30 -30 -30 -31 -31 -32 -33 -34 -34 -34 -32 -30 -28 -26 -25 -23 -23 -23 -23 -24 -24 -24 -24 -24 -24 -24 -25 -26 -27 -26 -25 -23 -22 -22 -22 -22 -21 -20 -19 -18 -16 -13 -10 -6 -4 -3 -2 -2 -4 -6 -8 -10 -11 -12 -14 -17 -20 -29 -35 -35 -34 -33 -32 -31 -30 -28 -24 -20 -19 -17 -11 -11 -16 -17 -14 -11 -19 -18 -10 -4 -8 -17 -11 -3 -1 -7 -14 -13 -17 -22 -24 -27 -27 -22 -21 -26 -30 -29 -26 -26 -29 -29 -26 -16 -4 7 9 11 15 18 20 22 20 16 14 13 11 6 7 9 10 7 -1 -2 3 -12 -13 -14 -14 -15 -16 -18 -18 -18 -18 -18 -20 -21 -23 -25 -26 -24 -23 -24 -25 -27 -28 -28 -26 -24 -24 -27 -33 -39 -43 -43 -40 -37 -35 -34 -33 -32 -29 -28 -28 -30 -31 -31 -28 -26 -24 -23 -22 -20 -20 -19 -17 -12 -7 -4 -2 -0 1 2 1 -2 -6 -9 -10 -10 -9 -8 -7 -6 -5 -4 -5 -7 -10 -13 -16 -20 -26 -29 -29 -28 -29 -31 -34 -35 -36 -37 -38 -38 -40 -42 -45 -47 -50 -53 -54 -51 -43 -34 -29 -31 -36 -40 -42 -44 -46 -47 -48 -46 -42 -39 -37 -35 -36 -39 -41 -43 -43 -42 -42 -42 -43 -45 -48 -51 -50 -47 -45 -44 -45 -47 -49 -49 -45 -38 -35 -35 -36 -38 -41 -45 -48 -49 -49 -51 -52 -50 -48 -47 -48 -48 -49 -50 -51 -49 -47 -47 -48 -49 -48 -48 -48 -48 -48 -49 -50 -51 -53 -54 -56 -58 -59 -60 -61 -61 -62 -63 -64 -65 -65 -66 -68 -70 -72 -73 -70 -66 -63 -63 -63 -60 -58 -55 -50 -42 -32 -28 -27 -29 -34 -42 -44 -41 -38 -36 -36 -35 -35 -35 -35 -35 -34 -32 -31 -31 -31 -32 -34 -36 -38 -40 -41 -42 -42 -41 -40 -39 -39 -38 -38 -38 -39 -39 -40 -41 -42 -42 -43 -44 -45 -45 -45 -44 -43 -42 -40 -38 -37 -36 -36 -36 -36 -37 -37 -36 -36 -35 -34 -33 -32 -32 -33 -34 -35 -35 -35 -35 -36 -36 -37 -37 -37 -37 -37 -38 -38 -38 -36 -34 -32 -31 -30 -30 -30 -29 -29 -30 -30 -31 -31 -31 -31 -32 -33 -34 -35 -35 -34 -32 -31 -29 -27 -25 -23 -22 -22 -23 -23 -24 -24 -24 -24 -24 -25 -26 -26 -27 -26 -24 -23 -22 -23 -23 -22 -21 -21 -20 -19 -16 -13 -11 -9 -8 -8 -8 -9 -10 -12 -15 -17 -18 -18 -18 -22 -31 -36 -35 -33 -33 -32 -31 -30 -29 -27 -25 -23 -19 -14 -14 -17 -18 -16 -13 -16 -17 -14 -10 -13 -21 -20 -11 -3 -5 -12 -15 -19 -23 -25 -27 -27 -25 -24 -27 -30 -29 -26 -25 -28 -26 -25 -18 -7 5 6 8 11 15 18 20 17 10 4 3 2 -2 -0 1 -1 -4 -7 -5 7 -13 -12 -12 -13 -15 -17 -18 -19 -20 -21 -21 -22 -23 -24 -26 -27 -26 -26 -27 -28 -29 -29 -30 -28 -28 -28 -31 -35 -40 -43 -42 -38 -34 -33 -33 -32 -31 -29 -27 -28 -30 -33 -32 -28 -25 -23 -22 -21 -20 -20 -19 -17 -12 -6 -4 -2 -2 -0 2 2 0 -3 -6 -8 -7 -6 -6 -5 -6 -6 -5 -5 -6 -8 -11 -15 -19 -24 -27 -27 -28 -29 -31 -32 -33 -36 -38 -39 -40 -42 -44 -47 -48 -50 -53 -55 -51 -42 -31 -27 -30 -35 -38 -40 -40 -40 -42 -46 -48 -45 -40 -37 -37 -39 -41 -42 -42 -41 -40 -40 -41 -42 -44 -47 -51 -51 -48 -45 -44 -44 -46 -48 -48 -44 -37 -34 -35 -36 -38 -42 -46 -49 -49 -49 -51 -52 -50 -49 -48 -49 -49 -49 -50 -50 -49 -46 -45 -47 -48 -48 -48 -48 -48 -48 -49 -50 -51 -53 -55 -56 -58 -59 -59 -60 -60 -61 -62 -63 -64 -65 -66 -67 -69 -71 -73 -71 -66 -62 -61 -61 -60 -55 -49 -42 -35 -32 -30 -28 -27 -28 -33 -39 -42 -42 -40 -40 -38 -37 -37 -37 -37 -37 -35 -34 -33 -33 -34 -36 -37 -39 -42 -44 -45 -46 -46 -45 -43 -42 -42 -42 -42 -42 -42 -43 -43 -44 -45 -46 -47 -47 -47 -47 -47 -46 -44 -42 -40 -38 -37 -37 -37 -38 -38 -38 -38 -37 -36 -35 -35 -34 -35 -35 -36 -36 -36 -36 -35 -36 -36 -36 -36 -36 -36 -37 -38 -38 -37 -36 -34 -32 -30 -30 -29 -29 -29 -29 -30 -31 -32 -32 -32 -32 -32 -33 -34 -34 -35 -35 -34 -33 -31 -29 -26 -24 -22 -21 -21 -22 -23 -24 -24 -25 -24 -24 -24 -25 -26 -27 -27 -25 -23 -23 -23 -23 -23 -22 -22 -22 -20 -18 -16 -14 -14 -15 -15 -15 -16 -17 -20 -25 -29 -28 -26 -28 -33 -35 -34 -33 -33 -33 -32 -32 -31 -29 -28 -26 -24 -21 -20 -20 -20 -19 -16 -17 -19 -20 -21 -22 -24 -23 -19 -14 -13 -16 -20 -23 -25 -26 -28 -28 -27 -27 -29 -30 -31 -30 -27 -25 -20 -22 -19 -10 2 2 1 4 10 13 15 13 4 -6 -6 -5 -5 -4 -4 -9 -10 -10 -4 9 -13 -11 -11 -13 -15 -17 -19 -21 -23 -23 -23 -22 -23 -25 -26 -26 -26 -28 -30 -31 -32 -32 -31 -31 -32 -33 -34 -37 -40 -41 -39 -35 -32 -30 -30 -30 -29 -27 -27 -28 -31 -33 -33 -28 -24 -21 -20 -20 -19 -19 -19 -17 -12 -6 -3 -3 -2 0 3 3 1 -2 -6 -6 -5 -4 -3 -4 -7 -7 -7 -7 -7 -8 -10 -14 -19 -23 -25 -27 -28 -30 -31 -32 -34 -36 -39 -41 -43 -45 -46 -47 -46 -46 -51 -53 -51 -42 -32 -27 -29 -34 -38 -38 -36 -35 -36 -40 -45 -45 -41 -39 -40 -44 -44 -43 -42 -40 -39 -39 -40 -41 -43 -46 -50 -51 -49 -45 -43 -42 -44 -47 -48 -44 -37 -35 -35 -36 -38 -41 -45 -47 -46 -44 -45 -46 -46 -45 -46 -49 -52 -54 -54 -53 -50 -47 -46 -46 -48 -48 -49 -49 -48 -48 -48 -49 -51 -53 -54 -56 -57 -58 -59 -59 -60 -61 -62 -63 -64 -65 -66 -66 -68 -70 -72 -70 -66 -62 -60 -60 -58 -52 -43 -36 -31 -32 -32 -30 -29 -28 -29 -33 -38 -43 -45 -45 -43 -41 -39 -39 -39 -39 -38 -37 -36 -35 -36 -37 -39 -41 -43 -46 -48 -50 -51 -50 -48 -47 -46 -46 -46 -45 -45 -46 -46 -46 -47 -48 -48 -49 -49 -49 -48 -47 -46 -44 -41 -40 -38 -38 -38 -39 -39 -39 -39 -38 -37 -37 -37 -37 -37 -38 -38 -37 -36 -36 -36 -36 -36 -35 -35 -35 -36 -37 -38 -38 -37 -35 -33 -32 -30 -30 -29 -29 -30 -30 -31 -32 -33 -34 -34 -33 -33 -33 -33 -34 -35 -36 -36 -35 -34 -31 -28 -25 -23 -21 -21 -21 -22 -23 -24 -25 -25 -24 -24 -25 -26 -29 -32 -30 -25 -23 -24 -24 -24 -24 -24 -24 -24 -22 -21 -20 -20 -21 -21 -21 -21 -21 -25 -32 -38 -36 -34 -34 -36 -36 -36 -35 -35 -35 -35 -34 -33 -32 -31 -29 -27 -25 -24 -24 -24 -22 -20 -22 -23 -25 -26 -27 -27 -27 -26 -26 -27 -27 -28 -28 -28 -29 -30 -29 -29 -30 -32 -32 -31 -27 -21 -17 -11 -15 -18 -14 -5 -6 -9 -7 0 3 5 4 -1 -8 -8 -6 -6 -7 -9 -10 -8 -5 2 13 -14 -11 -12 -14 -17 -19 -22 -23 -24 -25 -25 -24 -24 -25 -26 -27 -29 -33 -34 -33 -33 -33 -33 -34 -35 -37 -39 -41 -42 -42 -39 -35 -32 -30 -28 -28 -27 -27 -27 -29 -31 -32 -31 -28 -23 -20 -19 -19 -18 -18 -18 -16 -11 -5 -3 -2 -1 2 4 3 1 -2 -5 -5 -3 -2 -2 -4 -8 -10 -10 -10 -10 -11 -14 -17 -21 -25 -26 -28 -30 -33 -34 -34 -35 -37 -39 -42 -46 -47 -47 -46 -43 -43 -48 -51 -49 -42 -33 -27 -29 -33 -36 -35 -32 -31 -32 -35 -39 -40 -38 -39 -42 -46 -46 -44 -42 -40 -39 -39 -40 -41 -43 -46 -49 -49 -48 -45 -42 -39 -40 -43 -45 -44 -38 -35 -35 -37 -38 -40 -42 -43 -43 -42 -40 -40 -41 -42 -44 -48 -51 -53 -52 -51 -50 -49 -48 -48 -47 -48 -48 -48 -48 -47 -47 -49 -50 -52 -53 -55 -56 -57 -59 -59 -60 -61 -61 -63 -64 -65 -65 -65 -66 -67 -68 -68 -66 -63 -59 -55 -53 -48 -42 -35 -30 -30 -31 -32 -32 -31 -31 -32 -35 -37 -39 -43 -46 -47 -45 -42 -41 -42 -41 -40 -39 -38 -38 -39 -41 -43 -45 -48 -51 -53 -55 -55 -53 -52 -50 -49 -49 -49 -49 -49 -48 -49 -49 -50 -50 -51 -51 -50 -49 -48 -47 -45 -43 -41 -40 -39 -39 -40 -40 -40 -40 -39 -38 -38 -38 -39 -40 -40 -39 -38 -37 -36 -36 -35 -35 -35 -35 -36 -37 -38 -39 -38 -37 -36 -34 -33 -32 -31 -31 -31 -31 -31 -32 -33 -34 -35 -36 -35 -35 -34 -34 -34 -35 -36 -37 -37 -36 -33 -30 -27 -24 -22 -21 -21 -21 -23 -24 -25 -26 -26 -26 -28 -32 -35 -40 -38 -31 -25 -24 -25 -25 -25 -26 -26 -27 -27 -26 -25 -26 -26 -27 -27 -26 -27 -31 -37 -40 -39 -37 -38 -39 -40 -40 -40 -39 -39 -38 -38 -37 -36 -35 -34 -32 -30 -28 -28 -27 -25 -25 -26 -28 -28 -30 -31 -31 -30 -30 -31 -32 -33 -33 -32 -31 -31 -31 -31 -31 -33 -34 -33 -29 -20 -9 -7 -7 -13 -21 -23 -16 -15 -18 -18 -12 -9 -8 -8 -8 -10 -9 -7 -7 -9 -11 -8 -1 3 8 16 -15 -13 -15 -17 -21 -24 -27 -25 -24 -25 -26 -26 -26 -26 -27 -28 -31 -35 -36 -35 -35 -35 -36 -37 -38 -40 -43 -46 -46 -45 -43 -39 -35 -31 -29 -27 -26 -26 -27 -28 -29 -29 -29 -26 -22 -20 -19 -18 -17 -18 -17 -15 -9 -4 -3 -2 0 3 4 2 -1 -2 -4 -4 -3 -2 -3 -6 -9 -11 -13 -14 -15 -17 -19 -22 -25 -29 -30 -31 -33 -34 -35 -35 -36 -36 -38 -42 -47 -48 -47 -43 -40 -42 -46 -48 -45 -39 -33 -29 -30 -31 -32 -30 -28 -29 -32 -36 -38 -36 -36 -39 -43 -47 -48 -46 -43 -41 -40 -40 -40 -41 -43 -46 -48 -48 -46 -45 -42 -38 -37 -39 -41 -41 -38 -36 -36 -37 -38 -39 -40 -42 -42 -41 -39 -38 -39 -41 -44 -47 -50 -50 -50 -50 -51 -53 -53 -52 -48 -48 -48 -48 -47 -47 -47 -48 -50 -51 -53 -54 -55 -56 -57 -58 -59 -60 -61 -62 -62 -63 -64 -65 -65 -64 -65 -66 -65 -62 -57 -49 -43 -40 -37 -32 -28 -28 -30 -32 -34 -35 -35 -36 -37 -38 -39 -43 -47 -49 -48 -46 -44 -44 -45 -44 -41 -40 -40 -41 -42 -44 -46 -49 -52 -55 -58 -59 -58 -56 -54 -53 -52 -52 -52 -52 -51 -51 -51 -52 -52 -52 -52 -51 -50 -49 -47 -45 -43 -42 -41 -40 -40 -40 -40 -40 -40 -40 -39 -39 -40 -41 -42 -41 -40 -38 -37 -36 -35 -35 -35 -35 -36 -37 -38 -39 -40 -39 -38 -37 -36 -35 -34 -34 -34 -33 -33 -33 -33 -34 -36 -37 -38 -38 -38 -37 -37 -36 -37 -38 -39 -39 -38 -36 -33 -29 -27 -24 -23 -22 -22 -23 -25 -27 -28 -31 -33 -35 -41 -44 -46 -45 -42 -33 -28 -26 -25 -26 -27 -28 -29 -31 -32 -33 -34 -35 -35 -35 -35 -36 -40 -44 -44 -41 -39 -41 -43 -44 -44 -44 -43 -43 -42 -41 -40 -39 -38 -38 -37 -35 -32 -30 -29 -28 -29 -29 -30 -31 -32 -33 -33 -33 -33 -34 -35 -36 -36 -35 -34 -33 -32 -32 -32 -35 -36 -34 -26 -15 -10 -9 -11 -18 -28 -30 -26 -24 -23 -23 -20 -19 -17 -14 -12 -13 -12 -11 -10 -10 -9 -2 6 11 12 15 -15 -14 -16 -20 -26 -31 -32 -27 -25 -26 -27 -27 -25 -26 -27 -30 -34 -37 -37 -36 -36 -37 -38 -39 -40 -42 -45 -49 -51 -51 -48 -43 -38 -34 -30 -28 -27 -26 -25 -26 -26 -26 -26 -23 -21 -20 -19 -17 -17 -17 -15 -12 -6 -3 -2 -1 -0 1 2 2 1 -1 -2 -2 -2 -3 -6 -9 -11 -13 -15 -17 -18 -21 -23 -25 -28 -31 -32 -33 -32 -32 -33 -34 -34 -36 -40 -45 -47 -45 -42 -39 -37 -40 -44 -45 -43 -39 -36 -35 -32 -30 -29 -28 -28 -30 -35 -39 -39 -36 -37 -40 -45 -49 -51 -48 -45 -42 -41 -41 -42 -42 -44 -46 -48 -47 -46 -44 -42 -40 -39 -39 -39 -38 -38 -37 -37 -38 -39 -40 -41 -42 -42 -41 -39 -38 -39 -41 -44 -47 -49 -49 -48 -48 -50 -53 -54 -53 -51 -49 -48 -47 -47 -47 -47 -48 -50 -51 -52 -53 -54 -55 -56 -57 -58 -59 -60 -60 -61 -62 -63 -63 -63 -62 -61 -61 -61 -60 -56 -46 -34 -28 -26 -25 -24 -25 -27 -30 -34 -38 -41 -42 -42 -43 -43 -45 -46 -47 -47 -46 -46 -49 -51 -50 -46 -44 -43 -43 -44 -45 -47 -50 -53 -57 -60 -62 -62 -60 -58 -56 -55 -55 -55 -55 -55 -54 -54 -54 -54 -54 -54 -53 -51 -49 -47 -45 -43 -42 -42 -41 -41 -41 -41 -40 -40 -40 -40 -40 -41 -42 -42 -41 -39 -38 -36 -36 -36 -35 -36 -36 -37 -39 -40 -40 -41 -41 -40 -39 -38 -37 -37 -37 -37 -37 -36 -36 -36 -37 -38 -39 -40 -42 -43 -43 -42 -42 -42 -43 -44 -45 -45 -43 -38 -34 -31 -28 -26 -25 -24 -25 -28 -31 -34 -38 -42 -44 -47 -48 -49 -50 -48 -43 -36 -29 -26 -27 -28 -29 -31 -34 -38 -43 -45 -46 -46 -46 -46 -47 -48 -48 -46 -44 -42 -44 -46 -47 -48 -47 -46 -46 -45 -44 -43 -42 -41 -40 -40 -38 -36 -34 -33 -32 -31 -31 -32 -33 -35 -35 -35 -34 -35 -36 -38 -38 -37 -36 -35 -34 -32 -31 -32 -35 -36 -35 -27 -16 -17 -17 -18 -23 -29 -29 -28 -26 -24 -24 -23 -22 -20 -17 -13 -15 -15 -14 -13 -11 -4 6 11 12 13 14 -15 -14 -18 -25 -33 -37 -35 -29 -26 -27 -28 -27 -25 -25 -28 -32 -38 -41 -39 -37 -37 -38 -40 -41 -42 -43 -46 -51 -55 -55 -51 -44 -38 -35 -33 -30 -28 -26 -24 -24 -24 -24 -22 -20 -20 -19 -18 -16 -15 -14 -12 -8 -3 -1 -2 -2 -2 1 4 5 4 1 -0 -1 -3 -6 -9 -12 -13 -14 -15 -17 -19 -21 -23 -25 -26 -27 -28 -30 -30 -30 -31 -34 -36 -39 -43 -45 -44 -41 -38 -35 -35 -38 -41 -42 -41 -39 -37 -35 -32 -30 -30 -30 -31 -33 -36 -37 -34 -35 -39 -43 -45 -48 -50 -48 -45 -42 -42 -42 -43 -44 -45 -46 -47 -46 -45 -44 -42 -41 -40 -40 -39 -39 -38 -38 -38 -38 -39 -41 -42 -43 -42 -40 -39 -39 -41 -42 -44 -46 -47 -48 -48 -48 -47 -49 -51 -53 -54 -52 -49 -47 -47 -48 -48 -49 -50 -51 -53 -54 -54 -54 -55 -56 -56 -58 -59 -59 -60 -61 -61 -62 -62 -61 -60 -59 -59 -59 -58 -51 -37 -29 -25 -24 -24 -24 -25 -28 -33 -40 -44 -47 -48 -49 -50 -49 -48 -47 -48 -49 -50 -52 -53 -53 -52 -51 -49 -48 -47 -47 -49 -51 -54 -57 -60 -63 -63 -62 -61 -59 -58 -58 -58 -58 -58 -57 -56 -56 -56 -56 -55 -54 -52 -50 -48 -45 -44 -43 -42 -42 -41 -41 -41 -40 -40 -40 -40 -41 -42 -42 -42 -40 -39 -37 -36 -36 -37 -37 -38 -39 -40 -41 -41 -42 -42 -42 -42 -41 -41 -40 -40 -40 -40 -40 -40 -39 -39 -40 -41 -42 -44 -47 -50 -52 -52 -51 -52 -52 -53 -54 -55 -53 -48 -43 -39 -34 -32 -30 -29 -28 -31 -38 -42 -46 -50 -50 -50 -50 -52 -52 -51 -44 -38 -32 -27 -27 -29 -30 -33 -36 -42 -52 -55 -55 -54 -53 -52 -52 -51 -50 -47 -46 -46 -46 -46 -47 -48 -48 -47 -47 -46 -45 -44 -43 -42 -42 -41 -40 -38 -38 -38 -37 -34 -32 -33 -35 -36 -36 -36 -36 -37 -38 -39 -39 -38 -37 -35 -33 -31 -30 -31 -34 -36 -36 -31 -22 -23 -23 -25 -27 -29 -27 -26 -26 -25 -25 -24 -23 -21 -18 -14 -17 -17 -16 -14 -8 2 8 11 12 12 13 -13 -13 -20 -30 -37 -40 -36 -30 -27 -28 -29 -27 -24 -25 -30 -37 -43 -44 -42 -39 -39 -40 -42 -43 -43 -45 -48 -53 -57 -56 -52 -44 -37 -35 -33 -30 -27 -24 -24 -24 -24 -22 -20 -19 -18 -17 -16 -14 -13 -11 -7 -4 0 0 -1 -1 2 6 9 10 8 5 2 -1 -4 -8 -10 -11 -12 -12 -14 -15 -17 -19 -20 -19 -19 -20 -25 -28 -30 -32 -33 -36 -41 -44 -44 -43 -39 -35 -33 -32 -34 -35 -36 -38 -40 -40 -37 -35 -34 -33 -31 -28 -28 -29 -31 -34 -36 -38 -41 -44 -45 -45 -46 -45 -43 -42 -42 -44 -45 -46 -46 -45 -46 -46 -45 -44 -42 -41 -40 -40 -39 -39 -39 -38 -38 -39 -39 -41 -43 -44 -43 -41 -40 -40 -41 -43 -43 -44 -45 -46 -47 -47 -44 -44 -46 -51 -54 -53 -50 -47 -47 -48 -48 -49 -50 -51 -53 -53 -54 -54 -54 -54 -55 -56 -57 -58 -58 -59 -60 -61 -61 -60 -59 -57 -56 -57 -57 -51 -40 -32 -27 -25 -24 -24 -24 -26 -29 -34 -41 -47 -51 -54 -56 -54 -53 -52 -52 -54 -54 -54 -53 -54 -55 -55 -55 -54 -53 -52 -52 -53 -55 -58 -61 -63 -64 -63 -62 -61 -60 -61 -61 -61 -61 -60 -59 -59 -58 -58 -57 -55 -53 -51 -48 -46 -44 -43 -42 -42 -42 -42 -41 -41 -40 -40 -41 -41 -41 -41 -40 -39 -38 -37 -37 -38 -39 -40 -41 -42 -42 -43 -43 -43 -43 -43 -43 -43 -43 -43 -43 -43 -43 -44 -46 -46 -46 -47 -47 -49 -50 -54 -58 -60 -60 -59 -59 -59 -58 -58 -59 -58 -56 -54 -51 -45 -43 -40 -37 -34 -33 -44 -48 -50 -52 -53 -52 -52 -51 -49 -47 -37 -32 -30 -28 -28 -29 -31 -33 -37 -44 -55 -59 -59 -57 -55 -54 -53 -52 -50 -48 -48 -47 -46 -44 -45 -46 -46 -46 -46 -45 -44 -43 -42 -42 -43 -43 -42 -41 -40 -41 -40 -37 -36 -36 -37 -38 -38 -37 -37 -38 -39 -39 -38 -38 -37 -36 -33 -30 -27 -28 -31 -34 -36 -35 -29 -24 -23 -27 -31 -29 -24 -22 -24 -28 -27 -24 -23 -22 -21 -19 -19 -19 -18 -15 -5 3 8 10 11 12 12 -13 -15 -23 -33 -39 -40 -37 -30 -27 -28 -30 -27 -24 -26 -34 -43 -48 -46 -43 -41 -41 -43 -45 -44 -44 -47 -51 -56 -58 -56 -50 -42 -35 -33 -32 -30 -27 -24 -25 -24 -23 -21 -20 -19 -16 -14 -12 -11 -9 -6 -3 0 1 1 2 4 8 10 12 12 10 7 3 -0 -4 -8 -9 -8 -8 -9 -12 -14 -15 -15 -13 -12 -13 -18 -25 -30 -34 -36 -37 -40 -44 -45 -43 -40 -34 -29 -28 -30 -32 -33 -34 -35 -36 -37 -37 -36 -33 -30 -27 -26 -26 -28 -32 -36 -40 -42 -44 -45 -45 -45 -44 -44 -43 -42 -43 -45 -47 -47 -47 -45 -45 -46 -46 -45 -43 -42 -41 -41 -41 -40 -39 -39 -39 -39 -40 -40 -41 -43 -44 -43 -41 -39 -38 -39 -42 -46 -47 -47 -46 -46 -45 -42 -42 -45 -49 -50 -48 -47 -47 -47 -48 -49 -50 -51 -51 -52 -53 -53 -54 -54 -54 -55 -55 -56 -57 -58 -59 -60 -59 -59 -57 -56 -55 -54 -54 -50 -42 -35 -30 -26 -24 -24 -24 -25 -27 -30 -36 -43 -48 -53 -55 -56 -56 -56 -56 -56 -56 -55 -54 -54 -54 -56 -57 -58 -58 -58 -58 -57 -57 -59 -61 -63 -64 -64 -63 -62 -62 -63 -63 -63 -64 -63 -62 -62 -61 -61 -59 -58 -55 -53 -50 -47 -45 -44 -43 -42 -42 -42 -42 -42 -41 -41 -41 -40 -40 -39 -38 -38 -38 -39 -39 -40 -41 -42 -43 -44 -44 -43 -43 -43 -43 -44 -44 -45 -45 -46 -46 -46 -48 -50 -54 -56 -57 -57 -58 -59 -60 -62 -63 -64 -64 -63 -62 -62 -60 -58 -58 -59 -59 -59 -58 -56 -54 -49 -43 -38 -32 -39 -43 -45 -48 -53 -52 -50 -46 -40 -38 -31 -28 -28 -28 -29 -31 -32 -35 -39 -47 -56 -60 -61 -58 -56 -54 -53 -52 -50 -49 -49 -48 -46 -43 -43 -45 -45 -44 -43 -42 -41 -41 -41 -42 -44 -45 -45 -44 -43 -43 -41 -40 -40 -40 -40 -41 -40 -40 -39 -39 -39 -38 -37 -37 -38 -38 -35 -31 -26 -27 -30 -33 -35 -38 -35 -21 -18 -24 -32 -30 -22 -18 -20 -28 -27 -25 -24 -23 -23 -22 -22 -22 -21 -17 -7 -2 4 8 10 11 11 -13 -18 -28 -36 -40 -39 -36 -29 -28 -29 -29 -27 -24 -31 -40 -47 -50 -47 -42 -41 -43 -46 -45 -43 -44 -47 -52 -57 -58 -55 -49 -40 -31 -30 -29 -27 -24 -22 -23 -22 -21 -21 -21 -18 -14 -10 -7 -5 -4 -1 1 1 1 1 4 6 8 9 11 11 9 6 4 0 -4 -6 -6 -5 -4 -7 -10 -11 -11 -8 -6 -7 -12 -20 -28 -33 -37 -40 -42 -45 -46 -44 -41 -37 -29 -24 -24 -27 -31 -33 -33 -32 -32 -33 -36 -34 -31 -27 -25 -25 -28 -31 -35 -39 -43 -44 -45 -45 -45 -45 -44 -43 -42 -42 -43 -45 -47 -47 -47 -46 -45 -46 -46 -46 -44 -43 -43 -43 -42 -41 -40 -40 -41 -41 -41 -42 -42 -43 -44 -44 -42 -39 -38 -39 -41 -42 -43 -44 -44 -44 -44 -43 -42 -42 -43 -45 -47 -47 -47 -47 -48 -48 -49 -49 -50 -51 -52 -53 -53 -53 -53 -54 -55 -55 -56 -57 -58 -58 -58 -57 -56 -54 -53 -53 -52 -50 -45 -39 -34 -30 -26 -24 -24 -25 -27 -30 -35 -41 -46 -50 -53 -55 -57 -57 -58 -58 -57 -56 -56 -55 -54 -55 -56 -58 -59 -61 -61 -61 -62 -62 -63 -64 -65 -65 -64 -63 -63 -64 -64 -65 -65 -65 -65 -64 -64 -64 -63 -61 -58 -56 -53 -50 -48 -46 -44 -43 -43 -43 -43 -43 -42 -41 -40 -39 -38 -38 -37 -38 -39 -41 -41 -42 -43 -44 -45 -46 -45 -43 -43 -43 -43 -44 -45 -47 -48 -49 -50 -52 -54 -56 -59 -60 -61 -61 -62 -63 -63 -63 -65 -68 -68 -66 -64 -63 -60 -57 -57 -58 -59 -60 -61 -60 -54 -45 -37 -32 -28 -29 -30 -32 -37 -45 -46 -43 -37 -30 -30 -29 -28 -28 -29 -30 -33 -36 -39 -44 -52 -59 -62 -62 -60 -57 -55 -54 -52 -51 -50 -50 -50 -48 -43 -40 -44 -47 -46 -43 -42 -41 -42 -42 -43 -45 -46 -46 -46 -45 -44 -43 -42 -42 -42 -42 -42 -42 -42 -41 -41 -40 -39 -38 -38 -39 -39 -37 -34 -32 -32 -33 -33 -35 -38 -37 -24 -19 -23 -32 -31 -24 -19 -19 -26 -26 -26 -27 -28 -28 -27 -26 -25 -24 -21 -15 -11 -4 5 8 10 10 -16 -22 -34 -40 -40 -38 -34 -30 -29 -29 -27 -26 -29 -39 -45 -49 -50 -47 -42 -42 -45 -47 -46 -44 -46 -49 -53 -56 -57 -54 -47 -37 -29 -28 -27 -24 -20 -19 -20 -21 -23 -24 -23 -19 -13 -8 -5 -2 -1 0 0 -1 -2 1 4 5 5 5 8 9 8 6 3 -0 -3 -3 -3 -2 -2 -4 -6 -6 -4 -2 -3 -7 -14 -23 -30 -35 -39 -43 -46 -48 -47 -43 -38 -33 -25 -21 -22 -26 -30 -33 -31 -29 -27 -29 -33 -32 -28 -25 -25 -28 -31 -35 -39 -42 -44 -45 -46 -46 -45 -44 -43 -42 -42 -42 -44 -45 -46 -47 -47 -46 -46 -46 -46 -46 -45 -43 -42 -42 -42 -41 -41 -41 -42 -43 -43 -44 -44 -43 -43 -43 -43 -41 -39 -37 -38 -39 -40 -42 -45 -48 -49 -49 -48 -45 -44 -45 -48 -49 -48 -46 -46 -47 -48 -48 -49 -50 -51 -52 -52 -52 -52 -53 -54 -54 -55 -56 -56 -57 -57 -56 -54 -53 -51 -51 -51 -49 -46 -43 -40 -36 -31 -26 -24 -25 -26 -29 -33 -38 -42 -46 -50 -53 -56 -58 -58 -57 -56 -57 -57 -56 -55 -55 -56 -57 -58 -59 -60 -62 -65 -66 -66 -67 -67 -67 -67 -66 -64 -64 -65 -66 -67 -68 -68 -67 -67 -66 -66 -64 -63 -60 -58 -55 -52 -49 -47 -45 -45 -44 -44 -44 -43 -41 -40 -38 -37 -37 -38 -39 -41 -42 -44 -44 -45 -45 -46 -46 -45 -44 -43 -43 -44 -45 -47 -50 -53 -53 -55 -57 -59 -59 -60 -62 -63 -64 -65 -66 -63 -61 -61 -64 -64 -60 -58 -57 -56 -55 -56 -57 -59 -61 -62 -59 -49 -39 -32 -29 -27 -27 -27 -28 -30 -33 -33 -31 -29 -28 -29 -29 -29 -30 -30 -32 -35 -41 -47 -50 -56 -60 -62 -63 -62 -60 -57 -56 -54 -52 -51 -50 -51 -49 -45 -41 -45 -49 -48 -44 -43 -43 -44 -45 -45 -45 -46 -47 -47 -46 -44 -44 -43 -43 -42 -42 -42 -43 -43 -43 -42 -40 -40 -40 -40 -40 -39 -38 -37 -36 -34 -32 -32 -33 -39 -37 -28 -23 -25 -29 -31 -29 -24 -21 -25 -27 -28 -30 -31 -31 -30 -29 -28 -27 -25 -23 -20 -12 -2 3 7 9 -18 -26 -37 -41 -40 -35 -30 -28 -28 -28 -26 -27 -35 -44 -48 -50 -49 -46 -43 -45 -49 -51 -51 -49 -50 -52 -54 -55 -55 -53 -46 -37 -29 -27 -25 -21 -18 -19 -22 -24 -25 -25 -23 -18 -12 -8 -5 -4 -2 -2 -4 -5 -5 -1 2 2 2 4 7 8 8 6 2 -1 -1 0 2 2 1 0 0 0 -0 -2 -6 -11 -17 -24 -30 -36 -40 -43 -46 -48 -46 -42 -36 -29 -23 -21 -23 -25 -28 -30 -28 -25 -25 -27 -31 -31 -29 -27 -28 -32 -36 -39 -41 -43 -45 -46 -46 -46 -45 -44 -43 -43 -42 -43 -44 -45 -46 -46 -46 -46 -47 -47 -47 -45 -44 -42 -41 -41 -41 -41 -42 -42 -43 -44 -44 -43 -42 -42 -42 -43 -43 -41 -38 -36 -37 -38 -40 -42 -45 -48 -50 -51 -51 -49 -46 -47 -48 -48 -47 -44 -45 -47 -47 -47 -48 -49 -50 -52 -52 -52 -52 -52 -53 -53 -54 -55 -55 -55 -55 -55 -53 -51 -50 -49 -48 -48 -47 -45 -45 -44 -39 -31 -26 -25 -27 -29 -32 -36 -41 -45 -48 -51 -54 -56 -57 -56 -55 -56 -57 -57 -55 -55 -55 -56 -57 -58 -59 -61 -63 -66 -69 -70 -71 -71 -72 -70 -67 -66 -66 -67 -69 -71 -72 -71 -69 -69 -68 -68 -66 -65 -63 -61 -58 -55 -52 -49 -47 -46 -45 -45 -44 -41 -39 -38 -37 -37 -39 -40 -42 -44 -45 -46 -46 -46 -47 -47 -46 -45 -44 -43 -45 -48 -51 -55 -59 -60 -60 -60 -60 -60 -61 -62 -65 -66 -66 -65 -61 -59 -58 -59 -59 -59 -58 -56 -55 -55 -55 -56 -58 -61 -62 -56 -45 -35 -32 -30 -28 -27 -26 -27 -27 -29 -30 -30 -29 -28 -29 -30 -30 -31 -32 -33 -37 -44 -53 -54 -57 -61 -63 -64 -64 -62 -60 -57 -56 -54 -51 -51 -51 -50 -48 -45 -46 -47 -46 -44 -44 -45 -45 -45 -45 -45 -46 -47 -47 -46 -45 -44 -43 -43 -42 -42 -43 -43 -44 -44 -42 -40 -40 -41 -41 -40 -39 -38 -37 -36 -30 -26 -26 -28 -36 -37 -33 -29 -29 -27 -29 -30 -28 -26 -27 -29 -30 -31 -32 -32 -31 -29 -28 -28 -27 -26 -24 -18 -9 -3 4 7 -20 -29 -38 -40 -39 -35 -29 -26 -27 -26 -26 -29 -38 -45 -48 -48 -47 -45 -46 -51 -55 -58 -57 -55 -55 -56 -56 -55 -53 -51 -46 -38 -29 -26 -22 -20 -20 -23 -27 -28 -26 -24 -20 -16 -12 -10 -10 -10 -9 -9 -10 -10 -8 -3 0 2 3 5 7 8 7 4 1 -1 2 5 7 7 5 4 2 0 -3 -8 -12 -16 -19 -23 -28 -33 -37 -39 -42 -46 -46 -41 -34 -27 -22 -22 -23 -23 -24 -23 -23 -23 -25 -27 -30 -32 -33 -33 -34 -38 -40 -41 -42 -43 -45 -46 -46 -45 -44 -44 -44 -43 -43 -43 -44 -45 -46 -46 -45 -46 -48 -49 -48 -45 -42 -41 -40 -40 -40 -41 -41 -42 -43 -44 -43 -41 -40 -40 -42 -44 -44 -42 -39 -38 -39 -39 -40 -42 -45 -48 -50 -51 -51 -51 -49 -49 -48 -47 -45 -44 -46 -47 -48 -48 -47 -48 -50 -52 -53 -54 -53 -52 -52 -53 -53 -54 -53 -53 -53 -53 -52 -50 -48 -46 -45 -46 -47 -47 -48 -50 -47 -38 -30 -26 -27 -29 -32 -36 -41 -45 -48 -51 -52 -54 -55 -55 -55 -56 -57 -57 -55 -55 -55 -56 -57 -57 -58 -60 -62 -64 -67 -70 -73 -75 -77 -75 -72 -70 -70 -71 -74 -76 -78 -77 -74 -71 -71 -70 -70 -69 -68 -67 -65 -62 -59 -55 -52 -49 -47 -45 -44 -42 -39 -38 -38 -39 -41 -42 -44 -46 -47 -48 -48 -48 -48 -48 -49 -48 -48 -47 -49 -53 -56 -58 -59 -59 -60 -60 -60 -60 -60 -62 -64 -65 -63 -61 -55 -51 -50 -50 -52 -56 -58 -58 -57 -55 -54 -55 -57 -60 -59 -51 -42 -35 -33 -31 -29 -27 -27 -26 -27 -28 -30 -32 -33 -29 -29 -31 -32 -33 -34 -36 -40 -46 -54 -56 -58 -61 -65 -66 -65 -63 -61 -58 -56 -54 -51 -50 -51 -51 -50 -45 -42 -42 -42 -43 -45 -46 -45 -45 -45 -45 -46 -46 -46 -45 -45 -44 -43 -43 -43 -43 -44 -44 -44 -43 -41 -40 -40 -42 -41 -40 -39 -37 -36 -32 -24 -19 -20 -22 -30 -35 -36 -34 -33 -31 -31 -30 -30 -29 -29 -30 -31 -32 -32 -32 -31 -28 -26 -29 -29 -27 -25 -21 -13 -7 1 4 -21 -29 -35 -39 -40 -36 -30 -26 -26 -26 -28 -32 -39 -44 -46 -45 -45 -46 -50 -56 -60 -61 -61 -59 -58 -57 -57 -55 -52 -49 -44 -37 -28 -24 -21 -21 -25 -30 -32 -31 -27 -23 -20 -17 -15 -16 -17 -18 -17 -16 -15 -14 -9 -3 1 3 4 6 8 6 4 1 -0 2 7 10 11 9 6 2 -2 -5 -8 -12 -14 -16 -18 -21 -24 -28 -31 -34 -38 -43 -44 -41 -34 -26 -22 -22 -21 -19 -17 -16 -19 -23 -27 -31 -32 -34 -36 -38 -39 -41 -43 -44 -43 -44 -45 -46 -45 -45 -44 -45 -45 -45 -44 -45 -45 -45 -46 -45 -45 -46 -50 -51 -49 -45 -41 -39 -39 -39 -39 -39 -40 -42 -43 -43 -42 -40 -39 -40 -41 -44 -44 -44 -43 -42 -40 -40 -41 -43 -46 -48 -50 -51 -51 -51 -51 -50 -49 -47 -45 -44 -46 -48 -50 -51 -49 -48 -49 -51 -54 -56 -55 -54 -52 -52 -53 -53 -53 -53 -52 -51 -51 -49 -47 -45 -44 -44 -45 -47 -48 -48 -48 -43 -35 -29 -28 -30 -32 -36 -40 -45 -49 -50 -51 -52 -52 -54 -55 -55 -55 -56 -56 -56 -56 -56 -57 -57 -57 -58 -61 -63 -65 -68 -71 -74 -76 -76 -75 -74 -74 -76 -78 -81 -82 -82 -79 -76 -74 -73 -73 -72 -71 -71 -70 -68 -65 -61 -57 -53 -49 -46 -45 -43 -41 -40 -40 -41 -43 -45 -46 -47 -48 -49 -50 -50 -50 -50 -52 -54 -55 -55 -55 -55 -56 -58 -58 -58 -59 -60 -60 -60 -60 -60 -60 -59 -56 -54 -49 -45 -44 -45 -47 -52 -56 -58 -58 -56 -54 -54 -55 -56 -51 -42 -37 -36 -35 -32 -30 -29 -28 -27 -27 -28 -31 -36 -41 -36 -32 -32 -34 -36 -37 -39 -44 -50 -56 -57 -59 -62 -66 -67 -65 -63 -61 -60 -58 -55 -52 -51 -51 -51 -46 -38 -34 -35 -39 -43 -45 -45 -44 -44 -44 -44 -44 -45 -45 -43 -43 -44 -44 -43 -43 -43 -44 -44 -44 -43 -42 -41 -41 -42 -41 -40 -39 -37 -36 -30 -24 -20 -19 -20 -25 -32 -37 -37 -36 -33 -32 -32 -31 -31 -31 -31 -31 -32 -32 -33 -32 -29 -27 -29 -29 -28 -26 -21 -10 -5 -2 -0 -21 -28 -34 -38 -40 -37 -31 -26 -26 -28 -32 -37 -42 -46 -47 -47 -47 -50 -55 -59 -61 -61 -60 -59 -57 -56 -56 -55 -51 -47 -41 -34 -27 -22 -21 -24 -30 -35 -35 -32 -29 -26 -24 -23 -23 -23 -22 -21 -19 -18 -16 -13 -8 -1 2 3 4 4 4 1 -2 -2 0 6 11 13 10 6 2 -0 -4 -7 -10 -12 -13 -15 -16 -18 -19 -22 -25 -30 -35 -39 -41 -40 -34 -26 -20 -20 -18 -15 -13 -14 -19 -25 -30 -33 -33 -34 -36 -38 -40 -41 -44 -45 -45 -43 -44 -45 -45 -44 -44 -46 -46 -45 -45 -46 -46 -46 -46 -46 -46 -47 -49 -49 -47 -43 -40 -39 -38 -38 -39 -39 -39 -41 -43 -43 -41 -39 -38 -38 -40 -42 -43 -45 -45 -44 -41 -40 -41 -43 -46 -48 -49 -50 -50 -49 -50 -51 -50 -48 -46 -46 -47 -49 -51 -52 -51 -50 -50 -52 -53 -55 -56 -55 -54 -53 -52 -52 -52 -52 -51 -50 -51 -50 -47 -45 -43 -44 -45 -45 -45 -46 -47 -44 -38 -32 -30 -31 -34 -37 -41 -45 -48 -50 -50 -50 -50 -52 -54 -54 -54 -55 -57 -57 -57 -57 -56 -56 -56 -57 -59 -61 -64 -67 -70 -72 -74 -75 -74 -73 -73 -75 -78 -81 -82 -82 -82 -81 -79 -78 -78 -77 -75 -75 -74 -73 -70 -67 -63 -58 -53 -48 -47 -46 -45 -43 -43 -44 -45 -47 -48 -49 -50 -52 -53 -55 -55 -55 -56 -58 -60 -60 -58 -57 -57 -58 -58 -58 -58 -59 -60 -60 -60 -59 -57 -53 -47 -48 -47 -46 -46 -46 -47 -51 -55 -59 -58 -57 -55 -54 -54 -53 -46 -40 -39 -41 -41 -36 -33 -31 -30 -29 -28 -28 -32 -39 -49 -45 -40 -38 -41 -44 -45 -47 -51 -57 -61 -62 -62 -64 -66 -66 -64 -62 -61 -61 -61 -58 -55 -53 -53 -51 -44 -39 -37 -39 -44 -45 -45 -44 -43 -43 -43 -43 -44 -44 -44 -43 -42 -42 -43 -42 -42 -43 -43 -44 -45 -45 -44 -43 -43 -42 -41 -40 -39 -38 -39 -37 -32 -25 -21 -21 -24 -29 -35 -39 -37 -35 -33 -33 -33 -34 -33 -33 -32 -32 -32 -32 -32 -31 -30 -30 -29 -29 -27 -24 -15 -11 -9 -8 -21 -26 -33 -39 -39 -36 -32 -27 -27 -32 -37 -43 -49 -53 -53 -54 -55 -57 -59 -60 -59 -58 -57 -57 -56 -55 -54 -54 -51 -45 -38 -30 -23 -21 -25 -31 -36 -38 -38 -35 -31 -26 -22 -21 -23 -23 -22 -19 -17 -17 -16 -13 -8 -2 -1 -1 -2 -3 -5 -7 -8 -5 0 8 12 12 8 5 3 2 -1 -4 -7 -9 -12 -14 -16 -16 -15 -16 -21 -26 -30 -34 -38 -39 -34 -24 -17 -17 -16 -15 -14 -16 -21 -26 -31 -35 -36 -35 -37 -40 -43 -45 -45 -45 -45 -44 -44 -44 -44 -44 -45 -46 -46 -46 -46 -47 -47 -47 -47 -47 -46 -46 -47 -47 -44 -41 -39 -40 -40 -39 -38 -38 -39 -41 -42 -41 -38 -36 -36 -37 -38 -40 -43 -45 -45 -43 -41 -40 -42 -44 -46 -48 -48 -48 -47 -47 -49 -50 -50 -48 -47 -47 -48 -49 -51 -52 -52 -51 -52 -53 -54 -55 -57 -58 -57 -54 -51 -50 -51 -51 -50 -48 -49 -48 -47 -45 -44 -45 -45 -45 -45 -46 -46 -44 -39 -35 -33 -34 -36 -39 -42 -44 -46 -48 -50 -50 -49 -50 -51 -52 -53 -55 -57 -58 -58 -58 -56 -55 -55 -55 -57 -60 -62 -65 -68 -71 -73 -73 -73 -72 -71 -73 -77 -80 -81 -80 -80 -81 -82 -82 -83 -81 -79 -79 -79 -79 -76 -74 -70 -66 -59 -52 -52 -53 -52 -49 -47 -48 -49 -51 -53 -54 -54 -56 -58 -61 -61 -61 -61 -61 -60 -59 -59 -58 -58 -58 -58 -58 -58 -58 -59 -59 -60 -59 -56 -50 -46 -47 -49 -50 -51 -51 -51 -54 -58 -60 -59 -57 -56 -54 -53 -53 -50 -46 -46 -49 -50 -44 -38 -34 -32 -31 -30 -30 -33 -39 -51 -52 -49 -48 -51 -55 -57 -57 -59 -62 -65 -67 -67 -66 -66 -66 -64 -62 -62 -63 -63 -60 -57 -54 -53 -52 -48 -46 -45 -45 -46 -45 -44 -43 -43 -44 -44 -44 -44 -44 -44 -43 -42 -42 -42 -42 -43 -44 -45 -46 -48 -47 -46 -45 -44 -42 -41 -40 -39 -40 -41 -40 -38 -34 -28 -25 -25 -28 -32 -38 -38 -36 -35 -34 -35 -35 -35 -34 -32 -31 -31 -31 -31 -31 -30 -29 -29 -29 -28 -26 -22 -19 -17 -16 -21 -25 -33 -38 -37 -34 -31 -28 -29 -34 -41 -48 -55 -59 -60 -60 -60 -61 -61 -59 -56 -54 -53 -54 -55 -53 -50 -48 -44 -36 -29 -23 -20 -24 -30 -36 -39 -40 -38 -35 -32 -28 -25 -23 -22 -21 -19 -17 -17 -18 -18 -16 -11 -7 -7 -8 -9 -12 -14 -15 -14 -9 -0 7 10 9 8 6 7 5 2 -1 -4 -8 -12 -15 -15 -13 -11 -13 -17 -21 -25 -30 -36 -37 -32 -22 -15 -15 -15 -16 -17 -19 -23 -27 -32 -37 -39 -38 -39 -42 -46 -48 -49 -48 -47 -46 -45 -44 -44 -44 -45 -46 -46 -46 -48 -49 -49 -48 -48 -47 -47 -46 -47 -46 -44 -40 -37 -38 -39 -40 -40 -40 -40 -41 -42 -41 -38 -36 -36 -37 -39 -40 -43 -45 -45 -43 -40 -40 -43 -46 -47 -47 -47 -47 -46 -46 -48 -50 -50 -49 -48 -48 -48 -49 -50 -51 -52 -52 -52 -53 -54 -56 -57 -58 -58 -55 -50 -48 -49 -50 -50 -48 -47 -47 -46 -45 -44 -44 -44 -44 -44 -45 -45 -44 -42 -40 -39 -39 -39 -40 -41 -42 -44 -46 -49 -51 -50 -49 -49 -49 -51 -53 -56 -58 -58 -58 -56 -55 -54 -54 -56 -58 -61 -64 -67 -69 -71 -71 -71 -71 -70 -68 -69 -73 -77 -79 -80 -80 -81 -81 -82 -83 -83 -84 -84 -83 -81 -78 -75 -71 -65 -59 -58 -58 -58 -56 -55 -55 -56 -57 -59 -61 -62 -62 -62 -62 -62 -62 -61 -61 -60 -59 -58 -58 -58 -58 -58 -58 -58 -58 -59 -60 -61 -61 -60 -56 -49 -49 -52 -56 -59 -58 -57 -59 -62 -62 -59 -58 -57 -55 -53 -52 -52 -51 -51 -53 -54 -51 -47 -42 -39 -35 -33 -33 -35 -40 -50 -55 -57 -58 -59 -62 -64 -64 -64 -66 -67 -66 -65 -64 -64 -64 -65 -65 -65 -65 -63 -59 -56 -53 -52 -51 -49 -49 -48 -47 -46 -45 -44 -43 -43 -44 -44 -44 -43 -43 -43 -43 -43 -43 -43 -44 -45 -46 -46 -48 -48 -48 -48 -47 -46 -43 -41 -40 -41 -41 -42 -41 -41 -39 -36 -33 -32 -33 -34 -38 -38 -37 -36 -35 -35 -35 -35 -34 -32 -31 -30 -28 -28 -30 -30 -29 -29 -29 -28 -27 -25 -23 -20 -18 -23 -24 -31 -36 -35 -33 -30 -29 -31 -35 -41 -48 -53 -57 -59 -59 -59 -58 -58 -56 -52 -50 -51 -53 -54 -51 -47 -43 -40 -32 -24 -20 -21 -28 -34 -39 -40 -39 -36 -34 -31 -29 -28 -28 -26 -22 -20 -19 -21 -23 -23 -21 -17 -14 -15 -16 -19 -21 -21 -21 -17 -10 -2 4 5 5 6 8 8 6 3 -0 -4 -9 -13 -14 -12 -9 -9 -11 -13 -17 -20 -26 -32 -34 -29 -21 -14 -15 -17 -19 -20 -22 -24 -28 -34 -40 -43 -42 -43 -44 -47 -50 -52 -52 -51 -49 -47 -45 -44 -44 -45 -46 -47 -48 -48 -49 -49 -48 -47 -47 -46 -46 -48 -47 -45 -41 -39 -38 -39 -40 -42 -43 -43 -42 -42 -41 -39 -38 -38 -39 -40 -41 -41 -41 -41 -40 -40 -41 -44 -46 -47 -47 -47 -46 -46 -46 -47 -49 -50 -49 -48 -47 -47 -47 -48 -50 -52 -53 -52 -52 -53 -53 -54 -54 -54 -52 -48 -46 -46 -47 -48 -47 -46 -46 -45 -44 -43 -44 -44 -44 -44 -44 -45 -44 -42 -40 -40 -39 -39 -38 -38 -40 -43 -46 -49 -50 -50 -48 -47 -47 -49 -52 -55 -57 -57 -56 -56 -54 -54 -54 -55 -58 -61 -63 -65 -66 -69 -69 -70 -69 -69 -66 -65 -68 -73 -77 -78 -79 -79 -79 -80 -81 -83 -84 -85 -84 -81 -78 -75 -72 -68 -65 -62 -61 -60 -59 -56 -56 -57 -58 -59 -60 -62 -62 -62 -62 -62 -62 -61 -60 -59 -58 -57 -57 -56 -56 -57 -58 -57 -57 -57 -58 -60 -61 -61 -59 -53 -53 -56 -59 -60 -60 -61 -63 -65 -65 -61 -59 -58 -56 -54 -53 -53 -54 -54 -54 -55 -55 -54 -52 -49 -43 -41 -39 -39 -43 -49 -56 -60 -62 -62 -65 -66 -67 -67 -68 -67 -65 -62 -60 -61 -62 -63 -65 -66 -67 -63 -57 -54 -52 -51 -50 -49 -49 -49 -48 -45 -45 -45 -45 -44 -43 -43 -42 -42 -42 -42 -43 -43 -44 -45 -46 -46 -47 -47 -48 -49 -49 -49 -48 -45 -42 -41 -41 -42 -43 -43 -43 -42 -41 -38 -36 -37 -38 -39 -38 -38 -37 -36 -35 -35 -35 -35 -33 -32 -31 -29 -26 -25 -28 -29 -28 -28 -28 -27 -27 -25 -24 -22 -19 -25 -25 -28 -33 -33 -32 -32 -34 -36 -38 -42 -47 -52 -54 -56 -57 -57 -55 -54 -52 -49 -47 -48 -48 -49 -47 -44 -38 -32 -26 -22 -22 -27 -33 -37 -39 -39 -37 -35 -34 -34 -33 -33 -33 -30 -27 -24 -24 -25 -27 -27 -26 -23 -21 -22 -24 -26 -27 -27 -25 -19 -11 -3 -0 -1 -0 2 5 5 3 1 -1 -5 -10 -12 -11 -8 -6 -8 -10 -12 -15 -18 -24 -28 -29 -25 -19 -15 -15 -18 -21 -23 -25 -27 -31 -35 -41 -44 -46 -47 -48 -49 -51 -53 -55 -54 -51 -49 -46 -45 -44 -45 -46 -48 -49 -49 -48 -47 -47 -46 -46 -45 -46 -48 -47 -46 -43 -42 -42 -42 -42 -43 -45 -46 -45 -44 -43 -42 -41 -40 -41 -41 -41 -40 -40 -39 -40 -41 -43 -44 -46 -47 -48 -47 -46 -45 -44 -46 -48 -49 -49 -48 -46 -45 -45 -46 -50 -53 -53 -53 -53 -52 -51 -50 -50 -50 -48 -46 -44 -44 -44 -44 -45 -46 -47 -45 -43 -42 -43 -44 -44 -44 -45 -45 -44 -42 -40 -39 -39 -38 -38 -39 -41 -43 -45 -48 -49 -50 -48 -47 -46 -47 -50 -54 -55 -55 -55 -55 -54 -54 -54 -55 -58 -61 -62 -63 -64 -66 -68 -68 -68 -67 -64 -62 -63 -66 -71 -76 -78 -79 -79 -80 -81 -83 -84 -86 -86 -82 -78 -75 -72 -69 -67 -63 -60 -58 -57 -52 -50 -52 -55 -57 -59 -60 -60 -60 -61 -61 -61 -60 -59 -58 -58 -58 -57 -56 -54 -52 -54 -54 -52 -52 -52 -54 -58 -61 -61 -58 -58 -59 -60 -60 -60 -61 -63 -65 -66 -62 -59 -58 -58 -56 -55 -54 -55 -55 -56 -56 -57 -57 -56 -54 -51 -50 -48 -47 -53 -56 -59 -61 -62 -64 -66 -67 -67 -67 -66 -65 -63 -60 -59 -60 -61 -63 -65 -67 -68 -63 -58 -54 -53 -52 -51 -50 -50 -49 -48 -44 -44 -46 -46 -45 -44 -43 -42 -42 -41 -42 -43 -44 -46 -47 -47 -48 -48 -48 -49 -50 -50 -50 -49 -45 -42 -41 -42 -43 -45 -45 -45 -45 -43 -37 -34 -34 -37 -40 -39 -38 -37 -36 -34 -33 -34 -34 -33 -31 -30 -28 -27 -26 -28 -28 -27 -27 -26 -25 -24 -24 -23 -22 -20 -27 -25 -25 -28 -30 -31 -34 -37 -41 -43 -47 -50 -53 -56 -58 -57 -55 -51 -49 -46 -45 -45 -47 -46 -45 -42 -39 -34 -29 -24 -23 -26 -32 -38 -39 -39 -38 -38 -37 -36 -36 -35 -35 -35 -33 -30 -27 -27 -27 -28 -28 -27 -25 -24 -26 -29 -31 -32 -32 -27 -19 -11 -4 -4 -6 -6 -4 -2 -1 -1 -1 -3 -6 -9 -9 -6 -4 -4 -7 -10 -13 -16 -20 -24 -25 -23 -20 -17 -15 -16 -20 -23 -26 -29 -31 -34 -37 -41 -45 -49 -51 -51 -51 -51 -52 -54 -53 -51 -49 -49 -48 -47 -46 -47 -49 -50 -50 -48 -46 -45 -45 -45 -44 -45 -46 -46 -45 -45 -46 -47 -45 -44 -45 -47 -48 -48 -48 -47 -47 -45 -44 -44 -44 -42 -40 -40 -40 -41 -42 -43 -45 -46 -47 -48 -48 -46 -44 -43 -44 -46 -48 -49 -49 -47 -46 -45 -47 -49 -52 -53 -53 -52 -50 -49 -48 -48 -47 -47 -45 -44 -44 -43 -44 -45 -47 -47 -47 -44 -43 -43 -43 -44 -45 -46 -45 -43 -41 -40 -39 -39 -38 -38 -38 -40 -42 -45 -46 -48 -48 -47 -46 -46 -47 -49 -51 -53 -53 -53 -54 -55 -55 -55 -56 -58 -60 -61 -61 -62 -64 -66 -67 -68 -68 -66 -63 -62 -63 -66 -71 -76 -78 -79 -79 -80 -81 -84 -85 -85 -82 -78 -76 -73 -72 -69 -63 -57 -53 -52 -47 -45 -47 -51 -56 -60 -61 -60 -58 -58 -61 -61 -61 -60 -60 -59 -59 -58 -56 -51 -45 -46 -47 -45 -45 -46 -49 -54 -60 -61 -60 -59 -59 -59 -60 -60 -60 -62 -64 -63 -61 -59 -59 -58 -57 -56 -56 -56 -56 -57 -58 -58 -58 -57 -55 -55 -55 -54 -52 -54 -56 -58 -60 -62 -65 -67 -67 -65 -63 -62 -62 -61 -60 -60 -61 -62 -63 -65 -67 -67 -62 -57 -54 -53 -53 -53 -52 -50 -47 -48 -46 -46 -47 -47 -45 -45 -44 -44 -43 -42 -43 -44 -45 -47 -48 -49 -49 -48 -49 -49 -48 -48 -48 -49 -46 -44 -43 -43 -44 -45 -45 -46 -46 -45 -39 -34 -34 -38 -40 -39 -39 -38 -37 -35 -32 -32 -32 -31 -30 -29 -28 -27 -28 -28 -27 -26 -23 -18 -17 -18 -19 -21 -23 -21 -27 -25 -24 -26 -29 -31 -33 -36 -40 -43 -47 -51 -53 -53 -56 -56 -53 -49 -46 -45 -45 -45 -46 -45 -43 -39 -36 -33 -30 -26 -27 -31 -37 -40 -42 -41 -40 -40 -40 -38 -36 -35 -34 -33 -32 -29 -28 -27 -26 -25 -25 -24 -23 -24 -27 -30 -32 -35 -34 -27 -18 -9 -5 -6 -9 -9 -9 -8 -6 -4 -4 -5 -5 -6 -4 -2 -2 -5 -8 -11 -15 -20 -24 -25 -22 -19 -17 -16 -17 -19 -22 -26 -30 -34 -36 -38 -39 -42 -46 -50 -52 -53 -53 -51 -51 -52 -51 -50 -49 -50 -52 -51 -49 -47 -49 -50 -50 -48 -46 -44 -43 -43 -44 -45 -45 -44 -45 -46 -49 -50 -49 -47 -47 -48 -49 -50 -50 -51 -50 -48 -47 -47 -46 -43 -41 -40 -41 -42 -43 -44 -45 -45 -46 -47 -47 -46 -44 -43 -43 -45 -48 -50 -51 -49 -47 -47 -47 -49 -52 -53 -53 -52 -50 -49 -49 -48 -48 -47 -46 -46 -45 -45 -44 -45 -47 -48 -48 -46 -44 -42 -43 -43 -44 -46 -45 -42 -39 -38 -40 -40 -39 -38 -37 -38 -41 -43 -45 -46 -47 -46 -46 -46 -47 -48 -49 -51 -52 -52 -53 -55 -56 -57 -56 -58 -60 -61 -60 -60 -62 -64 -66 -68 -70 -70 -69 -66 -65 -65 -69 -74 -77 -78 -79 -80 -81 -82 -83 -83 -80 -78 -77 -76 -75 -70 -64 -58 -53 -50 -48 -46 -45 -47 -55 -61 -63 -60 -56 -55 -60 -62 -62 -61 -61 -61 -60 -59 -57 -53 -45 -42 -41 -44 -46 -49 -51 -54 -58 -58 -58 -58 -58 -58 -59 -59 -59 -61 -62 -62 -60 -59 -59 -58 -57 -56 -56 -57 -57 -57 -57 -57 -57 -56 -56 -56 -56 -55 -54 -54 -55 -57 -59 -61 -64 -64 -64 -62 -60 -60 -60 -61 -61 -61 -63 -63 -64 -66 -66 -64 -59 -54 -53 -53 -54 -54 -51 -45 -41 -49 -51 -50 -47 -46 -46 -46 -46 -46 -46 -44 -45 -45 -46 -48 -48 -49 -49 -49 -49 -48 -44 -41 -43 -48 -48 -46 -44 -45 -45 -45 -45 -46 -46 -46 -43 -39 -38 -39 -40 -40 -40 -39 -38 -37 -34 -32 -31 -30 -30 -29 -28 -28 -28 -28 -28 -23 -15 -5 -3 -4 -8 -15 -23 -22 -26 -25 -25 -25 -28 -30 -32 -34 -38 -41 -45 -47 -49 -49 -52 -52 -50 -47 -45 -46 -46 -46 -46 -45 -43 -40 -38 -37 -35 -31 -32 -35 -39 -42 -45 -44 -42 -40 -40 -40 -38 -36 -34 -32 -30 -29 -28 -27 -25 -23 -21 -20 -21 -23 -25 -27 -29 -30 -29 -22 -15 -10 -10 -12 -13 -13 -12 -11 -9 -8 -6 -5 -4 -2 -1 -1 -4 -7 -10 -15 -20 -25 -26 -24 -20 -17 -16 -18 -20 -24 -28 -32 -36 -39 -40 -40 -41 -43 -47 -50 -53 -54 -53 -51 -50 -51 -51 -50 -50 -50 -51 -51 -50 -49 -49 -49 -49 -47 -45 -43 -42 -43 -45 -46 -44 -43 -43 -47 -51 -52 -51 -50 -50 -49 -49 -49 -49 -49 -49 -48 -48 -47 -46 -44 -41 -41 -41 -42 -43 -44 -45 -45 -46 -47 -47 -46 -44 -43 -43 -45 -48 -51 -52 -50 -48 -47 -48 -50 -51 -51 -51 -50 -49 -49 -49 -49 -49 -48 -46 -46 -45 -45 -46 -47 -47 -48 -48 -48 -45 -43 -42 -43 -44 -45 -45 -42 -39 -38 -40 -41 -42 -40 -38 -37 -38 -40 -43 -44 -46 -46 -46 -46 -46 -47 -48 -48 -49 -50 -53 -55 -56 -57 -57 -58 -59 -59 -59 -59 -61 -63 -65 -67 -69 -71 -72 -70 -67 -66 -68 -72 -76 -79 -80 -81 -82 -82 -81 -78 -76 -76 -76 -75 -75 -73 -70 -67 -62 -55 -52 -50 -50 -49 -54 -60 -61 -59 -55 -54 -59 -62 -62 -63 -63 -62 -61 -60 -59 -57 -52 -46 -42 -44 -48 -54 -57 -57 -56 -55 -56 -56 -56 -57 -57 -58 -58 -58 -58 -59 -59 -59 -58 -57 -56 -55 -55 -55 -56 -55 -54 -54 -54 -54 -55 -55 -55 -55 -55 -55 -56 -57 -58 -60 -60 -61 -60 -59 -58 -60 -62 -63 -64 -64 -64 -65 -65 -66 -65 -61 -56 -53 -53 -53 -54 -54 -49 -40 -40 -50 -53 -52 -47 -46 -47 -49 -49 -48 -48 -47 -47 -47 -48 -49 -49 -49 -49 -48 -49 -47 -40 -34 -37 -47 -48 -47 -46 -47 -46 -45 -45 -45 -46 -45 -44 -42 -41 -41 -40 -41 -41 -40 -39 -38 -35 -32 -31 -30 -30 -29 -29 -28 -27 -27 -26 -19 -7 1 1 -0 -5 -13 -22 -23 -25 -26 -25 -26 -29 -31 -33 -34 -36 -39 -41 -43 -44 -46 -48 -48 -47 -45 -45 -48 -49 -48 -47 -45 -43 -42 -42 -42 -41 -39 -38 -38 -40 -42 -46 -46 -44 -42 -43 -44 -41 -36 -32 -30 -29 -28 -27 -25 -22 -20 -18 -18 -19 -21 -21 -22 -21 -20 -18 -15 -14 -15 -17 -18 -17 -15 -13 -11 -9 -7 -6 -5 -3 -2 -2 -5 -8 -11 -15 -21 -25 -27 -25 -22 -19 -18 -19 -22 -26 -29 -32 -35 -39 -44 -44 -42 -41 -42 -45 -49 -52 -54 -54 -52 -51 -51 -51 -51 -51 -51 -51 -51 -51 -50 -49 -49 -49 -48 -46 -45 -44 -44 -46 -47 -46 -44 -43 -45 -49 -50 -50 -50 -49 -49 -48 -47 -47 -48 -48 -48 -47 -46 -45 -45 -43 -41 -41 -41 -42 -43 -44 -46 -47 -47 -47 -46 -44 -43 -43 -45 -48 -51 -52 -50 -48 -48 -49 -51 -51 -50 -49 -48 -48 -49 -49 -50 -50 -49 -47 -45 -45 -46 -47 -48 -48 -48 -49 -48 -46 -44 -42 -42 -43 -45 -45 -43 -39 -37 -40 -42 -43 -41 -38 -36 -36 -38 -40 -42 -45 -46 -46 -46 -46 -46 -46 -46 -47 -50 -53 -55 -56 -56 -57 -57 -58 -58 -58 -59 -61 -62 -64 -66 -68 -70 -71 -70 -68 -67 -67 -70 -74 -80 -82 -83 -84 -84 -82 -78 -77 -77 -77 -76 -76 -75 -73 -71 -68 -62 -56 -54 -56 -58 -61 -60 -58 -57 -59 -59 -60 -61 -63 -64 -64 -63 -62 -61 -60 -59 -56 -49 -45 -46 -50 -52 -54 -55 -55 -54 -55 -56 -56 -56 -56 -56 -56 -56 -55 -56 -57 -57 -58 -57 -55 -54 -54 -54 -54 -53 -52 -52 -52 -52 -52 -52 -53 -54 -55 -56 -56 -56 -56 -57 -58 -57 -57 -57 -58 -60 -61 -62 -65 -65 -65 -65 -65 -65 -63 -60 -56 -53 -53 -53 -55 -55 -52 -45 -45 -51 -54 -53 -48 -48 -49 -51 -51 -50 -49 -49 -48 -49 -49 -50 -50 -50 -49 -48 -49 -47 -41 -34 -36 -46 -48 -48 -47 -48 -47 -46 -46 -46 -47 -46 -44 -43 -43 -42 -41 -41 -42 -41 -40 -38 -35 -33 -31 -30 -30 -30 -30 -29 -23 -22 -22 -16 -2 2 3 1 -2 -10 -22 -23 -24 -26 -26 -27 -30 -33 -35 -36 -37 -38 -40 -41 -42 -43 -45 -45 -45 -45 -46 -49 -50 -49 -47 -45 -44 -43 -43 -42 -43 -43 -43 -43 -42 -43 -45 -46 -46 -48 -52 -51 -45 -37 -30 -28 -28 -27 -25 -23 -19 -18 -18 -18 -18 -18 -17 -16 -15 -14 -15 -17 -19 -20 -22 -22 -21 -18 -15 -12 -10 -9 -8 -7 -6 -5 -7 -9 -12 -15 -21 -25 -27 -26 -24 -21 -20 -21 -23 -27 -31 -33 -34 -38 -42 -46 -46 -44 -42 -42 -44 -47 -50 -52 -53 -52 -51 -51 -51 -51 -51 -50 -50 -50 -50 -49 -49 -49 -49 -49 -47 -46 -44 -44 -45 -46 -45 -44 -44 -46 -48 -49 -49 -50 -50 -49 -48 -46 -45 -45 -47 -49 -49 -48 -46 -44 -42 -41 -41 -41 -42 -42 -44 -45 -47 -47 -46 -45 -44 -43 -43 -44 -47 -50 -51 -50 -48 -48 -50 -52 -52 -50 -48 -47 -47 -48 -49 -50 -49 -48 -46 -45 -45 -46 -47 -47 -47 -48 -49 -48 -48 -45 -43 -42 -43 -44 -44 -42 -39 -37 -38 -40 -40 -39 -37 -35 -35 -36 -38 -40 -43 -44 -45 -46 -46 -45 -45 -45 -46 -49 -53 -55 -56 -56 -57 -57 -57 -57 -57 -58 -60 -62 -63 -65 -67 -69 -71 -71 -69 -68 -68 -70 -74 -81 -84 -86 -86 -86 -83 -80 -80 -79 -78 -77 -78 -79 -78 -76 -73 -66 -59 -57 -61 -66 -66 -62 -57 -56 -61 -62 -62 -62 -64 -65 -65 -64 -63 -62 -61 -59 -55 -51 -49 -51 -55 -56 -55 -54 -54 -54 -55 -56 -56 -56 -55 -55 -55 -55 -54 -55 -56 -57 -58 -57 -55 -54 -53 -53 -54 -53 -52 -52 -51 -51 -51 -51 -51 -53 -54 -55 -55 -55 -55 -55 -55 -55 -55 -56 -57 -56 -54 -55 -63 -66 -66 -66 -65 -63 -61 -58 -55 -53 -53 -54 -56 -57 -57 -54 -53 -55 -56 -55 -51 -51 -52 -53 -53 -51 -50 -50 -50 -50 -49 -50 -50 -49 -48 -48 -48 -47 -44 -39 -41 -46 -49 -49 -49 -48 -47 -47 -47 -48 -47 -47 -46 -46 -46 -45 -44 -43 -43 -42 -41 -39 -36 -34 -33 -32 -31 -31 -30 -26 -16 -14 -15 -12 -0 2 3 3 -0 -7 -20 -24 -24 -26 -27 -29 -31 -34 -37 -38 -39 -40 -41 -42 -42 -42 -42 -43 -44 -45 -46 -48 -48 -47 -46 -44 -41 -39 -38 -38 -41 -43 -44 -44 -44 -44 -45 -46 -48 -51 -55 -54 -46 -37 -30 -29 -30 -27 -23 -20 -18 -19 -21 -22 -21 -19 -18 -16 -16 -17 -19 -21 -22 -23 -24 -23 -22 -19 -16 -13 -13 -13 -12 -11 -9 -9 -11 -13 -15 -19 -24 -26 -26 -24 -24 -22 -23 -25 -28 -31 -34 -36 -37 -40 -44 -47 -47 -45 -44 -43 -43 -45 -48 -50 -52 -51 -50 -50 -51 -52 -51 -51 -50 -51 -50 -47 -47 -48 -50 -49 -48 -46 -44 -44 -44 -44 -43 -44 -45 -46 -48 -49 -49 -50 -50 -48 -47 -46 -44 -44 -47 -50 -50 -48 -45 -44 -43 -42 -42 -42 -42 -42 -43 -45 -47 -47 -46 -45 -44 -44 -45 -45 -46 -47 -48 -48 -47 -48 -50 -53 -53 -50 -48 -47 -47 -47 -48 -48 -48 -47 -46 -45 -45 -46 -47 -47 -46 -47 -48 -48 -48 -46 -44 -42 -43 -44 -44 -41 -38 -37 -37 -37 -37 -36 -36 -35 -34 -35 -37 -40 -42 -44 -45 -46 -45 -45 -45 -46 -47 -49 -52 -54 -55 -55 -56 -56 -56 -57 -57 -58 -59 -61 -63 -65 -67 -69 -71 -73 -73 -72 -71 -71 -75 -81 -86 -88 -88 -85 -80 -79 -79 -80 -80 -79 -79 -79 -80 -80 -78 -70 -62 -59 -63 -69 -68 -65 -62 -61 -66 -67 -66 -66 -66 -67 -67 -65 -63 -62 -62 -60 -57 -55 -55 -56 -59 -58 -57 -55 -54 -54 -55 -55 -56 -55 -54 -54 -55 -55 -55 -56 -57 -58 -58 -57 -55 -54 -54 -54 -54 -53 -52 -52 -51 -51 -50 -51 -51 -51 -52 -53 -54 -54 -53 -53 -53 -54 -55 -55 -55 -53 -51 -54 -62 -65 -66 -67 -65 -61 -58 -55 -54 -53 -53 -54 -56 -59 -60 -59 -57 -57 -57 -56 -54 -54 -55 -56 -54 -52 -51 -50 -50 -49 -48 -48 -48 -48 -47 -48 -48 -48 -48 -47 -49 -50 -50 -49 -49 -48 -48 -48 -48 -48 -48 -48 -48 -48 -47 -46 -46 -45 -45 -43 -42 -40 -37 -35 -35 -35 -34 -33 -30 -21 -16 -13 -10 -6 -1 2 3 3 1 -4 -16 -22 -26 -28 -30 -31 -33 -34 -37 -39 -41 -43 -45 -46 -46 -44 -42 -42 -43 -44 -44 -45 -45 -46 -45 -42 -38 -35 -35 -37 -41 -43 -43 -43 -44 -46 -44 -42 -43 -48 -52 -48 -39 -32 -28 -29 -27 -24 -22 -22 -22 -23 -24 -25 -25 -23 -22 -22 -22 -23 -24 -24 -24 -24 -24 -23 -20 -18 -16 -16 -17 -17 -16 -14 -12 -13 -14 -16 -18 -22 -24 -24 -24 -24 -25 -26 -28 -29 -31 -34 -36 -38 -40 -43 -45 -47 -46 -46 -45 -45 -44 -43 -45 -47 -50 -49 -49 -50 -51 -52 -52 -51 -51 -50 -49 -46 -46 -48 -50 -50 -47 -45 -43 -43 -43 -43 -43 -44 -46 -48 -48 -49 -49 -50 -49 -48 -47 -46 -44 -44 -47 -50 -51 -49 -46 -44 -43 -43 -43 -43 -42 -42 -43 -44 -46 -47 -47 -46 -46 -46 -47 -46 -46 -46 -48 -49 -49 -48 -49 -50 -51 -50 -48 -47 -46 -46 -46 -47 -47 -47 -47 -46 -45 -46 -47 -48 -47 -46 -47 -48 -47 -46 -45 -43 -43 -43 -42 -40 -37 -36 -36 -35 -35 -35 -35 -34 -34 -34 -37 -40 -42 -43 -44 -44 -45 -45 -46 -47 -48 -49 -51 -53 -54 -54 -55 -56 -56 -57 -57 -58 -59 -61 -63 -65 -66 -68 -70 -73 -76 -77 -78 -78 -78 -81 -85 -88 -88 -85 -81 -80 -81 -82 -82 -80 -76 -75 -77 -81 -81 -74 -65 -61 -65 -70 -69 -69 -68 -69 -71 -71 -71 -71 -70 -71 -70 -67 -65 -63 -62 -61 -62 -62 -62 -61 -61 -60 -59 -57 -56 -55 -55 -55 -56 -55 -54 -54 -56 -57 -58 -58 -59 -59 -58 -57 -56 -54 -54 -54 -54 -53 -52 -52 -51 -51 -51 -52 -52 -51 -51 -52 -54 -55 -53 -52 -52 -54 -56 -55 -52 -53 -56 -59 -62 -64 -66 -67 -65 -60 -56 -55 -54 -54 -54 -55 -57 -59 -61 -59 -58 -58 -57 -56 -54 -55 -57 -58 -56 -54 -52 -51 -49 -48 -47 -47 -47 -46 -46 -47 -47 -48 -49 -49 -50 -50 -49 -49 -48 -48 -48 -48 -48 -48 -49 -49 -49 -49 -48 -47 -47 -47 -46 -45 -43 -40 -38 -36 -36 -36 -35 -34 -31 -24 -19 -16 -13 -8 -3 0 2 2 1 -1 -8 -15 -29 -32 -34 -36 -37 -37 -38 -39 -41 -43 -46 -49 -49 -47 -44 -43 -43 -43 -42 -43 -44 -45 -43 -39 -35 -34 -36 -39 -40 -39 -38 -38 -41 -44 -41 -38 -39 -43 -45 -40 -32 -27 -26 -28 -27 -25 -26 -28 -28 -28 -28 -29 -28 -27 -28 -29 -29 -28 -27 -26 -25 -25 -24 -22 -19 -17 -17 -19 -20 -20 -18 -17 -16 -16 -17 -19 -21 -23 -23 -23 -24 -27 -30 -32 -33 -34 -34 -36 -38 -41 -43 -46 -47 -47 -46 -45 -45 -46 -45 -43 -44 -45 -47 -48 -49 -49 -50 -51 -50 -50 -50 -50 -49 -47 -46 -48 -50 -50 -47 -44 -42 -41 -42 -43 -45 -47 -48 -48 -48 -48 -49 -49 -49 -48 -46 -45 -45 -45 -47 -50 -52 -51 -48 -45 -44 -43 -43 -43 -43 -43 -43 -45 -46 -47 -47 -48 -48 -48 -48 -47 -47 -47 -47 -48 -49 -49 -49 -50 -51 -51 -50 -48 -47 -47 -46 -46 -47 -47 -48 -47 -46 -46 -47 -47 -46 -45 -45 -47 -47 -47 -45 -44 -43 -42 -40 -38 -36 -36 -35 -34 -34 -34 -34 -34 -33 -34 -36 -39 -41 -42 -42 -43 -43 -45 -48 -50 -51 -51 -52 -52 -53 -53 -54 -55 -56 -57 -57 -59 -60 -62 -64 -65 -65 -66 -70 -74 -78 -82 -83 -83 -82 -82 -85 -86 -86 -84 -81 -82 -83 -84 -83 -78 -70 -69 -72 -79 -81 -74 -67 -65 -70 -72 -71 -72 -73 -73 -73 -73 -73 -74 -73 -74 -73 -71 -68 -64 -63 -63 -64 -66 -66 -65 -64 -63 -62 -60 -59 -58 -57 -56 -57 -57 -56 -56 -58 -59 -59 -59 -59 -59 -59 -57 -55 -54 -53 -53 -53 -53 -53 -52 -52 -52 -52 -53 -52 -51 -50 -51 -53 -54 -53 -52 -52 -54 -55 -53 -50 -56 -62 -65 -64 -64 -65 -66 -64 -59 -56 -55 -55 -54 -54 -54 -56 -58 -59 -58 -58 -58 -58 -56 -55 -55 -56 -57 -58 -56 -54 -52 -49 -48 -47 -47 -46 -46 -46 -46 -46 -47 -48 -49 -50 -50 -49 -48 -47 -47 -47 -47 -47 -47 -47 -48 -48 -48 -48 -48 -47 -46 -45 -43 -42 -41 -39 -37 -36 -36 -36 -35 -34 -29 -24 -20 -17 -16 -8 -3 -1 -0 -0 -0 -2 -7 -30 -35 -39 -41 -42 -43 -43 -42 -43 -45 -48 -50 -52 -51 -49 -47 -45 -44 -42 -42 -43 -43 -41 -37 -33 -34 -37 -39 -38 -35 -33 -35 -39 -43 -40 -38 -38 -40 -39 -33 -28 -27 -28 -31 -31 -31 -33 -34 -34 -34 -34 -34 -33 -32 -32 -33 -32 -30 -28 -27 -27 -26 -24 -20 -18 -19 -21 -23 -23 -22 -20 -19 -19 -18 -19 -21 -22 -22 -22 -24 -28 -32 -35 -36 -36 -37 -37 -37 -39 -43 -46 -48 -49 -48 -46 -45 -45 -45 -45 -44 -44 -45 -47 -49 -50 -50 -50 -48 -47 -47 -48 -49 -50 -48 -47 -47 -49 -50 -47 -44 -41 -40 -41 -44 -47 -48 -47 -46 -46 -48 -49 -49 -48 -45 -44 -44 -45 -46 -48 -50 -52 -52 -50 -47 -45 -43 -43 -43 -43 -44 -44 -45 -46 -46 -47 -48 -49 -49 -49 -49 -49 -48 -47 -47 -48 -48 -49 -50 -51 -52 -51 -50 -49 -48 -48 -48 -48 -49 -49 -49 -48 -46 -46 -47 -48 -47 -46 -46 -47 -47 -46 -45 -43 -42 -39 -36 -35 -35 -35 -34 -33 -33 -33 -33 -33 -34 -36 -38 -40 -41 -42 -43 -43 -45 -48 -51 -53 -52 -52 -52 -52 -53 -53 -54 -55 -56 -58 -60 -61 -63 -65 -66 -66 -67 -70 -74 -79 -82 -84 -84 -84 -83 -83 -83 -82 -80 -80 -82 -84 -85 -85 -82 -75 -71 -71 -74 -78 -74 -70 -70 -75 -75 -74 -75 -76 -76 -76 -76 -77 -77 -78 -77 -76 -74 -72 -69 -67 -67 -68 -69 -70 -68 -67 -66 -66 -65 -64 -62 -60 -59 -59 -59 -59 -59 -60 -61 -61 -60 -60 -59 -57 -56 -55 -54 -53 -53 -53 -53 -53 -53 -52 -52 -53 -53 -52 -50 -49 -50 -51 -51 -52 -52 -53 -53 -54 -54 -54 -58 -64 -65 -64 -65 -66 -66 -64 -60 -58 -57 -57 -56 -55 -55 -55 -55 -56 -57 -59 -60 -59 -56 -55 -55 -55 -56 -57 -55 -53 -51 -49 -48 -48 -48 -47 -46 -47 -47 -46 -46 -46 -47 -48 -48 -48 -47 -46 -46 -45 -45 -44 -43 -43 -44 -45 -46 -46 -46 -46 -45 -44 -41 -39 -38 -38 -36 -37 -37 -37 -36 -35 -34 -30 -26 -24 -24 -15 -8 -4 -3 -2 -2 -2 -2 -33 -37 -41 -44 -46 -47 -47 -46 -47 -49 -51 -52 -53 -53 -52 -50 -48 -46 -45 -44 -44 -43 -40 -35 -32 -35 -37 -38 -35 -32 -32 -36 -41 -45 -42 -40 -39 -39 -34 -29 -27 -30 -34 -38 -37 -37 -38 -39 -39 -41 -41 -40 -38 -36 -35 -34 -32 -30 -27 -27 -27 -26 -23 -20 -21 -24 -27 -28 -26 -22 -21 -20 -20 -20 -20 -22 -23 -23 -26 -30 -34 -37 -39 -40 -39 -38 -38 -39 -41 -44 -47 -49 -50 -50 -48 -47 -45 -45 -46 -46 -47 -47 -49 -51 -51 -51 -50 -49 -46 -45 -45 -47 -48 -49 -49 -49 -48 -48 -46 -44 -41 -39 -39 -43 -47 -48 -47 -45 -46 -48 -49 -49 -46 -43 -43 -43 -45 -47 -48 -50 -52 -53 -52 -49 -46 -44 -43 -44 -44 -44 -45 -45 -45 -46 -47 -49 -50 -50 -49 -50 -50 -50 -49 -48 -48 -48 -49 -49 -51 -52 -52 -52 -50 -49 -49 -49 -50 -50 -50 -49 -49 -48 -48 -48 -47 -46 -46 -46 -48 -48 -47 -46 -44 -42 -39 -36 -34 -34 -34 -34 -33 -33 -33 -32 -33 -34 -36 -38 -40 -41 -43 -44 -45 -46 -48 -50 -52 -53 -53 -53 -53 -52 -53 -54 -55 -57 -59 -61 -63 -64 -66 -68 -70 -71 -72 -75 -77 -80 -82 -83 -84 -84 -83 -83 -81 -79 -79 -82 -84 -85 -86 -85 -82 -80 -79 -79 -78 -75 -72 -72 -76 -76 -76 -78 -80 -80 -81 -80 -80 -80 -82 -81 -79 -77 -76 -75 -73 -72 -72 -72 -73 -72 -71 -69 -68 -69 -69 -67 -64 -62 -61 -61 -62 -62 -61 -61 -61 -61 -60 -58 -55 -55 -54 -53 -52 -52 -52 -53 -53 -53 -53 -53 -53 -52 -51 -50 -49 -48 -49 -49 -51 -52 -53 -54 -55 -58 -60 -63 -65 -65 -65 -66 -67 -68 -66 -63 -60 -59 -59 -59 -58 -57 -57 -56 -57 -60 -62 -63 -60 -57 -55 -55 -54 -55 -55 -53 -51 -50 -49 -50 -51 -51 -50 -50 -50 -49 -48 -47 -45 -45 -46 -47 -48 -48 -46 -46 -44 -42 -40 -37 -37 -40 -42 -43 -45 -46 -46 -47 -46 -44 -41 -37 -33 -30 -34 -37 -38 -37 -35 -34 -33 -32 -30 -30 -22 -15 -9 -5 -4 -4 -4 -4 -34 -38 -42 -45 -48 -49 -49 -49 -50 -51 -52 -53 -53 -53 -52 -51 -49 -47 -46 -46 -45 -43 -39 -33 -31 -34 -36 -37 -34 -31 -32 -36 -42 -45 -42 -41 -41 -39 -33 -29 -30 -35 -40 -43 -42 -43 -44 -46 -47 -48 -47 -45 -43 -39 -34 -31 -29 -28 -27 -28 -28 -27 -26 -27 -30 -32 -32 -30 -26 -22 -21 -20 -21 -21 -22 -23 -25 -28 -32 -36 -39 -41 -42 -41 -41 -40 -40 -40 -42 -45 -48 -50 -50 -51 -51 -48 -45 -44 -46 -48 -49 -50 -51 -53 -54 -53 -51 -50 -47 -45 -44 -44 -46 -48 -51 -52 -52 -50 -47 -44 -41 -39 -39 -43 -46 -48 -48 -48 -49 -50 -50 -47 -45 -43 -43 -44 -45 -46 -48 -50 -52 -53 -53 -51 -48 -45 -44 -44 -44 -44 -44 -45 -45 -46 -48 -49 -50 -50 -50 -51 -52 -53 -52 -51 -49 -49 -48 -49 -50 -51 -52 -53 -51 -50 -49 -49 -50 -50 -50 -49 -48 -48 -49 -49 -47 -45 -45 -47 -48 -48 -48 -48 -45 -41 -38 -36 -34 -34 -34 -33 -33 -32 -32 -32 -32 -33 -35 -37 -39 -41 -43 -45 -46 -47 -48 -49 -51 -53 -54 -54 -54 -53 -53 -54 -55 -58 -60 -63 -65 -66 -67 -69 -71 -73 -74 -75 -76 -78 -80 -81 -82 -83 -83 -83 -81 -79 -80 -83 -85 -87 -87 -86 -83 -81 -81 -80 -80 -79 -78 -77 -78 -77 -78 -80 -83 -85 -84 -83 -82 -83 -85 -84 -82 -80 -79 -78 -77 -75 -75 -74 -74 -74 -74 -73 -73 -72 -72 -71 -69 -67 -64 -63 -63 -62 -61 -61 -61 -61 -60 -58 -56 -55 -54 -52 -52 -52 -52 -53 -53 -53 -53 -53 -53 -52 -51 -50 -48 -47 -47 -49 -51 -52 -54 -55 -57 -59 -61 -64 -66 -66 -66 -67 -69 -70 -69 -66 -63 -61 -61 -62 -61 -60 -59 -59 -60 -62 -64 -63 -60 -57 -55 -54 -54 -53 -53 -52 -51 -50 -51 -52 -53 -52 -52 -52 -52 -52 -51 -49 -47 -45 -46 -47 -48 -48 -47 -45 -42 -38 -38 -36 -38 -42 -44 -45 -46 -47 -48 -49 -48 -46 -44 -41 -36 -31 -30 -32 -35 -37 -35 -32 -32 -33 -33 -31 -28 -22 -15 -9 -7 -6 -6 -6 -34 -39 -42 -45 -48 -50 -50 -50 -51 -50 -51 -52 -52 -51 -50 -49 -47 -45 -45 -46 -45 -42 -37 -33 -32 -35 -37 -36 -33 -30 -32 -36 -40 -42 -42 -42 -44 -43 -37 -31 -34 -38 -41 -42 -44 -46 -49 -50 -51 -51 -50 -49 -45 -40 -33 -30 -28 -29 -30 -32 -32 -31 -32 -33 -34 -34 -33 -29 -25 -22 -21 -21 -22 -23 -24 -26 -28 -31 -35 -39 -41 -43 -43 -42 -41 -41 -41 -41 -43 -46 -48 -50 -51 -52 -53 -49 -45 -42 -46 -49 -50 -51 -52 -55 -56 -55 -53 -51 -49 -46 -45 -44 -45 -48 -51 -54 -54 -52 -48 -44 -41 -39 -39 -42 -45 -47 -48 -49 -50 -49 -47 -45 -43 -45 -46 -46 -45 -45 -46 -48 -50 -52 -52 -51 -49 -47 -45 -45 -44 -43 -43 -44 -45 -47 -48 -50 -51 -50 -50 -51 -53 -55 -55 -53 -51 -50 -49 -48 -49 -50 -51 -52 -52 -51 -50 -50 -50 -51 -50 -48 -47 -48 -50 -50 -48 -47 -47 -48 -49 -49 -48 -47 -44 -40 -37 -36 -35 -33 -32 -31 -32 -33 -33 -33 -32 -32 -33 -36 -38 -41 -44 -45 -47 -48 -48 -49 -50 -52 -54 -55 -55 -54 -54 -54 -55 -57 -60 -63 -65 -66 -68 -69 -71 -73 -74 -74 -76 -77 -78 -79 -80 -81 -81 -81 -81 -80 -82 -86 -88 -90 -89 -86 -83 -81 -80 -80 -82 -84 -83 -80 -78 -79 -81 -84 -86 -86 -85 -83 -82 -83 -86 -86 -84 -82 -80 -80 -79 -77 -76 -76 -75 -75 -76 -77 -76 -75 -74 -74 -72 -70 -67 -64 -62 -62 -62 -61 -60 -60 -60 -59 -57 -55 -53 -52 -51 -52 -53 -54 -54 -54 -54 -53 -52 -52 -51 -49 -47 -46 -47 -49 -51 -53 -55 -56 -59 -60 -62 -63 -65 -67 -69 -70 -70 -71 -70 -68 -66 -64 -64 -64 -63 -62 -62 -62 -60 -61 -61 -61 -59 -56 -55 -54 -53 -52 -53 -52 -52 -51 -53 -54 -54 -53 -53 -53 -53 -53 -52 -50 -48 -47 -47 -48 -49 -49 -48 -44 -39 -37 -39 -40 -41 -42 -43 -44 -45 -47 -48 -49 -48 -47 -45 -44 -41 -36 -32 -30 -32 -36 -34 -29 -26 -28 -28 -28 -28 -28 -23 -16 -11 -9 -8 -8 -35 -39 -42 -45 -48 -49 -51 -52 -51 -50 -51 -51 -51 -51 -50 -47 -44 -43 -45 -47 -45 -41 -36 -33 -37 -41 -41 -40 -37 -34 -34 -36 -39 -44 -46 -46 -46 -45 -41 -35 -35 -37 -39 -41 -43 -47 -50 -51 -50 -50 -51 -51 -49 -44 -37 -33 -33 -35 -37 -38 -37 -36 -35 -36 -35 -34 -31 -27 -23 -23 -23 -23 -24 -25 -27 -29 -31 -33 -36 -40 -42 -43 -43 -42 -42 -42 -42 -43 -44 -47 -49 -50 -51 -53 -53 -50 -45 -42 -45 -47 -49 -51 -54 -56 -57 -55 -53 -51 -50 -48 -46 -45 -45 -48 -52 -55 -56 -54 -50 -47 -44 -42 -41 -42 -43 -45 -46 -50 -51 -49 -46 -44 -44 -46 -47 -46 -45 -44 -45 -48 -50 -52 -52 -51 -50 -48 -45 -43 -43 -42 -42 -44 -45 -47 -48 -50 -51 -51 -51 -51 -53 -56 -57 -56 -54 -51 -49 -49 -49 -50 -50 -51 -52 -52 -51 -51 -52 -52 -51 -49 -48 -49 -50 -49 -49 -48 -48 -49 -49 -49 -48 -47 -44 -41 -38 -36 -35 -33 -32 -31 -31 -33 -34 -35 -34 -33 -33 -36 -39 -41 -44 -46 -47 -47 -47 -47 -49 -51 -53 -54 -55 -55 -55 -55 -56 -58 -61 -63 -65 -66 -68 -69 -71 -72 -74 -76 -77 -78 -79 -79 -79 -78 -79 -80 -81 -82 -84 -87 -90 -91 -90 -87 -84 -81 -80 -80 -82 -84 -84 -82 -80 -82 -84 -86 -87 -85 -83 -82 -81 -82 -84 -83 -81 -80 -80 -81 -80 -78 -77 -77 -77 -77 -78 -78 -76 -74 -74 -72 -69 -66 -64 -61 -61 -62 -62 -61 -60 -59 -59 -59 -58 -56 -54 -52 -51 -52 -53 -54 -56 -56 -55 -53 -52 -51 -50 -49 -48 -47 -48 -50 -52 -55 -56 -57 -60 -61 -62 -64 -66 -68 -70 -71 -71 -71 -70 -69 -68 -67 -66 -65 -64 -63 -64 -63 -60 -59 -59 -59 -59 -58 -56 -54 -53 -52 -52 -53 -53 -54 -55 -55 -54 -54 -54 -54 -54 -54 -53 -51 -50 -49 -48 -49 -50 -50 -48 -43 -37 -37 -40 -40 -40 -40 -40 -42 -44 -46 -47 -48 -47 -46 -45 -44 -44 -41 -37 -33 -31 -33 -32 -27 -22 -20 -19 -21 -25 -28 -29 -23 -17 -14 -12 -10 -36 -39 -42 -45 -46 -48 -51 -52 -53 -52 -52 -53 -53 -53 -50 -46 -43 -42 -42 -43 -42 -39 -37 -36 -40 -44 -45 -44 -42 -41 -39 -40 -42 -45 -48 -50 -50 -50 -47 -41 -39 -40 -41 -41 -41 -44 -46 -47 -48 -50 -52 -54 -54 -51 -45 -40 -39 -40 -41 -41 -40 -39 -38 -37 -35 -32 -28 -25 -23 -23 -24 -24 -25 -26 -29 -32 -34 -36 -38 -40 -42 -43 -43 -42 -42 -42 -42 -44 -46 -48 -50 -50 -51 -51 -51 -49 -46 -42 -44 -46 -49 -52 -55 -57 -57 -55 -53 -52 -52 -50 -48 -46 -47 -49 -52 -55 -57 -57 -53 -50 -48 -47 -46 -46 -45 -44 -45 -48 -49 -47 -45 -45 -47 -48 -47 -46 -45 -45 -46 -48 -50 -51 -51 -51 -50 -48 -45 -43 -42 -42 -42 -44 -45 -47 -49 -50 -51 -52 -52 -52 -52 -54 -57 -57 -55 -54 -52 -51 -50 -49 -50 -51 -53 -53 -52 -52 -52 -52 -51 -50 -50 -50 -49 -48 -48 -49 -50 -49 -49 -49 -49 -48 -44 -41 -38 -36 -35 -34 -32 -31 -31 -32 -35 -36 -35 -33 -33 -35 -38 -40 -42 -44 -46 -47 -47 -47 -48 -49 -51 -52 -54 -55 -55 -56 -58 -60 -62 -64 -66 -67 -68 -69 -71 -72 -74 -76 -79 -80 -80 -79 -79 -79 -80 -82 -84 -84 -85 -87 -90 -92 -91 -87 -84 -83 -82 -81 -82 -84 -85 -85 -84 -85 -86 -86 -85 -84 -83 -82 -82 -83 -84 -83 -81 -80 -81 -82 -81 -79 -78 -79 -80 -80 -80 -79 -75 -72 -72 -71 -68 -65 -63 -61 -61 -63 -63 -62 -61 -59 -58 -58 -58 -57 -55 -53 -51 -51 -53 -55 -57 -57 -56 -54 -53 -51 -49 -49 -49 -48 -48 -50 -53 -55 -57 -58 -60 -61 -63 -65 -67 -69 -71 -71 -71 -71 -70 -69 -68 -68 -67 -66 -65 -65 -65 -64 -60 -59 -58 -58 -59 -59 -57 -54 -53 -53 -52 -52 -52 -54 -56 -56 -55 -55 -55 -55 -55 -55 -54 -53 -50 -45 -43 -45 -51 -51 -49 -44 -36 -36 -37 -37 -37 -37 -38 -40 -42 -45 -47 -48 -47 -45 -44 -43 -43 -43 -41 -37 -33 -31 -28 -24 -20 -18 -19 -20 -23 -26 -30 -28 -24 -20 -18 -15 -38 -41 -43 -45 -46 -48 -51 -54 -55 -55 -56 -56 -55 -53 -51 -46 -43 -41 -41 -42 -42 -41 -40 -39 -39 -44 -46 -47 -48 -47 -45 -46 -48 -48 -49 -52 -54 -55 -54 -49 -46 -46 -46 -46 -43 -43 -44 -45 -47 -51 -54 -57 -58 -57 -53 -48 -45 -44 -43 -43 -41 -40 -39 -38 -35 -32 -28 -26 -24 -24 -25 -26 -27 -29 -32 -35 -38 -40 -41 -42 -43 -43 -42 -42 -42 -43 -44 -45 -47 -48 -49 -49 -49 -48 -47 -46 -45 -43 -44 -46 -49 -51 -55 -56 -56 -55 -54 -54 -54 -52 -50 -48 -49 -50 -52 -55 -58 -59 -56 -52 -50 -50 -51 -51 -49 -47 -45 -45 -45 -45 -45 -46 -49 -49 -47 -45 -44 -45 -45 -47 -49 -50 -50 -50 -50 -49 -46 -43 -42 -42 -43 -44 -46 -48 -49 -50 -52 -53 -54 -54 -53 -54 -56 -56 -55 -54 -54 -52 -51 -50 -50 -52 -52 -52 -53 -53 -53 -51 -50 -51 -51 -51 -50 -49 -49 -50 -51 -50 -50 -49 -49 -48 -46 -44 -41 -38 -36 -34 -33 -31 -31 -32 -35 -36 -35 -33 -33 -35 -37 -39 -41 -44 -46 -48 -49 -49 -50 -50 -50 -51 -53 -54 -55 -57 -59 -61 -63 -65 -66 -67 -68 -70 -71 -72 -73 -76 -79 -82 -83 -82 -80 -80 -81 -83 -85 -86 -86 -88 -90 -91 -89 -86 -84 -84 -86 -84 -83 -84 -87 -88 -89 -89 -88 -86 -85 -84 -84 -83 -83 -83 -84 -83 -82 -82 -82 -83 -81 -79 -78 -80 -82 -82 -82 -80 -75 -71 -70 -71 -70 -68 -67 -66 -65 -65 -65 -64 -63 -61 -60 -59 -59 -58 -56 -53 -52 -51 -52 -54 -57 -59 -58 -55 -53 -51 -51 -50 -49 -48 -48 -50 -53 -55 -57 -58 -60 -62 -64 -66 -68 -70 -71 -71 -71 -71 -70 -69 -67 -65 -65 -66 -66 -67 -66 -63 -60 -59 -58 -58 -59 -59 -57 -54 -53 -55 -55 -55 -54 -56 -58 -58 -57 -55 -55 -55 -55 -55 -55 -54 -49 -40 -33 -34 -43 -46 -48 -45 -36 -33 -32 -33 -34 -35 -36 -38 -41 -44 -47 -47 -47 -45 -43 -41 -42 -42 -41 -38 -33 -29 -25 -22 -19 -18 -20 -25 -28 -29 -29 -29 -27 -25 -24 -21 -41 -42 -44 -46 -47 -49 -51 -54 -56 -58 -58 -57 -55 -52 -49 -46 -45 -45 -45 -44 -43 -44 -45 -44 -42 -45 -47 -50 -51 -51 -51 -53 -55 -55 -55 -56 -58 -59 -59 -57 -55 -53 -53 -53 -50 -48 -46 -46 -47 -53 -57 -58 -59 -59 -58 -55 -52 -48 -45 -43 -41 -40 -39 -37 -35 -33 -31 -29 -28 -28 -27 -28 -29 -32 -36 -40 -42 -43 -44 -44 -44 -43 -43 -42 -43 -44 -46 -47 -47 -48 -48 -48 -47 -46 -44 -44 -43 -42 -43 -46 -48 -51 -53 -55 -55 -56 -56 -55 -55 -54 -52 -50 -50 -51 -53 -56 -58 -59 -57 -54 -51 -51 -53 -55 -53 -50 -46 -43 -43 -44 -45 -47 -48 -48 -47 -45 -44 -44 -44 -45 -47 -48 -49 -49 -50 -50 -47 -44 -43 -43 -43 -44 -46 -48 -50 -51 -53 -55 -55 -55 -55 -55 -55 -56 -56 -56 -55 -53 -52 -51 -50 -51 -51 -52 -52 -52 -51 -49 -49 -51 -52 -52 -51 -50 -50 -50 -52 -51 -50 -49 -47 -47 -48 -47 -45 -40 -37 -35 -33 -32 -31 -33 -35 -36 -35 -33 -32 -33 -35 -37 -40 -43 -46 -48 -49 -50 -49 -49 -50 -50 -51 -52 -54 -56 -59 -61 -63 -65 -66 -67 -68 -70 -72 -73 -74 -76 -80 -83 -85 -85 -82 -82 -83 -85 -87 -87 -87 -88 -89 -91 -89 -86 -85 -87 -90 -88 -84 -85 -88 -91 -92 -91 -90 -88 -86 -86 -86 -85 -84 -83 -83 -83 -83 -83 -83 -81 -79 -78 -79 -81 -82 -83 -83 -81 -77 -72 -70 -71 -71 -73 -74 -73 -70 -67 -65 -66 -65 -63 -61 -60 -59 -59 -57 -54 -52 -51 -52 -54 -57 -59 -59 -56 -52 -50 -51 -51 -49 -47 -48 -51 -53 -55 -56 -58 -61 -64 -66 -67 -69 -70 -72 -72 -72 -72 -71 -69 -67 -65 -65 -66 -66 -66 -65 -62 -60 -59 -59 -58 -58 -59 -57 -55 -55 -56 -57 -57 -57 -58 -58 -59 -58 -57 -56 -56 -55 -55 -55 -54 -50 -39 -28 -27 -30 -33 -38 -42 -36 -31 -29 -30 -31 -33 -34 -36 -39 -43 -45 -46 -46 -44 -42 -40 -39 -39 -37 -33 -28 -26 -24 -23 -21 -21 -24 -27 -29 -28 -28 -28 -28 -27 -26 -25 -44 -44 -44 -45 -47 -49 -50 -52 -55 -58 -59 -58 -55 -51 -48 -47 -48 -49 -50 -48 -47 -47 -48 -48 -46 -47 -47 -49 -50 -51 -53 -55 -59 -61 -61 -60 -61 -62 -63 -63 -61 -60 -59 -59 -57 -55 -52 -50 -50 -54 -58 -59 -60 -60 -61 -60 -58 -55 -51 -46 -43 -42 -41 -39 -36 -35 -34 -34 -33 -33 -32 -32 -33 -36 -40 -43 -45 -46 -46 -47 -46 -45 -44 -43 -44 -46 -48 -49 -47 -47 -47 -47 -46 -44 -42 -42 -41 -41 -43 -45 -48 -50 -52 -55 -56 -57 -58 -58 -56 -55 -53 -52 -50 -51 -53 -55 -57 -58 -57 -55 -53 -52 -52 -54 -53 -50 -46 -44 -44 -45 -46 -47 -48 -48 -48 -47 -45 -44 -43 -43 -44 -46 -47 -49 -50 -50 -48 -45 -44 -44 -44 -45 -46 -48 -50 -52 -54 -56 -56 -57 -57 -56 -56 -56 -57 -56 -55 -54 -52 -51 -51 -50 -51 -52 -54 -53 -51 -48 -49 -51 -53 -54 -52 -51 -50 -50 -52 -52 -51 -49 -47 -45 -46 -46 -45 -41 -38 -35 -33 -32 -32 -34 -35 -36 -35 -33 -32 -31 -32 -35 -39 -43 -46 -48 -49 -50 -49 -49 -49 -50 -51 -52 -53 -55 -58 -61 -63 -64 -66 -67 -67 -69 -71 -73 -75 -77 -80 -84 -87 -87 -84 -83 -84 -86 -88 -88 -88 -88 -90 -91 -90 -88 -88 -89 -92 -90 -85 -84 -86 -90 -92 -92 -92 -90 -89 -88 -88 -86 -84 -83 -83 -84 -84 -84 -83 -81 -79 -79 -79 -82 -83 -83 -83 -81 -79 -74 -72 -72 -72 -76 -77 -75 -72 -67 -65 -66 -67 -66 -63 -62 -61 -59 -57 -55 -53 -52 -52 -54 -57 -59 -58 -55 -51 -49 -50 -50 -48 -47 -48 -51 -55 -58 -58 -58 -62 -65 -67 -68 -69 -71 -73 -73 -72 -72 -71 -70 -68 -66 -66 -65 -65 -64 -63 -62 -59 -58 -58 -58 -59 -59 -59 -58 -57 -58 -58 -59 -59 -59 -59 -59 -59 -59 -58 -57 -56 -56 -55 -54 -51 -41 -27 -24 -24 -25 -29 -36 -41 -35 -31 -29 -30 -31 -33 -35 -38 -41 -43 -44 -44 -43 -40 -37 -35 -33 -31 -28 -23 -23 -25 -28 -28 -28 -29 -29 -28 -27 -27 -27 -27 -26 -25 -25 -48 -46 -45 -45 -46 -48 -49 -51 -53 -56 -57 -56 -52 -49 -47 -49 -51 -52 -53 -53 -51 -49 -48 -47 -47 -47 -46 -46 -48 -49 -49 -52 -55 -58 -61 -62 -62 -63 -63 -63 -62 -62 -62 -62 -61 -59 -58 -56 -55 -56 -58 -60 -62 -63 -65 -65 -64 -62 -60 -55 -50 -45 -41 -38 -35 -33 -33 -35 -36 -37 -38 -39 -40 -42 -43 -45 -46 -47 -48 -48 -47 -47 -45 -44 -45 -48 -49 -49 -46 -46 -47 -46 -44 -43 -42 -41 -41 -42 -43 -44 -46 -49 -50 -55 -56 -58 -59 -59 -57 -56 -55 -54 -53 -53 -53 -54 -56 -57 -58 -57 -55 -54 -53 -53 -51 -49 -47 -45 -45 -46 -48 -48 -47 -47 -49 -49 -48 -45 -42 -42 -43 -44 -46 -49 -50 -50 -47 -45 -44 -43 -44 -45 -46 -48 -50 -52 -54 -56 -56 -57 -57 -57 -56 -56 -57 -56 -54 -52 -51 -51 -50 -50 -51 -53 -54 -53 -50 -48 -49 -51 -52 -54 -53 -52 -51 -51 -53 -53 -52 -50 -47 -45 -44 -44 -43 -41 -39 -36 -34 -32 -32 -33 -34 -35 -34 -33 -32 -31 -32 -35 -39 -42 -45 -47 -49 -50 -49 -49 -49 -50 -51 -52 -53 -54 -56 -59 -61 -63 -65 -66 -67 -68 -70 -72 -74 -77 -80 -84 -88 -88 -86 -84 -85 -87 -89 -89 -89 -89 -90 -92 -92 -91 -90 -90 -92 -89 -84 -82 -84 -88 -90 -92 -92 -92 -91 -91 -90 -87 -85 -84 -85 -85 -86 -85 -83 -81 -80 -79 -80 -82 -83 -84 -84 -84 -81 -75 -72 -72 -73 -77 -76 -73 -70 -66 -64 -65 -66 -67 -65 -63 -62 -60 -57 -55 -54 -53 -53 -54 -56 -57 -57 -55 -50 -48 -49 -48 -48 -47 -49 -51 -55 -58 -59 -60 -63 -66 -67 -68 -70 -72 -73 -74 -73 -72 -71 -70 -68 -67 -66 -64 -63 -61 -60 -59 -58 -57 -57 -58 -58 -60 -62 -61 -59 -59 -59 -60 -60 -60 -60 -61 -61 -61 -59 -59 -58 -57 -55 -54 -52 -43 -29 -25 -23 -24 -26 -32 -43 -42 -37 -33 -30 -30 -31 -33 -36 -40 -41 -42 -41 -40 -38 -33 -30 -29 -29 -27 -26 -27 -30 -35 -35 -34 -32 -31 -29 -27 -26 -26 -27 -26 -25 -25 -51 -48 -46 -45 -45 -47 -48 -50 -52 -55 -55 -53 -50 -48 -47 -50 -52 -54 -54 -54 -52 -49 -45 -43 -43 -43 -43 -45 -47 -48 -46 -46 -48 -52 -56 -57 -58 -59 -60 -59 -56 -56 -59 -62 -62 -62 -63 -64 -64 -64 -65 -67 -70 -71 -72 -70 -68 -65 -64 -62 -58 -52 -45 -39 -35 -34 -34 -34 -35 -38 -42 -45 -47 -48 -47 -47 -48 -48 -48 -48 -48 -47 -47 -45 -46 -48 -49 -48 -46 -46 -46 -45 -43 -41 -40 -40 -41 -43 -44 -46 -48 -49 -50 -53 -55 -57 -59 -60 -59 -57 -56 -55 -55 -54 -54 -54 -55 -57 -58 -57 -56 -55 -55 -55 -55 -53 -49 -46 -46 -48 -49 -49 -48 -47 -48 -48 -48 -46 -43 -43 -44 -46 -49 -50 -51 -49 -46 -44 -42 -42 -42 -43 -46 -48 -50 -52 -54 -55 -56 -56 -56 -55 -55 -56 -56 -55 -53 -50 -49 -49 -49 -50 -52 -53 -53 -52 -49 -48 -49 -50 -52 -53 -54 -53 -53 -53 -54 -54 -53 -51 -47 -45 -45 -45 -45 -42 -40 -37 -34 -32 -31 -32 -33 -35 -36 -35 -33 -33 -33 -35 -38 -41 -44 -47 -48 -49 -49 -49 -49 -49 -50 -51 -52 -53 -54 -58 -60 -61 -63 -64 -65 -67 -68 -71 -74 -77 -81 -85 -88 -89 -86 -85 -86 -88 -89 -89 -89 -90 -90 -92 -93 -93 -92 -92 -92 -89 -84 -82 -84 -86 -87 -87 -88 -89 -92 -94 -93 -90 -88 -87 -87 -87 -86 -84 -83 -81 -80 -80 -80 -81 -83 -84 -85 -84 -80 -77 -74 -74 -77 -80 -77 -72 -67 -65 -63 -63 -65 -67 -66 -65 -63 -61 -58 -56 -55 -54 -54 -54 -55 -55 -55 -54 -50 -49 -48 -48 -47 -48 -49 -51 -54 -57 -59 -61 -64 -66 -66 -67 -69 -71 -72 -73 -72 -71 -69 -69 -68 -67 -65 -64 -61 -59 -58 -58 -58 -58 -58 -58 -58 -60 -64 -63 -61 -60 -60 -60 -61 -61 -62 -63 -63 -62 -61 -60 -59 -57 -56 -55 -53 -46 -33 -26 -24 -24 -26 -31 -44 -46 -44 -40 -35 -30 -29 -31 -34 -38 -39 -39 -38 -37 -34 -30 -27 -29 -34 -35 -35 -36 -37 -37 -36 -35 -34 -32 -30 -28 -27 -27 -26 -26 -26 -25 -53 -50 -47 -45 -45 -46 -47 -50 -53 -56 -56 -52 -49 -47 -48 -52 -54 -55 -54 -53 -50 -45 -41 -40 -41 -41 -41 -44 -48 -47 -45 -44 -45 -47 -51 -52 -52 -51 -52 -49 -48 -49 -52 -55 -56 -59 -62 -65 -67 -69 -69 -69 -69 -69 -70 -70 -69 -67 -66 -64 -62 -58 -52 -45 -40 -39 -38 -38 -38 -41 -46 -50 -52 -53 -51 -51 -51 -50 -48 -48 -48 -48 -47 -46 -48 -49 -48 -47 -47 -47 -46 -44 -41 -39 -40 -40 -42 -44 -46 -49 -50 -51 -51 -53 -55 -57 -59 -61 -60 -59 -57 -57 -56 -56 -56 -56 -56 -56 -57 -56 -55 -55 -55 -57 -57 -56 -52 -48 -48 -49 -50 -51 -50 -48 -47 -47 -48 -48 -46 -45 -44 -45 -49 -52 -52 -50 -45 -42 -40 -40 -40 -42 -46 -49 -52 -53 -55 -55 -55 -55 -54 -53 -53 -55 -56 -56 -52 -49 -47 -47 -48 -49 -51 -52 -52 -51 -48 -48 -48 -49 -51 -52 -52 -53 -54 -55 -55 -55 -54 -52 -49 -46 -46 -47 -46 -43 -39 -36 -35 -33 -33 -34 -35 -37 -38 -39 -37 -35 -34 -35 -37 -40 -43 -45 -47 -48 -48 -49 -49 -49 -50 -50 -51 -52 -54 -56 -58 -60 -61 -62 -64 -65 -67 -69 -72 -76 -80 -84 -87 -89 -87 -86 -87 -88 -88 -88 -88 -89 -91 -93 -94 -94 -93 -93 -92 -88 -84 -81 -81 -82 -83 -85 -87 -88 -91 -93 -94 -94 -93 -90 -88 -86 -84 -83 -82 -81 -80 -80 -81 -81 -82 -84 -84 -84 -81 -79 -78 -78 -79 -84 -82 -75 -67 -65 -63 -63 -64 -66 -67 -66 -64 -62 -60 -58 -56 -56 -55 -55 -56 -56 -55 -54 -51 -49 -48 -47 -47 -47 -49 -51 -53 -55 -57 -61 -64 -66 -67 -67 -68 -70 -71 -72 -71 -69 -68 -67 -67 -67 -66 -64 -61 -57 -57 -58 -59 -59 -58 -58 -59 -61 -65 -65 -63 -62 -61 -60 -60 -61 -63 -65 -64 -62 -62 -61 -60 -58 -57 -56 -55 -51 -41 -32 -27 -26 -29 -34 -43 -46 -46 -45 -41 -33 -28 -28 -32 -35 -37 -36 -35 -33 -31 -29 -30 -32 -39 -39 -39 -40 -40 -38 -37 -36 -35 -34 -32 -29 -28 -27 -26 -25 -25 -24 -54 -51 -48 -45 -45 -46 -47 -50 -54 -57 -57 -53 -49 -48 -50 -53 -54 -53 -52 -50 -47 -44 -41 -40 -40 -39 -41 -45 -49 -49 -47 -47 -48 -50 -51 -49 -47 -46 -45 -44 -42 -43 -45 -48 -51 -56 -61 -65 -67 -69 -68 -67 -66 -65 -65 -66 -67 -66 -65 -64 -63 -61 -57 -51 -47 -45 -44 -44 -44 -47 -51 -54 -56 -56 -55 -54 -53 -52 -49 -48 -48 -48 -47 -47 -50 -50 -49 -48 -47 -47 -45 -42 -40 -39 -40 -42 -43 -45 -48 -50 -52 -54 -54 -55 -56 -58 -60 -61 -61 -60 -58 -57 -57 -57 -57 -57 -57 -57 -56 -55 -54 -54 -54 -56 -56 -55 -52 -49 -48 -48 -49 -51 -52 -50 -48 -48 -49 -50 -49 -48 -46 -47 -50 -52 -52 -50 -46 -42 -40 -39 -39 -42 -47 -51 -53 -54 -54 -55 -55 -53 -51 -49 -50 -53 -55 -56 -53 -49 -46 -45 -46 -48 -49 -50 -50 -50 -48 -47 -48 -49 -50 -50 -51 -53 -54 -56 -56 -57 -56 -53 -50 -47 -48 -48 -47 -44 -39 -37 -35 -34 -34 -36 -38 -39 -39 -39 -37 -36 -35 -35 -37 -39 -42 -44 -46 -46 -47 -48 -49 -49 -49 -50 -51 -52 -53 -54 -56 -58 -59 -60 -62 -63 -65 -67 -70 -74 -78 -82 -86 -88 -88 -88 -88 -88 -88 -88 -88 -89 -91 -93 -94 -94 -93 -92 -90 -86 -82 -79 -78 -79 -82 -85 -88 -92 -94 -94 -94 -94 -94 -91 -88 -84 -82 -82 -82 -82 -82 -82 -82 -82 -82 -83 -83 -82 -81 -81 -81 -79 -80 -83 -82 -76 -69 -66 -64 -63 -63 -64 -67 -67 -65 -62 -61 -59 -57 -57 -57 -57 -57 -57 -56 -54 -51 -49 -48 -47 -47 -47 -48 -50 -52 -55 -57 -61 -64 -66 -67 -67 -67 -68 -70 -71 -69 -68 -67 -67 -66 -66 -65 -63 -61 -56 -57 -59 -61 -61 -59 -58 -60 -63 -66 -65 -63 -61 -61 -61 -61 -62 -64 -65 -64 -62 -62 -62 -61 -60 -60 -58 -57 -56 -52 -41 -33 -31 -33 -39 -44 -46 -46 -46 -44 -37 -31 -27 -29 -32 -34 -33 -31 -29 -30 -33 -37 -38 -42 -41 -41 -41 -41 -40 -39 -37 -36 -34 -32 -30 -29 -28 -26 -25 -24 -23 -54 -52 -48 -45 -44 -45 -47 -50 -54 -58 -60 -55 -50 -48 -49 -52 -53 -52 -50 -47 -45 -42 -41 -41 -40 -39 -42 -45 -47 -46 -46 -48 -50 -52 -53 -50 -45 -43 -43 -43 -41 -40 -41 -44 -50 -57 -63 -66 -67 -67 -67 -65 -63 -61 -62 -63 -64 -64 -64 -63 -62 -61 -59 -56 -52 -50 -50 -51 -51 -53 -56 -58 -59 -58 -56 -55 -54 -52 -50 -48 -48 -48 -47 -49 -52 -52 -50 -48 -46 -45 -43 -41 -39 -39 -41 -43 -45 -46 -49 -51 -53 -55 -57 -57 -58 -59 -60 -61 -61 -60 -58 -56 -56 -57 -57 -57 -57 -57 -56 -54 -53 -52 -53 -54 -55 -55 -53 -51 -49 -48 -48 -48 -49 -49 -49 -49 -49 -50 -49 -49 -48 -48 -49 -50 -50 -49 -47 -44 -42 -40 -41 -43 -47 -51 -53 -54 -55 -54 -53 -51 -49 -48 -50 -52 -54 -56 -56 -51 -46 -43 -45 -47 -48 -49 -49 -49 -48 -48 -48 -48 -49 -49 -51 -52 -54 -56 -57 -57 -56 -54 -50 -48 -48 -49 -47 -43 -39 -36 -35 -34 -35 -37 -38 -39 -39 -38 -36 -35 -35 -35 -37 -38 -40 -42 -44 -45 -47 -48 -49 -49 -49 -49 -49 -51 -53 -54 -55 -56 -57 -58 -60 -61 -62 -64 -68 -72 -76 -80 -84 -88 -89 -89 -88 -88 -88 -89 -88 -88 -89 -91 -92 -92 -91 -90 -88 -85 -82 -80 -79 -79 -82 -86 -91 -95 -96 -95 -94 -92 -91 -88 -85 -82 -80 -82 -84 -85 -85 -85 -85 -84 -82 -81 -81 -81 -81 -82 -82 -80 -80 -82 -82 -77 -72 -68 -66 -64 -63 -64 -66 -66 -65 -61 -60 -59 -58 -57 -58 -59 -59 -58 -57 -55 -52 -50 -49 -47 -47 -47 -48 -49 -52 -55 -59 -62 -65 -67 -67 -66 -66 -68 -69 -69 -69 -68 -68 -67 -65 -65 -64 -63 -61 -57 -57 -59 -61 -60 -59 -59 -60 -63 -65 -63 -62 -61 -61 -62 -62 -63 -65 -65 -64 -62 -62 -62 -62 -62 -61 -60 -58 -58 -57 -50 -43 -38 -40 -46 -47 -48 -47 -46 -46 -43 -38 -31 -29 -31 -32 -32 -30 -29 -33 -41 -45 -45 -44 -43 -42 -42 -43 -42 -41 -39 -37 -35 -34 -33 -31 -29 -27 -25 -24 -24 -54 -52 -48 -44 -43 -45 -48 -51 -54 -57 -61 -57 -52 -49 -49 -50 -51 -51 -49 -45 -43 -41 -40 -39 -38 -39 -41 -43 -43 -42 -42 -46 -49 -53 -54 -50 -44 -41 -41 -42 -40 -39 -40 -42 -48 -57 -63 -66 -66 -65 -63 -61 -59 -58 -59 -61 -62 -62 -62 -62 -61 -60 -59 -57 -55 -54 -54 -56 -57 -59 -60 -61 -61 -58 -55 -54 -53 -52 -50 -49 -48 -48 -49 -51 -53 -53 -51 -48 -46 -44 -41 -39 -38 -39 -42 -44 -46 -48 -50 -51 -53 -55 -58 -59 -60 -60 -61 -61 -61 -59 -57 -55 -55 -56 -57 -57 -57 -56 -55 -54 -52 -51 -52 -54 -55 -55 -54 -52 -52 -51 -48 -46 -46 -47 -48 -49 -49 -49 -49 -49 -48 -47 -47 -49 -49 -49 -48 -45 -43 -42 -43 -44 -48 -51 -54 -55 -54 -53 -51 -50 -49 -48 -50 -51 -54 -56 -57 -52 -47 -44 -44 -47 -48 -49 -49 -49 -48 -48 -48 -48 -48 -49 -50 -52 -54 -56 -57 -58 -57 -55 -52 -50 -49 -49 -47 -42 -38 -36 -35 -34 -36 -37 -38 -38 -38 -36 -35 -35 -34 -35 -36 -38 -40 -42 -44 -45 -46 -48 -49 -50 -49 -49 -49 -50 -52 -53 -55 -56 -56 -57 -58 -59 -60 -61 -65 -70 -74 -79 -83 -87 -89 -89 -89 -89 -89 -89 -89 -89 -89 -91 -92 -92 -91 -90 -87 -85 -84 -83 -81 -80 -82 -87 -93 -97 -97 -96 -94 -92 -90 -87 -85 -83 -82 -84 -87 -88 -88 -88 -87 -85 -84 -82 -81 -82 -82 -83 -84 -81 -80 -82 -82 -79 -74 -71 -68 -66 -65 -65 -65 -65 -64 -60 -59 -58 -58 -58 -60 -61 -60 -59 -58 -57 -54 -51 -49 -48 -47 -48 -49 -50 -52 -56 -60 -64 -66 -66 -65 -65 -66 -68 -69 -68 -68 -68 -68 -66 -64 -64 -63 -62 -61 -57 -57 -57 -57 -57 -57 -59 -61 -62 -63 -62 -62 -62 -63 -63 -63 -64 -65 -66 -65 -63 -63 -64 -63 -63 -62 -61 -60 -60 -58 -54 -50 -47 -48 -49 -50 -50 -51 -49 -49 -49 -46 -40 -34 -34 -34 -34 -34 -35 -40 -45 -48 -48 -47 -45 -44 -44 -44 -43 -42 -40 -38 -37 -36 -35 -33 -31 -28 -27 -26 -25 -53 -52 -48 -45 -43 -45 -49 -51 -53 -57 -61 -59 -54 -50 -49 -48 -49 -50 -49 -45 -42 -40 -38 -36 -36 -37 -38 -39 -39 -38 -39 -42 -47 -52 -53 -49 -42 -38 -37 -38 -39 -39 -39 -41 -45 -53 -59 -62 -61 -58 -56 -55 -55 -57 -58 -59 -60 -61 -60 -59 -57 -57 -57 -58 -58 -58 -58 -59 -60 -61 -62 -62 -61 -56 -53 -52 -52 -51 -51 -51 -50 -49 -49 -51 -53 -53 -51 -48 -45 -43 -40 -38 -38 -39 -42 -45 -47 -49 -51 -52 -52 -54 -56 -59 -60 -61 -61 -61 -60 -60 -59 -58 -56 -57 -57 -57 -56 -55 -54 -53 -52 -51 -51 -52 -53 -53 -52 -52 -53 -53 -51 -48 -47 -47 -48 -49 -49 -50 -49 -48 -47 -45 -46 -47 -49 -49 -47 -45 -43 -43 -44 -46 -49 -52 -55 -55 -54 -52 -51 -50 -50 -50 -50 -51 -52 -54 -54 -51 -48 -45 -45 -47 -48 -49 -49 -49 -48 -48 -49 -50 -49 -50 -52 -54 -55 -56 -56 -57 -57 -56 -54 -51 -50 -49 -47 -43 -39 -36 -35 -34 -36 -38 -38 -37 -35 -34 -34 -34 -34 -34 -35 -37 -39 -42 -43 -44 -45 -47 -49 -50 -50 -49 -48 -49 -50 -53 -54 -55 -56 -56 -56 -57 -57 -58 -62 -67 -72 -77 -82 -86 -89 -90 -90 -89 -90 -90 -90 -90 -91 -91 -91 -90 -90 -89 -87 -86 -84 -83 -81 -80 -82 -87 -94 -98 -98 -96 -94 -92 -91 -88 -86 -84 -85 -88 -90 -92 -92 -91 -90 -88 -86 -84 -84 -84 -84 -85 -86 -84 -80 -80 -82 -81 -77 -73 -70 -68 -66 -65 -64 -64 -64 -62 -60 -58 -58 -59 -61 -62 -61 -60 -59 -58 -55 -52 -50 -49 -48 -49 -50 -52 -54 -57 -61 -64 -65 -65 -65 -65 -67 -68 -68 -67 -67 -67 -66 -64 -64 -63 -63 -61 -60 -57 -56 -55 -55 -56 -57 -59 -61 -62 -62 -62 -62 -63 -64 -63 -63 -62 -64 -67 -67 -66 -64 -64 -64 -63 -63 -62 -62 -62 -59 -56 -53 -53 -52 -52 -52 -53 -54 -53 -52 -52 -52 -49 -44 -41 -41 -41 -42 -43 -45 -47 -49 -50 -49 -48 -46 -45 -44 -44 -43 -41 -39 -38 -37 -36 -34 -33 -30 -29 -28 -26 -51 -50 -47 -44 -43 -46 -49 -51 -53 -55 -60 -60 -56 -51 -47 -45 -46 -49 -50 -48 -44 -40 -36 -33 -33 -33 -33 -33 -34 -35 -36 -39 -44 -48 -50 -45 -38 -33 -32 -34 -37 -39 -39 -39 -39 -45 -50 -52 -49 -45 -47 -51 -57 -61 -62 -60 -58 -57 -55 -53 -53 -53 -54 -57 -59 -60 -62 -62 -62 -62 -63 -62 -60 -56 -52 -51 -51 -51 -51 -52 -51 -49 -49 -51 -53 -52 -51 -48 -45 -42 -39 -38 -37 -39 -42 -45 -48 -51 -53 -53 -54 -55 -57 -60 -62 -62 -61 -61 -61 -61 -60 -60 -59 -58 -57 -56 -55 -54 -54 -53 -53 -53 -53 -53 -52 -52 -51 -51 -52 -53 -53 -51 -50 -50 -51 -52 -51 -50 -49 -48 -46 -44 -44 -46 -47 -48 -47 -44 -42 -42 -44 -46 -50 -53 -55 -56 -54 -53 -51 -51 -51 -51 -51 -51 -51 -52 -52 -50 -48 -47 -47 -48 -49 -50 -49 -49 -49 -50 -51 -51 -51 -51 -52 -54 -55 -56 -56 -57 -57 -57 -56 -53 -52 -51 -48 -43 -39 -36 -35 -34 -36 -38 -37 -35 -33 -33 -33 -33 -33 -33 -34 -36 -38 -41 -42 -43 -44 -46 -49 -50 -50 -50 -49 -49 -49 -51 -54 -56 -57 -56 -55 -54 -55 -56 -59 -65 -70 -75 -80 -85 -88 -90 -90 -89 -90 -91 -91 -91 -91 -91 -90 -90 -89 -88 -86 -84 -83 -82 -80 -80 -83 -88 -94 -97 -97 -96 -93 -92 -91 -90 -88 -87 -88 -91 -93 -94 -95 -94 -93 -91 -89 -87 -86 -86 -86 -86 -88 -87 -80 -78 -80 -81 -79 -75 -72 -68 -66 -65 -64 -63 -61 -60 -59 -58 -58 -59 -62 -63 -63 -60 -58 -57 -55 -52 -51 -50 -49 -50 -52 -54 -57 -60 -62 -63 -64 -65 -65 -66 -66 -67 -67 -65 -64 -64 -63 -62 -63 -63 -62 -61 -60 -58 -56 -54 -56 -58 -59 -60 -61 -63 -63 -62 -62 -62 -63 -63 -62 -62 -64 -67 -68 -66 -65 -64 -64 -63 -63 -63 -63 -62 -60 -58 -56 -56 -55 -54 -54 -55 -57 -58 -57 -57 -56 -55 -52 -49 -48 -48 -48 -47 -48 -49 -49 -50 -49 -48 -47 -46 -44 -43 -42 -41 -39 -38 -37 -36 -35 -33 -32 -31 -29 -28 -50 -48 -44 -43 -43 -47 -50 -52 -53 -54 -58 -60 -56 -50 -45 -43 -44 -47 -50 -51 -48 -43 -37 -32 -30 -31 -30 -29 -30 -32 -34 -36 -39 -42 -44 -42 -36 -32 -31 -34 -41 -44 -42 -38 -37 -42 -43 -41 -36 -34 -39 -47 -55 -60 -61 -59 -55 -50 -48 -50 -52 -53 -55 -57 -60 -63 -64 -64 -62 -61 -60 -60 -58 -54 -51 -50 -50 -50 -52 -52 -51 -50 -50 -52 -53 -52 -50 -48 -45 -42 -39 -38 -37 -39 -42 -46 -50 -53 -53 -54 -55 -57 -59 -62 -63 -63 -63 -62 -62 -62 -61 -61 -60 -58 -57 -55 -54 -54 -54 -54 -55 -55 -54 -53 -52 -51 -51 -51 -52 -53 -54 -54 -53 -54 -54 -54 -53 -51 -49 -48 -46 -44 -44 -46 -47 -47 -46 -43 -41 -41 -42 -46 -49 -52 -55 -55 -55 -54 -52 -52 -52 -52 -51 -50 -49 -50 -51 -50 -48 -47 -48 -49 -50 -50 -49 -49 -49 -50 -51 -52 -51 -51 -52 -54 -55 -55 -56 -56 -57 -57 -57 -55 -54 -51 -47 -43 -40 -38 -36 -34 -36 -37 -36 -34 -32 -32 -33 -33 -33 -33 -34 -35 -37 -40 -41 -42 -44 -46 -48 -50 -50 -50 -50 -50 -50 -51 -53 -55 -56 -56 -55 -54 -54 -56 -58 -63 -68 -74 -78 -83 -87 -89 -89 -90 -91 -92 -92 -92 -92 -90 -89 -88 -87 -86 -85 -84 -83 -82 -82 -83 -86 -89 -93 -96 -97 -95 -92 -90 -91 -92 -92 -92 -91 -92 -94 -96 -97 -96 -95 -94 -91 -89 -88 -88 -88 -88 -89 -87 -79 -76 -78 -82 -79 -76 -72 -69 -67 -67 -65 -62 -59 -59 -59 -58 -58 -58 -62 -63 -63 -60 -56 -55 -54 -53 -52 -51 -51 -52 -54 -56 -59 -60 -62 -62 -63 -64 -64 -64 -65 -66 -65 -62 -61 -60 -60 -61 -63 -62 -61 -59 -59 -57 -55 -53 -56 -59 -59 -60 -60 -62 -62 -61 -60 -60 -61 -61 -62 -63 -64 -67 -67 -66 -64 -64 -63 -63 -63 -64 -62 -61 -60 -59 -58 -58 -57 -57 -57 -57 -59 -60 -61 -60 -60 -58 -56 -53 -51 -50 -50 -49 -48 -49 -49 -50 -49 -48 -47 -46 -44 -42 -41 -40 -39 -38 -38 -36 -35 -34 -34 -33 -31 -28 -49 -45 -42 -41 -43 -47 -52 -53 -53 -54 -57 -59 -55 -48 -43 -41 -42 -45 -49 -52 -52 -48 -40 -34 -30 -30 -29 -29 -29 -28 -29 -33 -37 -39 -41 -41 -37 -34 -33 -35 -43 -50 -53 -51 -46 -44 -44 -42 -40 -39 -41 -44 -47 -51 -53 -53 -50 -47 -46 -50 -54 -56 -58 -60 -62 -64 -65 -65 -62 -59 -57 -56 -54 -51 -49 -50 -51 -52 -52 -51 -51 -51 -51 -52 -52 -52 -50 -48 -46 -43 -40 -39 -38 -40 -43 -47 -50 -53 -55 -56 -58 -60 -62 -64 -64 -65 -65 -65 -64 -63 -62 -60 -60 -59 -57 -55 -54 -54 -54 -55 -55 -55 -54 -53 -52 -51 -51 -51 -53 -55 -56 -56 -56 -56 -55 -54 -53 -51 -49 -48 -47 -46 -46 -47 -47 -46 -44 -40 -39 -39 -41 -44 -49 -52 -54 -55 -54 -54 -53 -53 -54 -53 -52 -51 -50 -50 -51 -50 -48 -47 -49 -50 -51 -50 -50 -50 -51 -52 -52 -52 -52 -52 -53 -54 -54 -55 -55 -56 -57 -58 -58 -56 -52 -47 -43 -41 -41 -39 -36 -34 -36 -37 -36 -33 -32 -32 -33 -33 -33 -33 -33 -34 -36 -38 -40 -41 -43 -45 -47 -49 -50 -50 -50 -50 -50 -51 -53 -55 -56 -56 -55 -54 -54 -57 -59 -63 -67 -72 -77 -82 -86 -88 -89 -90 -92 -93 -93 -93 -91 -90 -88 -86 -85 -85 -84 -83 -82 -82 -83 -86 -89 -92 -94 -95 -96 -94 -92 -90 -91 -93 -95 -95 -93 -93 -94 -96 -97 -96 -96 -95 -94 -91 -90 -89 -88 -89 -90 -84 -78 -76 -78 -82 -78 -74 -72 -70 -69 -69 -68 -65 -61 -60 -60 -59 -58 -58 -61 -63 -62 -59 -54 -53 -54 -54 -53 -52 -53 -54 -56 -57 -59 -61 -61 -62 -62 -62 -62 -63 -64 -63 -62 -60 -59 -58 -59 -61 -62 -61 -58 -56 -57 -55 -53 -53 -57 -59 -59 -59 -59 -60 -60 -60 -59 -60 -59 -60 -62 -63 -64 -66 -66 -65 -64 -63 -63 -64 -64 -63 -62 -60 -59 -59 -59 -59 -59 -58 -58 -59 -60 -61 -62 -61 -60 -58 -56 -53 -52 -52 -51 -49 -48 -48 -48 -49 -48 -48 -47 -46 -45 -42 -41 -40 -40 -39 -38 -37 -35 -35 -35 -33 -31 -29 -50 -45 -40 -39 -42 -47 -52 -55 -55 -55 -56 -57 -52 -47 -42 -40 -40 -43 -46 -50 -52 -51 -45 -38 -33 -31 -31 -31 -30 -28 -27 -29 -34 -37 -39 -40 -40 -38 -37 -38 -40 -48 -54 -56 -54 -52 -49 -47 -44 -42 -43 -44 -46 -48 -50 -51 -50 -49 -49 -52 -57 -60 -62 -63 -63 -63 -63 -62 -60 -58 -57 -55 -52 -50 -51 -52 -53 -53 -52 -51 -51 -52 -52 -52 -52 -52 -51 -49 -47 -44 -41 -40 -40 -41 -44 -47 -50 -53 -56 -59 -61 -63 -65 -65 -64 -65 -67 -68 -67 -66 -64 -62 -61 -59 -58 -56 -54 -54 -55 -55 -56 -56 -55 -53 -52 -52 -52 -53 -54 -56 -57 -57 -58 -57 -56 -53 -51 -49 -48 -48 -48 -49 -49 -49 -49 -47 -43 -39 -38 -38 -39 -43 -47 -50 -52 -52 -53 -53 -53 -55 -56 -55 -54 -54 -54 -55 -54 -52 -49 -48 -49 -51 -51 -51 -51 -52 -53 -53 -53 -53 -53 -53 -53 -53 -54 -55 -55 -56 -57 -58 -59 -56 -51 -45 -41 -40 -40 -39 -38 -36 -36 -36 -35 -34 -33 -32 -32 -33 -33 -33 -33 -34 -35 -36 -38 -40 -42 -44 -46 -47 -49 -50 -51 -51 -51 -52 -53 -55 -56 -56 -55 -54 -54 -57 -59 -63 -67 -71 -76 -80 -84 -88 -89 -91 -93 -94 -93 -92 -91 -89 -86 -84 -83 -83 -84 -83 -82 -81 -83 -86 -89 -92 -94 -95 -95 -94 -93 -92 -92 -93 -95 -96 -96 -96 -95 -95 -96 -95 -96 -96 -95 -93 -91 -88 -87 -88 -90 -84 -78 -76 -77 -80 -77 -73 -71 -71 -71 -70 -70 -69 -65 -63 -62 -60 -59 -59 -61 -62 -62 -59 -54 -53 -54 -54 -54 -53 -53 -55 -57 -59 -60 -61 -62 -61 -60 -60 -61 -62 -62 -60 -59 -58 -58 -58 -58 -59 -59 -57 -54 -52 -53 -53 -52 -53 -56 -58 -58 -57 -57 -58 -58 -58 -59 -61 -59 -60 -62 -62 -62 -64 -64 -63 -62 -62 -63 -63 -62 -61 -60 -60 -60 -60 -60 -60 -59 -59 -59 -60 -61 -61 -61 -62 -62 -60 -58 -56 -54 -53 -50 -49 -48 -47 -47 -48 -48 -47 -47 -46 -45 -44 -42 -42 -41 -40 -39 -37 -36 -36 -35 -33 -31 -29 -55 -47 -40 -38 -41 -45 -51 -56 -59 -60 -59 -57 -52 -46 -40 -38 -39 -39 -42 -47 -51 -52 -49 -43 -36 -31 -32 -34 -34 -31 -26 -27 -31 -37 -41 -44 -45 -44 -45 -46 -43 -44 -49 -54 -57 -57 -56 -54 -51 -49 -48 -49 -50 -51 -53 -53 -53 -53 -53 -55 -59 -62 -64 -65 -63 -61 -59 -57 -55 -57 -59 -56 -52 -49 -51 -53 -54 -54 -53 -52 -52 -53 -53 -52 -52 -52 -52 -50 -47 -45 -42 -41 -42 -43 -45 -48 -50 -52 -56 -60 -63 -66 -68 -67 -66 -66 -68 -70 -70 -69 -66 -64 -62 -61 -59 -57 -55 -55 -55 -55 -56 -56 -55 -54 -53 -53 -54 -56 -57 -58 -59 -59 -59 -58 -56 -53 -50 -49 -49 -49 -50 -50 -51 -51 -50 -48 -44 -40 -38 -37 -39 -42 -46 -49 -51 -52 -52 -52 -54 -56 -57 -57 -55 -54 -54 -55 -55 -53 -50 -47 -48 -49 -50 -51 -52 -53 -53 -53 -53 -53 -53 -54 -54 -54 -54 -54 -55 -56 -57 -59 -58 -54 -49 -44 -40 -39 -39 -39 -40 -39 -39 -37 -35 -33 -33 -33 -33 -33 -33 -33 -34 -35 -36 -37 -38 -40 -42 -43 -44 -46 -48 -50 -51 -51 -52 -53 -54 -55 -56 -57 -56 -54 -54 -57 -59 -63 -67 -71 -76 -80 -84 -87 -89 -90 -92 -93 -93 -92 -90 -88 -85 -83 -81 -82 -83 -83 -82 -81 -82 -85 -89 -92 -94 -95 -95 -94 -94 -93 -94 -95 -95 -95 -97 -97 -97 -96 -96 -95 -95 -96 -96 -94 -90 -88 -88 -89 -90 -84 -79 -77 -77 -79 -77 -74 -72 -71 -70 -69 -70 -71 -69 -66 -64 -62 -61 -61 -62 -63 -62 -59 -54 -53 -53 -54 -55 -54 -54 -55 -58 -60 -62 -62 -62 -60 -57 -58 -59 -60 -60 -58 -56 -56 -56 -57 -57 -55 -53 -52 -51 -50 -52 -53 -53 -54 -56 -57 -56 -55 -55 -56 -56 -57 -58 -59 -58 -58 -58 -59 -60 -62 -62 -62 -61 -61 -62 -62 -61 -60 -60 -60 -60 -60 -61 -61 -60 -59 -59 -60 -61 -61 -61 -62 -63 -62 -60 -57 -55 -53 -51 -50 -49 -47 -47 -47 -47 -46 -47 -47 -47 -45 -43 -42 -42 -41 -39 -37 -36 -36 -35 -33 -31 -29 -65 -56 -45 -39 -38 -43 -49 -55 -61 -64 -64 -61 -55 -47 -40 -38 -37 -37 -38 -42 -48 -51 -51 -47 -40 -33 -34 -39 -41 -38 -31 -28 -31 -37 -43 -46 -49 -50 -52 -53 -49 -43 -44 -50 -56 -58 -59 -59 -57 -55 -56 -57 -58 -58 -59 -60 -59 -58 -58 -59 -60 -63 -65 -65 -61 -58 -55 -52 -51 -56 -59 -57 -51 -47 -51 -54 -56 -55 -52 -52 -53 -53 -53 -52 -52 -52 -52 -50 -47 -45 -44 -43 -44 -46 -48 -49 -51 -53 -56 -60 -64 -68 -70 -69 -68 -68 -69 -71 -72 -71 -68 -65 -63 -62 -60 -59 -58 -56 -56 -56 -57 -57 -56 -55 -55 -55 -56 -59 -61 -62 -62 -61 -60 -58 -56 -53 -50 -50 -50 -50 -50 -51 -51 -51 -50 -48 -46 -43 -41 -39 -39 -42 -46 -49 -50 -50 -50 -52 -54 -56 -58 -58 -57 -56 -55 -55 -54 -53 -51 -48 -46 -47 -49 -51 -52 -53 -54 -54 -54 -53 -53 -54 -54 -54 -54 -54 -54 -56 -57 -58 -56 -51 -46 -42 -40 -39 -39 -40 -41 -42 -41 -39 -36 -34 -33 -33 -33 -33 -34 -34 -35 -35 -35 -36 -37 -39 -40 -42 -43 -45 -47 -49 -51 -52 -52 -53 -54 -56 -57 -58 -57 -55 -55 -57 -59 -63 -67 -72 -76 -80 -83 -86 -88 -90 -92 -93 -93 -91 -89 -88 -86 -83 -81 -81 -82 -82 -82 -82 -83 -86 -89 -92 -94 -94 -95 -94 -94 -93 -94 -94 -95 -96 -96 -96 -97 -99 -98 -95 -94 -95 -97 -95 -90 -88 -88 -89 -90 -86 -82 -79 -77 -76 -76 -74 -73 -72 -70 -69 -69 -70 -70 -68 -66 -64 -63 -62 -63 -64 -63 -61 -55 -54 -53 -54 -55 -55 -55 -56 -58 -60 -62 -62 -60 -57 -55 -56 -56 -57 -57 -56 -54 -54 -53 -54 -54 -52 -50 -48 -48 -49 -52 -55 -56 -56 -55 -55 -54 -53 -53 -54 -55 -55 -56 -56 -56 -56 -57 -57 -59 -61 -62 -62 -61 -61 -62 -61 -60 -60 -60 -59 -59 -60 -60 -60 -60 -59 -59 -60 -61 -61 -61 -62 -63 -62 -60 -58 -55 -54 -52 -52 -51 -49 -47 -46 -46 -45 -47 -49 -48 -46 -44 -43 -42 -40 -39 -37 -37 -36 -35 -33 -30 -28 -72 -68 -58 -49 -43 -42 -46 -53 -58 -62 -64 -63 -58 -51 -44 -39 -38 -37 -37 -39 -44 -49 -52 -50 -43 -35 -36 -42 -47 -46 -38 -31 -31 -36 -43 -47 -50 -52 -54 -57 -53 -44 -42 -47 -53 -56 -57 -58 -59 -59 -60 -62 -63 -64 -65 -65 -64 -63 -61 -61 -62 -64 -64 -63 -57 -54 -52 -51 -52 -56 -57 -54 -50 -49 -53 -56 -57 -55 -52 -52 -53 -53 -52 -52 -52 -51 -50 -49 -47 -46 -46 -46 -48 -50 -51 -52 -53 -54 -56 -59 -63 -67 -70 -71 -71 -71 -71 -73 -73 -72 -69 -66 -63 -62 -61 -61 -61 -59 -58 -58 -58 -58 -57 -57 -57 -57 -59 -62 -65 -66 -65 -63 -60 -58 -56 -54 -52 -52 -52 -52 -52 -51 -50 -50 -49 -48 -48 -46 -44 -41 -41 -43 -46 -48 -49 -49 -49 -51 -54 -56 -57 -58 -57 -57 -56 -54 -53 -52 -51 -48 -47 -48 -49 -51 -53 -54 -55 -56 -56 -54 -53 -53 -53 -53 -53 -53 -54 -55 -56 -56 -54 -49 -44 -40 -40 -40 -40 -41 -42 -43 -43 -41 -39 -36 -34 -34 -34 -34 -35 -34 -34 -34 -35 -35 -35 -37 -39 -41 -43 -44 -46 -48 -50 -52 -53 -54 -55 -57 -58 -59 -58 -56 -55 -57 -59 -63 -67 -72 -75 -79 -82 -84 -86 -89 -91 -92 -92 -91 -89 -88 -85 -83 -81 -80 -81 -81 -82 -82 -83 -86 -88 -91 -92 -93 -94 -94 -93 -92 -92 -93 -95 -96 -96 -97 -97 -99 -98 -95 -93 -93 -96 -96 -91 -89 -88 -89 -89 -88 -86 -83 -78 -76 -74 -73 -72 -73 -71 -69 -68 -70 -71 -70 -69 -67 -65 -64 -64 -64 -64 -62 -57 -55 -54 -54 -55 -55 -56 -57 -59 -60 -62 -61 -59 -57 -55 -54 -53 -52 -53 -53 -52 -51 -51 -51 -51 -50 -48 -47 -47 -49 -52 -55 -57 -57 -54 -53 -52 -52 -52 -52 -53 -54 -54 -54 -54 -55 -57 -57 -58 -60 -62 -62 -62 -62 -62 -61 -61 -60 -60 -59 -59 -59 -60 -60 -60 -59 -59 -59 -60 -60 -61 -62 -62 -61 -60 -58 -55 -54 -53 -52 -51 -49 -48 -47 -47 -46 -48 -49 -49 -47 -45 -43 -41 -39 -38 -37 -36 -35 -34 -33 -30 -27 -70 -69 -67 -62 -56 -49 -46 -49 -53 -57 -60 -61 -58 -54 -48 -42 -40 -41 -41 -41 -43 -49 -53 -53 -47 -39 -38 -43 -49 -50 -44 -35 -32 -34 -40 -45 -48 -50 -52 -54 -51 -44 -41 -44 -50 -53 -55 -56 -58 -59 -61 -63 -64 -65 -65 -65 -65 -65 -65 -64 -63 -63 -61 -58 -54 -51 -51 -51 -52 -53 -52 -50 -50 -53 -57 -59 -58 -55 -52 -52 -52 -52 -52 -52 -51 -52 -51 -50 -48 -47 -48 -49 -51 -52 -53 -54 -55 -56 -58 -59 -61 -64 -69 -71 -73 -74 -73 -73 -74 -73 -70 -67 -64 -62 -62 -62 -62 -62 -61 -60 -60 -59 -59 -59 -59 -60 -62 -65 -66 -67 -66 -63 -59 -57 -56 -55 -54 -54 -55 -55 -54 -52 -50 -49 -49 -49 -49 -47 -45 -43 -43 -44 -46 -48 -49 -48 -48 -50 -53 -55 -57 -57 -58 -57 -56 -54 -52 -51 -50 -49 -49 -50 -52 -54 -55 -54 -55 -57 -57 -55 -53 -51 -50 -50 -51 -52 -53 -54 -54 -54 -52 -49 -44 -40 -39 -41 -42 -42 -43 -42 -42 -42 -41 -38 -36 -35 -35 -35 -35 -34 -34 -34 -34 -33 -33 -34 -37 -39 -42 -44 -46 -48 -49 -52 -53 -55 -56 -58 -59 -59 -58 -57 -55 -57 -59 -63 -67 -71 -75 -79 -81 -82 -83 -87 -90 -91 -91 -91 -90 -88 -86 -83 -82 -80 -79 -79 -80 -82 -84 -86 -87 -89 -91 -92 -92 -92 -92 -92 -91 -92 -93 -95 -96 -97 -98 -99 -99 -96 -94 -94 -96 -96 -93 -88 -85 -85 -87 -89 -89 -86 -80 -77 -74 -72 -71 -72 -72 -70 -69 -70 -71 -71 -71 -71 -69 -66 -66 -65 -65 -63 -59 -57 -56 -55 -55 -55 -56 -57 -59 -61 -61 -61 -59 -57 -55 -52 -50 -50 -52 -53 -52 -50 -49 -49 -49 -49 -48 -47 -47 -49 -52 -55 -56 -55 -53 -52 -51 -51 -51 -51 -52 -53 -54 -53 -54 -55 -57 -58 -59 -60 -61 -62 -62 -63 -62 -61 -61 -61 -60 -60 -60 -60 -60 -60 -60 -59 -59 -59 -59 -59 -60 -61 -61 -60 -59 -58 -56 -55 -54 -53 -52 -50 -49 -48 -48 -48 -50 -50 -49 -48 -45 -42 -39 -38 -37 -37 -35 -34 -33 -33 -30 -27 -65 -67 -70 -70 -67 -60 -52 -50 -49 -51 -53 -56 -56 -54 -50 -46 -45 -48 -48 -47 -47 -51 -55 -56 -53 -46 -43 -44 -47 -49 -46 -40 -35 -35 -38 -41 -44 -46 -47 -49 -46 -41 -41 -45 -50 -52 -53 -55 -57 -58 -60 -61 -62 -62 -63 -63 -63 -64 -64 -65 -62 -59 -57 -54 -52 -51 -51 -53 -54 -54 -51 -49 -50 -53 -57 -57 -56 -54 -53 -53 -53 -54 -54 -54 -54 -53 -53 -51 -49 -48 -48 -50 -53 -54 -55 -56 -57 -58 -59 -60 -62 -63 -66 -70 -73 -75 -75 -74 -74 -73 -71 -68 -65 -64 -64 -63 -64 -64 -63 -62 -62 -62 -62 -62 -62 -62 -64 -66 -66 -65 -64 -62 -58 -56 -56 -57 -57 -56 -57 -57 -56 -53 -50 -48 -48 -49 -49 -48 -46 -44 -44 -44 -46 -48 -49 -48 -47 -49 -51 -54 -56 -57 -58 -57 -55 -53 -52 -51 -50 -50 -51 -52 -53 -54 -54 -54 -56 -57 -58 -57 -54 -52 -50 -48 -49 -50 -50 -49 -49 -51 -52 -50 -46 -41 -39 -40 -42 -43 -44 -43 -42 -41 -42 -41 -39 -37 -35 -34 -35 -34 -34 -34 -34 -33 -32 -33 -35 -37 -40 -42 -45 -47 -50 -52 -53 -55 -57 -59 -61 -60 -59 -57 -55 -57 -60 -63 -66 -70 -74 -78 -80 -80 -81 -84 -87 -89 -91 -91 -90 -88 -86 -84 -83 -81 -79 -79 -79 -80 -82 -85 -87 -88 -89 -90 -90 -90 -92 -91 -90 -90 -91 -93 -95 -97 -98 -98 -97 -96 -94 -94 -95 -94 -91 -87 -85 -86 -87 -90 -90 -87 -81 -78 -76 -74 -72 -72 -72 -71 -70 -70 -71 -71 -72 -73 -72 -70 -69 -68 -67 -65 -61 -59 -58 -57 -55 -56 -56 -57 -59 -62 -61 -60 -59 -57 -55 -52 -51 -51 -54 -55 -53 -51 -49 -49 -49 -49 -48 -47 -48 -50 -53 -54 -54 -53 -52 -52 -51 -51 -50 -51 -52 -53 -54 -54 -54 -55 -57 -58 -60 -61 -62 -62 -63 -64 -63 -62 -62 -61 -61 -61 -61 -61 -61 -61 -60 -59 -58 -58 -59 -59 -59 -60 -60 -60 -59 -58 -57 -56 -54 -53 -52 -51 -50 -49 -49 -50 -51 -50 -50 -48 -45 -42 -39 -37 -37 -37 -35 -33 -32 -33 -31 -29 -61 -64 -69 -72 -72 -69 -62 -54 -49 -47 -48 -51 -52 -52 -52 -50 -50 -53 -54 -54 -53 -54 -58 -59 -58 -56 -52 -49 -48 -48 -47 -44 -42 -40 -39 -38 -38 -40 -44 -46 -42 -37 -37 -42 -48 -52 -54 -56 -58 -59 -60 -60 -61 -61 -62 -62 -62 -63 -63 -62 -58 -55 -52 -51 -51 -51 -51 -52 -54 -54 -52 -51 -52 -54 -55 -55 -55 -54 -54 -54 -55 -56 -57 -57 -56 -54 -52 -49 -48 -48 -48 -50 -53 -56 -56 -57 -57 -58 -59 -61 -62 -63 -65 -68 -71 -74 -76 -76 -74 -72 -71 -70 -67 -66 -65 -65 -65 -66 -66 -65 -65 -65 -63 -63 -63 -63 -65 -67 -66 -64 -62 -61 -59 -56 -56 -57 -59 -58 -58 -57 -57 -55 -51 -48 -48 -49 -49 -48 -47 -45 -44 -45 -47 -48 -49 -48 -48 -48 -50 -52 -55 -57 -57 -56 -54 -52 -51 -50 -50 -51 -51 -51 -51 -52 -54 -55 -57 -58 -58 -57 -55 -53 -51 -49 -47 -46 -44 -44 -45 -48 -50 -49 -46 -41 -39 -41 -43 -45 -45 -43 -42 -42 -43 -43 -41 -38 -36 -35 -35 -35 -34 -34 -33 -32 -32 -33 -34 -36 -38 -41 -44 -47 -50 -52 -54 -56 -59 -62 -62 -61 -60 -57 -57 -59 -61 -63 -66 -69 -73 -77 -80 -81 -81 -82 -84 -87 -89 -90 -90 -89 -87 -85 -83 -82 -80 -79 -79 -80 -81 -83 -85 -87 -87 -87 -88 -89 -91 -90 -90 -89 -89 -91 -94 -96 -96 -95 -94 -93 -94 -93 -93 -91 -88 -87 -87 -87 -86 -86 -86 -86 -82 -79 -77 -75 -74 -73 -72 -72 -71 -70 -71 -71 -73 -75 -74 -72 -72 -71 -69 -66 -64 -62 -61 -59 -57 -57 -57 -57 -60 -62 -62 -60 -59 -58 -56 -54 -52 -53 -57 -59 -57 -53 -50 -50 -49 -48 -47 -47 -48 -51 -54 -55 -53 -53 -52 -52 -51 -51 -50 -51 -52 -54 -55 -56 -56 -56 -56 -58 -60 -61 -62 -63 -64 -64 -64 -64 -64 -63 -63 -63 -63 -62 -61 -61 -61 -59 -58 -58 -59 -60 -60 -60 -60 -60 -58 -57 -57 -57 -55 -54 -53 -52 -52 -51 -51 -52 -52 -52 -51 -50 -47 -43 -40 -38 -38 -38 -35 -33 -32 -34 -32 -31 -58 -61 -66 -70 -73 -73 -69 -61 -53 -48 -47 -48 -50 -52 -53 -54 -54 -55 -56 -57 -57 -58 -60 -61 -62 -62 -61 -57 -53 -50 -48 -48 -47 -46 -45 -43 -40 -40 -43 -45 -43 -37 -36 -41 -47 -51 -55 -57 -59 -60 -60 -59 -57 -56 -58 -59 -60 -62 -63 -61 -55 -51 -50 -50 -51 -51 -52 -54 -55 -55 -54 -53 -53 -53 -54 -54 -55 -54 -54 -55 -56 -57 -58 -59 -58 -54 -50 -47 -46 -46 -48 -51 -54 -57 -57 -57 -58 -59 -60 -62 -63 -64 -65 -66 -69 -72 -74 -75 -74 -72 -71 -71 -70 -69 -69 -68 -67 -67 -68 -69 -69 -68 -64 -62 -62 -64 -67 -68 -66 -63 -61 -60 -59 -56 -55 -56 -59 -59 -58 -56 -56 -56 -52 -49 -48 -49 -50 -50 -49 -49 -49 -49 -49 -49 -49 -49 -49 -49 -49 -51 -53 -56 -57 -56 -54 -52 -50 -50 -50 -50 -49 -49 -49 -51 -53 -56 -57 -58 -58 -56 -55 -54 -52 -50 -46 -40 -36 -35 -38 -44 -48 -48 -45 -41 -40 -41 -43 -44 -43 -41 -41 -42 -43 -44 -41 -38 -36 -36 -36 -34 -33 -33 -33 -32 -32 -33 -33 -34 -36 -40 -44 -47 -49 -52 -55 -58 -61 -63 -64 -62 -60 -58 -57 -58 -60 -63 -66 -69 -73 -77 -81 -83 -82 -81 -82 -85 -88 -90 -90 -89 -86 -84 -83 -82 -81 -80 -80 -80 -81 -82 -83 -84 -85 -85 -86 -87 -89 -91 -90 -89 -88 -90 -93 -94 -95 -93 -92 -91 -92 -92 -91 -88 -86 -86 -87 -86 -84 -84 -85 -85 -82 -80 -78 -77 -76 -73 -72 -72 -72 -71 -70 -71 -73 -76 -75 -74 -74 -73 -71 -67 -68 -68 -66 -63 -59 -58 -58 -59 -60 -62 -62 -60 -59 -58 -57 -54 -53 -55 -60 -61 -59 -56 -51 -51 -49 -47 -47 -48 -50 -54 -56 -56 -54 -53 -52 -52 -51 -51 -50 -51 -52 -55 -56 -57 -58 -58 -56 -58 -60 -61 -62 -62 -63 -64 -64 -64 -64 -63 -63 -63 -63 -62 -62 -62 -60 -59 -58 -59 -60 -61 -61 -60 -60 -60 -58 -58 -58 -57 -55 -54 -54 -54 -53 -53 -53 -53 -52 -52 -51 -51 -47 -44 -41 -39 -38 -38 -37 -34 -33 -34 -34 -32 -55 -58 -62 -66 -70 -71 -70 -65 -59 -54 -50 -49 -51 -52 -53 -53 -53 -52 -51 -53 -56 -59 -60 -61 -61 -61 -60 -59 -57 -54 -52 -52 -52 -52 -53 -53 -50 -49 -50 -53 -52 -46 -42 -43 -47 -53 -57 -59 -60 -61 -62 -59 -54 -51 -53 -57 -60 -62 -63 -60 -54 -50 -50 -51 -52 -53 -55 -56 -58 -57 -56 -54 -53 -52 -54 -55 -55 -55 -55 -54 -55 -57 -59 -59 -56 -52 -47 -44 -44 -46 -49 -52 -55 -58 -59 -59 -60 -61 -62 -64 -65 -65 -66 -66 -68 -70 -72 -74 -74 -72 -71 -71 -72 -72 -71 -69 -68 -67 -68 -69 -70 -69 -66 -63 -62 -64 -68 -70 -68 -65 -61 -59 -58 -56 -55 -56 -57 -58 -57 -56 -55 -56 -53 -50 -48 -49 -50 -50 -49 -49 -49 -50 -51 -52 -50 -49 -48 -48 -49 -50 -53 -55 -56 -55 -54 -52 -51 -50 -50 -50 -49 -49 -50 -51 -53 -55 -57 -57 -56 -55 -54 -53 -52 -49 -43 -36 -31 -29 -33 -40 -45 -46 -45 -41 -40 -42 -43 -44 -43 -42 -42 -43 -44 -44 -43 -40 -38 -36 -36 -34 -32 -31 -31 -32 -32 -33 -33 -34 -35 -39 -43 -47 -49 -52 -56 -59 -62 -65 -64 -62 -59 -57 -57 -58 -61 -63 -66 -69 -72 -76 -81 -85 -84 -82 -82 -85 -87 -90 -91 -89 -86 -83 -82 -82 -81 -80 -79 -80 -80 -81 -81 -81 -82 -83 -84 -85 -87 -89 -90 -89 -88 -88 -90 -93 -95 -94 -93 -91 -91 -91 -90 -87 -85 -86 -87 -86 -85 -85 -86 -86 -85 -82 -80 -78 -77 -74 -73 -72 -72 -71 -70 -69 -71 -75 -75 -75 -75 -74 -72 -69 -69 -70 -68 -64 -60 -59 -60 -61 -62 -63 -62 -60 -58 -57 -55 -54 -54 -58 -61 -61 -59 -56 -53 -52 -50 -48 -48 -49 -52 -56 -58 -56 -54 -53 -53 -52 -51 -51 -51 -52 -53 -55 -56 -58 -59 -58 -56 -57 -59 -61 -62 -62 -62 -63 -63 -63 -62 -62 -63 -64 -64 -63 -63 -62 -60 -59 -59 -59 -60 -61 -61 -61 -61 -61 -59 -59 -59 -58 -57 -55 -55 -55 -54 -54 -53 -53 -52 -52 -52 -51 -48 -44 -40 -37 -38 -39 -39 -36 -35 -35 -34 -33 -55 -56 -58 -62 -66 -67 -66 -63 -61 -58 -55 -52 -52 -52 -50 -48 -47 -48 -50 -52 -54 -55 -57 -59 -59 -59 -58 -58 -57 -57 -55 -55 -55 -56 -58 -60 -61 -60 -60 -61 -61 -56 -51 -49 -50 -54 -58 -61 -62 -63 -65 -62 -56 -49 -48 -54 -60 -64 -65 -60 -54 -51 -51 -53 -55 -56 -58 -59 -59 -58 -57 -55 -55 -55 -56 -57 -56 -56 -55 -54 -55 -57 -58 -57 -53 -48 -44 -42 -44 -47 -51 -54 -57 -60 -62 -63 -63 -64 -65 -66 -67 -67 -67 -68 -68 -69 -70 -72 -73 -73 -72 -72 -72 -73 -72 -70 -68 -67 -66 -68 -69 -69 -68 -65 -64 -65 -68 -70 -69 -66 -62 -59 -58 -57 -57 -56 -56 -56 -56 -56 -55 -55 -53 -50 -49 -49 -50 -51 -50 -48 -48 -50 -52 -53 -52 -50 -49 -49 -49 -50 -52 -53 -53 -53 -53 -52 -51 -50 -50 -49 -49 -49 -50 -52 -53 -55 -56 -55 -54 -52 -52 -51 -48 -45 -39 -35 -31 -29 -31 -38 -43 -45 -45 -43 -42 -42 -43 -44 -44 -44 -44 -45 -46 -45 -43 -41 -39 -37 -36 -35 -33 -32 -33 -32 -32 -32 -32 -33 -35 -38 -43 -47 -50 -53 -56 -60 -63 -65 -64 -61 -58 -57 -58 -59 -61 -63 -66 -69 -72 -76 -80 -84 -83 -82 -83 -85 -87 -89 -90 -90 -87 -83 -82 -81 -81 -79 -79 -79 -79 -79 -78 -78 -79 -80 -82 -84 -86 -88 -89 -88 -87 -87 -88 -91 -94 -95 -94 -93 -92 -91 -90 -88 -87 -87 -88 -87 -87 -87 -88 -88 -87 -85 -83 -80 -78 -76 -74 -73 -73 -72 -70 -69 -71 -74 -75 -74 -74 -74 -73 -70 -69 -70 -69 -65 -62 -62 -62 -62 -63 -62 -61 -59 -57 -54 -52 -52 -54 -59 -61 -61 -60 -57 -53 -52 -51 -50 -50 -51 -54 -57 -58 -56 -55 -54 -53 -53 -52 -52 -52 -53 -54 -55 -57 -58 -59 -57 -56 -56 -57 -60 -62 -61 -61 -61 -61 -61 -60 -61 -62 -63 -63 -63 -63 -62 -60 -60 -60 -59 -59 -60 -61 -61 -61 -61 -59 -60 -60 -59 -58 -57 -56 -55 -54 -53 -53 -52 -52 -51 -52 -51 -48 -45 -40 -38 -39 -41 -41 -38 -37 -36 -35 -33 -54 -54 -57 -62 -65 -65 -63 -60 -57 -55 -54 -53 -52 -51 -48 -45 -43 -46 -49 -52 -53 -54 -55 -56 -56 -56 -56 -55 -55 -55 -55 -54 -55 -57 -60 -63 -65 -66 -66 -66 -65 -61 -58 -56 -56 -58 -61 -63 -64 -63 -66 -67 -62 -54 -46 -51 -59 -65 -67 -61 -55 -52 -53 -56 -58 -60 -61 -61 -61 -59 -58 -58 -58 -59 -58 -57 -55 -54 -53 -52 -54 -56 -56 -54 -49 -46 -43 -43 -46 -50 -54 -57 -60 -62 -65 -66 -67 -68 -69 -70 -70 -70 -69 -69 -69 -70 -70 -71 -73 -74 -73 -72 -71 -71 -71 -70 -68 -66 -65 -66 -67 -69 -68 -68 -67 -67 -68 -68 -67 -65 -63 -61 -59 -59 -58 -57 -56 -56 -56 -56 -55 -55 -53 -51 -50 -49 -50 -51 -50 -49 -48 -49 -51 -52 -53 -52 -51 -50 -50 -51 -51 -52 -52 -52 -52 -52 -52 -51 -51 -51 -51 -52 -52 -52 -53 -54 -54 -54 -53 -52 -51 -49 -45 -39 -36 -35 -34 -33 -33 -36 -40 -43 -46 -46 -44 -43 -44 -44 -44 -45 -47 -48 -47 -45 -44 -42 -40 -39 -37 -35 -34 -32 -31 -30 -31 -31 -32 -33 -35 -38 -42 -47 -50 -53 -57 -60 -63 -65 -63 -60 -57 -56 -58 -59 -61 -63 -66 -69 -72 -76 -79 -82 -83 -83 -84 -85 -88 -90 -91 -91 -89 -85 -83 -82 -81 -79 -79 -78 -77 -76 -75 -75 -76 -78 -80 -83 -85 -86 -87 -87 -87 -86 -87 -89 -91 -92 -93 -92 -91 -91 -90 -89 -90 -90 -89 -88 -88 -88 -89 -89 -90 -89 -87 -84 -80 -77 -76 -75 -74 -73 -72 -72 -72 -73 -74 -73 -72 -72 -72 -70 -70 -70 -68 -66 -66 -66 -65 -64 -65 -64 -61 -58 -56 -54 -52 -52 -54 -57 -60 -62 -62 -59 -55 -53 -52 -51 -51 -52 -55 -57 -58 -56 -55 -54 -53 -53 -53 -53 -54 -54 -55 -56 -57 -57 -57 -56 -56 -56 -58 -60 -61 -60 -59 -59 -59 -59 -60 -60 -60 -61 -62 -62 -61 -61 -60 -60 -60 -60 -59 -60 -62 -61 -61 -61 -60 -59 -59 -59 -59 -58 -56 -55 -54 -53 -52 -52 -51 -51 -51 -51 -49 -47 -42 -40 -42 -43 -42 -40 -39 -37 -35 -34 -54 -54 -57 -61 -62 -62 -60 -57 -53 -52 -53 -53 -52 -50 -47 -43 -42 -45 -48 -50 -52 -53 -54 -53 -53 -53 -53 -52 -52 -52 -51 -51 -53 -55 -59 -62 -64 -66 -66 -65 -63 -61 -60 -60 -61 -63 -64 -65 -66 -64 -65 -68 -67 -61 -51 -50 -57 -63 -65 -59 -54 -53 -55 -58 -61 -63 -63 -62 -61 -61 -61 -61 -60 -58 -56 -54 -53 -52 -52 -52 -53 -54 -53 -50 -47 -45 -44 -46 -49 -53 -56 -59 -62 -64 -66 -68 -70 -72 -73 -73 -73 -72 -72 -72 -71 -71 -71 -72 -74 -75 -74 -72 -71 -71 -71 -70 -70 -68 -67 -66 -67 -67 -67 -68 -69 -69 -67 -66 -65 -64 -63 -63 -61 -60 -59 -59 -58 -57 -56 -56 -55 -54 -53 -52 -51 -50 -50 -51 -51 -50 -50 -49 -50 -51 -52 -52 -52 -52 -51 -52 -52 -52 -52 -53 -53 -53 -52 -52 -52 -52 -52 -53 -53 -52 -51 -51 -52 -53 -53 -52 -50 -46 -41 -36 -35 -36 -37 -37 -37 -37 -39 -42 -45 -47 -46 -45 -45 -46 -46 -48 -49 -49 -48 -46 -44 -43 -41 -40 -38 -36 -35 -34 -32 -32 -32 -33 -33 -34 -36 -39 -43 -48 -51 -54 -58 -60 -63 -63 -61 -58 -55 -55 -56 -58 -60 -63 -66 -69 -72 -75 -79 -81 -83 -83 -84 -85 -88 -90 -91 -91 -90 -88 -85 -84 -83 -80 -78 -77 -76 -73 -71 -72 -73 -76 -78 -81 -83 -85 -86 -86 -86 -86 -87 -88 -89 -90 -90 -90 -89 -89 -88 -89 -90 -91 -90 -89 -89 -89 -90 -91 -92 -91 -90 -88 -82 -79 -78 -77 -75 -76 -77 -76 -74 -73 -72 -71 -70 -70 -70 -70 -71 -70 -68 -69 -70 -70 -68 -66 -65 -64 -61 -57 -56 -54 -53 -54 -55 -58 -61 -64 -64 -61 -57 -55 -53 -53 -53 -55 -56 -57 -57 -56 -55 -54 -53 -53 -54 -54 -55 -55 -55 -56 -57 -57 -56 -55 -55 -57 -58 -59 -61 -61 -61 -60 -59 -59 -59 -59 -58 -59 -60 -60 -60 -60 -59 -59 -59 -59 -59 -60 -62 -62 -62 -61 -59 -58 -58 -59 -59 -59 -57 -56 -54 -52 -51 -51 -51 -51 -51 -50 -50 -49 -46 -44 -44 -44 -43 -41 -40 -38 -36 -35 -54 -54 -56 -58 -59 -58 -57 -55 -52 -51 -52 -53 -52 -49 -46 -43 -43 -45 -47 -49 -50 -52 -51 -50 -50 -51 -50 -50 -50 -49 -48 -49 -51 -53 -56 -59 -61 -62 -62 -62 -61 -60 -60 -61 -63 -65 -66 -67 -68 -67 -67 -67 -67 -63 -55 -51 -54 -59 -60 -57 -53 -54 -56 -58 -61 -63 -63 -63 -62 -63 -63 -61 -59 -55 -53 -52 -52 -51 -49 -49 -51 -51 -51 -48 -46 -45 -45 -47 -51 -55 -58 -61 -63 -65 -68 -70 -71 -72 -73 -74 -73 -73 -73 -74 -73 -73 -73 -74 -74 -75 -75 -73 -70 -69 -69 -70 -71 -71 -70 -68 -67 -66 -66 -67 -68 -69 -67 -65 -64 -63 -63 -62 -61 -60 -60 -60 -59 -58 -56 -55 -55 -55 -54 -52 -51 -50 -50 -50 -51 -51 -51 -51 -50 -50 -51 -52 -52 -52 -52 -52 -52 -53 -54 -55 -55 -54 -53 -52 -52 -52 -52 -52 -52 -51 -51 -50 -50 -51 -51 -51 -50 -47 -42 -36 -32 -29 -28 -30 -34 -38 -42 -44 -46 -47 -47 -47 -47 -47 -48 -49 -50 -50 -48 -46 -44 -43 -42 -41 -39 -38 -37 -36 -35 -34 -34 -34 -35 -35 -37 -40 -43 -47 -51 -55 -58 -60 -61 -60 -57 -55 -53 -54 -56 -58 -61 -63 -65 -68 -71 -74 -78 -81 -82 -83 -83 -85 -89 -90 -91 -91 -90 -88 -86 -85 -84 -82 -80 -77 -75 -72 -69 -70 -71 -73 -77 -80 -82 -84 -85 -86 -86 -86 -87 -87 -88 -88 -88 -87 -88 -88 -88 -89 -90 -91 -89 -88 -89 -90 -91 -92 -92 -92 -91 -88 -83 -80 -79 -79 -78 -80 -82 -80 -76 -73 -71 -70 -69 -68 -69 -69 -70 -69 -69 -72 -73 -72 -68 -66 -65 -63 -60 -56 -55 -55 -55 -57 -58 -60 -64 -66 -66 -63 -59 -57 -56 -56 -56 -57 -56 -56 -55 -55 -55 -54 -53 -53 -54 -55 -55 -55 -54 -55 -57 -57 -56 -55 -55 -56 -58 -59 -61 -61 -60 -59 -59 -59 -59 -58 -57 -57 -57 -58 -58 -59 -58 -58 -58 -58 -58 -60 -61 -61 -62 -61 -59 -59 -59 -59 -60 -59 -58 -55 -53 -51 -51 -51 -51 -51 -51 -50 -50 -50 -48 -46 -46 -46 -44 -42 -40 -38 -37 -36 -52 -52 -54 -55 -55 -55 -55 -53 -51 -51 -52 -52 -51 -49 -46 -44 -44 -44 -45 -47 -49 -49 -48 -47 -48 -49 -49 -49 -49 -49 -49 -49 -50 -51 -52 -54 -56 -58 -59 -59 -58 -58 -59 -61 -63 -65 -66 -66 -66 -67 -67 -68 -69 -66 -59 -54 -55 -57 -58 -57 -56 -57 -59 -60 -61 -62 -62 -61 -62 -63 -63 -62 -58 -55 -53 -53 -51 -49 -48 -48 -49 -50 -49 -48 -46 -46 -47 -50 -54 -58 -61 -63 -65 -67 -69 -70 -71 -72 -72 -72 -72 -72 -73 -73 -74 -74 -75 -76 -76 -75 -75 -74 -71 -69 -69 -70 -72 -72 -71 -71 -69 -67 -66 -66 -68 -69 -68 -65 -63 -63 -62 -61 -60 -60 -59 -59 -60 -59 -58 -57 -57 -56 -55 -53 -51 -49 -50 -51 -51 -52 -52 -51 -51 -50 -51 -51 -51 -52 -52 -53 -54 -54 -55 -56 -57 -56 -54 -53 -51 -51 -51 -51 -51 -51 -51 -50 -50 -50 -50 -49 -49 -47 -43 -38 -32 -29 -28 -30 -35 -40 -42 -44 -46 -47 -48 -48 -48 -48 -49 -50 -50 -49 -48 -47 -46 -44 -43 -42 -41 -40 -39 -38 -37 -36 -36 -35 -36 -36 -38 -41 -44 -47 -52 -56 -59 -60 -60 -58 -57 -55 -55 -55 -56 -58 -60 -62 -64 -67 -70 -73 -76 -79 -81 -82 -82 -85 -88 -90 -91 -92 -91 -88 -86 -85 -84 -83 -80 -78 -75 -73 -71 -70 -71 -73 -76 -79 -81 -83 -85 -86 -86 -87 -87 -87 -87 -87 -86 -86 -86 -87 -89 -90 -91 -91 -89 -89 -90 -91 -91 -91 -91 -91 -90 -88 -84 -81 -80 -80 -82 -85 -87 -84 -78 -74 -71 -69 -69 -68 -68 -68 -67 -68 -70 -74 -73 -70 -66 -66 -64 -62 -59 -56 -55 -55 -56 -58 -59 -61 -65 -67 -67 -63 -60 -59 -59 -59 -58 -57 -55 -54 -54 -54 -54 -54 -54 -53 -54 -54 -54 -54 -53 -54 -56 -58 -57 -56 -56 -56 -57 -59 -60 -59 -58 -58 -59 -58 -58 -57 -55 -55 -55 -56 -57 -57 -57 -57 -57 -58 -58 -59 -59 -60 -61 -60 -59 -58 -59 -60 -61 -60 -57 -54 -52 -51 -51 -51 -51 -50 -50 -50 -50 -49 -48 -47 -47 -46 -45 -43 -41 -39 -38 -37 -50 -50 -50 -52 -52 -51 -51 -50 -50 -51 -51 -51 -49 -47 -45 -44 -43 -43 -44 -45 -47 -47 -45 -45 -46 -48 -49 -50 -50 -50 -51 -51 -50 -50 -50 -52 -54 -56 -58 -58 -57 -57 -58 -60 -62 -64 -64 -64 -65 -66 -68 -69 -70 -70 -67 -61 -58 -57 -57 -57 -58 -59 -61 -62 -63 -63 -62 -61 -61 -63 -63 -61 -58 -55 -53 -52 -50 -48 -46 -46 -47 -48 -48 -48 -48 -48 -50 -53 -58 -61 -64 -66 -68 -69 -70 -71 -71 -70 -70 -69 -70 -71 -72 -72 -73 -75 -76 -77 -77 -76 -74 -73 -73 -71 -71 -71 -72 -71 -71 -71 -71 -69 -67 -66 -67 -67 -66 -64 -63 -61 -59 -58 -58 -59 -59 -58 -59 -59 -59 -59 -59 -58 -56 -54 -51 -50 -50 -51 -51 -52 -52 -52 -51 -51 -50 -50 -51 -52 -53 -53 -54 -56 -57 -58 -59 -58 -55 -53 -51 -51 -50 -50 -50 -50 -50 -50 -50 -49 -49 -49 -49 -48 -45 -39 -34 -32 -33 -35 -39 -41 -43 -45 -46 -46 -46 -47 -47 -47 -48 -49 -50 -50 -50 -49 -48 -46 -44 -43 -42 -42 -41 -40 -39 -38 -37 -37 -37 -37 -39 -41 -44 -47 -53 -56 -59 -60 -59 -57 -56 -55 -55 -54 -55 -57 -59 -61 -64 -68 -71 -73 -75 -77 -79 -79 -80 -83 -87 -90 -92 -93 -92 -89 -86 -85 -84 -82 -80 -78 -76 -75 -74 -72 -71 -72 -73 -76 -79 -82 -85 -87 -87 -88 -87 -87 -88 -87 -86 -86 -85 -87 -90 -93 -93 -91 -90 -90 -92 -92 -90 -89 -90 -91 -90 -89 -85 -82 -82 -84 -86 -90 -91 -87 -80 -76 -73 -71 -70 -69 -68 -67 -67 -68 -71 -72 -71 -69 -67 -66 -63 -60 -57 -56 -55 -55 -56 -58 -59 -61 -64 -67 -67 -64 -61 -60 -60 -59 -57 -54 -53 -52 -53 -52 -53 -54 -53 -52 -53 -53 -53 -53 -53 -53 -55 -56 -57 -57 -57 -58 -58 -59 -60 -59 -57 -57 -58 -58 -58 -57 -55 -54 -55 -56 -56 -56 -56 -56 -57 -57 -57 -58 -58 -58 -59 -59 -59 -58 -58 -59 -60 -59 -56 -54 -52 -52 -52 -51 -50 -49 -49 -49 -49 -49 -48 -48 -47 -47 -46 -45 -43 -41 -39 -38 -49 -48 -48 -49 -48 -47 -47 -47 -47 -48 -49 -49 -46 -44 -43 -42 -42 -42 -42 -44 -46 -46 -43 -43 -45 -46 -48 -52 -53 -53 -53 -52 -50 -49 -49 -51 -53 -56 -57 -58 -57 -57 -58 -60 -61 -61 -62 -62 -64 -66 -69 -70 -71 -71 -70 -64 -60 -58 -57 -57 -59 -60 -62 -63 -64 -64 -63 -62 -62 -62 -62 -60 -57 -54 -53 -51 -49 -46 -45 -45 -46 -47 -48 -49 -50 -51 -53 -56 -61 -64 -67 -70 -72 -72 -72 -71 -71 -70 -69 -68 -68 -69 -70 -72 -73 -75 -76 -77 -78 -76 -73 -72 -73 -74 -73 -72 -72 -70 -70 -70 -70 -69 -68 -67 -66 -66 -65 -64 -63 -61 -58 -56 -56 -57 -58 -58 -58 -59 -60 -60 -60 -59 -57 -54 -52 -50 -50 -50 -51 -51 -52 -52 -52 -52 -51 -50 -51 -52 -53 -54 -55 -57 -60 -61 -61 -58 -56 -53 -52 -50 -50 -49 -49 -49 -49 -49 -48 -48 -48 -49 -50 -49 -45 -39 -36 -35 -36 -39 -41 -42 -44 -45 -46 -45 -45 -46 -46 -48 -50 -51 -51 -51 -51 -50 -49 -47 -45 -44 -43 -42 -41 -41 -40 -39 -38 -38 -38 -38 -39 -41 -43 -47 -53 -56 -59 -60 -59 -56 -55 -55 -54 -53 -54 -56 -58 -61 -64 -68 -70 -71 -72 -74 -76 -77 -79 -83 -87 -90 -93 -94 -92 -89 -86 -85 -84 -82 -79 -78 -77 -77 -76 -74 -72 -71 -72 -74 -78 -82 -86 -87 -87 -87 -87 -88 -88 -87 -87 -86 -86 -88 -91 -94 -95 -93 -91 -92 -93 -93 -91 -90 -90 -90 -91 -91 -88 -87 -88 -92 -93 -94 -92 -88 -81 -78 -76 -75 -73 -71 -70 -69 -68 -68 -70 -71 -71 -71 -68 -66 -62 -59 -56 -56 -55 -56 -57 -59 -60 -62 -64 -66 -66 -64 -62 -60 -60 -58 -55 -53 -51 -51 -51 -51 -52 -53 -53 -52 -52 -52 -52 -52 -52 -53 -54 -55 -56 -57 -57 -58 -58 -59 -59 -59 -57 -56 -57 -57 -57 -57 -55 -55 -55 -56 -56 -56 -55 -55 -56 -56 -56 -56 -57 -57 -57 -58 -59 -59 -59 -58 -58 -57 -56 -54 -53 -52 -52 -52 -50 -50 -49 -49 -49 -49 -49 -49 -47 -47 -47 -46 -44 -42 -41 -38 -49 -49 -48 -47 -46 -45 -45 -44 -43 -43 -43 -44 -42 -40 -40 -39 -38 -37 -39 -43 -46 -46 -42 -43 -45 -48 -50 -53 -56 -57 -55 -52 -50 -48 -48 -50 -52 -56 -58 -58 -56 -56 -57 -59 -59 -58 -59 -61 -64 -67 -69 -70 -70 -69 -68 -63 -60 -58 -58 -58 -60 -61 -62 -63 -64 -64 -63 -62 -61 -61 -60 -58 -56 -54 -52 -50 -48 -46 -45 -44 -45 -46 -48 -50 -52 -55 -57 -60 -63 -68 -71 -74 -75 -76 -75 -73 -71 -70 -69 -69 -68 -68 -69 -71 -72 -74 -75 -76 -76 -75 -73 -71 -73 -74 -73 -72 -71 -69 -69 -69 -69 -69 -68 -67 -67 -66 -65 -64 -62 -60 -57 -55 -55 -56 -57 -58 -59 -59 -60 -60 -61 -59 -57 -55 -53 -51 -50 -50 -50 -50 -51 -52 -52 -52 -51 -50 -50 -51 -53 -54 -55 -56 -58 -60 -59 -58 -56 -54 -52 -51 -49 -48 -48 -48 -48 -47 -46 -45 -46 -48 -48 -47 -44 -39 -38 -38 -39 -40 -41 -42 -44 -45 -45 -44 -44 -45 -47 -48 -50 -52 -52 -53 -53 -52 -51 -49 -46 -44 -42 -41 -41 -41 -41 -40 -39 -39 -38 -38 -38 -39 -42 -46 -51 -55 -58 -60 -59 -56 -54 -53 -51 -51 -52 -55 -58 -62 -66 -68 -69 -69 -70 -72 -74 -76 -78 -82 -86 -90 -93 -94 -92 -88 -86 -85 -84 -82 -80 -78 -78 -79 -79 -77 -74 -72 -72 -74 -77 -82 -86 -87 -87 -87 -88 -89 -88 -88 -88 -88 -87 -88 -90 -93 -95 -94 -93 -94 -95 -94 -92 -91 -90 -91 -91 -92 -92 -93 -95 -99 -99 -96 -92 -87 -82 -81 -81 -80 -78 -74 -73 -71 -70 -69 -70 -71 -70 -71 -70 -66 -62 -58 -56 -55 -55 -56 -58 -60 -63 -64 -65 -66 -66 -64 -61 -60 -59 -56 -54 -52 -50 -49 -50 -51 -52 -53 -52 -52 -51 -51 -51 -52 -53 -54 -54 -54 -56 -57 -57 -57 -56 -57 -58 -58 -56 -56 -56 -56 -57 -58 -56 -56 -55 -56 -56 -55 -54 -54 -55 -55 -55 -55 -55 -56 -57 -57 -59 -60 -59 -58 -57 -56 -55 -54 -53 -52 -52 -52 -51 -51 -51 -51 -51 -50 -50 -50 -48 -47 -47 -47 -45 -44 -41 -39 -51 -50 -49 -47 -46 -45 -45 -44 -43 -42 -41 -41 -39 -38 -38 -38 -35 -32 -34 -39 -43 -44 -41 -41 -44 -50 -53 -56 -58 -59 -56 -51 -48 -47 -47 -49 -52 -55 -57 -57 -56 -55 -56 -57 -57 -56 -57 -62 -66 -68 -68 -69 -67 -66 -65 -63 -61 -59 -58 -58 -60 -61 -62 -62 -62 -62 -61 -61 -60 -59 -58 -57 -56 -54 -52 -50 -48 -47 -46 -45 -44 -46 -49 -52 -56 -59 -62 -64 -68 -72 -76 -78 -79 -79 -77 -75 -72 -70 -70 -70 -69 -69 -70 -71 -71 -71 -72 -73 -73 -73 -72 -71 -71 -71 -71 -70 -69 -69 -68 -68 -69 -68 -68 -67 -67 -66 -65 -64 -62 -61 -58 -56 -56 -56 -57 -58 -59 -59 -59 -60 -61 -59 -57 -55 -53 -52 -51 -50 -50 -50 -51 -51 -52 -51 -51 -50 -50 -51 -52 -54 -55 -57 -57 -57 -57 -56 -54 -53 -52 -50 -49 -47 -48 -49 -48 -46 -43 -42 -44 -46 -46 -45 -42 -39 -39 -40 -40 -40 -39 -41 -43 -44 -44 -44 -44 -45 -47 -48 -51 -52 -54 -54 -54 -53 -52 -50 -48 -45 -42 -41 -41 -41 -41 -41 -40 -40 -39 -39 -39 -39 -40 -44 -48 -53 -57 -60 -59 -55 -53 -51 -49 -49 -51 -54 -58 -61 -65 -67 -67 -67 -69 -72 -74 -75 -77 -80 -85 -89 -91 -93 -91 -88 -85 -84 -84 -83 -81 -79 -78 -80 -80 -79 -76 -73 -73 -75 -78 -81 -86 -88 -89 -89 -90 -91 -91 -92 -93 -93 -90 -89 -90 -92 -94 -94 -95 -96 -96 -95 -93 -92 -91 -92 -93 -95 -97 -99 -101 -102 -101 -98 -93 -89 -87 -86 -86 -86 -83 -79 -76 -74 -72 -70 -70 -70 -68 -69 -68 -65 -61 -57 -56 -56 -56 -56 -57 -61 -65 -66 -66 -66 -65 -63 -61 -59 -57 -55 -53 -52 -50 -50 -51 -53 -54 -54 -54 -52 -51 -50 -51 -53 -54 -54 -54 -54 -55 -56 -56 -56 -55 -55 -56 -57 -56 -56 -56 -56 -57 -58 -57 -56 -56 -56 -56 -55 -54 -53 -54 -54 -53 -54 -54 -56 -56 -56 -58 -59 -58 -56 -56 -55 -54 -53 -53 -52 -51 -51 -51 -52 -52 -52 -52 -52 -52 -50 -49 -48 -48 -47 -46 -44 -42 -40 -52 -51 -51 -50 -49 -48 -47 -46 -46 -44 -42 -39 -36 -35 -37 -38 -35 -30 -31 -35 -39 -42 -39 -38 -42 -49 -54 -57 -59 -59 -56 -50 -45 -43 -44 -47 -51 -54 -56 -56 -55 -55 -56 -56 -56 -55 -56 -62 -67 -70 -68 -68 -66 -64 -63 -62 -61 -59 -58 -58 -60 -61 -62 -62 -62 -62 -62 -63 -62 -61 -60 -59 -58 -57 -55 -54 -53 -51 -50 -48 -48 -49 -51 -54 -59 -63 -67 -71 -74 -78 -81 -82 -82 -81 -79 -76 -73 -72 -72 -72 -71 -70 -70 -70 -69 -69 -69 -70 -69 -70 -70 -71 -70 -70 -70 -69 -69 -68 -68 -68 -68 -68 -68 -67 -66 -65 -64 -63 -63 -62 -59 -58 -57 -57 -57 -57 -58 -59 -59 -60 -61 -60 -57 -55 -53 -53 -52 -51 -50 -50 -50 -51 -52 -51 -51 -50 -50 -51 -52 -53 -55 -57 -58 -57 -56 -54 -53 -52 -51 -49 -47 -47 -48 -49 -49 -46 -42 -41 -41 -42 -42 -41 -40 -38 -39 -40 -41 -39 -38 -39 -41 -43 -44 -44 -45 -46 -47 -48 -51 -53 -54 -54 -54 -53 -52 -51 -50 -47 -44 -42 -42 -42 -43 -43 -42 -41 -40 -39 -38 -39 -41 -43 -46 -51 -56 -61 -59 -55 -51 -49 -49 -49 -51 -53 -57 -59 -62 -63 -64 -66 -69 -73 -75 -76 -76 -78 -83 -87 -89 -89 -88 -86 -84 -84 -84 -84 -83 -81 -78 -80 -81 -81 -78 -75 -75 -76 -78 -82 -86 -89 -90 -91 -92 -93 -95 -96 -97 -98 -95 -92 -91 -93 -95 -95 -96 -97 -97 -96 -93 -92 -92 -93 -95 -98 -101 -102 -103 -104 -101 -98 -94 -94 -93 -91 -90 -90 -86 -82 -80 -78 -75 -72 -70 -69 -67 -68 -67 -65 -61 -57 -55 -56 -57 -56 -57 -61 -64 -66 -66 -66 -65 -63 -60 -57 -54 -54 -53 -52 -51 -51 -53 -54 -55 -56 -56 -54 -50 -48 -50 -53 -55 -55 -54 -54 -54 -55 -55 -55 -54 -54 -55 -55 -53 -54 -55 -56 -57 -57 -57 -56 -56 -56 -56 -55 -53 -52 -53 -53 -53 -53 -54 -54 -55 -55 -56 -57 -56 -55 -53 -53 -53 -52 -51 -50 -50 -50 -51 -52 -53 -53 -53 -53 -53 -52 -50 -48 -47 -47 -46 -44 -42 -40 -51 -52 -52 -52 -52 -52 -52 -50 -49 -48 -45 -40 -35 -34 -36 -39 -38 -32 -30 -33 -37 -40 -38 -36 -38 -44 -50 -55 -59 -59 -57 -49 -41 -39 -40 -44 -49 -52 -53 -54 -53 -56 -58 -57 -55 -54 -54 -59 -66 -72 -72 -69 -66 -63 -63 -62 -60 -59 -58 -58 -59 -61 -62 -63 -64 -65 -67 -69 -70 -69 -67 -66 -65 -63 -61 -60 -59 -58 -58 -57 -56 -54 -54 -56 -61 -66 -71 -74 -78 -81 -84 -84 -84 -83 -80 -77 -74 -74 -74 -73 -72 -71 -69 -68 -68 -68 -68 -69 -69 -69 -69 -70 -70 -70 -70 -69 -68 -68 -68 -68 -68 -69 -68 -67 -65 -64 -63 -64 -63 -62 -60 -59 -59 -59 -59 -58 -58 -59 -60 -61 -62 -60 -57 -55 -54 -54 -53 -52 -51 -49 -49 -50 -51 -51 -50 -50 -50 -51 -53 -54 -55 -56 -57 -57 -56 -54 -53 -51 -51 -50 -48 -47 -47 -48 -46 -44 -42 -40 -39 -40 -40 -40 -39 -38 -39 -39 -39 -39 -39 -40 -41 -43 -45 -45 -46 -46 -47 -49 -51 -53 -54 -54 -53 -52 -52 -52 -51 -49 -46 -44 -43 -43 -44 -44 -43 -41 -40 -39 -39 -40 -42 -43 -46 -49 -55 -59 -58 -54 -50 -48 -48 -50 -52 -54 -55 -57 -58 -60 -62 -65 -70 -74 -76 -77 -76 -78 -81 -85 -86 -86 -86 -84 -83 -82 -83 -84 -84 -83 -80 -79 -82 -83 -82 -78 -76 -77 -80 -83 -86 -89 -91 -92 -93 -95 -97 -98 -99 -98 -96 -93 -92 -92 -94 -95 -96 -96 -95 -94 -92 -91 -92 -94 -97 -101 -103 -104 -103 -103 -101 -98 -95 -97 -97 -95 -93 -91 -88 -85 -83 -82 -79 -74 -71 -68 -67 -67 -66 -64 -60 -56 -54 -55 -55 -56 -58 -60 -62 -64 -65 -65 -64 -63 -60 -56 -53 -53 -53 -52 -51 -51 -53 -55 -56 -56 -56 -54 -51 -48 -49 -52 -53 -53 -53 -53 -53 -54 -55 -55 -53 -53 -54 -54 -53 -53 -54 -55 -56 -56 -56 -55 -55 -55 -56 -54 -53 -51 -51 -51 -52 -52 -52 -53 -54 -54 -55 -56 -55 -53 -52 -52 -52 -51 -50 -49 -49 -50 -52 -53 -53 -53 -53 -54 -54 -53 -52 -50 -48 -47 -47 -45 -42 -39 -50 -52 -53 -53 -55 -55 -55 -54 -52 -51 -48 -44 -38 -34 -35 -38 -39 -35 -32 -33 -37 -41 -40 -37 -37 -39 -44 -50 -55 -58 -57 -51 -41 -36 -35 -40 -45 -48 -50 -51 -52 -55 -58 -57 -55 -55 -57 -60 -65 -71 -76 -72 -66 -61 -60 -59 -58 -58 -58 -59 -59 -60 -61 -63 -65 -68 -71 -74 -76 -77 -76 -74 -72 -70 -67 -65 -64 -64 -65 -64 -62 -60 -58 -59 -63 -68 -74 -77 -80 -82 -84 -85 -85 -84 -81 -78 -75 -76 -76 -75 -73 -71 -69 -67 -67 -67 -67 -68 -68 -69 -70 -70 -70 -71 -70 -70 -68 -68 -68 -69 -69 -69 -68 -66 -65 -64 -64 -65 -64 -63 -61 -61 -61 -62 -62 -60 -59 -59 -60 -61 -61 -59 -57 -56 -55 -55 -54 -52 -51 -50 -49 -49 -49 -49 -48 -49 -50 -51 -53 -54 -54 -55 -56 -56 -55 -54 -52 -51 -51 -51 -50 -48 -46 -45 -43 -43 -42 -41 -38 -38 -38 -38 -39 -38 -39 -39 -39 -39 -39 -40 -41 -43 -45 -46 -47 -47 -48 -50 -51 -53 -53 -53 -53 -52 -52 -52 -52 -50 -48 -46 -45 -44 -45 -44 -43 -42 -42 -42 -42 -43 -44 -44 -45 -48 -52 -55 -55 -53 -50 -48 -48 -51 -53 -55 -55 -57 -58 -59 -61 -64 -70 -75 -77 -77 -76 -77 -79 -82 -83 -84 -83 -82 -82 -82 -82 -84 -85 -86 -83 -81 -83 -86 -87 -82 -79 -80 -82 -84 -86 -89 -91 -93 -94 -96 -98 -99 -98 -97 -96 -94 -93 -93 -94 -95 -95 -95 -93 -92 -91 -91 -92 -93 -98 -102 -104 -104 -102 -101 -100 -98 -97 -99 -99 -98 -97 -94 -90 -87 -85 -83 -81 -76 -72 -69 -67 -66 -65 -63 -59 -55 -53 -53 -54 -55 -59 -60 -60 -59 -60 -62 -63 -62 -59 -56 -53 -52 -52 -51 -50 -52 -53 -54 -55 -55 -55 -54 -52 -50 -50 -51 -50 -49 -51 -52 -53 -54 -55 -54 -53 -53 -54 -55 -54 -53 -54 -54 -54 -53 -53 -53 -53 -53 -54 -53 -52 -50 -50 -50 -50 -51 -51 -52 -52 -53 -54 -55 -54 -53 -52 -51 -52 -51 -50 -49 -49 -51 -53 -53 -53 -52 -53 -54 -55 -54 -53 -51 -49 -48 -48 -46 -43 -40 -49 -51 -53 -54 -55 -56 -56 -55 -54 -52 -51 -48 -43 -38 -36 -37 -39 -38 -36 -37 -40 -43 -43 -40 -38 -37 -37 -39 -44 -48 -51 -51 -43 -37 -34 -35 -41 -45 -48 -49 -51 -53 -54 -55 -55 -56 -58 -62 -67 -72 -75 -72 -66 -60 -59 -57 -57 -58 -59 -60 -60 -60 -61 -64 -67 -69 -71 -75 -78 -81 -81 -80 -78 -75 -72 -69 -68 -67 -68 -68 -67 -65 -64 -64 -67 -72 -76 -79 -80 -81 -83 -84 -85 -85 -83 -80 -77 -76 -76 -75 -72 -70 -67 -66 -66 -66 -67 -67 -67 -69 -70 -70 -71 -72 -72 -71 -70 -69 -69 -70 -69 -68 -67 -65 -64 -64 -64 -65 -65 -63 -62 -62 -63 -64 -65 -64 -62 -61 -61 -61 -61 -60 -59 -57 -56 -55 -54 -52 -51 -50 -49 -48 -48 -47 -48 -49 -50 -50 -52 -53 -54 -54 -55 -55 -55 -53 -52 -50 -50 -50 -49 -46 -43 -41 -41 -42 -42 -40 -37 -36 -37 -38 -39 -38 -38 -39 -40 -40 -40 -41 -42 -44 -45 -46 -47 -47 -48 -50 -51 -52 -52 -52 -52 -52 -52 -52 -52 -50 -48 -47 -46 -45 -45 -44 -44 -45 -45 -45 -46 -46 -46 -45 -45 -46 -48 -51 -52 -52 -50 -48 -48 -50 -53 -55 -56 -56 -57 -58 -60 -64 -71 -76 -77 -76 -74 -74 -76 -79 -81 -82 -82 -81 -81 -81 -82 -83 -86 -87 -85 -84 -86 -88 -89 -85 -82 -82 -82 -84 -86 -88 -91 -94 -96 -97 -98 -98 -98 -97 -96 -95 -95 -96 -96 -95 -94 -94 -92 -90 -90 -91 -92 -93 -97 -101 -103 -103 -102 -101 -100 -99 -100 -101 -100 -100 -98 -95 -92 -89 -86 -83 -80 -76 -73 -70 -67 -65 -63 -60 -57 -54 -53 -52 -52 -54 -57 -59 -58 -57 -57 -59 -61 -61 -58 -56 -54 -52 -51 -50 -50 -51 -53 -53 -54 -54 -54 -54 -53 -51 -51 -51 -49 -47 -48 -50 -51 -53 -55 -54 -52 -53 -54 -54 -54 -53 -53 -53 -51 -51 -52 -53 -52 -51 -51 -51 -51 -49 -49 -48 -49 -49 -51 -52 -51 -51 -53 -55 -54 -53 -52 -51 -51 -51 -50 -50 -50 -52 -53 -52 -52 -51 -53 -55 -55 -55 -54 -52 -51 -48 -48 -46 -43 -41 -48 -50 -52 -54 -56 -56 -56 -54 -53 -52 -50 -49 -46 -44 -41 -39 -39 -39 -39 -40 -43 -47 -48 -43 -39 -36 -34 -34 -36 -38 -41 -42 -41 -39 -37 -37 -41 -45 -48 -50 -51 -52 -52 -53 -54 -55 -57 -61 -67 -71 -72 -68 -63 -59 -58 -56 -58 -60 -61 -62 -62 -62 -63 -65 -67 -69 -72 -75 -79 -83 -84 -83 -81 -78 -75 -73 -71 -70 -70 -70 -70 -70 -70 -71 -73 -77 -79 -81 -81 -81 -81 -82 -84 -85 -84 -81 -78 -76 -75 -74 -72 -69 -67 -66 -66 -67 -67 -67 -67 -68 -69 -69 -70 -72 -72 -72 -71 -70 -70 -70 -69 -67 -65 -64 -64 -64 -64 -65 -64 -64 -64 -64 -66 -67 -67 -66 -65 -65 -64 -63 -62 -60 -57 -55 -54 -53 -52 -51 -50 -51 -50 -48 -46 -46 -47 -48 -49 -50 -51 -52 -53 -54 -54 -54 -54 -53 -50 -47 -47 -46 -44 -41 -39 -39 -41 -41 -41 -38 -36 -35 -36 -37 -38 -38 -37 -38 -40 -41 -41 -42 -43 -44 -45 -47 -48 -48 -48 -49 -51 -51 -52 -53 -53 -53 -53 -52 -52 -50 -49 -48 -47 -46 -45 -45 -46 -47 -48 -48 -48 -47 -46 -44 -43 -43 -45 -47 -50 -52 -52 -50 -49 -50 -51 -53 -54 -54 -55 -56 -58 -63 -69 -73 -75 -74 -71 -71 -73 -76 -80 -82 -82 -81 -79 -79 -80 -82 -84 -86 -84 -84 -86 -89 -90 -86 -83 -82 -83 -85 -87 -90 -92 -95 -97 -98 -98 -98 -98 -98 -98 -98 -98 -98 -97 -96 -95 -94 -93 -92 -91 -92 -94 -95 -97 -99 -101 -102 -102 -101 -102 -102 -102 -101 -100 -99 -98 -96 -93 -90 -87 -84 -80 -76 -73 -70 -67 -65 -62 -59 -56 -55 -53 -52 -51 -52 -55 -57 -58 -57 -56 -58 -59 -59 -57 -56 -54 -52 -51 -49 -49 -50 -51 -52 -52 -53 -53 -54 -53 -52 -51 -50 -49 -48 -48 -48 -50 -52 -54 -52 -52 -53 -54 -54 -54 -53 -52 -51 -50 -50 -51 -51 -51 -50 -49 -49 -49 -49 -48 -47 -47 -48 -50 -50 -50 -50 -52 -53 -53 -52 -51 -51 -51 -51 -51 -51 -52 -53 -53 -52 -50 -51 -53 -55 -56 -55 -54 -53 -51 -49 -48 -46 -44 -42 -48 -49 -51 -53 -56 -57 -56 -53 -51 -50 -49 -47 -47 -47 -48 -47 -45 -43 -43 -44 -46 -48 -50 -47 -45 -42 -39 -36 -35 -36 -38 -38 -37 -37 -38 -40 -44 -49 -51 -52 -53 -53 -53 -53 -54 -54 -55 -59 -65 -69 -70 -64 -60 -56 -55 -55 -59 -63 -66 -66 -66 -67 -68 -69 -70 -72 -74 -78 -82 -84 -84 -83 -82 -80 -77 -75 -73 -72 -72 -73 -74 -74 -75 -76 -79 -81 -82 -82 -82 -80 -79 -80 -82 -84 -83 -81 -78 -75 -74 -72 -70 -69 -68 -67 -67 -66 -66 -67 -67 -67 -68 -68 -70 -71 -72 -72 -72 -71 -71 -70 -69 -66 -64 -64 -64 -65 -65 -65 -64 -64 -65 -66 -67 -68 -68 -68 -68 -68 -68 -67 -64 -60 -56 -53 -52 -52 -50 -50 -50 -50 -49 -47 -46 -46 -47 -49 -50 -50 -51 -51 -51 -52 -52 -52 -52 -52 -49 -45 -43 -42 -41 -39 -38 -39 -40 -40 -39 -36 -35 -35 -35 -36 -37 -37 -37 -38 -39 -40 -41 -43 -45 -46 -46 -47 -48 -49 -49 -50 -51 -52 -52 -53 -53 -54 -54 -54 -52 -51 -50 -49 -48 -47 -46 -46 -47 -48 -48 -48 -48 -47 -46 -43 -42 -42 -43 -46 -50 -53 -54 -53 -52 -51 -50 -51 -52 -53 -53 -55 -58 -62 -67 -71 -73 -73 -71 -71 -72 -76 -80 -82 -83 -80 -77 -76 -78 -80 -83 -84 -83 -84 -86 -89 -88 -86 -84 -83 -84 -86 -89 -93 -95 -97 -97 -98 -97 -97 -98 -100 -101 -101 -100 -100 -98 -96 -96 -96 -96 -95 -94 -94 -95 -95 -96 -99 -101 -103 -102 -103 -104 -104 -101 -98 -97 -97 -97 -95 -93 -91 -89 -85 -81 -77 -73 -70 -67 -66 -64 -62 -59 -57 -56 -54 -52 -51 -53 -56 -58 -58 -57 -58 -58 -57 -54 -54 -53 -52 -50 -48 -47 -48 -49 -50 -52 -52 -53 -53 -53 -51 -50 -49 -49 -49 -49 -50 -51 -52 -52 -51 -52 -53 -54 -54 -54 -52 -51 -50 -49 -50 -50 -49 -49 -49 -48 -48 -48 -49 -47 -46 -45 -46 -48 -48 -49 -50 -52 -52 -52 -51 -50 -51 -51 -51 -51 -52 -53 -53 -53 -51 -51 -51 -54 -56 -56 -56 -55 -53 -51 -49 -48 -46 -44 -43 -47 -48 -50 -53 -56 -56 -55 -52 -48 -47 -46 -45 -45 -46 -49 -49 -48 -45 -46 -48 -50 -53 -57 -57 -56 -53 -48 -42 -38 -35 -35 -34 -35 -36 -37 -39 -44 -49 -53 -55 -56 -56 -55 -56 -56 -55 -54 -57 -63 -68 -69 -63 -57 -53 -52 -54 -60 -66 -70 -71 -71 -73 -74 -76 -76 -76 -78 -82 -85 -85 -84 -82 -81 -79 -77 -77 -76 -76 -76 -77 -77 -77 -78 -78 -80 -81 -82 -81 -80 -79 -78 -78 -80 -82 -82 -79 -76 -74 -72 -70 -69 -69 -69 -68 -67 -66 -66 -66 -66 -66 -67 -68 -70 -71 -72 -72 -72 -72 -71 -70 -68 -65 -64 -64 -65 -67 -67 -66 -65 -65 -66 -67 -68 -69 -69 -69 -69 -70 -70 -70 -67 -61 -55 -52 -51 -50 -50 -49 -49 -48 -48 -47 -47 -47 -49 -50 -50 -50 -50 -51 -52 -51 -50 -50 -51 -49 -46 -42 -40 -39 -39 -38 -38 -39 -39 -38 -36 -34 -34 -35 -35 -35 -35 -36 -36 -38 -39 -40 -41 -43 -46 -47 -48 -48 -49 -50 -50 -51 -52 -52 -53 -54 -54 -54 -55 -55 -53 -52 -50 -48 -48 -47 -47 -47 -47 -48 -47 -47 -47 -46 -44 -42 -42 -43 -44 -47 -51 -54 -56 -56 -54 -52 -51 -51 -51 -52 -53 -55 -58 -62 -66 -70 -72 -72 -71 -71 -73 -76 -79 -82 -83 -81 -77 -74 -76 -80 -83 -83 -82 -83 -86 -87 -86 -85 -85 -85 -86 -87 -90 -93 -96 -98 -98 -97 -97 -97 -98 -101 -103 -103 -102 -100 -98 -97 -96 -97 -97 -97 -97 -96 -95 -95 -97 -99 -102 -104 -104 -105 -105 -103 -99 -96 -95 -95 -95 -94 -93 -92 -90 -87 -83 -79 -74 -70 -67 -67 -66 -65 -63 -61 -59 -57 -55 -53 -54 -56 -58 -60 -59 -58 -57 -54 -52 -51 -51 -50 -49 -47 -47 -46 -47 -48 -52 -52 -52 -52 -52 -51 -49 -48 -48 -50 -50 -51 -53 -53 -52 -51 -51 -52 -52 -53 -53 -52 -50 -49 -49 -50 -50 -49 -49 -49 -48 -48 -48 -47 -46 -44 -44 -44 -46 -46 -47 -49 -51 -52 -52 -51 -50 -50 -50 -50 -52 -52 -53 -53 -53 -51 -52 -52 -54 -56 -56 -56 -55 -53 -51 -48 -48 -47 -45 -44 -47 -47 -49 -51 -53 -54 -53 -51 -47 -43 -42 -41 -42 -43 -46 -48 -48 -44 -45 -48 -52 -58 -65 -67 -68 -65 -59 -54 -48 -40 -35 -32 -35 -36 -35 -35 -40 -46 -51 -55 -58 -59 -58 -58 -59 -60 -57 -59 -63 -67 -68 -63 -56 -51 -50 -54 -60 -67 -72 -74 -75 -76 -78 -79 -80 -80 -81 -84 -85 -84 -82 -81 -79 -77 -77 -78 -78 -78 -79 -79 -79 -78 -77 -77 -77 -77 -78 -78 -77 -76 -76 -76 -78 -79 -79 -77 -74 -73 -71 -70 -70 -70 -69 -68 -67 -66 -66 -65 -65 -66 -66 -68 -70 -72 -72 -72 -72 -72 -71 -69 -66 -64 -63 -65 -67 -68 -69 -68 -67 -66 -67 -68 -69 -70 -70 -70 -70 -71 -72 -72 -70 -62 -56 -51 -50 -49 -49 -48 -47 -47 -47 -48 -48 -49 -49 -49 -49 -49 -50 -51 -51 -50 -49 -48 -49 -47 -44 -41 -40 -40 -40 -39 -38 -38 -38 -37 -36 -34 -35 -35 -34 -34 -33 -34 -35 -37 -39 -41 -42 -43 -46 -48 -49 -49 -50 -50 -51 -52 -52 -53 -54 -55 -55 -55 -55 -55 -54 -52 -50 -48 -47 -47 -47 -48 -48 -48 -48 -47 -46 -45 -44 -43 -43 -44 -47 -49 -52 -54 -55 -55 -54 -53 -52 -52 -52 -53 -54 -56 -59 -62 -66 -68 -70 -72 -72 -72 -74 -77 -79 -81 -81 -80 -76 -74 -77 -80 -82 -81 -80 -82 -84 -85 -85 -86 -87 -88 -88 -88 -90 -93 -96 -98 -98 -98 -97 -98 -99 -102 -102 -102 -101 -99 -97 -96 -96 -97 -98 -98 -98 -97 -96 -96 -98 -100 -103 -105 -105 -105 -104 -102 -98 -95 -94 -94 -96 -94 -92 -91 -90 -89 -86 -82 -78 -73 -68 -66 -65 -65 -65 -64 -62 -61 -60 -57 -56 -56 -58 -59 -59 -58 -55 -52 -50 -49 -48 -47 -46 -46 -46 -46 -46 -48 -50 -50 -50 -50 -51 -50 -49 -48 -48 -50 -50 -51 -53 -53 -51 -50 -50 -51 -51 -52 -52 -51 -50 -50 -50 -50 -50 -49 -49 -49 -48 -48 -48 -46 -45 -44 -43 -43 -44 -46 -47 -49 -51 -51 -51 -51 -50 -50 -50 -51 -52 -52 -53 -53 -52 -51 -52 -53 -54 -55 -56 -55 -55 -53 -51 -49 -49 -48 -46 -45 -47 -47 -49 -51 -51 -51 -50 -49 -46 -43 -40 -39 -39 -40 -43 -45 -46 -43 -45 -47 -50 -57 -65 -70 -72 -71 -68 -66 -59 -49 -40 -33 -35 -35 -34 -33 -37 -42 -46 -51 -56 -60 -59 -59 -61 -66 -66 -65 -65 -66 -66 -62 -55 -50 -49 -55 -62 -67 -71 -74 -76 -77 -78 -78 -79 -80 -82 -84 -84 -82 -81 -79 -76 -75 -75 -76 -77 -78 -78 -78 -78 -77 -77 -77 -77 -77 -77 -77 -77 -77 -77 -77 -76 -77 -76 -75 -73 -72 -71 -71 -70 -70 -70 -69 -68 -67 -66 -66 -66 -66 -67 -68 -70 -71 -71 -71 -71 -72 -71 -68 -65 -64 -64 -65 -67 -69 -70 -69 -69 -69 -68 -69 -70 -70 -71 -70 -70 -71 -72 -73 -71 -64 -57 -52 -49 -48 -48 -47 -46 -46 -47 -48 -49 -49 -49 -49 -49 -50 -51 -51 -50 -48 -47 -46 -46 -45 -42 -40 -39 -38 -38 -38 -38 -38 -38 -36 -35 -33 -33 -33 -33 -32 -32 -34 -37 -39 -41 -41 -41 -43 -46 -49 -50 -51 -51 -51 -52 -53 -53 -53 -54 -55 -56 -56 -56 -56 -54 -52 -50 -48 -47 -47 -48 -48 -48 -48 -48 -47 -46 -44 -44 -45 -46 -47 -49 -51 -52 -52 -53 -53 -52 -53 -53 -53 -53 -53 -55 -58 -61 -64 -66 -68 -70 -72 -73 -73 -74 -77 -79 -80 -80 -79 -76 -75 -77 -80 -81 -79 -79 -81 -83 -85 -85 -86 -88 -89 -90 -89 -90 -93 -96 -98 -98 -98 -98 -99 -100 -101 -102 -102 -100 -98 -96 -95 -96 -98 -99 -99 -99 -99 -99 -98 -99 -101 -103 -105 -105 -104 -103 -100 -97 -95 -96 -97 -97 -95 -93 -91 -91 -90 -88 -86 -82 -77 -69 -66 -64 -64 -64 -63 -63 -63 -63 -61 -60 -59 -59 -59 -59 -58 -55 -52 -51 -49 -47 -45 -44 -44 -45 -45 -45 -47 -48 -48 -49 -49 -50 -50 -49 -48 -47 -49 -50 -51 -52 -52 -51 -50 -50 -50 -49 -51 -51 -51 -50 -50 -50 -50 -50 -49 -49 -48 -48 -47 -47 -46 -44 -43 -43 -43 -44 -45 -46 -49 -50 -50 -51 -51 -50 -50 -50 -50 -51 -52 -52 -52 -52 -52 -52 -53 -54 -55 -55 -55 -55 -55 -53 -51 -50 -49 -47 -45 -48 -48 -50 -52 -51 -49 -48 -46 -45 -43 -40 -38 -37 -38 -40 -43 -44 -43 -46 -46 -48 -52 -58 -64 -67 -69 -70 -68 -63 -56 -47 -38 -34 -35 -34 -34 -36 -42 -44 -47 -51 -57 -59 -59 -61 -69 -75 -75 -72 -69 -65 -60 -53 -48 -49 -55 -62 -67 -71 -73 -73 -74 -74 -75 -77 -79 -82 -83 -82 -80 -78 -75 -73 -73 -73 -74 -74 -76 -76 -76 -75 -75 -74 -74 -72 -71 -71 -73 -76 -78 -79 -79 -77 -76 -75 -74 -73 -73 -72 -72 -71 -69 -69 -69 -69 -69 -68 -67 -67 -67 -67 -68 -70 -71 -71 -71 -72 -72 -72 -70 -67 -65 -65 -65 -67 -68 -69 -69 -68 -68 -68 -69 -70 -70 -71 -70 -70 -70 -72 -73 -72 -66 -59 -54 -50 -48 -47 -47 -46 -46 -47 -49 -50 -50 -49 -49 -50 -51 -51 -50 -49 -47 -45 -44 -43 -42 -40 -39 -38 -37 -36 -35 -36 -36 -36 -35 -33 -31 -31 -32 -32 -32 -32 -36 -39 -40 -41 -41 -42 -44 -47 -49 -51 -51 -52 -52 -52 -53 -54 -54 -54 -56 -56 -56 -56 -56 -54 -52 -50 -49 -49 -49 -48 -48 -48 -48 -48 -48 -46 -45 -46 -48 -49 -49 -50 -51 -52 -52 -52 -53 -54 -55 -55 -55 -55 -55 -56 -59 -64 -67 -68 -70 -71 -73 -73 -73 -74 -76 -78 -79 -79 -77 -74 -73 -75 -78 -79 -78 -79 -81 -84 -85 -85 -85 -87 -89 -91 -90 -91 -93 -96 -98 -98 -98 -99 -99 -100 -100 -100 -100 -99 -98 -96 -95 -96 -99 -100 -100 -100 -100 -100 -100 -101 -102 -104 -105 -104 -103 -101 -100 -99 -99 -100 -101 -100 -97 -95 -93 -92 -91 -90 -88 -85 -80 -73 -68 -66 -64 -63 -62 -63 -65 -64 -62 -61 -60 -59 -59 -60 -58 -55 -54 -53 -50 -48 -46 -44 -45 -44 -44 -45 -47 -48 -49 -49 -49 -50 -50 -49 -48 -47 -47 -49 -51 -51 -50 -50 -50 -49 -49 -47 -48 -49 -49 -49 -50 -50 -50 -49 -48 -48 -48 -47 -47 -47 -46 -45 -44 -43 -43 -44 -45 -46 -49 -49 -49 -50 -51 -51 -51 -50 -50 -51 -52 -52 -52 -52 -52 -52 -52 -53 -54 -55 -56 -56 -56 -54 -52 -51 -49 -48 -46 -49 -50 -51 -52 -52 -49 -46 -44 -44 -43 -40 -39 -38 -39 -40 -42 -43 -44 -47 -48 -50 -52 -55 -58 -60 -62 -64 -65 -61 -56 -49 -40 -34 -35 -36 -35 -35 -40 -43 -45 -48 -55 -59 -60 -62 -68 -75 -76 -75 -72 -67 -61 -53 -49 -49 -54 -59 -63 -67 -69 -70 -70 -71 -73 -75 -77 -79 -79 -78 -77 -75 -72 -70 -70 -72 -72 -73 -74 -74 -74 -73 -71 -68 -66 -65 -66 -69 -72 -75 -77 -79 -79 -78 -76 -76 -75 -75 -74 -73 -72 -70 -69 -69 -69 -70 -70 -69 -68 -67 -67 -68 -69 -71 -72 -72 -73 -74 -74 -75 -74 -72 -69 -67 -66 -67 -68 -67 -67 -67 -68 -69 -69 -70 -70 -70 -69 -69 -69 -71 -73 -72 -67 -61 -55 -53 -49 -48 -47 -47 -47 -48 -49 -49 -49 -49 -49 -49 -50 -51 -49 -47 -45 -43 -42 -41 -40 -39 -38 -39 -37 -34 -33 -34 -35 -34 -34 -32 -31 -30 -31 -32 -33 -34 -38 -40 -41 -41 -42 -43 -45 -48 -50 -51 -52 -52 -53 -54 -54 -54 -54 -54 -55 -56 -56 -56 -55 -53 -52 -51 -51 -51 -50 -49 -48 -47 -48 -49 -49 -47 -46 -47 -49 -50 -50 -49 -51 -53 -54 -54 -54 -55 -55 -56 -56 -55 -56 -57 -61 -65 -68 -70 -71 -72 -72 -72 -72 -74 -76 -77 -78 -77 -76 -73 -73 -75 -77 -77 -77 -78 -81 -83 -85 -84 -84 -85 -88 -91 -93 -94 -95 -96 -98 -98 -98 -98 -98 -99 -99 -99 -99 -99 -98 -98 -98 -99 -100 -101 -101 -101 -100 -99 -100 -101 -102 -103 -104 -103 -102 -101 -101 -101 -103 -104 -104 -103 -101 -98 -96 -94 -92 -90 -88 -85 -83 -78 -73 -69 -67 -63 -62 -63 -65 -64 -62 -61 -59 -57 -58 -58 -57 -55 -54 -52 -51 -50 -49 -47 -46 -46 -46 -46 -47 -47 -48 -48 -48 -49 -49 -49 -48 -47 -47 -48 -49 -50 -49 -49 -49 -49 -48 -45 -46 -47 -47 -47 -48 -49 -50 -49 -48 -47 -47 -47 -46 -45 -45 -45 -44 -44 -44 -44 -46 -47 -48 -47 -47 -49 -50 -50 -51 -50 -50 -51 -51 -52 -52 -51 -51 -52 -52 -52 -53 -54 -56 -56 -56 -54 -53 -51 -50 -50 -47 -50 -52 -53 -53 -53 -50 -46 -43 -42 -42 -41 -40 -40 -42 -43 -43 -43 -44 -46 -50 -53 -56 -59 -59 -60 -60 -59 -58 -57 -55 -51 -44 -37 -37 -38 -39 -37 -41 -44 -47 -48 -52 -57 -61 -64 -67 -71 -72 -72 -70 -66 -60 -54 -51 -50 -53 -56 -60 -64 -66 -67 -68 -69 -71 -74 -76 -76 -75 -73 -71 -70 -69 -68 -69 -71 -72 -72 -73 -74 -73 -72 -70 -67 -64 -64 -67 -70 -73 -75 -76 -78 -78 -78 -76 -77 -77 -76 -75 -73 -72 -71 -70 -70 -70 -69 -69 -68 -67 -66 -67 -68 -71 -72 -73 -74 -75 -77 -76 -77 -77 -77 -74 -70 -68 -67 -67 -66 -66 -66 -66 -67 -68 -69 -69 -68 -68 -67 -68 -69 -70 -69 -65 -61 -57 -54 -50 -49 -48 -48 -48 -48 -49 -49 -49 -49 -49 -49 -49 -50 -48 -46 -44 -42 -39 -39 -39 -38 -37 -37 -35 -33 -32 -33 -34 -33 -32 -32 -31 -30 -30 -32 -34 -36 -39 -41 -41 -41 -42 -44 -47 -49 -51 -52 -53 -54 -55 -57 -56 -55 -53 -53 -54 -54 -54 -55 -54 -53 -51 -51 -52 -52 -51 -49 -48 -48 -49 -50 -50 -49 -48 -48 -49 -49 -49 -49 -51 -53 -55 -55 -54 -54 -55 -56 -57 -56 -57 -59 -61 -65 -68 -70 -71 -71 -71 -71 -72 -73 -75 -76 -76 -76 -75 -74 -74 -75 -76 -77 -75 -76 -79 -81 -83 -83 -84 -86 -89 -91 -92 -94 -96 -98 -99 -99 -98 -97 -97 -97 -98 -99 -99 -99 -99 -100 -100 -101 -101 -102 -102 -102 -101 -100 -100 -101 -102 -102 -103 -102 -101 -101 -101 -103 -105 -106 -105 -104 -102 -101 -99 -96 -93 -90 -88 -85 -83 -80 -76 -73 -70 -66 -64 -64 -65 -64 -62 -59 -57 -55 -55 -55 -54 -53 -53 -51 -50 -50 -50 -49 -48 -47 -47 -47 -46 -47 -47 -47 -47 -46 -47 -47 -46 -46 -46 -47 -48 -48 -48 -49 -49 -49 -47 -44 -44 -45 -45 -45 -47 -48 -49 -49 -48 -47 -47 -47 -45 -44 -44 -44 -44 -44 -45 -45 -46 -48 -47 -46 -47 -48 -49 -51 -51 -51 -51 -50 -51 -51 -51 -51 -51 -51 -51 -51 -52 -53 -55 -56 -55 -53 -52 -51 -50 -49 -47 -50 -52 -54 -54 -53 -50 -47 -43 -41 -41 -41 -42 -42 -44 -43 -43 -43 -44 -46 -51 -55 -58 -60 -61 -61 -60 -59 -57 -54 -53 -51 -48 -42 -41 -43 -45 -43 -44 -47 -49 -50 -50 -54 -60 -64 -66 -68 -67 -67 -66 -63 -58 -53 -51 -51 -52 -55 -59 -62 -64 -65 -67 -69 -72 -75 -76 -75 -72 -70 -67 -66 -66 -67 -69 -72 -73 -73 -74 -75 -75 -74 -73 -71 -70 -70 -71 -73 -74 -75 -76 -77 -78 -78 -77 -77 -77 -76 -75 -74 -72 -71 -70 -70 -70 -68 -67 -67 -66 -66 -66 -68 -71 -73 -74 -75 -77 -78 -78 -77 -77 -77 -76 -73 -69 -67 -65 -65 -64 -64 -65 -66 -67 -68 -67 -66 -66 -66 -67 -68 -68 -67 -64 -61 -57 -53 -51 -49 -49 -49 -49 -49 -49 -50 -50 -49 -49 -48 -47 -47 -46 -45 -43 -41 -38 -37 -37 -36 -36 -34 -32 -31 -32 -33 -33 -32 -32 -32 -32 -31 -30 -31 -34 -37 -40 -41 -42 -42 -43 -45 -48 -50 -51 -53 -54 -55 -56 -57 -56 -54 -53 -52 -53 -54 -54 -54 -54 -52 -51 -51 -51 -50 -50 -49 -49 -49 -51 -52 -52 -51 -50 -49 -49 -48 -47 -48 -51 -54 -56 -56 -55 -54 -54 -55 -57 -57 -58 -60 -62 -65 -68 -69 -70 -71 -71 -72 -72 -73 -75 -75 -75 -74 -74 -74 -74 -75 -76 -77 -76 -76 -77 -80 -82 -84 -85 -87 -88 -89 -90 -92 -95 -97 -99 -99 -98 -97 -95 -96 -98 -99 -99 -98 -99 -101 -102 -101 -101 -102 -102 -102 -102 -101 -101 -101 -102 -102 -102 -101 -101 -100 -102 -104 -106 -107 -105 -103 -102 -101 -100 -97 -94 -91 -88 -85 -83 -80 -77 -74 -71 -68 -66 -66 -66 -64 -61 -59 -56 -53 -52 -51 -49 -49 -50 -50 -50 -50 -50 -49 -48 -47 -47 -46 -46 -46 -45 -45 -44 -44 -45 -45 -45 -44 -44 -45 -46 -47 -47 -48 -48 -48 -45 -44 -43 -43 -43 -44 -45 -47 -48 -48 -47 -47 -47 -46 -44 -43 -43 -43 -44 -45 -46 -46 -47 -48 -46 -46 -46 -48 -49 -50 -51 -52 -51 -50 -50 -50 -50 -50 -50 -51 -51 -51 -51 -52 -54 -55 -55 -52 -51 -50 -50 -48 -46 -50 -52 -53 -53 -53 -50 -47 -43 -41 -41 -42 -43 -43 -44 -43 -44 -45 -46 -49 -54 -58 -61 -62 -63 -62 -61 -60 -58 -52 -49 -49 -50 -47 -46 -47 -49 -48 -47 -50 -52 -54 -52 -54 -59 -64 -66 -66 -64 -63 -62 -59 -54 -51 -50 -51 -53 -56 -59 -62 -64 -64 -66 -69 -72 -75 -75 -73 -71 -68 -65 -63 -64 -67 -70 -73 -75 -76 -76 -77 -76 -77 -77 -76 -76 -75 -74 -74 -74 -75 -76 -77 -78 -78 -77 -76 -76 -75 -74 -74 -72 -71 -70 -70 -70 -69 -68 -67 -67 -67 -67 -69 -71 -73 -74 -76 -78 -79 -78 -77 -76 -76 -76 -74 -70 -66 -63 -62 -63 -63 -64 -65 -66 -66 -66 -65 -66 -66 -67 -67 -66 -65 -62 -60 -57 -54 -51 -50 -50 -50 -50 -50 -50 -50 -51 -50 -48 -47 -46 -45 -44 -43 -42 -40 -38 -36 -36 -35 -34 -31 -29 -29 -31 -32 -32 -32 -32 -32 -33 -31 -30 -30 -33 -37 -40 -42 -42 -42 -44 -46 -49 -50 -52 -53 -54 -55 -56 -56 -55 -53 -52 -52 -52 -53 -54 -54 -54 -52 -51 -50 -50 -49 -49 -50 -51 -52 -52 -52 -52 -52 -51 -49 -47 -46 -45 -48 -52 -55 -56 -56 -55 -54 -53 -54 -56 -56 -58 -60 -62 -65 -67 -68 -69 -70 -71 -72 -73 -73 -74 -74 -74 -73 -73 -72 -72 -73 -75 -78 -77 -76 -77 -79 -81 -84 -86 -87 -87 -88 -89 -91 -93 -96 -97 -98 -97 -96 -95 -97 -98 -99 -99 -97 -98 -99 -101 -101 -101 -101 -102 -102 -102 -101 -101 -101 -101 -101 -101 -100 -99 -100 -102 -105 -107 -107 -104 -102 -101 -101 -99 -97 -95 -92 -89 -86 -84 -82 -78 -74 -71 -70 -69 -68 -66 -64 -61 -58 -55 -52 -51 -49 -47 -47 -49 -50 -50 -51 -50 -48 -47 -46 -45 -44 -44 -44 -44 -43 -43 -43 -44 -44 -44 -43 -43 -43 -45 -46 -47 -47 -47 -46 -45 -44 -43 -43 -42 -42 -44 -46 -46 -45 -45 -46 -46 -46 -43 -42 -42 -42 -43 -44 -46 -47 -48 -47 -47 -46 -47 -47 -48 -49 -51 -52 -51 -50 -50 -50 -51 -50 -50 -50 -50 -50 -50 -51 -53 -54 -54 -51 -50 -49 -48 -47 -46 -50 -51 -51 -51 -50 -48 -45 -42 -40 -40 -42 -42 -42 -42 -44 -45 -46 -48 -52 -59 -64 -66 -65 -62 -61 -60 -59 -56 -51 -47 -47 -48 -49 -49 -49 -49 -49 -49 -51 -54 -57 -57 -56 -59 -63 -67 -66 -63 -62 -60 -56 -51 -50 -51 -53 -55 -58 -61 -63 -64 -65 -66 -69 -72 -73 -73 -71 -69 -67 -65 -64 -65 -66 -69 -73 -76 -77 -77 -77 -76 -76 -77 -76 -76 -76 -76 -76 -77 -77 -77 -78 -79 -79 -78 -76 -74 -73 -73 -73 -71 -70 -68 -68 -70 -71 -71 -70 -71 -71 -71 -72 -72 -73 -75 -76 -78 -79 -79 -78 -76 -75 -75 -74 -71 -66 -62 -61 -62 -63 -64 -64 -64 -64 -65 -65 -66 -66 -66 -66 -65 -63 -61 -59 -57 -55 -52 -51 -50 -50 -49 -50 -51 -52 -52 -49 -47 -46 -45 -44 -43 -42 -41 -41 -39 -37 -35 -34 -33 -31 -30 -30 -31 -33 -32 -32 -32 -33 -33 -32 -31 -31 -32 -37 -40 -42 -43 -43 -44 -47 -49 -51 -52 -53 -54 -55 -54 -54 -53 -52 -51 -51 -52 -53 -54 -54 -53 -52 -51 -50 -49 -49 -50 -52 -53 -54 -54 -53 -53 -52 -52 -50 -47 -45 -45 -50 -54 -57 -57 -54 -53 -53 -53 -53 -54 -55 -57 -59 -62 -64 -65 -66 -67 -68 -70 -72 -73 -72 -72 -72 -72 -73 -73 -72 -71 -72 -74 -77 -77 -77 -78 -79 -81 -84 -86 -88 -88 -88 -89 -91 -93 -95 -96 -97 -97 -95 -95 -96 -98 -99 -98 -95 -96 -97 -99 -100 -101 -101 -101 -101 -101 -101 -100 -99 -100 -100 -99 -99 -99 -100 -102 -104 -106 -106 -104 -102 -101 -101 -99 -97 -95 -93 -90 -87 -86 -84 -81 -77 -74 -72 -70 -68 -65 -63 -61 -58 -54 -50 -50 -48 -47 -48 -49 -50 -51 -51 -49 -47 -45 -45 -43 -41 -41 -42 -42 -43 -43 -44 -44 -44 -43 -43 -42 -42 -44 -45 -45 -45 -45 -45 -44 -44 -43 -43 -42 -42 -42 -44 -44 -43 -44 -44 -45 -45 -43 -42 -41 -41 -42 -44 -46 -47 -47 -47 -47 -47 -47 -46 -47 -48 -50 -51 -51 -51 -51 -51 -51 -50 -50 -50 -50 -49 -48 -49 -51 -53 -52 -51 -49 -49 -48 -47 -46 -50 -50 -50 -48 -46 -44 -41 -39 -36 -37 -40 -42 -42 -42 -44 -45 -45 -48 -54 -62 -68 -70 -68 -61 -58 -56 -55 -52 -49 -47 -46 -47 -48 -48 -47 -47 -47 -47 -49 -53 -57 -59 -60 -61 -64 -66 -66 -64 -62 -59 -54 -49 -50 -52 -54 -57 -60 -63 -64 -66 -67 -68 -70 -72 -72 -70 -67 -65 -63 -64 -65 -67 -69 -72 -75 -75 -75 -75 -74 -75 -75 -75 -75 -75 -77 -79 -80 -80 -80 -79 -78 -78 -79 -78 -75 -73 -71 -71 -71 -70 -69 -67 -67 -69 -72 -74 -75 -75 -76 -76 -76 -76 -76 -75 -76 -77 -79 -79 -78 -76 -74 -74 -73 -71 -68 -64 -61 -62 -63 -64 -64 -64 -64 -64 -65 -66 -66 -66 -65 -64 -63 -61 -58 -56 -55 -53 -52 -51 -50 -49 -50 -52 -52 -50 -47 -46 -45 -45 -44 -42 -41 -41 -41 -40 -37 -35 -33 -32 -30 -30 -30 -32 -33 -32 -31 -30 -32 -33 -34 -34 -34 -36 -39 -41 -42 -43 -44 -45 -47 -49 -51 -52 -53 -54 -54 -53 -52 -51 -51 -51 -51 -52 -54 -55 -54 -52 -51 -50 -50 -51 -51 -52 -53 -54 -55 -55 -54 -53 -52 -49 -47 -46 -45 -47 -51 -56 -58 -56 -52 -51 -51 -51 -51 -52 -54 -57 -59 -62 -63 -63 -64 -65 -66 -69 -72 -73 -72 -70 -71 -72 -73 -74 -72 -71 -72 -74 -76 -77 -78 -79 -80 -81 -84 -86 -88 -88 -88 -90 -91 -93 -94 -96 -97 -97 -95 -95 -96 -97 -97 -96 -94 -95 -97 -99 -100 -101 -101 -102 -102 -101 -100 -99 -98 -98 -98 -97 -98 -98 -99 -102 -104 -105 -105 -103 -101 -100 -101 -100 -98 -96 -93 -90 -88 -86 -85 -83 -80 -77 -74 -70 -67 -65 -63 -60 -57 -53 -50 -49 -49 -49 -50 -50 -51 -51 -51 -49 -46 -45 -43 -41 -39 -39 -40 -41 -42 -43 -44 -44 -44 -43 -43 -42 -42 -43 -44 -44 -43 -43 -43 -43 -43 -43 -43 -42 -41 -41 -42 -42 -42 -43 -44 -44 -43 -42 -42 -41 -41 -42 -43 -45 -46 -47 -47 -47 -47 -47 -46 -47 -47 -48 -50 -50 -51 -51 -51 -51 -50 -50 -49 -49 -48 -48 -48 -50 -51 -51 -50 -48 -48 -47 -45 -45 -49 -50 -50 -49 -47 -46 -42 -38 -34 -33 -36 -39 -40 -40 -42 -42 -43 -46 -54 -62 -68 -69 -68 -62 -56 -53 -50 -47 -46 -46 -46 -46 -45 -45 -44 -44 -44 -45 -47 -51 -54 -58 -62 -64 -65 -66 -66 -65 -62 -57 -52 -48 -48 -50 -53 -56 -60 -63 -65 -67 -68 -70 -71 -72 -70 -68 -65 -62 -61 -60 -61 -64 -67 -71 -73 -72 -71 -71 -71 -71 -73 -75 -75 -76 -78 -79 -81 -81 -81 -79 -78 -78 -79 -78 -75 -72 -69 -69 -69 -69 -69 -68 -68 -69 -72 -75 -78 -79 -79 -79 -79 -79 -78 -76 -75 -75 -77 -78 -77 -76 -74 -72 -72 -71 -68 -66 -63 -62 -63 -65 -65 -64 -63 -63 -64 -66 -66 -65 -64 -63 -62 -60 -57 -55 -54 -54 -53 -52 -51 -51 -52 -52 -51 -48 -46 -45 -45 -45 -44 -42 -42 -41 -42 -41 -39 -36 -34 -32 -31 -30 -31 -33 -33 -32 -30 -30 -31 -33 -35 -37 -38 -39 -41 -42 -42 -44 -44 -45 -47 -48 -50 -52 -53 -55 -55 -53 -51 -50 -50 -51 -52 -53 -54 -55 -54 -52 -50 -50 -51 -52 -53 -53 -54 -55 -55 -55 -54 -53 -51 -48 -46 -45 -46 -47 -52 -55 -56 -54 -51 -50 -50 -50 -50 -51 -54 -57 -60 -63 -63 -63 -63 -64 -65 -69 -72 -73 -71 -69 -70 -71 -73 -73 -72 -72 -72 -74 -76 -77 -78 -79 -79 -81 -84 -86 -87 -87 -89 -91 -92 -93 -94 -95 -96 -97 -96 -96 -96 -96 -96 -95 -94 -95 -96 -98 -99 -100 -101 -102 -102 -101 -99 -98 -97 -96 -95 -96 -97 -98 -99 -101 -103 -104 -104 -102 -100 -100 -100 -100 -98 -96 -93 -90 -88 -86 -86 -86 -83 -79 -74 -70 -66 -64 -62 -59 -56 -53 -49 -47 -47 -48 -49 -50 -51 -52 -50 -49 -47 -46 -44 -41 -40 -40 -40 -41 -42 -43 -44 -44 -44 -43 -42 -41 -41 -42 -42 -42 -41 -41 -41 -41 -41 -42 -42 -42 -40 -39 -40 -41 -41 -42 -42 -43 -42 -42 -41 -41 -41 -41 -43 -44 -45 -45 -46 -47 -47 -46 -46 -47 -47 -48 -49 -50 -50 -51 -51 -51 -51 -51 -50 -50 -48 -47 -47 -48 -49 -49 -49 -48 -47 -46 -45 -45 -51 -53 -54 -52 -50 -47 -43 -38 -34 -31 -32 -35 -38 -38 -37 -37 -39 -43 -51 -59 -64 -65 -63 -63 -59 -53 -49 -46 -44 -44 -44 -44 -43 -42 -42 -42 -42 -44 -47 -50 -54 -57 -61 -63 -64 -64 -65 -66 -63 -57 -52 -51 -52 -54 -56 -59 -62 -65 -67 -69 -70 -70 -71 -71 -71 -68 -64 -60 -58 -58 -60 -63 -66 -68 -69 -69 -68 -68 -68 -70 -73 -74 -75 -77 -80 -81 -81 -81 -80 -78 -78 -79 -79 -77 -74 -71 -69 -68 -69 -70 -71 -71 -70 -70 -72 -75 -78 -79 -80 -80 -80 -80 -79 -77 -75 -73 -73 -75 -76 -75 -74 -72 -71 -70 -69 -68 -65 -64 -64 -65 -64 -64 -63 -63 -63 -64 -65 -64 -63 -61 -60 -59 -56 -54 -54 -53 -52 -52 -52 -52 -53 -52 -50 -47 -46 -46 -46 -46 -44 -43 -43 -43 -43 -43 -41 -39 -36 -34 -32 -32 -32 -33 -32 -31 -30 -30 -32 -34 -36 -39 -41 -41 -42 -43 -44 -45 -45 -45 -47 -48 -49 -51 -53 -54 -54 -51 -50 -50 -51 -52 -53 -54 -55 -54 -53 -51 -51 -51 -52 -53 -54 -54 -54 -55 -54 -53 -53 -52 -50 -48 -46 -44 -45 -47 -51 -54 -54 -53 -51 -51 -51 -51 -51 -52 -54 -57 -59 -62 -62 -63 -63 -64 -65 -69 -71 -73 -70 -69 -70 -71 -73 -74 -72 -72 -72 -74 -76 -77 -79 -80 -81 -82 -84 -84 -85 -86 -89 -91 -93 -94 -94 -94 -96 -96 -97 -97 -96 -96 -95 -95 -94 -94 -94 -96 -97 -99 -100 -101 -101 -100 -98 -96 -95 -94 -94 -95 -96 -97 -98 -100 -103 -104 -103 -102 -101 -100 -99 -99 -98 -96 -94 -91 -88 -87 -87 -87 -84 -79 -75 -70 -66 -63 -60 -58 -55 -52 -48 -45 -44 -44 -45 -48 -51 -51 -49 -49 -49 -48 -45 -43 -41 -41 -41 -41 -41 -42 -43 -43 -43 -41 -40 -40 -40 -40 -40 -40 -40 -39 -39 -39 -39 -40 -41 -41 -40 -39 -39 -40 -40 -41 -41 -41 -41 -41 -40 -40 -41 -41 -41 -42 -43 -44 -44 -46 -47 -46 -46 -47 -47 -47 -48 -49 -50 -50 -51 -51 -51 -51 -51 -50 -48 -47 -46 -46 -47 -48 -48 -48 -47 -46 -45 -45 -53 -56 -56 -54 -52 -47 -43 -39 -36 -32 -32 -36 -39 -38 -34 -34 -36 -41 -47 -55 -60 -61 -59 -58 -58 -54 -50 -47 -44 -42 -42 -42 -42 -41 -41 -42 -42 -43 -47 -52 -56 -58 -61 -62 -62 -61 -62 -65 -62 -58 -55 -55 -57 -60 -63 -66 -67 -69 -70 -71 -72 -73 -72 -72 -70 -67 -62 -59 -57 -57 -59 -62 -64 -65 -65 -64 -65 -66 -68 -71 -74 -76 -77 -78 -80 -81 -81 -81 -80 -79 -79 -79 -78 -75 -72 -70 -70 -70 -72 -73 -74 -74 -72 -71 -72 -74 -77 -79 -80 -80 -80 -80 -80 -79 -76 -73 -72 -73 -73 -73 -73 -71 -70 -69 -69 -68 -67 -65 -64 -64 -63 -63 -62 -62 -61 -62 -63 -64 -62 -59 -58 -57 -55 -54 -53 -53 -53 -53 -53 -54 -53 -51 -48 -47 -48 -48 -48 -47 -46 -45 -44 -44 -44 -45 -43 -41 -39 -37 -35 -33 -32 -32 -31 -30 -30 -31 -33 -34 -38 -41 -42 -43 -44 -44 -45 -45 -45 -46 -48 -49 -51 -52 -54 -54 -54 -51 -50 -50 -51 -52 -54 -55 -56 -55 -54 -52 -52 -53 -54 -55 -55 -56 -55 -53 -51 -50 -50 -50 -49 -47 -45 -44 -45 -48 -51 -53 -53 -52 -52 -51 -51 -51 -51 -51 -52 -53 -55 -57 -59 -61 -63 -63 -64 -67 -70 -72 -71 -70 -70 -71 -73 -74 -73 -72 -71 -72 -74 -76 -78 -80 -82 -83 -83 -83 -83 -86 -89 -92 -94 -94 -94 -94 -95 -95 -96 -96 -95 -95 -95 -95 -94 -93 -93 -94 -96 -97 -99 -99 -100 -98 -96 -94 -93 -93 -93 -94 -96 -97 -98 -100 -102 -103 -103 -102 -101 -100 -99 -99 -98 -96 -95 -92 -90 -88 -87 -86 -84 -81 -77 -72 -67 -63 -60 -56 -54 -52 -48 -44 -42 -42 -43 -45 -48 -48 -48 -48 -48 -48 -47 -45 -43 -42 -42 -41 -41 -41 -41 -41 -41 -40 -39 -38 -38 -39 -39 -39 -39 -39 -39 -38 -38 -38 -39 -39 -39 -38 -38 -39 -39 -40 -40 -41 -41 -41 -40 -40 -41 -40 -41 -41 -42 -42 -43 -44 -45 -46 -46 -46 -47 -47 -47 -48 -49 -50 -51 -50 -50 -51 -51 -49 -48 -47 -46 -45 -46 -47 -47 -47 -46 -46 -46 -46 -53 -55 -55 -52 -51 -45 -43 -42 -40 -37 -35 -37 -40 -40 -35 -33 -35 -38 -43 -49 -56 -59 -57 -52 -50 -49 -47 -46 -43 -41 -40 -41 -41 -40 -41 -42 -42 -43 -47 -52 -57 -59 -61 -62 -62 -61 -61 -63 -62 -60 -58 -59 -62 -65 -68 -69 -70 -72 -73 -74 -75 -75 -75 -74 -72 -67 -62 -59 -57 -56 -58 -61 -63 -63 -61 -61 -63 -67 -71 -75 -77 -79 -79 -80 -80 -81 -81 -81 -80 -80 -80 -79 -76 -73 -71 -70 -71 -72 -74 -76 -76 -76 -74 -73 -74 -75 -77 -79 -80 -80 -79 -81 -81 -79 -77 -74 -72 -72 -72 -72 -72 -71 -69 -68 -68 -66 -66 -65 -63 -62 -61 -61 -61 -61 -60 -61 -62 -62 -61 -58 -56 -55 -55 -55 -54 -53 -53 -53 -52 -52 -52 -51 -49 -49 -50 -50 -49 -47 -46 -47 -47 -47 -48 -47 -45 -43 -41 -40 -37 -34 -31 -30 -29 -29 -30 -32 -34 -35 -39 -42 -44 -44 -44 -45 -45 -44 -45 -46 -49 -50 -52 -53 -54 -54 -53 -52 -51 -51 -51 -52 -55 -57 -58 -58 -56 -54 -54 -55 -55 -55 -56 -56 -54 -51 -48 -47 -48 -49 -49 -48 -46 -45 -46 -49 -52 -53 -53 -52 -52 -52 -51 -51 -52 -52 -52 -52 -52 -54 -57 -61 -64 -66 -66 -67 -68 -69 -70 -70 -71 -71 -72 -73 -73 -72 -72 -72 -73 -75 -77 -79 -81 -82 -83 -83 -84 -87 -90 -93 -94 -93 -93 -93 -93 -94 -94 -94 -94 -94 -95 -94 -93 -91 -91 -92 -94 -96 -97 -98 -98 -96 -94 -91 -90 -91 -91 -93 -95 -97 -98 -99 -100 -102 -103 -102 -101 -99 -99 -98 -98 -97 -97 -96 -94 -91 -88 -87 -86 -83 -79 -74 -69 -65 -61 -57 -54 -52 -49 -46 -42 -42 -43 -44 -45 -45 -45 -45 -45 -45 -46 -45 -44 -42 -42 -41 -40 -39 -39 -39 -40 -39 -38 -37 -36 -37 -38 -38 -38 -38 -38 -38 -38 -38 -37 -38 -38 -37 -38 -38 -38 -39 -39 -40 -41 -41 -41 -41 -41 -41 -41 -41 -42 -41 -42 -42 -43 -45 -46 -46 -46 -46 -47 -48 -49 -50 -49 -48 -48 -49 -49 -48 -48 -47 -45 -44 -44 -45 -45 -46 -46 -46 -46 -46 -52 -54 -52 -49 -48 -45 -45 -45 -44 -42 -39 -39 -41 -43 -40 -38 -37 -38 -40 -45 -51 -55 -54 -49 -45 -43 -43 -42 -41 -40 -40 -41 -41 -41 -42 -43 -43 -43 -47 -52 -57 -59 -61 -62 -62 -62 -63 -63 -63 -62 -61 -61 -64 -67 -69 -70 -71 -73 -75 -77 -78 -77 -77 -77 -74 -68 -63 -60 -58 -57 -58 -60 -62 -62 -61 -60 -63 -69 -74 -78 -80 -81 -81 -81 -80 -80 -80 -80 -79 -80 -80 -78 -74 -71 -70 -70 -72 -73 -75 -78 -78 -77 -76 -75 -75 -76 -78 -79 -79 -78 -78 -80 -81 -80 -78 -76 -74 -72 -71 -71 -71 -71 -70 -68 -66 -65 -64 -64 -63 -61 -59 -59 -60 -60 -59 -60 -60 -60 -60 -58 -56 -55 -54 -55 -55 -54 -53 -53 -52 -52 -51 -51 -51 -51 -51 -50 -49 -49 -48 -48 -50 -51 -52 -50 -46 -43 -41 -40 -36 -33 -29 -28 -28 -29 -31 -33 -35 -37 -40 -43 -45 -44 -44 -44 -45 -45 -45 -47 -49 -51 -52 -53 -54 -53 -53 -52 -51 -51 -52 -53 -56 -59 -60 -60 -58 -57 -56 -56 -56 -56 -57 -57 -54 -50 -47 -47 -49 -50 -50 -49 -48 -47 -48 -51 -52 -52 -51 -51 -52 -52 -52 -52 -54 -54 -52 -51 -50 -52 -57 -61 -65 -67 -68 -67 -66 -66 -69 -71 -71 -71 -71 -74 -75 -75 -73 -73 -74 -75 -76 -77 -79 -81 -82 -84 -86 -88 -91 -93 -94 -93 -92 -92 -92 -93 -93 -93 -93 -93 -94 -93 -91 -90 -89 -90 -92 -94 -96 -98 -97 -94 -91 -89 -89 -89 -90 -92 -94 -96 -97 -98 -100 -101 -102 -101 -100 -99 -98 -98 -98 -98 -98 -97 -96 -94 -91 -90 -88 -85 -80 -75 -71 -67 -63 -59 -55 -53 -50 -47 -44 -44 -44 -44 -43 -44 -44 -42 -41 -41 -43 -42 -42 -41 -41 -41 -40 -39 -38 -39 -40 -40 -39 -37 -36 -36 -37 -37 -38 -38 -38 -38 -38 -38 -37 -36 -36 -37 -37 -37 -37 -37 -37 -38 -39 -40 -41 -42 -41 -41 -40 -42 -41 -40 -40 -41 -42 -43 -45 -46 -46 -46 -47 -48 -49 -50 -48 -45 -45 -47 -47 -47 -47 -47 -45 -43 -43 -43 -44 -45 -45 -46 -46 -46 -49 -51 -51 -50 -48 -48 -48 -48 -47 -45 -43 -43 -45 -49 -50 -47 -43 -41 -40 -42 -46 -50 -51 -48 -43 -41 -40 -40 -41 -40 -40 -41 -42 -42 -42 -43 -44 -44 -47 -52 -57 -60 -61 -62 -63 -64 -65 -64 -64 -63 -63 -64 -66 -67 -69 -70 -72 -74 -77 -80 -81 -79 -78 -78 -76 -70 -65 -61 -59 -58 -58 -59 -60 -61 -62 -62 -66 -71 -76 -80 -81 -82 -81 -81 -79 -77 -77 -77 -77 -77 -76 -74 -72 -69 -69 -70 -72 -73 -76 -79 -79 -78 -76 -75 -75 -76 -78 -79 -78 -77 -76 -79 -81 -81 -80 -78 -75 -72 -71 -70 -70 -71 -70 -69 -65 -64 -63 -63 -62 -60 -58 -57 -58 -59 -59 -59 -59 -59 -58 -57 -56 -55 -55 -55 -55 -54 -54 -53 -53 -52 -52 -52 -52 -51 -51 -51 -51 -50 -50 -50 -52 -53 -54 -51 -47 -43 -41 -40 -36 -32 -28 -26 -27 -29 -31 -34 -37 -40 -42 -44 -44 -44 -44 -44 -45 -46 -48 -49 -50 -52 -53 -54 -53 -52 -52 -52 -52 -52 -53 -55 -58 -60 -61 -61 -60 -59 -58 -58 -58 -58 -58 -57 -54 -49 -47 -49 -51 -53 -52 -52 -50 -49 -49 -50 -51 -50 -49 -50 -52 -53 -54 -55 -56 -54 -51 -49 -49 -52 -56 -60 -64 -67 -68 -66 -64 -64 -67 -70 -71 -71 -71 -73 -75 -75 -74 -75 -75 -75 -74 -75 -77 -80 -82 -84 -87 -90 -92 -94 -94 -93 -92 -92 -93 -95 -94 -94 -93 -93 -92 -91 -90 -89 -89 -90 -92 -94 -96 -96 -94 -92 -89 -87 -87 -88 -89 -91 -93 -95 -96 -97 -98 -100 -102 -101 -100 -100 -99 -98 -98 -97 -97 -97 -97 -95 -93 -91 -89 -85 -81 -76 -72 -68 -65 -62 -58 -54 -51 -48 -46 -46 -46 -45 -44 -44 -43 -41 -39 -38 -40 -40 -39 -39 -39 -41 -41 -40 -39 -40 -40 -40 -40 -38 -37 -37 -37 -37 -37 -38 -38 -38 -37 -37 -37 -37 -37 -37 -37 -36 -36 -35 -35 -36 -37 -39 -41 -42 -41 -40 -40 -41 -40 -39 -39 -40 -40 -41 -43 -45 -45 -46 -47 -47 -48 -48 -45 -42 -42 -44 -46 -46 -46 -46 -45 -43 -42 -42 -44 -44 -45 -45 -46 -45 -44 -48 -50 -51 -51 -50 -50 -50 -49 -47 -46 -46 -49 -54 -57 -55 -51 -47 -43 -42 -43 -46 -48 -48 -44 -41 -39 -39 -40 -40 -40 -41 -41 -42 -42 -42 -44 -46 -48 -52 -56 -59 -61 -61 -62 -64 -66 -65 -64 -64 -65 -67 -69 -70 -71 -73 -73 -76 -79 -83 -84 -82 -81 -80 -77 -72 -68 -64 -61 -59 -58 -58 -59 -61 -63 -65 -69 -73 -78 -81 -81 -81 -80 -78 -76 -74 -73 -73 -74 -73 -71 -69 -67 -66 -66 -68 -72 -74 -77 -80 -80 -79 -76 -74 -74 -75 -76 -77 -76 -75 -75 -78 -81 -81 -80 -77 -74 -72 -70 -69 -69 -70 -71 -69 -66 -64 -63 -63 -62 -60 -58 -56 -57 -58 -58 -58 -58 -58 -57 -55 -55 -55 -55 -55 -55 -55 -55 -54 -54 -54 -53 -53 -53 -52 -53 -53 -52 -51 -51 -51 -53 -54 -55 -52 -47 -43 -41 -40 -37 -33 -29 -27 -28 -30 -33 -36 -39 -41 -43 -43 -44 -44 -46 -47 -48 -50 -51 -52 -52 -54 -54 -53 -52 -51 -51 -52 -52 -52 -54 -57 -59 -61 -62 -62 -60 -60 -60 -60 -59 -58 -57 -55 -53 -49 -48 -50 -52 -54 -55 -53 -51 -49 -48 -49 -49 -48 -48 -49 -51 -54 -56 -56 -54 -51 -49 -48 -50 -52 -55 -59 -63 -66 -66 -64 -63 -63 -67 -70 -71 -72 -73 -73 -73 -73 -74 -75 -74 -73 -73 -74 -77 -81 -83 -85 -88 -91 -93 -94 -94 -93 -93 -94 -95 -96 -95 -94 -94 -93 -92 -91 -89 -88 -89 -90 -92 -93 -94 -93 -91 -89 -88 -86 -86 -86 -88 -90 -92 -94 -94 -95 -97 -99 -102 -102 -102 -101 -100 -99 -97 -96 -96 -96 -95 -94 -92 -90 -88 -85 -82 -78 -74 -70 -67 -64 -61 -57 -53 -50 -47 -47 -47 -45 -44 -44 -44 -41 -39 -39 -39 -39 -38 -38 -39 -41 -41 -41 -41 -41 -41 -41 -40 -39 -37 -37 -37 -37 -38 -38 -38 -38 -38 -37 -37 -37 -38 -37 -37 -36 -34 -34 -34 -34 -35 -37 -39 -40 -41 -40 -39 -40 -39 -39 -39 -39 -39 -40 -42 -43 -45 -46 -46 -46 -46 -45 -43 -42 -42 -43 -45 -45 -45 -44 -44 -43 -42 -42 -43 -43 -44 -45 -46 -47 -43 -45 -48 -50 -51 -51 -51 -51 -50 -49 -48 -47 -49 -54 -59 -59 -56 -52 -48 -45 -44 -46 -49 -49 -46 -43 -40 -39 -39 -39 -39 -40 -41 -42 -41 -41 -43 -47 -50 -52 -55 -57 -59 -61 -63 -65 -68 -67 -66 -65 -66 -69 -72 -74 -75 -77 -78 -81 -84 -86 -85 -84 -83 -82 -78 -73 -68 -64 -61 -59 -59 -60 -61 -62 -63 -66 -70 -74 -77 -80 -81 -80 -79 -76 -72 -71 -71 -71 -72 -71 -70 -69 -67 -66 -66 -67 -70 -73 -79 -82 -82 -79 -75 -73 -73 -73 -74 -75 -75 -75 -76 -79 -81 -82 -81 -78 -74 -71 -69 -69 -70 -70 -71 -71 -68 -64 -64 -62 -61 -61 -59 -57 -56 -57 -58 -57 -57 -56 -56 -55 -54 -54 -55 -56 -55 -55 -55 -56 -55 -54 -54 -54 -53 -54 -54 -54 -54 -52 -51 -51 -53 -54 -54 -51 -46 -41 -38 -37 -35 -32 -30 -30 -31 -33 -35 -38 -41 -43 -44 -44 -44 -45 -47 -50 -52 -53 -54 -54 -53 -53 -53 -51 -50 -50 -52 -53 -52 -53 -55 -59 -61 -62 -62 -62 -60 -61 -61 -61 -59 -58 -56 -54 -52 -50 -49 -50 -53 -56 -56 -54 -52 -50 -49 -49 -49 -48 -48 -49 -52 -54 -54 -54 -51 -49 -48 -48 -50 -53 -56 -59 -62 -64 -64 -63 -62 -65 -68 -71 -73 -73 -73 -73 -72 -72 -72 -73 -73 -73 -73 -75 -79 -82 -84 -86 -88 -90 -92 -94 -94 -93 -94 -95 -97 -97 -97 -96 -95 -95 -93 -91 -90 -89 -90 -91 -92 -92 -92 -91 -89 -88 -87 -86 -86 -86 -87 -89 -92 -94 -95 -95 -96 -99 -101 -102 -101 -100 -98 -97 -96 -95 -95 -93 -91 -90 -89 -88 -87 -85 -83 -79 -75 -72 -69 -67 -63 -60 -56 -52 -49 -48 -46 -46 -45 -45 -44 -42 -41 -40 -40 -39 -38 -38 -39 -41 -42 -42 -42 -42 -43 -42 -41 -39 -38 -37 -37 -38 -38 -38 -38 -37 -38 -37 -37 -37 -37 -36 -36 -35 -33 -32 -33 -32 -33 -35 -37 -39 -40 -40 -39 -39 -38 -38 -39 -39 -39 -40 -41 -42 -44 -45 -46 -46 -45 -45 -44 -44 -43 -43 -44 -44 -44 -43 -43 -43 -42 -42 -43 -43 -44 -46 -47 -48 -45 -46 -46 -48 -49 -50 -49 -49 -49 -49 -47 -46 -48 -52 -56 -59 -58 -56 -53 -49 -48 -48 -50 -50 -47 -44 -41 -40 -39 -38 -38 -38 -39 -40 -41 -41 -44 -49 -52 -54 -55 -56 -58 -61 -64 -66 -68 -69 -69 -70 -71 -72 -75 -76 -78 -79 -81 -85 -88 -90 -89 -87 -84 -80 -76 -70 -66 -63 -60 -60 -60 -61 -62 -63 -64 -66 -70 -74 -77 -80 -81 -80 -78 -75 -72 -71 -70 -69 -70 -70 -70 -71 -71 -70 -69 -68 -69 -71 -78 -82 -83 -79 -75 -73 -72 -72 -72 -73 -74 -75 -76 -80 -82 -83 -81 -78 -75 -72 -70 -69 -70 -70 -71 -71 -69 -66 -65 -63 -62 -60 -57 -57 -57 -58 -58 -57 -56 -55 -55 -55 -55 -55 -56 -56 -56 -56 -56 -56 -56 -55 -55 -54 -54 -54 -55 -55 -54 -51 -50 -51 -52 -54 -53 -49 -45 -40 -37 -35 -32 -31 -31 -33 -35 -36 -38 -40 -42 -44 -45 -46 -47 -48 -49 -51 -54 -55 -56 -54 -53 -52 -51 -50 -51 -52 -53 -54 -55 -56 -57 -58 -60 -61 -62 -62 -60 -61 -62 -62 -60 -58 -56 -53 -51 -49 -49 -50 -53 -57 -58 -56 -54 -52 -51 -51 -50 -48 -48 -50 -53 -55 -55 -53 -50 -48 -48 -50 -52 -54 -57 -61 -63 -63 -62 -61 -62 -65 -68 -71 -73 -74 -73 -72 -71 -71 -71 -71 -72 -72 -73 -75 -78 -81 -84 -86 -88 -90 -92 -93 -93 -94 -95 -97 -98 -97 -97 -98 -97 -96 -94 -92 -90 -90 -90 -90 -90 -90 -90 -90 -90 -89 -88 -87 -87 -86 -87 -89 -93 -94 -95 -96 -96 -98 -99 -100 -98 -96 -96 -96 -95 -95 -93 -90 -87 -86 -87 -87 -86 -85 -84 -80 -77 -74 -71 -68 -65 -62 -58 -55 -50 -48 -46 -45 -44 -44 -44 -43 -41 -40 -39 -39 -38 -39 -40 -41 -42 -42 -42 -43 -43 -43 -42 -40 -38 -37 -37 -38 -38 -37 -37 -37 -37 -37 -37 -36 -36 -35 -35 -35 -34 -33 -32 -32 -32 -33 -35 -38 -39 -40 -39 -38 -38 -37 -37 -38 -39 -40 -40 -41 -43 -44 -45 -45 -45 -46 -46 -45 -44 -43 -43 -43 -43 -43 -43 -43 -42 -42 -43 -43 -45 -46 -48 -48 -46 -47 -47 -47 -48 -47 -46 -45 -46 -46 -46 -45 -46 -49 -55 -58 -58 -57 -55 -52 -50 -50 -51 -50 -48 -44 -41 -39 -38 -37 -37 -37 -39 -41 -42 -44 -47 -52 -56 -58 -58 -57 -58 -61 -63 -65 -67 -70 -72 -75 -76 -76 -77 -79 -79 -81 -83 -87 -91 -93 -94 -92 -88 -82 -75 -69 -64 -62 -61 -61 -62 -63 -64 -64 -65 -67 -70 -74 -78 -80 -81 -80 -78 -74 -71 -70 -69 -69 -70 -71 -72 -73 -73 -73 -72 -70 -68 -68 -74 -80 -83 -80 -76 -74 -72 -71 -71 -72 -73 -75 -77 -80 -82 -82 -80 -77 -74 -72 -70 -69 -69 -70 -71 -71 -70 -67 -64 -62 -60 -58 -57 -57 -57 -58 -58 -57 -56 -55 -55 -54 -53 -54 -56 -57 -56 -56 -56 -56 -56 -56 -55 -54 -54 -55 -55 -54 -53 -51 -51 -51 -52 -53 -53 -49 -45 -41 -38 -34 -32 -31 -32 -35 -37 -39 -40 -41 -43 -44 -46 -48 -49 -50 -52 -53 -55 -57 -57 -56 -54 -53 -51 -51 -52 -54 -57 -59 -60 -60 -60 -59 -60 -61 -63 -63 -60 -60 -60 -61 -60 -58 -54 -51 -49 -48 -49 -51 -54 -58 -59 -59 -57 -54 -52 -51 -50 -49 -49 -52 -55 -56 -55 -53 -51 -50 -51 -54 -56 -59 -61 -64 -65 -64 -61 -60 -62 -65 -67 -69 -71 -72 -72 -71 -70 -70 -70 -70 -71 -72 -74 -76 -78 -80 -83 -86 -88 -90 -90 -91 -92 -94 -96 -97 -98 -98 -98 -98 -97 -96 -94 -92 -91 -90 -89 -88 -88 -88 -88 -89 -90 -90 -89 -88 -88 -88 -88 -90 -92 -94 -94 -95 -96 -97 -98 -97 -95 -91 -91 -93 -95 -95 -93 -89 -86 -85 -85 -86 -86 -85 -84 -81 -79 -76 -73 -69 -66 -63 -60 -57 -53 -49 -46 -44 -43 -43 -44 -44 -42 -39 -38 -38 -39 -39 -40 -40 -41 -41 -42 -42 -43 -43 -43 -41 -39 -38 -37 -37 -37 -37 -36 -36 -36 -36 -36 -36 -35 -35 -35 -34 -34 -34 -33 -32 -31 -32 -33 -36 -37 -38 -38 -38 -38 -37 -37 -38 -39 -39 -39 -40 -41 -43 -44 -45 -45 -46 -47 -46 -45 -43 -43 -42 -42 -42 -42 -42 -42 -43 -44 -44 -45 -47 -48 -49 -46 -46 -47 -47 -47 -45 -43 -42 -43 -44 -44 -45 -46 -48 -55 -56 -56 -55 -53 -52 -52 -52 -52 -50 -48 -45 -42 -39 -37 -35 -36 -37 -39 -43 -46 -49 -51 -54 -57 -59 -60 -60 -61 -63 -64 -65 -65 -70 -75 -78 -79 -77 -78 -79 -81 -83 -86 -90 -92 -93 -94 -94 -90 -84 -77 -70 -66 -63 -63 -63 -64 -64 -65 -65 -67 -68 -71 -75 -78 -80 -80 -79 -76 -73 -70 -69 -69 -70 -72 -73 -74 -75 -75 -75 -73 -70 -68 -67 -70 -76 -81 -81 -78 -75 -73 -71 -70 -71 -73 -75 -78 -81 -81 -81 -79 -76 -73 -71 -70 -69 -69 -70 -71 -71 -70 -66 -63 -61 -58 -57 -56 -56 -56 -57 -57 -56 -56 -55 -54 -53 -53 -54 -55 -56 -56 -55 -55 -56 -56 -55 -54 -53 -53 -53 -54 -53 -52 -51 -52 -53 -54 -54 -53 -50 -46 -43 -39 -36 -34 -33 -34 -36 -38 -39 -40 -41 -42 -44 -46 -48 -50 -52 -53 -55 -57 -58 -57 -56 -54 -53 -52 -52 -54 -57 -62 -65 -65 -64 -61 -60 -59 -58 -58 -57 -57 -58 -59 -60 -60 -57 -54 -50 -48 -48 -50 -52 -55 -59 -61 -61 -59 -55 -52 -51 -50 -50 -51 -53 -55 -56 -55 -54 -53 -54 -56 -58 -59 -61 -62 -64 -66 -64 -62 -61 -62 -64 -66 -67 -68 -69 -70 -70 -70 -69 -69 -69 -71 -72 -75 -76 -78 -80 -83 -86 -87 -87 -88 -89 -91 -94 -97 -98 -98 -98 -98 -98 -97 -94 -92 -91 -90 -88 -87 -86 -86 -87 -88 -89 -89 -90 -89 -89 -89 -89 -90 -90 -91 -92 -93 -94 -96 -96 -96 -95 -93 -89 -86 -87 -91 -94 -92 -89 -85 -84 -84 -84 -85 -85 -84 -82 -79 -77 -74 -70 -67 -64 -62 -59 -55 -51 -47 -44 -42 -42 -42 -42 -41 -39 -38 -37 -38 -40 -40 -40 -40 -41 -41 -42 -42 -43 -43 -41 -40 -38 -37 -37 -37 -36 -36 -36 -36 -36 -36 -35 -35 -35 -34 -34 -34 -33 -32 -32 -31 -32 -32 -34 -35 -36 -37 -37 -38 -38 -39 -39 -39 -39 -39 -39 -40 -42 -44 -45 -45 -46 -46 -47 -46 -44 -43 -43 -42 -42 -42 -42 -43 -44 -44 -45 -46 -46 -47 -48 -43 -44 -45 -46 -46 -45 -43 -42 -42 -42 -43 -44 -46 -48 -55 -56 -56 -55 -54 -51 -52 -52 -52 -50 -47 -44 -41 -39 -36 -34 -35 -37 -41 -45 -49 -52 -54 -55 -58 -60 -61 -62 -64 -67 -67 -66 -65 -70 -76 -79 -80 -79 -81 -82 -83 -85 -89 -91 -92 -92 -92 -91 -88 -84 -78 -73 -69 -66 -65 -65 -65 -65 -66 -67 -68 -70 -72 -76 -78 -79 -79 -77 -75 -72 -71 -70 -70 -71 -73 -75 -76 -76 -75 -74 -72 -70 -68 -67 -69 -73 -78 -80 -79 -76 -72 -70 -70 -71 -73 -76 -79 -81 -80 -80 -79 -77 -74 -72 -70 -69 -69 -70 -71 -71 -69 -65 -62 -59 -57 -55 -54 -54 -55 -56 -56 -55 -55 -54 -53 -52 -53 -53 -54 -55 -55 -55 -55 -55 -55 -54 -52 -51 -51 -52 -53 -53 -53 -53 -55 -55 -56 -55 -53 -49 -46 -43 -41 -39 -37 -36 -37 -38 -39 -39 -39 -40 -40 -42 -45 -48 -51 -52 -54 -56 -57 -57 -55 -54 -54 -53 -52 -53 -56 -61 -67 -69 -68 -65 -60 -58 -58 -58 -57 -56 -56 -57 -57 -59 -59 -57 -53 -50 -47 -50 -52 -55 -57 -60 -62 -61 -59 -55 -52 -52 -51 -51 -52 -53 -55 -56 -56 -57 -57 -59 -60 -61 -60 -61 -61 -63 -64 -62 -60 -59 -60 -63 -64 -65 -65 -66 -68 -69 -70 -69 -69 -70 -71 -72 -74 -76 -78 -80 -82 -84 -84 -85 -86 -88 -91 -94 -96 -97 -98 -98 -98 -96 -94 -91 -89 -88 -87 -85 -84 -84 -84 -86 -88 -89 -89 -89 -88 -88 -89 -89 -89 -89 -89 -90 -92 -93 -95 -95 -95 -94 -94 -90 -85 -82 -85 -90 -90 -87 -84 -82 -82 -83 -83 -83 -83 -81 -79 -77 -75 -72 -69 -66 -64 -61 -57 -53 -49 -45 -41 -40 -39 -38 -37 -37 -37 -37 -37 -39 -40 -40 -40 -42 -41 -41 -41 -41 -41 -40 -39 -38 -38 -37 -37 -36 -36 -36 -36 -36 -35 -35 -35 -35 -34 -33 -33 -33 -32 -32 -31 -32 -32 -33 -33 -34 -35 -37 -38 -39 -40 -41 -41 -39 -39 -39 -40 -42 -43 -44 -44 -44 -45 -46 -46 -45 -44 -43 -42 -42 -42 -42 -43 -44 -44 -45 -45 -46 -47 -48 -42 -40 -40 -41 -43 -45 -45 -43 -42 -41 -42 -43 -45 -49 -55 -55 -55 -55 -54 -52 -52 -52 -51 -49 -46 -43 -40 -38 -35 -34 -35 -39 -43 -47 -51 -53 -55 -56 -58 -59 -61 -63 -65 -69 -70 -70 -68 -71 -76 -80 -81 -81 -84 -85 -86 -88 -91 -92 -91 -89 -87 -85 -84 -81 -79 -76 -72 -69 -67 -66 -66 -66 -67 -68 -70 -71 -73 -75 -77 -77 -76 -75 -74 -73 -72 -72 -71 -72 -74 -75 -76 -76 -75 -74 -72 -71 -70 -69 -69 -71 -75 -79 -79 -76 -72 -70 -70 -71 -74 -77 -80 -80 -80 -79 -78 -77 -75 -73 -70 -69 -70 -70 -70 -69 -67 -64 -60 -57 -55 -53 -53 -53 -54 -55 -55 -54 -54 -53 -53 -52 -52 -53 -54 -53 -54 -54 -55 -55 -54 -53 -51 -50 -51 -52 -53 -53 -54 -56 -57 -57 -57 -56 -53 -49 -47 -45 -44 -42 -40 -39 -38 -38 -38 -39 -39 -39 -40 -42 -45 -48 -51 -53 -55 -56 -57 -55 -53 -53 -53 -52 -53 -55 -60 -65 -70 -71 -69 -64 -59 -57 -57 -57 -58 -58 -57 -56 -56 -58 -58 -56 -52 -49 -47 -50 -54 -58 -61 -62 -63 -61 -59 -57 -55 -55 -54 -53 -54 -55 -57 -58 -59 -61 -62 -62 -62 -61 -60 -60 -60 -61 -61 -60 -59 -60 -61 -61 -62 -63 -64 -66 -67 -68 -68 -68 -68 -70 -71 -72 -73 -75 -77 -79 -80 -82 -82 -83 -85 -88 -90 -92 -94 -95 -95 -96 -96 -94 -92 -89 -86 -84 -83 -82 -81 -82 -84 -86 -88 -89 -89 -88 -88 -88 -88 -89 -88 -88 -89 -90 -91 -92 -94 -94 -94 -93 -93 -92 -86 -80 -78 -84 -87 -86 -83 -81 -81 -81 -81 -81 -81 -80 -79 -78 -76 -73 -71 -69 -66 -63 -59 -55 -52 -47 -42 -40 -39 -37 -35 -34 -35 -35 -37 -37 -38 -39 -40 -42 -42 -40 -39 -39 -39 -38 -38 -37 -37 -37 -37 -37 -36 -36 -36 -36 -36 -35 -35 -35 -34 -33 -32 -33 -32 -32 -31 -31 -32 -33 -33 -34 -35 -36 -38 -40 -41 -42 -41 -40 -39 -39 -40 -41 -43 -43 -43 -43 -43 -44 -45 -45 -44 -43 -42 -42 -42 -42 -43 -43 -44 -44 -45 -46 -46 -47 -41 -39 -37 -37 -40 -44 -45 -44 -42 -41 -41 -43 -46 -49 -53 -54 -55 -55 -54 -52 -52 -52 -51 -49 -47 -43 -40 -37 -35 -35 -37 -41 -45 -49 -51 -53 -54 -56 -58 -59 -60 -63 -66 -69 -72 -72 -71 -73 -77 -80 -83 -85 -87 -88 -89 -90 -92 -91 -89 -86 -84 -82 -81 -80 -79 -77 -73 -69 -67 -66 -67 -68 -68 -69 -72 -73 -74 -75 -74 -74 -74 -74 -74 -74 -73 -72 -72 -73 -75 -76 -76 -75 -75 -75 -74 -73 -73 -72 -71 -72 -75 -78 -79 -76 -72 -71 -71 -73 -75 -77 -79 -79 -78 -78 -77 -77 -76 -73 -71 -69 -70 -69 -68 -67 -65 -61 -59 -56 -53 -51 -51 -51 -53 -54 -54 -53 -53 -53 -52 -53 -53 -54 -54 -53 -53 -54 -54 -55 -54 -52 -51 -51 -52 -53 -53 -54 -56 -57 -59 -59 -58 -55 -53 -51 -49 -47 -45 -44 -42 -40 -40 -40 -40 -40 -40 -40 -40 -43 -46 -49 -52 -54 -55 -56 -55 -52 -51 -51 -52 -52 -54 -58 -64 -69 -71 -70 -66 -62 -59 -57 -56 -57 -58 -60 -58 -57 -57 -58 -58 -55 -52 -49 -49 -54 -59 -62 -63 -63 -62 -60 -60 -60 -61 -60 -58 -57 -57 -59 -61 -63 -64 -65 -65 -63 -61 -59 -58 -58 -59 -60 -59 -58 -59 -60 -61 -60 -60 -61 -63 -65 -66 -66 -66 -65 -66 -68 -70 -71 -72 -74 -76 -77 -78 -80 -80 -81 -83 -86 -88 -90 -92 -92 -93 -93 -93 -92 -89 -86 -84 -81 -79 -79 -80 -82 -84 -87 -89 -89 -89 -88 -88 -88 -88 -88 -88 -88 -89 -90 -91 -92 -93 -93 -93 -92 -91 -91 -89 -85 -79 -82 -85 -86 -83 -80 -79 -79 -79 -79 -78 -78 -78 -78 -76 -74 -72 -70 -68 -65 -61 -58 -54 -50 -46 -43 -40 -38 -35 -33 -32 -32 -34 -35 -37 -39 -41 -43 -43 -41 -39 -38 -37 -36 -35 -36 -36 -36 -37 -37 -36 -36 -36 -36 -37 -36 -36 -35 -34 -33 -33 -33 -32 -31 -31 -31 -32 -33 -33 -33 -34 -35 -38 -40 -42 -42 -41 -41 -40 -39 -39 -41 -43 -42 -41 -41 -40 -42 -43 -43 -43 -42 -42 -41 -41 -41 -42 -43 -44 -44 -45 -45 -45 -46 -39 -37 -35 -36 -38 -42 -44 -44 -43 -41 -41 -43 -46 -50 -53 -55 -55 -54 -53 -52 -52 -51 -50 -49 -47 -43 -40 -38 -36 -36 -39 -43 -46 -50 -51 -52 -53 -56 -58 -59 -61 -65 -68 -70 -72 -73 -74 -75 -78 -82 -85 -88 -88 -88 -89 -91 -92 -90 -88 -85 -84 -84 -83 -82 -80 -77 -72 -69 -67 -67 -68 -69 -70 -72 -73 -73 -73 -72 -72 -73 -74 -75 -75 -74 -73 -72 -72 -73 -75 -76 -77 -77 -76 -76 -75 -75 -75 -73 -73 -74 -76 -77 -77 -75 -73 -72 -72 -74 -77 -79 -80 -78 -77 -76 -77 -77 -75 -73 -71 -69 -69 -68 -67 -66 -64 -60 -58 -55 -52 -50 -50 -51 -51 -53 -52 -52 -52 -52 -52 -54 -55 -55 -54 -54 -54 -54 -54 -54 -54 -53 -52 -52 -53 -54 -54 -55 -56 -58 -59 -59 -58 -56 -53 -51 -50 -48 -45 -44 -43 -43 -42 -42 -42 -42 -42 -42 -43 -46 -50 -53 -55 -55 -55 -53 -50 -48 -48 -50 -51 -52 -56 -61 -66 -70 -70 -67 -65 -63 -61 -59 -57 -57 -59 -61 -60 -59 -58 -58 -58 -55 -53 -52 -54 -60 -65 -67 -66 -64 -62 -60 -61 -63 -64 -64 -63 -61 -61 -63 -66 -67 -68 -68 -66 -63 -59 -57 -56 -56 -56 -57 -57 -58 -58 -59 -60 -59 -59 -60 -62 -64 -65 -65 -64 -63 -65 -67 -69 -70 -71 -72 -74 -76 -77 -78 -79 -80 -82 -83 -85 -87 -89 -90 -90 -91 -90 -89 -87 -84 -81 -79 -77 -78 -80 -83 -85 -87 -88 -89 -89 -88 -87 -88 -88 -88 -88 -89 -90 -91 -91 -91 -91 -91 -91 -90 -89 -88 -88 -87 -85 -86 -86 -85 -82 -80 -78 -78 -77 -77 -77 -76 -75 -75 -74 -74 -73 -71 -68 -65 -62 -59 -56 -53 -49 -46 -43 -40 -36 -33 -30 -30 -31 -33 -35 -38 -40 -41 -42 -42 -40 -38 -35 -34 -33 -34 -35 -35 -36 -36 -36 -36 -36 -36 -37 -37 -36 -35 -34 -33 -33 -33 -32 -30 -30 -30 -32 -33 -34 -34 -34 -35 -37 -40 -41 -41 -41 -41 -40 -39 -39 -41 -42 -40 -39 -39 -39 -40 -41 -41 -42 -42 -42 -41 -41 -41 -42 -43 -43 -43 -44 -45 -45 -46 -37 -36 -35 -35 -38 -41 -43 -44 -43 -41 -41 -43 -47 -50 -54 -55 -55 -54 -52 -51 -52 -51 -50 -48 -46 -43 -41 -40 -38 -38 -42 -46 -48 -49 -50 -51 -53 -57 -60 -62 -64 -67 -70 -71 -72 -74 -76 -77 -79 -81 -84 -86 -87 -88 -89 -89 -88 -88 -87 -87 -87 -87 -85 -83 -79 -75 -70 -68 -67 -67 -69 -70 -71 -73 -75 -74 -72 -71 -72 -74 -75 -75 -74 -73 -72 -72 -72 -73 -75 -78 -79 -80 -79 -78 -77 -76 -75 -74 -74 -75 -77 -77 -76 -75 -74 -74 -75 -77 -78 -79 -80 -78 -76 -75 -75 -76 -74 -72 -70 -69 -68 -67 -65 -64 -63 -61 -57 -54 -52 -50 -50 -51 -52 -52 -53 -52 -51 -52 -53 -54 -55 -56 -56 -56 -55 -55 -55 -55 -54 -53 -53 -54 -54 -54 -55 -56 -57 -58 -59 -59 -59 -57 -53 -51 -49 -48 -46 -44 -44 -44 -44 -44 -44 -44 -44 -44 -47 -50 -53 -56 -57 -55 -52 -49 -47 -45 -46 -48 -50 -53 -57 -63 -68 -70 -68 -65 -64 -64 -65 -63 -61 -58 -58 -61 -61 -61 -60 -59 -58 -57 -55 -56 -60 -66 -69 -69 -67 -63 -60 -60 -61 -63 -65 -66 -65 -63 -64 -66 -68 -69 -69 -69 -67 -63 -60 -57 -55 -54 -55 -56 -56 -57 -57 -58 -58 -57 -57 -58 -61 -63 -64 -63 -62 -62 -64 -67 -68 -70 -70 -71 -73 -74 -76 -77 -78 -79 -80 -82 -83 -84 -86 -87 -88 -88 -88 -86 -85 -83 -80 -79 -77 -78 -80 -83 -84 -86 -87 -89 -89 -89 -88 -88 -88 -88 -88 -89 -90 -91 -91 -90 -89 -89 -89 -86 -86 -86 -87 -88 -88 -86 -85 -83 -83 -81 -78 -77 -76 -76 -75 -74 -73 -72 -71 -72 -72 -70 -67 -64 -62 -59 -55 -53 -50 -48 -45 -42 -39 -35 -31 -30 -30 -31 -33 -35 -37 -38 -39 -40 -40 -39 -36 -34 -33 -33 -34 -34 -35 -35 -35 -35 -36 -36 -37 -37 -36 -36 -35 -34 -33 -33 -32 -30 -29 -30 -31 -33 -34 -35 -36 -37 -38 -39 -40 -40 -41 -41 -40 -39 -39 -41 -42 -39 -38 -38 -38 -39 -40 -40 -41 -42 -42 -42 -42 -42 -42 -43 -43 -43 -44 -44 -45 -47 -35 -34 -34 -35 -37 -40 -42 -43 -42 -42 -42 -45 -48 -51 -54 -56 -55 -53 -52 -50 -51 -51 -50 -47 -44 -42 -41 -41 -40 -40 -43 -47 -48 -48 -48 -51 -55 -59 -63 -67 -68 -69 -70 -72 -74 -76 -77 -77 -78 -80 -81 -83 -84 -85 -85 -86 -87 -87 -88 -89 -90 -88 -86 -81 -76 -71 -67 -66 -67 -68 -69 -70 -71 -73 -74 -73 -71 -71 -72 -74 -74 -74 -74 -73 -72 -71 -72 -73 -76 -79 -81 -82 -81 -79 -78 -77 -76 -75 -75 -75 -76 -75 -75 -74 -74 -75 -76 -78 -79 -79 -78 -76 -75 -74 -74 -74 -73 -71 -68 -66 -64 -64 -63 -62 -61 -59 -56 -54 -52 -50 -50 -51 -52 -52 -52 -52 -52 -52 -54 -56 -56 -57 -57 -58 -58 -58 -57 -56 -54 -53 -53 -54 -54 -55 -56 -58 -59 -59 -59 -60 -60 -58 -54 -50 -48 -47 -46 -44 -44 -45 -46 -46 -46 -45 -45 -47 -50 -53 -55 -58 -59 -56 -51 -48 -46 -45 -45 -46 -49 -53 -58 -64 -68 -71 -69 -65 -62 -63 -66 -65 -62 -59 -59 -60 -60 -61 -60 -60 -59 -59 -59 -61 -65 -68 -70 -69 -66 -62 -60 -60 -61 -64 -65 -66 -66 -67 -68 -69 -70 -70 -70 -69 -66 -63 -60 -58 -56 -55 -55 -56 -55 -55 -56 -56 -56 -55 -55 -57 -60 -62 -63 -63 -62 -63 -65 -66 -67 -68 -70 -71 -72 -73 -74 -76 -78 -79 -80 -80 -81 -82 -83 -85 -86 -86 -85 -84 -84 -82 -81 -79 -78 -79 -80 -82 -84 -85 -88 -89 -90 -89 -89 -89 -89 -89 -88 -88 -89 -90 -90 -89 -87 -87 -86 -84 -84 -85 -88 -90 -91 -90 -88 -86 -84 -81 -78 -77 -76 -75 -75 -74 -72 -70 -69 -70 -70 -68 -66 -63 -61 -58 -55 -53 -50 -47 -45 -43 -41 -38 -34 -31 -30 -31 -32 -33 -34 -35 -36 -37 -39 -39 -38 -36 -34 -34 -34 -34 -34 -34 -34 -34 -35 -35 -36 -37 -37 -36 -35 -34 -33 -32 -31 -30 -29 -30 -31 -33 -34 -35 -37 -38 -39 -40 -40 -39 -40 -40 -39 -39 -39 -41 -41 -39 -37 -37 -38 -39 -39 -40 -41 -42 -43 -43 -43 -43 -43 -43 -43 -43 -44 -44 -46 -47 -33 -32 -33 -35 -37 -39 -42 -42 -42 -42 -43 -46 -49 -52 -55 -56 -55 -54 -53 -51 -51 -51 -49 -47 -43 -40 -41 -42 -40 -41 -43 -44 -45 -46 -49 -53 -57 -61 -64 -68 -71 -72 -71 -73 -75 -77 -77 -77 -78 -79 -80 -81 -82 -82 -83 -85 -87 -88 -90 -91 -91 -88 -84 -78 -72 -66 -65 -65 -66 -68 -69 -70 -71 -72 -72 -71 -70 -71 -72 -73 -75 -75 -75 -74 -73 -72 -73 -76 -79 -81 -82 -82 -80 -78 -77 -77 -76 -76 -74 -74 -73 -73 -73 -74 -75 -76 -77 -78 -79 -79 -77 -75 -74 -73 -73 -71 -69 -67 -65 -63 -61 -61 -60 -59 -59 -57 -54 -53 -52 -51 -50 -50 -51 -52 -53 -53 -54 -55 -55 -56 -57 -57 -58 -59 -60 -60 -59 -56 -54 -52 -52 -53 -54 -56 -58 -60 -61 -61 -61 -61 -60 -58 -53 -50 -48 -47 -46 -45 -45 -46 -47 -47 -47 -46 -46 -48 -51 -54 -57 -59 -59 -56 -51 -48 -47 -46 -45 -45 -48 -52 -58 -64 -68 -71 -69 -65 -61 -61 -64 -65 -64 -62 -60 -61 -61 -61 -61 -60 -61 -62 -64 -65 -66 -68 -68 -67 -64 -62 -61 -61 -61 -63 -66 -67 -69 -71 -73 -73 -72 -70 -69 -68 -66 -64 -61 -59 -58 -57 -58 -57 -55 -54 -54 -56 -55 -54 -54 -55 -58 -60 -62 -62 -62 -64 -65 -66 -66 -67 -68 -70 -72 -73 -73 -75 -76 -78 -79 -79 -79 -80 -81 -83 -83 -83 -83 -83 -83 -82 -81 -80 -79 -79 -80 -81 -83 -86 -88 -90 -90 -90 -90 -90 -90 -89 -88 -87 -87 -88 -89 -88 -86 -85 -85 -83 -83 -84 -86 -89 -91 -92 -91 -89 -86 -82 -79 -77 -76 -75 -75 -74 -73 -71 -68 -67 -67 -66 -64 -62 -60 -58 -55 -52 -49 -46 -43 -41 -40 -39 -36 -33 -32 -32 -32 -32 -32 -33 -34 -35 -37 -38 -38 -37 -36 -36 -36 -36 -35 -35 -34 -34 -34 -34 -35 -36 -36 -36 -35 -34 -33 -31 -30 -30 -30 -31 -32 -33 -33 -35 -36 -38 -39 -40 -40 -40 -39 -39 -39 -39 -39 -41 -40 -39 -38 -37 -38 -39 -39 -39 -40 -42 -43 -43 -44 -44 -44 -44 -44 -44 -44 -45 -46 -48 -30 -30 -32 -34 -36 -39 -41 -42 -42 -43 -44 -47 -50 -53 -56 -56 -56 -56 -55 -53 -52 -50 -48 -45 -42 -40 -40 -41 -41 -42 -43 -43 -43 -45 -49 -54 -59 -62 -63 -67 -71 -73 -74 -75 -76 -76 -75 -76 -77 -79 -80 -80 -81 -82 -83 -85 -87 -89 -90 -91 -90 -86 -81 -74 -67 -63 -63 -65 -67 -68 -69 -69 -69 -70 -70 -70 -70 -71 -71 -73 -75 -76 -76 -76 -75 -75 -76 -78 -81 -82 -82 -80 -78 -76 -76 -76 -75 -74 -72 -70 -70 -70 -71 -74 -75 -76 -77 -77 -77 -77 -76 -75 -73 -72 -71 -68 -65 -62 -60 -59 -58 -58 -58 -57 -57 -56 -54 -53 -52 -51 -50 -50 -51 -52 -53 -54 -56 -57 -57 -58 -58 -58 -57 -57 -57 -57 -56 -55 -53 -53 -52 -53 -55 -57 -60 -62 -63 -62 -62 -61 -60 -58 -53 -49 -47 -45 -44 -45 -47 -48 -48 -49 -48 -48 -48 -50 -52 -55 -57 -59 -58 -54 -51 -49 -50 -48 -46 -46 -49 -54 -59 -65 -69 -71 -70 -66 -62 -60 -62 -65 -66 -65 -63 -62 -62 -62 -62 -62 -64 -66 -68 -68 -67 -67 -67 -65 -63 -62 -61 -61 -61 -63 -66 -69 -71 -74 -76 -76 -74 -71 -69 -68 -67 -65 -63 -61 -59 -59 -60 -58 -55 -54 -53 -54 -55 -55 -55 -54 -55 -58 -61 -62 -63 -63 -64 -65 -65 -65 -66 -68 -70 -72 -73 -74 -75 -77 -78 -78 -78 -78 -79 -81 -81 -81 -81 -81 -81 -82 -81 -80 -78 -79 -80 -81 -83 -86 -88 -89 -90 -90 -90 -91 -91 -91 -89 -88 -87 -87 -88 -86 -85 -84 -84 -83 -82 -83 -84 -86 -90 -92 -92 -91 -88 -84 -81 -79 -77 -76 -75 -75 -74 -71 -68 -66 -65 -64 -63 -61 -59 -57 -55 -52 -49 -46 -43 -40 -39 -38 -37 -35 -34 -33 -32 -32 -32 -32 -32 -33 -34 -35 -36 -36 -36 -37 -37 -37 -37 -37 -36 -36 -35 -34 -34 -35 -36 -36 -35 -34 -32 -31 -30 -30 -31 -32 -33 -33 -33 -34 -35 -36 -38 -40 -41 -41 -39 -39 -39 -38 -38 -40 -39 -38 -37 -36 -37 -38 -39 -39 -40 -42 -43 -44 -45 -45 -45 -45 -45 -45 -45 -45 -47 -48 -28 -29 -31 -33 -35 -38 -40 -41 -42 -43 -45 -48 -51 -54 -56 -57 -58 -58 -57 -55 -53 -50 -47 -44 -41 -39 -40 -41 -42 -42 -43 -43 -43 -44 -49 -55 -60 -63 -63 -66 -70 -74 -77 -76 -76 -75 -74 -75 -76 -77 -79 -80 -81 -82 -84 -86 -87 -88 -89 -89 -88 -83 -76 -70 -64 -62 -64 -65 -67 -68 -68 -68 -68 -68 -69 -70 -71 -71 -72 -74 -76 -77 -77 -77 -77 -78 -78 -79 -80 -81 -81 -79 -76 -76 -75 -75 -73 -71 -68 -67 -67 -68 -71 -73 -75 -76 -77 -76 -75 -75 -74 -74 -73 -70 -68 -64 -61 -58 -57 -56 -55 -55 -56 -56 -56 -55 -54 -53 -51 -51 -51 -51 -51 -53 -53 -55 -57 -59 -60 -60 -60 -59 -58 -56 -55 -53 -53 -54 -54 -54 -54 -54 -56 -58 -61 -63 -64 -63 -62 -62 -60 -58 -53 -49 -46 -46 -47 -48 -49 -49 -49 -49 -49 -50 -51 -53 -55 -57 -58 -58 -56 -52 -50 -49 -51 -49 -47 -47 -51 -56 -62 -66 -69 -70 -70 -67 -64 -60 -62 -65 -67 -66 -65 -64 -63 -63 -63 -64 -66 -69 -70 -69 -67 -66 -66 -65 -63 -62 -61 -61 -61 -64 -67 -69 -72 -74 -76 -76 -75 -72 -70 -68 -67 -66 -63 -61 -60 -60 -59 -57 -55 -53 -53 -54 -55 -55 -54 -52 -53 -57 -60 -62 -62 -62 -62 -62 -62 -63 -64 -66 -68 -71 -72 -73 -74 -75 -75 -75 -76 -76 -77 -78 -79 -80 -80 -80 -80 -80 -80 -79 -78 -78 -80 -81 -84 -86 -87 -88 -88 -88 -90 -91 -93 -92 -90 -88 -86 -87 -88 -87 -85 -84 -82 -82 -82 -83 -84 -86 -89 -91 -92 -91 -88 -85 -82 -81 -79 -77 -76 -75 -74 -71 -68 -66 -64 -63 -62 -61 -59 -57 -55 -52 -49 -46 -43 -41 -39 -37 -36 -35 -34 -33 -32 -32 -32 -31 -31 -32 -33 -33 -33 -34 -35 -36 -36 -37 -37 -39 -39 -39 -38 -35 -35 -35 -35 -36 -35 -33 -32 -31 -30 -30 -31 -32 -33 -33 -32 -32 -33 -35 -36 -39 -41 -41 -40 -38 -37 -37 -37 -38 -38 -36 -35 -34 -35 -37 -38 -38 -40 -41 -42 -44 -45 -45 -45 -45 -46 -46 -46 -46 -47 -49 -27 -28 -29 -31 -34 -37 -39 -41 -42 -44 -47 -49 -52 -54 -56 -58 -59 -59 -58 -56 -54 -51 -47 -43 -40 -39 -40 -41 -42 -41 -43 -43 -43 -43 -48 -54 -60 -63 -63 -65 -69 -74 -78 -76 -74 -73 -73 -74 -74 -75 -76 -78 -79 -81 -83 -85 -86 -86 -86 -86 -85 -79 -73 -67 -64 -63 -64 -65 -67 -68 -68 -67 -66 -66 -67 -69 -71 -73 -74 -76 -77 -78 -78 -79 -79 -80 -79 -78 -78 -79 -78 -76 -75 -74 -74 -73 -70 -67 -66 -65 -65 -67 -70 -73 -74 -75 -76 -75 -73 -72 -72 -73 -71 -68 -65 -61 -58 -56 -55 -55 -55 -54 -54 -55 -55 -55 -54 -52 -51 -51 -51 -51 -52 -53 -54 -56 -58 -60 -62 -62 -62 -60 -58 -56 -54 -51 -50 -52 -53 -55 -55 -56 -57 -60 -62 -64 -65 -64 -63 -62 -61 -58 -52 -48 -47 -47 -49 -50 -50 -50 -50 -51 -53 -55 -56 -58 -59 -59 -58 -57 -54 -52 -50 -48 -49 -48 -47 -49 -54 -59 -64 -67 -69 -70 -71 -69 -66 -62 -63 -66 -68 -68 -67 -66 -64 -63 -63 -65 -67 -68 -69 -68 -67 -66 -65 -64 -63 -63 -63 -63 -64 -67 -69 -71 -71 -72 -73 -74 -74 -73 -71 -69 -68 -66 -64 -62 -60 -59 -57 -54 -53 -53 -54 -54 -55 -54 -53 -52 -53 -55 -57 -58 -58 -59 -59 -59 -60 -61 -62 -64 -66 -69 -71 -72 -72 -73 -73 -73 -73 -74 -75 -76 -77 -78 -79 -79 -78 -78 -79 -79 -79 -79 -80 -82 -84 -85 -86 -86 -86 -87 -89 -91 -93 -92 -90 -88 -86 -87 -88 -87 -86 -84 -81 -81 -82 -84 -86 -88 -89 -90 -91 -91 -89 -86 -84 -83 -82 -80 -77 -75 -73 -70 -68 -66 -64 -63 -61 -60 -59 -57 -55 -52 -50 -47 -44 -41 -39 -38 -36 -35 -34 -33 -32 -32 -31 -30 -30 -31 -31 -31 -31 -32 -34 -35 -36 -36 -37 -39 -40 -41 -40 -38 -37 -36 -36 -35 -34 -33 -32 -31 -30 -31 -32 -33 -33 -33 -32 -32 -32 -33 -36 -39 -40 -40 -39 -37 -36 -35 -37 -37 -36 -35 -34 -33 -33 -35 -37 -38 -40 -41 -42 -44 -45 -45 -45 -45 -46 -47 -47 -47 -48 -49 -26 -27 -29 -31 -34 -36 -38 -40 -43 -45 -48 -50 -52 -54 -56 -58 -59 -59 -59 -57 -55 -52 -48 -44 -40 -39 -40 -41 -42 -41 -42 -43 -44 -44 -48 -53 -59 -63 -64 -65 -68 -72 -75 -73 -71 -71 -72 -74 -74 -74 -74 -75 -76 -78 -81 -82 -84 -85 -86 -86 -84 -78 -71 -66 -63 -63 -63 -64 -65 -67 -66 -65 -64 -65 -67 -68 -69 -71 -72 -72 -74 -76 -77 -78 -78 -78 -77 -77 -78 -79 -77 -75 -74 -73 -72 -70 -67 -63 -64 -63 -64 -66 -70 -72 -73 -74 -74 -74 -72 -70 -69 -69 -68 -66 -63 -60 -57 -55 -55 -55 -55 -55 -55 -55 -56 -55 -54 -53 -52 -51 -51 -52 -53 -54 -55 -57 -59 -62 -63 -63 -62 -61 -59 -56 -53 -51 -50 -50 -53 -56 -57 -59 -60 -62 -64 -65 -66 -65 -64 -63 -61 -58 -52 -49 -48 -49 -51 -52 -52 -51 -51 -52 -54 -56 -58 -59 -60 -60 -57 -54 -53 -50 -48 -45 -45 -46 -49 -53 -59 -62 -65 -67 -69 -69 -71 -70 -68 -65 -66 -68 -69 -70 -69 -67 -65 -63 -63 -65 -66 -67 -68 -68 -68 -67 -65 -64 -63 -64 -65 -68 -70 -71 -71 -71 -70 -69 -69 -71 -72 -72 -71 -69 -67 -66 -64 -62 -60 -58 -55 -52 -52 -53 -55 -55 -55 -54 -52 -52 -53 -54 -55 -55 -56 -57 -58 -57 -57 -59 -61 -62 -64 -67 -69 -70 -70 -70 -71 -71 -71 -71 -72 -73 -74 -76 -79 -78 -76 -76 -77 -78 -78 -79 -79 -80 -82 -83 -84 -84 -84 -86 -89 -91 -92 -92 -90 -88 -86 -86 -87 -86 -85 -83 -81 -81 -81 -83 -85 -87 -88 -90 -90 -89 -88 -87 -86 -85 -84 -81 -78 -75 -73 -70 -67 -66 -64 -64 -62 -61 -59 -57 -55 -53 -51 -48 -44 -42 -40 -38 -37 -35 -34 -33 -32 -31 -30 -29 -29 -30 -30 -30 -30 -30 -32 -34 -35 -36 -37 -38 -40 -40 -40 -39 -38 -38 -37 -36 -34 -33 -31 -31 -31 -32 -32 -33 -33 -33 -32 -32 -32 -33 -35 -36 -37 -37 -37 -36 -35 -35 -36 -37 -37 -35 -33 -31 -32 -33 -35 -38 -40 -41 -41 -43 -44 -44 -45 -46 -47 -47 -47 -48 -49 -50 -24 -26 -29 -31 -34 -36 -38 -41 -44 -47 -49 -51 -54 -55 -56 -57 -58 -59 -59 -58 -57 -54 -51 -47 -43 -39 -40 -41 -42 -41 -41 -42 -43 -45 -49 -54 -58 -62 -66 -67 -68 -69 -70 -69 -69 -71 -73 -76 -77 -77 -75 -74 -75 -76 -78 -80 -83 -87 -87 -86 -82 -77 -71 -66 -63 -62 -62 -63 -64 -64 -64 -64 -64 -66 -68 -68 -68 -69 -69 -71 -72 -73 -74 -75 -76 -76 -75 -75 -77 -76 -75 -74 -73 -71 -69 -66 -62 -60 -61 -62 -64 -67 -70 -73 -73 -73 -73 -72 -71 -69 -68 -67 -66 -65 -63 -60 -57 -55 -54 -54 -55 -55 -56 -56 -56 -54 -54 -53 -52 -51 -51 -52 -54 -55 -57 -59 -61 -63 -64 -63 -62 -60 -58 -55 -53 -51 -51 -51 -54 -57 -59 -61 -63 -65 -66 -66 -66 -65 -64 -63 -62 -57 -52 -49 -49 -50 -52 -53 -53 -53 -52 -53 -55 -57 -59 -60 -60 -57 -52 -50 -49 -47 -45 -43 -43 -47 -53 -60 -62 -63 -64 -67 -69 -69 -70 -69 -68 -69 -71 -72 -72 -71 -69 -67 -64 -63 -63 -64 -65 -66 -68 -69 -69 -68 -66 -64 -63 -65 -68 -71 -73 -73 -72 -71 -69 -68 -68 -68 -69 -70 -70 -69 -68 -66 -65 -62 -60 -57 -54 -51 -51 -53 -55 -55 -54 -53 -52 -51 -52 -53 -53 -53 -54 -55 -56 -56 -56 -57 -60 -61 -63 -64 -67 -68 -68 -68 -69 -69 -69 -69 -70 -70 -72 -74 -77 -77 -76 -75 -75 -77 -78 -78 -78 -78 -79 -81 -82 -83 -85 -87 -89 -90 -91 -91 -89 -87 -86 -85 -85 -84 -82 -81 -81 -82 -82 -82 -84 -86 -88 -89 -89 -89 -87 -86 -85 -85 -84 -81 -79 -76 -74 -71 -68 -65 -64 -64 -62 -61 -59 -56 -54 -52 -50 -48 -45 -42 -40 -39 -37 -36 -35 -33 -32 -31 -29 -27 -27 -28 -28 -28 -28 -29 -32 -34 -35 -36 -37 -38 -39 -39 -39 -38 -38 -38 -38 -37 -35 -33 -32 -32 -31 -32 -32 -33 -33 -32 -31 -31 -31 -32 -34 -34 -34 -35 -36 -36 -36 -35 -36 -37 -38 -37 -33 -31 -31 -32 -34 -36 -39 -40 -40 -43 -44 -44 -45 -46 -47 -47 -47 -48 -49 -51 -22 -24 -28 -30 -33 -35 -38 -41 -45 -48 -51 -52 -55 -56 -57 -56 -57 -59 -60 -60 -59 -57 -55 -52 -48 -42 -40 -41 -43 -42 -42 -41 -42 -45 -50 -55 -59 -62 -67 -68 -68 -67 -67 -67 -69 -71 -73 -76 -78 -79 -79 -79 -79 -79 -80 -81 -84 -86 -86 -83 -79 -73 -68 -64 -61 -61 -61 -61 -62 -62 -63 -64 -66 -67 -69 -70 -71 -71 -71 -72 -73 -74 -74 -74 -74 -74 -74 -74 -75 -75 -73 -72 -71 -68 -65 -61 -58 -58 -60 -62 -64 -68 -71 -73 -73 -73 -72 -70 -69 -68 -66 -64 -64 -63 -61 -59 -55 -53 -52 -52 -53 -54 -55 -54 -54 -54 -53 -53 -54 -53 -52 -53 -55 -57 -59 -60 -61 -62 -63 -62 -61 -59 -55 -52 -51 -51 -52 -53 -55 -58 -61 -63 -65 -67 -68 -68 -66 -65 -64 -64 -62 -57 -52 -50 -50 -51 -52 -53 -53 -53 -52 -53 -56 -58 -59 -60 -58 -53 -48 -48 -47 -45 -44 -43 -45 -51 -57 -62 -64 -64 -66 -67 -69 -70 -69 -69 -69 -72 -74 -74 -73 -71 -68 -65 -63 -62 -62 -63 -65 -67 -69 -70 -70 -68 -66 -65 -65 -67 -70 -73 -74 -74 -73 -72 -70 -68 -67 -67 -67 -67 -67 -67 -66 -66 -64 -61 -58 -54 -51 -50 -51 -53 -55 -55 -54 -52 -50 -50 -51 -51 -52 -52 -53 -54 -54 -54 -54 -56 -58 -60 -61 -62 -63 -64 -66 -67 -68 -68 -68 -67 -67 -68 -70 -72 -75 -76 -76 -75 -75 -76 -76 -76 -76 -76 -77 -79 -81 -83 -85 -87 -88 -90 -90 -90 -89 -87 -86 -86 -84 -81 -80 -79 -81 -82 -83 -83 -84 -85 -86 -88 -89 -89 -87 -86 -85 -84 -83 -81 -79 -77 -74 -73 -70 -66 -63 -63 -62 -60 -58 -56 -54 -52 -49 -47 -44 -42 -40 -39 -37 -36 -35 -34 -33 -31 -29 -27 -26 -26 -27 -28 -28 -28 -31 -33 -35 -36 -37 -38 -39 -39 -37 -37 -37 -37 -37 -36 -35 -34 -33 -32 -31 -31 -31 -32 -32 -31 -30 -30 -30 -31 -32 -32 -33 -35 -36 -36 -36 -36 -37 -38 -39 -39 -34 -32 -32 -32 -34 -36 -37 -38 -39 -42 -44 -44 -44 -46 -47 -47 -47 -48 -50 -52 -19 -24 -27 -29 -31 -34 -38 -41 -44 -48 -51 -53 -55 -57 -57 -56 -57 -59 -61 -62 -62 -61 -58 -55 -51 -45 -42 -41 -41 -42 -43 -43 -43 -44 -50 -55 -59 -62 -66 -69 -69 -67 -65 -65 -66 -68 -71 -73 -76 -78 -80 -82 -83 -83 -84 -84 -85 -85 -83 -79 -74 -68 -63 -60 -59 -59 -60 -60 -60 -60 -61 -63 -65 -67 -69 -70 -71 -71 -71 -72 -73 -73 -72 -72 -72 -72 -73 -74 -75 -73 -71 -70 -68 -64 -61 -58 -57 -57 -60 -63 -65 -69 -71 -73 -73 -73 -72 -69 -68 -66 -65 -62 -62 -61 -60 -57 -54 -52 -51 -51 -52 -52 -52 -53 -53 -54 -54 -54 -55 -56 -54 -54 -55 -58 -59 -60 -60 -61 -61 -60 -59 -57 -53 -50 -50 -52 -54 -55 -58 -60 -63 -65 -68 -70 -70 -68 -66 -64 -64 -63 -62 -57 -52 -50 -50 -52 -53 -53 -52 -50 -50 -52 -55 -57 -59 -59 -56 -51 -47 -47 -46 -45 -45 -47 -51 -56 -60 -62 -63 -64 -66 -67 -69 -71 -70 -69 -70 -73 -74 -74 -73 -71 -67 -64 -62 -61 -62 -65 -67 -69 -70 -70 -69 -67 -66 -66 -67 -69 -72 -74 -75 -74 -74 -73 -71 -69 -68 -67 -66 -66 -66 -65 -64 -64 -62 -60 -57 -53 -51 -50 -51 -53 -56 -55 -54 -52 -51 -50 -50 -51 -51 -52 -52 -52 -52 -52 -52 -54 -56 -58 -59 -60 -61 -62 -64 -64 -65 -67 -67 -65 -64 -66 -68 -70 -72 -75 -76 -76 -76 -76 -75 -75 -74 -74 -76 -78 -81 -83 -85 -86 -87 -88 -89 -90 -89 -88 -87 -86 -83 -81 -79 -80 -82 -83 -84 -84 -84 -85 -86 -87 -88 -89 -88 -87 -85 -83 -81 -79 -77 -75 -75 -74 -72 -67 -63 -62 -61 -60 -58 -56 -54 -52 -50 -47 -44 -42 -40 -38 -37 -36 -35 -35 -34 -32 -30 -28 -26 -27 -28 -28 -28 -29 -31 -33 -35 -37 -38 -39 -39 -38 -37 -36 -35 -36 -36 -36 -35 -34 -34 -33 -31 -30 -30 -31 -31 -30 -29 -29 -29 -30 -30 -31 -33 -34 -36 -37 -38 -38 -39 -39 -40 -41 -37 -35 -33 -33 -35 -36 -37 -38 -39 -41 -43 -44 -44 -45 -46 -46 -46 -48 -50 -52 -17 -23 -27 -28 -30 -33 -37 -41 -44 -47 -51 -52 -55 -58 -59 -59 -59 -61 -62 -63 -63 -63 -60 -56 -51 -46 -42 -39 -39 -41 -44 -45 -45 -46 -50 -56 -59 -61 -63 -66 -67 -66 -64 -63 -64 -66 -68 -71 -73 -76 -79 -82 -84 -85 -86 -86 -85 -83 -78 -73 -68 -62 -59 -57 -57 -57 -58 -58 -57 -58 -59 -61 -64 -66 -67 -67 -68 -69 -69 -69 -69 -69 -68 -68 -68 -70 -72 -74 -74 -71 -68 -66 -63 -61 -58 -57 -57 -58 -61 -64 -66 -68 -71 -72 -72 -72 -71 -68 -66 -64 -62 -61 -60 -59 -58 -56 -54 -52 -51 -51 -51 -51 -51 -51 -52 -54 -55 -56 -56 -58 -56 -55 -56 -57 -59 -59 -60 -60 -59 -58 -56 -54 -52 -50 -50 -52 -54 -56 -59 -62 -66 -68 -71 -71 -70 -68 -65 -64 -64 -62 -60 -55 -51 -50 -51 -52 -52 -50 -48 -46 -47 -50 -54 -56 -58 -57 -55 -52 -48 -46 -45 -46 -48 -52 -56 -60 -61 -62 -62 -64 -65 -67 -69 -71 -71 -71 -71 -72 -72 -72 -71 -71 -67 -64 -62 -62 -64 -67 -69 -71 -72 -71 -69 -67 -65 -67 -69 -71 -73 -74 -75 -75 -74 -73 -72 -71 -69 -68 -66 -66 -65 -64 -63 -62 -60 -57 -54 -53 -52 -52 -52 -53 -55 -55 -54 -53 -51 -50 -50 -51 -52 -52 -52 -51 -50 -50 -50 -52 -54 -55 -57 -58 -59 -61 -62 -62 -62 -63 -64 -63 -61 -63 -65 -68 -71 -73 -75 -76 -76 -75 -75 -74 -74 -73 -74 -76 -79 -81 -83 -84 -85 -86 -87 -88 -88 -88 -88 -85 -83 -81 -80 -81 -83 -84 -85 -85 -85 -86 -87 -87 -88 -89 -88 -86 -84 -82 -79 -77 -76 -75 -75 -75 -73 -68 -64 -62 -61 -59 -58 -56 -55 -53 -51 -48 -45 -42 -40 -38 -37 -36 -36 -35 -34 -33 -31 -29 -27 -28 -29 -29 -29 -30 -31 -33 -35 -38 -39 -39 -39 -38 -36 -35 -35 -35 -36 -35 -35 -34 -34 -32 -31 -30 -29 -29 -28 -27 -27 -27 -28 -28 -29 -30 -32 -34 -36 -38 -39 -39 -40 -41 -42 -43 -41 -38 -37 -36 -36 -37 -38 -39 -39 -40 -41 -43 -44 -45 -45 -45 -46 -48 -50 -52 -16 -23 -27 -30 -32 -34 -38 -42 -45 -47 -50 -54 -59 -61 -62 -62 -63 -63 -63 -64 -64 -63 -59 -54 -50 -47 -42 -38 -37 -40 -43 -46 -47 -49 -52 -57 -59 -60 -61 -63 -64 -65 -64 -63 -62 -64 -66 -69 -72 -75 -78 -81 -82 -84 -84 -84 -82 -79 -74 -68 -62 -57 -55 -54 -55 -56 -56 -56 -56 -56 -56 -59 -61 -63 -64 -64 -64 -65 -65 -65 -64 -64 -63 -64 -65 -68 -71 -72 -71 -67 -64 -61 -59 -59 -57 -57 -58 -60 -62 -65 -66 -68 -69 -70 -70 -70 -69 -68 -65 -62 -60 -59 -59 -58 -58 -56 -54 -53 -52 -51 -51 -51 -51 -51 -51 -54 -56 -56 -57 -58 -58 -57 -57 -57 -58 -59 -59 -59 -57 -55 -54 -52 -51 -51 -51 -53 -56 -58 -61 -65 -68 -71 -71 -70 -69 -67 -65 -64 -64 -62 -58 -53 -50 -50 -50 -50 -49 -47 -46 -45 -46 -50 -54 -56 -57 -56 -55 -53 -50 -46 -46 -49 -53 -57 -61 -63 -64 -63 -63 -64 -65 -66 -67 -71 -72 -72 -70 -68 -68 -68 -69 -70 -67 -64 -63 -63 -66 -69 -71 -72 -72 -70 -68 -66 -66 -67 -70 -73 -74 -74 -74 -74 -74 -73 -72 -72 -70 -69 -67 -65 -65 -65 -64 -61 -57 -55 -53 -53 -53 -53 -53 -53 -54 -54 -54 -53 -51 -50 -49 -50 -52 -53 -52 -51 -50 -50 -50 -51 -51 -53 -54 -56 -58 -60 -60 -59 -59 -60 -61 -62 -60 -60 -62 -67 -71 -73 -74 -75 -75 -74 -74 -74 -73 -72 -73 -74 -76 -78 -81 -82 -83 -83 -84 -86 -87 -88 -87 -85 -83 -82 -82 -83 -84 -85 -85 -85 -86 -87 -88 -88 -88 -89 -88 -85 -83 -81 -78 -76 -75 -75 -74 -73 -72 -68 -64 -62 -60 -59 -57 -56 -55 -54 -52 -48 -45 -42 -39 -38 -36 -35 -34 -34 -34 -33 -31 -30 -28 -29 -30 -31 -31 -31 -32 -33 -35 -38 -39 -39 -39 -38 -36 -36 -36 -36 -36 -35 -35 -34 -34 -32 -31 -29 -28 -27 -25 -24 -24 -25 -26 -27 -28 -29 -31 -34 -36 -38 -40 -40 -40 -41 -43 -44 -42 -40 -39 -38 -38 -38 -39 -39 -38 -38 -39 -41 -43 -44 -44 -44 -46 -48 -51 -52 -15 -20 -26 -31 -35 -37 -39 -43 -47 -50 -52 -55 -60 -63 -64 -64 -65 -65 -65 -65 -64 -62 -58 -54 -50 -47 -43 -39 -36 -38 -41 -44 -48 -52 -55 -58 -59 -60 -59 -61 -62 -63 -63 -63 -62 -63 -65 -68 -71 -74 -77 -78 -79 -79 -79 -78 -77 -73 -68 -63 -58 -54 -52 -52 -53 -54 -55 -56 -57 -56 -56 -57 -59 -61 -62 -61 -62 -62 -62 -62 -62 -61 -61 -61 -63 -66 -68 -68 -67 -63 -59 -58 -58 -58 -58 -58 -60 -61 -63 -64 -66 -67 -67 -68 -67 -67 -69 -68 -65 -61 -59 -58 -57 -57 -57 -56 -55 -54 -53 -53 -52 -52 -52 -52 -52 -54 -56 -57 -57 -58 -59 -58 -58 -57 -58 -58 -58 -57 -55 -53 -52 -51 -51 -52 -53 -55 -58 -60 -63 -67 -70 -71 -69 -68 -67 -66 -65 -65 -64 -62 -57 -53 -50 -49 -49 -48 -47 -46 -45 -45 -47 -51 -54 -57 -57 -56 -54 -52 -51 -48 -48 -51 -55 -60 -63 -65 -65 -64 -63 -63 -64 -65 -66 -69 -71 -71 -68 -65 -64 -65 -68 -69 -67 -65 -64 -66 -68 -70 -71 -72 -71 -70 -68 -67 -67 -69 -71 -73 -74 -74 -74 -74 -73 -73 -72 -72 -71 -69 -67 -66 -66 -66 -65 -61 -56 -53 -53 -54 -54 -54 -53 -52 -53 -54 -54 -53 -51 -50 -50 -51 -52 -53 -52 -51 -50 -50 -50 -50 -50 -51 -52 -55 -57 -58 -58 -57 -57 -59 -60 -61 -61 -61 -62 -66 -70 -72 -74 -74 -73 -73 -73 -73 -72 -71 -71 -71 -73 -75 -77 -79 -81 -81 -82 -84 -86 -87 -87 -85 -83 -82 -82 -84 -86 -86 -87 -87 -88 -88 -89 -88 -88 -87 -86 -84 -82 -80 -77 -75 -75 -75 -74 -72 -70 -67 -65 -62 -60 -59 -57 -56 -55 -54 -52 -48 -44 -41 -39 -37 -34 -33 -32 -32 -32 -32 -32 -31 -30 -30 -31 -32 -32 -32 -32 -34 -36 -38 -39 -39 -39 -38 -36 -36 -36 -36 -36 -35 -35 -35 -34 -32 -31 -29 -28 -26 -24 -23 -23 -24 -25 -26 -27 -28 -30 -33 -36 -39 -40 -40 -40 -42 -44 -45 -43 -40 -39 -39 -38 -37 -38 -39 -37 -37 -38 -39 -41 -42 -43 -44 -46 -49 -51 -52 -14 -19 -25 -31 -36 -39 -41 -44 -48 -51 -55 -58 -61 -64 -66 -65 -66 -66 -66 -65 -63 -60 -57 -54 -50 -47 -44 -40 -37 -37 -39 -42 -47 -53 -58 -60 -60 -59 -58 -59 -60 -62 -62 -62 -63 -64 -66 -68 -71 -74 -75 -75 -74 -73 -72 -72 -70 -66 -62 -58 -55 -51 -49 -49 -51 -53 -54 -55 -57 -59 -60 -59 -58 -59 -60 -61 -61 -61 -62 -62 -62 -61 -61 -60 -62 -63 -63 -62 -61 -59 -58 -57 -59 -60 -60 -61 -61 -62 -62 -63 -65 -67 -67 -67 -67 -67 -67 -66 -64 -61 -58 -56 -55 -55 -54 -53 -54 -55 -55 -55 -54 -53 -53 -53 -53 -54 -55 -56 -56 -58 -59 -59 -58 -57 -58 -58 -57 -55 -53 -51 -50 -50 -51 -53 -55 -58 -60 -63 -66 -69 -70 -69 -66 -66 -65 -65 -65 -65 -64 -62 -57 -53 -50 -49 -48 -48 -46 -45 -44 -44 -47 -51 -55 -58 -58 -55 -52 -50 -49 -48 -48 -50 -54 -59 -64 -66 -65 -63 -62 -63 -64 -65 -64 -65 -68 -69 -69 -65 -64 -65 -67 -67 -66 -64 -65 -67 -70 -72 -73 -72 -71 -69 -68 -68 -69 -70 -71 -72 -73 -73 -73 -73 -73 -73 -72 -72 -71 -70 -68 -67 -66 -66 -64 -60 -56 -53 -53 -55 -55 -54 -52 -52 -52 -53 -54 -53 -52 -51 -50 -50 -51 -52 -52 -51 -50 -50 -50 -49 -49 -49 -51 -54 -55 -56 -55 -55 -57 -58 -60 -62 -62 -62 -62 -65 -69 -71 -72 -72 -72 -72 -72 -72 -71 -69 -69 -69 -70 -71 -74 -76 -78 -80 -81 -83 -84 -85 -85 -84 -83 -83 -83 -86 -88 -88 -88 -88 -89 -89 -89 -88 -87 -86 -85 -83 -81 -78 -76 -74 -75 -76 -75 -73 -71 -68 -66 -63 -61 -59 -57 -56 -54 -52 -50 -46 -43 -41 -38 -36 -33 -31 -30 -30 -30 -31 -31 -32 -31 -31 -31 -31 -32 -32 -33 -34 -37 -38 -39 -39 -39 -38 -37 -37 -37 -37 -36 -36 -36 -35 -34 -32 -31 -29 -28 -26 -24 -23 -23 -24 -24 -25 -26 -27 -28 -32 -35 -39 -41 -40 -40 -42 -45 -46 -44 -41 -39 -38 -37 -37 -37 -37 -35 -36 -37 -38 -40 -41 -42 -44 -46 -49 -51 -51 -13 -17 -22 -28 -33 -38 -42 -45 -49 -52 -56 -59 -62 -65 -68 -68 -67 -67 -67 -65 -62 -59 -56 -53 -51 -48 -45 -42 -39 -38 -37 -40 -46 -53 -58 -60 -61 -61 -60 -58 -59 -59 -60 -62 -64 -66 -67 -69 -71 -72 -72 -71 -68 -67 -66 -65 -63 -59 -57 -55 -53 -49 -47 -47 -48 -51 -52 -54 -56 -58 -61 -61 -60 -59 -60 -60 -61 -62 -63 -63 -63 -62 -60 -60 -61 -61 -59 -57 -57 -56 -56 -57 -58 -60 -61 -62 -62 -61 -61 -62 -63 -65 -66 -67 -67 -66 -67 -65 -62 -59 -56 -55 -54 -53 -53 -52 -53 -55 -57 -58 -56 -55 -54 -54 -55 -55 -56 -56 -57 -57 -58 -59 -58 -56 -57 -57 -56 -54 -52 -50 -49 -50 -51 -54 -57 -61 -63 -66 -68 -70 -70 -67 -65 -64 -65 -65 -65 -65 -64 -62 -57 -54 -52 -51 -50 -50 -48 -45 -43 -43 -46 -51 -55 -57 -57 -54 -50 -47 -46 -46 -47 -49 -53 -59 -63 -63 -61 -58 -59 -63 -65 -65 -63 -62 -65 -68 -70 -67 -66 -65 -66 -65 -64 -64 -65 -69 -72 -74 -74 -73 -71 -69 -69 -70 -70 -71 -71 -72 -72 -72 -72 -72 -73 -73 -72 -72 -71 -70 -69 -68 -66 -64 -62 -58 -55 -54 -54 -56 -56 -54 -53 -52 -53 -54 -54 -53 -52 -51 -50 -50 -51 -52 -52 -51 -50 -50 -50 -50 -49 -50 -51 -53 -54 -53 -53 -55 -57 -60 -61 -63 -62 -61 -61 -64 -68 -70 -71 -70 -69 -70 -70 -70 -69 -67 -66 -66 -66 -68 -70 -73 -76 -78 -80 -81 -83 -84 -84 -84 -84 -84 -85 -88 -89 -90 -89 -89 -88 -88 -88 -88 -86 -84 -83 -81 -80 -77 -75 -75 -76 -76 -76 -74 -72 -69 -67 -64 -62 -59 -57 -55 -52 -49 -47 -45 -43 -41 -38 -35 -32 -31 -29 -28 -28 -29 -31 -32 -32 -31 -31 -31 -32 -32 -33 -34 -36 -37 -38 -39 -40 -39 -39 -39 -39 -38 -38 -37 -36 -35 -34 -32 -31 -30 -29 -27 -26 -25 -25 -25 -24 -24 -25 -26 -28 -31 -35 -40 -40 -39 -40 -42 -45 -46 -44 -41 -38 -37 -37 -36 -36 -35 -34 -35 -36 -37 -39 -40 -42 -44 -46 -49 -50 -51 -14 -16 -21 -24 -30 -36 -41 -45 -48 -51 -55 -58 -61 -66 -69 -70 -69 -69 -68 -66 -62 -58 -55 -52 -50 -48 -46 -44 -42 -41 -40 -40 -43 -49 -54 -58 -61 -63 -63 -62 -61 -61 -62 -64 -67 -68 -69 -69 -71 -71 -70 -68 -65 -63 -61 -60 -58 -55 -54 -52 -50 -47 -46 -46 -48 -50 -52 -53 -54 -56 -58 -59 -60 -61 -61 -61 -61 -62 -63 -63 -62 -61 -60 -60 -60 -59 -58 -57 -57 -57 -57 -57 -58 -59 -61 -62 -62 -61 -60 -61 -62 -65 -66 -66 -66 -65 -65 -63 -60 -58 -55 -54 -54 -54 -53 -52 -53 -55 -57 -57 -56 -55 -55 -54 -55 -57 -57 -56 -56 -56 -56 -56 -55 -54 -52 -52 -52 -53 -52 -50 -50 -50 -52 -55 -59 -63 -66 -68 -71 -71 -69 -65 -64 -64 -65 -65 -65 -65 -64 -62 -58 -55 -53 -53 -53 -52 -49 -45 -42 -41 -46 -50 -54 -56 -55 -53 -50 -47 -45 -46 -48 -50 -53 -58 -60 -60 -58 -56 -59 -64 -66 -65 -62 -62 -65 -69 -70 -69 -68 -66 -65 -63 -63 -64 -67 -70 -73 -74 -74 -73 -71 -70 -70 -71 -71 -71 -71 -72 -72 -72 -72 -73 -73 -72 -72 -72 -71 -71 -71 -70 -67 -63 -59 -56 -54 -54 -54 -55 -55 -55 -53 -52 -53 -54 -54 -53 -52 -51 -50 -49 -50 -51 -52 -52 -51 -50 -50 -50 -50 -50 -51 -51 -51 -50 -51 -54 -57 -61 -63 -64 -63 -61 -60 -63 -66 -68 -68 -68 -67 -67 -68 -68 -68 -66 -64 -63 -63 -65 -68 -71 -74 -77 -79 -80 -81 -82 -83 -84 -84 -85 -87 -89 -90 -90 -89 -88 -88 -87 -87 -87 -85 -84 -82 -81 -79 -77 -76 -76 -77 -77 -76 -74 -72 -70 -67 -65 -62 -60 -57 -55 -52 -49 -47 -45 -43 -41 -38 -35 -33 -31 -30 -28 -28 -29 -31 -32 -32 -32 -31 -31 -31 -32 -32 -33 -35 -36 -38 -39 -40 -40 -41 -41 -41 -40 -38 -37 -36 -34 -33 -32 -31 -31 -30 -29 -28 -27 -27 -26 -25 -25 -26 -27 -29 -32 -35 -39 -38 -37 -38 -41 -44 -45 -43 -41 -38 -36 -36 -36 -36 -35 -34 -35 -36 -36 -37 -39 -41 -44 -46 -48 -49 -50 -16 -17 -20 -22 -27 -32 -38 -43 -46 -50 -53 -58 -61 -66 -70 -72 -70 -70 -69 -68 -65 -60 -55 -51 -48 -46 -46 -46 -46 -45 -45 -44 -45 -46 -48 -52 -57 -61 -63 -64 -64 -64 -65 -67 -68 -69 -70 -70 -69 -69 -67 -64 -62 -60 -58 -57 -55 -53 -51 -50 -49 -48 -48 -48 -49 -49 -51 -52 -53 -54 -56 -57 -59 -60 -61 -61 -61 -61 -61 -61 -60 -60 -60 -61 -61 -60 -59 -58 -57 -58 -58 -58 -58 -59 -59 -60 -60 -60 -60 -60 -62 -64 -65 -65 -65 -64 -63 -60 -57 -54 -53 -54 -55 -55 -54 -52 -52 -54 -55 -54 -55 -54 -54 -54 -55 -58 -59 -58 -55 -54 -53 -53 -52 -52 -51 -50 -50 -50 -49 -48 -48 -50 -52 -55 -59 -64 -67 -70 -72 -72 -69 -64 -63 -64 -66 -66 -66 -66 -64 -61 -58 -56 -55 -55 -54 -52 -48 -44 -41 -42 -46 -50 -53 -54 -54 -53 -51 -49 -46 -48 -50 -52 -55 -58 -59 -59 -58 -56 -61 -65 -66 -65 -63 -64 -66 -67 -68 -68 -67 -65 -64 -62 -63 -65 -68 -70 -72 -73 -74 -73 -72 -72 -71 -71 -71 -71 -72 -72 -73 -74 -73 -73 -73 -73 -73 -73 -73 -73 -73 -71 -67 -62 -58 -56 -55 -54 -54 -54 -55 -55 -55 -54 -54 -53 -53 -52 -52 -51 -50 -48 -48 -51 -52 -52 -51 -50 -50 -50 -50 -50 -49 -48 -48 -48 -51 -55 -58 -61 -63 -63 -61 -60 -59 -61 -64 -65 -65 -64 -64 -64 -65 -66 -66 -64 -62 -61 -61 -62 -66 -69 -73 -76 -78 -79 -80 -81 -82 -83 -85 -87 -89 -89 -90 -89 -89 -88 -87 -87 -86 -85 -84 -83 -82 -80 -79 -78 -78 -78 -78 -77 -75 -73 -71 -69 -67 -64 -62 -60 -58 -55 -52 -49 -47 -46 -44 -41 -39 -36 -34 -32 -31 -29 -28 -29 -31 -33 -33 -32 -32 -31 -31 -30 -30 -30 -32 -34 -37 -39 -40 -41 -41 -41 -41 -40 -38 -37 -35 -33 -33 -33 -33 -33 -32 -31 -30 -29 -29 -28 -27 -26 -27 -28 -30 -32 -36 -37 -36 -36 -36 -39 -42 -42 -41 -39 -36 -35 -35 -36 -36 -35 -35 -35 -36 -36 -37 -39 -41 -43 -45 -47 -48 -49 -20 -19 -20 -23 -25 -29 -34 -40 -44 -48 -52 -59 -64 -68 -70 -71 -71 -70 -69 -68 -65 -61 -56 -52 -48 -46 -46 -46 -47 -49 -49 -48 -47 -47 -47 -50 -54 -58 -61 -63 -65 -66 -67 -68 -69 -69 -69 -69 -68 -67 -64 -62 -59 -58 -56 -55 -54 -52 -51 -50 -49 -49 -50 -50 -50 -50 -51 -52 -52 -53 -54 -55 -56 -58 -59 -59 -59 -59 -59 -58 -58 -59 -60 -61 -61 -62 -61 -61 -60 -59 -59 -59 -58 -58 -58 -59 -59 -60 -60 -60 -61 -63 -64 -65 -65 -63 -61 -57 -54 -51 -51 -53 -54 -54 -54 -52 -51 -52 -53 -53 -55 -55 -54 -54 -56 -59 -59 -58 -55 -52 -50 -50 -50 -51 -52 -51 -51 -50 -50 -50 -51 -53 -56 -59 -62 -65 -68 -71 -73 -73 -71 -65 -63 -64 -66 -67 -66 -66 -64 -61 -58 -57 -56 -54 -53 -50 -46 -43 -41 -43 -46 -49 -52 -54 -53 -54 -53 -51 -49 -51 -52 -54 -56 -59 -60 -60 -58 -57 -61 -65 -66 -66 -66 -66 -66 -66 -65 -66 -66 -66 -64 -63 -63 -64 -67 -70 -73 -74 -74 -74 -73 -73 -72 -72 -71 -71 -71 -72 -74 -75 -75 -74 -74 -73 -74 -75 -75 -74 -73 -70 -65 -60 -57 -56 -55 -55 -55 -56 -56 -56 -55 -54 -54 -54 -53 -52 -52 -52 -50 -49 -48 -50 -51 -51 -51 -50 -49 -48 -48 -48 -48 -47 -47 -48 -52 -55 -58 -61 -61 -60 -58 -57 -57 -60 -62 -62 -62 -61 -62 -62 -63 -64 -63 -62 -60 -59 -59 -61 -64 -68 -72 -75 -77 -78 -79 -80 -81 -83 -86 -88 -90 -90 -90 -89 -89 -88 -87 -86 -85 -84 -83 -83 -83 -81 -80 -79 -79 -78 -78 -76 -74 -73 -71 -68 -66 -63 -61 -59 -58 -55 -52 -50 -48 -46 -44 -43 -41 -38 -35 -33 -32 -30 -29 -29 -31 -32 -32 -32 -32 -32 -31 -30 -30 -30 -31 -34 -36 -38 -39 -39 -40 -40 -40 -39 -38 -36 -34 -34 -34 -34 -35 -34 -33 -32 -31 -30 -29 -28 -28 -28 -29 -30 -32 -34 -36 -36 -35 -34 -35 -37 -39 -40 -38 -36 -34 -34 -35 -37 -37 -36 -35 -36 -37 -38 -39 -40 -42 -42 -44 -46 -48 -49 -26 -23 -21 -23 -25 -27 -30 -35 -40 -46 -53 -62 -67 -70 -72 -73 -72 -72 -70 -67 -64 -60 -56 -52 -49 -46 -46 -47 -48 -51 -52 -51 -50 -49 -49 -51 -54 -57 -60 -62 -64 -66 -67 -67 -68 -69 -69 -69 -67 -64 -62 -59 -57 -56 -54 -53 -53 -52 -51 -51 -51 -51 -52 -52 -52 -51 -51 -52 -52 -52 -52 -53 -54 -55 -55 -56 -56 -56 -56 -56 -56 -56 -57 -59 -61 -62 -63 -63 -62 -60 -59 -58 -57 -58 -58 -58 -59 -60 -60 -59 -60 -61 -63 -65 -65 -63 -59 -56 -52 -50 -50 -51 -52 -52 -52 -51 -50 -51 -52 -53 -54 -55 -56 -56 -55 -57 -57 -56 -53 -50 -48 -49 -50 -52 -53 -53 -53 -53 -53 -53 -54 -56 -58 -61 -63 -66 -68 -71 -73 -74 -72 -68 -66 -66 -67 -67 -67 -66 -63 -61 -58 -57 -55 -52 -50 -47 -44 -43 -42 -44 -47 -49 -52 -53 -53 -53 -53 -53 -53 -54 -55 -56 -58 -60 -61 -60 -58 -57 -60 -63 -66 -67 -67 -66 -65 -64 -64 -64 -65 -65 -65 -63 -63 -65 -67 -70 -72 -73 -73 -73 -73 -73 -73 -72 -71 -71 -71 -72 -73 -75 -75 -75 -75 -75 -76 -76 -76 -74 -70 -66 -62 -59 -58 -57 -56 -56 -56 -57 -57 -56 -55 -55 -55 -55 -55 -54 -54 -53 -51 -50 -50 -51 -51 -51 -50 -49 -47 -46 -45 -46 -47 -47 -47 -48 -52 -56 -58 -60 -60 -58 -56 -55 -56 -59 -60 -60 -59 -59 -60 -60 -61 -61 -61 -59 -58 -58 -59 -60 -63 -67 -71 -74 -76 -78 -79 -80 -81 -83 -86 -89 -90 -90 -90 -90 -89 -87 -86 -85 -84 -83 -83 -83 -83 -82 -81 -81 -80 -79 -78 -76 -75 -73 -71 -68 -65 -63 -60 -59 -57 -56 -53 -51 -47 -45 -43 -43 -43 -41 -37 -34 -31 -29 -29 -29 -30 -31 -32 -33 -33 -33 -33 -33 -33 -33 -34 -36 -38 -39 -39 -39 -39 -39 -39 -38 -37 -35 -34 -34 -34 -35 -35 -35 -33 -32 -30 -29 -29 -28 -28 -28 -30 -31 -33 -35 -37 -36 -34 -34 -34 -35 -37 -37 -35 -34 -33 -34 -36 -38 -37 -36 -36 -36 -38 -39 -40 -41 -43 -43 -44 -46 -48 -49 -30 -28 -26 -25 -26 -27 -29 -33 -40 -47 -55 -62 -67 -70 -73 -75 -74 -73 -70 -66 -61 -57 -55 -53 -50 -47 -47 -48 -50 -52 -54 -53 -52 -52 -52 -54 -56 -57 -59 -62 -63 -64 -65 -66 -68 -69 -69 -69 -66 -63 -60 -57 -55 -54 -53 -52 -51 -51 -51 -52 -53 -53 -53 -53 -52 -52 -52 -51 -50 -50 -50 -51 -52 -52 -53 -53 -54 -54 -54 -54 -52 -52 -52 -55 -58 -60 -62 -62 -61 -59 -56 -55 -55 -56 -57 -58 -58 -59 -59 -58 -58 -59 -62 -64 -64 -61 -57 -55 -52 -50 -50 -51 -50 -50 -50 -50 -49 -50 -51 -53 -54 -55 -56 -56 -53 -53 -53 -52 -51 -49 -48 -49 -51 -53 -54 -55 -55 -56 -56 -57 -57 -58 -59 -61 -64 -67 -70 -72 -74 -74 -73 -70 -68 -67 -67 -67 -67 -66 -64 -61 -58 -56 -53 -51 -48 -46 -44 -44 -44 -45 -47 -49 -51 -51 -51 -52 -53 -54 -55 -56 -56 -56 -59 -61 -61 -59 -56 -55 -58 -62 -65 -66 -66 -65 -64 -63 -63 -63 -64 -65 -65 -64 -65 -66 -68 -69 -70 -71 -72 -72 -72 -72 -71 -71 -70 -70 -70 -71 -73 -74 -76 -77 -78 -77 -76 -75 -74 -70 -65 -62 -60 -59 -59 -58 -58 -57 -57 -57 -57 -56 -56 -57 -57 -57 -56 -56 -55 -53 -52 -51 -50 -50 -51 -51 -50 -47 -44 -43 -44 -46 -46 -46 -47 -48 -52 -56 -58 -59 -57 -55 -54 -54 -57 -58 -58 -57 -56 -57 -58 -58 -59 -58 -58 -57 -57 -58 -59 -60 -63 -66 -71 -74 -76 -77 -78 -79 -81 -83 -86 -88 -90 -90 -90 -90 -89 -87 -85 -84 -83 -83 -83 -84 -84 -83 -82 -82 -80 -79 -78 -77 -75 -73 -71 -68 -65 -63 -60 -58 -57 -56 -54 -51 -47 -44 -43 -43 -44 -42 -38 -34 -31 -29 -29 -29 -30 -31 -33 -34 -34 -34 -36 -37 -38 -38 -40 -41 -42 -42 -41 -41 -40 -39 -39 -38 -37 -35 -34 -34 -34 -34 -34 -33 -32 -31 -30 -29 -28 -28 -28 -29 -30 -31 -33 -35 -37 -35 -34 -33 -34 -35 -35 -35 -34 -34 -34 -35 -37 -38 -37 -36 -35 -35 -37 -39 -40 -41 -43 -44 -45 -47 -48 -50 -30 -30 -29 -27 -27 -28 -30 -36 -44 -51 -57 -61 -65 -69 -73 -75 -75 -73 -70 -65 -60 -55 -53 -52 -51 -49 -49 -51 -53 -54 -55 -55 -54 -54 -54 -56 -57 -58 -60 -61 -62 -62 -63 -65 -66 -67 -67 -68 -66 -63 -59 -55 -53 -51 -50 -49 -49 -49 -50 -52 -53 -54 -54 -53 -52 -52 -51 -50 -49 -48 -46 -47 -49 -51 -52 -52 -52 -52 -52 -50 -48 -48 -49 -52 -55 -57 -59 -60 -59 -56 -53 -51 -52 -53 -55 -56 -58 -58 -58 -57 -57 -58 -61 -64 -63 -60 -55 -53 -51 -50 -50 -51 -50 -50 -51 -51 -50 -50 -51 -52 -53 -53 -53 -52 -50 -50 -50 -50 -50 -50 -49 -50 -52 -54 -56 -57 -57 -58 -59 -59 -60 -60 -60 -62 -65 -68 -71 -73 -74 -74 -74 -71 -69 -68 -68 -68 -68 -67 -65 -62 -58 -55 -53 -50 -47 -44 -43 -43 -44 -45 -48 -51 -52 -52 -50 -50 -51 -52 -54 -55 -55 -57 -59 -61 -60 -57 -54 -53 -56 -59 -63 -64 -64 -63 -62 -62 -62 -63 -63 -64 -64 -64 -66 -68 -69 -69 -69 -70 -70 -70 -70 -70 -70 -69 -69 -69 -70 -71 -72 -74 -77 -79 -80 -78 -75 -72 -69 -66 -63 -61 -60 -59 -59 -59 -58 -57 -56 -56 -56 -57 -57 -58 -58 -58 -57 -56 -55 -53 -52 -52 -51 -50 -50 -49 -48 -45 -42 -41 -43 -45 -46 -46 -46 -48 -52 -55 -57 -57 -55 -53 -53 -54 -57 -58 -57 -56 -54 -55 -56 -56 -56 -56 -56 -56 -56 -57 -59 -60 -63 -66 -70 -73 -75 -76 -77 -79 -81 -83 -86 -88 -89 -90 -89 -89 -87 -85 -84 -82 -82 -83 -84 -84 -83 -83 -83 -82 -81 -80 -79 -77 -76 -74 -71 -69 -66 -63 -60 -59 -57 -56 -54 -51 -47 -44 -43 -43 -44 -43 -39 -35 -32 -30 -30 -30 -30 -31 -32 -33 -34 -35 -37 -40 -42 -43 -44 -45 -45 -45 -44 -43 -42 -41 -40 -39 -38 -36 -34 -33 -33 -33 -33 -32 -31 -31 -30 -29 -28 -28 -28 -29 -30 -32 -33 -36 -36 -34 -33 -33 -34 -34 -35 -35 -34 -34 -34 -35 -35 -36 -36 -36 -35 -34 -36 -38 -39 -41 -43 -44 -45 -47 -49 -50 -29 -30 -30 -29 -29 -31 -34 -40 -47 -53 -57 -59 -64 -69 -72 -74 -74 -72 -69 -65 -60 -55 -52 -51 -51 -51 -51 -53 -55 -56 -56 -55 -55 -55 -56 -56 -57 -58 -59 -59 -60 -61 -62 -63 -64 -65 -66 -67 -66 -64 -60 -55 -51 -49 -47 -46 -47 -48 -49 -51 -53 -54 -54 -53 -52 -51 -50 -49 -47 -45 -43 -44 -46 -48 -48 -48 -48 -48 -48 -47 -46 -46 -46 -48 -50 -53 -55 -57 -57 -56 -53 -50 -50 -52 -53 -54 -56 -57 -57 -56 -56 -57 -61 -63 -63 -59 -54 -53 -52 -51 -50 -50 -50 -50 -50 -51 -51 -51 -51 -52 -51 -51 -51 -51 -49 -48 -47 -49 -51 -50 -50 -51 -53 -56 -58 -59 -59 -59 -60 -61 -61 -61 -62 -63 -65 -68 -72 -74 -75 -75 -74 -72 -70 -69 -69 -69 -68 -67 -65 -61 -57 -56 -53 -50 -46 -43 -42 -43 -45 -46 -50 -53 -54 -53 -51 -51 -51 -51 -52 -53 -54 -56 -58 -59 -58 -56 -53 -53 -55 -58 -61 -62 -61 -60 -60 -61 -62 -63 -63 -64 -63 -65 -68 -70 -71 -70 -69 -69 -69 -69 -69 -69 -69 -68 -68 -68 -69 -70 -71 -74 -77 -79 -80 -77 -73 -69 -66 -64 -62 -61 -59 -58 -58 -58 -57 -57 -57 -57 -57 -58 -59 -58 -58 -57 -57 -56 -54 -52 -52 -52 -51 -51 -50 -49 -46 -43 -41 -42 -43 -45 -46 -46 -46 -49 -52 -55 -55 -55 -53 -53 -53 -55 -57 -57 -56 -54 -53 -54 -54 -54 -54 -54 -55 -55 -55 -57 -58 -60 -63 -66 -69 -71 -73 -75 -76 -79 -81 -83 -85 -87 -88 -88 -88 -87 -86 -84 -82 -82 -82 -83 -84 -83 -83 -83 -83 -83 -82 -81 -80 -78 -76 -74 -72 -69 -67 -64 -61 -59 -57 -55 -53 -51 -48 -46 -44 -44 -44 -43 -40 -37 -34 -32 -30 -30 -29 -29 -30 -32 -33 -35 -38 -40 -42 -44 -45 -45 -46 -45 -45 -44 -43 -42 -41 -40 -39 -36 -35 -33 -33 -32 -32 -31 -31 -31 -30 -30 -29 -28 -27 -29 -30 -32 -34 -35 -35 -33 -32 -32 -33 -34 -35 -35 -34 -34 -34 -34 -34 -34 -35 -35 -35 -35 -35 -36 -39 -41 -42 -44 -45 -47 -48 -50 -31 -31 -32 -33 -33 -35 -38 -43 -48 -52 -56 -59 -64 -69 -72 -73 -73 -71 -69 -65 -61 -56 -53 -51 -51 -52 -53 -54 -56 -57 -57 -56 -56 -56 -55 -55 -56 -57 -57 -57 -57 -59 -60 -61 -62 -63 -64 -65 -65 -65 -62 -57 -50 -47 -45 -46 -47 -48 -49 -52 -54 -55 -55 -53 -51 -49 -49 -47 -46 -44 -42 -43 -43 -44 -44 -44 -45 -46 -48 -48 -46 -45 -45 -47 -48 -50 -52 -54 -54 -53 -52 -51 -51 -52 -53 -53 -54 -55 -54 -54 -55 -57 -62 -63 -61 -57 -53 -53 -53 -52 -50 -49 -49 -49 -50 -50 -51 -52 -52 -52 -51 -51 -51 -50 -49 -47 -47 -48 -49 -50 -51 -52 -54 -57 -59 -60 -60 -60 -61 -61 -62 -63 -63 -64 -66 -69 -72 -74 -75 -75 -75 -72 -72 -70 -68 -68 -68 -67 -65 -61 -57 -56 -54 -51 -46 -43 -43 -44 -46 -48 -51 -54 -56 -54 -53 -52 -52 -51 -52 -52 -53 -54 -56 -57 -57 -56 -53 -52 -53 -56 -58 -60 -59 -58 -59 -60 -62 -63 -63 -64 -64 -67 -69 -71 -72 -71 -70 -69 -68 -69 -69 -69 -69 -68 -68 -68 -68 -69 -71 -74 -77 -79 -79 -75 -70 -66 -64 -63 -62 -61 -59 -58 -58 -58 -57 -56 -57 -58 -59 -61 -61 -59 -57 -56 -56 -55 -53 -52 -51 -51 -51 -51 -50 -49 -46 -43 -42 -42 -43 -45 -46 -47 -49 -51 -54 -55 -54 -53 -52 -53 -55 -56 -57 -57 -55 -54 -53 -53 -53 -53 -53 -54 -54 -54 -54 -56 -58 -60 -62 -64 -67 -69 -71 -73 -76 -78 -81 -83 -85 -86 -87 -87 -86 -85 -84 -83 -82 -81 -83 -83 -83 -83 -82 -83 -83 -83 -83 -82 -80 -78 -76 -74 -72 -69 -67 -64 -62 -60 -57 -55 -53 -52 -51 -49 -46 -45 -44 -43 -40 -37 -35 -33 -31 -29 -28 -28 -29 -29 -30 -32 -35 -38 -41 -43 -43 -43 -44 -44 -44 -43 -42 -42 -41 -40 -39 -37 -35 -34 -33 -32 -32 -32 -32 -32 -32 -30 -29 -28 -27 -29 -30 -32 -34 -35 -34 -33 -32 -32 -33 -34 -35 -35 -34 -34 -33 -33 -33 -33 -33 -33 -34 -35 -35 -37 -39 -41 -43 -44 -46 -47 -48 -50 -33 -33 -34 -36 -38 -39 -41 -43 -47 -51 -55 -59 -64 -69 -72 -73 -72 -71 -69 -65 -61 -57 -55 -53 -53 -54 -55 -55 -55 -57 -58 -58 -58 -57 -55 -54 -54 -54 -55 -55 -56 -57 -58 -59 -60 -61 -62 -63 -62 -62 -60 -57 -51 -47 -45 -46 -48 -49 -50 -52 -55 -57 -56 -53 -50 -48 -48 -46 -45 -44 -42 -42 -42 -42 -43 -42 -43 -45 -47 -48 -47 -46 -46 -47 -48 -48 -49 -50 -50 -50 -50 -51 -53 -54 -54 -54 -54 -53 -52 -52 -54 -58 -62 -63 -60 -55 -52 -52 -52 -51 -50 -48 -48 -48 -48 -49 -49 -50 -50 -50 -51 -50 -50 -49 -48 -47 -47 -48 -49 -51 -52 -54 -55 -57 -58 -59 -61 -62 -62 -62 -63 -64 -65 -66 -68 -71 -73 -74 -75 -75 -75 -73 -72 -69 -67 -67 -67 -67 -65 -61 -57 -56 -54 -52 -48 -45 -45 -46 -47 -50 -52 -54 -55 -55 -54 -54 -53 -52 -52 -52 -51 -52 -54 -56 -56 -55 -54 -52 -53 -54 -57 -58 -57 -57 -58 -60 -62 -63 -64 -65 -67 -68 -70 -70 -71 -71 -70 -68 -67 -68 -69 -69 -69 -69 -69 -68 -68 -69 -71 -73 -76 -78 -77 -71 -66 -64 -63 -62 -61 -60 -59 -59 -59 -58 -58 -57 -57 -59 -61 -63 -62 -59 -58 -56 -55 -54 -52 -51 -50 -50 -50 -51 -50 -49 -46 -43 -42 -42 -42 -44 -46 -48 -50 -53 -54 -55 -54 -52 -53 -54 -56 -57 -57 -57 -55 -53 -52 -52 -52 -52 -53 -53 -54 -53 -53 -54 -57 -59 -61 -63 -65 -68 -70 -72 -75 -78 -80 -82 -84 -85 -85 -85 -85 -83 -82 -82 -82 -82 -83 -83 -83 -82 -82 -82 -83 -84 -84 -83 -81 -79 -76 -74 -72 -70 -67 -65 -63 -60 -58 -55 -54 -53 -52 -50 -49 -48 -46 -43 -40 -38 -35 -34 -32 -30 -29 -29 -29 -29 -29 -30 -33 -35 -37 -39 -39 -39 -40 -41 -42 -42 -41 -41 -41 -40 -39 -37 -36 -34 -33 -33 -32 -32 -32 -32 -32 -31 -29 -28 -27 -28 -30 -32 -34 -35 -35 -33 -32 -32 -33 -34 -35 -35 -34 -33 -33 -33 -32 -31 -31 -32 -33 -34 -36 -38 -39 -41 -43 -45 -47 -47 -48 -49 -35 -35 -36 -38 -41 -42 -42 -42 -45 -49 -54 -58 -63 -67 -71 -73 -73 -71 -68 -64 -61 -58 -57 -56 -55 -56 -55 -55 -56 -57 -59 -59 -59 -58 -56 -54 -53 -53 -54 -55 -55 -55 -56 -57 -59 -60 -60 -60 -60 -59 -58 -55 -50 -47 -46 -47 -49 -50 -52 -54 -56 -58 -56 -53 -49 -48 -48 -47 -46 -45 -44 -43 -43 -44 -44 -44 -43 -44 -45 -47 -47 -46 -46 -46 -47 -46 -45 -46 -47 -47 -48 -51 -55 -58 -58 -57 -55 -53 -51 -51 -53 -58 -62 -62 -59 -54 -51 -51 -51 -50 -49 -47 -46 -46 -47 -48 -47 -47 -48 -49 -49 -49 -49 -49 -48 -47 -46 -48 -49 -51 -53 -54 -54 -56 -58 -60 -61 -62 -63 -63 -64 -66 -67 -69 -71 -73 -75 -76 -76 -76 -76 -74 -72 -69 -67 -67 -66 -65 -62 -59 -57 -56 -56 -55 -52 -50 -48 -48 -49 -51 -54 -55 -55 -55 -55 -55 -55 -53 -52 -50 -49 -50 -53 -55 -55 -55 -54 -53 -53 -54 -55 -56 -56 -56 -57 -59 -62 -64 -66 -68 -69 -69 -69 -68 -68 -69 -69 -69 -67 -67 -67 -68 -68 -69 -69 -69 -69 -69 -71 -73 -75 -76 -73 -68 -64 -63 -63 -63 -61 -60 -59 -59 -59 -59 -58 -58 -58 -59 -61 -62 -61 -59 -58 -57 -56 -54 -52 -51 -50 -50 -50 -51 -51 -49 -46 -44 -42 -41 -41 -43 -45 -48 -51 -54 -55 -55 -54 -53 -54 -54 -55 -56 -56 -56 -55 -53 -52 -51 -51 -51 -52 -53 -53 -53 -52 -53 -55 -57 -60 -62 -64 -67 -70 -72 -74 -77 -79 -81 -83 -84 -84 -84 -83 -82 -81 -81 -82 -83 -83 -83 -82 -81 -81 -82 -83 -84 -84 -83 -81 -78 -76 -74 -72 -70 -68 -65 -63 -61 -58 -56 -54 -53 -52 -51 -50 -49 -47 -43 -40 -38 -36 -34 -33 -33 -32 -32 -31 -30 -29 -29 -31 -32 -34 -35 -36 -36 -36 -38 -39 -40 -40 -40 -40 -40 -39 -38 -37 -35 -34 -34 -33 -32 -31 -31 -31 -30 -29 -27 -27 -28 -30 -33 -34 -35 -35 -34 -33 -33 -34 -34 -35 -35 -34 -33 -33 -33 -31 -30 -30 -31 -33 -33 -35 -37 -39 -40 -43 -46 -47 -48 -49 -49 -37 -37 -39 -41 -41 -41 -40 -41 -43 -48 -53 -57 -60 -64 -68 -71 -74 -71 -67 -63 -60 -59 -59 -58 -56 -55 -56 -57 -58 -59 -60 -60 -60 -59 -57 -54 -53 -53 -54 -54 -54 -54 -55 -56 -57 -58 -57 -56 -57 -57 -56 -54 -50 -47 -46 -47 -49 -51 -53 -55 -57 -58 -55 -51 -48 -47 -48 -49 -49 -49 -47 -46 -46 -47 -47 -46 -45 -45 -45 -46 -46 -45 -44 -44 -44 -42 -41 -42 -44 -45 -48 -52 -57 -61 -61 -60 -57 -53 -51 -51 -53 -58 -63 -63 -59 -54 -50 -50 -50 -49 -47 -46 -45 -45 -46 -46 -45 -46 -46 -47 -48 -48 -49 -48 -48 -46 -46 -47 -49 -51 -52 -52 -53 -55 -57 -59 -61 -62 -63 -64 -66 -68 -69 -70 -72 -75 -78 -78 -77 -76 -75 -74 -71 -69 -67 -66 -65 -63 -60 -58 -56 -57 -57 -57 -56 -53 -51 -50 -50 -53 -55 -56 -55 -54 -55 -55 -55 -53 -50 -48 -48 -50 -52 -54 -54 -54 -54 -53 -53 -53 -55 -55 -55 -55 -56 -60 -63 -65 -67 -69 -71 -70 -68 -66 -66 -67 -68 -68 -67 -66 -66 -66 -67 -69 -70 -70 -69 -69 -71 -72 -73 -73 -69 -65 -64 -63 -64 -63 -62 -60 -59 -59 -60 -60 -60 -60 -59 -59 -59 -60 -60 -58 -57 -56 -55 -53 -52 -51 -51 -51 -51 -51 -51 -49 -46 -44 -42 -41 -41 -42 -45 -49 -52 -54 -55 -55 -55 -54 -54 -54 -55 -55 -56 -55 -54 -53 -52 -51 -51 -51 -52 -53 -54 -53 -52 -53 -54 -57 -59 -62 -64 -67 -70 -72 -74 -77 -79 -80 -81 -82 -82 -82 -81 -80 -80 -81 -82 -83 -83 -82 -81 -80 -80 -81 -82 -83 -83 -82 -80 -78 -75 -73 -71 -70 -68 -66 -63 -61 -58 -56 -54 -53 -52 -51 -51 -50 -48 -44 -41 -39 -37 -35 -34 -36 -36 -35 -33 -31 -29 -29 -29 -30 -32 -33 -34 -34 -36 -37 -38 -38 -38 -39 -40 -40 -39 -38 -37 -36 -35 -35 -34 -33 -31 -30 -30 -30 -29 -28 -27 -28 -31 -33 -34 -35 -36 -35 -35 -34 -35 -35 -36 -35 -34 -33 -33 -33 -31 -30 -30 -31 -32 -32 -33 -36 -39 -40 -42 -45 -48 -49 -49 -49 -40 -41 -42 -41 -40 -40 -40 -40 -42 -46 -50 -55 -58 -61 -64 -68 -72 -70 -65 -61 -59 -60 -60 -58 -56 -56 -57 -58 -59 -60 -61 -61 -60 -59 -57 -54 -52 -52 -52 -52 -52 -53 -54 -55 -55 -55 -54 -53 -54 -54 -54 -53 -50 -47 -47 -48 -49 -51 -54 -56 -57 -56 -52 -50 -47 -47 -48 -50 -52 -52 -51 -50 -50 -50 -50 -49 -48 -47 -47 -46 -45 -43 -41 -40 -40 -38 -38 -38 -41 -44 -48 -54 -59 -63 -64 -63 -59 -54 -51 -51 -54 -58 -63 -64 -61 -56 -52 -50 -49 -48 -46 -45 -44 -44 -45 -44 -44 -44 -45 -46 -46 -46 -47 -48 -47 -46 -46 -46 -48 -50 -51 -52 -52 -54 -57 -59 -60 -62 -64 -65 -67 -69 -70 -71 -74 -77 -80 -80 -78 -76 -74 -73 -71 -69 -67 -66 -64 -62 -59 -58 -57 -57 -57 -58 -57 -54 -51 -50 -51 -54 -56 -56 -56 -54 -54 -55 -54 -52 -49 -47 -48 -51 -53 -53 -53 -53 -53 -52 -52 -53 -55 -55 -55 -55 -58 -62 -65 -67 -68 -70 -71 -69 -67 -65 -64 -65 -66 -67 -67 -65 -64 -65 -66 -68 -69 -70 -70 -71 -71 -72 -72 -70 -67 -64 -63 -64 -64 -63 -62 -60 -59 -60 -61 -61 -62 -62 -61 -59 -58 -58 -58 -57 -56 -55 -54 -53 -52 -51 -50 -50 -51 -50 -49 -47 -45 -44 -43 -42 -42 -43 -45 -48 -52 -54 -55 -55 -54 -54 -55 -55 -55 -55 -55 -55 -55 -54 -53 -52 -51 -50 -51 -52 -53 -53 -53 -53 -54 -56 -59 -61 -64 -67 -70 -73 -75 -77 -78 -80 -80 -81 -81 -81 -80 -80 -80 -81 -82 -83 -82 -81 -81 -80 -80 -81 -82 -83 -83 -81 -80 -78 -75 -73 -71 -70 -68 -66 -63 -61 -59 -56 -54 -53 -52 -52 -52 -51 -48 -45 -43 -40 -38 -37 -36 -37 -37 -36 -33 -31 -29 -28 -27 -29 -30 -31 -33 -34 -36 -37 -37 -37 -37 -38 -39 -39 -38 -37 -37 -36 -36 -36 -34 -33 -31 -30 -30 -30 -29 -28 -28 -29 -31 -33 -34 -35 -36 -37 -36 -36 -36 -36 -36 -35 -33 -32 -32 -32 -31 -30 -30 -30 -31 -31 -32 -34 -37 -39 -42 -45 -48 -49 -50 -49 -43 -44 -43 -41 -40 -40 -41 -42 -43 -46 -50 -54 -59 -60 -62 -64 -67 -67 -64 -61 -59 -58 -58 -57 -56 -56 -57 -59 -60 -61 -61 -61 -60 -59 -56 -54 -51 -50 -50 -50 -50 -51 -52 -53 -52 -51 -50 -50 -51 -51 -52 -51 -49 -48 -49 -49 -50 -52 -54 -55 -54 -52 -49 -47 -47 -47 -47 -50 -52 -54 -55 -54 -53 -52 -52 -50 -49 -48 -47 -47 -44 -41 -38 -35 -35 -36 -36 -36 -39 -43 -50 -56 -60 -63 -65 -64 -60 -55 -53 -53 -55 -59 -63 -67 -67 -63 -57 -52 -50 -48 -47 -45 -44 -44 -44 -43 -43 -43 -43 -43 -43 -43 -44 -46 -46 -45 -45 -46 -47 -50 -51 -52 -53 -55 -57 -59 -61 -62 -64 -66 -67 -69 -70 -72 -75 -78 -80 -80 -78 -76 -74 -72 -70 -68 -67 -66 -64 -62 -60 -60 -60 -59 -58 -58 -56 -54 -51 -50 -51 -53 -55 -56 -56 -55 -55 -54 -54 -51 -48 -48 -49 -51 -53 -54 -53 -53 -52 -52 -52 -53 -55 -55 -55 -57 -60 -64 -67 -68 -68 -69 -69 -68 -67 -65 -64 -64 -64 -65 -64 -63 -63 -64 -66 -68 -69 -69 -70 -71 -71 -71 -69 -67 -64 -62 -63 -64 -65 -64 -62 -61 -60 -60 -61 -63 -64 -65 -62 -60 -58 -57 -57 -57 -55 -54 -53 -52 -52 -51 -50 -50 -50 -49 -47 -44 -43 -43 -44 -44 -43 -43 -45 -47 -51 -54 -55 -55 -55 -55 -56 -56 -56 -56 -56 -56 -55 -55 -53 -52 -51 -50 -51 -51 -52 -53 -53 -53 -54 -56 -59 -61 -65 -68 -72 -74 -76 -77 -78 -79 -79 -80 -80 -80 -80 -79 -80 -81 -82 -82 -81 -81 -81 -80 -80 -81 -82 -82 -82 -80 -79 -77 -74 -73 -72 -70 -68 -66 -64 -61 -59 -57 -55 -53 -53 -53 -52 -50 -47 -44 -42 -41 -40 -39 -38 -37 -36 -35 -32 -30 -27 -25 -25 -26 -28 -30 -32 -34 -35 -36 -37 -37 -37 -37 -37 -37 -37 -36 -36 -36 -36 -35 -33 -32 -30 -29 -29 -30 -30 -29 -28 -29 -31 -33 -34 -35 -37 -38 -37 -37 -36 -36 -36 -34 -33 -32 -31 -32 -31 -31 -30 -30 -31 -31 -31 -33 -35 -38 -41 -45 -48 -50 -50 -50 -43 -43 -41 -39 -40 -41 -43 -43 -45 -48 -50 -54 -59 -62 -61 -60 -60 -62 -63 -61 -58 -55 -54 -54 -54 -55 -56 -58 -59 -60 -60 -60 -60 -58 -55 -52 -49 -48 -47 -47 -48 -49 -50 -50 -49 -48 -47 -46 -48 -50 -49 -48 -47 -47 -48 -50 -51 -52 -53 -52 -50 -47 -46 -46 -46 -47 -48 -50 -52 -54 -55 -56 -55 -53 -51 -48 -47 -47 -48 -47 -44 -40 -36 -31 -30 -32 -34 -35 -38 -44 -50 -56 -60 -63 -65 -64 -61 -57 -54 -54 -56 -59 -63 -65 -67 -67 -63 -57 -52 -50 -48 -46 -44 -42 -42 -42 -43 -43 -44 -44 -43 -43 -43 -43 -43 -43 -44 -45 -47 -49 -52 -54 -55 -56 -59 -61 -62 -62 -64 -65 -66 -68 -70 -73 -76 -78 -79 -78 -76 -74 -73 -70 -68 -67 -65 -65 -64 -63 -62 -62 -63 -61 -60 -58 -57 -54 -52 -51 -52 -54 -55 -56 -56 -56 -55 -54 -53 -51 -49 -49 -50 -52 -53 -54 -55 -55 -53 -52 -52 -54 -56 -57 -58 -60 -63 -66 -68 -68 -67 -67 -67 -67 -67 -65 -64 -63 -63 -63 -63 -62 -62 -63 -65 -67 -67 -68 -69 -70 -71 -69 -67 -64 -62 -61 -62 -63 -64 -63 -62 -61 -61 -62 -62 -64 -65 -66 -64 -60 -58 -57 -56 -56 -54 -53 -52 -52 -52 -51 -50 -50 -49 -47 -44 -41 -41 -43 -45 -45 -44 -43 -43 -45 -50 -53 -55 -55 -56 -56 -56 -56 -56 -56 -56 -56 -56 -55 -54 -52 -51 -51 -51 -51 -51 -52 -52 -53 -54 -56 -59 -62 -66 -69 -73 -75 -77 -77 -78 -79 -79 -79 -79 -79 -79 -79 -80 -81 -81 -81 -81 -80 -80 -80 -80 -80 -81 -81 -81 -79 -78 -75 -73 -72 -71 -70 -69 -67 -64 -62 -60 -58 -55 -54 -53 -53 -52 -49 -45 -42 -41 -40 -40 -39 -39 -38 -36 -35 -32 -29 -25 -23 -22 -23 -26 -28 -31 -33 -34 -35 -36 -37 -37 -36 -36 -37 -37 -36 -36 -36 -35 -34 -32 -30 -29 -28 -29 -29 -30 -30 -29 -30 -31 -33 -34 -36 -37 -38 -38 -37 -37 -36 -35 -34 -32 -31 -31 -32 -32 -31 -30 -31 -31 -31 -31 -32 -34 -37 -40 -44 -47 -49 -50 -51 -39 -37 -36 -37 -40 -42 -44 -45 -46 -49 -52 -55 -59 -63 -62 -58 -55 -56 -58 -58 -56 -52 -50 -51 -52 -53 -54 -55 -56 -58 -59 -59 -58 -55 -52 -49 -48 -46 -46 -45 -46 -47 -47 -47 -46 -44 -43 -42 -46 -48 -48 -46 -45 -45 -46 -48 -49 -50 -49 -49 -48 -46 -45 -46 -47 -48 -49 -50 -52 -54 -55 -55 -53 -51 -49 -47 -46 -45 -46 -47 -47 -44 -39 -31 -27 -28 -31 -34 -38 -44 -51 -56 -59 -61 -63 -63 -62 -59 -56 -56 -57 -58 -61 -63 -64 -64 -61 -57 -53 -50 -47 -44 -42 -40 -40 -42 -43 -44 -44 -44 -45 -45 -43 -41 -42 -42 -44 -46 -48 -50 -52 -53 -55 -57 -59 -61 -61 -61 -62 -63 -64 -65 -68 -71 -75 -77 -78 -76 -75 -74 -72 -69 -66 -65 -64 -64 -64 -63 -63 -64 -64 -63 -61 -59 -58 -56 -54 -53 -53 -54 -56 -56 -57 -56 -55 -54 -53 -52 -51 -50 -51 -53 -54 -55 -56 -57 -55 -54 -54 -55 -57 -58 -60 -61 -63 -66 -67 -67 -67 -65 -65 -66 -66 -65 -64 -63 -63 -62 -62 -62 -62 -63 -64 -65 -65 -66 -68 -69 -69 -68 -65 -62 -61 -60 -61 -62 -63 -62 -61 -60 -60 -61 -62 -63 -65 -66 -64 -61 -58 -56 -56 -55 -54 -53 -52 -53 -53 -52 -51 -50 -47 -44 -40 -39 -40 -42 -45 -45 -43 -42 -41 -44 -49 -52 -55 -56 -57 -57 -57 -56 -56 -56 -56 -57 -56 -55 -54 -53 -52 -52 -51 -51 -51 -51 -53 -54 -55 -57 -60 -63 -67 -70 -74 -75 -76 -77 -77 -78 -79 -79 -79 -79 -78 -79 -80 -81 -81 -81 -80 -80 -80 -79 -79 -80 -80 -80 -79 -78 -77 -74 -73 -72 -71 -71 -70 -68 -65 -63 -61 -59 -56 -54 -53 -52 -50 -47 -44 -40 -40 -40 -39 -38 -38 -37 -36 -35 -33 -30 -27 -23 -21 -21 -24 -27 -30 -31 -33 -34 -36 -36 -36 -36 -36 -36 -36 -36 -34 -34 -33 -32 -30 -29 -29 -28 -29 -29 -30 -29 -29 -30 -31 -34 -35 -37 -38 -38 -39 -38 -37 -36 -34 -34 -33 -32 -31 -32 -31 -30 -30 -30 -31 -32 -32 -34 -35 -36 -39 -42 -45 -48 -49 -51 -35 -32 -31 -34 -38 -41 -43 -45 -46 -51 -56 -60 -61 -65 -65 -61 -54 -50 -51 -52 -52 -50 -48 -48 -49 -51 -51 -52 -53 -56 -59 -59 -57 -53 -49 -46 -45 -44 -44 -45 -46 -46 -45 -43 -43 -42 -40 -39 -42 -45 -45 -44 -43 -43 -44 -45 -47 -47 -46 -46 -47 -48 -48 -48 -48 -48 -49 -50 -52 -54 -54 -53 -50 -48 -46 -45 -44 -43 -44 -46 -48 -47 -42 -33 -26 -25 -28 -33 -38 -44 -50 -54 -57 -58 -59 -60 -60 -58 -57 -56 -56 -57 -59 -60 -60 -59 -58 -56 -53 -49 -45 -41 -39 -39 -41 -42 -43 -44 -44 -45 -46 -46 -44 -41 -41 -43 -45 -46 -49 -52 -53 -54 -55 -57 -58 -58 -58 -58 -58 -59 -61 -63 -66 -69 -73 -75 -77 -76 -75 -73 -71 -67 -64 -62 -62 -63 -63 -64 -64 -65 -64 -62 -60 -59 -58 -57 -56 -55 -53 -54 -56 -57 -57 -56 -54 -53 -53 -52 -52 -52 -53 -54 -55 -56 -57 -58 -57 -56 -55 -56 -57 -58 -60 -61 -63 -65 -66 -66 -66 -64 -64 -64 -65 -65 -64 -64 -63 -63 -63 -62 -62 -61 -61 -62 -63 -65 -67 -68 -67 -65 -63 -61 -60 -59 -60 -60 -61 -60 -59 -58 -58 -60 -61 -63 -64 -64 -62 -60 -58 -56 -55 -54 -54 -54 -54 -54 -54 -53 -51 -49 -46 -42 -39 -38 -40 -42 -44 -45 -43 -41 -41 -44 -48 -52 -54 -56 -57 -57 -57 -57 -56 -56 -57 -57 -57 -56 -55 -54 -53 -53 -52 -52 -52 -52 -53 -55 -57 -59 -61 -64 -68 -71 -73 -74 -75 -76 -77 -78 -79 -79 -79 -78 -78 -79 -81 -82 -81 -81 -80 -79 -79 -79 -79 -79 -79 -79 -78 -78 -76 -74 -73 -72 -71 -71 -71 -69 -67 -65 -62 -60 -58 -56 -54 -53 -51 -48 -44 -41 -41 -41 -40 -37 -37 -36 -35 -35 -35 -33 -30 -26 -23 -22 -23 -26 -29 -30 -31 -33 -34 -34 -35 -36 -37 -36 -36 -35 -33 -32 -32 -31 -31 -30 -29 -29 -29 -29 -29 -28 -28 -30 -32 -34 -36 -37 -38 -39 -39 -38 -37 -36 -35 -34 -34 -33 -32 -32 -31 -31 -30 -30 -31 -31 -32 -34 -35 -36 -38 -41 -44 -46 -48 -50 -32 -29 -28 -30 -35 -38 -41 -44 -47 -52 -59 -65 -66 -67 -68 -65 -58 -50 -46 -46 -48 -48 -46 -45 -46 -48 -50 -52 -53 -55 -58 -59 -59 -55 -49 -44 -42 -42 -42 -42 -44 -44 -43 -41 -40 -40 -39 -37 -38 -41 -42 -42 -42 -42 -42 -43 -44 -44 -44 -45 -46 -48 -50 -51 -51 -51 -51 -52 -52 -52 -51 -49 -46 -45 -44 -43 -41 -40 -41 -44 -47 -47 -42 -34 -26 -24 -27 -32 -38 -44 -49 -52 -55 -55 -55 -55 -56 -56 -55 -55 -55 -56 -57 -57 -57 -56 -55 -54 -52 -47 -42 -39 -38 -39 -41 -43 -44 -44 -45 -46 -47 -47 -44 -41 -41 -42 -44 -46 -49 -52 -54 -55 -57 -57 -56 -55 -55 -54 -55 -56 -59 -63 -66 -69 -71 -74 -76 -76 -75 -73 -69 -66 -63 -61 -61 -62 -63 -65 -65 -64 -61 -59 -58 -57 -57 -57 -56 -54 -53 -54 -56 -57 -57 -55 -53 -52 -52 -53 -53 -53 -54 -56 -57 -58 -58 -59 -59 -58 -58 -58 -58 -58 -59 -60 -62 -64 -65 -65 -65 -64 -63 -63 -64 -64 -63 -63 -63 -63 -63 -62 -61 -60 -60 -61 -63 -64 -66 -65 -64 -62 -61 -60 -58 -58 -58 -59 -60 -60 -59 -57 -57 -59 -60 -62 -62 -62 -61 -59 -58 -57 -55 -55 -55 -55 -56 -55 -55 -54 -51 -47 -44 -41 -38 -39 -40 -42 -44 -44 -43 -41 -42 -44 -48 -52 -54 -56 -57 -58 -58 -57 -57 -57 -57 -57 -57 -57 -56 -55 -54 -54 -54 -53 -53 -53 -54 -56 -57 -59 -62 -65 -68 -70 -71 -73 -74 -76 -77 -78 -79 -79 -79 -78 -79 -80 -81 -82 -82 -81 -80 -79 -79 -79 -79 -79 -79 -79 -79 -78 -76 -74 -73 -72 -72 -72 -71 -71 -69 -67 -65 -62 -59 -57 -56 -54 -52 -49 -46 -44 -43 -42 -40 -37 -35 -34 -34 -35 -35 -35 -33 -30 -26 -25 -25 -27 -29 -31 -32 -31 -31 -32 -34 -35 -37 -37 -36 -34 -32 -32 -32 -32 -31 -31 -31 -30 -29 -28 -27 -27 -28 -30 -33 -35 -37 -38 -38 -38 -38 -38 -37 -36 -35 -35 -34 -34 -33 -32 -32 -32 -31 -31 -31 -31 -31 -32 -34 -35 -37 -40 -43 -46 -48 -49 -32 -29 -28 -29 -32 -35 -39 -43 -48 -55 -62 -69 -71 -70 -70 -67 -62 -54 -47 -45 -45 -46 -43 -42 -43 -45 -49 -51 -53 -54 -56 -59 -59 -56 -51 -44 -41 -40 -40 -40 -41 -41 -40 -39 -40 -41 -41 -40 -41 -41 -41 -41 -42 -41 -40 -40 -41 -43 -44 -45 -47 -49 -52 -54 -55 -54 -53 -53 -52 -50 -47 -44 -42 -41 -40 -38 -36 -36 -38 -41 -45 -45 -42 -34 -26 -24 -25 -31 -38 -43 -47 -51 -53 -53 -52 -52 -52 -52 -52 -53 -53 -53 -54 -54 -55 -55 -54 -53 -49 -44 -39 -38 -38 -40 -42 -43 -44 -44 -44 -46 -47 -47 -44 -42 -41 -41 -42 -44 -47 -50 -52 -55 -57 -56 -53 -51 -50 -51 -53 -56 -59 -63 -66 -68 -69 -71 -74 -75 -75 -73 -69 -65 -61 -60 -60 -62 -64 -65 -65 -63 -59 -57 -55 -56 -56 -56 -56 -54 -53 -55 -57 -58 -58 -55 -53 -52 -53 -54 -54 -54 -55 -57 -58 -59 -59 -60 -60 -60 -60 -60 -59 -58 -58 -59 -61 -63 -64 -64 -64 -63 -63 -63 -63 -63 -62 -62 -62 -62 -62 -61 -61 -60 -60 -60 -61 -62 -63 -62 -61 -60 -60 -58 -57 -56 -56 -57 -59 -59 -59 -58 -57 -57 -59 -60 -60 -60 -59 -57 -56 -56 -55 -55 -56 -57 -57 -58 -57 -55 -51 -46 -42 -40 -39 -40 -41 -42 -43 -44 -43 -43 -43 -45 -48 -52 -54 -56 -57 -58 -58 -58 -58 -58 -58 -58 -58 -57 -56 -55 -55 -55 -54 -54 -53 -53 -54 -56 -57 -59 -62 -65 -67 -69 -70 -72 -74 -76 -77 -79 -80 -80 -79 -79 -80 -80 -81 -82 -82 -81 -80 -79 -79 -79 -79 -80 -80 -80 -80 -79 -77 -74 -73 -72 -72 -72 -72 -72 -71 -70 -67 -64 -61 -59 -57 -55 -53 -50 -48 -46 -43 -41 -39 -36 -34 -33 -32 -33 -35 -35 -34 -32 -30 -28 -28 -30 -32 -34 -35 -34 -32 -32 -33 -35 -36 -36 -35 -33 -32 -32 -32 -32 -32 -32 -31 -30 -29 -28 -27 -27 -29 -31 -34 -36 -37 -37 -37 -37 -37 -37 -37 -36 -35 -35 -35 -35 -34 -33 -33 -32 -32 -31 -31 -31 -31 -32 -33 -35 -37 -40 -43 -45 -47 -48 -33 -30 -28 -28 -29 -34 -39 -45 -52 -58 -65 -70 -73 -71 -70 -68 -65 -59 -52 -47 -45 -44 -42 -40 -40 -42 -46 -49 -52 -54 -56 -57 -58 -56 -51 -45 -40 -38 -38 -38 -39 -38 -38 -38 -41 -43 -44 -45 -46 -44 -42 -42 -42 -41 -39 -38 -39 -42 -45 -47 -49 -51 -53 -55 -55 -55 -54 -53 -50 -47 -43 -40 -38 -36 -34 -33 -32 -33 -34 -38 -41 -42 -40 -34 -26 -23 -25 -30 -38 -42 -46 -49 -53 -52 -51 -50 -50 -50 -51 -51 -52 -51 -51 -51 -53 -54 -54 -51 -46 -40 -38 -38 -39 -40 -41 -43 -44 -44 -44 -45 -46 -46 -45 -43 -41 -39 -40 -43 -46 -48 -51 -53 -54 -52 -49 -47 -47 -50 -53 -57 -60 -63 -65 -66 -67 -69 -71 -73 -73 -72 -69 -64 -61 -60 -60 -62 -64 -64 -63 -61 -58 -55 -54 -55 -56 -56 -54 -53 -54 -56 -58 -58 -58 -56 -54 -53 -53 -54 -54 -54 -55 -57 -59 -60 -60 -61 -61 -61 -61 -61 -60 -59 -58 -59 -61 -62 -63 -63 -63 -63 -63 -63 -62 -61 -61 -61 -60 -60 -60 -60 -60 -59 -58 -57 -57 -57 -58 -58 -58 -57 -58 -57 -55 -55 -55 -56 -58 -59 -59 -58 -57 -56 -57 -58 -58 -58 -57 -56 -55 -54 -55 -56 -58 -60 -60 -60 -58 -54 -50 -46 -43 -42 -42 -42 -42 -42 -43 -44 -44 -45 -45 -45 -48 -52 -55 -57 -58 -58 -59 -59 -58 -58 -58 -59 -58 -58 -57 -56 -55 -54 -54 -53 -53 -53 -54 -55 -57 -59 -61 -64 -66 -68 -70 -72 -74 -76 -78 -80 -80 -80 -80 -80 -81 -81 -81 -81 -81 -80 -79 -78 -78 -79 -79 -80 -81 -81 -81 -79 -77 -75 -73 -73 -73 -72 -72 -71 -72 -72 -69 -65 -62 -60 -58 -55 -53 -50 -49 -46 -42 -39 -37 -35 -34 -32 -31 -32 -33 -34 -34 -33 -31 -30 -30 -32 -34 -36 -37 -37 -35 -34 -34 -34 -34 -35 -35 -34 -32 -32 -33 -33 -32 -31 -30 -30 -29 -28 -29 -30 -32 -35 -36 -37 -36 -35 -34 -35 -35 -36 -36 -36 -35 -34 -35 -35 -34 -33 -32 -32 -32 -31 -31 -31 -32 -32 -33 -35 -37 -40 -43 -45 -47 -48 -36 -33 -29 -27 -27 -33 -40 -47 -55 -61 -66 -70 -73 -73 -72 -69 -67 -63 -56 -50 -46 -45 -43 -40 -39 -40 -44 -47 -50 -52 -54 -55 -55 -53 -50 -44 -38 -36 -35 -36 -37 -37 -37 -38 -42 -45 -47 -49 -50 -48 -45 -43 -42 -42 -40 -37 -36 -39 -44 -48 -52 -54 -54 -53 -52 -51 -51 -49 -46 -42 -38 -35 -32 -31 -29 -29 -30 -31 -32 -34 -37 -38 -36 -31 -25 -23 -24 -30 -37 -41 -45 -49 -52 -52 -52 -51 -50 -50 -51 -51 -51 -50 -49 -49 -52 -55 -54 -48 -42 -38 -38 -38 -40 -41 -42 -43 -43 -44 -44 -44 -45 -46 -46 -44 -41 -39 -39 -42 -46 -49 -51 -52 -51 -48 -46 -45 -46 -50 -55 -59 -61 -62 -63 -64 -66 -68 -69 -71 -71 -71 -68 -64 -62 -60 -61 -62 -63 -62 -61 -59 -56 -54 -53 -54 -55 -55 -54 -53 -55 -56 -56 -56 -56 -55 -54 -54 -54 -54 -53 -53 -54 -57 -59 -60 -61 -62 -61 -61 -61 -61 -61 -60 -60 -59 -60 -61 -62 -62 -62 -63 -63 -62 -60 -59 -58 -58 -57 -57 -56 -57 -57 -56 -55 -54 -53 -54 -55 -56 -56 -56 -56 -56 -54 -54 -54 -55 -57 -59 -60 -60 -58 -56 -55 -56 -56 -56 -56 -55 -54 -53 -54 -57 -61 -63 -63 -61 -58 -54 -50 -47 -45 -45 -45 -44 -44 -44 -45 -46 -46 -45 -45 -45 -48 -52 -55 -57 -58 -59 -59 -59 -59 -59 -59 -59 -59 -59 -58 -56 -55 -54 -53 -52 -52 -52 -53 -55 -57 -59 -61 -63 -66 -68 -71 -73 -75 -77 -79 -80 -81 -81 -81 -81 -81 -81 -80 -80 -80 -79 -78 -78 -78 -79 -80 -81 -82 -82 -81 -79 -76 -75 -74 -73 -73 -73 -72 -71 -71 -71 -69 -66 -63 -60 -58 -55 -53 -50 -48 -44 -40 -37 -36 -35 -34 -33 -31 -30 -31 -32 -32 -32 -31 -31 -31 -34 -35 -37 -38 -39 -39 -37 -35 -33 -32 -34 -35 -34 -33 -33 -33 -33 -32 -31 -30 -29 -28 -29 -30 -33 -35 -37 -38 -37 -36 -34 -32 -32 -33 -34 -35 -35 -33 -31 -32 -34 -33 -32 -31 -32 -31 -31 -31 -31 -32 -33 -33 -35 -37 -40 -42 -44 -46 -47 -38 -35 -31 -28 -27 -32 -39 -48 -55 -62 -67 -70 -73 -75 -74 -72 -68 -65 -59 -52 -48 -46 -45 -42 -40 -40 -43 -46 -48 -50 -51 -52 -51 -49 -46 -41 -36 -33 -34 -35 -35 -35 -36 -37 -41 -44 -47 -48 -49 -46 -45 -44 -44 -43 -42 -39 -36 -35 -39 -44 -49 -53 -51 -50 -49 -49 -47 -44 -40 -36 -33 -31 -29 -28 -28 -29 -31 -32 -32 -33 -35 -36 -34 -29 -22 -20 -22 -28 -36 -41 -46 -49 -52 -52 -51 -50 -50 -50 -51 -50 -50 -49 -48 -50 -53 -56 -53 -45 -38 -35 -37 -38 -40 -41 -42 -43 -44 -44 -44 -44 -45 -46 -46 -45 -42 -40 -40 -43 -47 -50 -52 -52 -49 -46 -44 -45 -48 -53 -58 -60 -61 -61 -62 -63 -65 -66 -68 -69 -70 -69 -67 -64 -62 -61 -61 -62 -62 -60 -59 -57 -55 -53 -52 -53 -54 -54 -54 -54 -55 -54 -53 -53 -54 -54 -54 -55 -55 -54 -53 -53 -54 -57 -59 -61 -61 -61 -61 -61 -60 -60 -61 -61 -61 -61 -61 -61 -61 -61 -61 -61 -61 -59 -58 -57 -56 -54 -53 -52 -52 -52 -52 -52 -51 -51 -50 -51 -53 -54 -54 -55 -55 -54 -54 -53 -54 -56 -57 -58 -59 -60 -59 -57 -55 -54 -55 -55 -55 -55 -54 -53 -55 -58 -62 -64 -64 -62 -58 -54 -51 -49 -49 -49 -48 -48 -47 -46 -47 -47 -47 -47 -46 -46 -48 -51 -55 -57 -58 -59 -60 -60 -60 -60 -60 -60 -60 -60 -59 -58 -56 -55 -53 -52 -52 -52 -53 -55 -57 -59 -61 -64 -66 -70 -72 -74 -75 -77 -79 -80 -80 -80 -81 -82 -82 -81 -80 -79 -78 -78 -77 -77 -78 -79 -81 -82 -82 -82 -81 -79 -76 -75 -74 -74 -74 -73 -72 -71 -70 -69 -68 -66 -63 -60 -58 -56 -53 -50 -47 -43 -39 -36 -36 -36 -35 -34 -31 -29 -28 -28 -29 -30 -31 -32 -32 -34 -35 -36 -37 -39 -40 -39 -38 -34 -32 -33 -34 -35 -34 -34 -33 -33 -33 -32 -31 -29 -29 -30 -32 -35 -38 -39 -39 -38 -36 -34 -32 -31 -31 -32 -33 -33 -31 -29 -30 -33 -33 -32 -31 -32 -32 -31 -31 -31 -31 -32 -33 -34 -36 -39 -41 -43 -45 -45 -39 -36 -33 -30 -28 -32 -39 -47 -55 -60 -65 -70 -73 -75 -76 -74 -70 -65 -59 -54 -50 -48 -48 -44 -41 -41 -43 -45 -47 -47 -48 -48 -47 -45 -41 -37 -33 -32 -32 -33 -34 -35 -35 -36 -39 -43 -46 -47 -48 -44 -42 -42 -43 -44 -45 -44 -42 -39 -37 -39 -43 -46 -46 -45 -44 -43 -41 -38 -35 -31 -29 -28 -28 -27 -27 -29 -30 -30 -30 -31 -33 -33 -32 -28 -21 -19 -22 -29 -36 -41 -45 -49 -51 -51 -50 -49 -49 -49 -49 -49 -49 -49 -49 -51 -54 -57 -53 -44 -37 -34 -36 -37 -38 -39 -41 -43 -43 -43 -44 -44 -45 -46 -47 -46 -44 -42 -42 -44 -48 -51 -52 -51 -47 -44 -44 -47 -51 -57 -59 -60 -60 -60 -60 -62 -64 -66 -67 -68 -69 -68 -66 -64 -62 -62 -61 -61 -60 -59 -57 -55 -53 -52 -51 -53 -54 -54 -54 -54 -53 -52 -52 -52 -52 -53 -54 -56 -57 -56 -55 -54 -55 -58 -60 -61 -61 -61 -61 -61 -60 -60 -61 -62 -62 -61 -61 -61 -60 -60 -59 -58 -57 -56 -55 -54 -53 -52 -50 -48 -47 -47 -48 -48 -49 -49 -49 -49 -52 -53 -53 -53 -53 -53 -53 -54 -55 -57 -58 -58 -59 -59 -59 -58 -57 -55 -54 -55 -55 -56 -55 -55 -56 -58 -61 -64 -64 -61 -58 -55 -52 -52 -53 -53 -52 -51 -49 -48 -48 -49 -49 -48 -47 -47 -49 -52 -55 -57 -58 -59 -60 -60 -60 -60 -60 -61 -61 -61 -60 -59 -57 -56 -55 -53 -53 -53 -54 -55 -57 -59 -61 -64 -67 -71 -73 -75 -75 -77 -79 -79 -80 -80 -81 -82 -82 -81 -79 -78 -77 -76 -77 -77 -78 -80 -82 -83 -83 -82 -80 -78 -76 -75 -74 -74 -74 -74 -72 -71 -69 -68 -67 -65 -64 -61 -59 -57 -54 -50 -47 -43 -40 -37 -37 -37 -37 -35 -32 -29 -27 -26 -27 -29 -30 -32 -33 -34 -35 -36 -36 -37 -39 -40 -40 -37 -34 -33 -33 -33 -33 -33 -33 -34 -34 -34 -32 -31 -31 -32 -35 -37 -39 -40 -39 -38 -36 -35 -34 -32 -31 -31 -32 -32 -31 -29 -29 -31 -32 -32 -31 -31 -31 -31 -30 -30 -31 -32 -33 -34 -35 -37 -40 -42 -43 -44 -40 -38 -36 -33 -31 -32 -38 -46 -54 -59 -64 -68 -71 -72 -74 -74 -70 -65 -60 -56 -52 -50 -49 -46 -43 -41 -42 -44 -45 -45 -44 -43 -42 -39 -36 -33 -31 -29 -29 -31 -33 -35 -36 -37 -37 -40 -44 -46 -47 -43 -40 -40 -42 -44 -46 -46 -46 -44 -42 -40 -39 -40 -40 -40 -39 -37 -35 -33 -31 -28 -27 -27 -27 -27 -28 -29 -29 -29 -28 -28 -29 -30 -30 -27 -22 -20 -23 -30 -36 -41 -44 -47 -49 -49 -49 -48 -47 -47 -47 -47 -47 -47 -48 -50 -53 -56 -53 -45 -38 -34 -35 -36 -37 -38 -40 -42 -43 -43 -44 -44 -46 -46 -47 -48 -46 -45 -44 -45 -48 -50 -50 -49 -45 -43 -45 -49 -54 -58 -60 -60 -59 -59 -60 -62 -64 -66 -67 -68 -68 -67 -66 -64 -63 -61 -60 -60 -59 -59 -57 -55 -53 -52 -52 -53 -54 -54 -53 -52 -51 -51 -52 -53 -53 -53 -55 -58 -60 -58 -57 -56 -57 -59 -61 -61 -62 -62 -62 -61 -61 -60 -61 -62 -62 -61 -61 -59 -58 -56 -55 -54 -52 -52 -51 -51 -50 -49 -48 -45 -44 -44 -45 -46 -48 -48 -48 -49 -51 -52 -52 -52 -52 -52 -53 -54 -56 -57 -58 -58 -59 -59 -61 -61 -60 -57 -55 -55 -57 -58 -58 -57 -56 -57 -60 -62 -61 -59 -57 -56 -55 -55 -56 -56 -55 -53 -51 -50 -50 -50 -50 -49 -48 -49 -51 -53 -56 -57 -58 -59 -60 -60 -61 -61 -62 -62 -62 -62 -61 -60 -58 -57 -56 -55 -55 -55 -55 -55 -56 -58 -61 -64 -68 -71 -73 -75 -75 -76 -78 -79 -80 -80 -82 -83 -82 -81 -79 -77 -76 -76 -76 -77 -78 -79 -81 -82 -82 -81 -79 -77 -75 -75 -75 -75 -75 -74 -73 -70 -68 -67 -66 -65 -63 -62 -60 -58 -55 -51 -48 -44 -41 -39 -38 -38 -38 -37 -34 -30 -28 -26 -27 -28 -29 -31 -33 -35 -37 -37 -36 -37 -39 -41 -41 -39 -36 -34 -32 -31 -31 -31 -32 -34 -35 -35 -33 -32 -33 -36 -38 -39 -40 -40 -39 -37 -37 -36 -35 -34 -33 -33 -33 -33 -32 -31 -30 -30 -30 -31 -31 -30 -30 -29 -29 -30 -30 -31 -32 -33 -34 -36 -38 -40 -41 -42 -41 -40 -38 -36 -33 -33 -38 -46 -55 -60 -63 -66 -68 -69 -70 -70 -68 -65 -62 -58 -54 -52 -50 -48 -45 -42 -41 -42 -43 -43 -41 -39 -36 -33 -31 -29 -28 -28 -28 -30 -33 -34 -36 -37 -36 -40 -43 -46 -46 -44 -41 -40 -40 -43 -45 -47 -48 -48 -47 -44 -40 -36 -36 -37 -37 -35 -32 -29 -27 -27 -26 -26 -27 -28 -30 -30 -29 -28 -27 -26 -26 -27 -27 -26 -23 -23 -26 -31 -37 -42 -44 -45 -46 -48 -48 -48 -47 -46 -46 -45 -46 -46 -46 -47 -50 -52 -51 -46 -40 -35 -34 -35 -36 -37 -40 -42 -43 -44 -44 -46 -47 -48 -48 -48 -48 -47 -48 -48 -49 -49 -48 -46 -44 -43 -45 -50 -56 -60 -60 -58 -57 -58 -60 -62 -64 -66 -67 -68 -67 -67 -66 -64 -62 -60 -58 -59 -59 -58 -58 -56 -54 -53 -53 -53 -54 -54 -52 -50 -50 -51 -54 -56 -56 -55 -57 -59 -61 -60 -59 -59 -60 -61 -62 -63 -63 -63 -62 -62 -61 -61 -61 -61 -61 -60 -58 -56 -54 -53 -53 -51 -50 -48 -48 -48 -48 -48 -47 -46 -45 -44 -44 -46 -47 -47 -47 -48 -50 -51 -51 -51 -51 -51 -53 -55 -56 -57 -58 -58 -58 -59 -61 -62 -61 -59 -56 -56 -57 -59 -60 -59 -58 -58 -59 -59 -58 -57 -57 -57 -58 -58 -58 -58 -56 -54 -52 -51 -51 -52 -52 -51 -50 -50 -52 -54 -55 -57 -58 -60 -61 -61 -62 -63 -64 -64 -63 -63 -62 -61 -60 -59 -58 -57 -56 -56 -56 -55 -54 -56 -60 -64 -68 -71 -73 -74 -74 -75 -77 -79 -80 -81 -82 -82 -82 -80 -77 -76 -75 -75 -77 -77 -77 -78 -79 -80 -81 -80 -78 -76 -75 -75 -75 -76 -75 -74 -72 -69 -67 -66 -65 -65 -64 -63 -61 -59 -56 -52 -49 -46 -43 -41 -39 -39 -38 -37 -35 -32 -29 -27 -28 -28 -28 -29 -31 -34 -37 -38 -37 -38 -40 -41 -41 -40 -39 -36 -33 -31 -29 -29 -31 -34 -35 -35 -35 -35 -36 -39 -40 -41 -42 -40 -39 -37 -37 -36 -36 -35 -34 -34 -33 -33 -33 -33 -30 -28 -28 -28 -29 -29 -28 -28 -29 -29 -30 -30 -31 -32 -33 -34 -36 -38 -40 -41 -42 -42 -41 -39 -35 -35 -38 -44 -54 -61 -64 -66 -67 -67 -66 -65 -64 -62 -60 -57 -55 -53 -51 -50 -47 -44 -42 -42 -43 -43 -41 -37 -34 -30 -27 -25 -25 -25 -26 -27 -31 -33 -35 -37 -36 -39 -42 -45 -45 -45 -43 -41 -40 -41 -43 -45 -48 -49 -49 -46 -42 -36 -33 -35 -36 -35 -31 -28 -25 -25 -25 -26 -27 -29 -31 -31 -29 -27 -26 -26 -24 -25 -26 -27 -26 -27 -31 -36 -41 -44 -45 -45 -45 -48 -49 -50 -49 -47 -45 -44 -44 -44 -45 -46 -47 -49 -50 -47 -42 -36 -34 -34 -36 -37 -39 -41 -43 -45 -46 -48 -49 -50 -50 -49 -49 -50 -50 -51 -51 -49 -47 -45 -44 -44 -46 -51 -56 -59 -59 -57 -55 -56 -59 -62 -64 -66 -66 -66 -66 -65 -65 -64 -62 -60 -59 -59 -59 -59 -58 -57 -57 -56 -55 -55 -55 -54 -52 -50 -51 -53 -57 -59 -59 -58 -59 -60 -60 -61 -62 -62 -62 -62 -63 -63 -63 -62 -62 -62 -62 -62 -61 -60 -59 -57 -55 -52 -51 -51 -51 -50 -48 -47 -47 -47 -47 -48 -47 -46 -45 -44 -44 -45 -46 -47 -48 -49 -50 -50 -50 -50 -51 -52 -53 -54 -55 -57 -58 -58 -58 -60 -62 -62 -62 -60 -58 -56 -56 -58 -60 -61 -60 -59 -58 -57 -56 -55 -55 -56 -58 -59 -59 -57 -57 -55 -53 -52 -53 -53 -53 -52 -51 -51 -52 -54 -55 -57 -59 -61 -62 -63 -64 -64 -64 -64 -64 -63 -63 -62 -61 -60 -60 -59 -58 -57 -56 -55 -54 -55 -59 -63 -67 -70 -72 -73 -74 -75 -76 -78 -79 -81 -82 -82 -81 -79 -76 -75 -74 -75 -77 -77 -77 -77 -77 -78 -80 -80 -78 -76 -75 -75 -75 -75 -74 -73 -71 -68 -66 -66 -65 -65 -64 -63 -62 -60 -56 -53 -50 -48 -44 -42 -40 -38 -38 -37 -35 -33 -31 -30 -30 -29 -27 -27 -30 -33 -36 -38 -38 -40 -41 -40 -39 -40 -40 -39 -36 -33 -29 -27 -28 -31 -34 -35 -36 -37 -38 -39 -41 -41 -42 -40 -39 -38 -37 -37 -36 -36 -35 -34 -33 -33 -33 -33 -32 -29 -27 -26 -27 -27 -27 -28 -28 -29 -29 -29 -30 -30 -31 -32 -34 -37 -38 -39 -43 -44 -44 -41 -38 -36 -38 -43 -52 -61 -65 -66 -67 -68 -66 -63 -59 -57 -56 -55 -53 -52 -51 -50 -48 -46 -44 -44 -44 -44 -41 -37 -33 -28 -25 -22 -22 -22 -23 -24 -28 -32 -34 -36 -36 -38 -40 -42 -43 -44 -43 -42 -42 -41 -42 -44 -46 -49 -49 -47 -43 -37 -33 -33 -35 -36 -33 -29 -26 -24 -23 -24 -26 -29 -32 -33 -31 -28 -27 -25 -23 -24 -26 -29 -30 -33 -37 -43 -47 -48 -48 -47 -47 -49 -51 -52 -52 -49 -46 -44 -43 -43 -44 -45 -48 -50 -52 -49 -43 -36 -33 -34 -36 -38 -39 -42 -44 -47 -49 -51 -52 -53 -52 -51 -51 -52 -53 -53 -51 -48 -45 -44 -43 -45 -47 -50 -54 -57 -57 -56 -54 -55 -57 -59 -62 -65 -65 -65 -65 -64 -64 -63 -62 -61 -60 -60 -59 -59 -59 -58 -58 -58 -57 -57 -56 -55 -54 -54 -55 -57 -59 -60 -61 -61 -61 -61 -62 -62 -63 -63 -63 -62 -62 -63 -62 -62 -62 -62 -62 -61 -59 -58 -56 -54 -51 -49 -48 -49 -50 -49 -48 -47 -47 -47 -47 -48 -48 -46 -46 -46 -46 -46 -45 -46 -48 -51 -51 -51 -50 -51 -51 -52 -53 -54 -55 -56 -57 -57 -58 -61 -62 -61 -60 -60 -58 -56 -55 -57 -59 -61 -61 -60 -57 -56 -55 -54 -54 -55 -56 -58 -58 -57 -57 -57 -55 -54 -55 -55 -54 -53 -52 -52 -53 -54 -56 -58 -59 -61 -63 -63 -63 -63 -64 -63 -63 -63 -63 -63 -63 -62 -62 -61 -60 -58 -57 -55 -54 -56 -59 -64 -67 -69 -71 -72 -73 -75 -76 -78 -80 -81 -82 -82 -81 -78 -75 -74 -75 -76 -77 -77 -77 -77 -77 -77 -79 -80 -78 -76 -76 -76 -75 -75 -74 -72 -69 -67 -66 -66 -66 -65 -65 -64 -62 -60 -56 -53 -51 -48 -45 -43 -40 -38 -37 -37 -36 -34 -33 -32 -32 -30 -28 -27 -30 -33 -37 -38 -39 -40 -41 -40 -37 -37 -38 -39 -40 -37 -33 -29 -26 -27 -30 -33 -36 -37 -38 -39 -40 -41 -41 -40 -39 -38 -37 -37 -37 -36 -35 -34 -33 -32 -32 -32 -31 -30 -29 -28 -28 -27 -27 -27 -27 -28 -28 -29 -29 -29 -29 -31 -32 -35 -37 -38 -46 -47 -46 -44 -40 -38 -38 -43 -51 -60 -65 -68 -69 -69 -67 -62 -57 -54 -53 -53 -52 -51 -50 -48 -47 -46 -45 -46 -45 -44 -40 -36 -32 -29 -25 -22 -21 -20 -20 -22 -25 -29 -31 -33 -34 -36 -37 -39 -40 -42 -43 -44 -44 -43 -41 -42 -44 -47 -47 -46 -44 -39 -33 -31 -32 -34 -34 -32 -30 -27 -25 -24 -26 -29 -34 -36 -33 -30 -26 -22 -20 -22 -27 -33 -34 -37 -42 -49 -53 -53 -52 -50 -49 -51 -53 -55 -54 -50 -47 -44 -43 -43 -44 -46 -49 -53 -55 -51 -44 -36 -33 -34 -36 -38 -41 -44 -47 -50 -52 -54 -55 -56 -55 -54 -55 -55 -55 -53 -50 -46 -44 -43 -43 -45 -47 -50 -53 -55 -55 -54 -54 -55 -55 -57 -60 -63 -63 -63 -64 -63 -63 -62 -61 -61 -61 -60 -60 -60 -59 -60 -60 -60 -60 -60 -59 -58 -57 -57 -58 -59 -61 -61 -62 -63 -63 -63 -62 -62 -62 -63 -62 -61 -61 -61 -61 -61 -61 -61 -60 -59 -57 -55 -53 -51 -49 -48 -47 -48 -49 -48 -48 -47 -48 -48 -48 -48 -48 -47 -47 -47 -48 -47 -46 -47 -50 -52 -52 -51 -51 -52 -53 -54 -54 -54 -54 -54 -55 -56 -58 -60 -61 -60 -58 -57 -56 -55 -55 -56 -58 -61 -61 -60 -56 -54 -54 -54 -55 -55 -56 -56 -57 -57 -57 -56 -56 -56 -57 -56 -55 -54 -52 -52 -52 -54 -56 -58 -60 -62 -63 -63 -63 -64 -63 -62 -62 -62 -63 -64 -63 -63 -62 -62 -61 -59 -57 -56 -56 -58 -61 -64 -67 -68 -70 -71 -73 -74 -76 -78 -80 -81 -82 -82 -82 -80 -78 -77 -77 -77 -77 -77 -77 -77 -77 -78 -79 -80 -79 -77 -76 -76 -75 -74 -73 -71 -69 -67 -66 -66 -66 -66 -65 -64 -61 -59 -56 -54 -51 -48 -45 -42 -39 -38 -37 -37 -36 -35 -34 -34 -34 -32 -30 -28 -31 -34 -37 -39 -40 -41 -41 -40 -37 -35 -35 -37 -41 -42 -40 -35 -29 -25 -27 -30 -33 -35 -37 -38 -39 -41 -41 -40 -39 -37 -36 -36 -36 -36 -35 -34 -33 -32 -31 -30 -30 -29 -28 -27 -27 -27 -26 -27 -27 -27 -28 -28 -28 -28 -28 -29 -31 -33 -35 -37 -48 -50 -50 -48 -43 -39 -39 -42 -49 -57 -64 -68 -70 -70 -67 -63 -58 -53 -51 -51 -51 -50 -48 -47 -46 -45 -45 -46 -44 -41 -37 -33 -31 -29 -27 -23 -20 -18 -18 -19 -21 -23 -25 -27 -29 -33 -35 -37 -38 -40 -42 -44 -46 -45 -41 -38 -38 -43 -45 -45 -43 -40 -34 -30 -29 -30 -31 -32 -32 -31 -29 -29 -30 -32 -35 -38 -36 -32 -26 -18 -16 -20 -28 -36 -39 -41 -45 -50 -55 -55 -54 -52 -51 -52 -54 -55 -55 -52 -48 -45 -44 -44 -44 -45 -48 -52 -56 -54 -47 -38 -34 -35 -38 -40 -43 -46 -50 -53 -56 -57 -57 -57 -56 -56 -57 -57 -56 -53 -49 -47 -44 -42 -41 -43 -47 -50 -53 -54 -54 -54 -54 -54 -55 -56 -58 -60 -60 -61 -62 -63 -62 -62 -61 -61 -60 -60 -60 -60 -60 -61 -61 -62 -62 -62 -61 -60 -59 -60 -61 -62 -62 -62 -61 -62 -63 -64 -62 -61 -61 -61 -60 -59 -59 -59 -59 -59 -59 -59 -58 -56 -54 -53 -51 -49 -48 -48 -48 -48 -49 -48 -48 -48 -50 -50 -49 -49 -47 -47 -47 -48 -49 -48 -48 -49 -51 -53 -52 -52 -53 -54 -56 -56 -55 -55 -54 -53 -53 -55 -57 -59 -61 -60 -59 -55 -53 -53 -54 -57 -59 -61 -61 -59 -55 -53 -53 -55 -57 -56 -56 -57 -58 -58 -57 -56 -55 -56 -57 -57 -56 -54 -52 -52 -52 -54 -57 -59 -61 -62 -63 -63 -64 -64 -64 -63 -62 -62 -62 -62 -62 -61 -61 -61 -60 -59 -58 -58 -58 -60 -63 -66 -67 -68 -69 -70 -73 -75 -77 -79 -80 -82 -83 -83 -82 -80 -79 -78 -78 -78 -78 -77 -77 -77 -77 -78 -79 -80 -79 -78 -77 -75 -74 -74 -73 -72 -69 -68 -67 -67 -67 -66 -65 -63 -61 -58 -56 -53 -51 -48 -45 -42 -39 -38 -38 -38 -37 -37 -36 -36 -35 -34 -32 -31 -32 -34 -37 -39 -40 -42 -42 -41 -37 -36 -36 -38 -41 -43 -44 -42 -37 -30 -27 -27 -29 -31 -35 -37 -39 -40 -40 -40 -38 -36 -35 -35 -35 -35 -34 -33 -33 -31 -30 -29 -28 -27 -26 -26 -26 -26 -26 -26 -26 -26 -27 -28 -28 -28 -28 -28 -30 -31 -33 -35 -50 -52 -53 -50 -45 -40 -39 -42 -48 -55 -62 -66 -68 -68 -66 -62 -58 -54 -51 -51 -50 -48 -47 -45 -44 -43 -43 -43 -41 -38 -34 -30 -29 -29 -27 -24 -19 -17 -17 -19 -19 -19 -20 -22 -25 -28 -33 -36 -37 -38 -39 -41 -43 -46 -43 -37 -33 -35 -41 -42 -41 -39 -35 -31 -28 -28 -30 -31 -31 -31 -31 -33 -34 -36 -39 -42 -39 -33 -23 -13 -13 -19 -28 -37 -42 -45 -47 -50 -52 -54 -55 -54 -51 -51 -52 -53 -54 -52 -49 -47 -45 -44 -45 -46 -47 -50 -53 -54 -50 -42 -36 -36 -38 -41 -45 -48 -52 -56 -59 -59 -58 -57 -57 -57 -58 -58 -56 -54 -51 -49 -46 -43 -41 -42 -46 -51 -54 -55 -55 -54 -54 -54 -55 -56 -57 -57 -58 -59 -60 -62 -62 -62 -61 -60 -60 -60 -60 -60 -60 -61 -62 -63 -63 -64 -63 -62 -61 -62 -62 -63 -62 -61 -61 -61 -62 -63 -62 -61 -60 -59 -58 -57 -57 -57 -58 -57 -56 -55 -55 -54 -53 -52 -50 -48 -48 -48 -50 -50 -50 -50 -50 -50 -51 -51 -50 -49 -47 -47 -47 -48 -48 -49 -49 -51 -52 -53 -53 -53 -53 -55 -56 -56 -56 -56 -55 -53 -52 -53 -56 -59 -61 -61 -60 -56 -54 -54 -57 -60 -61 -61 -60 -57 -54 -54 -55 -57 -58 -58 -58 -59 -60 -60 -58 -56 -55 -56 -57 -57 -55 -53 -52 -52 -53 -56 -58 -59 -61 -62 -62 -63 -64 -65 -64 -63 -63 -63 -62 -61 -61 -60 -59 -60 -60 -60 -59 -59 -60 -63 -66 -68 -68 -68 -69 -70 -73 -75 -77 -80 -82 -83 -83 -83 -81 -80 -79 -78 -78 -79 -78 -77 -76 -77 -78 -79 -80 -81 -80 -78 -77 -75 -74 -74 -73 -72 -70 -68 -68 -68 -67 -66 -64 -62 -60 -58 -56 -53 -51 -48 -45 -42 -40 -39 -38 -39 -39 -38 -38 -38 -37 -35 -33 -32 -32 -34 -36 -39 -41 -43 -43 -41 -38 -37 -37 -39 -41 -43 -44 -44 -41 -36 -32 -28 -26 -27 -31 -35 -38 -40 -40 -39 -37 -35 -34 -33 -33 -33 -33 -33 -32 -31 -29 -28 -27 -26 -25 -24 -25 -26 -26 -26 -26 -26 -26 -28 -28 -28 -28 -28 -29 -30 -31 -33