From ab4819e15eead4f2b0ea2c59310b310329bc8fc7 Mon Sep 17 00:00:00 2001 From: wangfiox Date: Sat, 17 Aug 2024 20:51:51 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85h-f=E7=9A=84output?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../expect/output/00_comment2.out | 2 + .../expect/output/17_maximal_clique.out | 2 + .../expect/output/19_search.out | 8 + .../expect/output/22_matrix_multiply.out | 6 + hidden_functional_c/expect/output/35_math.out | 5 + .../expect/output/36_rotate.out | 22 +- hidden_functional_c/expect/output/37_dct.out | 32 +- .../expect/output/38_light2d.out | 384 +++++++++--------- .../expect/output/39_fp_params.out | 6 +- hidden_functional_c/sy/29_long_line.sy | 4 +- hidden_functional_c/sy/36_rotate.sy | 149 +++---- hidden_functional_c/sy/37_dct.sy | 225 +++++----- 12 files changed, 410 insertions(+), 435 deletions(-) create mode 100644 hidden_functional_c/expect/output/00_comment2.out create mode 100644 hidden_functional_c/expect/output/17_maximal_clique.out create mode 100644 hidden_functional_c/expect/output/19_search.out create mode 100644 hidden_functional_c/expect/output/22_matrix_multiply.out diff --git a/hidden_functional_c/expect/output/00_comment2.out b/hidden_functional_c/expect/output/00_comment2.out new file mode 100644 index 0000000..6277742 --- /dev/null +++ b/hidden_functional_c/expect/output/00_comment2.out @@ -0,0 +1,2 @@ + +3 \ No newline at end of file diff --git a/hidden_functional_c/expect/output/17_maximal_clique.out b/hidden_functional_c/expect/output/17_maximal_clique.out new file mode 100644 index 0000000..c393a51 --- /dev/null +++ b/hidden_functional_c/expect/output/17_maximal_clique.out @@ -0,0 +1,2 @@ +3 +0 \ No newline at end of file diff --git a/hidden_functional_c/expect/output/19_search.out b/hidden_functional_c/expect/output/19_search.out new file mode 100644 index 0000000..691da4c --- /dev/null +++ b/hidden_functional_c/expect/output/19_search.out @@ -0,0 +1,8 @@ +1 +4 +-1 +4 +10 +-1 + +0 \ No newline at end of file diff --git a/hidden_functional_c/expect/output/22_matrix_multiply.out b/hidden_functional_c/expect/output/22_matrix_multiply.out new file mode 100644 index 0000000..c4bc743 --- /dev/null +++ b/hidden_functional_c/expect/output/22_matrix_multiply.out @@ -0,0 +1,6 @@ +110 70 30 +278 174 70 +446 278 110 +614 382 150 + +0 \ No newline at end of file diff --git a/hidden_functional_c/expect/output/35_math.out b/hidden_functional_c/expect/output/35_math.out index e69de29..84eac3b 100644 --- a/hidden_functional_c/expect/output/35_math.out +++ b/hidden_functional_c/expect/output/35_math.out @@ -0,0 +1,5 @@ +0x1.19999ap+0 0x1.35c29p+0 0x1.0c7ebcp+0 0x1.8089d8p+1 0x1.8663fep-4 0x1.90dabep+3 0x1.5ea04ap+0 +0x1.19999ap+1 0x1.35c29p+2 -0x1.241baep+4 0x1.c5d666p-4 - - - +0x1.a66666p+1 0x1.5c7aep+3 0x1.d10c0ep+0 0x1.b1c9f2p+4 0x1.31a4e8p+0 - 0x1.70c228p-10 + +0 \ No newline at end of file diff --git a/hidden_functional_c/expect/output/36_rotate.out b/hidden_functional_c/expect/output/36_rotate.out index 24954c3..7b7abc0 100644 --- a/hidden_functional_c/expect/output/36_rotate.out +++ b/hidden_functional_c/expect/output/36_rotate.out @@ -34,27 +34,27 @@ P2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 132 132 132 132 132 132 133 132 133 133 131 131 159 138 136 134 133 132 132 132 132 132 132 132 133 132 133 133 132 133 133 133 144 144 138 140 136 137 85 38 39 39 30 21 26 15 16 144 37 96 11 19 37 14 57 255 112 187 47 30 124 255 240 240 238 254 104 47 38 73 142 142 134 136 144 140 144 136 133 137 138 132 138 148 130 132 133 132 132 132 133 132 132 132 133 133 133 132 133 131 143 143 140 143 132 138 138 131 133 132 132 132 133 132 132 133 133 132 133 132 132 132 132 132 132 133 132 133 132 133 133 133 133 132 132 132 132 133 132 132 132 133 133 133 132 132 133 132 133 132 133 133 133 133 133 132 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 132 133 133 133 133 132 132 133 133 133 133 130 129 160 142 134 134 132 133 133 133 132 132 132 132 132 133 133 132 132 132 132 134 132 145 137 144 138 138 152 151 29 36 40 29 72 72 165 255 255 255 55 155 16 71 65 255 255 255 232 230 75 247 243 240 242 255 216 216 36 16 136 140 132 138 140 139 140 141 133 142 131 129 131 145 137 130 133 133 133 133 132 132 132 132 133 132 133 133 133 131 142 140 142 139 132 132 140 131 133 132 132 132 133 133 132 132 132 132 132 132 132 133 132 132 132 133 132 132 133 133 132 133 133 133 133 132 133 133 132 132 133 132 133 132 132 132 133 132 133 133 133 132 133 132 132 132 133 133 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 132 132 133 132 133 133 132 132 132 132 133 132 129 146 142 128 134 133 133 132 133 133 132 132 133 132 132 132 132 132 132 132 132 132 145 146 144 146 134 151 94 29 36 43 29 63 255 255 255 255 255 253 155 238 255 249 255 255 255 255 230 237 248 247 240 255 255 124 44 20 78 153 140 133 138 144 138 141 136 136 142 140 129 137 145 133 132 132 133 133 132 132 132 133 132 132 132 132 132 132 139 145 140 139 139 131 145 137 132 132 132 132 132 132 132 132 133 133 132 132 133 132 132 132 132 133 133 133 133 133 133 133 133 132 133 132 133 133 133 133 132 132 132 133 132 132 132 133 132 132 133 132 132 132 132 133 132 133 132 132 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 132 132 132 133 132 132 132 133 132 132 132 133 132 131 143 149 128 132 136 133 132 132 132 132 132 132 132 132 132 133 133 132 132 132 132 146 144 142 148 138 131 183 71 38 43 56 66 235 90 119 28 72 19 52 52 143 50 145 83 226 151 255 255 244 255 248 77 24 29 24 25 51 145 134 132 141 142 140 140 140 133 145 135 132 132 146 138 132 133 132 132 132 132 132 132 132 132 132 133 132 133 134 141 138 144 134 134 140 145 128 132 133 132 132 132 132 132 133 132 132 132 133 132 133 132 132 132 133 132 133 132 133 132 132 132 133 133 133 133 133 132 132 132 132 132 133 132 132 133 133 132 132 133 132 132 132 133 133 132 132 132 133 132 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 132 132 132 133 132 132 132 133 132 132 132 133 132 131 143 149 128 132 136 133 132 132 132 132 132 132 132 132 132 133 133 132 132 132 132 146 144 142 148 138 131 183 71 38 43 56 66 235 90 119 28 72 19 52 52 143 50 145 83 226 151 255 255 244 255 248 77 24 29 24 25 51 145 134 132 141 141 140 140 140 133 145 135 132 132 146 138 132 133 132 132 132 132 132 132 132 132 132 133 132 133 134 141 138 144 134 134 140 145 128 132 133 132 132 132 132 132 133 132 132 132 133 132 133 132 132 132 133 132 133 132 133 132 132 132 133 133 133 133 133 132 132 132 132 132 133 132 132 133 133 132 132 133 132 132 132 133 133 132 132 132 133 132 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 132 132 132 132 133 132 132 132 133 133 132 133 132 131 128 165 159 132 135 132 132 132 132 133 132 132 133 133 133 132 132 133 133 135 132 134 146 135 146 136 127 155 58 21 43 39 27 21 19 22 22 20 20 24 21 24 24 20 20 46 23 100 81 255 255 213 27 19 29 39 121 153 136 137 135 133 143 138 140 137 137 138 147 131 133 145 134 134 134 133 132 132 132 132 132 133 132 132 133 133 133 143 146 140 140 140 128 147 138 133 133 132 133 133 132 132 133 132 132 133 132 133 132 133 132 133 133 133 132 132 133 133 133 133 132 132 133 132 133 132 132 133 132 132 133 132 132 132 133 132 133 133 132 133 132 132 132 133 133 132 132 132 132 133 132 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 132 132 133 133 133 132 133 132 132 133 133 132 133 133 133 129 166 173 132 129 133 133 133 133 133 133 132 133 132 133 133 132 133 133 133 134 133 148 137 145 146 135 176 101 22 18 16 94 14 63 30 129 59 172 78 78 23 62 20 34 24 18 21 21 79 93 94 22 33 128 81 160 149 133 133 133 136 144 141 140 141 133 145 139 129 129 146 140 133 133 133 133 132 133 133 132 132 133 133 133 133 131 133 146 135 145 134 134 141 145 130 132 132 133 133 133 132 133 132 133 133 133 133 132 133 133 133 132 132 133 132 133 133 133 133 132 133 133 133 132 133 132 132 133 132 132 133 132 132 133 132 132 132 133 132 132 132 133 132 132 132 132 132 133 132 132 132 132 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 132 132 133 133 133 132 133 132 132 133 133 132 133 133 133 129 166 173 132 129 133 133 133 133 133 133 132 133 132 133 133 132 133 133 133 134 133 148 137 145 146 135 176 101 22 18 16 94 14 63 30 129 59 172 78 78 23 62 20 34 24 18 21 21 79 93 94 22 33 128 81 160 149 133 133 133 136 136 141 140 141 133 145 139 129 129 146 140 133 133 133 133 132 133 133 132 132 133 133 133 133 131 133 146 135 145 134 134 141 145 130 132 132 133 133 133 132 133 132 133 133 133 133 132 133 133 133 132 132 133 132 133 133 133 133 132 133 133 133 132 133 132 132 133 132 132 133 132 132 133 132 132 132 133 132 132 132 133 132 132 132 132 132 133 132 132 132 132 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 132 132 132 133 133 133 132 132 132 133 133 133 132 133 133 129 134 173 138 134 133 132 132 133 133 133 132 132 132 133 133 132 133 132 133 131 131 148 141 145 164 155 47 11 11 18 127 94 255 213 255 129 255 172 255 173 255 139 209 34 70 18 22 16 8 71 71 22 41 128 171 134 136 131 131 133 130 144 140 143 140 133 137 139 128 139 151 132 134 133 132 133 132 132 133 133 133 133 132 133 132 129 140 140 140 145 141 135 145 131 132 132 132 133 132 132 132 132 132 133 133 133 132 133 133 132 132 132 133 133 132 132 132 133 133 132 132 132 132 132 133 132 132 133 132 132 133 133 133 133 132 132 133 132 133 132 132 133 133 132 132 132 132 133 133 132 132 133 133 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 133 133 132 132 132 133 132 132 132 133 132 132 132 133 132 132 129 128 176 176 126 134 132 133 133 133 132 132 132 132 132 132 132 133 133 132 133 130 147 141 169 169 87 58 105 255 255 254 255 255 255 248 255 246 252 245 255 254 255 255 255 255 150 218 41 68 11 24 35 21 79 79 149 151 132 132 132 135 143 143 141 143 132 140 134 128 132 147 136 131 132 132 133 133 133 133 133 132 133 133 132 132 131 133 145 137 144 133 130 145 135 131 133 133 132 132 132 133 133 133 132 133 133 133 132 133 133 132 133 132 133 133 132 133 132 133 132 132 132 132 132 133 132 132 132 132 133 132 132 132 132 133 132 132 133 132 132 132 132 133 132 132 132 132 133 133 133 132 133 133 133 132 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 133 133 133 132 132 132 133 133 132 133 133 132 133 133 132 132 132 133 130 160 185 126 132 132 132 133 132 133 132 132 132 133 133 132 132 133 133 136 136 135 145 155 47 100 255 255 255 252 247 245 246 247 247 246 248 248 246 246 247 250 247 254 248 255 255 255 255 160 160 35 53 16 16 69 82 148 148 134 132 143 140 142 140 136 133 146 131 133 150 133 131 132 132 132 132 133 132 132 132 132 132 132 132 127 140 140 140 148 142 136 145 128 133 132 132 132 132 132 132 133 132 132 133 132 132 133 132 132 132 132 133 133 132 132 133 132 132 132 132 133 132 132 133 133 132 132 133 133 133 133 133 132 132 132 132 133 132 132 132 132 132 133 132 132 132 132 132 132 133 132 133 132 133 133 133 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 133 133 132 132 132 133 132 133 132 132 133 132 132 132 132 132 133 133 130 152 152 154 125 133 132 132 133 133 132 132 132 133 133 133 133 132 133 133 134 138 160 91 91 46 252 249 247 246 247 248 248 247 247 247 247 246 246 246 247 247 247 245 244 247 247 254 249 255 255 233 252 70 70 16 18 123 149 133 133 143 143 141 142 132 135 140 132 131 135 141 130 133 132 132 132 132 133 132 133 132 132 133 133 132 135 143 138 143 126 128 143 135 132 133 132 133 132 132 132 133 133 132 133 132 132 132 132 133 132 133 133 133 133 133 133 133 132 133 132 132 132 133 132 132 132 133 132 132 132 132 132 132 133 132 132 132 133 133 132 132 132 132 132 132 133 132 133 132 132 132 132 132 132 133 132 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 133 133 132 132 132 133 132 133 132 132 133 132 132 132 132 132 133 133 130 152 152 154 125 133 132 132 133 133 132 132 132 133 133 133 133 132 133 133 134 138 160 91 91 46 252 249 247 246 247 248 248 247 247 247 247 246 246 246 247 247 247 245 244 247 247 254 249 255 255 233 252 70 70 16 18 123 149 133 133 140 143 141 142 132 135 140 132 131 135 141 130 133 132 132 132 132 133 132 133 132 132 133 133 132 135 143 138 143 126 128 143 135 132 133 132 133 132 132 132 133 133 132 133 132 132 132 132 133 132 133 133 133 133 133 133 133 132 133 132 132 132 133 132 132 132 133 132 132 132 132 132 132 133 132 132 132 133 133 132 132 132 132 132 132 133 132 133 132 132 132 132 132 132 133 132 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 132 133 133 132 133 132 133 133 133 132 132 133 133 132 133 133 132 133 133 130 123 190 161 129 134 132 133 133 132 133 132 133 133 133 133 133 132 133 132 134 130 160 134 6 122 255 246 247 247 247 247 247 247 247 247 247 247 246 247 247 247 247 247 244 247 247 247 247 248 255 255 252 255 63 44 31 108 149 133 133 142 139 144 140 140 135 146 132 132 134 131 132 132 132 133 133 133 132 133 133 133 132 132 133 129 145 136 138 146 126 135 144 131 133 133 132 132 132 132 132 133 132 132 133 133 132 132 132 132 132 132 133 132 133 133 132 132 132 133 132 132 132 132 132 132 132 132 132 133 133 133 132 132 133 133 132 133 132 132 132 133 132 133 132 132 132 132 133 133 132 132 132 133 133 133 132 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 132 132 133 132 132 132 132 133 132 133 132 133 133 132 132 133 132 133 133 130 127 148 188 127 128 132 133 133 133 133 132 133 132 133 133 132 132 132 132 133 129 171 91 28 21 255 250 247 247 247 246 247 245 247 247 247 247 247 247 247 247 247 247 247 247 247 247 246 246 248 248 254 255 255 215 25 47 152 134 136 142 141 139 144 134 139 142 132 132 132 132 131 134 130 137 132 130 132 131 132 131 132 132 132 131 143 147 147 148 130 130 146 134 133 133 132 133 132 132 133 132 133 133 132 132 133 132 132 132 132 133 133 132 132 132 132 132 133 132 132 132 133 133 132 132 132 133 132 132 133 133 133 133 133 133 132 133 132 133 133 132 133 132 132 132 132 132 133 132 132 132 132 132 133 133 132 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 132 132 133 132 132 132 132 133 132 133 132 133 133 132 132 133 132 133 133 130 127 148 188 127 128 132 133 133 133 133 132 133 132 133 133 132 132 132 132 133 129 171 91 28 21 255 250 247 247 247 246 247 245 247 247 247 247 247 247 247 247 247 247 247 247 247 247 246 246 248 248 254 255 255 215 25 47 152 134 136 136 141 139 144 134 139 142 132 132 132 132 131 134 130 137 132 130 132 131 132 131 132 132 132 131 143 147 147 148 130 130 146 134 133 133 132 133 132 132 133 132 133 133 132 132 133 132 132 132 132 133 133 132 132 132 132 132 133 132 132 132 133 133 132 132 132 133 132 132 133 133 133 133 133 133 132 133 132 133 133 132 133 132 132 132 132 132 133 132 132 132 132 132 133 133 132 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 133 133 132 132 132 132 132 133 132 133 132 132 132 132 133 133 132 133 132 133 131 132 139 181 130 123 134 131 132 132 133 132 133 133 132 132 132 132 132 132 133 133 146 168 6 57 255 247 247 247 247 246 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 245 246 246 247 247 255 244 38 31 127 143 139 129 137 138 149 142 142 131 169 144 164 158 143 158 158 154 152 156 151 156 151 135 153 134 146 131 133 142 140 141 148 131 139 140 128 132 132 133 133 132 132 132 132 132 132 132 133 132 133 133 132 133 133 133 132 132 133 132 132 133 132 132 133 132 133 133 133 132 133 132 132 133 133 132 132 133 132 133 132 132 133 133 132 132 132 132 133 133 133 132 133 132 132 133 133 133 133 133 -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 133 133 132 132 132 133 132 133 133 133 133 133 133 132 132 133 133 133 132 132 133 124 124 181 184 123 133 132 132 132 133 132 133 133 132 132 133 132 132 132 133 129 153 67 67 57 253 247 247 247 247 247 247 247 247 247 247 248 247 247 247 247 247 247 247 247 247 247 247 246 247 247 255 199 199 38 36 127 141 132 140 154 154 149 173 161 129 157 54 164 103 143 50 101 31 86 86 151 86 151 95 151 112 157 157 133 155 140 150 138 129 139 147 128 132 132 132 132 132 132 133 132 133 132 133 133 133 133 133 132 133 132 132 132 132 133 132 132 132 132 132 133 132 133 132 132 132 133 132 132 132 133 132 132 132 132 132 132 133 133 133 133 133 133 133 133 132 133 132 132 133 132 132 133 132 132 132 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 133 133 132 132 132 133 132 133 133 133 133 133 133 132 132 133 133 133 132 132 133 124 124 181 184 123 133 132 132 132 133 132 133 133 132 132 133 132 132 132 133 129 153 67 67 57 253 247 247 247 247 247 247 247 247 247 247 248 247 247 247 247 247 247 247 247 247 247 247 246 247 247 255 199 199 38 36 127 141 132 140 137 154 149 173 161 129 157 54 164 103 143 50 101 31 86 86 151 86 151 95 151 112 157 157 133 155 140 150 138 129 139 147 128 132 132 132 132 132 132 133 132 133 132 133 133 133 133 133 132 133 132 132 132 132 133 132 132 132 132 132 133 132 133 132 132 132 133 132 132 132 133 132 132 132 132 132 132 133 133 133 133 133 133 133 133 132 133 132 132 133 132 132 133 132 132 132 0 0 0 0 0 0 0 0 0 0 0 0 0 0 132 132 133 133 133 133 132 132 133 133 133 133 133 133 132 133 132 132 133 133 132 132 132 128 174 189 123 123 134 133 132 133 132 132 133 132 132 132 132 133 133 133 133 127 167 22 183 255 247 247 247 247 247 248 247 247 247 247 247 247 247 247 247 248 247 247 247 247 247 247 247 247 247 255 209 30 38 132 150 150 143 162 176 69 80 9 102 12 28 20 14 81 32 164 14 67 21 77 22 82 21 21 34 22 63 31 112 81 162 162 146 130 146 141 134 133 133 132 133 132 133 132 132 132 133 132 132 132 133 133 133 133 133 132 133 133 132 133 132 132 133 132 132 132 132 133 132 133 132 132 132 132 133 133 133 133 133 132 132 132 132 132 133 133 133 132 133 133 132 133 133 133 133 132 133 132 133 133 -0 0 0 0 0 0 0 0 0 0 0 0 0 142 141 141 134 133 133 132 132 133 132 132 133 132 132 132 132 132 133 132 132 133 132 132 133 133 127 160 149 125 133 132 133 132 132 132 132 133 132 132 133 132 132 132 132 137 73 73 121 255 247 247 247 247 247 247 247 247 247 247 247 247 247 247 248 247 247 247 247 247 247 247 247 247 249 255 62 62 31 141 172 65 67 7 10 10 8 115 88 245 210 251 147 251 221 249 250 236 250 250 190 251 181 248 168 230 106 106 28 43 51 44 142 122 146 153 131 133 131 132 132 132 133 132 133 132 132 132 132 132 133 132 132 132 133 132 133 133 132 133 133 132 132 133 133 132 133 132 133 132 133 132 133 132 132 132 132 132 133 133 133 133 132 132 133 133 132 132 132 133 132 133 133 133 132 133 132 132 133 132 +0 0 0 0 0 0 0 0 0 0 0 0 0 142 141 141 134 133 133 132 132 133 132 132 133 132 132 132 132 132 133 132 132 133 132 132 133 133 127 160 149 125 133 132 133 132 132 132 132 133 132 132 133 132 132 132 132 137 73 73 121 255 247 247 247 247 247 247 247 247 247 247 247 247 247 247 248 247 247 247 247 247 247 247 247 247 249 255 62 62 31 141 172 65 67 7 64 10 8 115 88 245 210 251 147 251 221 249 250 236 250 250 190 251 181 248 168 230 106 106 28 43 51 44 142 122 146 153 131 133 131 132 132 132 133 132 133 132 132 132 132 132 133 132 132 132 133 132 133 133 132 133 133 132 132 133 133 132 133 132 133 132 133 132 133 132 132 132 132 132 133 133 133 133 132 132 133 133 132 132 132 133 132 133 133 133 132 133 132 132 133 132 0 0 0 0 0 0 0 0 0 0 0 0 0 133 142 144 132 132 132 133 133 132 133 132 132 132 133 132 133 133 132 133 133 133 133 133 131 133 126 153 160 160 130 133 132 133 133 132 132 132 132 132 132 132 133 133 132 130 138 44 255 248 248 248 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 246 246 247 255 148 25 73 14 8 8 7 143 145 252 251 236 250 232 239 205 213 206 204 221 217 212 210 208 211 212 215 215 243 218 247 236 215 239 91 91 42 58 135 140 158 112 146 155 138 143 133 132 132 132 133 132 132 133 133 133 132 132 132 133 132 132 132 133 132 132 132 133 133 133 133 132 132 132 132 132 132 132 133 133 132 132 132 133 132 133 132 132 132 132 132 133 132 132 133 133 132 133 133 132 133 133 132 133 -0 0 0 0 0 0 0 0 0 0 0 0 134 133 133 144 136 132 132 132 132 132 132 132 133 132 132 133 133 133 133 133 132 132 133 133 133 133 130 153 192 125 129 132 132 133 133 132 133 132 132 132 132 132 132 133 132 160 53 44 197 248 249 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 246 250 255 242 18 25 11 14 120 135 252 252 249 252 250 236 210 209 208 207 207 206 229 221 233 211 207 208 207 212 214 211 212 210 209 236 220 239 250 149 213 63 63 140 63 112 52 133 115 145 145 132 133 132 132 132 132 133 133 133 133 133 132 133 133 132 133 133 133 132 132 133 133 133 132 132 133 133 132 132 132 132 132 133 132 133 132 133 132 133 132 133 132 133 132 133 132 132 133 132 133 132 132 132 133 133 132 132 +0 0 0 0 0 0 0 0 0 0 0 0 134 133 133 144 136 132 132 132 132 132 132 132 133 132 132 133 133 133 133 133 132 132 133 133 133 133 130 153 192 125 129 132 132 133 133 132 133 132 132 132 132 132 132 133 132 160 53 44 197 248 249 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 247 246 250 255 242 18 25 11 14 120 135 252 252 252 252 250 236 210 209 208 207 207 206 229 221 233 211 207 208 207 212 214 211 212 210 209 236 220 239 250 149 213 63 63 140 63 112 52 133 115 145 145 132 133 132 132 132 132 133 133 133 133 133 132 133 133 132 133 133 133 132 132 133 133 133 132 132 133 133 132 132 132 132 132 133 132 133 132 133 132 133 132 133 132 133 132 133 132 132 133 132 133 132 132 132 133 133 132 132 0 0 0 0 0 0 0 0 0 0 0 0 133 134 132 143 145 130 130 132 132 133 133 133 133 133 133 132 132 132 133 132 132 132 132 132 133 133 132 144 188 170 126 133 133 132 132 133 133 133 133 133 132 132 133 133 133 146 106 80 255 248 248 247 247 247 246 247 247 247 247 247 247 247 247 247 247 247 247 247 247 246 250 255 248 255 163 94 13 39 245 252 250 252 249 249 245 244 213 204 204 210 243 243 212 220 64 103 103 209 250 244 228 247 173 231 239 210 210 210 241 249 76 250 99 61 26 73 109 105 105 37 39 111 110 140 136 133 133 133 133 133 133 132 133 132 133 133 132 133 132 133 133 132 132 132 132 132 132 133 133 132 132 132 132 132 133 132 132 133 132 132 133 132 132 133 133 133 132 133 132 132 132 132 132 132 133 133 133 132 132 133 -0 0 0 0 0 0 0 0 0 0 0 131 131 133 133 133 142 134 130 133 132 132 132 133 133 132 132 133 133 132 133 132 133 133 132 133 133 133 133 127 138 180 135 133 133 132 132 132 132 133 133 133 133 132 133 132 130 145 35 40 228 251 252 249 255 255 255 250 255 248 255 248 255 247 247 247 247 247 247 247 253 255 255 255 84 19 49 133 251 204 251 250 245 245 246 244 234 216 234 237 228 225 37 44 44 50 137 141 168 188 23 192 38 77 46 130 135 229 220 216 231 145 24 23 177 90 90 75 80 126 114 178 172 36 36 119 134 134 133 133 132 133 132 133 133 133 132 132 132 132 132 132 133 132 133 133 133 133 133 132 132 133 133 133 133 132 132 132 133 132 132 132 132 133 132 132 133 132 133 132 132 132 132 133 132 132 132 132 132 132 133 133 +0 0 0 0 0 0 0 0 0 0 0 131 131 133 133 133 142 134 130 133 132 132 132 133 133 132 132 133 133 132 133 132 133 133 132 133 133 133 133 127 138 180 135 133 133 132 132 132 132 133 133 133 133 132 133 132 130 145 35 40 228 251 252 249 255 255 255 250 255 248 255 248 255 247 247 247 247 247 247 247 253 255 255 255 84 19 49 133 251 204 251 250 245 245 246 244 244 216 234 237 228 225 37 44 44 50 137 141 168 188 23 192 38 77 46 130 135 229 220 216 231 145 24 23 177 90 90 75 80 126 114 178 172 36 36 119 134 134 133 133 132 133 132 133 133 133 132 132 132 132 132 132 133 132 133 133 133 133 133 132 132 133 133 133 133 132 132 132 133 132 132 132 132 133 132 132 133 132 133 132 132 132 132 133 132 132 132 132 132 132 133 133 0 0 0 0 0 0 0 0 0 0 131 131 131 131 132 131 135 141 141 131 131 133 133 132 133 133 133 132 133 133 132 132 133 132 132 133 132 132 132 127 132 181 188 122 132 133 132 132 132 133 132 133 133 132 132 133 133 159 67 141 255 255 186 255 228 255 114 207 83 222 222 255 227 255 255 255 255 252 252 249 255 254 41 4 115 8 216 251 249 248 247 243 247 244 250 250 252 239 44 38 38 37 84 111 252 236 35 33 33 29 138 109 250 200 237 68 65 176 246 214 46 107 251 199 250 250 241 234 248 143 143 161 241 173 183 58 51 150 150 132 133 132 132 133 132 132 133 132 132 132 133 133 133 133 133 132 132 132 132 132 132 132 133 132 132 132 132 132 133 132 132 132 132 132 133 133 133 132 132 133 133 133 133 133 133 132 133 132 132 132 132 132 -0 0 0 0 0 0 0 0 0 0 131 131 133 132 132 132 135 145 132 130 131 132 133 132 133 132 132 132 132 132 132 132 133 133 132 132 132 132 132 133 132 174 143 123 132 134 132 133 132 132 133 132 133 132 132 151 157 81 78 78 255 160 186 25 56 1 10 10 83 12 82 15 118 36 255 173 255 255 255 255 151 3 41 30 115 251 250 244 248 248 247 246 247 252 252 84 56 56 44 48 67 252 251 53 252 37 35 136 142 251 250 250 250 234 237 233 54 65 250 250 46 158 251 209 211 209 241 217 248 236 190 215 237 231 183 169 51 48 153 152 132 132 132 132 132 133 132 132 132 132 133 133 132 133 132 133 132 132 132 132 133 133 132 133 132 133 132 132 133 132 133 133 132 132 133 133 132 133 133 133 133 132 133 133 132 132 133 132 132 132 132 133 +0 0 0 0 0 0 0 0 0 0 131 131 133 132 132 132 135 145 132 130 131 132 133 132 133 132 132 132 132 132 132 132 133 133 132 132 132 132 132 133 132 174 143 123 132 134 132 133 132 132 133 132 133 132 132 151 157 81 78 78 255 160 186 25 56 1 10 10 83 12 82 15 118 36 255 173 255 255 255 255 151 3 41 30 115 251 250 244 248 248 247 246 247 252 252 84 252 56 44 48 67 252 251 53 252 37 35 136 142 251 250 250 250 234 237 233 54 65 250 250 46 158 251 209 211 209 241 217 248 236 190 215 237 231 183 169 51 48 153 152 132 132 132 132 132 133 132 132 132 132 133 133 132 133 132 133 132 132 132 132 133 133 132 133 132 133 132 132 133 132 133 133 132 132 133 133 132 133 133 133 133 132 133 133 132 132 133 132 132 132 132 133 0 0 0 0 0 0 0 0 0 132 132 132 131 132 132 133 134 140 147 139 130 132 133 132 133 133 132 133 132 133 133 133 133 133 132 132 132 133 133 135 128 128 195 153 130 134 133 132 132 133 133 133 133 141 153 153 108 33 31 13 11 14 6 6 2 92 43 207 102 255 24 120 21 94 25 57 66 103 255 138 33 40 156 251 250 250 246 245 246 251 251 222 155 155 116 9 18 239 251 147 254 98 74 82 101 250 251 207 251 209 210 210 208 211 213 213 206 67 207 241 84 244 210 210 211 209 210 210 211 210 218 210 211 210 233 244 93 53 58 92 141 134 133 132 132 132 133 132 132 132 133 133 133 133 133 133 133 133 132 133 132 132 132 132 133 132 133 133 133 132 132 132 132 132 132 132 133 132 132 132 132 132 132 132 133 133 132 132 133 130 132 131 -0 0 0 0 0 0 0 0 0 133 132 132 132 133 132 133 131 131 148 144 131 131 133 133 133 132 132 133 132 132 132 133 132 132 132 133 133 133 133 133 128 128 197 165 123 128 133 132 133 133 132 133 132 155 128 42 19 39 31 31 21 189 162 255 255 255 255 255 255 255 255 255 255 254 205 255 148 118 29 50 154 251 250 250 246 246 246 251 252 252 252 32 11 120 165 252 251 251 198 30 34 215 245 224 250 218 211 209 208 213 212 212 210 210 211 212 251 87 231 231 98 140 215 209 210 210 210 210 211 211 212 212 211 210 212 209 246 233 29 24 148 148 132 132 133 133 132 132 133 133 132 132 132 133 133 132 132 132 133 133 132 132 133 133 132 133 132 133 133 132 133 133 132 132 132 133 133 132 132 132 132 133 132 133 132 132 133 132 131 135 135 142 +0 0 0 0 0 0 0 0 0 133 132 132 132 133 132 133 131 131 148 144 131 131 133 133 133 132 132 133 132 132 132 133 132 132 132 133 133 133 133 133 128 128 197 165 123 128 133 132 133 133 132 133 132 155 128 42 19 39 31 31 21 189 162 255 255 255 255 255 255 255 255 255 255 254 205 255 148 118 29 50 154 251 250 250 246 246 246 251 252 252 252 32 11 120 165 252 195 251 198 30 34 215 245 224 250 218 211 209 208 213 212 212 210 210 211 212 251 87 231 231 98 140 215 209 210 210 210 210 211 211 212 212 211 210 212 209 246 233 29 24 148 148 132 132 133 133 132 132 133 133 132 132 132 133 133 132 132 132 133 133 132 132 133 133 132 133 132 133 133 132 133 133 132 132 132 133 133 132 132 132 132 133 132 133 132 132 133 132 131 135 135 142 0 0 0 0 0 0 0 0 132 133 133 132 132 133 132 132 133 136 136 144 138 131 133 132 133 132 132 133 132 132 133 132 132 132 132 133 132 133 132 134 132 128 150 165 123 133 133 133 133 133 132 133 149 98 27 42 14 39 214 206 255 255 249 255 254 255 247 249 245 245 245 255 247 254 254 255 38 5 5 50 246 251 248 246 249 246 250 251 177 92 17 62 253 120 255 252 75 42 119 180 180 215 230 224 210 210 211 211 211 213 212 211 210 210 211 212 225 87 113 235 184 213 216 209 211 210 210 211 211 210 210 212 211 210 210 211 216 185 185 24 38 153 148 133 132 133 132 132 133 132 133 133 133 133 132 132 133 132 133 132 132 132 132 133 132 132 133 133 132 132 132 133 133 132 132 133 133 132 132 132 133 133 133 133 132 132 129 133 146 142 142 142 0 0 0 0 0 0 0 0 133 132 133 133 132 132 132 132 133 131 130 146 145 131 131 133 133 133 133 133 132 133 133 133 133 132 132 133 133 133 132 132 132 122 140 177 177 126 133 133 133 133 154 126 126 63 27 19 147 255 250 255 248 249 247 245 247 247 247 247 247 247 247 247 255 239 239 156 6 42 243 251 249 245 245 248 251 252 96 23 74 6 178 242 252 221 28 35 213 65 251 250 232 234 240 211 211 210 210 210 210 210 210 211 210 210 211 210 222 174 217 242 220 207 212 210 211 210 210 211 210 210 211 210 210 210 210 210 210 234 248 68 34 75 114 138 132 132 133 132 132 133 132 133 132 133 132 133 133 132 133 133 133 132 133 132 132 133 132 133 133 133 132 132 132 132 132 133 132 132 132 133 133 133 131 130 132 136 136 142 144 140 132 133 0 0 0 0 0 0 0 132 132 133 133 132 133 132 132 132 133 133 133 134 139 135 132 134 133 133 133 133 132 132 132 133 132 133 132 132 132 133 133 132 133 133 126 187 185 125 133 132 132 134 150 98 29 30 37 27 176 255 247 247 247 247 247 247 247 247 247 247 247 247 247 248 255 191 8 35 222 250 250 249 248 244 251 251 53 207 10 13 224 252 232 149 32 59 82 146 243 230 232 245 245 250 242 214 209 211 210 211 211 210 211 210 210 210 211 210 210 225 208 212 209 209 208 211 210 211 210 211 211 211 211 210 211 210 211 210 210 210 210 240 207 18 31 155 150 132 133 133 133 133 132 132 132 132 133 133 132 133 133 132 132 132 132 132 132 133 132 132 132 133 133 132 133 133 132 132 133 132 132 133 130 129 129 133 148 148 138 133 133 132 132 133 @@ -96,7 +96,7 @@ P2 162 161 161 161 161 161 161 161 161 161 161 161 161 161 161 160 160 159 159 159 158 159 159 158 159 158 158 159 159 158 159 159 159 158 158 157 157 155 155 157 155 156 193 8 42 255 248 246 246 246 247 247 247 255 71 49 128 232 210 218 236 34 125 160 255 240 239 245 238 242 242 241 238 245 244 255 255 255 255 226 255 254 251 243 239 235 239 241 240 241 241 240 240 240 240 241 240 240 240 240 240 240 240 240 255 185 33 83 83 159 132 135 151 175 52 72 31 24 26 40 40 40 40 20 34 153 195 252 47 21 21 25 252 218 41 199 224 210 210 211 212 208 208 209 212 201 202 215 250 44 200 248 248 246 247 242 107 166 252 13 13 145 146 132 132 133 134 132 133 133 132 133 132 132 133 132 132 133 133 133 132 132 132 132 133 132 132 133 132 133 133 132 162 162 162 161 161 161 161 161 161 161 161 161 161 161 161 161 161 159 160 159 160 158 158 159 160 158 158 158 159 159 159 159 159 159 159 158 157 156 156 157 156 156 186 12 12 213 255 247 246 245 245 253 253 255 99 82 248 210 213 213 248 47 76 255 236 240 240 239 238 239 241 240 239 238 238 241 239 238 237 237 237 238 238 237 239 240 241 240 240 240 240 240 240 240 240 240 240 240 240 241 240 240 239 255 255 158 34 118 143 132 130 133 156 108 12 52 255 56 27 36 41 39 39 34 32 85 85 108 26 43 255 255 172 39 39 196 227 210 211 210 210 212 211 212 213 210 210 242 132 69 87 250 249 249 232 250 250 33 222 145 8 152 140 132 132 132 132 132 132 132 133 133 133 132 133 132 132 132 133 133 132 133 133 132 132 133 133 132 133 133 133 133 161 162 162 163 162 161 161 161 161 161 161 161 161 161 161 161 161 161 161 159 160 159 159 160 160 160 160 158 158 159 158 158 159 159 159 158 159 157 158 157 157 154 155 140 24 147 255 245 245 246 251 255 184 96 19 42 238 209 213 247 110 45 253 255 239 239 240 240 240 240 240 241 240 239 241 239 238 239 239 240 239 239 241 240 240 240 241 240 240 240 240 240 240 240 240 240 240 240 241 240 240 240 239 255 148 32 132 139 139 132 130 158 54 33 241 146 255 255 166 32 37 39 40 40 40 18 55 250 255 255 255 255 167 39 193 228 211 211 211 211 210 210 211 212 210 210 211 221 216 43 228 249 249 249 234 247 155 72 252 108 108 66 160 131 133 133 132 133 133 132 132 132 132 132 132 133 132 133 133 133 132 132 132 132 132 133 133 132 133 132 132 133 -161 162 161 162 162 162 163 161 161 161 161 161 161 161 161 161 161 161 161 161 161 160 160 160 160 160 160 159 158 159 159 159 159 158 159 158 158 158 159 157 157 156 155 151 151 8 91 255 255 255 145 106 106 154 77 167 239 213 227 240 160 31 234 244 240 240 240 240 240 240 240 240 240 240 240 239 240 239 240 240 241 240 240 240 241 241 241 240 240 240 240 240 240 240 241 241 240 240 240 240 240 239 255 163 163 32 131 139 133 132 136 153 87 62 255 255 254 255 100 29 75 26 30 40 40 28 28 178 255 234 255 162 37 194 194 228 210 211 210 210 210 211 210 211 211 210 211 250 88 49 148 231 212 212 207 247 247 16 171 250 11 93 134 131 133 132 132 132 133 133 132 132 132 133 132 132 133 133 132 132 132 132 133 133 133 133 133 133 133 133 133 132 +161 162 161 162 162 162 163 161 161 161 161 161 161 161 161 161 161 161 161 161 161 160 160 160 160 160 160 159 158 159 159 159 159 158 159 158 158 158 159 157 157 156 155 151 151 8 91 255 255 255 145 106 106 154 77 167 239 213 227 240 160 31 234 244 240 240 240 240 240 240 240 240 240 240 240 239 240 239 240 240 241 240 240 240 241 241 241 240 240 240 240 240 240 240 241 241 240 240 240 240 240 239 255 163 163 32 131 139 133 132 136 153 87 62 255 255 254 255 100 29 75 26 30 40 40 28 28 178 255 234 255 162 37 194 194 228 210 211 211 210 211 211 211 211 210 210 210 250 49 49 228 231 241 212 210 247 155 16 252 250 11 93 134 131 133 132 132 132 133 133 132 132 132 133 132 132 133 133 132 132 132 132 133 133 133 133 133 133 133 133 133 132 162 162 162 162 162 162 163 162 161 161 161 161 161 161 161 161 161 161 161 161 161 161 159 160 160 159 160 160 158 159 159 158 159 159 159 159 158 158 158 158 157 157 155 187 39 10 250 176 255 196 145 69 214 213 66 66 239 211 227 215 21 181 253 253 240 240 240 240 240 241 240 240 240 240 240 241 240 240 240 241 241 240 240 240 240 240 241 241 240 240 240 240 240 240 241 241 240 241 241 240 240 238 255 177 28 121 140 133 133 133 136 149 31 217 255 255 254 255 100 67 84 52 36 36 40 42 20 61 255 255 255 152 37 197 226 211 210 210 210 210 210 210 211 210 211 211 211 239 88 71 237 208 212 205 207 246 60 39 250 218 69 12 157 132 132 133 132 132 133 132 133 133 133 132 132 132 133 132 132 132 132 133 132 132 132 132 133 132 132 133 132 133 161 162 161 161 161 162 162 162 163 163 161 161 161 161 160 161 161 161 161 161 161 161 161 161 160 159 159 159 158 158 159 159 159 159 159 159 159 159 159 159 157 158 156 188 154 37 45 127 65 178 204 255 252 255 25 188 210 212 240 240 25 122 255 239 240 240 240 240 240 240 241 240 240 240 240 240 240 241 241 240 240 240 241 240 240 240 240 240 240 240 240 240 240 240 240 241 240 240 241 240 240 249 200 22 25 108 142 133 133 133 145 145 51 24 255 255 255 126 56 56 177 143 37 37 42 42 41 23 156 255 134 36 199 226 225 210 210 211 210 211 210 210 211 210 211 212 218 226 41 41 246 210 211 210 220 244 174 9 239 250 30 32 154 132 132 132 132 132 132 133 133 133 132 132 132 132 132 132 132 132 132 133 133 132 133 132 132 132 133 132 133 132 161 161 162 162 161 162 161 162 162 162 162 162 161 161 161 160 161 161 161 161 161 161 161 161 161 161 159 160 160 160 159 158 159 159 158 159 159 159 159 159 158 158 157 156 142 33 74 255 227 255 255 250 255 220 52 52 236 207 246 137 53 255 237 237 241 240 240 240 240 241 240 240 241 240 241 241 240 240 240 240 240 240 241 240 241 241 240 240 241 240 240 240 240 240 241 240 241 240 240 240 239 239 245 47 85 158 133 133 133 133 132 139 72 40 80 80 164 44 66 152 138 169 61 61 33 23 42 39 67 52 134 37 208 224 210 210 210 210 210 211 211 210 211 210 210 210 210 248 43 129 223 211 211 210 208 246 63 16 250 251 172 12 149 141 133 133 132 132 132 132 133 133 132 133 132 132 132 132 133 133 132 133 132 133 133 133 132 132 133 132 133 132 diff --git a/hidden_functional_c/expect/output/37_dct.out b/hidden_functional_c/expect/output/37_dct.out index 16daf0b..3b6c616 100644 --- a/hidden_functional_c/expect/output/37_dct.out +++ b/hidden_functional_c/expect/output/37_dct.out @@ -1,20 +1,20 @@ -0x1.fep+12 -0x1.0cp-18 0x1.942p-13 0x1.a148p-11 -0x1.1f6p-11 -0x1.098p-14 0x1.7f68p-11 0x1.2814p-12 -0x0p+0 0x1.0916fp+7 0x1.cbe0aap-14 0x1.38b1b6p+7 -0x1.d7c8dcp-13 0x1.d3fafep+7 -0x1.d0ba7p-13 0x1.4d2c7ap+9 -0x1.4p-12 0x1.e51be4p-14 -0x1.20e0b8p-17 0x1.20d458p-13 -0x1.d2fa6p-17 0x1.b85194p-13 0x1.8f22ap-19 0x1.3f67ccp-11 -0x1.bp-11 0x1.38b1bp+7 0x1.45f7e2p-13 0x1.70d904p+7 -0x1.0b507ep-12 0x1.140298p+8 -0x1.fc5c1ap-13 0x1.890142p+9 --0x1.ep-12 -0x1.fb4132p-13 -0x1.f92238p-19 -0x1.18769p-12 -0x1.9dd86p-19 -0x1.4f879cp-12 0x1.146152p-15 -0x1.3fe33ap-10 --0x1p-14 0x1.d3fb04p+7 0x1.c34df4p-13 0x1.140296p+8 -0x1.9e8b78p-12 0x1.9d143p+8 -0x1.910ecep-12 0x1.261648p+10 -0x1.58p-11 -0x1.96433ap-13 0x1.f17348p-20 -0x1.fc5f8cp-13 0x1.eecadp-19 -0x1.a6a05ep-12 -0x1.b9479ap-15 -0x1.cdfd62p-11 -0x1.48p-12 0x1.4d2c78p+9 0x1.3ff2d4p-11 0x1.89013ep+9 -0x1.2cf65ep-10 0x1.26164cp+10 -0x1.0ff1c8p-10 0x1.a2be8ep+11 +0x1.fep+12 0x0p+0 0x1p-13 0x1.78p-11 -0x1.8p-13 -0x1p-13 0x1.4ep-10 0x1.04p-11 +0x1p-14 0x1.0916bap+7 0x1p-14 0x1.38b1a4p+7 -0x1p-14 0x1.d3fac4p+7 -0x1.2p-12 0x1.4d2c5cp+9 +0x1.8p-14 0x1.cp-14 0x0p+0 0x1.4p-14 0x0p+0 0x1.6p-13 -0x1.8p-16 0x1.f4p-12 +0x1.9p-11 0x1.38b1a4p+7 0x1p-13 0x1.70d918p+7 -0x1.6p-13 0x1.140296p+8 -0x1.48p-12 0x1.890158p+9 +-0x1.4p-13 -0x1.cp-14 0x1p-16 -0x1.2p-13 -0x1p-16 -0x1.cp-13 -0x1p-16 -0x1.ccp-12 +-0x1p-14 0x1.d3fac2p+7 0x1.8p-13 0x1.140296p+8 -0x1.4p-13 0x1.9d1408p+8 -0x1.0ap-11 0x1.26164p+10 +0x1.54p-10 -0x1.68p-12 -0x1.8p-16 -0x1.6p-12 0x0p+0 -0x1.0ep-11 -0x1p-18 -0x1.6e8p-10 +0x1.34p-11 0x1.4d2c62p+9 0x1.02p-11 0x1.890156p+9 -0x1.3ep-11 0x1.261642p+10 -0x1.5d8p-10 0x1.a2be9ap+11 -0x1.fe0004p+7 0x1.422284p-13 0x1.fe001p+7 0x1.41469ap-14 0x1.fe0008p+7 0x1.10d3ccp-14 0x1.fe0038p+7 -0x1.bd3738p-14 -0x1.269e52p-13 0x1.fep+7 0x1.175d2cp-13 0x1.fe000ap+7 0x1.314b7ep-13 0x1.fe000cp+7 -0x1.44196cp-13 0x1.fe0022p+7 -0x1.fe0008p+7 0x1.0fccc8p-13 0x1.fe001p+7 0x1.b0dcap-17 0x1.fe000ep+7 0x1.851dccp-15 0x1.fe0038p+7 -0x1.250af6p-13 -0x1.6fe3ap-14 0x1.fe0008p+7 0x1.0753bcp-14 0x1.fe0016p+7 0x1.811602p-16 0x1.fe0016p+7 -0x1.01af24p-12 0x1.fe002ep+7 -0x1.fe0006p+7 0x1.40ffa4p-13 0x1.fe000ap+7 0x1.60458p-14 0x1.fe0006p+7 0x1.a95a3cp-15 0x1.fe0036p+7 -0x1.78ac4ep-14 -0x1.78d666p-14 0x1.fe000ap+7 0x1.683a4p-15 0x1.fe000ep+7 0x1.726b22p-14 0x1.fe0018p+7 -0x1.0e664ap-12 0x1.fe0028p+7 -0x1.fe0032p+7 -0x1.7cec72p-13 0x1.fe0034p+7 -0x1.d66782p-13 0x1.fe003p+7 -0x1.f5ab94p-13 0x1.fe005cp+7 -0x1.ad557cp-12 --0x1.beb2a4p-14 0x1.fe001ep+7 -0x1.25e69ep-13 0x1.fe002ap+7 -0x1.2ebcdp-14 0x1.fe002ap+7 -0x1.bbe40ap-12 0x1.fe0048p+7 +0x1.fe000ep+7 0x1.78p-13 0x1.fe000ep+7 0x1.dp-14 0x1.fe001ep+7 0x1.9p-14 0x1.fe004p+7 -0x1.04p-15 +0x1.6cp-13 0x1.fe000cp+7 0x1.dp-13 0x1.fe002p+7 0x1.2p-14 0x1.fe0018p+7 -0x1.ep-13 0x1.fe002cp+7 +0x1.fe001p+7 0x1.7p-13 0x1.fe0008p+7 0x1.cp-14 0x1.fe0018p+7 0x1.cp-14 0x1.fe0046p+7 -0x1p-16 +0x1.cp-14 0x1.fe001cp+7 0x1.8p-14 0x1.fe0026p+7 0x0p+0 0x1.fe0022p+7 -0x1.7p-12 0x1.fe0032p+7 +0x1.fe001ep+7 0x1.4p-14 0x1.fe001ep+7 -0x1.8p-15 0x1.fe0026p+7 0x1p-16 0x1.fe0056p+7 -0x1.2p-13 +0x1.ep-14 0x1.fe0014p+7 0x1p-13 0x1.fe0028p+7 0x1p-15 0x1.fe002p+7 -0x1.4p-12 0x1.fe0034p+7 +0x1.fe0048p+7 -0x1.08p-12 0x1.fe0046p+7 -0x1.6p-12 0x1.fe0054p+7 -0x1.7p-12 0x1.fe0084p+7 -0x1.f4p-12 +-0x1.fp-16 0x1.fe003p+7 -0x1.4p-16 0x1.fe002ep+7 -0x1.fp-14 0x1.fe0034p+7 -0x1.01p-11 0x1.fe0044p+7 0 \ No newline at end of file diff --git a/hidden_functional_c/expect/output/38_light2d.out b/hidden_functional_c/expect/output/38_light2d.out index abf97cb..ee117fd 100644 --- a/hidden_functional_c/expect/output/38_light2d.out +++ b/hidden_functional_c/expect/output/38_light2d.out @@ -1,196 +1,196 @@ P2 192 192 255 -63 63 31 31 63 31 31 31 31 0 63 63 31 0 0 31 0 63 0 31 31 63 95 31 63 63 63 95 63 31 63 31 31 31 63 31 63 63 31 31 31 31 63 31 31 31 63 95 31 0 0 31 63 31 95 31 95 31 63 31 31 63 31 95 31 63 31 31 63 63 95 31 0 0 63 31 31 31 31 31 63 63 63 0 31 31 31 0 127 31 31 31 63 63 0 31 63 0 63 31 31 31 63 31 31 31 31 0 0 31 31 31 63 63 63 31 31 31 31 63 31 31 0 63 0 31 63 31 31 63 63 31 31 31 31 0 63 63 0 31 31 63 95 31 31 31 31 31 63 0 31 63 31 31 0 31 31 63 31 31 31 31 0 31 63 63 0 0 31 31 63 63 31 0 31 0 0 63 63 63 31 0 31 0 31 31 0 0 31 31 31 0 -31 0 31 0 95 31 0 31 31 31 63 31 31 0 0 0 31 63 63 31 63 31 0 0 63 31 31 31 63 31 0 95 63 63 31 0 95 31 63 31 31 31 31 31 31 31 31 63 63 31 31 31 31 0 63 31 0 31 0 31 63 0 31 31 63 63 31 31 31 31 31 31 63 31 63 31 63 63 31 31 31 31 31 63 0 95 63 31 63 31 63 63 63 63 63 31 31 0 63 63 0 31 63 63 31 63 63 63 63 63 31 63 63 31 31 31 0 63 63 0 0 0 31 31 0 31 95 31 31 31 31 31 31 31 63 31 63 63 63 31 31 63 31 31 31 31 0 31 63 0 63 31 63 0 31 0 31 0 63 63 31 31 31 63 63 31 31 31 63 0 31 63 31 63 31 31 0 0 31 31 0 31 0 31 31 0 0 0 63 31 63 0 -0 63 63 31 31 63 0 31 31 0 95 0 0 31 31 31 95 31 63 63 31 31 63 63 31 63 63 0 31 31 0 0 63 95 31 31 63 63 31 31 31 63 31 63 63 31 31 0 31 63 31 63 31 63 31 63 31 31 63 31 31 63 0 95 31 63 0 31 31 31 31 31 95 31 63 31 95 31 63 31 63 31 31 63 31 31 63 95 0 63 63 0 63 0 63 63 31 63 63 0 63 31 63 63 31 63 63 31 63 63 31 63 31 63 31 31 31 31 63 31 63 31 0 31 31 0 31 31 31 95 63 0 63 31 63 63 31 31 0 0 31 31 0 0 31 31 63 63 63 31 63 31 31 31 63 63 31 0 0 31 0 31 0 31 31 0 31 63 31 31 0 31 31 31 31 0 31 31 63 0 0 31 0 31 31 31 0 31 0 31 0 0 -95 31 31 0 0 0 63 31 0 0 0 0 31 63 31 31 31 31 95 0 31 31 31 63 31 31 0 63 63 0 63 63 63 63 31 31 31 95 63 31 63 63 31 0 0 63 31 31 31 0 31 31 95 31 63 95 63 63 31 95 31 63 63 31 63 63 63 63 63 63 0 31 31 31 31 63 63 63 0 31 63 0 63 31 31 31 0 63 31 31 31 63 0 63 63 31 63 63 31 63 63 31 63 0 31 63 63 0 95 95 31 0 63 31 31 31 0 31 0 63 0 0 0 0 31 63 63 31 31 31 31 63 63 63 31 31 0 0 63 31 31 31 31 0 31 63 63 0 0 0 31 95 0 31 31 31 63 31 0 31 0 0 63 0 63 63 0 63 0 31 0 31 63 31 31 31 31 0 0 63 63 31 0 0 31 0 0 31 31 31 63 31 -0 63 63 31 0 63 31 31 95 31 63 31 31 0 63 31 31 0 63 31 31 31 31 31 63 31 63 31 31 31 31 31 95 0 0 63 31 63 31 31 31 31 63 63 63 0 31 31 31 31 31 31 63 31 0 63 63 31 63 63 31 31 63 31 0 63 63 31 63 31 63 63 95 95 31 31 31 0 95 95 31 31 63 31 31 31 31 31 63 63 31 31 63 31 0 63 0 31 63 31 63 63 63 31 31 95 31 31 31 31 63 0 0 0 31 0 63 31 31 63 31 31 31 0 0 31 31 63 31 31 63 31 63 31 31 31 0 63 31 0 31 63 31 31 31 63 0 63 0 31 63 31 0 31 0 63 0 63 31 31 63 31 0 0 31 63 31 31 63 31 0 0 63 63 0 31 31 31 31 63 31 31 0 31 31 31 0 0 0 31 31 31 -31 63 0 63 31 63 63 31 0 31 0 0 31 0 31 63 31 63 63 31 31 63 31 0 0 31 31 0 63 63 31 63 0 0 31 0 63 31 63 31 63 95 63 31 31 63 31 63 31 63 31 95 63 63 31 31 31 63 0 63 63 63 63 31 63 31 95 31 95 63 31 31 31 63 31 63 0 63 63 95 31 31 63 31 63 31 31 63 63 63 63 31 31 31 31 31 63 31 63 63 0 0 31 0 31 0 63 63 0 31 31 63 31 31 31 0 0 31 63 63 63 31 63 0 63 31 63 0 63 63 31 63 31 63 0 31 63 31 63 0 63 31 31 31 63 31 31 0 31 0 0 31 95 31 0 31 31 31 31 95 31 0 95 63 0 31 31 0 0 31 63 31 0 31 31 0 0 63 0 31 0 0 0 31 63 31 31 95 0 0 31 0 -0 63 31 63 31 31 63 63 31 31 0 63 63 63 63 63 63 31 63 0 31 95 31 31 63 31 31 0 63 0 0 63 63 31 0 0 31 0 63 95 95 31 31 31 31 0 63 0 0 31 63 31 31 31 63 63 31 63 31 31 31 0 0 31 31 63 63 31 63 31 0 31 63 63 63 95 31 63 63 31 63 31 63 31 31 31 0 31 31 95 31 31 31 31 63 31 0 31 31 63 31 31 63 0 63 63 0 31 31 63 63 31 63 95 63 0 31 31 31 31 31 0 31 31 0 63 63 31 31 31 31 63 31 63 63 63 63 31 31 95 63 63 63 31 95 0 63 31 31 31 31 31 31 0 31 0 31 63 31 63 0 0 31 31 31 31 0 0 0 63 0 31 31 31 31 0 31 63 31 63 31 0 31 0 0 31 31 31 31 31 0 31 -63 31 31 31 0 0 31 31 0 63 31 63 0 0 95 31 31 0 31 31 31 31 31 31 63 31 31 63 31 63 31 31 31 0 0 31 0 63 0 0 95 95 0 63 63 63 31 31 0 95 63 31 0 31 31 63 95 0 31 0 95 95 31 63 31 63 63 31 31 31 31 31 63 63 31 0 63 31 31 63 31 63 31 31 95 31 63 31 31 63 31 31 31 63 31 0 63 63 31 95 63 63 63 31 31 31 31 63 31 63 31 31 0 63 31 31 31 31 31 31 31 63 0 0 0 31 31 63 31 0 31 63 63 95 31 31 31 63 31 31 31 0 0 0 0 0 31 0 31 31 63 0 63 31 31 31 63 63 31 31 63 31 63 0 63 31 31 63 31 0 0 31 31 63 31 31 31 95 31 31 31 31 0 31 31 31 31 31 0 0 31 0 -0 31 31 31 31 63 31 63 63 63 0 31 0 31 31 31 0 63 31 31 31 31 31 0 31 31 0 31 63 31 0 31 31 63 31 95 0 31 31 0 31 31 63 63 31 63 0 31 31 63 31 63 31 31 63 31 31 63 95 31 0 31 63 31 31 63 63 95 63 63 31 31 0 63 95 31 63 31 31 31 63 31 31 63 63 63 63 63 31 31 63 31 31 31 31 63 31 31 63 31 63 31 0 63 31 63 63 95 63 31 31 31 63 63 31 31 95 63 31 63 31 0 31 31 95 0 63 31 63 0 31 0 0 31 63 95 31 0 31 31 0 63 0 31 31 63 31 31 63 31 31 31 0 0 0 63 0 0 63 0 31 0 31 63 31 31 31 31 31 31 63 31 63 0 0 31 0 0 0 31 31 0 31 0 31 0 63 63 31 31 63 31 -31 31 63 0 31 31 31 31 31 31 31 63 63 0 0 31 63 0 31 31 31 63 31 63 31 63 31 63 63 63 0 31 63 31 31 31 31 31 95 63 31 31 63 31 63 31 31 63 63 31 31 63 0 63 95 63 63 63 63 95 31 63 31 0 31 95 31 31 31 31 63 31 31 63 63 31 63 95 63 95 95 31 31 31 31 31 63 31 63 95 95 31 63 63 31 63 63 31 63 63 63 63 95 63 63 31 0 63 31 63 31 63 31 63 31 31 63 63 63 31 63 0 63 63 63 31 63 31 31 63 31 31 31 0 31 95 63 63 95 63 31 63 31 31 31 0 63 31 31 31 0 0 0 0 31 31 63 63 0 31 0 31 31 0 31 63 63 31 0 31 0 0 63 63 31 0 31 31 0 31 31 31 31 0 0 31 31 31 0 31 31 31 -0 31 95 63 63 63 31 0 0 95 0 63 0 31 95 31 0 0 63 63 31 31 63 63 63 0 63 63 31 31 31 63 0 31 63 63 63 63 63 63 0 31 63 63 95 63 63 63 95 31 0 95 95 63 0 31 0 0 0 63 95 63 95 31 63 31 31 63 31 63 63 95 31 31 63 0 63 63 63 31 63 95 63 31 31 63 95 63 0 31 31 31 63 0 63 63 63 63 31 0 63 63 0 31 0 63 63 63 31 63 31 63 63 31 95 63 31 31 31 31 63 31 31 31 31 31 63 31 63 31 31 31 63 31 63 0 31 63 31 31 63 0 31 63 0 0 31 31 31 95 31 31 63 31 31 63 31 0 31 31 31 0 31 0 63 31 31 31 63 31 63 31 0 31 31 31 63 0 31 63 0 31 31 31 0 0 63 0 31 0 31 31 -31 31 31 31 0 31 31 63 31 31 63 31 31 63 0 31 0 95 63 63 63 31 63 31 31 95 63 63 31 31 63 63 63 31 31 63 63 31 31 63 31 63 31 63 0 0 63 63 31 63 63 63 31 63 31 0 31 63 31 31 63 31 63 63 31 63 31 95 63 63 63 31 63 95 95 31 63 63 31 0 31 95 95 63 63 63 63 31 63 95 63 0 63 0 31 63 63 0 0 31 63 31 31 31 63 0 0 63 63 95 63 31 31 31 31 95 95 31 31 63 63 0 95 63 63 0 31 31 63 63 31 0 95 63 0 31 31 63 0 31 31 31 63 0 0 0 31 63 63 63 63 0 31 31 31 0 31 31 31 63 31 63 63 31 0 0 0 31 63 0 31 31 0 31 63 63 31 0 31 31 31 31 31 31 31 0 63 31 31 31 0 0 -63 31 63 31 0 63 31 0 0 31 63 31 31 0 31 0 31 31 63 0 63 63 31 31 63 63 0 63 31 31 31 63 31 63 31 0 63 31 0 0 63 31 63 0 95 63 0 31 63 63 95 63 95 63 31 31 63 31 31 31 95 31 63 63 63 95 31 127 95 95 63 63 63 31 31 63 63 63 31 63 95 95 63 31 95 63 63 31 63 31 63 63 31 63 31 31 31 63 0 95 63 0 63 0 0 63 63 31 31 63 63 31 0 31 63 63 95 63 95 63 95 31 31 63 63 31 31 31 0 63 63 63 63 63 31 31 31 31 31 0 95 0 63 31 63 31 31 31 31 31 63 31 63 0 63 31 31 0 63 31 63 0 31 31 0 31 63 31 0 63 63 0 63 0 0 31 63 0 31 31 0 0 0 31 31 63 31 0 31 63 95 0 -31 0 0 95 0 63 31 31 31 63 63 63 63 63 31 31 63 0 63 31 0 31 0 95 31 31 31 31 31 95 31 63 0 63 0 31 31 63 63 95 0 31 95 31 31 0 63 31 127 31 63 31 31 63 31 31 63 63 63 63 95 63 31 63 63 0 95 63 63 31 63 31 0 95 31 31 63 63 63 31 31 31 31 95 63 63 31 31 31 0 63 63 63 63 63 63 63 31 63 63 63 63 63 63 0 63 31 63 31 63 0 31 31 0 31 63 31 63 31 31 31 0 63 63 63 63 63 31 31 0 31 0 0 95 31 0 31 31 0 63 31 31 0 63 31 0 0 0 63 0 31 31 31 31 63 31 31 95 31 31 31 31 0 31 31 31 63 31 31 31 63 0 31 31 0 0 31 95 0 31 63 31 31 31 0 0 0 31 0 31 31 31 -0 63 63 0 31 63 0 31 63 31 63 63 0 63 63 0 31 63 31 63 31 31 0 0 31 63 0 63 63 63 63 31 31 31 0 31 31 31 63 31 31 31 63 95 0 31 31 31 31 63 63 63 63 95 63 63 31 31 63 31 31 63 31 63 31 31 63 63 31 63 63 95 95 31 63 63 63 95 63 31 31 63 31 95 31 63 31 63 63 63 63 31 31 63 31 0 63 31 63 95 0 31 63 63 63 31 31 63 63 63 31 63 0 63 63 63 63 31 0 31 31 95 31 31 31 31 95 63 31 63 31 31 0 63 63 31 0 63 63 63 31 95 0 63 31 63 63 63 63 0 31 31 0 63 63 0 31 63 63 31 0 0 0 31 31 31 31 31 0 0 0 0 31 63 0 31 0 63 31 0 31 31 63 31 31 0 31 31 31 31 63 31 -63 63 31 63 31 0 0 31 0 31 31 63 31 0 63 0 63 31 63 63 31 63 31 31 31 0 63 63 0 31 0 63 63 63 31 63 31 31 31 63 31 95 0 0 31 63 31 63 31 63 31 31 95 31 31 31 31 63 31 63 31 31 0 63 63 95 31 63 63 63 63 63 95 63 0 63 31 63 63 63 31 31 63 63 31 63 63 63 63 31 95 63 31 31 95 63 63 63 63 95 31 63 95 63 31 63 31 31 95 63 95 0 0 31 31 95 31 63 31 31 63 0 95 63 63 95 63 63 31 31 63 31 31 0 31 31 31 0 63 63 63 31 31 31 31 63 31 63 0 0 31 63 31 31 31 31 63 31 63 31 63 31 31 31 63 0 0 31 31 63 31 0 31 63 0 0 31 95 63 31 0 31 0 63 0 0 0 0 0 0 31 0 -31 31 31 63 63 0 0 31 63 31 0 0 63 63 0 31 0 31 31 0 63 63 63 63 31 63 31 31 63 95 63 63 0 63 31 63 63 63 63 63 31 63 63 31 31 63 63 31 0 31 31 63 63 63 95 31 95 31 63 0 63 63 63 31 95 63 31 95 95 63 31 63 63 63 95 63 63 31 63 95 31 63 95 0 127 95 95 63 63 63 95 63 63 63 31 31 63 31 63 31 63 63 63 63 63 31 31 63 31 31 63 63 63 31 63 31 31 31 63 31 31 0 31 31 63 31 63 31 63 63 31 63 95 63 31 63 31 0 31 0 63 0 31 31 31 63 0 0 31 0 31 31 0 31 63 63 0 0 31 31 31 31 0 0 31 0 63 31 31 0 63 31 0 31 31 31 63 0 0 0 95 31 31 31 0 63 63 63 63 31 0 0 -31 63 31 31 31 31 31 0 63 31 31 31 63 63 63 63 63 63 31 63 63 31 63 0 95 63 63 31 63 31 31 0 63 0 31 63 63 31 31 95 31 63 63 0 0 63 31 63 63 63 31 95 63 63 63 31 0 95 31 63 31 31 63 31 31 31 63 31 63 95 0 95 31 31 95 31 63 63 95 31 63 95 31 31 0 0 31 31 95 63 63 63 63 31 95 31 63 31 31 63 95 63 63 31 31 31 95 95 63 0 0 63 0 95 0 95 63 63 31 63 31 31 95 31 31 31 31 0 31 63 63 63 31 63 0 63 63 31 0 63 63 31 63 63 0 31 31 31 31 31 31 31 63 0 0 31 31 63 63 63 0 0 63 63 31 63 0 63 31 63 0 31 31 31 0 63 31 0 0 0 31 0 31 31 31 31 0 0 31 31 0 31 -63 31 31 0 31 31 0 63 63 31 31 31 31 63 31 63 31 31 95 63 63 63 63 63 63 63 63 31 31 31 63 63 63 63 63 31 63 63 31 63 31 0 31 95 63 95 31 95 63 63 31 63 63 95 63 31 63 63 0 31 31 31 63 31 31 63 31 63 63 95 127 31 63 95 63 63 63 63 95 63 63 31 63 63 0 31 31 63 63 63 31 31 31 95 63 31 63 63 31 63 95 95 31 0 63 31 63 63 31 0 31 0 31 31 95 63 63 31 31 31 31 63 31 63 63 63 63 63 31 31 63 63 31 31 63 63 63 0 0 31 31 31 0 63 31 31 31 0 63 0 0 31 31 31 31 0 0 63 31 63 63 31 31 31 0 31 63 0 31 31 31 63 63 63 31 31 95 0 31 31 31 0 0 0 31 31 31 31 31 63 31 0 -31 0 31 31 31 0 31 31 63 0 63 31 63 31 95 31 63 63 31 31 63 0 0 63 63 95 31 31 95 31 95 31 95 31 63 31 63 95 0 31 31 95 31 31 31 31 31 31 95 63 63 31 31 0 63 63 63 95 63 31 63 63 95 63 31 95 95 95 63 63 31 0 63 31 63 31 63 31 63 31 63 63 63 95 95 63 127 31 63 63 31 63 31 63 63 63 63 63 95 95 31 95 63 0 63 63 63 95 31 63 31 63 63 63 31 31 31 31 63 31 31 31 31 0 63 31 63 95 0 31 31 31 31 31 31 31 63 31 31 31 31 31 63 31 31 31 31 95 63 31 31 31 31 63 63 0 31 31 63 31 0 31 31 63 0 63 0 63 31 63 63 31 31 63 63 0 31 31 63 31 31 31 63 31 63 0 31 63 31 0 0 63 -31 0 31 63 31 0 63 63 63 95 63 31 0 31 31 63 31 31 31 31 31 63 63 95 31 0 63 63 31 63 0 63 31 63 95 31 31 31 63 95 63 31 63 95 63 31 63 31 63 31 63 63 63 31 31 63 95 31 63 95 63 63 31 31 63 31 63 63 95 95 95 63 127 95 63 31 63 63 63 31 95 63 31 63 31 63 31 95 95 63 63 31 31 31 63 95 63 63 63 95 63 63 31 95 0 63 31 31 63 31 63 63 31 63 95 63 0 0 31 63 31 31 63 31 63 63 63 31 63 95 63 63 0 31 63 31 63 95 31 31 63 0 95 31 31 95 31 31 63 95 63 31 63 63 63 31 31 31 63 31 0 63 0 31 31 31 31 0 31 63 31 31 0 0 31 0 63 31 31 31 0 63 31 0 31 0 31 31 0 63 31 0 -31 63 0 31 31 63 63 31 63 0 31 63 31 31 63 31 31 31 31 31 63 63 63 31 0 63 95 31 0 63 31 31 63 0 31 31 31 63 63 63 95 31 63 63 31 63 63 63 31 31 63 95 31 63 31 31 31 31 31 95 31 31 31 63 31 63 63 95 63 95 63 63 63 63 63 63 95 31 63 63 63 63 95 63 95 31 95 95 95 95 95 31 95 63 95 31 95 31 31 31 31 95 63 31 63 95 63 31 31 63 63 31 0 63 31 31 31 95 31 31 31 95 31 63 31 63 95 31 63 95 31 63 31 31 31 31 63 31 63 31 0 63 0 31 31 0 31 31 63 31 0 63 0 0 31 31 63 31 63 63 31 0 31 31 63 31 31 31 31 0 0 31 31 63 0 31 31 31 31 0 31 31 0 31 31 31 0 31 31 0 0 31 -31 95 0 31 63 63 31 31 31 95 95 31 31 0 31 31 0 63 31 31 31 63 31 63 63 31 63 31 31 63 95 63 63 63 63 31 31 31 63 95 63 0 31 0 63 63 31 63 95 95 95 95 0 95 63 63 63 31 31 95 31 31 63 63 63 95 31 95 63 31 63 63 31 63 63 127 63 63 31 95 95 31 95 63 0 31 95 31 63 31 31 63 31 31 31 63 31 63 31 31 63 63 95 31 31 63 63 31 63 63 31 63 63 63 31 0 31 31 31 63 31 63 31 31 63 63 31 31 63 31 63 31 31 95 31 63 31 63 31 31 31 31 63 31 63 63 31 63 63 31 63 31 0 0 0 31 0 31 31 31 31 31 31 63 31 31 31 0 31 31 0 31 31 31 0 0 0 0 0 31 0 0 31 31 31 0 31 95 0 31 0 0 -31 0 31 31 0 0 31 31 31 31 63 31 63 63 31 63 63 31 31 31 63 31 95 31 0 31 31 31 31 63 31 63 31 95 31 63 31 31 31 0 31 31 95 63 31 95 63 95 31 63 63 63 31 63 95 31 63 63 31 63 95 31 63 63 63 95 31 63 31 95 31 63 63 63 127 31 95 63 63 31 95 63 63 95 63 63 0 31 95 63 63 63 31 31 63 95 63 63 63 95 63 63 31 95 31 31 63 31 63 63 95 31 63 63 63 0 95 31 95 31 31 63 95 31 31 63 63 63 63 31 0 63 0 63 63 31 31 0 31 31 63 0 31 63 31 63 63 31 31 31 31 63 31 0 63 63 0 31 31 0 63 0 31 31 0 31 63 31 63 31 31 31 0 31 63 63 0 0 0 0 31 31 0 0 31 0 63 31 31 0 0 31 -95 31 31 31 63 63 31 31 0 0 63 0 31 31 63 31 31 63 63 63 31 31 63 63 31 63 31 31 31 63 63 95 63 31 63 63 63 0 31 95 31 63 95 31 63 31 31 63 31 63 63 31 31 63 63 63 31 95 63 63 95 63 31 31 63 63 95 63 95 63 31 63 63 95 31 63 63 31 63 63 63 31 31 63 31 95 63 95 63 63 63 31 31 31 63 31 95 31 63 31 63 63 63 63 63 63 63 31 31 63 63 63 95 95 31 31 95 95 95 63 95 63 63 63 63 63 31 31 31 0 31 63 63 0 63 31 31 0 63 63 31 63 63 31 0 63 31 0 0 31 0 63 63 31 31 31 95 95 31 63 31 31 31 31 0 95 31 31 31 63 0 0 31 31 31 31 0 31 31 31 63 31 0 0 31 0 95 0 63 0 31 31 -31 31 63 0 31 31 31 63 31 63 31 0 63 63 0 0 0 31 63 63 95 31 95 63 31 63 31 31 63 31 31 63 63 95 63 31 0 31 95 95 63 63 95 63 31 63 63 95 63 63 95 127 95 63 95 31 31 63 31 95 31 31 95 31 95 63 63 31 95 63 31 63 95 63 63 63 31 31 95 31 31 95 63 63 63 63 31 0 63 63 63 63 63 0 63 0 63 63 63 0 31 63 63 63 31 95 31 95 95 0 63 63 31 31 63 63 95 63 63 63 63 63 63 31 95 63 63 31 0 0 0 63 63 95 63 31 31 31 63 31 63 31 31 0 31 31 31 31 31 0 0 31 31 63 95 31 31 31 0 0 31 63 0 31 31 63 0 0 0 31 31 63 63 31 31 0 31 0 31 63 0 31 63 31 31 0 31 31 31 63 63 0 -95 31 95 31 31 63 31 63 31 31 0 63 31 63 63 31 63 31 95 63 63 31 63 31 31 31 31 63 31 31 31 31 31 63 63 63 31 31 31 31 31 31 127 63 0 63 31 31 63 95 31 63 31 63 63 63 63 63 95 95 63 63 31 95 63 95 63 63 63 63 31 95 31 95 95 63 63 63 95 127 95 63 31 63 95 31 31 31 63 63 63 63 63 63 31 95 63 95 63 63 63 63 95 95 63 95 95 63 95 31 95 63 31 95 31 0 31 31 63 95 63 95 63 63 31 63 31 63 31 0 95 63 95 63 31 31 31 31 95 31 31 31 63 31 0 0 0 31 63 31 31 63 0 31 31 0 31 31 0 0 63 95 63 31 31 31 31 31 0 0 63 0 0 0 31 31 63 31 31 31 0 0 31 31 63 31 31 31 31 0 31 31 -63 63 31 31 31 31 63 63 0 31 0 0 31 31 31 31 95 63 63 95 63 63 63 31 63 31 63 31 0 63 63 63 63 31 63 31 95 63 95 95 63 31 31 63 63 63 63 63 31 95 31 31 0 95 31 31 63 63 31 63 63 63 95 31 95 63 63 63 63 63 31 31 95 63 31 63 63 63 95 31 95 63 95 63 63 95 127 95 63 31 63 95 95 63 63 95 95 95 63 63 31 31 63 31 31 31 31 95 63 31 63 95 63 95 0 63 63 31 31 95 0 63 63 63 95 63 63 31 31 63 63 0 31 31 63 63 31 31 31 31 31 63 63 63 31 63 63 31 63 0 31 31 63 31 31 95 31 31 63 31 63 31 31 31 31 31 0 31 31 63 31 31 31 95 31 31 31 63 0 31 31 63 0 31 31 31 31 31 31 0 63 0 -63 31 31 0 0 63 31 31 31 63 31 0 31 63 63 0 31 63 95 63 63 63 31 31 63 31 31 63 63 31 63 63 31 63 31 95 31 63 31 63 31 31 95 95 95 31 63 63 63 31 95 95 63 63 63 63 0 63 63 95 63 63 63 95 63 63 63 127 63 63 95 31 63 63 31 63 63 31 31 63 63 31 95 63 95 63 95 95 95 31 63 31 63 63 63 95 31 63 63 0 63 63 95 63 63 31 31 63 31 31 31 63 31 63 95 63 31 63 63 31 63 95 0 31 63 31 31 63 95 31 63 31 0 31 63 31 63 31 0 63 63 63 31 31 63 31 31 63 0 31 31 31 95 31 31 63 31 95 63 63 0 0 31 63 31 63 0 31 0 31 0 0 63 0 31 0 31 31 63 0 31 31 63 31 63 31 31 31 0 31 31 0 -63 31 63 63 63 31 63 31 31 95 31 63 31 63 63 31 31 31 31 63 0 63 63 31 31 31 63 31 63 31 63 63 63 63 63 95 31 95 31 63 63 0 31 63 31 95 31 31 63 95 95 31 95 127 95 31 31 63 31 63 95 63 63 63 31 63 31 63 63 63 63 95 63 95 63 31 31 95 63 95 31 31 31 63 127 95 63 95 95 31 63 63 63 95 95 63 127 95 63 63 63 31 63 63 63 63 63 127 63 63 31 31 63 31 63 0 63 63 63 63 63 63 31 31 63 31 63 31 0 31 63 63 0 63 63 31 31 31 31 0 63 63 63 31 31 31 63 63 95 31 0 63 31 63 31 0 31 31 31 0 63 31 31 31 31 31 0 31 31 31 31 31 0 0 31 31 63 31 31 0 0 31 31 63 0 31 31 31 31 63 31 63 -0 0 63 63 63 31 63 63 0 31 0 31 0 63 63 31 63 0 31 31 95 95 63 63 31 31 31 31 31 95 63 31 63 31 95 63 31 31 63 63 63 63 95 95 31 31 63 63 63 31 95 31 63 63 63 95 63 63 63 95 95 31 63 31 63 95 63 63 127 95 63 63 95 63 95 95 95 31 95 31 63 63 63 63 63 95 95 63 95 95 95 63 63 63 95 127 31 95 95 95 31 63 31 63 31 31 63 63 31 63 63 95 63 63 95 63 31 63 0 63 63 63 63 95 31 31 63 31 31 63 63 63 63 63 95 63 63 63 31 63 31 63 31 31 63 0 0 31 0 31 95 63 31 63 63 31 31 31 31 31 0 0 31 0 63 63 63 63 0 0 31 63 0 31 63 0 0 31 31 63 0 63 0 31 31 0 31 31 0 31 0 0 -63 0 31 31 31 31 63 0 31 63 95 0 31 63 63 31 31 31 31 63 63 31 31 31 63 63 31 31 63 63 63 63 63 63 63 63 31 63 63 0 0 63 63 63 31 95 127 63 95 31 63 31 95 95 95 95 63 63 95 95 31 63 63 63 95 127 127 63 95 0 95 63 63 31 95 63 63 63 63 63 63 63 63 95 63 95 31 31 95 31 95 31 127 63 95 31 95 31 31 63 63 31 63 95 31 31 95 31 95 95 63 31 31 95 31 95 95 31 63 63 63 63 63 31 63 63 0 95 63 0 95 95 0 31 31 31 31 0 31 31 31 63 31 31 31 95 31 31 31 31 63 0 31 31 0 31 95 63 0 31 31 63 0 95 31 31 63 31 63 63 0 63 63 0 0 31 0 63 31 63 63 0 0 31 0 31 0 31 31 63 63 63 -0 0 63 0 0 31 31 31 63 63 0 63 0 31 63 31 63 95 31 31 63 63 63 31 31 0 63 63 31 31 31 31 63 63 63 63 63 95 63 0 95 63 63 63 63 0 31 31 63 63 31 95 63 63 31 63 63 63 31 95 63 63 31 63 95 31 63 31 63 95 31 95 63 63 95 95 63 63 95 63 31 127 31 63 95 63 63 95 63 95 63 31 63 95 63 95 95 95 127 95 31 31 31 63 63 63 63 63 63 63 63 63 63 31 95 31 63 63 63 31 63 63 63 31 31 63 63 63 31 63 0 63 63 63 63 95 63 63 63 0 31 0 31 0 63 31 63 63 31 63 31 31 31 63 63 31 31 31 31 0 31 0 0 31 31 31 31 31 31 31 63 31 0 31 31 0 31 31 31 0 31 63 31 31 63 31 31 31 31 0 0 31 -0 0 31 63 31 95 63 31 0 63 31 95 31 63 0 31 0 31 63 63 95 31 31 31 31 31 63 95 63 63 63 0 95 63 63 31 63 0 95 63 31 31 63 63 127 31 31 63 63 31 63 95 63 63 95 63 31 63 63 95 127 95 95 95 31 63 95 95 95 63 95 127 95 31 95 63 31 95 95 95 63 63 63 63 63 95 127 127 63 63 95 63 31 63 63 95 0 63 63 0 63 63 95 63 63 63 31 95 63 31 31 95 31 63 95 63 31 31 63 63 31 31 31 31 31 31 31 63 63 63 31 0 95 31 0 31 63 63 31 63 31 63 31 63 31 63 63 0 31 0 31 63 31 63 63 31 31 31 0 31 0 0 0 63 95 0 31 31 31 0 0 31 0 31 31 63 63 31 31 31 63 31 63 0 0 63 31 31 31 31 0 31 -95 31 31 31 31 0 63 0 95 0 31 95 31 63 63 63 31 31 31 31 63 31 63 31 31 31 63 31 95 31 63 31 63 63 63 63 31 63 63 63 31 0 31 63 63 31 63 95 95 63 95 95 63 31 31 95 95 63 63 95 95 95 31 95 95 95 63 95 63 63 63 63 95 95 127 63 31 31 95 63 95 95 63 63 95 95 31 95 95 95 63 63 63 95 63 31 63 63 63 95 127 95 63 95 95 95 0 63 63 95 63 31 63 31 95 31 63 63 95 31 63 31 95 31 63 31 95 31 31 63 0 63 127 95 63 0 31 63 63 63 31 0 31 0 0 31 31 31 31 0 63 63 0 95 31 31 0 31 63 31 31 31 31 63 0 31 31 95 63 0 31 31 31 63 31 0 63 63 31 0 31 31 63 0 31 31 31 31 0 31 0 63 -31 31 31 63 31 31 31 63 31 31 95 0 31 31 63 31 63 63 63 63 63 63 0 0 31 31 63 31 63 95 95 63 95 63 95 63 31 31 63 63 95 95 63 63 63 95 63 95 95 63 63 63 63 63 63 63 31 95 95 95 127 127 63 63 63 95 95 127 63 95 127 127 95 95 95 63 95 63 63 127 127 95 127 63 95 95 63 63 63 95 95 63 95 127 31 63 95 127 63 95 31 63 95 31 63 63 63 63 63 63 31 63 63 31 31 63 31 31 31 63 31 63 63 63 63 31 63 0 63 31 63 95 63 31 95 95 63 63 63 31 63 95 63 63 31 31 0 31 0 63 63 31 31 31 31 63 63 31 63 63 31 31 63 31 0 31 0 0 0 0 31 31 31 0 63 0 31 63 31 63 0 0 0 0 31 31 0 0 31 31 63 0 -31 0 31 0 31 63 31 63 31 95 63 63 63 31 63 0 63 63 31 31 63 63 0 63 31 63 95 31 63 63 63 63 31 63 31 63 63 31 31 63 63 63 63 95 63 63 95 63 31 63 95 63 63 95 63 95 63 31 31 63 95 63 31 127 95 63 63 63 95 95 95 127 63 63 95 63 127 31 95 95 95 63 95 95 63 95 95 63 63 127 63 63 63 127 63 63 95 63 31 95 63 63 63 63 63 63 63 63 63 31 63 95 95 95 95 63 63 63 31 95 95 0 95 31 95 31 31 31 31 31 95 31 63 31 31 31 31 63 63 63 63 31 0 31 63 0 31 31 63 31 0 31 31 0 63 31 31 31 0 0 0 63 31 31 31 0 0 31 0 63 0 31 31 63 31 63 0 31 63 0 0 0 63 31 63 31 0 0 63 0 31 31 -63 95 31 31 31 95 31 31 63 63 31 63 31 63 0 95 31 31 95 63 63 63 63 31 31 95 63 63 63 31 31 95 63 63 63 63 95 63 63 63 95 95 31 63 31 63 0 95 95 127 63 63 63 63 63 31 31 95 95 0 95 127 95 95 95 63 95 95 31 63 127 127 95 95 95 95 95 95 127 63 63 63 95 95 95 127 95 127 63 63 63 63 95 127 31 95 63 127 63 95 63 63 95 95 63 31 63 95 95 63 95 63 63 63 31 31 63 63 31 63 63 63 31 63 31 63 95 95 63 31 63 95 0 31 31 63 0 63 31 31 31 31 31 63 63 31 31 31 31 63 0 31 0 0 63 0 0 63 31 31 31 31 31 31 63 31 63 0 63 31 0 63 31 31 0 63 31 31 31 31 31 31 31 0 63 31 0 31 31 31 31 31 -31 95 31 31 63 31 0 63 31 95 31 63 63 31 31 63 63 63 63 31 63 63 31 63 0 63 31 63 31 63 63 31 95 95 31 31 63 63 63 31 31 95 95 63 63 31 0 95 63 31 95 63 95 95 95 127 95 127 63 63 31 95 95 63 95 127 63 127 95 95 95 95 63 95 63 127 159 63 95 63 127 63 63 95 127 127 63 63 95 31 95 63 95 95 63 63 95 95 63 95 63 63 31 63 0 95 95 127 31 127 63 63 63 63 31 63 31 31 31 63 63 31 63 31 31 63 63 95 63 63 31 95 95 63 31 31 31 95 31 63 0 31 95 63 0 0 63 31 0 63 95 0 31 0 31 31 0 63 31 31 63 0 31 31 31 63 31 0 31 63 31 63 31 0 31 0 63 31 31 95 0 63 31 63 63 31 0 0 0 0 0 31 -63 63 63 31 31 63 63 0 31 95 31 31 95 63 31 63 63 95 31 63 63 63 63 31 63 63 95 63 31 63 63 31 95 95 63 31 63 63 95 63 95 63 63 31 63 63 31 63 95 63 95 63 63 63 63 63 31 63 95 63 63 127 95 63 127 95 31 63 95 63 63 95 95 95 95 127 127 95 95 127 95 95 95 63 95 63 63 63 95 63 95 63 95 63 63 63 63 63 95 127 127 31 63 95 127 95 31 95 31 95 63 63 31 63 95 63 95 31 31 63 0 63 63 63 95 63 63 0 0 31 31 63 31 63 31 31 95 31 31 31 31 63 63 31 63 63 63 31 63 95 63 31 63 0 63 95 95 0 0 31 63 31 63 31 31 0 31 31 31 63 31 31 31 0 31 63 31 31 0 31 63 31 0 31 31 31 31 63 31 0 0 31 -63 31 0 31 63 63 31 31 63 0 31 63 63 31 63 31 63 0 0 31 31 0 63 63 31 63 127 63 63 63 31 63 63 127 63 63 31 95 63 63 63 63 63 63 95 95 95 63 95 63 63 95 63 95 95 31 127 95 63 127 95 63 63 63 127 95 127 95 95 127 95 95 63 95 63 95 63 95 95 63 95 95 127 31 63 127 127 95 63 127 63 31 63 63 95 95 63 95 63 63 95 63 95 31 95 63 31 63 31 31 63 63 63 63 63 63 31 63 63 63 63 63 31 63 31 63 31 31 95 0 31 31 31 63 31 31 31 31 63 63 63 31 95 31 0 63 31 31 63 31 31 63 95 63 31 63 31 31 31 63 63 0 95 63 31 31 0 31 31 31 0 63 63 0 63 63 31 63 0 0 63 31 0 31 31 0 0 31 0 0 31 0 -0 31 63 31 63 0 31 63 63 63 95 31 31 63 31 31 31 63 31 63 63 63 31 63 31 63 31 31 63 63 63 63 31 63 95 63 31 95 95 31 63 95 63 63 95 31 95 63 95 127 95 95 63 95 63 63 95 95 95 63 63 95 95 95 63 127 95 63 127 95 127 95 95 95 127 127 31 127 127 63 127 127 95 63 95 95 95 95 63 95 63 63 95 63 95 127 95 63 63 95 127 95 63 63 95 95 95 63 63 95 63 31 31 63 95 63 31 63 95 63 63 63 31 63 63 31 31 31 31 0 31 31 31 63 63 63 31 31 31 31 31 63 95 31 31 95 0 95 31 31 63 31 0 0 63 31 31 31 31 95 63 63 31 31 31 31 63 31 31 63 0 0 31 31 63 0 31 31 31 31 63 31 63 0 63 31 0 0 0 31 31 0 -31 0 31 31 95 31 63 63 31 63 63 31 31 63 31 63 31 63 63 0 63 31 63 31 31 95 63 63 63 63 63 95 63 31 0 63 31 31 95 95 63 63 63 63 63 63 63 95 31 63 95 63 95 63 63 95 95 127 63 31 95 31 63 63 127 95 127 95 95 95 127 95 95 127 63 63 95 127 159 159 95 95 63 95 95 127 63 63 127 31 63 95 127 95 31 63 95 31 63 31 95 95 95 31 31 95 63 31 63 95 63 63 63 63 63 63 31 63 63 63 31 95 31 95 63 31 63 31 31 63 63 63 31 31 31 31 63 0 95 31 31 63 31 31 0 0 63 31 31 63 63 0 95 63 31 31 63 95 0 31 0 63 31 0 31 31 31 31 63 0 31 31 31 31 31 31 63 0 0 31 31 31 63 0 31 31 0 31 0 31 0 0 -31 0 0 31 31 31 31 31 31 95 0 31 95 63 31 0 31 63 31 0 31 95 31 63 63 63 31 63 63 95 127 63 31 95 31 31 31 63 95 31 95 95 63 95 95 95 95 63 95 95 63 63 63 127 31 63 127 95 63 95 127 95 95 127 95 127 127 127 95 127 63 95 127 127 127 127 127 127 63 127 95 95 127 127 95 127 95 95 127 95 95 95 95 95 63 63 95 63 63 95 95 95 31 95 63 63 127 63 63 63 95 127 127 63 95 31 31 63 95 31 95 63 63 95 95 31 31 63 63 63 63 31 31 63 63 95 63 31 31 31 0 95 0 63 63 31 31 31 63 95 63 63 0 31 31 31 0 63 63 63 31 63 31 0 95 31 63 31 31 31 63 63 63 31 31 31 31 31 0 31 0 31 63 63 31 31 31 0 0 0 31 31 -0 31 31 63 63 63 63 31 31 95 31 0 63 31 0 31 0 63 31 63 63 63 31 0 63 63 31 63 63 95 95 63 63 0 31 31 127 63 63 63 95 63 95 31 127 127 95 63 31 63 127 63 63 95 127 63 127 95 95 95 63 63 95 95 63 63 127 63 95 127 159 95 159 63 127 127 95 63 95 95 95 127 127 95 95 127 31 95 127 95 63 127 63 95 95 127 63 95 95 95 95 63 63 95 63 63 95 95 95 95 63 63 63 31 31 31 63 63 63 63 63 31 63 63 31 31 63 63 31 63 63 63 31 31 63 0 63 63 31 31 0 31 31 63 63 63 31 95 63 0 0 0 31 31 63 31 63 31 63 95 63 95 31 31 95 31 0 0 0 63 31 0 0 63 0 0 31 31 63 0 31 31 0 31 31 0 0 31 0 31 31 31 -63 63 63 63 0 63 63 0 31 31 31 31 0 31 31 31 31 31 63 63 31 63 63 31 63 63 63 63 95 31 63 31 95 95 95 31 95 31 95 63 95 95 95 63 95 95 31 95 95 63 63 127 63 127 127 127 127 95 159 95 95 95 95 95 127 127 127 127 95 95 95 159 191 127 127 95 95 95 63 159 95 95 127 95 127 127 63 95 127 63 95 95 159 127 95 127 95 95 95 95 63 63 0 127 95 127 95 63 31 63 95 95 95 31 63 63 95 95 63 31 63 63 63 31 63 63 63 31 63 31 95 95 63 31 31 31 31 95 31 63 63 31 31 31 31 63 63 63 63 31 0 31 31 0 63 63 31 31 31 63 63 63 31 31 31 31 31 63 0 63 31 31 31 31 31 31 0 0 31 31 63 31 31 31 31 31 0 31 63 31 31 0 -63 63 63 31 0 63 95 0 31 63 31 63 63 63 0 31 63 95 95 31 63 63 63 31 95 95 31 31 63 63 63 31 95 0 31 31 31 63 63 95 63 95 63 63 95 95 63 95 31 63 95 95 31 95 63 127 63 95 63 95 127 95 127 95 127 95 63 95 95 95 127 95 95 95 127 127 95 95 95 127 63 127 95 95 95 95 127 127 95 95 95 95 127 95 63 127 127 127 63 95 63 95 63 95 63 95 127 95 63 95 127 95 63 95 63 127 95 95 63 63 63 63 63 63 63 63 63 95 95 63 31 63 63 31 31 31 95 31 63 95 63 95 63 63 31 63 63 63 31 31 31 63 31 0 0 31 31 63 95 31 63 63 63 0 0 63 0 31 31 0 0 0 63 63 31 31 0 63 31 0 0 0 0 31 63 31 31 0 31 31 0 31 -31 31 31 95 127 31 31 63 63 31 31 0 63 63 0 63 95 31 63 63 31 63 31 63 63 63 63 63 63 63 63 63 63 95 31 127 63 63 63 31 63 31 63 95 63 127 31 31 95 63 95 63 127 63 95 63 63 63 95 95 95 95 95 63 95 159 95 95 95 95 95 191 127 95 159 127 127 127 127 127 127 159 63 127 95 95 127 95 127 63 63 95 95 95 127 159 63 95 127 95 95 95 95 63 95 63 95 127 95 63 127 95 127 95 95 63 63 95 95 63 63 63 63 31 31 31 31 95 63 63 31 31 63 63 63 31 63 95 31 63 63 63 63 31 63 31 63 31 31 63 95 31 31 0 31 0 31 63 63 63 31 31 31 31 31 31 31 63 31 31 31 63 63 31 31 31 31 31 0 31 31 31 0 63 63 0 0 31 31 95 31 31 -0 31 31 63 95 31 31 63 63 63 95 63 63 31 31 31 0 63 0 31 95 95 63 31 31 31 63 95 63 95 95 95 31 63 31 95 95 63 63 95 31 95 95 95 63 63 95 95 63 95 63 95 63 95 63 95 95 127 95 95 127 159 95 95 95 127 159 95 127 159 127 127 63 127 127 159 127 95 159 95 159 127 127 127 95 95 127 159 95 95 127 95 63 95 95 95 95 127 95 63 127 127 95 63 31 95 63 95 63 95 63 63 95 95 31 95 63 95 63 63 31 31 95 63 95 63 95 31 31 31 95 63 63 31 95 31 31 31 63 31 31 127 31 63 127 63 63 63 0 0 63 31 31 63 95 0 63 31 31 31 31 63 63 0 31 0 31 0 63 63 31 63 0 0 31 63 31 0 31 31 31 0 31 31 63 0 0 63 0 63 95 31 -63 95 63 63 0 63 31 0 63 63 31 95 63 63 63 63 31 31 31 31 31 63 95 31 63 63 31 95 63 63 63 63 95 63 63 95 95 31 95 63 63 31 95 95 95 63 95 95 63 95 63 127 95 127 95 127 127 95 95 127 127 127 63 159 127 127 127 95 127 127 159 127 127 191 95 127 127 95 127 127 95 127 95 159 127 95 127 127 159 159 127 127 127 127 159 127 127 63 95 95 31 95 127 63 95 127 95 63 63 127 63 95 63 31 31 63 31 31 63 63 63 95 127 31 31 63 95 95 63 95 31 31 63 95 95 31 95 63 31 63 63 63 31 31 31 31 0 63 31 0 31 31 31 31 63 31 31 31 0 0 0 31 31 63 0 63 63 0 63 31 0 31 31 31 31 31 0 0 31 0 31 31 63 31 31 0 0 63 0 0 0 63 -95 31 0 31 63 31 31 31 63 63 31 95 63 63 95 31 63 0 31 63 31 63 31 31 31 31 63 31 31 63 63 31 31 63 63 63 95 95 63 95 63 95 63 95 95 63 95 127 95 95 63 95 127 127 63 127 127 127 63 95 159 95 127 95 95 127 95 127 159 127 159 95 95 95 127 127 159 159 159 159 127 159 127 159 159 127 127 127 159 95 127 127 95 95 127 127 127 63 95 95 127 95 127 159 95 95 95 63 95 127 63 95 95 127 63 63 63 63 95 31 31 95 95 95 63 95 63 63 63 0 63 63 63 31 63 95 31 31 63 31 63 31 31 63 63 63 63 63 0 31 0 63 31 31 31 0 31 63 31 31 95 63 63 0 63 31 31 31 31 31 63 0 31 63 31 0 0 31 31 31 0 0 31 31 0 63 31 63 31 31 63 0 -63 95 31 63 63 95 95 31 63 31 63 31 63 63 0 31 31 63 95 31 63 63 31 63 63 63 31 31 63 95 63 63 95 63 63 63 63 63 95 95 63 31 127 63 127 63 95 95 63 63 95 63 127 95 127 127 95 127 95 95 95 63 127 95 127 127 95 159 95 95 159 159 127 191 127 127 159 159 159 159 159 127 127 127 127 159 95 159 159 127 127 127 127 127 95 95 95 95 95 127 127 95 95 95 127 127 63 95 95 95 95 31 95 63 63 95 31 31 63 63 127 63 63 31 31 63 31 0 63 63 31 63 95 95 63 63 95 31 31 95 31 63 95 63 31 0 31 31 31 63 63 63 31 31 0 63 31 31 31 31 0 31 31 31 0 63 63 63 0 63 95 63 31 63 63 63 31 0 31 31 63 0 31 0 31 31 31 0 0 63 31 0 -63 63 63 63 63 95 0 63 95 31 31 63 63 31 63 95 95 63 31 63 31 63 63 63 0 31 31 63 95 31 63 95 95 63 63 127 95 127 95 95 95 95 63 95 63 95 63 63 95 95 159 127 159 159 127 95 127 159 127 127 95 127 127 95 127 127 95 95 159 127 127 191 95 159 159 159 191 127 191 191 159 191 95 95 159 159 95 159 127 159 127 159 159 127 159 127 127 127 127 127 127 95 63 95 95 63 127 63 95 127 95 63 63 95 95 31 63 31 95 95 95 31 95 63 31 95 63 31 127 63 95 95 31 63 63 63 31 63 31 0 63 31 95 31 63 31 63 63 63 63 63 63 31 63 63 31 0 31 31 31 95 63 63 95 63 31 0 31 63 63 31 63 31 31 63 31 31 31 31 63 0 0 31 0 31 63 63 31 63 31 31 63 -63 31 31 63 63 31 0 95 95 31 31 31 63 63 95 31 127 95 31 31 95 63 63 31 31 31 63 95 95 95 95 63 31 31 95 63 127 95 95 63 63 63 95 63 63 95 63 95 95 95 95 95 95 95 95 95 95 63 63 159 127 159 159 95 127 127 95 95 127 127 159 127 159 159 191 159 159 159 159 127 191 159 127 159 191 127 159 159 159 159 159 95 159 127 127 127 63 127 63 127 95 63 95 95 63 95 95 95 95 95 95 95 63 95 63 31 31 95 95 63 63 63 95 63 31 31 63 63 95 31 31 95 95 31 0 31 63 63 31 31 63 63 31 31 31 0 95 31 31 31 31 31 31 63 31 63 0 63 0 31 31 0 31 0 31 63 31 63 31 0 0 0 0 31 31 31 31 31 0 0 31 31 0 0 63 63 0 31 63 0 31 63 -31 63 31 31 63 63 63 63 31 31 63 63 31 95 95 63 63 31 31 63 63 31 31 63 63 63 63 63 63 95 63 95 31 63 31 63 63 63 63 31 95 95 63 63 127 63 95 95 63 95 95 159 95 63 95 95 127 95 159 63 127 127 127 159 127 159 127 159 159 191 159 223 191 191 191 191 159 191 191 159 159 159 159 127 191 127 159 159 127 159 191 159 95 127 127 127 127 95 159 95 95 95 127 95 95 95 95 63 95 63 95 95 95 63 95 63 31 95 31 63 63 63 63 63 63 31 63 63 31 63 0 31 95 63 63 0 31 31 63 63 31 0 0 63 63 95 0 31 31 31 63 63 31 31 95 63 31 0 31 0 0 63 31 0 31 31 63 31 0 0 31 31 0 31 31 0 31 31 63 0 31 63 63 63 95 95 0 63 31 31 0 31 -95 95 63 31 95 63 31 63 31 31 63 63 31 31 95 95 63 31 95 31 95 95 63 95 95 95 63 31 63 63 31 95 95 127 95 127 95 63 63 95 63 127 95 31 127 127 95 63 127 127 127 63 95 63 95 159 127 127 95 95 159 127 127 191 191 95 127 191 159 127 159 159 191 191 159 191 223 191 127 223 191 191 159 159 191 191 127 191 159 95 127 95 127 127 95 127 127 95 95 95 127 159 127 95 95 95 95 63 63 63 63 127 95 95 95 63 63 95 63 63 31 31 63 63 95 31 31 63 63 63 95 0 63 63 95 63 0 95 63 95 63 31 0 63 31 31 63 31 31 63 63 63 0 95 31 31 31 31 95 31 31 31 31 0 31 31 95 31 31 0 31 63 31 31 0 0 31 0 0 0 31 31 63 0 0 31 63 0 0 31 31 0 -63 63 31 0 31 31 63 63 63 63 95 63 63 31 63 63 63 95 31 63 63 95 31 63 63 63 95 63 127 31 127 95 127 63 31 95 63 63 63 63 63 63 63 159 63 127 95 95 95 95 63 95 127 95 95 127 127 95 127 127 127 159 159 159 159 159 159 127 127 159 159 191 191 223 191 191 191 223 191 223 159 191 191 223 191 159 223 159 159 127 159 127 159 127 127 127 159 127 159 159 159 95 95 127 63 127 63 127 95 63 95 63 95 95 63 63 95 95 63 95 31 63 63 95 95 31 63 63 63 31 63 63 63 63 95 31 63 31 31 63 31 0 63 31 31 63 31 31 31 95 0 31 63 63 31 31 63 63 31 31 63 95 31 31 31 63 31 31 0 31 0 0 63 63 31 31 0 0 63 31 31 31 31 31 0 31 31 31 0 31 63 31 -63 63 31 0 95 31 63 31 31 63 63 95 63 95 31 95 63 63 95 63 31 0 63 31 95 95 127 63 0 63 95 63 31 95 127 63 31 31 63 95 95 127 127 127 63 95 95 95 127 127 127 95 95 127 95 127 95 127 159 159 95 127 191 127 127 159 159 159 159 223 159 223 223 223 255 255 223 223 191 223 159 191 255 223 191 191 159 223 223 127 127 159 159 191 127 159 159 159 159 127 95 95 95 95 95 95 63 127 127 63 95 63 63 95 63 63 31 127 63 31 63 31 0 63 63 63 63 95 31 95 63 63 63 63 95 63 63 95 63 95 31 31 31 31 63 0 63 63 63 63 31 31 31 31 31 63 63 31 63 0 31 31 31 0 31 0 31 63 63 31 0 31 63 0 31 63 31 31 31 31 63 31 31 31 63 31 63 63 31 31 0 63 -95 95 31 63 63 31 31 31 0 31 31 95 31 63 63 63 95 31 31 63 63 31 95 95 127 63 63 63 31 63 63 95 95 31 95 95 63 63 95 95 63 95 127 95 127 63 127 159 127 95 127 159 95 159 127 95 159 127 127 127 191 159 191 191 191 191 223 223 191 223 191 223 255 255 255 255 255 255 255 255 255 255 223 191 191 191 191 223 191 191 127 191 127 127 159 95 95 159 127 159 127 159 127 159 127 95 127 95 127 63 127 127 127 31 63 63 63 95 127 63 31 63 95 31 63 31 63 95 63 63 63 31 63 31 31 63 95 0 63 31 31 63 63 31 31 31 31 95 31 63 31 31 63 31 31 31 0 31 0 31 63 63 63 31 31 0 63 31 63 63 63 63 31 63 63 31 63 0 31 0 31 0 31 31 31 31 63 63 31 63 31 63 -31 31 63 31 63 31 63 63 0 95 63 31 63 63 63 0 63 63 95 63 95 95 63 95 95 95 95 95 95 95 63 95 95 63 63 63 95 127 127 127 31 127 127 127 127 127 95 95 127 127 95 127 127 159 159 127 159 127 127 95 223 223 191 191 127 191 127 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 191 191 191 159 159 127 159 191 127 159 127 159 95 191 159 127 127 127 95 127 95 95 95 159 63 95 95 63 95 95 95 63 63 63 63 95 95 31 0 95 63 95 63 63 31 95 31 31 63 95 31 31 95 31 31 31 0 0 31 63 0 31 31 31 0 31 31 0 31 63 31 0 63 63 0 63 0 31 31 63 0 31 0 63 31 63 31 31 31 95 31 31 0 63 63 31 63 0 0 31 63 31 31 0 0 -95 63 63 63 63 63 63 95 31 63 95 63 63 63 31 63 63 95 63 31 95 63 63 95 63 63 31 63 95 63 95 95 63 95 95 63 95 63 95 95 127 127 127 95 95 95 95 95 127 159 159 127 127 159 159 127 159 159 95 127 159 159 223 159 191 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 127 159 159 159 127 127 191 159 63 159 95 127 127 159 95 95 95 127 127 95 95 63 127 95 95 63 95 63 31 95 31 63 31 127 95 31 31 95 63 95 0 63 95 63 63 63 31 95 31 63 31 63 31 31 31 63 63 95 31 31 63 31 63 63 63 63 31 63 31 0 95 31 95 63 31 0 31 63 31 0 31 31 31 31 63 31 31 31 63 0 31 31 0 63 31 31 0 0 31 31 0 63 -63 63 63 31 63 63 31 63 63 31 31 31 63 63 63 31 31 63 63 63 95 63 63 63 63 63 95 63 95 95 63 63 95 63 95 95 63 63 63 95 95 95 63 95 95 127 95 63 95 127 63 159 95 191 159 159 127 95 127 159 191 223 191 223 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 223 191 159 127 159 127 191 127 127 159 63 159 95 127 127 159 95 95 127 95 95 95 63 127 63 127 63 127 95 31 95 31 31 63 95 31 63 31 63 63 31 31 63 31 31 63 63 63 63 31 63 31 95 31 31 31 0 63 63 63 63 31 63 31 31 63 63 31 63 63 63 63 63 31 31 0 63 31 31 63 31 0 31 0 31 31 31 31 31 63 31 0 63 31 0 31 31 0 31 0 31 31 31 -63 31 63 63 63 31 63 63 63 95 95 31 95 63 95 63 63 31 63 0 63 63 95 63 63 63 63 95 95 63 95 95 95 63 127 63 95 95 95 95 95 127 95 95 95 127 127 127 127 127 95 159 159 159 159 127 127 159 159 159 159 223 223 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 159 223 159 159 159 127 95 159 95 127 127 159 127 127 95 95 63 95 95 63 63 95 63 63 63 63 95 31 95 63 95 63 63 95 95 31 63 63 31 63 63 63 95 31 63 63 31 31 63 63 31 31 63 31 63 63 31 63 31 63 31 0 31 63 31 63 63 63 0 31 31 31 31 31 31 31 31 31 63 31 0 0 0 0 31 0 31 0 63 31 63 0 63 0 0 0 31 0 63 -63 63 95 31 63 63 95 95 63 95 95 63 63 63 63 63 95 63 63 63 63 63 63 63 95 95 95 63 63 95 63 63 127 63 95 95 95 63 127 95 95 127 127 127 95 95 127 159 127 127 159 127 159 159 159 191 191 159 191 191 191 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 159 159 223 127 159 127 127 159 159 127 159 127 95 95 95 63 127 127 127 63 63 127 127 63 127 127 95 95 95 95 63 63 95 31 95 31 95 63 63 31 63 63 63 31 63 63 31 63 31 31 31 31 63 95 31 63 63 95 63 31 63 31 63 31 63 31 31 63 0 63 31 63 63 0 63 0 31 31 0 63 0 31 0 0 0 0 63 0 31 31 63 0 31 31 31 31 0 31 31 0 -95 63 63 63 63 31 63 63 31 63 63 63 63 63 63 95 63 31 63 63 63 95 63 63 63 63 63 95 95 63 63 95 95 127 95 95 95 95 95 95 95 127 95 127 95 95 95 127 127 127 159 127 159 159 127 127 191 191 191 191 191 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 127 223 191 127 127 127 159 127 127 127 95 127 95 127 63 63 63 95 63 95 63 63 95 63 63 63 95 95 95 95 63 31 63 31 95 31 63 63 31 31 63 95 63 31 95 63 95 31 63 95 31 63 31 63 31 31 31 31 31 63 63 0 0 63 63 31 0 31 63 63 0 31 63 31 63 63 0 0 31 31 31 0 31 31 0 0 31 31 0 31 31 63 31 63 31 0 31 63 -63 63 95 63 63 31 63 63 63 63 31 95 63 63 95 63 31 63 95 63 31 127 95 63 95 95 95 95 95 63 63 95 95 63 95 95 95 63 95 127 95 127 95 127 95 127 127 159 95 127 95 159 159 191 159 159 159 159 191 159 159 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 223 223 191 191 159 159 127 159 127 127 127 95 127 95 95 127 63 95 63 127 95 95 95 127 95 63 95 63 63 63 63 31 31 95 63 63 63 31 63 31 31 63 31 31 63 63 63 63 0 31 31 63 31 63 0 31 63 63 0 31 31 31 63 31 63 63 31 0 31 31 63 31 31 0 63 63 0 31 31 0 31 31 31 0 31 63 63 63 63 31 31 31 31 31 31 31 63 0 -31 95 63 63 63 63 31 31 63 95 63 31 63 63 63 63 63 95 63 95 95 95 63 95 127 63 95 63 95 95 95 63 95 95 63 63 95 95 95 63 127 127 95 127 127 95 95 159 127 127 95 127 127 159 159 127 191 159 191 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 191 191 191 159 127 159 95 127 159 127 127 127 127 127 63 95 95 95 127 95 95 95 63 63 31 95 95 63 63 31 63 63 95 63 63 63 63 63 63 31 63 31 95 63 95 63 63 31 63 0 63 63 31 31 63 0 63 63 31 63 31 95 31 63 0 63 31 31 31 31 0 63 0 31 95 31 31 31 0 63 31 31 63 63 63 63 0 0 0 31 0 0 0 31 31 0 0 0 -63 31 31 63 31 63 63 31 31 63 95 63 63 63 63 31 63 95 63 63 63 95 63 95 63 95 63 95 63 63 95 63 95 95 63 95 95 63 95 95 127 63 127 127 159 127 95 95 127 127 127 159 127 159 127 191 159 191 191 223 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 159 159 159 159 191 127 191 127 127 159 159 95 159 127 95 31 95 95 63 95 95 95 63 63 95 63 63 63 63 95 95 95 31 31 63 63 31 63 63 63 31 31 63 31 95 63 63 63 0 63 63 63 95 63 0 63 0 31 31 0 63 31 31 31 31 63 63 0 31 31 31 31 0 63 0 63 31 31 31 31 63 63 31 31 0 63 0 0 63 31 63 31 63 63 31 0 31 -31 95 63 31 31 95 63 95 31 95 63 63 63 63 63 31 95 95 63 31 63 31 63 63 63 63 63 31 95 63 63 95 95 127 63 95 63 63 95 63 95 63 127 95 127 127 95 95 127 127 95 159 127 127 159 159 191 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 159 127 127 95 159 127 127 127 127 95 159 127 95 127 95 127 31 63 63 127 63 31 63 63 95 95 95 31 95 63 63 63 95 63 63 31 31 31 63 63 31 63 31 31 63 31 31 31 95 63 95 63 0 31 31 0 63 31 31 63 31 0 63 31 0 63 31 0 63 31 31 63 63 31 31 31 63 63 0 63 63 63 0 31 31 31 63 0 31 0 31 63 0 31 -63 31 31 63 31 63 31 31 31 63 63 63 31 127 63 63 95 31 127 127 31 63 95 63 63 95 63 63 31 63 95 63 95 95 63 95 127 63 127 63 127 127 127 95 127 63 95 95 159 127 159 127 159 159 191 159 127 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 159 191 127 159 159 159 159 95 159 95 95 159 95 63 127 95 127 127 95 127 95 63 95 31 63 95 127 63 95 63 31 95 63 31 31 31 95 31 31 63 63 95 31 63 63 63 31 31 31 31 31 63 0 31 31 31 63 31 63 31 31 31 63 0 63 63 0 0 31 31 0 0 63 31 31 31 31 0 31 63 0 31 31 63 63 63 0 31 0 31 0 0 31 31 31 -63 63 63 95 63 63 95 31 63 63 31 63 63 95 63 63 63 63 63 95 63 63 63 31 63 63 95 63 63 31 63 63 127 63 63 63 95 127 95 95 95 95 95 95 63 95 95 127 127 127 159 127 159 191 127 159 159 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 191 191 127 191 127 127 191 127 95 95 95 127 95 127 63 95 95 127 127 95 63 127 63 95 95 95 95 95 95 95 63 95 63 63 95 63 31 95 127 63 63 0 31 63 63 31 31 63 31 31 63 31 31 31 63 0 31 31 31 0 63 63 0 31 0 63 31 31 63 31 31 0 31 0 0 0 63 0 31 0 0 31 0 31 31 63 31 0 0 63 63 0 63 0 0 -63 31 31 31 63 31 95 31 31 63 31 63 31 63 95 31 95 31 95 31 63 63 63 95 95 63 127 63 95 95 95 95 63 95 63 95 63 95 127 127 127 127 95 127 95 95 127 95 159 127 159 127 159 223 159 127 191 223 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 159 191 191 127 127 159 95 159 159 63 127 95 127 95 95 63 95 127 63 95 95 95 95 95 63 63 63 95 95 31 63 95 63 63 127 63 63 31 31 63 31 63 95 63 63 63 63 63 63 31 31 31 63 0 63 31 63 31 63 0 0 31 63 0 31 95 31 31 0 63 31 31 63 31 31 0 31 63 0 31 31 63 31 31 63 63 31 31 31 31 63 0 31 0 -63 95 63 63 31 31 63 31 63 63 63 63 63 127 63 63 31 95 95 63 63 95 63 95 63 63 95 95 63 63 95 63 63 63 127 95 95 63 63 95 95 95 95 95 95 95 127 95 127 159 159 127 127 159 159 191 159 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 159 191 159 159 159 127 159 191 127 95 127 95 95 95 63 95 127 127 63 95 95 95 95 95 95 95 63 63 63 63 63 63 63 63 95 31 31 63 31 31 31 63 63 0 63 31 31 31 95 63 63 63 31 31 31 31 31 63 31 31 0 0 31 31 0 31 63 31 0 63 31 63 63 31 31 31 0 31 31 63 63 63 63 31 31 63 31 31 31 63 31 31 31 31 -63 31 31 63 0 95 31 31 63 63 95 95 31 31 95 63 63 95 31 63 63 31 31 95 63 63 95 95 95 63 63 95 95 127 63 95 63 95 95 95 95 95 127 95 159 95 127 95 127 159 127 191 159 159 159 159 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 223 159 159 191 127 127 159 127 95 95 63 159 127 95 95 95 63 95 95 95 95 95 95 95 95 63 63 95 95 31 31 63 31 63 63 63 0 31 63 63 63 31 63 63 63 31 31 95 63 63 63 0 63 63 95 63 63 31 0 31 31 0 31 31 63 63 31 31 0 31 63 0 31 31 31 0 31 63 0 31 0 31 31 63 31 0 63 31 0 31 0 31 31 0 -0 63 31 31 31 63 63 63 63 31 31 63 31 95 63 63 63 63 31 31 95 31 95 95 31 63 95 63 95 95 63 31 95 95 95 95 63 95 31 127 95 95 95 127 159 95 95 95 127 127 127 159 159 159 159 127 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 159 159 127 159 159 127 127 159 95 159 159 127 95 95 63 63 127 159 95 63 63 63 31 63 127 31 95 31 127 95 31 63 63 95 63 95 95 31 63 63 63 95 31 31 63 63 95 95 31 31 63 31 95 63 63 0 63 31 31 31 31 0 0 63 0 63 0 31 31 31 31 31 31 0 63 31 31 63 31 31 0 31 31 63 31 0 0 0 31 0 63 63 63 0 31 -31 31 63 31 63 63 63 31 63 31 63 63 95 31 63 63 31 63 63 95 63 95 63 95 63 63 63 63 63 31 95 95 63 95 95 63 95 95 95 31 95 159 127 127 95 127 127 95 95 127 159 127 159 159 223 159 223 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 191 191 127 159 159 159 159 159 159 127 95 95 95 63 63 95 95 95 159 63 95 95 127 63 63 63 95 63 63 95 63 31 31 95 63 63 63 31 95 63 95 63 63 31 31 31 0 0 63 0 63 31 31 63 31 31 31 63 63 31 31 31 31 0 0 0 63 31 31 31 0 31 31 0 0 31 63 63 31 31 31 63 31 0 0 0 0 63 31 63 63 31 0 31 -31 31 63 31 31 31 31 95 63 63 31 95 63 31 63 95 95 31 95 31 63 63 31 31 63 95 63 63 63 31 63 63 95 95 63 95 95 63 95 95 95 95 95 63 127 127 63 127 95 159 191 159 95 191 127 159 159 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 127 127 191 159 127 127 95 127 127 127 159 95 95 95 95 63 95 127 63 95 63 63 127 95 63 95 63 31 95 31 31 63 63 63 63 63 95 95 63 31 63 31 95 63 63 63 63 0 31 95 31 31 63 63 63 63 31 63 0 63 63 31 63 31 63 95 63 63 63 31 31 0 63 31 31 63 95 31 0 63 31 0 31 31 0 63 0 63 31 31 0 0 31 -63 63 0 31 31 63 31 31 63 63 95 31 63 63 63 63 95 63 31 63 95 63 31 31 63 63 31 63 31 31 95 63 63 95 95 31 95 95 95 63 95 127 95 127 95 95 159 127 127 95 127 191 191 127 159 159 159 159 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 191 159 159 159 95 95 127 159 95 127 127 95 127 63 127 95 63 95 95 63 95 127 63 63 95 63 95 63 63 95 31 95 31 95 63 95 95 63 63 31 95 63 63 0 31 63 63 63 95 31 0 63 31 63 63 63 31 63 63 31 31 31 63 31 0 31 0 63 31 31 31 31 0 31 63 63 31 0 63 0 63 95 0 0 31 0 63 31 63 31 0 0 -0 31 95 31 0 31 63 31 0 31 63 31 63 95 63 0 63 63 31 95 31 95 31 31 95 31 95 31 63 31 63 31 95 95 95 63 95 127 95 63 127 63 95 127 127 95 95 127 127 159 127 159 127 159 223 127 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 191 159 127 127 127 127 159 63 127 159 95 63 127 95 63 127 127 63 95 63 95 31 127 31 95 63 95 63 63 63 95 95 63 63 31 31 31 63 31 0 63 63 63 63 31 31 31 31 63 0 95 31 63 0 95 31 63 63 0 31 63 31 31 95 63 31 31 63 0 31 0 31 63 31 31 31 63 95 0 0 0 31 0 0 63 31 63 63 31 31 0 31 0 -63 31 31 63 31 63 63 31 31 31 31 0 63 95 63 63 63 31 95 31 63 63 63 31 95 63 95 63 95 95 63 127 63 95 63 127 95 63 95 63 31 127 127 95 127 127 127 127 127 127 159 127 127 127 159 191 223 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 159 223 95 159 95 127 95 127 127 127 127 95 127 127 63 95 127 127 95 95 95 63 63 63 63 95 63 95 95 95 63 63 31 63 63 63 63 95 31 63 31 63 31 63 63 31 63 63 31 0 63 63 63 31 63 63 31 63 0 95 95 95 63 0 31 31 63 31 31 31 63 31 63 0 63 31 63 31 31 31 31 0 63 63 63 31 31 31 0 31 31 0 31 -31 31 63 0 31 63 0 63 31 31 95 95 95 31 95 31 63 0 31 95 63 0 63 95 63 31 63 63 95 63 63 95 127 95 31 127 63 95 95 63 127 159 63 95 63 95 127 63 95 127 191 159 127 127 191 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 223 191 127 159 191 127 159 127 95 95 127 95 159 127 127 95 63 63 63 63 95 95 95 63 63 95 63 63 95 31 127 127 63 63 95 63 0 63 63 31 63 95 63 31 63 95 31 63 31 31 63 63 31 0 63 0 63 31 0 31 31 31 31 63 31 63 31 31 31 31 63 0 63 0 31 0 31 63 31 0 0 0 31 63 31 63 31 63 31 31 31 0 31 0 -31 0 31 0 95 63 31 63 31 63 95 95 31 63 0 63 63 0 0 95 63 31 63 95 127 31 95 63 63 63 31 63 95 31 63 63 127 63 63 95 95 95 127 95 95 95 95 95 127 159 95 159 159 191 159 191 223 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 159 159 159 159 159 191 127 63 95 127 95 95 127 95 63 127 95 63 95 127 63 95 31 63 95 63 63 63 95 63 31 63 63 31 31 31 127 31 0 95 63 63 31 63 31 31 31 63 63 0 63 31 31 63 31 63 0 0 31 31 63 63 63 31 0 31 0 31 63 31 95 0 31 0 31 63 31 63 31 0 63 63 0 0 31 31 63 63 31 31 31 0 31 -63 31 31 31 0 31 31 63 0 63 31 63 0 95 63 0 31 63 63 63 63 63 63 0 63 63 95 63 63 63 63 63 63 0 95 95 95 63 63 63 95 127 95 95 127 63 95 127 127 127 127 127 127 159 191 159 159 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 159 159 223 95 127 127 191 95 95 127 95 127 127 95 95 95 95 63 127 63 127 63 63 127 95 127 63 63 63 95 31 63 63 63 31 63 63 31 63 63 63 63 0 31 31 63 63 31 31 63 63 31 0 31 31 31 31 31 63 63 31 63 0 31 63 31 0 31 31 31 0 63 0 31 63 63 31 31 31 31 0 31 31 31 31 0 0 31 31 63 63 63 0 31 -31 0 31 95 0 31 31 0 63 63 63 31 127 0 63 31 63 0 63 95 63 63 31 63 63 31 31 63 63 95 63 95 63 95 63 63 63 95 95 95 63 95 127 95 127 127 127 127 127 127 159 191 127 127 159 191 191 159 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 191 223 127 159 127 159 159 63 127 63 95 127 95 63 95 127 127 95 63 95 63 127 63 95 127 63 95 95 63 95 63 31 63 95 31 63 63 31 95 31 31 63 31 63 63 31 63 31 63 0 63 31 31 95 31 63 0 31 31 31 63 31 31 31 63 63 31 0 0 0 0 31 63 95 31 31 63 31 31 63 0 31 0 31 0 31 63 63 31 31 0 63 0 0 95 -0 0 63 63 31 0 31 31 63 0 63 0 63 31 0 63 63 31 63 63 31 31 31 95 31 63 63 95 31 31 95 31 63 63 31 63 63 127 95 95 63 127 95 63 127 95 95 95 95 95 127 159 159 191 127 191 159 255 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 159 159 159 127 127 159 127 127 127 127 95 63 127 95 127 127 63 63 95 95 63 95 31 95 127 63 95 63 63 63 95 95 95 95 95 31 31 63 31 63 63 63 31 63 63 0 31 31 31 31 63 63 31 63 31 95 63 63 63 31 31 31 31 63 31 31 63 31 95 31 31 0 63 63 63 31 95 31 63 63 0 0 0 0 95 31 0 31 31 31 31 31 31 63 0 -31 31 63 63 31 31 31 0 31 95 0 31 0 31 63 31 63 0 0 95 63 0 63 95 31 63 31 31 63 31 63 63 95 95 63 127 63 63 63 95 127 63 127 63 127 95 127 95 63 127 159 95 95 127 191 191 159 159 159 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 159 159 159 159 127 95 127 95 127 95 127 95 127 95 127 63 127 95 95 63 95 95 95 95 31 95 63 95 31 63 63 31 63 63 31 63 31 63 63 63 95 31 31 31 63 31 63 63 63 63 63 31 63 31 31 63 63 31 0 31 0 31 63 0 0 0 31 0 0 0 63 31 31 31 63 31 63 31 31 0 31 31 0 31 31 0 31 0 31 31 63 31 0 0 -31 0 63 63 31 31 31 63 63 31 31 0 31 31 63 31 31 31 31 63 63 0 31 95 31 63 63 95 63 63 63 63 63 95 31 63 63 95 63 159 31 31 63 63 127 127 95 95 63 127 95 127 159 127 127 159 191 159 191 159 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 191 127 159 191 191 159 159 159 127 95 127 63 63 95 127 127 95 95 95 127 95 95 127 31 95 63 31 31 31 31 95 63 95 31 31 63 63 0 31 95 63 95 63 63 63 0 63 95 95 31 63 63 31 31 31 63 31 31 31 31 31 31 63 31 31 31 63 63 31 31 63 63 63 0 31 63 63 0 0 31 63 63 0 31 31 31 31 0 31 0 0 31 63 31 31 -31 0 31 63 31 0 31 31 63 63 63 31 63 0 31 63 63 95 63 63 63 31 0 31 31 95 31 95 31 31 63 63 63 31 63 63 95 95 31 159 127 95 63 127 63 159 95 127 127 127 127 159 159 159 95 159 159 159 159 223 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 159 223 191 127 159 191 127 95 95 127 127 127 95 95 159 95 95 95 63 95 95 95 95 31 31 31 63 63 63 95 95 63 95 63 63 63 31 31 31 63 63 63 63 31 63 0 0 31 0 0 31 31 63 0 63 63 31 31 63 0 63 63 31 63 31 63 31 63 0 31 31 95 31 0 0 63 0 31 0 31 0 31 0 31 0 95 63 31 31 0 31 0 31 0 31 31 -0 63 0 31 95 31 31 0 31 63 31 0 63 63 63 0 31 63 0 63 31 31 63 31 31 31 31 31 95 63 95 31 63 63 127 63 95 63 63 127 95 95 63 63 95 95 95 159 127 95 159 127 127 159 159 159 159 159 159 159 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 223 159 191 159 159 127 159 127 159 127 95 127 127 95 95 95 95 95 63 63 31 95 63 63 63 95 63 63 63 63 63 95 63 63 31 63 63 31 95 0 31 127 63 63 63 95 31 63 95 31 31 31 31 63 31 63 31 63 95 0 63 63 0 0 31 63 0 0 0 31 31 31 31 63 0 63 63 63 31 0 0 0 31 31 31 63 63 31 31 31 63 31 0 63 31 63 31 31 -95 0 31 0 31 31 0 31 63 0 31 0 31 31 31 0 31 63 31 31 31 31 63 31 31 63 31 63 63 63 63 95 31 63 95 95 63 31 63 127 95 95 95 95 95 95 95 95 127 95 127 63 127 95 95 127 159 191 159 191 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 159 191 127 191 159 127 127 95 127 127 95 159 159 95 127 95 95 95 63 63 95 95 63 95 63 63 63 95 63 63 31 63 95 95 63 95 31 95 63 95 95 31 31 95 31 63 31 63 31 31 63 31 31 95 31 63 63 95 0 0 63 63 31 31 31 31 31 31 31 63 31 31 31 63 63 0 31 0 31 63 63 31 31 0 31 63 0 63 0 31 63 31 31 31 31 63 31 31 31 -0 31 95 31 0 31 31 31 63 0 31 31 31 31 31 31 31 0 63 31 31 63 63 31 31 63 31 31 31 63 63 95 31 63 63 63 63 95 31 63 95 63 63 63 95 63 95 95 127 127 95 95 127 95 95 95 127 127 159 159 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 191 191 159 127 191 127 159 127 127 127 127 127 63 159 127 127 63 127 63 127 95 127 95 127 95 31 31 127 95 31 95 95 63 31 63 95 63 63 63 31 63 63 95 31 63 63 63 63 63 63 63 31 63 95 31 31 63 31 63 63 31 63 31 31 63 31 31 95 31 31 63 63 95 31 0 31 31 31 31 0 31 0 0 63 31 0 31 31 63 0 31 0 31 0 63 0 0 31 31 -0 31 0 31 63 31 31 31 31 31 31 31 0 31 31 63 31 31 63 31 31 31 31 31 63 63 31 63 31 63 63 63 31 63 31 63 63 63 63 63 63 95 63 63 95 95 95 95 95 95 95 127 95 127 127 127 159 95 159 127 191 159 191 159 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 223 191 159 159 159 127 191 159 127 127 159 95 159 63 127 127 95 95 95 95 31 95 95 63 63 95 63 95 31 63 95 63 63 31 31 63 31 63 31 31 63 31 63 31 63 31 31 63 0 31 63 31 0 95 63 63 63 31 31 31 0 31 31 95 31 31 31 63 31 63 0 31 31 31 31 63 63 0 0 31 31 31 31 31 31 31 63 31 63 63 31 63 63 31 31 31 31 31 31 63 -0 31 31 31 63 0 63 31 63 0 31 31 31 63 0 31 31 31 31 31 31 63 31 63 63 31 31 63 31 63 63 63 63 95 31 63 95 63 63 63 63 63 63 95 63 95 95 63 127 95 63 95 95 95 63 127 127 127 159 159 191 191 191 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 191 95 127 159 159 127 159 127 95 127 95 95 159 95 95 127 63 95 63 127 95 63 95 95 127 63 63 63 95 63 31 31 31 63 63 63 63 63 63 95 31 95 63 31 31 63 63 31 31 95 31 63 31 31 31 63 0 31 31 31 31 63 31 63 31 63 63 63 31 63 0 31 63 0 31 31 31 0 31 63 31 31 63 31 0 0 31 31 31 0 31 31 0 31 31 0 31 31 31 31 -31 31 31 31 31 31 31 0 0 31 31 31 31 63 63 31 63 63 63 31 31 0 63 31 31 63 63 31 95 31 63 63 31 31 63 31 95 95 63 95 63 63 95 31 31 127 63 95 63 95 95 127 95 127 127 127 127 127 127 127 159 159 191 191 191 159 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 127 223 159 159 159 159 159 159 95 95 127 95 127 127 95 127 95 159 95 95 95 95 63 95 127 63 63 31 95 63 31 31 63 63 63 95 0 31 63 0 31 95 63 95 63 31 31 31 95 63 63 95 31 63 0 95 63 31 31 31 31 31 63 63 31 31 31 63 31 63 31 31 31 0 0 0 31 31 31 0 31 31 63 31 31 31 31 31 0 63 31 31 63 0 31 31 31 31 63 31 31 0 -31 31 31 0 63 31 31 31 63 63 31 63 63 0 31 31 0 31 31 31 63 63 31 31 31 63 95 63 31 63 63 63 63 31 63 63 95 63 63 31 31 95 95 95 63 95 31 95 95 127 127 95 127 95 127 127 127 127 127 127 127 159 191 191 191 159 223 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 191 223 191 159 127 95 127 159 159 95 95 127 127 127 127 63 127 95 95 95 127 95 31 95 127 31 31 63 127 95 63 63 63 63 63 63 63 63 63 63 0 31 31 63 0 95 31 31 63 63 63 63 63 31 63 63 31 63 63 63 31 63 31 31 31 63 31 0 31 63 31 31 31 31 63 95 31 63 31 0 31 0 0 0 95 63 31 0 31 0 63 31 0 31 31 0 31 0 63 31 31 63 63 -63 0 63 31 31 31 31 0 31 31 63 31 31 63 31 31 31 31 63 31 63 63 63 31 63 0 63 0 63 63 63 31 95 95 31 95 95 63 31 63 95 63 95 95 63 95 63 95 95 95 127 127 127 95 127 95 159 127 95 159 191 159 191 191 159 191 159 191 255 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 159 159 191 223 159 159 159 191 127 191 95 127 127 127 95 159 127 95 95 127 127 95 95 63 95 63 95 63 95 63 63 63 63 31 63 0 31 31 31 95 31 63 95 63 0 95 63 31 63 31 63 31 63 0 63 31 31 63 63 31 31 31 31 31 31 63 31 31 63 0 0 63 63 63 31 31 63 63 0 0 63 31 31 63 0 31 0 0 31 31 0 0 0 0 63 63 0 31 63 63 31 31 31 31 63 31 -31 63 31 31 31 31 0 63 31 31 31 63 31 63 63 63 31 31 31 63 63 0 31 31 63 31 95 31 63 31 63 63 63 63 63 63 63 95 95 63 95 63 95 63 95 95 63 63 95 127 127 95 127 95 127 127 127 127 127 127 159 127 159 191 159 127 223 191 191 223 223 223 223 223 255 255 255 255 255 255 223 223 255 255 223 191 191 191 159 159 127 127 95 191 159 95 159 159 127 159 127 127 95 95 95 127 127 95 63 95 63 63 95 63 95 95 63 63 63 63 31 127 63 63 63 31 63 95 63 31 0 95 31 31 63 0 0 95 95 31 63 31 31 0 31 0 63 63 95 31 0 31 63 0 31 95 31 63 95 31 31 31 31 63 63 63 63 31 0 31 0 63 0 31 0 31 0 63 31 0 0 63 0 31 0 31 63 31 31 31 31 31 -31 31 31 0 31 63 0 0 31 63 0 31 31 63 31 63 63 31 63 31 31 63 63 31 95 31 95 63 31 63 31 31 63 63 95 63 95 95 63 127 31 63 95 63 95 95 95 95 127 95 95 95 95 127 95 127 127 127 127 95 127 159 159 127 159 159 159 191 223 191 159 191 223 223 191 191 159 159 223 191 255 159 191 127 191 191 159 191 159 191 159 159 191 159 95 95 95 159 127 159 159 127 63 159 63 127 63 95 63 127 31 63 63 63 31 95 63 31 95 63 95 31 95 63 31 31 63 63 63 63 31 31 95 63 31 63 63 31 31 31 63 0 31 31 63 31 95 63 63 31 63 0 31 63 0 31 0 31 0 0 63 31 0 63 31 31 63 31 31 31 31 63 31 31 0 63 63 31 31 31 63 0 31 63 31 63 31 31 31 0 0 0 -63 31 63 31 31 0 31 31 31 31 31 31 31 63 31 63 0 63 63 31 63 95 31 63 63 31 95 63 31 63 63 63 63 63 31 63 63 127 95 95 95 63 31 63 127 95 63 63 95 95 63 63 95 127 63 95 127 127 95 127 159 95 191 127 127 223 223 159 159 159 191 159 191 191 191 159 159 191 191 191 191 127 223 191 191 223 127 191 159 159 159 127 127 127 159 127 127 63 127 127 95 95 159 127 127 127 63 127 63 63 127 63 127 63 63 31 63 95 63 63 63 95 63 63 63 31 63 31 63 63 31 63 31 63 63 63 31 31 31 63 31 63 63 95 63 31 31 63 31 63 31 63 0 31 0 0 31 0 31 31 0 0 31 31 63 95 31 0 0 0 0 0 0 31 31 0 31 0 95 31 31 0 63 31 0 31 63 31 0 0 63 31 -31 0 31 31 31 31 63 31 63 31 31 63 63 31 63 31 31 31 31 31 31 31 31 63 31 31 31 0 31 95 31 31 63 95 95 63 63 63 31 31 95 63 63 95 63 95 127 63 95 127 127 127 127 127 63 95 95 127 63 127 159 159 95 127 159 191 191 191 159 191 127 127 159 159 159 191 223 159 191 159 127 191 191 159 159 127 127 159 159 127 127 127 159 127 159 63 127 127 95 159 95 127 63 63 63 95 95 95 95 95 95 95 63 63 95 63 127 63 63 95 63 31 63 31 95 31 63 0 63 31 31 95 95 63 95 95 31 31 31 63 63 63 31 63 0 63 0 63 95 0 95 31 0 31 95 31 0 63 63 63 63 0 0 63 31 0 31 63 63 0 0 31 63 63 0 31 31 31 31 0 0 0 31 63 0 31 31 0 31 31 31 63 -31 63 31 63 31 63 0 31 31 63 31 31 0 63 31 95 31 63 63 95 63 31 63 31 31 63 63 31 95 63 63 63 63 63 31 95 31 63 127 63 63 95 63 95 95 95 127 95 127 63 95 63 127 127 127 95 127 95 127 127 159 127 127 127 159 127 127 127 159 159 191 159 159 159 191 191 191 159 159 127 191 191 159 127 191 127 127 159 95 191 127 95 95 63 127 159 127 95 95 127 95 95 127 127 95 127 63 95 95 63 95 31 95 63 31 31 63 31 63 63 31 63 31 63 31 63 63 95 63 63 31 31 95 31 31 0 95 63 31 0 63 0 31 31 63 31 0 31 63 31 0 0 63 31 31 31 31 31 0 0 0 31 63 0 31 0 0 31 0 63 31 31 31 31 31 63 63 0 31 63 31 0 0 31 31 0 0 31 0 31 0 63 -31 31 31 31 63 0 63 63 63 31 31 63 31 63 31 0 63 63 63 63 31 63 63 63 31 31 63 31 63 63 63 95 31 63 95 31 63 31 63 95 31 31 31 95 95 127 63 127 63 63 63 63 127 127 127 31 95 95 127 159 127 159 127 95 127 127 95 127 159 127 159 159 127 127 159 159 191 159 127 159 191 159 127 191 95 191 127 159 159 159 95 127 159 127 95 159 159 95 127 63 127 95 95 63 63 127 95 95 63 31 95 63 63 31 31 95 31 63 63 95 63 95 63 31 31 63 63 31 31 95 63 95 0 63 0 31 31 63 31 63 63 31 0 0 31 63 63 63 63 95 31 31 63 31 31 63 95 31 0 95 63 31 0 31 31 63 31 0 63 63 63 0 31 31 31 0 0 0 63 31 0 63 31 31 0 31 0 63 31 31 31 31 -0 63 63 31 31 0 31 31 63 63 63 63 31 63 31 63 63 0 63 31 63 63 31 63 31 63 63 31 31 63 95 0 63 31 63 63 63 95 127 95 63 63 95 95 31 127 95 63 95 95 95 127 127 159 63 63 95 127 127 127 95 159 95 127 159 127 127 159 127 95 127 223 127 127 159 95 159 159 127 159 159 159 159 159 159 127 159 127 127 95 127 127 127 95 95 127 127 127 127 63 127 95 95 95 95 95 95 31 127 95 31 95 63 31 31 31 63 31 63 63 31 63 63 31 31 31 63 31 31 95 63 63 63 63 63 63 31 31 0 31 63 0 63 31 31 31 31 0 0 0 31 31 63 0 0 31 63 31 0 0 31 31 31 0 63 0 31 31 31 0 31 31 0 63 0 31 63 31 31 31 63 31 63 0 0 0 31 31 31 31 0 31 -0 0 0 63 0 0 31 63 31 31 63 31 31 63 63 31 95 31 31 95 63 63 63 31 63 31 31 63 95 31 63 31 95 95 63 95 95 31 95 63 63 31 95 0 63 63 63 127 63 95 127 95 95 127 127 95 95 95 127 95 127 127 95 127 159 95 127 191 127 159 127 159 159 127 127 127 159 159 95 159 159 127 127 159 159 95 159 127 95 127 127 127 127 159 95 127 63 95 95 95 127 63 95 95 63 95 95 31 63 63 31 63 63 63 95 63 63 63 63 63 31 63 31 31 95 31 31 31 0 0 31 0 63 31 63 0 63 0 63 31 63 31 0 31 31 31 95 31 0 63 31 0 31 63 0 63 31 63 31 31 0 31 63 0 63 31 31 31 31 0 31 31 0 31 63 0 63 0 31 31 63 31 31 31 31 31 0 0 63 95 0 63 -0 0 31 31 31 31 0 0 31 63 31 63 95 63 63 31 63 63 63 63 0 63 63 63 63 63 31 63 0 31 95 95 63 63 95 31 31 63 63 127 31 95 95 95 95 31 95 63 127 127 63 127 95 95 95 95 95 95 95 95 127 127 95 127 63 95 159 127 95 159 159 95 127 159 127 95 95 127 95 127 127 159 127 95 159 159 95 127 127 159 95 95 127 95 127 95 127 95 95 95 95 63 63 63 63 95 63 63 63 31 63 95 31 31 63 63 0 31 31 31 31 63 31 0 31 31 95 31 63 63 31 0 0 63 0 95 63 31 63 63 63 0 63 31 0 0 0 0 63 95 0 31 31 63 0 31 31 31 0 63 31 0 31 63 0 63 31 0 31 63 31 31 0 0 0 31 31 31 31 31 0 31 95 0 63 31 63 31 63 31 63 31 -0 63 63 31 31 63 63 31 63 31 63 31 63 31 31 63 31 0 63 63 31 63 95 63 31 63 63 63 63 63 63 95 63 95 63 63 0 31 95 95 95 127 63 95 63 95 31 63 95 127 127 63 63 95 127 95 95 95 95 95 95 63 127 127 63 127 63 127 127 127 95 127 127 127 127 95 191 159 159 95 159 95 127 159 95 95 159 95 127 95 127 95 95 95 95 63 63 127 95 95 63 63 95 31 63 63 63 63 31 31 63 63 63 63 0 63 0 0 31 0 31 63 63 0 31 63 31 31 31 0 63 63 63 31 63 63 0 63 63 63 0 63 0 0 31 63 63 0 63 31 0 63 31 31 31 31 31 31 31 31 95 0 63 31 63 63 0 31 0 63 0 63 31 63 31 31 0 31 31 31 31 31 0 95 31 31 31 31 0 31 31 31 -63 63 31 63 0 31 0 63 31 63 63 31 95 63 31 31 63 31 31 63 63 63 63 31 95 95 63 63 63 0 63 63 31 95 31 63 31 63 63 63 95 63 63 63 63 63 95 95 63 95 63 63 95 95 95 127 127 159 63 95 95 95 127 95 127 63 159 95 127 159 127 127 95 95 127 127 159 95 159 127 127 127 63 127 95 127 95 95 127 159 95 95 63 63 63 95 95 127 95 127 63 63 127 95 63 63 31 63 63 31 63 31 0 0 0 0 0 0 0 0 0 31 31 0 31 31 63 31 0 31 0 63 0 31 31 0 0 0 31 31 63 31 31 0 31 31 0 31 31 31 0 63 63 63 0 63 31 31 0 31 31 0 31 31 0 63 31 0 31 0 31 31 0 31 63 63 31 0 63 31 0 63 31 0 63 31 31 31 0 0 31 31 -31 0 63 95 31 0 63 63 63 31 31 31 31 0 63 63 63 31 63 31 31 95 63 63 31 63 31 63 95 63 95 63 0 95 63 63 95 31 63 95 63 95 127 31 63 63 95 95 63 63 31 127 95 127 63 63 127 95 95 95 127 159 95 127 159 127 127 95 127 127 127 127 127 63 95 95 127 95 127 159 127 95 127 95 127 95 127 63 95 127 63 95 95 127 95 63 63 95 95 63 127 95 63 95 31 127 127 63 31 95 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 63 31 31 0 63 0 31 0 0 31 63 0 31 31 31 0 0 31 31 0 31 31 63 0 63 63 0 31 31 0 63 31 31 0 31 0 0 31 0 31 31 31 63 31 0 0 0 0 0 63 31 63 0 31 63 95 31 31 63 0 0 0 0 0 31 -31 31 31 31 31 31 63 0 31 63 31 63 63 95 31 63 63 0 63 31 63 31 63 95 63 31 31 95 31 63 63 95 63 63 63 63 63 63 63 95 95 63 31 63 95 95 63 63 127 95 95 95 127 127 95 95 95 127 95 95 127 95 63 63 127 95 95 63 95 95 95 127 95 95 95 127 127 127 95 95 127 159 95 95 127 63 95 95 127 95 191 95 127 95 63 63 127 127 127 63 127 95 63 95 63 63 95 31 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 31 31 31 0 31 63 0 31 63 63 31 0 63 0 31 31 31 31 0 31 0 31 31 31 31 31 31 63 63 31 0 63 0 0 31 31 31 0 63 31 0 31 31 31 0 0 63 63 0 31 0 0 63 31 0 31 0 0 31 63 31 95 31 -63 31 31 31 63 63 31 63 63 63 63 95 0 63 63 31 63 95 0 63 95 31 63 31 63 63 0 95 31 63 63 31 63 95 31 95 31 63 95 63 63 63 63 63 63 95 95 95 95 127 127 95 127 127 127 63 63 95 95 95 63 127 95 127 95 63 95 127 127 95 127 63 127 63 95 95 159 159 159 63 159 127 127 95 127 63 95 95 127 127 95 95 95 127 127 95 127 31 31 95 63 95 95 95 31 63 95 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 63 31 0 31 0 0 31 0 31 63 31 0 0 31 31 63 31 31 63 63 0 0 31 0 31 0 31 31 63 31 63 63 0 31 0 31 63 0 63 31 0 63 63 0 31 31 31 31 31 31 63 0 31 0 63 31 31 0 31 31 31 -0 31 63 31 63 63 0 0 95 31 0 0 63 63 31 31 63 63 31 63 0 63 95 63 63 31 95 63 31 63 95 31 63 63 31 31 63 63 95 31 95 95 31 63 95 63 63 95 95 127 63 95 63 127 95 95 63 95 95 127 63 127 63 159 95 127 95 159 127 127 127 127 95 159 95 127 63 95 95 95 127 95 63 95 63 95 63 63 95 159 95 95 95 63 95 127 63 95 63 95 63 127 31 63 63 31 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 63 31 63 31 31 63 31 0 0 31 0 31 31 31 63 0 31 31 63 0 0 0 31 63 0 31 0 31 31 0 63 31 63 31 31 0 0 31 31 63 0 31 95 0 31 31 31 0 31 63 0 0 31 31 31 31 0 0 31 31 -63 0 63 63 63 63 31 31 63 0 95 31 31 63 0 63 95 0 63 31 63 31 95 63 31 95 31 31 63 95 63 95 63 95 95 63 31 63 63 95 31 95 31 95 63 95 63 95 95 63 63 63 63 95 31 95 127 95 63 63 127 95 95 95 63 95 127 95 95 63 95 95 95 63 63 95 127 95 127 95 95 127 63 63 95 63 127 95 127 95 63 63 95 63 127 95 63 127 95 95 31 63 63 95 63 63 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 63 0 0 31 95 31 0 0 31 31 31 31 63 31 31 0 31 31 31 0 0 31 31 31 0 0 63 0 31 0 63 31 31 0 31 31 0 31 0 0 31 0 63 0 0 0 0 0 0 31 0 0 31 31 0 -31 31 31 31 31 31 31 63 31 63 31 63 31 31 63 0 31 63 31 63 31 63 63 63 95 31 63 31 31 63 31 63 63 63 95 63 63 63 31 63 63 63 95 95 63 63 63 63 95 63 95 63 63 127 95 63 63 63 95 95 63 127 63 63 95 63 95 31 127 63 63 127 127 95 63 95 159 95 95 95 127 127 95 63 63 63 63 95 63 127 95 95 127 95 95 95 31 95 63 63 95 63 63 63 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 31 0 0 0 0 0 0 31 31 0 31 63 0 31 0 31 0 63 31 63 0 31 31 0 0 31 63 31 31 63 0 31 0 63 63 0 31 31 31 31 0 31 31 0 63 0 0 63 31 31 0 0 31 63 0 31 -31 31 0 31 63 31 31 63 31 31 95 31 31 95 31 31 31 63 31 63 63 95 31 63 95 63 0 0 63 31 31 63 95 31 63 31 95 95 127 63 63 95 95 95 63 63 63 63 63 63 31 95 95 63 63 63 63 63 95 95 95 95 95 95 95 63 127 63 95 95 95 63 63 95 63 127 63 127 127 95 63 127 95 63 159 31 127 95 95 95 95 95 95 95 127 63 31 127 95 31 95 31 95 95 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 31 0 0 31 0 0 0 0 31 63 0 31 63 31 63 0 31 0 31 31 31 31 0 0 31 31 63 0 0 31 31 31 0 0 63 31 31 0 0 31 0 63 31 31 0 31 0 0 0 0 31 0 0 -63 31 31 63 31 0 95 63 63 31 31 63 0 0 31 63 63 31 95 63 63 31 31 63 63 95 95 31 63 95 63 0 95 31 31 95 63 63 63 63 63 95 31 63 95 63 63 63 63 63 31 63 63 127 127 127 63 95 95 63 127 63 95 127 95 63 95 31 127 63 63 95 127 127 95 95 63 127 95 127 95 95 95 95 95 95 63 95 95 63 95 127 63 127 95 31 95 63 95 95 95 95 127 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 0 0 63 31 0 63 31 31 31 31 31 0 63 31 31 31 0 31 31 31 31 0 0 0 0 31 31 63 63 31 0 31 0 0 31 0 31 31 31 63 31 31 63 0 63 0 63 31 31 63 -63 31 63 63 0 63 31 31 31 31 31 63 95 63 63 31 63 63 95 0 31 31 63 95 63 95 63 63 63 95 31 31 31 95 63 63 31 31 31 63 63 31 127 63 63 63 63 95 63 95 63 31 31 127 95 63 95 31 63 95 95 127 95 63 63 95 127 95 63 63 63 63 95 127 63 95 63 63 95 63 127 63 127 127 127 127 95 31 63 63 63 63 95 95 95 95 63 31 95 95 95 31 63 31 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 31 0 63 31 95 31 31 0 0 31 0 31 63 0 0 63 0 31 31 31 31 0 31 31 0 31 0 0 0 63 31 0 31 31 63 0 0 0 0 31 0 31 31 0 0 0 0 -31 63 63 95 63 31 63 31 0 95 0 63 0 63 31 31 31 63 31 63 63 31 95 95 31 0 63 63 63 63 31 63 95 0 63 31 31 31 95 63 63 95 63 31 31 63 95 63 95 63 63 95 63 63 31 63 31 63 95 95 63 95 63 63 95 127 63 127 95 95 63 95 127 63 95 127 63 63 63 95 95 95 95 31 95 95 63 63 63 63 63 63 31 127 63 95 95 63 31 95 95 31 63 95 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 31 31 0 0 0 0 0 31 0 31 31 31 31 0 31 31 31 0 31 31 0 31 31 31 0 0 0 0 31 63 31 31 31 0 31 31 0 31 31 31 31 -31 0 31 63 0 63 31 31 63 0 63 63 63 63 0 63 31 95 31 31 95 63 63 31 63 95 31 31 31 63 95 63 31 0 31 31 63 31 31 63 31 63 63 31 95 63 63 31 31 95 95 63 63 95 31 95 95 95 63 63 95 95 63 63 63 95 63 63 31 63 95 95 127 127 127 63 95 127 31 127 63 95 95 63 63 63 95 63 63 63 31 95 95 95 63 31 63 63 31 63 31 63 63 63 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 31 31 31 0 63 31 31 0 31 31 0 0 63 31 0 0 31 63 0 31 0 0 0 31 0 0 0 0 0 63 0 0 0 31 0 0 0 31 31 0 31 31 63 0 0 63 -31 95 31 0 31 95 31 95 63 0 0 63 31 0 63 0 63 31 31 95 95 95 95 63 31 31 31 0 63 31 0 63 63 31 31 63 63 63 63 95 63 63 31 95 95 95 63 63 63 95 95 63 31 63 63 95 95 95 95 31 63 63 63 95 95 127 63 63 63 63 63 63 95 127 95 95 95 95 63 95 63 127 95 95 63 63 95 63 95 31 95 63 127 95 31 63 31 95 95 31 63 63 63 63 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 63 0 31 0 63 31 0 0 0 0 0 31 0 31 0 0 31 0 31 31 63 31 0 31 31 31 63 0 0 31 31 0 31 0 31 31 31 31 31 31 31 0 0 0 63 31 31 -31 31 31 63 63 31 0 63 63 95 0 31 31 31 31 63 31 0 63 31 31 31 0 95 63 95 95 0 95 63 31 63 95 31 95 31 31 95 63 63 63 31 31 31 95 63 31 63 95 63 63 63 63 63 63 31 63 95 95 95 63 95 95 95 63 95 95 63 95 63 127 31 63 63 95 95 31 127 95 63 63 63 127 63 63 63 95 95 63 63 95 95 95 95 63 31 127 95 95 63 95 95 31 31 95 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 0 31 0 0 0 31 31 0 0 0 31 63 31 0 0 31 31 0 0 31 0 31 31 31 31 63 0 63 31 0 0 0 63 0 31 0 0 31 0 31 -31 31 31 0 31 31 63 63 63 0 31 0 31 31 63 63 63 63 63 0 63 63 63 95 31 0 31 63 63 95 31 31 63 31 63 31 95 95 63 95 95 95 31 63 63 31 63 31 31 63 31 63 63 31 63 63 95 95 127 95 95 95 31 63 63 63 63 95 95 63 63 95 63 63 63 63 95 95 63 95 95 63 63 95 95 63 95 95 63 31 63 95 95 63 63 63 63 63 63 63 63 63 63 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 0 0 0 31 63 0 0 31 63 0 31 0 31 31 31 0 31 0 0 0 31 31 31 31 31 31 0 31 63 0 31 0 31 63 31 31 31 0 0 -31 63 63 31 31 63 63 31 63 0 0 63 31 31 63 31 63 31 0 63 31 0 31 31 63 63 95 63 63 63 95 95 95 63 31 63 31 95 31 63 31 31 31 63 63 31 95 95 63 63 31 31 95 31 95 127 63 95 63 31 127 63 127 95 95 95 31 63 127 63 127 95 95 63 127 31 95 63 63 63 63 127 95 95 31 63 63 95 31 63 63 63 95 31 95 63 95 31 95 63 31 63 31 31 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 31 63 0 0 31 0 31 31 0 31 63 31 31 31 0 0 31 0 95 0 31 0 63 31 0 0 31 0 0 0 63 31 0 0 0 31 63 31 31 -0 0 63 31 31 0 63 63 63 63 31 31 31 63 63 31 31 31 31 63 63 31 63 31 63 31 31 95 63 31 63 31 31 63 0 63 63 63 63 31 127 95 63 95 95 63 31 31 31 63 31 95 95 63 95 95 31 63 63 95 63 95 95 63 95 63 63 63 31 63 127 63 95 127 95 95 95 95 31 63 95 31 63 63 63 95 95 31 95 95 63 31 63 63 31 31 31 95 31 63 31 63 0 63 63 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 31 31 0 31 0 0 31 63 31 0 63 0 0 0 31 63 0 0 0 31 0 31 0 0 0 31 31 63 0 0 0 0 31 31 0 31 0 31 31 31 -0 31 0 63 63 0 63 31 63 0 0 63 0 0 0 31 95 63 31 31 0 63 63 95 63 0 63 95 0 63 63 63 31 31 31 95 63 95 95 63 63 63 63 95 63 0 95 63 0 63 63 95 63 31 31 63 63 95 95 95 63 63 63 63 95 95 63 31 63 127 95 95 63 63 31 95 95 63 63 63 95 95 95 63 127 63 63 63 31 63 31 63 63 95 63 95 63 63 95 63 31 63 31 63 0 63 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 31 31 0 31 0 0 0 31 31 0 0 31 31 31 31 0 31 0 31 63 0 31 0 31 31 63 31 0 0 63 0 63 31 63 31 0 31 31 0 -63 31 31 0 31 95 31 0 95 95 31 31 63 0 31 31 63 63 63 63 63 31 31 0 63 63 63 63 63 63 63 0 31 31 31 63 63 31 63 63 63 31 95 31 31 63 63 127 31 63 31 63 63 63 63 31 31 31 95 95 95 31 63 95 95 31 63 95 63 95 95 63 95 63 95 95 95 63 31 63 95 31 63 95 95 31 63 31 31 63 31 63 95 95 31 95 63 31 63 31 31 63 0 63 63 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 31 0 31 31 0 0 0 0 0 0 0 0 0 31 31 0 0 31 31 63 31 31 0 0 31 31 0 31 0 31 31 0 0 31 0 31 -31 31 31 0 31 0 31 63 0 31 31 31 63 31 31 63 63 63 31 31 31 63 31 31 31 95 63 31 95 31 63 31 63 31 0 31 63 31 0 31 63 63 63 95 63 31 63 31 31 63 95 63 95 63 63 31 0 63 63 95 31 63 95 63 95 31 95 63 63 63 63 63 31 31 63 63 63 95 31 63 63 95 95 63 31 31 31 63 63 31 63 95 63 31 31 95 31 63 31 0 63 63 63 63 63 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 31 0 0 0 0 0 31 0 31 0 0 31 31 0 31 0 31 31 31 63 31 0 0 0 31 0 0 31 63 63 0 0 0 63 -63 31 31 31 31 0 31 31 63 31 0 95 31 63 31 31 63 95 0 63 31 31 31 31 0 95 31 63 95 31 63 31 63 31 31 31 31 63 127 63 0 63 63 63 31 63 63 31 63 63 63 95 63 63 95 63 63 95 63 31 63 63 63 63 63 127 127 95 63 63 127 63 63 31 63 95 31 95 63 63 31 31 31 63 63 31 31 31 127 63 63 63 31 31 63 63 95 63 31 31 63 31 0 63 63 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 63 0 0 31 0 0 31 0 31 0 0 31 0 31 31 0 31 0 0 0 31 31 0 0 31 0 31 0 0 0 0 -31 31 63 31 63 31 31 95 31 0 63 63 31 0 31 63 31 95 63 63 63 31 63 31 63 31 63 63 63 31 31 95 31 63 0 31 31 127 63 63 63 95 63 63 0 63 31 31 95 63 31 95 31 63 31 31 31 31 63 95 63 63 63 63 31 63 31 63 31 63 95 95 63 63 63 63 95 63 127 63 63 95 63 63 31 95 63 63 95 95 63 95 63 31 95 31 63 63 63 0 31 95 95 31 63 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 31 31 0 31 0 31 0 0 0 0 31 31 0 0 0 31 31 63 0 31 31 0 -31 63 31 63 31 95 0 63 63 63 31 63 31 31 31 63 95 31 63 63 63 31 63 31 63 63 63 31 63 63 63 31 31 31 63 31 31 63 95 95 63 63 31 95 31 31 63 95 95 95 63 95 63 95 31 127 63 63 63 127 95 63 95 63 63 63 31 63 31 63 95 63 63 63 63 95 95 95 63 63 63 31 95 95 0 31 63 63 63 31 63 31 63 63 63 31 31 0 63 63 63 63 31 63 31 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 63 0 0 0 0 0 31 0 31 31 0 0 0 31 0 31 0 31 63 0 0 31 31 0 31 0 31 31 -63 31 31 63 0 63 63 63 63 31 0 95 31 63 63 31 31 31 63 31 0 31 0 31 31 31 63 63 31 95 31 31 63 0 63 31 95 31 63 95 63 63 95 31 31 31 95 95 63 63 63 63 63 63 31 31 63 63 31 95 63 31 63 63 63 63 63 95 63 63 63 63 31 95 95 31 63 31 31 63 31 95 63 63 63 31 63 31 95 95 63 31 63 0 31 63 31 95 31 63 63 63 95 31 63 31 95 31 0 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 0 0 0 31 0 63 0 0 0 63 0 31 31 0 0 0 0 0 0 31 31 0 63 0 0 31 0 -31 31 63 31 63 63 63 31 31 31 0 95 63 31 31 31 0 0 63 31 31 0 31 31 63 31 63 63 63 63 63 31 31 63 63 63 63 63 31 31 31 31 63 95 63 95 95 63 63 31 31 63 63 63 0 127 31 31 63 0 63 95 63 63 31 63 63 95 63 63 31 63 127 95 127 63 63 95 63 95 63 63 31 95 63 95 63 63 63 63 31 31 31 95 63 31 63 31 95 95 0 95 0 63 63 31 63 63 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 31 0 31 0 0 63 0 63 31 0 0 0 31 0 0 0 0 0 31 0 0 0 0 0 31 -31 63 0 95 31 31 0 0 31 0 31 31 0 31 31 63 31 31 63 31 63 0 63 0 95 95 63 0 63 63 0 31 31 31 31 63 63 63 31 95 0 63 95 31 31 95 63 63 31 31 95 63 95 31 63 63 31 0 63 63 63 31 31 31 31 63 63 31 63 63 63 63 63 63 31 63 63 31 63 63 95 95 127 0 95 95 63 63 63 31 63 63 31 31 63 63 95 63 31 31 31 31 63 63 31 0 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 31 0 0 0 0 63 31 31 31 31 31 0 31 31 31 63 0 31 0 31 -0 31 0 63 63 31 0 31 63 0 63 31 31 0 31 0 0 31 63 95 31 63 63 31 63 0 63 31 63 95 31 95 95 63 63 63 63 63 31 63 63 31 63 63 63 31 63 63 31 0 31 63 31 127 63 63 127 63 63 63 95 63 63 95 63 63 63 31 95 95 31 95 31 63 63 63 31 95 31 95 95 63 31 0 31 31 31 63 63 31 63 63 63 31 31 63 63 95 31 31 31 31 63 63 95 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 31 0 0 31 0 0 0 0 0 31 31 0 31 0 31 0 31 31 0 0 0 0 31 -0 63 0 31 63 31 0 63 31 63 31 31 63 63 63 31 31 0 0 31 31 31 63 31 63 63 95 0 0 63 31 63 31 31 31 0 31 31 95 63 63 0 0 95 31 95 95 95 31 63 95 63 31 31 95 63 31 31 31 31 31 63 31 31 63 63 31 63 31 95 63 63 63 31 95 63 63 95 63 63 63 63 63 63 63 63 0 127 31 31 95 63 31 31 31 31 31 63 63 0 95 95 63 31 63 0 0 63 31 0 0 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 0 31 0 0 31 0 0 0 0 0 0 0 31 0 31 31 0 0 31 0 63 -63 31 63 31 0 0 63 63 31 31 0 0 31 31 31 31 31 31 95 63 63 0 31 31 95 63 31 95 31 63 95 31 63 31 95 31 63 31 31 31 63 31 63 31 31 31 63 0 63 0 95 63 31 0 63 63 63 31 63 63 63 31 63 31 31 63 63 95 63 63 95 63 63 63 95 63 31 63 95 95 63 63 31 63 63 31 63 63 31 63 31 31 63 63 31 63 0 31 63 95 63 0 95 31 63 31 31 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 31 0 0 63 0 31 0 0 0 31 31 31 -31 63 63 0 31 63 0 63 63 63 31 63 31 95 0 0 63 0 63 31 31 95 63 63 31 63 63 31 63 0 0 63 31 63 31 31 63 31 31 31 63 63 63 63 63 31 63 63 31 63 31 31 95 31 31 63 63 95 95 31 31 95 31 31 63 95 95 31 31 95 95 63 31 31 63 63 95 31 63 63 31 95 63 63 31 0 63 31 31 31 31 63 63 31 63 0 63 31 63 31 95 63 31 95 63 63 0 31 31 63 63 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 63 0 0 0 0 31 0 31 0 31 0 0 -63 63 31 31 31 0 31 63 31 31 0 0 0 63 0 31 63 0 31 31 31 31 31 0 31 31 31 0 31 63 63 63 63 63 63 63 63 31 63 63 31 31 63 63 31 31 31 63 31 63 95 95 31 63 63 63 95 31 31 95 31 95 63 63 63 63 95 31 0 63 31 63 31 0 63 63 0 63 95 0 63 95 31 63 0 63 0 63 63 31 63 63 63 63 63 63 31 31 31 31 31 31 31 31 63 63 31 0 0 31 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 0 0 0 31 31 0 0 0 0 0 0 0 0 63 0 -0 31 31 63 31 31 63 31 31 31 31 0 63 63 63 0 0 31 0 0 31 95 63 95 31 63 0 95 31 0 63 63 31 63 63 31 31 0 63 0 0 95 31 63 0 95 63 0 95 63 95 31 95 31 31 63 31 63 63 31 63 31 95 63 0 95 63 0 63 63 95 63 63 31 95 95 63 95 63 31 63 0 31 31 31 63 95 31 95 63 95 31 31 31 63 63 95 0 63 63 0 63 63 31 31 31 31 63 0 0 0 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 0 0 0 0 0 31 0 0 0 0 0 0 31 31 0 0 -31 31 0 63 63 31 31 0 31 31 31 31 31 63 95 31 0 31 31 63 31 31 95 31 63 31 95 63 31 31 63 31 31 31 95 63 31 63 63 31 31 63 95 31 31 31 31 63 31 95 31 95 31 31 31 63 63 63 63 63 95 63 95 63 63 63 31 31 63 31 63 31 63 31 31 95 63 31 0 31 63 95 31 63 0 95 63 63 31 63 63 63 0 31 63 95 63 63 63 63 31 63 63 31 31 31 31 0 63 31 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 31 31 0 0 -63 63 31 63 63 31 63 0 63 95 31 0 31 31 31 31 63 95 0 31 63 63 31 0 63 63 31 0 95 63 31 63 31 31 31 63 63 63 31 63 31 31 63 31 63 31 31 63 31 63 31 31 63 63 63 31 63 63 63 31 63 31 31 63 63 63 63 31 31 63 31 31 31 31 63 95 63 31 63 31 63 63 31 31 31 31 95 31 63 95 31 63 95 31 31 63 63 63 0 0 63 31 31 63 31 63 63 31 0 31 31 31 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 31 0 0 31 0 0 0 0 31 31 -0 63 31 31 0 63 95 0 31 63 63 31 31 0 31 31 63 0 31 31 31 31 0 0 31 31 31 95 31 31 31 31 31 95 31 31 63 63 31 0 63 31 63 31 31 31 63 95 63 63 31 31 31 63 63 31 63 63 95 95 31 95 63 63 63 63 63 0 95 31 31 31 63 95 31 63 63 63 63 63 31 63 63 0 31 31 31 31 31 95 31 31 63 31 31 31 63 31 63 63 63 63 31 31 63 31 31 31 63 31 63 63 0 31 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 31 31 0 0 0 0 0 31 0 0 0 0 0 -31 31 0 31 0 63 63 31 0 63 63 31 31 63 0 95 31 63 63 31 31 31 0 31 31 31 0 0 31 63 31 31 95 63 0 31 95 31 95 63 31 31 31 63 31 63 63 63 0 63 63 0 63 63 63 31 31 31 31 31 95 63 31 31 63 63 95 31 31 31 31 31 63 31 63 63 0 31 31 95 63 31 31 63 95 31 63 31 31 31 63 31 0 0 31 31 63 0 31 31 31 63 63 0 0 0 0 63 31 0 63 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 31 0 31 0 0 0 0 0 0 0 0 0 -63 63 31 31 63 31 63 63 63 0 31 31 31 0 63 0 0 31 31 0 31 63 31 31 31 63 63 63 63 63 31 31 31 31 63 31 63 63 63 31 31 31 31 31 31 31 31 31 63 31 63 31 31 31 63 31 63 31 31 63 0 31 31 63 63 63 63 31 31 95 63 63 0 63 63 31 0 63 31 0 63 63 63 31 0 63 63 31 31 0 0 63 31 0 63 63 95 63 63 0 0 0 31 31 63 31 0 63 31 31 63 0 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 0 31 0 0 31 31 31 -0 31 31 31 0 31 31 31 0 31 31 95 31 0 31 0 63 31 0 31 63 63 31 31 31 31 31 0 63 63 0 31 31 31 0 95 63 31 31 0 31 31 63 31 63 31 95 0 63 31 63 63 31 31 31 31 95 63 31 31 63 95 63 31 63 63 31 0 63 63 0 0 63 31 31 31 63 63 31 31 31 63 63 0 63 31 63 63 31 63 31 95 31 31 63 31 0 63 0 63 63 31 63 31 31 31 63 0 0 31 63 31 0 63 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 0 0 -31 0 31 63 63 31 63 0 31 63 31 63 0 31 31 63 31 0 63 0 31 63 31 31 63 0 63 0 31 63 0 63 0 63 63 95 63 63 31 31 0 31 63 63 31 63 31 31 31 63 31 31 31 63 63 63 31 31 31 63 31 31 31 63 31 31 63 0 63 95 63 0 31 63 63 95 63 31 63 31 0 31 63 63 95 63 31 31 63 63 31 63 63 63 31 63 63 63 31 95 0 0 0 0 31 0 31 31 0 63 63 0 0 0 31 63 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 63 31 0 0 31 -31 31 63 31 63 31 0 31 0 31 31 31 0 0 31 31 63 31 95 63 31 31 63 0 95 0 31 31 63 63 31 95 31 63 31 0 63 0 95 63 31 31 0 31 31 0 31 63 31 31 31 63 31 63 31 63 63 31 0 63 31 63 63 31 95 63 31 31 95 63 95 63 63 31 63 31 63 63 63 0 95 63 31 0 63 63 63 127 31 63 95 31 31 0 95 31 31 31 31 31 63 31 63 0 31 31 63 31 63 0 0 31 0 0 0 63 31 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -63 63 63 63 31 31 63 63 0 31 63 31 31 0 63 31 31 31 31 0 31 63 31 31 31 0 63 31 31 63 0 31 63 31 31 31 31 0 31 63 63 0 31 31 63 0 31 31 0 63 31 0 63 0 31 95 63 31 31 0 31 0 31 31 63 0 31 63 63 31 31 0 31 0 63 95 31 31 63 63 31 31 0 31 63 63 63 63 31 63 95 0 31 63 31 31 31 31 31 31 0 63 31 63 31 31 31 63 0 31 31 63 31 63 95 0 31 0 0 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 31 0 0 0 -0 0 31 0 31 63 31 31 0 0 31 0 31 0 0 31 31 0 31 0 63 63 31 63 31 63 63 31 31 31 0 63 63 0 63 31 95 0 31 31 31 63 63 31 0 31 31 63 63 31 0 63 95 63 63 31 95 95 95 95 63 63 63 31 31 31 31 31 63 63 31 31 31 31 63 63 95 31 63 31 95 63 63 63 0 63 63 63 31 63 31 31 31 31 0 0 31 0 0 0 63 63 63 31 31 63 63 31 31 31 0 63 0 63 0 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 31 0 -63 31 0 63 31 63 0 63 95 63 31 31 31 0 63 63 63 31 0 31 63 63 0 63 31 63 63 95 31 31 0 63 95 31 63 63 31 31 95 63 31 63 63 31 31 95 63 0 31 31 31 31 31 63 31 63 95 63 0 31 63 63 31 63 63 63 0 31 0 63 63 63 31 31 63 31 63 0 31 0 31 31 63 31 63 31 31 31 31 63 0 31 31 63 0 31 31 63 31 63 31 0 63 31 31 63 31 0 31 31 31 0 0 31 95 63 0 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 31 31 63 63 31 31 0 0 95 0 31 63 63 63 31 31 31 31 63 63 0 0 63 31 31 31 31 0 0 31 0 0 63 31 63 31 31 31 31 31 31 31 63 95 63 31 31 31 63 95 63 31 63 63 31 0 95 31 31 63 31 31 31 31 31 63 31 0 95 95 95 31 31 63 31 31 63 31 31 0 31 63 95 63 31 0 31 0 63 0 63 31 63 63 63 31 31 31 0 31 0 0 63 63 31 31 0 31 31 31 0 0 0 0 0 31 31 0 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 31 0 63 31 31 31 31 31 0 0 63 95 63 31 31 31 31 63 31 31 31 31 31 31 31 0 31 63 31 63 0 31 31 31 95 31 31 0 0 31 31 31 63 63 31 31 0 31 63 0 0 63 31 31 63 63 31 31 63 63 31 63 0 31 31 63 31 0 63 95 63 31 63 0 31 63 31 0 63 95 63 0 63 63 127 0 0 31 31 0 63 0 31 0 63 31 0 31 63 63 63 63 31 31 63 31 63 0 0 63 31 0 0 0 63 0 31 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 -31 0 31 31 63 31 31 0 31 31 63 0 31 0 31 31 0 0 31 31 31 0 31 31 0 63 31 95 95 63 63 63 0 63 63 63 31 63 63 0 0 0 31 63 31 31 95 31 63 63 0 63 0 63 31 95 0 63 63 31 63 0 31 0 63 0 31 63 31 31 63 63 63 31 95 0 0 63 31 63 31 63 95 31 63 31 31 0 0 95 63 31 63 0 63 31 31 31 31 31 31 31 31 0 63 0 31 0 31 0 63 0 31 31 31 0 0 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 0 31 0 31 63 31 63 63 0 31 63 63 31 31 63 31 63 31 63 31 63 0 31 31 63 31 0 63 31 31 0 0 63 0 31 31 0 31 63 0 0 31 31 31 0 31 63 63 0 63 31 63 31 31 63 31 63 63 0 31 0 31 63 0 63 31 63 31 31 63 63 31 63 63 63 31 31 31 31 31 31 95 63 63 0 31 31 95 31 31 63 31 95 31 31 31 31 31 31 31 63 0 63 31 63 31 31 31 0 31 31 31 31 0 0 0 0 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 95 0 63 0 31 63 63 0 31 31 63 31 31 0 63 31 0 0 63 31 31 31 63 0 63 31 31 0 95 0 31 0 31 63 0 63 63 31 95 95 63 63 63 63 63 31 0 63 63 31 31 31 0 31 31 31 63 31 31 31 0 31 31 31 0 31 31 31 0 63 95 31 31 31 63 63 31 63 31 63 0 63 63 31 31 63 63 63 0 63 63 0 31 63 63 63 63 63 31 31 31 31 95 0 31 0 63 31 31 31 31 0 63 0 31 31 63 31 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 63 63 63 63 31 0 31 95 31 31 0 0 31 63 31 63 31 31 0 31 31 31 63 31 63 63 63 31 63 31 0 63 63 0 31 95 31 31 0 31 63 31 31 63 31 31 63 31 31 0 31 0 63 31 31 63 63 31 63 63 0 31 63 31 31 63 63 31 95 63 63 31 63 63 63 31 0 31 63 31 63 31 63 31 31 31 63 63 31 31 31 63 31 63 0 31 0 0 31 31 63 31 63 63 0 31 63 0 0 31 31 31 63 31 0 31 31 0 31 31 0 0 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 95 0 31 31 0 63 0 0 0 31 31 63 31 31 31 31 31 0 63 63 0 95 0 31 31 0 63 63 31 63 31 31 0 95 0 31 31 31 63 31 31 63 63 63 95 0 31 31 31 31 63 31 31 31 31 0 31 31 0 63 95 63 0 63 0 31 31 31 63 31 31 63 31 31 63 31 31 63 63 63 31 63 0 31 0 63 63 31 31 63 63 95 0 0 0 95 31 31 31 63 63 31 31 31 0 0 31 63 31 0 0 31 31 31 63 0 31 0 31 0 31 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 31 95 31 63 31 63 31 31 31 0 31 0 31 31 31 31 31 31 31 0 0 95 63 63 31 31 31 63 0 31 0 31 63 63 31 31 0 31 31 63 31 31 31 31 31 31 95 31 31 31 31 0 63 63 31 31 63 0 63 31 31 63 31 31 63 63 31 0 63 63 31 95 0 63 63 31 31 63 0 31 31 31 31 0 31 31 63 31 31 31 63 63 63 63 63 31 31 63 31 31 0 31 0 0 0 31 31 31 31 31 31 0 0 0 31 0 0 31 31 0 0 63 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 31 31 0 63 63 31 95 63 63 0 31 0 31 0 31 31 31 63 31 0 63 0 63 63 31 31 63 0 31 31 95 31 63 63 63 0 63 31 31 63 31 31 95 0 63 63 31 31 0 0 63 0 31 0 63 0 63 31 31 63 31 31 31 63 63 0 0 63 31 31 63 0 31 31 31 63 31 31 63 63 63 31 0 95 31 31 0 63 0 31 0 63 31 31 31 31 31 0 31 95 63 31 31 31 31 0 0 0 0 31 31 31 0 31 0 31 31 0 0 31 0 31 31 31 31 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 63 0 63 0 95 63 0 31 31 0 31 31 0 63 31 31 0 31 31 31 63 31 31 0 31 63 31 31 31 0 0 63 95 31 0 31 31 63 31 63 31 0 63 31 31 63 0 63 31 63 31 63 31 31 31 31 31 31 31 95 31 31 95 63 0 63 31 31 63 31 31 31 63 31 31 31 0 0 31 0 0 0 63 63 63 31 31 63 31 0 31 0 63 31 31 31 0 63 31 63 31 31 31 0 0 31 31 63 31 31 63 31 0 31 0 0 31 31 31 31 31 0 0 0 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 63 0 31 31 31 0 31 63 31 31 63 31 0 31 63 31 31 0 31 63 31 95 31 0 31 31 0 31 63 31 0 0 63 0 31 63 63 0 63 31 31 31 31 63 0 0 63 95 31 63 0 63 0 31 0 63 0 63 31 63 31 63 63 31 31 63 0 0 0 31 63 63 0 0 63 31 31 63 31 31 63 63 0 31 31 63 31 31 95 31 31 95 31 31 31 31 31 0 0 31 63 63 31 63 0 31 0 31 31 31 63 31 31 0 31 31 0 63 0 0 0 63 0 0 63 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 0 0 31 63 31 31 31 31 0 31 31 31 31 63 31 31 0 31 31 31 0 31 31 63 31 63 0 31 0 63 31 63 95 31 31 31 63 31 31 0 31 63 31 63 31 63 63 31 63 31 31 31 31 95 31 0 31 31 0 0 63 0 63 31 0 31 0 31 31 0 31 31 31 31 63 0 31 0 0 63 31 31 31 31 31 0 63 31 0 63 31 0 31 31 31 0 31 95 0 31 31 0 31 31 63 31 31 63 0 31 31 31 63 31 31 0 0 0 31 31 0 31 0 31 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 63 31 0 0 31 31 31 31 0 31 31 31 31 31 31 31 0 0 31 31 63 31 0 0 31 0 0 31 0 63 63 31 63 31 31 31 63 63 0 31 31 95 0 63 63 31 0 31 0 31 31 31 63 31 31 63 31 63 0 63 31 63 31 31 0 63 31 0 63 63 63 31 31 31 95 31 0 31 63 31 31 0 63 31 0 31 0 0 31 31 0 63 63 0 31 0 31 31 0 31 31 63 31 31 31 31 63 0 63 31 31 0 31 31 31 0 0 0 31 63 31 0 31 31 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -63 31 63 0 63 31 63 31 63 63 0 0 31 63 63 63 0 31 31 63 31 31 63 31 31 31 63 0 63 63 31 31 31 31 31 63 31 31 63 63 63 0 0 0 63 31 31 0 0 31 31 63 31 63 63 31 0 31 31 63 63 63 31 31 31 31 63 63 31 0 63 0 63 31 31 31 63 0 31 63 0 0 63 31 31 31 0 63 63 31 31 31 31 63 63 63 31 31 63 0 63 31 31 31 31 31 0 0 0 0 31 63 31 0 63 31 0 63 31 0 95 0 0 0 0 31 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 31 31 31 31 31 63 0 31 0 0 31 63 31 0 31 31 31 31 31 63 31 63 31 0 63 63 63 0 0 31 31 31 63 31 31 63 63 95 31 31 31 63 31 63 31 63 63 0 31 0 0 63 63 31 63 0 63 0 63 63 63 31 63 31 31 31 63 95 0 63 31 0 63 63 31 31 0 31 31 63 0 0 63 95 63 95 31 31 31 0 31 31 31 0 63 63 0 0 0 0 0 0 31 31 63 63 0 0 31 0 31 31 31 31 31 31 0 31 0 0 31 0 0 0 0 0 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -95 31 31 63 31 63 63 63 31 31 31 31 31 31 31 31 63 0 31 31 31 31 0 0 0 31 31 63 31 31 95 31 31 31 31 31 0 31 63 31 0 31 0 31 31 0 31 31 31 31 31 63 63 31 31 63 31 31 63 63 31 31 63 63 63 63 63 0 63 31 31 31 63 31 31 31 31 63 31 63 63 31 31 31 31 63 31 0 31 31 31 31 31 31 31 31 0 31 0 31 63 0 31 95 95 0 63 31 31 0 63 31 63 0 31 31 31 0 31 0 31 0 0 31 63 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -63 31 0 63 31 63 31 0 63 31 31 0 63 0 95 63 95 31 31 0 0 63 0 63 31 31 63 31 31 0 31 31 0 0 0 63 0 63 31 95 63 63 63 63 63 31 63 63 0 63 0 95 31 63 63 31 31 31 31 95 31 63 63 31 0 31 63 63 0 31 31 31 63 31 0 63 63 31 31 31 0 0 31 31 31 63 31 63 0 63 31 0 31 31 31 63 63 31 0 31 63 63 63 0 0 31 0 63 0 31 31 31 0 31 63 31 0 31 0 0 0 31 0 31 63 31 0 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 63 0 31 31 31 31 31 63 31 63 31 0 0 0 0 31 0 63 31 63 31 31 0 0 31 31 31 63 31 0 31 0 63 63 31 0 31 31 31 0 31 31 63 0 31 63 63 31 31 63 31 31 63 31 31 31 31 31 63 31 31 63 63 63 31 63 31 0 31 31 63 31 31 31 0 63 63 31 63 0 31 95 63 63 63 0 31 0 31 0 0 31 31 31 95 63 63 31 0 31 0 0 31 31 31 63 31 31 31 31 63 63 31 31 31 0 0 0 31 63 0 0 31 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 63 31 31 31 31 31 63 63 0 0 0 63 63 63 0 31 31 31 0 0 63 63 0 31 0 0 31 0 31 31 31 63 31 0 31 95 63 63 0 0 31 31 0 31 63 63 63 31 0 0 0 31 31 31 63 63 31 31 63 31 63 63 0 63 0 31 31 63 0 31 31 31 31 63 95 31 63 31 31 31 31 0 63 31 31 31 63 0 31 0 0 31 31 63 0 63 0 31 63 31 63 31 31 0 0 31 0 0 63 0 0 31 63 0 0 31 31 0 31 0 31 0 0 0 31 31 0 31 0 31 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 31 63 0 0 0 31 63 0 0 31 63 31 31 31 31 0 63 31 63 31 63 31 95 0 0 63 63 63 31 31 95 31 0 31 63 31 31 0 31 63 31 63 31 31 31 31 63 63 31 31 31 0 31 31 31 31 63 63 0 63 63 0 63 31 31 63 31 63 31 31 95 31 31 31 31 63 0 63 31 31 31 95 31 0 31 31 31 31 0 31 31 0 31 31 0 0 0 31 0 31 31 63 31 0 0 31 31 31 31 0 31 0 63 63 0 31 31 63 0 0 31 31 31 31 31 31 31 0 31 63 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 31 31 31 31 31 31 0 0 63 0 31 95 0 31 31 63 63 95 0 31 31 31 63 0 31 0 0 31 63 63 0 31 95 31 31 31 63 0 63 0 31 0 31 31 63 31 31 0 0 31 95 31 0 0 0 0 63 31 31 0 0 63 0 31 31 63 63 31 0 31 63 63 63 95 0 31 0 63 31 31 0 31 0 31 31 63 0 31 0 31 31 31 63 31 0 31 0 31 31 0 63 31 63 31 63 0 0 31 31 63 31 0 31 0 0 63 31 0 31 0 31 31 31 0 31 0 0 0 0 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 0 0 0 31 31 31 0 31 31 31 31 63 31 31 31 63 63 63 31 63 63 63 0 63 0 31 31 31 0 31 31 0 31 31 31 31 31 63 0 63 0 63 31 31 0 31 63 63 63 63 63 31 0 31 63 0 31 95 31 0 63 31 31 0 63 0 31 0 31 95 31 31 63 31 0 0 63 0 63 31 0 31 63 31 31 31 63 63 31 31 31 0 31 31 31 63 31 31 0 0 0 31 31 31 0 63 0 0 31 31 0 31 31 31 0 63 0 0 0 0 0 31 0 0 31 0 0 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 31 0 31 31 0 31 0 63 31 0 0 63 0 63 31 63 0 0 31 0 31 0 63 95 0 31 31 0 63 31 31 31 63 63 31 63 31 63 63 63 31 0 63 63 63 31 31 63 31 63 31 0 31 63 31 31 95 31 31 31 63 31 63 31 63 63 31 0 31 31 31 0 0 63 63 95 0 63 31 31 63 0 31 0 0 0 0 31 31 31 63 0 31 31 0 31 31 63 95 63 63 0 0 31 95 31 0 0 63 31 63 31 31 0 0 63 0 0 0 63 31 0 31 63 0 0 63 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 0 31 31 31 31 63 0 31 63 31 31 0 0 31 31 0 31 63 31 63 63 63 63 0 63 63 0 31 0 31 31 31 95 0 31 0 0 31 31 0 63 31 0 0 63 0 31 63 0 31 31 0 63 31 0 31 63 31 31 31 31 31 31 63 31 31 0 31 31 31 31 31 31 0 0 31 31 0 0 0 31 31 0 31 0 31 31 31 63 63 31 63 31 63 31 31 31 31 63 0 63 0 31 31 31 31 0 0 63 31 63 63 0 31 0 31 31 31 31 63 31 31 0 31 0 63 31 63 31 0 0 0 0 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 63 31 31 0 0 63 31 31 0 31 0 0 31 63 31 63 31 31 0 63 63 31 0 0 0 0 31 31 0 31 63 0 63 31 0 31 0 63 31 63 63 0 63 31 63 0 31 0 0 63 31 31 31 63 0 0 31 31 31 0 0 31 31 63 0 63 63 63 0 31 31 31 63 63 63 0 63 0 31 0 63 63 63 31 31 31 31 31 31 31 0 0 0 31 0 0 31 31 0 31 31 0 63 31 31 63 63 0 31 63 31 0 0 31 31 31 0 63 31 63 0 0 63 0 0 0 0 0 0 31 31 0 0 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 63 31 31 31 0 0 31 0 63 31 63 31 63 0 31 31 31 63 0 31 0 0 63 31 0 0 31 31 0 31 63 31 31 63 0 31 63 0 31 63 0 31 0 31 31 0 0 31 31 0 31 0 31 31 63 31 31 63 63 31 31 63 0 31 0 63 31 31 31 63 31 0 31 31 31 63 0 31 63 31 31 0 63 31 0 0 63 31 63 31 31 0 31 0 31 31 31 0 0 31 63 31 63 0 31 31 0 0 0 0 31 0 0 0 63 31 31 0 31 0 63 0 0 0 31 0 0 31 0 31 63 0 31 0 31 0 0 0 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 63 31 63 31 31 31 31 31 63 0 31 63 63 31 31 31 0 0 31 0 31 31 31 63 63 0 0 63 0 63 31 63 63 63 63 0 0 63 0 31 0 31 63 0 0 63 0 31 63 0 0 31 31 0 31 0 31 63 63 31 0 0 31 0 31 31 0 31 31 31 63 31 0 63 0 31 0 0 0 63 31 31 63 31 63 31 63 63 63 63 31 31 0 0 63 31 63 31 0 63 0 0 31 31 31 63 31 95 31 31 31 31 31 31 0 31 0 31 0 31 0 31 31 31 0 0 0 31 0 0 0 0 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 63 0 31 31 31 31 31 31 31 31 63 0 31 0 0 63 63 31 0 31 31 31 31 31 0 31 0 0 0 31 31 63 0 63 63 63 31 0 31 63 31 31 31 31 63 95 0 31 0 31 0 63 31 31 31 31 31 63 63 31 0 63 31 63 0 63 0 31 31 0 0 31 31 63 31 31 0 0 31 0 63 63 31 0 31 31 31 63 0 0 0 31 0 63 31 0 63 63 31 0 31 31 31 0 0 63 31 31 63 0 0 31 0 31 0 0 0 31 63 0 31 31 0 63 31 0 31 0 0 0 0 0 31 63 0 63 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -63 31 31 31 63 31 31 0 0 31 31 31 0 63 31 0 31 31 0 31 0 0 63 31 31 31 0 31 0 31 31 63 63 31 31 63 63 63 31 31 63 63 31 0 31 0 31 31 31 31 0 0 31 63 31 0 31 31 31 31 63 31 0 63 31 0 31 0 0 31 31 31 63 63 63 0 63 31 31 31 31 31 0 63 63 31 0 63 31 31 63 63 63 63 0 31 63 0 31 63 31 0 0 63 0 0 0 31 63 31 31 31 31 31 0 31 0 0 31 0 0 0 0 63 0 0 31 63 0 0 31 31 0 0 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -63 63 0 0 0 0 0 31 31 31 63 0 63 0 31 63 31 63 0 0 0 31 31 31 31 31 0 31 31 63 0 31 63 0 31 0 31 63 31 31 0 31 0 31 31 31 63 0 0 31 31 31 63 63 63 31 31 0 31 31 31 0 0 31 63 31 0 31 31 31 31 31 0 31 0 31 63 31 0 0 31 0 63 0 0 63 63 31 63 0 63 31 31 31 63 31 0 0 63 0 31 31 63 31 31 31 31 31 0 31 31 63 0 31 0 31 31 0 63 63 31 31 31 0 31 31 31 31 0 63 31 0 63 31 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 31 0 0 0 63 63 31 31 31 31 63 31 31 0 95 0 63 31 31 0 0 95 0 31 0 31 31 0 63 31 63 0 63 31 31 31 31 0 0 0 31 0 0 0 0 0 31 31 63 0 31 0 0 31 0 31 31 31 31 31 63 0 31 63 31 31 31 31 31 31 31 31 31 0 95 31 0 31 0 0 31 63 0 31 31 31 0 0 0 63 0 63 31 31 31 31 0 31 0 0 31 0 0 63 0 95 31 0 63 0 31 0 0 63 0 31 0 63 31 0 0 0 0 31 0 0 31 0 31 31 31 31 31 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 31 63 31 0 63 0 63 0 31 63 0 0 0 63 63 0 31 31 0 63 31 63 31 0 31 31 63 0 0 0 31 63 31 63 31 31 31 31 31 31 63 31 63 31 63 31 63 0 31 31 63 0 0 31 0 63 31 0 63 63 31 31 63 0 31 31 0 31 63 31 0 31 63 0 0 31 63 31 31 63 63 0 31 0 63 31 63 31 31 0 0 31 31 31 0 31 31 31 63 31 63 0 0 31 31 31 31 31 63 31 31 63 63 0 31 0 31 31 31 31 0 31 0 0 31 95 0 63 31 0 0 0 0 0 0 63 0 0 31 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 0 31 31 0 31 0 31 31 0 0 63 31 31 31 31 31 31 0 0 31 31 31 63 0 0 0 31 31 63 31 31 63 31 31 31 63 63 31 31 31 31 31 31 63 63 63 95 31 31 0 31 31 31 31 0 31 95 0 31 31 0 63 0 31 0 0 0 31 0 63 31 0 31 63 31 31 31 31 0 31 63 63 0 0 31 31 0 31 31 31 31 0 31 63 31 0 0 0 31 63 31 0 0 0 63 31 0 0 63 31 0 31 31 0 0 0 63 31 0 31 31 0 31 31 0 63 31 0 0 31 0 0 0 0 31 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 0 0 31 0 0 31 0 31 31 0 31 31 63 0 0 31 31 31 0 31 31 31 63 63 31 31 63 0 31 31 0 31 63 31 31 0 63 31 31 0 0 31 0 31 95 63 95 31 0 63 0 31 63 31 31 63 31 31 0 0 0 31 31 31 31 63 31 31 0 31 0 0 31 31 95 31 31 31 63 63 0 31 63 0 31 31 0 31 31 0 31 31 31 0 0 63 0 63 63 31 63 31 31 63 0 31 0 31 31 31 31 63 0 0 0 31 0 0 31 0 0 0 31 0 0 31 0 31 63 31 31 0 31 0 0 0 0 31 31 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -63 0 0 0 31 31 31 0 0 31 31 63 31 31 31 0 31 0 63 31 63 31 31 63 0 0 31 0 63 0 63 31 31 31 31 63 63 0 63 0 63 0 31 31 63 0 95 31 63 31 31 0 31 0 0 31 31 0 0 31 31 31 31 31 0 0 31 0 0 31 31 0 95 31 31 31 31 31 0 31 31 0 0 31 31 63 0 31 31 31 63 63 63 63 0 0 0 0 31 31 63 0 0 0 31 31 31 31 0 31 95 31 63 0 0 0 63 31 0 31 0 0 31 63 0 31 31 63 31 0 31 31 31 63 31 0 0 0 0 0 0 63 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -63 31 31 31 31 31 0 63 31 0 31 0 0 31 0 63 0 31 31 31 31 0 0 31 63 31 31 31 63 31 31 0 0 31 31 0 0 31 0 0 63 0 31 0 63 0 63 31 0 63 31 0 63 31 0 0 31 0 31 63 31 0 0 0 31 0 31 31 31 0 31 0 31 63 0 63 0 63 63 31 63 63 0 31 63 31 0 63 31 31 0 31 31 0 0 0 31 31 31 31 31 31 31 31 31 95 31 0 63 0 0 0 0 0 0 0 31 31 0 63 0 63 0 0 0 0 31 0 0 0 0 0 31 0 31 31 31 0 31 0 31 0 0 31 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 31 0 63 31 63 0 0 0 31 0 0 31 0 0 0 0 31 31 0 31 31 0 63 0 0 0 63 63 31 63 31 63 63 0 0 0 0 31 63 31 63 31 31 63 0 31 0 31 63 0 0 31 31 31 63 31 31 31 0 31 0 0 31 0 31 0 0 0 0 31 0 31 0 31 31 0 95 31 63 31 31 63 63 31 31 31 31 0 63 31 31 0 31 63 0 31 0 63 0 63 63 31 31 31 0 0 63 31 31 31 0 63 0 31 31 31 63 0 31 31 31 0 31 0 0 0 0 0 31 0 31 31 0 31 31 0 31 0 0 0 0 0 31 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 31 0 0 63 63 63 63 0 0 31 31 0 0 0 0 0 63 31 63 63 31 31 31 31 31 31 31 63 31 0 31 31 31 31 31 63 63 63 0 31 0 31 0 31 63 63 63 0 63 0 0 31 31 31 0 0 63 0 0 31 0 63 63 31 31 95 31 0 0 0 63 63 0 63 0 0 63 0 31 31 31 0 31 0 0 31 63 0 31 31 31 31 0 31 0 0 0 0 31 31 0 0 31 0 0 0 0 0 31 31 31 31 31 0 0 63 31 31 0 0 31 0 31 0 31 31 31 0 31 0 31 31 31 0 0 31 31 31 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 31 0 0 0 31 31 31 0 0 63 63 0 0 63 63 31 31 0 0 0 31 0 31 31 31 31 31 0 0 31 31 31 31 31 31 0 31 31 31 63 0 31 63 31 0 31 63 63 0 63 31 0 63 63 0 31 31 0 0 63 0 0 0 31 31 0 31 31 31 31 0 31 0 31 31 63 63 31 0 31 0 31 31 63 63 0 31 0 31 63 63 31 31 0 31 63 31 0 63 0 63 0 63 31 0 63 63 0 31 31 31 63 31 0 63 63 31 31 31 31 0 0 31 0 0 31 31 31 0 0 0 31 0 31 0 31 0 31 0 0 0 31 31 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 31 63 31 0 31 31 31 0 63 31 31 0 63 31 63 31 31 31 31 31 63 0 31 0 31 0 31 0 0 63 63 31 31 31 31 31 63 0 31 63 31 0 31 63 63 31 0 0 31 0 31 63 63 0 31 0 31 0 31 31 0 31 31 0 31 63 63 0 0 31 31 63 0 31 63 0 31 63 31 31 31 31 0 0 0 31 31 31 63 31 63 31 31 0 31 31 0 31 0 31 0 0 31 31 0 31 0 0 63 31 0 31 31 0 0 0 0 0 31 63 63 0 31 31 0 31 0 31 31 0 0 31 0 0 0 31 0 0 0 31 0 0 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 0 31 0 0 31 63 31 63 0 0 0 0 0 31 63 0 31 0 31 31 0 31 31 31 31 31 0 0 31 31 0 31 31 63 0 31 0 0 0 31 31 0 0 0 63 31 0 31 31 63 0 31 0 0 63 31 31 0 31 0 31 31 63 0 31 31 0 31 0 63 31 31 31 0 0 63 63 31 0 63 0 31 63 31 31 0 0 31 0 63 0 63 0 31 63 31 31 0 0 0 31 0 31 0 95 63 0 0 0 31 63 31 0 31 31 31 63 31 0 31 31 0 31 63 0 0 31 0 0 0 0 0 63 31 0 0 31 0 31 63 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -0 31 31 0 31 0 0 31 63 31 0 31 0 31 63 0 31 31 0 0 31 0 0 31 0 0 31 0 0 63 0 0 31 31 31 63 31 0 31 31 63 31 31 31 63 0 0 31 31 0 31 31 31 31 0 31 31 31 31 0 0 0 63 63 63 31 0 63 0 31 63 31 31 31 31 0 31 31 63 0 31 31 0 31 0 63 0 31 31 31 63 31 63 0 31 31 63 0 31 31 0 0 0 0 63 0 31 31 31 0 31 0 63 31 0 0 0 0 63 31 0 0 0 31 31 31 0 31 31 31 0 0 31 0 0 0 0 31 0 63 0 31 0 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -31 31 31 0 0 0 0 31 0 0 31 31 31 31 31 31 63 63 0 0 0 31 31 31 31 31 0 63 31 31 31 31 0 31 0 31 31 0 31 31 0 31 31 31 0 63 0 63 63 31 0 31 63 0 31 31 31 31 31 31 0 31 31 31 31 31 31 31 63 31 31 0 31 31 0 0 31 31 31 31 31 31 31 31 0 31 0 0 63 31 31 31 63 31 31 31 31 0 63 31 0 31 31 0 31 0 31 31 63 0 31 63 0 31 0 0 0 31 63 31 0 0 0 31 31 31 0 31 0 0 63 0 31 0 0 0 0 31 0 31 0 31 31 31 0 31 0 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 31 0 0 31 0 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 63 63 31 31 0 0 31 31 63 31 63 31 31 63 31 31 31 31 31 63 31 63 31 31 31 31 31 63 63 63 63 0 63 63 31 31 63 63 31 31 31 95 31 31 63 31 63 63 0 0 31 31 31 63 31 31 31 31 31 63 63 31 63 31 63 31 31 63 63 63 63 31 63 31 63 63 63 63 0 63 63 63 31 31 63 31 31 31 31 31 63 31 63 63 63 31 31 31 31 63 31 31 63 31 31 0 31 31 31 31 31 31 63 63 31 31 31 0 63 31 63 31 31 31 0 0 63 31 31 31 0 31 31 63 0 63 63 0 0 0 31 31 31 31 31 31 31 31 31 31 0 31 31 31 31 31 0 31 31 31 0 31 31 31 31 31 63 +63 0 0 63 31 0 0 31 63 0 0 31 31 31 31 31 31 31 31 63 31 31 31 31 31 31 63 31 31 31 63 31 31 63 31 63 63 0 63 31 31 63 31 63 31 31 31 31 31 31 63 63 31 31 31 31 0 31 31 31 31 31 63 31 63 31 31 31 31 31 31 31 63 63 31 0 63 63 0 63 31 31 31 63 31 31 31 31 31 63 63 31 63 31 31 31 63 31 63 63 31 31 63 0 31 31 31 63 63 95 63 63 63 63 63 63 31 63 63 63 0 0 63 0 63 0 31 63 31 31 31 31 31 31 31 31 31 63 31 31 31 63 31 31 63 0 31 0 0 63 0 0 0 63 63 63 0 31 31 0 31 31 31 0 0 31 31 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 31 31 31 63 63 31 63 31 0 31 +31 31 31 0 0 31 63 0 0 63 0 0 31 31 31 31 63 31 31 31 31 31 31 63 31 31 63 31 63 31 63 63 31 31 63 31 63 31 63 31 63 31 63 31 31 63 31 31 31 31 63 63 31 63 31 31 31 31 31 63 31 63 63 31 63 63 95 63 31 31 31 31 31 63 31 31 31 31 63 63 31 63 31 63 63 63 31 31 63 31 31 63 63 31 31 63 63 63 63 31 63 0 63 31 31 63 31 31 31 63 63 31 31 63 31 63 63 63 31 31 63 31 0 0 0 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 0 63 0 31 31 63 31 31 63 63 0 0 31 0 31 0 63 31 31 0 0 0 31 31 31 31 31 31 0 31 31 31 31 31 0 31 31 31 0 31 0 31 0 31 31 0 31 0 0 +63 63 31 31 31 31 0 31 63 31 0 63 63 31 31 31 63 31 31 31 31 31 31 31 63 31 31 31 63 31 63 31 31 31 31 31 31 63 0 63 31 63 31 31 31 63 31 31 31 31 95 31 31 63 63 63 31 63 31 63 63 63 31 31 63 63 63 63 63 31 31 63 31 63 31 31 31 63 63 63 31 63 31 63 31 31 31 63 31 31 63 63 63 63 63 31 63 63 63 31 31 63 63 31 31 31 63 63 63 31 31 31 31 63 63 31 31 63 63 0 31 63 31 0 31 63 63 31 31 31 63 63 63 31 31 31 0 31 31 31 31 63 31 63 31 31 63 31 31 31 63 63 31 31 0 31 0 31 0 31 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 31 31 0 0 31 31 31 31 +0 0 63 0 0 31 0 31 31 31 31 63 0 31 0 63 0 31 31 31 31 31 31 63 63 31 31 31 63 31 31 31 31 63 0 63 31 31 63 31 31 31 31 63 31 31 31 31 63 31 63 31 31 31 63 31 31 63 31 31 63 63 63 31 63 31 31 63 31 31 63 31 63 63 31 31 31 31 63 31 31 63 31 31 31 31 31 31 31 63 31 63 31 31 31 63 63 31 63 63 31 31 31 31 31 63 31 31 31 63 63 31 0 31 63 63 31 31 0 31 31 31 31 31 63 31 31 0 31 31 31 31 31 63 63 31 63 63 0 31 0 63 31 63 31 31 0 31 63 31 0 0 31 0 31 31 63 63 63 63 63 31 0 31 31 31 0 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 0 0 31 31 0 31 +63 31 63 31 63 63 31 31 0 63 63 31 63 0 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 31 63 63 31 63 31 31 31 0 31 31 31 63 31 31 31 31 63 31 31 63 63 63 31 63 63 63 31 31 31 63 63 31 63 63 63 31 63 63 31 31 63 63 63 31 31 63 63 63 63 63 63 31 95 31 31 31 95 63 63 63 63 31 63 31 31 63 63 63 31 0 31 31 63 63 31 31 63 31 31 31 31 63 31 31 63 31 31 63 31 31 63 31 63 31 63 63 63 31 31 63 31 31 31 31 31 63 0 63 63 63 63 31 31 31 63 31 63 63 31 0 0 31 31 31 31 31 31 31 31 31 0 31 31 0 31 31 31 31 31 31 31 31 31 0 31 31 0 0 31 0 31 31 0 0 31 31 31 0 0 63 +31 0 0 31 31 31 31 31 31 0 31 63 31 63 31 31 31 0 31 31 31 63 31 31 31 63 31 31 31 31 63 0 31 63 63 63 31 31 31 63 63 31 31 31 31 31 63 31 63 31 63 95 63 31 31 63 31 63 63 0 63 31 31 63 31 63 63 31 31 31 31 63 63 63 31 31 31 31 31 63 31 31 31 31 63 31 63 31 31 31 31 31 31 31 63 31 31 31 63 31 31 31 31 31 31 63 31 31 31 31 31 31 63 31 31 63 31 31 63 31 63 63 0 31 63 0 31 31 31 63 31 95 31 63 31 63 63 63 31 31 63 63 0 0 31 31 63 0 31 63 31 31 31 0 31 31 0 63 31 0 0 31 31 31 31 31 31 31 31 31 0 31 31 0 31 31 31 31 0 0 31 31 31 0 31 31 31 0 0 63 63 31 +0 31 31 31 63 31 0 31 31 31 31 0 31 63 31 31 63 31 0 31 63 95 63 31 31 31 31 63 31 31 0 63 31 31 31 63 31 31 31 31 31 63 0 31 31 63 31 31 63 63 31 31 63 63 31 31 63 31 63 31 63 31 63 31 63 63 31 63 31 31 31 31 63 63 31 63 31 63 31 31 63 31 31 31 63 31 95 63 95 63 31 31 31 63 31 63 63 63 31 31 63 63 63 31 31 31 63 63 31 31 31 31 63 63 63 31 0 63 31 63 31 31 63 0 63 31 31 63 31 31 31 63 31 31 31 63 31 63 31 63 0 31 63 0 0 0 0 31 31 31 31 63 0 31 31 31 31 31 31 0 31 31 31 31 0 31 31 31 31 31 31 31 31 31 31 0 0 31 0 31 31 31 31 31 0 31 31 31 0 31 31 31 +31 31 0 31 31 31 63 31 0 31 0 31 63 31 0 31 63 0 31 31 63 31 31 31 63 31 31 31 31 63 63 63 31 31 63 31 31 31 63 63 63 31 31 31 63 31 31 31 63 31 63 31 63 31 31 31 31 31 31 63 31 63 31 63 31 31 31 63 63 63 63 31 95 31 31 63 63 63 31 63 31 63 31 63 31 31 63 95 63 63 31 31 31 63 63 63 31 31 31 31 63 31 31 95 31 63 31 31 31 63 31 31 63 63 63 31 63 31 31 63 31 31 31 31 31 31 31 31 63 31 63 31 31 31 31 31 63 0 31 63 63 0 31 63 0 0 63 63 31 31 31 0 63 31 63 63 63 0 31 31 31 31 31 31 31 0 31 31 31 31 31 31 63 31 31 63 0 63 31 31 0 0 0 31 31 63 31 31 31 31 31 0 +63 31 31 63 31 31 0 63 31 31 31 31 31 63 63 63 31 0 63 31 31 63 63 63 63 31 31 31 31 63 63 31 63 63 31 63 31 63 31 0 31 63 63 63 63 31 31 31 31 63 63 31 31 31 63 63 0 63 31 63 63 63 31 31 31 63 31 31 31 31 63 63 63 31 31 63 63 31 63 63 31 31 63 63 63 63 63 63 31 31 63 63 63 0 63 63 0 0 31 63 63 31 31 95 31 31 31 31 31 31 31 63 31 63 63 31 31 63 63 31 63 63 31 0 31 31 31 63 31 31 31 63 63 31 0 31 31 63 31 31 0 63 31 31 31 31 63 31 31 0 0 0 31 31 63 63 31 63 31 31 63 31 63 0 31 31 31 31 0 31 31 31 31 0 0 0 0 31 31 31 31 31 63 31 31 31 0 31 31 63 31 31 +31 63 31 31 31 31 31 63 31 31 31 63 63 31 31 63 31 31 63 31 31 31 31 31 31 31 31 31 31 31 31 63 31 0 31 0 31 63 63 31 63 0 31 0 63 31 63 31 63 31 31 31 31 31 63 63 31 63 31 63 31 0 31 31 63 63 31 63 31 31 63 31 31 63 63 63 63 63 63 63 63 31 31 95 63 31 31 63 63 63 31 63 31 31 31 31 63 31 63 31 31 63 31 63 31 31 63 63 31 31 63 31 63 63 63 63 63 63 31 63 63 63 31 31 31 31 31 63 31 31 63 31 31 31 31 63 31 31 63 0 31 31 31 31 63 31 63 0 31 63 31 63 31 31 0 63 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 0 0 31 0 31 0 0 31 0 63 31 31 31 63 31 31 31 0 0 +63 63 31 0 0 0 31 63 31 0 31 31 31 0 63 63 31 63 0 31 63 31 31 31 31 31 31 95 31 31 31 31 31 63 31 63 0 63 63 31 31 31 31 0 31 63 63 63 31 31 31 31 63 31 31 63 63 63 31 31 31 63 63 63 63 31 63 63 63 63 63 31 63 95 63 63 31 63 31 63 63 31 95 31 31 95 63 63 31 31 31 31 31 63 31 63 63 63 63 31 31 63 31 31 31 31 31 63 63 31 63 0 31 31 31 0 63 31 31 31 63 31 31 31 31 31 31 63 31 31 31 31 31 31 63 31 31 31 31 31 63 31 63 63 31 31 31 0 31 31 31 63 31 63 31 0 31 0 31 0 31 0 31 31 31 31 31 31 31 0 31 63 31 63 31 0 0 31 0 31 63 31 0 63 31 63 31 31 31 31 31 31 +31 31 31 63 0 0 31 31 0 63 63 31 63 63 63 31 31 31 63 31 31 31 31 31 31 31 31 31 31 63 31 31 31 31 63 31 31 63 63 63 31 0 63 63 63 31 31 31 31 63 31 31 31 63 31 31 63 63 63 63 63 63 31 63 31 31 31 95 31 31 63 63 63 31 63 63 31 31 63 63 63 31 63 63 95 31 63 63 31 63 31 31 31 31 63 31 63 63 63 63 31 31 31 31 31 31 31 63 63 31 63 63 31 63 63 63 63 31 63 63 31 31 63 63 63 31 31 31 63 63 31 31 31 31 31 63 63 31 0 63 63 63 31 31 63 0 31 0 0 63 0 31 0 63 31 31 0 31 63 31 31 31 31 31 63 31 31 31 31 31 31 31 31 63 0 0 0 31 31 31 63 0 31 31 63 0 31 63 0 63 63 0 +31 31 63 63 31 31 31 0 63 63 0 31 63 63 63 0 31 31 31 31 31 63 31 63 31 31 31 63 31 31 31 63 31 31 31 31 31 63 63 31 63 63 63 63 63 63 31 63 63 31 31 95 63 63 31 31 63 63 31 31 63 63 63 31 31 31 95 31 63 31 63 31 63 31 63 31 63 31 31 63 31 63 31 63 31 63 63 31 63 31 63 63 63 63 63 31 63 31 31 63 63 31 31 31 31 63 63 31 63 63 63 63 31 0 31 63 63 63 31 31 31 31 31 31 31 63 31 31 31 31 31 63 31 31 63 63 63 0 63 0 0 63 31 31 31 63 63 31 0 0 63 63 31 31 31 0 31 31 31 31 31 31 31 0 31 63 31 31 31 31 31 0 31 0 31 31 63 63 31 31 63 31 63 0 63 0 31 31 63 31 31 31 +31 31 63 63 31 31 63 63 31 31 31 63 63 31 31 31 31 63 0 31 63 63 31 63 63 31 63 31 31 63 31 31 31 31 31 63 63 31 31 0 63 31 63 63 63 63 63 31 63 31 31 63 63 31 63 63 31 63 31 63 31 63 63 63 63 95 63 63 63 31 63 63 63 63 31 63 63 63 31 63 31 31 95 63 63 31 31 63 31 63 63 63 31 31 63 63 63 63 63 95 63 63 31 31 31 31 63 63 31 31 31 31 31 31 63 31 63 63 31 31 31 63 31 31 31 95 31 31 31 31 31 0 31 63 31 63 31 31 31 31 63 31 63 63 31 0 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 63 31 31 31 31 0 0 0 31 0 63 31 63 31 31 0 63 31 63 31 31 31 31 31 31 31 +63 31 63 31 31 31 63 63 63 31 0 63 63 31 63 63 63 63 0 63 63 63 31 31 31 31 31 63 31 63 63 63 31 31 63 31 63 63 31 31 63 31 31 63 31 31 31 31 31 63 31 31 63 63 31 31 63 31 63 63 63 63 63 31 31 31 95 31 63 31 63 31 31 31 31 31 63 63 31 63 63 31 31 63 31 63 63 63 63 31 31 63 63 31 31 63 63 63 63 63 95 31 63 31 31 95 31 31 31 63 63 63 31 31 31 31 31 31 63 63 31 31 31 31 31 31 31 31 63 63 31 0 63 31 63 31 63 0 63 31 31 63 63 63 31 0 31 31 63 63 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 31 0 31 31 31 63 31 63 31 63 63 31 31 0 31 0 0 0 31 31 0 31 0 31 +63 31 31 31 63 63 31 31 31 31 0 31 63 31 31 63 31 31 31 63 31 0 0 31 31 31 31 31 31 31 31 63 63 95 31 31 31 63 63 31 0 31 63 63 31 31 63 63 31 95 31 31 63 63 31 63 31 63 31 63 63 31 63 31 31 95 31 63 63 95 31 31 31 63 63 31 31 63 63 63 31 31 31 63 63 63 31 63 63 63 63 63 63 63 31 31 63 31 63 63 31 63 63 31 95 31 31 63 63 31 31 31 0 31 63 63 31 31 31 31 63 31 31 63 31 31 31 31 31 63 63 31 31 0 31 31 31 0 31 31 31 0 63 31 0 31 31 31 31 63 31 31 31 31 31 63 31 31 31 31 31 31 63 0 31 63 31 31 31 31 63 0 0 31 31 31 31 31 31 0 0 0 0 0 31 31 31 63 31 63 0 31 +31 31 31 31 31 31 31 31 31 63 31 31 31 31 31 31 63 31 31 63 0 31 63 31 0 31 31 31 31 31 63 63 31 31 31 31 63 31 63 31 63 63 63 63 63 31 31 31 63 63 63 63 63 63 63 31 63 63 63 63 63 63 31 31 95 95 95 31 31 31 31 63 63 31 31 63 63 63 31 63 31 31 63 31 31 31 31 31 63 95 63 31 63 63 63 63 63 63 63 95 95 63 63 31 63 63 95 63 63 63 31 63 31 63 0 31 31 31 63 63 63 63 31 31 31 31 31 31 31 63 63 31 63 31 31 31 31 63 31 31 31 31 31 31 63 63 0 31 31 31 63 31 31 31 63 31 31 63 31 0 31 31 63 31 31 63 31 0 31 31 31 31 31 31 0 63 31 0 0 63 31 0 0 0 63 0 0 31 31 31 31 31 +95 31 31 31 63 63 31 31 31 31 31 31 31 31 63 63 63 31 0 31 0 31 31 31 31 63 31 31 31 31 95 31 63 31 31 95 63 31 63 63 63 63 31 63 63 63 31 31 31 95 31 63 31 63 63 31 63 63 31 63 63 31 63 63 63 63 95 95 63 95 95 63 31 95 63 63 31 63 63 63 63 31 95 31 31 31 31 63 95 31 63 63 63 63 63 63 63 95 63 63 63 63 31 31 63 95 31 31 63 31 31 63 63 63 63 63 63 63 63 31 31 63 63 31 31 31 31 31 63 31 31 63 63 63 31 0 31 63 31 63 31 31 0 31 31 31 31 0 31 31 31 31 31 63 31 31 31 63 63 31 31 0 31 63 63 31 0 63 31 0 0 31 31 63 63 31 31 31 31 0 0 31 31 0 0 63 0 0 31 31 31 0 +31 31 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 63 31 63 0 31 31 31 31 31 31 63 63 63 31 31 31 31 31 63 31 63 63 63 31 31 63 31 63 31 31 63 63 31 31 31 95 63 63 95 63 31 63 31 63 95 63 63 63 31 63 31 31 63 63 31 63 63 63 63 63 63 63 31 63 95 31 95 31 63 63 63 63 63 63 63 63 95 31 31 31 63 63 63 63 63 63 31 31 63 31 63 63 31 31 31 63 63 63 63 63 63 63 63 31 31 31 31 31 63 31 31 31 31 31 31 63 31 63 63 0 0 0 63 31 31 31 63 31 31 31 31 31 31 31 31 31 63 31 0 31 31 31 0 63 63 31 31 31 63 63 31 31 63 31 63 63 63 31 31 31 31 0 31 63 31 0 31 63 31 0 31 +31 31 31 31 31 31 63 63 31 31 31 31 63 31 31 63 31 31 63 31 63 31 0 31 31 63 31 31 63 63 31 31 63 63 63 31 63 63 63 63 31 63 63 63 63 63 63 63 63 63 31 95 63 63 63 63 63 95 63 63 63 31 63 31 31 63 63 63 63 31 63 95 63 63 63 63 63 63 63 31 63 63 95 63 63 31 31 31 95 31 63 31 31 0 63 63 95 95 31 63 63 63 63 31 31 63 31 63 63 63 31 31 63 63 63 95 31 95 31 63 63 63 63 31 31 31 31 63 31 0 31 63 63 63 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 63 31 31 63 63 31 63 31 0 63 31 63 31 31 31 31 0 0 63 0 0 31 0 31 31 31 31 63 0 31 0 63 +31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 0 31 31 63 63 63 31 63 31 63 31 63 63 31 63 31 63 63 63 31 95 31 31 63 31 0 31 31 31 63 63 63 31 31 31 63 63 95 31 31 63 63 63 63 31 63 63 95 63 31 63 63 31 95 63 31 63 31 63 63 63 63 31 63 63 63 31 63 31 63 63 63 31 63 63 63 63 63 63 31 95 63 31 63 31 63 31 63 31 63 0 63 31 31 63 63 63 31 63 31 63 63 63 63 63 31 63 31 63 31 31 63 63 0 31 31 0 31 63 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 0 31 31 31 0 63 0 31 0 63 31 0 63 0 31 31 31 0 31 0 31 31 31 31 0 63 31 31 31 0 63 31 31 63 0 31 31 +0 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 63 0 63 31 63 63 31 31 63 31 63 31 31 31 31 31 31 31 63 63 63 63 31 31 63 95 31 31 63 31 31 63 31 31 31 31 63 95 63 63 31 63 63 63 63 63 63 63 63 63 63 31 31 31 95 63 95 63 63 95 63 63 31 95 31 63 63 31 31 63 95 95 63 31 63 63 63 31 63 63 63 63 31 95 31 63 63 63 63 63 31 31 63 31 63 63 63 63 63 63 63 31 31 63 31 63 95 31 63 31 31 63 63 63 63 63 31 31 0 63 0 31 31 31 63 31 63 63 31 31 31 31 31 31 31 31 63 31 63 63 31 31 31 31 31 63 31 31 0 0 31 63 31 31 31 31 63 0 31 63 31 31 31 31 31 31 31 31 31 0 31 63 0 63 0 31 +31 63 31 31 31 31 31 31 31 31 31 31 63 31 63 63 31 31 63 63 63 0 63 63 63 63 63 31 31 31 31 63 63 63 63 31 63 63 31 31 31 63 31 63 63 0 31 63 63 31 31 63 95 63 63 31 63 95 63 31 63 63 63 63 63 95 63 63 31 31 31 95 63 63 31 63 63 63 63 63 31 95 95 31 95 95 95 63 63 63 63 63 63 95 63 63 63 63 31 63 95 31 63 63 95 31 31 0 63 31 63 63 63 63 95 63 63 63 63 63 31 95 31 31 0 31 63 63 31 0 31 0 31 63 63 63 63 63 63 31 63 31 31 63 31 31 31 31 31 31 31 31 31 63 63 31 31 0 31 63 31 63 31 31 0 31 31 63 0 31 0 31 63 31 31 31 0 0 31 63 31 31 31 31 31 63 31 0 31 63 31 31 +31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 63 63 63 63 63 31 31 31 63 63 63 31 63 63 31 31 63 63 63 63 31 95 63 63 31 63 31 63 63 63 0 63 31 63 63 63 63 63 63 95 63 63 63 63 63 63 63 63 63 95 95 63 95 63 63 63 31 95 31 31 63 63 95 63 63 95 31 63 95 31 63 95 95 63 63 63 31 63 63 63 31 63 63 95 63 63 63 63 31 63 31 63 63 63 63 63 63 63 31 63 31 63 63 63 63 31 31 63 63 63 63 63 63 31 0 63 31 31 31 31 31 31 31 31 31 31 31 31 63 63 31 31 31 31 31 63 31 31 31 31 0 0 63 0 63 63 0 0 31 31 63 0 31 63 0 31 31 0 0 63 31 31 31 31 31 31 31 31 0 31 0 31 31 31 0 31 +63 31 31 31 31 63 31 31 31 63 31 31 31 31 63 63 63 31 0 31 31 31 31 31 31 63 63 63 31 0 63 31 31 31 63 63 63 63 31 63 63 31 95 31 31 63 63 63 63 31 63 63 31 63 63 63 63 63 63 95 95 63 63 63 63 63 63 95 63 63 63 95 63 63 63 63 63 63 63 63 63 95 31 95 63 63 63 63 63 63 63 63 63 63 31 31 63 95 95 63 63 31 31 31 63 63 63 63 63 63 63 95 63 31 63 63 31 31 95 63 31 31 63 31 63 31 31 63 31 63 63 31 31 31 31 63 31 31 0 63 31 63 63 31 63 31 31 31 31 63 31 0 31 31 63 31 0 31 31 31 31 0 31 31 31 0 0 63 63 31 63 0 31 31 31 31 63 63 31 63 31 31 0 63 0 31 31 31 31 31 31 31 +31 31 63 31 31 63 63 63 31 31 31 31 63 31 63 31 31 63 63 31 63 63 31 31 63 63 63 31 63 31 31 63 63 63 31 31 63 63 31 31 31 63 31 63 63 63 63 63 63 95 63 63 63 31 63 31 63 63 95 95 95 63 63 63 63 31 95 63 63 95 31 63 31 63 31 95 63 63 63 63 63 63 95 63 63 31 95 63 63 63 63 95 63 31 63 63 63 31 31 95 95 63 31 31 31 63 31 31 31 63 63 31 31 95 63 63 31 63 31 31 63 63 31 31 31 63 31 63 31 63 0 31 31 31 31 31 63 31 31 31 63 31 63 31 31 31 31 31 63 31 31 63 63 0 0 31 0 31 31 63 31 31 0 0 31 31 0 31 31 31 31 0 63 0 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 31 31 +31 31 63 31 31 31 63 63 31 31 31 31 31 31 31 63 31 31 31 63 63 63 0 63 63 31 31 63 31 31 63 31 63 31 31 31 63 31 95 31 63 31 63 63 63 31 63 63 63 63 63 31 31 31 95 31 63 95 63 95 63 63 63 95 63 63 63 63 63 63 63 31 63 63 63 63 63 63 63 95 63 31 63 63 95 95 63 63 63 63 63 63 95 31 63 31 31 95 63 31 63 95 63 63 31 31 63 63 63 31 31 63 63 31 63 31 63 63 63 31 31 63 31 31 63 63 63 31 63 0 63 31 63 63 63 31 31 31 31 31 31 63 31 63 63 31 31 31 31 31 63 31 31 63 0 63 31 31 0 0 31 31 31 63 31 31 31 31 31 31 31 31 63 0 63 31 63 63 31 31 0 31 31 31 0 0 31 31 31 0 31 31 +31 31 0 31 31 63 63 63 31 31 63 31 31 31 63 31 31 31 31 31 31 31 31 63 63 63 63 0 63 31 63 63 31 63 31 63 31 63 31 63 63 63 95 31 63 63 63 63 63 63 63 63 31 63 63 63 63 31 63 63 95 63 31 63 95 95 63 31 63 95 63 63 31 31 95 63 63 63 63 63 95 95 31 95 63 31 31 95 63 63 63 95 63 31 63 31 63 31 63 95 63 31 31 63 63 63 63 63 63 95 95 63 31 31 31 63 31 63 31 63 31 31 63 31 63 63 63 0 31 0 31 31 63 63 63 63 63 31 63 63 63 63 31 31 31 31 0 31 31 31 31 0 31 0 31 31 63 63 63 63 63 31 31 31 31 63 31 31 31 31 31 63 31 31 63 63 31 63 63 31 31 31 63 31 0 31 31 31 31 31 31 31 +63 63 31 31 31 63 31 63 31 31 31 63 31 63 31 31 63 63 63 63 63 63 31 63 31 63 31 63 63 63 63 63 63 63 63 31 63 31 95 63 63 95 31 31 95 63 63 63 63 63 63 63 31 63 63 63 63 95 31 95 63 63 63 63 63 63 31 63 63 95 31 95 95 63 63 95 63 95 63 95 95 63 95 63 63 63 95 95 95 95 63 95 63 63 95 63 63 95 63 95 63 63 63 63 63 63 63 63 95 63 31 31 63 63 31 31 63 31 63 31 63 63 63 63 63 63 63 63 31 63 63 63 63 63 63 31 31 31 31 31 63 63 31 31 31 63 31 31 63 31 63 0 0 31 0 63 0 0 31 31 31 31 31 63 63 31 31 31 31 31 0 31 63 31 63 31 0 31 31 31 31 31 31 0 31 31 31 0 31 0 31 31 +0 31 31 31 63 31 31 31 31 63 31 31 31 31 63 31 31 31 31 63 63 31 63 31 31 31 63 63 31 63 63 63 31 63 63 63 63 63 63 31 31 63 63 63 63 63 31 63 63 63 63 63 63 63 31 63 95 63 63 95 31 63 63 63 95 95 95 63 95 63 31 31 95 95 63 63 63 95 63 63 95 95 95 63 63 63 95 95 63 63 63 63 63 31 63 95 63 31 63 95 31 63 63 63 63 63 63 63 63 31 63 63 63 31 95 31 31 31 63 95 63 63 31 31 63 31 63 31 31 63 63 63 31 31 31 31 63 63 31 31 63 63 31 31 31 31 63 31 31 63 31 63 63 0 31 31 0 63 63 31 0 63 31 63 31 63 63 31 31 31 31 63 63 31 31 0 0 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 +63 31 31 31 63 63 31 31 63 31 31 31 31 63 31 31 31 31 31 95 31 31 31 63 63 63 31 63 63 63 63 63 63 63 31 63 31 63 63 63 63 63 95 63 63 31 63 63 63 95 63 63 63 63 63 63 31 31 63 63 31 63 31 63 63 63 95 95 63 63 63 95 63 95 95 63 95 63 95 95 63 95 95 63 95 63 95 63 95 63 63 31 31 63 63 95 63 31 63 63 63 63 63 63 63 63 63 95 31 63 63 31 63 95 63 63 31 95 63 63 63 63 63 0 63 63 63 63 63 31 31 63 31 31 31 95 63 63 31 63 31 31 63 31 31 31 31 63 31 31 31 63 0 31 0 31 63 63 63 0 31 31 63 31 31 63 31 63 63 0 63 31 31 63 31 63 31 31 31 31 31 0 31 31 31 31 31 31 0 31 31 31 +31 0 63 63 31 31 31 63 31 31 31 63 31 31 31 31 31 31 63 63 31 31 31 31 63 31 31 31 63 31 63 63 31 31 63 63 63 95 31 63 31 63 63 63 31 95 63 95 31 63 95 63 63 31 63 63 63 63 63 63 95 31 63 63 63 95 95 63 63 63 63 63 63 63 63 63 63 63 63 95 95 63 95 95 63 95 63 63 63 63 63 63 63 95 63 95 31 63 63 63 63 63 63 63 63 63 63 63 63 63 31 31 63 95 63 63 63 63 63 63 63 31 63 63 63 31 31 63 63 63 63 31 31 31 31 31 63 31 63 63 63 31 31 63 31 31 63 63 31 31 31 0 31 31 63 63 63 31 31 63 63 0 31 31 0 31 63 31 63 31 63 0 63 31 63 31 31 31 31 0 31 31 31 31 31 31 0 31 31 0 31 31 +0 0 31 31 0 31 63 31 31 63 31 31 63 31 31 31 31 63 31 63 31 31 63 31 63 63 31 63 63 63 0 63 63 31 31 31 63 31 63 31 31 63 31 63 31 95 63 63 63 31 63 63 63 63 63 95 95 63 95 95 31 95 63 63 95 63 95 63 95 95 95 63 95 63 63 95 127 63 95 63 95 95 63 63 63 63 63 63 63 63 63 63 95 31 95 63 31 63 31 95 95 63 63 95 63 63 63 31 31 63 95 95 31 63 63 63 31 63 63 31 63 63 63 31 31 63 63 63 31 63 63 95 63 63 31 31 31 63 31 63 31 63 31 31 63 31 63 63 63 0 0 0 0 31 63 31 63 63 31 31 63 31 63 31 63 31 0 0 31 31 31 63 31 63 31 31 31 31 31 31 31 0 0 31 31 31 31 31 31 31 0 31 +63 31 63 0 31 0 31 63 63 31 63 63 31 63 63 31 95 63 31 63 63 31 95 31 63 31 63 31 63 63 31 63 63 63 63 31 63 63 63 31 63 63 63 63 31 95 31 95 31 95 95 63 63 63 63 63 63 31 95 95 95 63 63 95 63 95 127 63 95 63 95 63 95 95 63 63 95 63 63 95 63 95 63 63 95 63 95 63 95 95 63 95 63 63 63 95 63 63 95 63 95 63 63 63 63 63 95 95 31 31 95 63 63 95 63 63 63 63 63 63 63 63 63 63 31 63 63 63 63 63 63 31 31 31 31 63 31 31 63 31 31 31 63 31 63 63 63 0 31 63 31 63 31 63 31 63 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 31 0 31 +31 63 63 31 63 31 63 63 63 31 63 0 63 63 31 31 31 31 31 31 31 63 63 95 63 63 95 31 63 63 31 31 63 31 31 63 63 31 63 31 63 95 95 31 63 31 63 31 63 95 63 63 63 95 63 63 63 63 95 63 63 63 63 95 127 63 95 95 95 95 63 95 63 63 95 63 63 95 63 95 95 63 95 63 95 95 95 63 63 63 63 63 63 95 95 95 63 95 63 63 63 95 63 63 63 63 63 95 63 31 95 63 31 63 31 63 63 63 63 31 63 63 31 63 31 31 63 63 31 31 31 31 31 63 63 31 63 31 31 31 63 63 63 63 31 31 31 31 63 31 31 31 31 63 31 31 63 0 0 0 31 0 63 31 31 63 31 63 31 31 31 0 31 31 31 31 31 31 31 31 31 31 31 63 31 31 31 31 31 31 31 0 +31 31 63 31 63 63 63 31 31 63 31 63 31 63 63 31 31 31 31 31 31 31 31 63 63 63 31 31 31 63 63 31 63 63 63 63 63 31 63 63 31 95 63 31 31 95 63 95 95 63 63 63 95 63 95 63 95 63 95 95 63 95 63 95 95 63 63 63 63 95 95 95 95 63 63 63 95 95 95 63 63 95 95 63 63 63 95 127 95 95 63 63 63 95 95 63 95 95 63 63 63 63 63 63 63 63 95 63 95 63 95 95 63 63 63 63 63 63 63 63 31 31 63 63 95 63 31 63 63 63 31 31 63 31 31 95 63 63 31 63 63 63 31 63 63 0 31 31 31 63 31 31 0 63 31 31 0 63 63 0 31 31 31 0 0 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 0 +63 63 63 31 63 63 63 31 0 63 31 63 0 31 63 63 63 63 31 31 63 31 63 31 63 63 95 31 95 63 95 63 31 31 31 63 63 31 31 63 63 63 63 31 31 63 95 31 31 63 95 63 63 63 63 63 63 63 63 95 31 95 63 63 63 95 63 63 63 95 63 95 31 63 95 63 95 63 63 63 95 95 95 63 95 95 95 95 95 63 95 95 95 95 95 63 63 63 63 63 63 63 63 63 63 63 63 63 63 95 63 95 63 31 31 63 63 63 63 31 63 95 63 63 31 95 63 63 31 31 31 63 31 31 63 63 63 31 63 0 31 63 63 31 31 63 63 0 0 31 63 63 63 31 31 0 31 31 0 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 31 31 31 31 31 63 31 31 0 +63 31 63 63 63 31 31 63 31 0 0 0 63 63 63 63 63 31 31 31 31 31 31 63 31 63 31 95 63 63 63 63 95 63 31 95 63 31 63 63 63 63 63 31 63 63 63 63 63 63 63 95 63 63 63 63 63 63 63 63 63 63 95 95 63 95 63 95 63 95 95 63 95 63 95 95 95 95 63 95 95 95 95 95 95 63 95 63 95 95 95 95 95 63 95 63 63 63 63 127 63 95 63 63 63 95 95 95 95 63 63 63 63 63 63 63 63 63 31 63 63 63 63 31 31 95 31 31 31 31 31 31 63 63 31 63 63 31 31 31 63 31 63 63 63 31 31 63 31 31 31 63 63 63 31 63 31 31 31 31 0 31 31 31 0 63 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 31 31 31 31 31 31 31 +63 63 31 31 63 63 0 31 63 31 0 63 63 63 31 63 0 63 63 63 63 63 63 31 63 63 31 31 63 31 95 95 63 95 31 63 63 95 63 63 63 63 95 63 95 31 63 95 63 95 95 95 95 63 63 95 63 95 95 95 95 95 95 63 63 63 63 95 63 127 95 95 95 95 95 95 95 127 63 95 63 95 95 95 95 127 127 63 63 63 63 95 95 63 31 63 63 63 95 63 95 63 63 31 31 95 63 95 95 95 63 63 95 63 63 63 63 31 63 63 63 31 31 63 63 95 63 31 95 63 31 31 95 31 63 63 63 31 63 31 31 63 63 63 63 0 31 63 63 63 63 63 31 31 31 31 31 31 31 0 31 31 31 0 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 31 0 31 0 63 0 0 +31 31 63 31 63 0 63 31 31 63 31 63 63 63 0 31 0 63 31 63 63 63 63 63 63 63 63 63 95 95 95 63 95 31 31 63 95 63 95 63 63 63 63 63 63 95 63 63 95 63 63 63 95 95 63 63 63 63 127 95 95 95 95 95 95 63 63 95 127 63 63 95 95 95 127 95 63 127 127 127 95 95 95 95 63 127 95 95 63 95 95 95 95 95 95 95 95 127 63 63 95 63 95 63 95 63 31 95 63 63 95 63 63 63 63 63 31 63 63 95 63 31 63 95 31 63 31 31 31 63 63 31 63 31 31 31 31 0 63 31 31 31 63 63 0 63 31 31 31 63 31 31 31 31 31 63 31 31 31 31 31 31 31 63 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 31 0 0 31 31 31 31 31 63 31 31 31 31 +63 31 31 63 0 31 31 63 31 63 63 63 31 31 63 31 63 31 63 31 63 63 63 63 31 63 31 63 95 63 31 31 63 63 63 95 63 63 63 31 63 63 63 63 63 63 63 95 63 95 63 95 95 95 95 63 95 63 95 127 63 95 63 95 95 63 95 95 63 127 127 95 95 95 95 127 95 63 95 95 95 95 95 95 95 95 63 95 95 95 95 31 95 95 63 63 63 127 63 95 95 63 95 31 63 95 95 63 95 63 63 63 63 63 63 31 63 31 63 95 63 63 31 31 63 31 31 63 63 63 63 31 63 63 31 63 63 63 31 63 63 31 31 31 63 63 31 31 31 63 63 31 31 63 63 31 31 63 31 31 31 63 63 31 31 31 31 31 31 31 31 31 31 63 31 63 31 31 0 63 31 31 31 0 63 0 31 63 31 63 0 0 +31 31 31 31 31 63 63 63 63 31 31 31 31 63 31 31 31 63 63 63 31 63 63 31 31 31 63 95 95 31 63 63 63 63 31 31 63 31 63 63 95 63 63 63 63 63 95 95 95 95 95 95 95 95 63 95 63 95 127 95 63 95 95 95 95 63 63 95 95 95 95 95 95 95 127 127 63 95 127 95 127 95 95 95 95 63 95 95 95 95 95 95 95 63 95 95 63 127 95 127 95 95 63 63 95 95 63 95 63 63 63 95 63 63 95 63 63 63 63 63 31 63 63 31 63 31 31 63 63 31 63 63 63 63 31 0 31 63 63 63 31 31 31 31 63 31 31 31 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 31 63 31 31 31 31 31 31 63 63 31 31 31 0 31 31 31 31 0 63 0 31 0 63 0 0 +63 31 31 31 31 63 31 31 63 63 0 31 31 31 63 31 31 0 63 63 63 0 63 63 31 63 63 63 31 95 63 31 63 31 63 31 95 63 63 63 63 63 63 63 63 63 63 95 63 95 95 63 95 63 95 95 63 95 63 63 127 95 127 63 95 63 127 127 127 95 95 95 95 127 95 95 127 95 63 95 95 95 95 63 95 127 95 127 63 127 95 95 95 95 63 127 95 95 95 63 63 95 95 95 95 95 63 63 63 95 63 63 63 63 63 63 95 63 63 63 95 95 63 63 63 31 63 63 95 63 95 31 31 31 31 31 63 31 63 63 31 0 31 63 63 31 31 63 31 31 31 31 31 31 31 31 31 63 31 31 31 31 31 31 63 63 31 31 31 63 63 31 63 31 31 63 63 63 31 63 63 31 31 31 63 31 0 31 63 31 31 0 +63 63 31 31 31 31 63 63 31 63 63 63 31 31 31 63 63 63 63 31 31 63 31 63 31 63 63 63 63 31 95 31 63 63 63 63 63 31 31 63 31 63 95 63 63 63 63 63 63 63 95 95 95 95 95 95 63 127 127 95 95 127 95 95 95 127 95 63 95 95 95 127 95 127 95 127 63 127 95 95 95 95 127 127 95 63 63 127 95 63 95 95 127 127 63 95 95 95 95 63 95 63 95 95 31 63 63 63 63 95 63 95 63 63 63 95 95 95 63 95 63 95 95 31 63 31 63 95 31 63 63 63 63 63 31 31 31 31 31 31 63 31 63 31 31 63 31 63 31 31 63 31 31 31 63 63 31 63 31 31 63 31 31 63 63 31 63 31 31 31 31 31 31 31 63 63 0 31 31 0 0 31 0 63 31 31 31 63 0 0 31 63 +63 31 31 31 31 31 31 63 63 31 31 31 63 63 31 63 63 63 63 63 63 63 63 63 63 63 31 63 63 63 63 95 63 63 31 95 31 31 31 63 63 95 63 63 63 127 95 63 95 95 95 95 95 63 95 63 95 63 95 63 127 63 95 95 127 95 95 127 127 95 127 159 95 95 127 95 127 95 127 95 95 95 95 127 95 95 95 127 127 127 95 127 95 95 127 95 95 95 95 95 63 95 31 63 63 95 95 63 63 95 63 63 63 63 63 31 63 31 95 63 63 63 63 95 63 31 95 63 31 63 63 31 31 31 0 31 63 63 31 31 31 31 63 31 31 31 31 31 31 31 31 31 63 31 31 31 31 31 31 31 63 31 63 0 63 31 0 63 0 31 31 31 31 63 31 31 63 31 31 31 63 31 0 31 0 63 31 0 31 0 0 31 +95 31 31 63 63 31 95 63 31 63 31 63 63 31 63 63 31 63 63 63 31 63 63 31 31 63 63 63 63 63 95 95 63 63 63 63 31 63 95 63 95 63 63 63 63 63 127 95 95 95 95 95 95 95 95 63 95 95 95 95 95 63 127 95 95 127 127 95 95 127 127 127 127 159 127 95 127 127 127 159 95 95 95 95 127 127 127 95 95 95 95 95 127 127 63 95 127 63 63 95 95 95 63 63 95 63 63 63 63 95 63 63 63 95 95 95 63 31 63 63 95 95 95 63 63 63 31 63 63 63 63 63 31 63 31 63 31 31 31 31 63 63 63 63 31 31 31 31 31 31 31 31 63 63 63 63 31 31 31 31 31 63 31 31 0 31 31 31 31 31 63 31 31 31 31 63 31 0 0 31 31 31 31 31 31 0 0 63 31 63 0 63 +31 63 31 31 31 63 31 63 63 31 63 31 95 31 31 31 63 31 63 63 31 63 63 63 63 63 63 63 63 63 63 63 31 63 63 95 63 63 31 31 63 95 31 95 63 127 95 63 63 95 95 95 63 95 95 95 95 63 63 95 95 127 127 95 127 95 95 95 127 127 127 159 127 127 127 127 95 127 127 95 127 127 127 95 127 95 127 159 127 127 127 95 127 127 95 127 95 95 63 95 95 95 95 63 127 63 63 63 95 63 63 63 95 63 95 95 95 95 95 95 95 95 31 63 31 63 63 63 63 31 63 0 31 63 63 63 63 63 63 63 63 31 31 63 63 31 31 31 31 63 31 31 63 63 63 63 31 31 31 63 31 63 31 31 31 31 31 63 31 31 0 31 63 63 63 31 0 0 31 31 31 31 0 31 31 31 31 0 31 31 0 31 +31 31 31 63 31 31 31 31 31 31 31 31 63 63 63 63 31 63 63 31 63 63 31 63 63 63 63 63 63 63 63 63 63 31 63 63 95 63 63 31 95 63 95 63 95 63 95 63 95 63 63 95 95 63 95 95 95 95 127 95 127 127 95 127 95 127 95 95 127 127 95 127 95 159 127 95 127 127 159 127 127 127 127 127 127 127 127 127 127 127 95 127 95 63 95 95 127 95 95 95 95 127 95 95 95 95 95 63 95 95 63 95 95 63 63 63 95 63 63 63 63 63 63 63 63 63 63 63 63 31 31 63 31 63 31 31 31 63 63 63 63 63 63 63 63 63 31 31 31 31 63 63 63 63 31 31 31 0 63 0 63 63 0 31 31 31 63 0 31 63 31 31 31 0 0 63 31 31 31 0 31 31 63 0 0 31 0 31 31 0 0 31 +63 31 31 63 31 31 63 63 31 31 63 63 31 31 31 63 63 63 63 31 31 63 63 63 63 63 63 63 63 63 63 63 95 63 63 63 63 63 63 95 95 95 63 95 63 95 63 63 63 127 63 63 95 95 95 95 95 95 95 95 127 95 95 95 159 127 95 127 127 127 127 159 127 159 159 159 159 127 127 159 127 159 127 127 127 127 95 127 127 127 127 95 127 127 95 127 127 95 95 95 95 63 63 63 63 63 63 63 95 95 95 95 95 95 63 63 63 63 95 95 63 63 63 95 63 63 63 63 63 63 63 31 31 63 31 63 63 95 63 95 31 95 63 63 95 31 63 31 31 95 31 31 31 31 63 31 0 63 31 31 31 0 31 31 31 31 31 63 63 31 31 31 31 63 0 31 63 63 31 63 0 31 0 63 31 31 0 31 31 63 63 31 +63 31 31 31 31 31 63 31 63 63 63 31 63 31 63 31 31 31 63 31 31 63 63 63 63 63 63 31 63 63 63 63 63 63 95 95 63 95 95 95 95 95 95 63 95 95 127 63 127 63 95 95 63 95 63 127 95 127 95 127 95 127 95 127 95 95 95 127 127 127 127 127 127 159 127 159 127 127 127 159 127 127 127 127 127 159 127 95 95 95 127 127 127 127 63 95 127 159 95 127 127 95 95 127 95 63 95 95 95 63 95 95 63 95 63 63 63 63 63 63 63 63 31 63 63 63 63 63 63 63 31 31 31 31 31 31 63 31 63 31 63 63 63 63 31 63 31 31 95 31 31 63 63 31 0 31 0 31 31 63 31 63 31 31 31 31 0 31 31 31 31 0 63 31 31 31 31 31 0 31 31 31 31 63 31 31 0 63 63 31 31 63 +63 63 63 31 31 31 63 63 31 63 95 63 63 31 31 31 63 63 95 95 95 95 63 63 63 31 95 31 31 63 63 63 63 63 63 63 63 63 31 95 95 63 63 95 95 95 63 63 95 95 63 95 95 95 127 127 95 95 127 95 95 127 127 127 95 127 95 95 127 127 127 127 159 159 95 127 127 127 127 159 159 95 127 127 127 127 127 159 127 95 127 127 127 127 127 95 95 127 95 95 63 127 95 95 95 63 63 63 95 63 31 63 95 63 63 63 95 63 63 63 63 63 63 63 63 63 63 31 63 31 63 95 63 63 63 31 31 31 63 31 31 63 31 63 95 63 31 31 31 31 63 63 31 63 0 63 31 31 0 0 63 31 31 63 31 31 31 31 31 63 31 63 31 0 63 31 63 63 63 31 0 0 31 31 0 0 31 31 31 0 63 63 +31 31 31 31 63 31 63 31 63 63 63 63 63 31 63 63 31 95 63 31 63 31 63 31 95 63 63 63 63 63 63 63 63 63 63 63 63 63 95 63 95 95 63 95 95 95 95 63 95 127 95 127 127 95 95 95 95 95 95 95 95 127 127 127 127 127 127 127 127 159 127 159 127 127 159 159 159 127 159 159 159 159 159 127 127 127 127 159 127 127 127 127 95 127 127 127 95 127 127 127 95 127 95 95 95 95 63 95 95 95 95 63 63 95 63 63 63 63 63 63 63 63 63 63 63 63 95 31 31 31 63 31 63 63 95 63 95 63 63 63 63 63 63 95 31 31 31 31 63 63 31 0 63 0 31 31 63 63 63 63 63 31 31 31 31 63 31 63 31 31 63 31 31 0 63 63 31 63 63 63 31 0 63 31 0 31 63 31 63 31 63 0 +0 31 63 63 31 31 63 31 31 63 31 63 31 31 31 63 31 63 31 63 63 63 63 31 31 31 63 31 63 63 95 63 31 63 63 63 63 95 63 95 95 63 95 95 63 95 95 95 95 127 95 95 127 127 95 127 95 159 127 127 127 127 127 159 127 127 159 127 127 159 127 127 159 159 159 159 159 159 127 159 159 159 191 127 159 159 95 159 127 127 127 127 127 127 95 127 159 127 95 127 95 127 95 95 95 95 95 95 95 95 63 95 95 63 63 95 63 63 63 63 63 63 63 95 63 63 63 95 63 63 63 95 63 95 63 31 31 63 63 63 63 63 63 31 31 63 63 63 63 63 63 0 0 31 0 63 63 31 31 31 63 31 31 63 63 31 31 31 31 31 31 63 63 31 31 31 0 63 31 63 0 31 0 0 31 63 31 0 63 31 31 0 +31 31 31 31 63 31 31 31 31 63 31 63 63 63 31 63 63 63 31 63 63 63 63 63 31 63 63 63 95 63 63 63 63 63 63 63 95 63 63 95 95 63 63 95 95 95 95 95 95 63 127 95 95 127 127 127 127 95 127 95 127 159 127 127 159 127 127 159 159 127 159 159 159 159 159 159 159 159 159 191 159 159 127 159 191 191 159 159 159 127 127 127 159 127 127 127 95 127 95 127 127 95 95 127 95 95 95 95 95 63 95 95 63 63 95 63 63 95 95 95 95 63 95 63 63 63 63 31 31 63 95 95 63 63 63 63 63 63 31 63 63 63 31 31 63 31 63 31 31 63 31 63 63 0 31 31 31 63 63 31 31 63 63 63 31 63 63 31 31 31 31 63 63 31 63 31 0 0 63 31 31 31 31 31 31 31 63 31 63 63 31 0 +63 31 31 63 31 31 31 63 63 63 63 63 63 63 31 63 31 31 63 31 31 63 95 31 63 31 63 95 63 95 31 95 95 63 95 63 63 63 63 95 127 63 63 95 127 95 95 95 95 95 95 127 127 127 95 63 127 127 127 95 127 127 159 127 159 191 159 159 159 159 191 191 159 191 159 191 159 191 159 191 159 159 127 159 159 159 159 127 191 191 159 127 159 127 127 95 127 127 127 95 127 95 127 127 95 127 95 95 95 95 95 63 63 127 63 95 63 63 95 95 63 95 95 31 95 95 95 63 63 63 63 63 63 31 63 95 63 63 63 63 63 31 63 63 31 31 31 63 31 63 31 63 0 31 31 31 63 63 63 0 31 31 63 31 31 63 31 63 63 0 63 31 31 63 0 63 63 0 31 0 31 31 31 31 31 31 0 31 31 31 31 31 +31 63 31 31 31 31 31 31 31 31 31 63 31 31 31 63 63 63 31 31 63 63 63 31 31 95 63 31 63 95 95 63 95 63 95 63 95 63 95 63 95 95 63 127 95 63 95 63 127 95 127 127 95 127 95 127 127 127 159 127 127 159 159 159 159 159 159 159 159 159 159 159 223 159 159 191 191 191 191 191 191 191 191 191 191 159 191 159 191 159 159 159 127 95 95 127 127 127 127 95 127 95 127 95 95 95 127 127 95 63 63 63 95 63 95 63 95 63 63 63 63 63 31 95 95 31 31 63 63 63 63 31 31 31 63 63 63 63 31 63 63 31 31 63 31 31 63 63 31 31 31 31 31 31 63 63 63 31 63 63 63 0 63 31 31 31 63 31 63 31 63 31 63 31 31 31 31 31 31 0 31 63 31 31 0 31 0 0 31 31 31 31 +63 31 63 63 63 31 63 31 0 63 63 63 63 63 31 63 63 63 63 63 31 95 63 31 31 95 95 63 95 63 63 63 95 63 95 95 95 95 63 63 63 95 95 63 95 95 95 95 127 127 95 159 95 95 127 159 127 127 127 127 159 127 159 159 159 159 159 159 191 191 223 191 223 191 191 223 223 223 191 223 191 223 191 223 191 159 191 191 191 159 159 159 159 127 127 127 127 127 95 159 127 127 95 127 95 127 95 63 63 127 95 127 95 95 63 63 95 63 63 63 95 95 63 95 95 63 31 95 31 95 95 63 63 63 31 31 63 63 31 63 31 63 31 31 63 31 63 63 63 0 0 0 63 31 63 31 63 63 31 31 63 31 63 31 63 31 31 31 31 63 0 63 31 63 31 31 31 63 31 31 31 0 31 0 31 31 31 0 0 31 31 31 +31 63 63 31 63 31 63 31 31 31 31 63 63 0 63 0 31 63 63 95 63 31 63 63 95 31 95 63 31 63 63 95 63 95 95 95 95 95 63 95 63 95 127 127 95 95 95 95 95 95 127 127 95 95 159 95 127 127 127 127 159 127 159 159 159 159 159 191 223 159 223 191 223 255 255 255 255 255 255 255 255 255 223 223 223 191 191 191 159 191 191 159 127 159 159 127 127 127 159 95 127 127 95 95 95 95 127 95 63 63 127 127 95 95 95 95 95 63 95 95 63 95 63 63 31 63 63 95 63 63 63 63 63 31 31 63 31 31 63 63 63 63 63 31 63 63 63 31 31 63 31 63 31 63 31 63 63 31 31 31 31 31 31 31 31 31 31 31 31 31 63 0 31 31 31 63 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 +31 31 31 31 31 0 31 31 31 63 63 31 63 63 0 63 31 63 63 31 63 63 63 63 63 63 31 31 63 95 63 63 95 95 95 63 63 63 95 31 63 95 63 95 95 127 95 127 95 63 127 95 127 95 159 127 95 127 127 127 127 159 159 159 159 191 191 223 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 191 191 191 159 191 159 127 191 191 127 159 95 127 127 127 95 127 127 95 95 95 95 63 95 63 63 63 95 95 95 63 31 63 63 63 63 95 63 63 63 95 63 63 63 31 63 95 63 31 63 63 31 63 63 31 63 63 31 31 63 31 63 31 31 63 63 63 31 31 63 0 31 0 31 0 63 31 31 63 31 63 31 31 31 0 31 31 31 63 31 31 31 31 31 31 31 31 31 31 0 31 31 31 0 31 +31 63 63 31 63 63 63 63 63 63 63 63 63 31 63 63 63 63 63 63 63 63 63 95 63 63 63 31 63 63 63 63 31 95 95 95 95 63 63 63 95 95 95 127 127 95 127 95 63 95 127 127 127 127 127 159 159 159 159 127 127 191 159 191 223 223 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 191 191 223 159 191 127 159 127 159 127 127 127 95 127 95 127 127 127 95 127 127 127 95 95 63 95 63 95 63 95 95 63 63 95 95 63 63 63 63 63 63 31 63 95 63 63 63 63 31 31 63 63 63 63 63 63 0 63 63 63 63 31 31 0 63 31 31 0 63 63 0 31 31 63 0 0 31 31 31 31 31 31 63 31 31 31 31 31 31 31 31 31 31 31 63 31 31 31 31 31 31 31 31 +63 63 63 63 63 31 31 63 0 31 31 63 63 31 63 63 63 63 63 31 63 63 63 63 31 63 63 31 63 63 63 63 95 63 95 63 63 31 95 95 95 63 95 127 95 95 63 127 127 95 127 95 127 127 159 159 159 159 127 159 159 127 191 223 223 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 223 159 191 191 159 159 159 159 95 127 127 127 95 127 95 127 95 95 127 127 95 127 95 95 63 95 63 95 95 63 63 63 63 63 63 63 63 63 31 31 63 63 63 31 63 63 63 63 63 31 63 63 63 31 31 63 63 31 31 31 63 63 63 31 31 0 63 31 31 31 63 31 31 63 31 31 31 31 31 31 63 31 31 31 0 31 0 63 31 31 31 31 31 31 31 31 31 31 0 31 31 31 +31 31 31 31 63 31 63 31 31 63 31 63 63 63 31 0 63 63 63 63 63 63 63 63 63 31 63 63 63 63 63 95 63 63 95 63 63 63 31 95 63 95 95 95 95 95 95 95 127 127 127 127 127 127 127 127 159 159 159 159 191 191 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 159 159 159 159 127 159 159 159 127 127 127 95 127 127 95 127 95 95 95 95 63 95 63 95 95 63 63 63 95 63 63 63 95 63 63 63 63 63 63 63 63 63 63 63 31 63 63 63 31 63 63 63 31 31 63 31 63 31 63 63 63 31 63 31 31 31 31 0 31 31 31 0 63 63 31 31 31 63 31 31 31 31 31 63 0 31 31 31 31 0 31 0 31 31 31 31 31 31 31 +63 63 63 31 31 63 31 63 31 63 31 63 63 31 63 63 63 63 63 63 31 63 63 63 63 63 63 63 63 63 63 63 63 63 95 63 63 63 95 63 95 95 95 95 95 127 127 127 127 127 127 95 127 127 159 127 159 159 159 191 191 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 191 159 159 159 191 127 159 127 159 127 127 95 95 127 127 95 95 95 95 95 63 95 95 95 63 63 95 95 63 63 63 63 63 63 63 63 63 63 63 31 63 63 63 63 63 63 63 63 63 63 63 63 63 31 31 63 63 63 63 31 31 31 31 31 31 31 31 31 31 31 31 0 31 63 31 31 0 63 0 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 +31 31 63 31 63 31 31 63 31 31 31 31 63 31 63 63 63 63 63 31 63 95 63 31 95 63 63 63 63 63 63 63 95 95 63 95 63 95 63 95 95 95 63 95 95 95 95 95 127 95 127 127 127 127 127 191 127 159 191 191 159 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 191 159 191 159 127 127 127 127 127 95 127 95 95 127 95 127 63 95 63 127 95 95 63 95 63 63 95 63 63 63 63 63 63 63 63 63 63 63 63 31 63 63 63 31 63 31 31 63 63 31 31 63 31 31 31 63 31 31 31 31 31 63 31 31 31 31 31 31 31 63 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 31 31 31 31 +63 63 31 95 31 63 31 63 31 63 63 31 31 31 63 31 31 63 31 95 63 63 63 63 31 63 63 63 63 63 63 95 95 95 63 63 63 95 127 95 63 95 95 95 95 95 127 127 95 127 95 95 127 127 127 159 127 127 159 191 223 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 159 159 191 159 159 159 127 159 127 127 159 127 95 95 127 63 95 127 95 63 63 63 63 95 63 127 63 63 63 95 63 95 63 63 63 63 63 63 63 63 63 63 63 63 31 63 63 31 31 63 63 63 31 31 63 63 31 31 31 63 31 31 95 31 31 31 63 63 31 31 63 31 63 31 31 31 31 31 31 31 63 31 31 31 31 31 31 31 31 31 0 31 31 31 31 0 0 +31 31 31 95 63 31 31 63 63 31 63 63 95 63 95 31 63 63 63 63 63 63 63 63 95 63 63 95 95 63 63 63 63 95 63 95 95 127 95 63 95 127 63 95 127 95 95 95 127 127 127 95 127 159 159 127 159 191 191 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 159 159 159 127 127 159 127 127 95 127 95 159 95 63 63 127 95 95 95 95 95 95 127 63 63 95 95 63 31 63 63 95 31 63 31 63 95 63 31 31 31 63 31 95 95 31 31 63 31 31 31 63 31 63 31 31 31 63 31 31 31 63 31 31 31 31 31 63 31 31 31 63 31 31 31 31 31 31 63 63 63 31 31 0 31 0 31 31 0 63 31 31 0 31 31 31 +63 63 63 31 31 63 63 31 31 31 31 63 31 31 31 63 63 63 63 63 31 31 31 95 63 63 63 63 63 63 95 63 95 95 95 63 63 63 63 63 127 63 95 63 95 95 127 95 127 95 127 95 127 159 159 159 159 191 191 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 159 159 127 127 159 127 127 159 127 95 95 63 95 63 95 95 95 95 63 63 95 95 63 95 95 63 63 63 95 63 63 31 63 95 31 95 31 31 31 63 31 63 63 31 63 31 63 31 31 31 95 31 31 31 31 31 31 31 31 31 63 31 31 31 31 31 31 63 63 31 31 31 63 63 31 63 31 31 31 31 31 63 31 31 31 31 31 63 31 31 31 31 31 31 0 +31 63 63 31 95 63 31 31 31 95 31 63 31 31 63 95 63 31 31 63 63 95 95 63 63 63 95 63 63 63 95 63 63 63 63 63 95 127 95 95 95 127 63 95 95 127 95 127 127 127 127 127 127 127 127 159 159 159 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 159 159 159 159 159 159 95 127 127 127 95 127 127 95 95 127 63 95 63 95 95 63 95 63 95 95 95 95 63 63 63 95 63 31 63 63 63 63 31 31 63 63 31 31 31 63 31 31 31 31 31 63 63 31 63 31 31 31 95 63 31 63 31 31 63 31 31 63 63 31 63 31 31 31 31 31 31 31 63 63 0 31 31 31 0 31 31 63 63 31 31 63 31 31 31 31 +31 31 63 63 31 31 31 63 31 31 31 63 31 31 95 63 63 31 31 63 31 63 31 31 63 95 31 63 95 63 95 95 63 63 95 63 95 95 127 63 127 95 127 127 127 95 127 127 127 127 127 127 159 127 159 191 159 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 159 191 159 159 159 159 127 127 127 127 127 127 95 63 95 95 95 63 63 95 63 95 95 95 63 63 63 63 31 63 63 63 63 95 95 31 63 95 31 63 63 63 63 31 63 63 31 31 63 63 31 31 31 31 31 31 63 31 31 31 31 31 31 31 63 31 63 31 63 31 31 31 31 31 31 31 31 63 31 31 63 31 31 31 63 31 0 0 31 63 31 0 31 0 31 31 +31 31 31 63 31 31 31 31 63 31 31 31 31 63 63 31 95 31 63 63 63 31 63 31 63 95 63 31 95 63 63 63 63 95 95 63 63 95 95 95 95 95 95 63 127 127 95 127 127 127 127 127 127 159 159 159 191 159 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 159 127 159 159 127 127 127 127 95 127 127 127 127 127 95 95 95 95 63 95 95 63 95 63 95 63 63 95 95 63 95 63 31 63 63 63 95 31 63 31 63 63 63 63 31 31 31 31 31 31 31 31 31 63 31 63 63 31 31 31 31 31 63 31 31 0 31 31 31 31 31 63 31 31 31 31 63 31 31 31 31 31 31 31 31 31 0 31 31 31 63 0 31 +63 31 31 63 63 31 63 63 31 63 63 63 63 95 31 31 63 63 63 63 31 63 31 95 63 95 63 31 31 63 95 63 63 95 63 95 95 95 95 95 63 63 95 95 127 95 159 127 159 127 127 127 159 159 127 191 191 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 191 191 159 191 127 127 159 159 95 95 95 95 95 127 127 95 95 95 95 63 95 63 63 95 95 95 95 63 63 95 31 31 63 31 63 63 31 63 63 95 63 63 95 31 63 31 63 31 31 63 31 31 31 63 31 31 63 63 31 31 31 31 63 31 63 31 31 31 31 31 63 31 31 0 31 63 63 63 31 0 31 31 31 31 31 31 31 0 31 31 31 31 31 0 31 +63 31 63 63 63 63 63 31 63 63 31 31 31 31 31 63 63 63 63 63 95 63 63 95 31 63 63 63 63 63 95 63 63 95 95 95 63 95 95 95 95 95 95 95 95 127 127 95 127 127 127 127 127 159 159 191 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 191 159 159 159 127 159 159 127 127 127 127 95 127 95 95 63 95 63 95 95 63 63 95 95 31 95 63 95 63 63 63 31 63 63 63 63 63 63 63 63 31 31 31 63 63 31 63 31 31 31 31 31 63 31 31 31 31 0 0 63 0 63 63 0 0 31 31 63 0 31 63 31 63 0 0 0 63 31 31 0 31 31 31 31 0 31 31 31 31 31 0 0 31 +63 63 63 31 31 63 31 63 31 63 63 31 31 31 63 31 63 31 31 31 63 95 95 63 63 63 63 95 63 95 63 63 63 95 95 95 95 95 95 63 95 95 95 95 95 127 95 159 95 127 159 127 159 127 159 191 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 159 191 159 127 127 127 127 95 127 127 159 95 95 127 95 95 95 95 95 95 95 63 63 95 63 95 63 95 95 63 63 63 63 63 63 31 63 31 63 63 63 31 63 31 63 63 31 31 31 0 63 31 0 31 63 63 63 0 63 31 31 31 0 31 31 31 31 31 63 63 31 31 31 31 63 0 63 63 31 31 63 0 31 0 31 31 31 31 31 31 31 63 31 +63 63 63 31 31 63 63 63 31 63 31 63 63 63 31 31 63 63 63 63 63 95 95 95 63 95 63 63 95 63 63 63 63 95 63 63 63 95 95 95 95 95 63 63 95 95 127 127 127 159 159 127 159 159 159 159 191 159 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 191 191 159 127 159 127 127 127 127 127 95 159 127 127 95 63 95 127 95 95 63 95 95 63 63 31 63 63 63 63 63 63 63 63 63 31 31 31 31 31 63 31 63 63 31 31 63 63 63 31 63 31 31 63 63 0 0 31 0 31 31 63 31 31 31 31 31 31 0 31 31 31 31 0 63 31 31 31 31 63 0 31 31 31 31 63 31 31 31 31 63 0 31 31 +63 31 63 63 31 31 0 31 31 63 63 63 63 31 31 31 31 63 63 63 63 31 95 63 63 95 63 63 63 63 63 63 95 63 63 127 95 63 95 63 95 63 95 127 127 95 127 159 95 127 159 159 159 159 191 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 159 191 191 159 159 127 127 127 127 127 127 63 63 95 127 127 95 95 95 95 95 95 95 95 63 63 63 63 95 63 63 63 95 63 63 31 31 63 63 63 63 63 31 63 63 63 31 31 63 31 31 63 63 63 31 63 0 63 31 31 0 0 63 31 31 63 31 31 31 31 31 63 31 63 31 0 63 31 63 63 63 0 0 0 31 63 31 0 31 31 31 0 31 31 +63 63 31 31 31 63 31 63 63 63 31 63 63 31 63 31 63 63 63 63 63 63 63 63 63 95 63 95 95 63 63 63 63 63 95 95 95 127 63 95 95 63 95 95 127 127 95 127 127 127 127 127 159 159 127 159 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 191 159 191 159 191 127 127 159 127 127 95 127 63 63 95 95 95 63 95 95 95 63 127 63 63 63 95 63 95 63 63 63 63 63 63 63 63 63 63 63 31 63 63 63 63 63 31 63 0 31 63 63 31 0 31 0 31 63 63 63 63 63 63 31 31 31 31 63 31 63 31 31 31 31 31 0 63 63 31 31 63 63 31 0 63 31 0 31 63 31 31 0 63 0 +0 31 63 63 31 0 63 31 63 63 31 0 31 31 63 63 63 63 63 63 63 63 63 63 63 95 63 95 63 63 63 63 63 63 63 95 127 63 127 95 95 127 127 127 95 63 95 127 127 127 159 159 191 159 159 191 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 191 191 159 159 127 127 127 127 127 95 95 127 127 95 127 95 95 63 63 63 95 63 63 95 63 95 63 95 95 63 63 63 63 63 63 63 63 63 63 31 63 63 63 63 63 63 31 63 31 63 63 63 31 0 63 31 63 31 31 31 31 63 31 31 63 63 31 31 31 31 0 31 63 63 31 31 31 0 63 31 63 31 31 31 0 31 63 0 31 31 63 31 0 +31 31 63 63 31 63 63 63 63 63 31 63 31 63 31 63 31 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 95 95 95 63 95 63 127 95 95 95 127 127 95 95 127 127 95 127 159 127 159 159 191 223 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 223 159 159 159 127 127 159 127 127 95 127 95 95 127 95 127 95 95 95 95 95 63 63 63 63 63 63 63 63 63 63 63 63 63 31 63 63 63 63 63 63 63 63 63 31 31 63 31 63 0 31 63 31 63 63 31 31 31 0 63 63 31 0 63 63 63 31 63 63 31 31 31 31 31 63 31 63 31 0 31 63 63 31 63 31 31 0 31 31 31 63 31 0 31 +31 31 31 63 63 63 31 31 31 31 63 63 63 31 31 63 63 31 63 31 63 31 63 31 63 31 63 63 31 63 95 63 95 63 95 95 63 63 63 95 95 95 95 95 95 127 127 127 127 127 127 159 159 127 159 191 159 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 159 159 159 191 127 159 95 159 127 127 95 95 127 95 95 127 63 95 63 127 63 95 63 63 63 63 63 63 63 63 95 63 63 31 63 63 63 31 63 63 63 63 31 63 63 31 0 31 0 63 63 63 63 63 0 31 31 31 31 31 63 0 31 31 63 31 31 63 31 63 63 0 63 31 31 63 0 63 63 0 31 0 0 31 31 63 31 63 0 31 63 31 31 31 +31 63 63 63 31 63 31 31 31 31 31 63 31 63 31 63 63 63 63 63 63 31 31 63 63 31 31 63 63 95 95 95 63 63 95 95 63 63 63 127 95 95 127 95 127 127 127 95 95 127 127 159 159 159 223 191 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 159 159 159 159 159 127 127 127 95 95 95 95 127 127 95 95 95 95 95 63 95 95 95 63 95 31 63 95 63 63 95 63 31 31 31 63 63 63 63 31 63 63 63 31 31 63 31 31 63 63 63 31 63 0 63 31 63 63 63 31 31 63 63 0 31 31 31 31 63 31 63 31 63 31 63 0 31 31 31 31 31 0 31 63 63 31 0 0 0 0 63 31 0 31 +31 31 31 63 63 31 63 63 63 31 31 31 63 63 63 63 63 31 31 63 31 63 63 63 31 63 31 31 63 95 95 95 95 95 95 63 63 63 95 95 95 95 159 95 127 95 127 95 127 127 159 127 159 159 191 191 223 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 159 159 159 127 127 127 127 127 127 127 95 95 95 95 95 95 63 95 95 95 63 63 63 95 63 63 31 31 63 63 63 63 31 63 31 31 31 31 63 63 31 31 31 63 63 31 63 63 31 31 0 31 0 31 31 63 63 63 63 63 31 63 31 63 31 63 31 31 31 31 63 0 63 31 63 31 31 31 63 0 0 0 0 31 0 0 31 31 0 0 31 31 31 +31 31 31 31 63 63 63 31 31 63 63 31 63 95 63 63 95 63 95 95 63 63 63 63 63 95 31 63 63 95 31 63 95 95 63 95 95 63 95 63 95 95 95 127 127 127 127 95 95 127 127 127 159 159 127 191 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 159 159 159 127 127 95 159 127 127 95 95 95 95 95 95 95 95 63 95 95 31 31 63 31 63 63 31 63 63 63 95 31 31 63 63 63 63 63 63 63 31 31 63 31 31 63 63 63 31 63 63 63 63 63 63 31 63 63 63 31 31 31 31 31 31 31 31 31 31 31 31 63 0 31 31 31 63 31 31 31 31 31 31 63 31 31 0 0 31 31 31 31 31 +63 31 63 63 63 31 63 31 63 63 31 63 31 31 95 95 63 63 63 31 31 31 31 95 63 31 63 63 63 95 63 95 31 63 63 95 63 95 95 63 63 95 95 95 127 95 95 127 95 127 127 159 159 159 127 159 191 223 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 191 191 159 159 159 127 127 127 159 95 95 95 95 127 95 127 95 95 95 63 95 63 95 63 95 95 63 95 63 95 95 95 31 63 63 31 63 31 63 31 31 31 63 63 31 63 31 31 63 63 31 31 31 31 63 31 63 31 0 31 0 31 0 31 0 63 31 31 63 31 63 31 31 31 0 31 31 31 63 31 31 31 0 31 31 31 0 31 0 0 0 0 31 31 31 +63 31 63 31 95 31 31 63 63 63 31 63 31 63 31 63 63 31 63 31 95 31 95 95 63 95 63 63 95 63 63 95 63 95 63 63 95 63 127 95 127 95 127 127 95 95 127 127 127 127 127 159 127 159 159 159 159 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 159 191 191 127 159 159 127 127 127 95 127 127 95 63 63 95 127 95 95 95 63 95 95 95 63 63 63 63 63 31 63 63 95 63 63 95 31 31 95 63 63 31 63 63 95 31 63 63 31 63 31 31 63 31 31 31 63 31 31 31 63 63 31 31 31 31 0 0 31 31 31 31 31 31 63 31 31 31 31 31 31 63 31 0 31 31 63 0 31 0 0 31 31 0 31 +31 63 31 31 31 31 31 95 63 31 95 31 31 63 95 95 31 31 63 31 63 63 95 63 95 63 31 95 63 95 63 95 95 63 95 95 95 63 95 95 95 63 95 95 95 95 127 127 127 127 127 159 159 159 159 159 159 159 223 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 159 159 159 191 159 159 159 127 127 127 95 127 63 95 95 127 95 95 63 95 63 95 63 95 63 63 63 95 95 63 95 63 63 31 31 63 63 63 31 63 31 63 31 31 31 31 63 31 31 63 31 31 31 63 63 31 31 31 31 31 31 31 31 63 31 31 31 31 31 31 31 31 31 63 31 31 31 0 0 0 31 0 31 31 63 31 31 31 31 31 0 0 0 0 31 +31 31 31 95 31 31 31 95 31 31 63 31 63 31 63 63 31 31 31 63 95 95 63 63 95 31 63 63 95 63 63 63 95 63 63 63 63 95 127 63 95 127 95 95 95 127 127 63 127 127 127 127 127 159 159 159 159 159 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 223 159 159 159 159 95 127 127 127 127 127 95 95 95 127 127 95 127 63 95 63 63 95 95 95 95 63 63 63 63 63 63 63 63 95 63 63 95 63 63 31 31 63 31 63 31 63 63 31 63 95 31 31 63 31 31 31 63 63 31 31 31 31 31 31 31 31 31 31 63 63 31 31 31 63 31 31 31 31 31 63 0 31 0 31 31 0 31 0 31 0 0 63 31 31 31 +31 31 31 31 31 63 63 31 31 31 31 31 31 31 63 63 63 31 31 31 63 63 63 63 31 95 63 63 63 31 63 63 63 63 95 63 63 63 95 63 95 63 95 127 95 127 95 95 127 127 95 127 127 159 127 159 159 159 191 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 159 159 159 159 127 159 159 127 159 127 127 127 95 95 95 95 127 95 127 127 95 95 63 95 95 63 63 63 31 31 63 95 63 31 63 63 63 63 63 31 63 63 63 31 63 63 31 63 31 31 31 31 31 95 31 31 63 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 0 31 0 31 31 31 31 31 31 0 0 31 31 63 31 31 31 31 31 31 31 31 31 31 +63 31 63 63 31 63 63 63 95 31 31 31 31 95 63 95 63 63 31 63 31 31 63 63 63 63 63 63 31 63 63 63 63 63 63 95 63 95 127 95 63 95 127 95 127 95 127 95 127 95 159 159 95 127 127 159 159 159 191 191 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 127 159 159 127 127 127 127 127 127 127 95 95 127 95 127 127 95 95 95 63 63 63 63 127 63 63 63 63 63 63 95 31 95 63 31 63 63 31 31 95 63 63 63 31 63 31 63 63 31 63 31 63 63 31 31 31 31 31 63 31 31 31 31 31 31 31 63 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 31 31 31 31 31 31 0 0 31 63 +95 31 63 31 31 95 63 31 63 95 63 31 63 63 63 31 63 95 63 63 63 31 63 31 31 95 63 63 95 95 95 63 63 63 63 63 63 95 63 63 63 63 95 95 127 127 95 95 95 127 95 127 159 127 127 159 159 191 191 223 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 191 191 159 127 127 159 127 159 127 159 127 127 95 95 95 95 95 95 127 95 95 95 63 95 63 63 63 63 63 63 95 63 63 63 63 63 63 95 63 63 63 31 63 31 95 31 95 63 31 63 63 31 63 31 31 31 31 63 31 31 31 31 31 63 31 31 31 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 +31 31 31 31 31 63 31 63 31 31 31 63 63 63 31 63 31 31 63 63 63 31 63 63 63 63 63 63 63 63 63 63 63 63 63 95 127 95 95 95 95 95 95 95 95 95 95 95 95 127 127 127 127 159 127 127 159 191 191 159 191 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 159 191 159 159 159 159 159 159 127 159 127 95 127 95 95 95 127 95 95 95 63 95 95 63 63 95 95 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 31 31 31 63 63 63 63 63 63 63 31 63 63 31 31 31 31 63 31 31 63 63 63 31 31 31 31 63 31 31 31 63 31 31 31 31 31 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 +31 31 31 31 31 63 31 31 63 63 31 31 63 0 63 63 63 31 63 63 31 63 63 63 63 63 63 63 63 95 63 63 63 63 63 63 63 63 63 63 95 95 95 95 95 127 127 127 95 127 127 95 127 127 159 127 159 159 159 159 159 191 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 159 159 159 127 127 159 127 127 127 127 127 127 127 127 95 95 95 95 95 95 63 63 63 95 95 63 95 63 63 31 63 63 63 63 63 31 63 63 63 31 31 63 63 63 63 63 63 63 63 31 31 63 63 63 63 31 31 31 31 0 31 63 31 63 31 0 31 31 31 0 63 63 31 31 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 0 +31 31 31 31 63 63 63 63 63 63 31 0 31 0 31 31 31 31 63 63 31 31 63 63 95 63 63 63 63 95 63 63 63 63 63 95 63 95 95 95 95 95 95 95 95 95 95 95 127 95 95 127 95 127 127 159 127 159 159 159 127 159 191 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 191 191 191 191 191 159 159 159 159 159 127 95 127 127 127 127 127 127 95 95 95 63 95 95 63 63 63 31 95 95 63 63 63 63 63 63 63 31 63 63 63 63 31 31 63 31 31 63 0 31 63 63 31 63 63 0 31 63 63 31 63 31 31 0 63 31 31 63 31 31 63 31 31 63 63 31 63 31 31 31 31 31 31 31 31 63 0 31 31 31 0 31 31 31 31 31 31 31 31 31 31 31 +31 31 31 31 31 31 31 63 31 31 0 63 31 63 63 31 63 0 63 63 63 63 63 63 63 31 63 31 63 63 95 95 63 63 63 31 63 63 63 63 95 95 95 95 63 63 95 127 127 95 127 127 95 127 159 127 159 127 127 159 159 159 191 191 159 159 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 191 191 191 191 191 191 159 127 159 159 127 159 127 127 127 95 127 127 95 95 63 95 95 95 95 95 63 63 63 31 95 63 63 63 63 63 31 63 63 31 31 63 63 63 31 63 63 31 31 31 63 63 63 0 63 63 31 31 0 31 0 63 63 31 31 0 31 31 31 0 63 0 31 0 63 31 0 31 0 31 31 31 31 63 31 31 63 31 31 31 31 31 31 0 31 31 31 0 31 0 31 31 +63 63 63 0 0 63 31 63 63 31 31 63 31 63 31 63 63 63 63 63 63 63 63 63 63 63 63 63 95 63 95 63 95 95 95 63 63 95 95 95 95 63 63 95 95 95 127 95 127 95 95 127 127 127 95 127 95 159 127 127 127 159 191 191 159 191 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 191 191 223 191 191 191 159 159 127 127 159 127 159 95 159 95 95 127 127 127 127 95 95 63 95 127 95 63 95 95 95 63 95 63 95 63 63 63 63 95 63 95 31 63 63 31 63 31 63 63 63 63 31 31 63 31 63 31 31 0 63 31 31 31 63 63 63 31 31 31 31 31 31 31 31 63 31 31 0 0 31 31 31 31 63 31 31 31 0 63 31 31 31 31 31 31 31 31 31 0 31 31 31 31 0 31 +31 31 63 31 31 31 31 31 63 0 63 0 31 31 63 63 63 63 63 63 31 31 95 63 63 63 95 31 63 63 63 63 63 31 95 63 95 95 95 95 95 95 95 127 95 127 95 95 63 95 127 127 95 95 159 127 159 127 127 127 127 159 191 159 159 191 191 223 191 223 255 255 255 255 255 255 255 255 255 255 255 255 255 255 223 223 223 223 191 159 159 159 159 159 159 127 159 159 127 95 127 127 95 127 95 127 95 63 95 95 95 127 63 127 63 63 95 31 63 31 63 31 63 95 95 63 31 31 63 63 31 63 31 63 31 31 31 63 31 63 31 31 63 0 31 31 31 31 31 31 31 31 0 63 63 31 31 0 31 63 31 63 31 31 0 31 31 63 31 31 0 31 63 31 63 0 0 31 31 31 31 0 31 31 0 31 31 31 0 31 0 31 +31 0 63 31 31 63 63 31 31 63 0 63 31 63 63 63 31 95 63 63 63 63 63 63 95 63 95 31 95 95 63 63 95 95 63 95 63 63 63 127 95 95 95 95 127 63 63 127 95 95 127 95 127 95 127 127 127 127 127 127 159 159 159 159 159 191 159 191 159 191 223 255 223 223 223 255 255 255 255 255 255 223 223 191 191 223 191 159 159 159 159 127 159 159 127 127 127 159 127 127 127 95 95 95 95 95 63 63 63 95 63 63 95 95 95 63 63 63 63 63 63 63 95 63 63 31 31 31 31 95 63 63 63 31 63 63 31 31 31 63 63 63 31 63 31 63 31 63 63 31 31 63 31 31 31 31 31 0 63 0 63 63 0 0 31 31 63 0 31 63 31 31 0 0 0 63 31 31 31 31 31 31 31 0 31 63 31 31 31 31 0 31 +63 63 31 63 31 63 63 63 63 31 63 63 63 63 31 63 63 63 63 63 63 31 63 63 63 95 63 31 31 63 31 63 95 95 95 95 95 95 95 95 63 63 95 95 95 63 95 95 95 95 127 127 95 127 127 127 127 127 127 127 159 159 159 127 159 159 159 159 159 191 159 223 191 223 223 223 191 191 191 191 191 191 191 191 191 159 191 159 159 127 159 127 159 159 127 95 127 127 127 127 127 127 127 95 95 95 95 95 95 95 95 63 95 63 63 63 95 63 63 63 31 95 63 95 31 63 95 63 63 31 31 63 31 95 63 31 31 63 63 31 31 31 63 31 31 0 31 0 31 63 0 0 0 63 63 63 0 31 31 31 31 0 31 31 31 0 0 63 63 31 31 31 31 63 0 63 63 31 0 31 31 31 31 31 31 31 31 31 31 31 31 31 +63 31 0 63 0 31 31 63 63 63 63 63 63 63 31 63 31 63 31 63 63 95 63 63 95 31 95 63 95 63 95 63 63 63 95 63 63 95 63 95 63 95 63 63 127 95 63 95 95 95 95 95 95 127 127 127 127 127 127 127 95 127 159 159 127 191 159 159 159 159 191 159 191 223 159 191 191 191 191 159 223 191 191 191 159 191 191 159 159 127 127 127 127 127 127 127 127 127 127 127 127 127 95 95 95 95 95 95 95 63 63 63 63 95 95 63 63 63 63 63 63 63 63 95 95 63 63 31 63 31 63 31 31 31 31 31 31 63 31 31 31 31 31 31 63 31 31 31 31 63 31 63 63 0 31 31 0 31 31 63 31 31 0 31 31 31 0 31 31 31 31 0 63 31 31 0 31 63 0 31 31 31 0 63 31 31 31 31 63 0 63 31 +63 0 63 31 31 31 31 63 63 63 31 31 63 31 63 31 63 31 63 31 31 31 31 63 31 95 95 31 31 63 63 63 95 63 63 63 63 63 95 63 63 63 127 95 95 127 63 95 95 95 95 127 95 127 95 95 95 95 95 127 127 127 127 159 159 159 159 127 159 159 159 159 191 159 223 223 191 191 191 191 159 191 191 159 159 159 159 159 159 127 159 127 127 127 159 127 95 95 95 127 127 95 95 95 95 95 95 95 95 63 95 127 63 63 63 63 63 63 31 95 95 63 63 31 63 63 31 63 63 95 63 63 31 63 63 63 31 31 31 63 31 31 63 63 31 63 63 31 31 63 31 63 63 31 31 31 0 31 0 31 31 31 31 63 31 31 31 31 31 31 0 63 31 0 63 31 63 63 31 0 0 0 31 31 31 0 31 31 31 31 31 31 +31 63 31 63 31 31 31 63 63 31 63 63 31 63 63 63 31 31 63 31 63 63 63 95 31 95 95 63 63 63 63 95 63 95 95 63 63 95 95 95 63 95 63 95 95 95 95 95 95 95 95 95 95 95 127 127 95 95 95 95 127 127 127 127 127 159 127 127 127 127 191 127 127 191 159 159 127 191 159 159 159 159 191 159 127 159 159 159 127 159 159 159 159 159 95 127 127 127 95 127 127 95 127 127 95 95 63 95 95 95 63 63 95 63 95 63 63 63 63 63 63 31 63 63 31 63 63 63 63 95 31 31 63 31 31 31 31 31 63 63 31 63 31 63 31 63 0 31 63 31 31 31 31 0 31 63 63 63 63 63 63 31 31 31 31 63 31 63 31 31 31 31 31 0 63 63 31 31 31 63 0 0 31 31 0 63 31 0 31 31 31 0 +63 31 31 63 31 31 31 31 63 31 31 31 63 63 63 31 63 63 63 31 95 63 63 95 63 31 31 63 63 95 63 63 95 63 63 63 95 63 63 63 63 63 95 31 63 95 63 95 95 95 95 63 63 95 63 95 95 95 95 95 127 95 95 127 127 159 159 159 127 159 159 127 127 159 159 159 127 191 159 127 159 159 191 159 127 127 159 159 127 127 127 127 159 95 159 159 95 127 127 127 95 127 95 127 127 63 95 95 95 63 63 95 31 95 63 63 63 63 63 31 63 63 63 31 31 31 63 63 31 31 31 63 63 31 31 31 31 31 31 31 31 31 31 31 63 31 31 31 31 63 31 31 0 31 31 31 31 31 31 31 31 31 31 63 63 31 31 31 31 0 31 63 63 0 31 31 0 63 31 63 31 31 31 0 31 63 0 31 31 63 63 0 +63 63 31 63 31 63 31 31 31 31 63 31 31 31 31 31 95 31 31 31 31 63 63 31 31 63 63 63 63 63 63 63 63 63 63 63 63 63 63 95 63 95 95 95 95 95 95 63 95 95 127 95 127 63 63 95 95 95 95 127 159 159 95 127 159 159 95 159 127 127 127 127 127 159 159 127 159 127 159 159 159 159 127 127 127 159 159 127 95 127 95 127 127 127 127 95 95 127 95 95 63 95 95 63 95 63 63 95 95 63 95 63 63 63 95 63 63 63 31 63 31 63 31 31 31 31 31 63 63 31 31 31 31 31 31 95 31 63 31 63 31 63 31 31 63 31 63 31 0 63 31 31 31 31 31 31 0 63 31 0 0 63 31 63 31 63 63 31 31 31 31 31 63 31 63 31 0 31 63 63 31 31 31 31 0 31 31 0 31 31 0 31 +63 63 31 31 63 31 63 63 31 63 63 63 63 63 63 31 63 31 63 31 63 95 31 31 63 63 95 63 63 63 63 63 63 63 63 63 63 63 63 95 63 63 95 63 95 95 63 95 63 95 127 63 63 127 127 95 95 95 95 127 127 95 127 127 127 127 127 127 127 159 127 127 127 159 159 127 127 127 159 127 127 127 159 159 159 127 127 127 127 127 127 95 127 127 95 127 127 127 95 127 127 95 127 95 127 63 63 31 63 31 63 95 63 31 63 31 63 95 31 31 63 31 31 31 0 0 31 31 63 63 31 31 31 31 31 31 31 31 31 31 31 63 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 0 31 31 63 31 31 63 31 63 63 0 63 0 0 31 0 63 63 0 31 0 0 31 31 63 31 31 0 31 63 31 31 31 +31 63 63 31 31 31 31 63 31 31 31 31 63 31 31 31 31 63 31 95 95 31 31 95 63 63 63 63 63 63 63 63 63 63 63 63 63 63 95 95 95 95 63 95 63 63 95 63 63 95 95 95 63 95 95 95 95 95 95 127 95 127 127 127 95 127 159 95 159 127 127 127 127 127 159 127 127 127 127 127 127 95 159 127 127 127 95 127 95 159 95 127 127 95 95 95 127 95 95 95 95 95 95 63 95 63 63 63 95 63 63 31 63 31 63 63 31 31 31 31 63 31 63 0 0 63 31 31 63 31 31 63 31 63 31 31 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 63 63 63 0 31 31 31 0 31 31 0 31 63 31 31 31 31 31 31 0 31 31 31 31 31 0 31 63 63 31 0 31 0 0 63 31 31 0 +63 63 31 31 31 63 31 63 31 31 31 31 95 31 31 31 63 31 63 63 31 31 63 63 63 31 31 63 63 63 63 63 63 63 63 95 63 63 63 95 63 95 63 63 63 63 95 63 63 63 63 63 95 95 95 95 95 95 127 95 95 127 127 95 159 95 127 127 127 95 127 127 127 95 159 159 127 127 95 159 159 159 127 95 127 127 159 95 127 95 95 95 127 127 127 95 127 95 95 95 95 63 95 63 95 63 63 95 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 0 31 0 63 0 31 0 31 31 63 31 31 31 63 31 31 31 63 31 0 31 31 31 31 31 31 31 31 31 31 63 31 63 31 31 63 31 63 0 63 31 0 0 31 63 0 63 31 63 31 31 31 31 0 0 0 31 31 0 0 31 31 0 31 0 31 31 +63 31 31 31 31 31 31 31 31 31 31 63 63 63 31 31 63 63 31 31 63 63 63 63 63 63 63 63 63 63 63 63 95 95 95 95 95 63 63 63 31 95 63 63 63 63 95 63 95 95 95 95 63 63 95 95 95 95 95 95 95 127 127 95 95 127 159 95 127 127 95 159 127 159 127 127 127 127 127 95 127 159 95 95 127 127 127 95 95 95 127 95 95 95 95 95 95 95 95 63 95 95 95 95 95 63 63 95 31 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 31 31 31 31 31 63 0 63 31 31 63 31 31 31 31 31 31 31 31 31 31 63 31 31 31 31 31 31 31 31 0 63 63 31 31 31 31 31 31 31 31 31 0 31 31 31 63 0 31 31 31 63 31 31 31 31 31 31 63 0 0 0 0 31 31 31 31 63 +63 31 31 31 31 63 31 31 31 31 63 31 63 63 31 63 63 63 31 31 63 63 31 63 31 63 63 63 63 31 63 31 95 95 63 63 63 95 63 95 63 95 95 95 63 63 95 63 127 95 95 95 95 63 95 95 95 95 127 127 95 95 127 127 95 95 95 127 127 127 127 95 127 159 127 127 127 127 127 127 127 127 95 127 95 127 95 95 127 95 95 95 127 95 127 95 95 95 63 63 63 95 95 95 95 63 63 63 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 31 31 31 0 31 63 31 63 0 63 31 31 31 63 31 31 63 0 63 31 31 31 31 31 31 31 31 31 31 31 31 0 31 0 31 0 31 0 31 31 31 63 0 31 31 0 31 31 31 63 31 0 31 0 0 0 31 0 31 0 31 0 0 31 31 31 +63 63 63 31 31 31 31 63 31 95 63 31 31 31 31 63 31 31 63 31 63 63 63 63 63 31 31 63 63 63 63 31 95 31 63 63 63 95 63 63 31 95 63 95 127 95 63 95 63 63 63 31 63 63 95 95 63 95 127 95 127 95 127 95 95 95 127 127 127 127 95 127 95 159 127 127 95 95 95 127 127 95 127 127 95 127 127 127 127 95 95 95 127 95 127 95 127 95 95 95 63 95 95 95 63 63 63 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 63 31 63 31 31 31 0 31 0 31 31 31 31 63 31 31 63 31 31 31 63 31 31 31 31 0 31 31 0 31 31 31 31 31 31 0 0 31 31 31 31 31 31 31 0 0 31 31 31 31 63 31 0 31 31 63 0 31 0 0 31 31 31 63 +31 63 95 63 31 31 63 31 31 31 31 31 31 63 63 63 63 63 63 31 63 63 63 63 31 63 63 63 63 63 63 63 63 63 95 63 63 63 63 31 31 63 63 95 63 63 63 63 95 63 63 63 95 63 95 95 95 95 95 127 63 95 95 95 95 127 95 95 127 95 127 127 95 95 159 95 95 95 95 95 127 95 95 95 127 63 127 95 63 127 95 95 95 95 127 95 63 63 95 95 95 95 63 95 31 95 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 31 31 31 0 31 31 31 31 31 0 0 31 0 0 63 31 31 31 31 31 0 0 0 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 0 0 0 31 0 31 31 31 0 31 0 31 0 0 0 31 0 63 +31 63 31 31 31 31 31 63 31 31 0 31 31 31 31 31 31 31 63 63 31 63 63 31 31 63 63 63 31 63 63 63 31 63 31 63 63 95 63 63 31 63 95 95 63 95 63 95 95 95 95 95 95 95 95 63 95 63 95 95 127 63 95 95 95 127 127 63 127 95 95 63 127 95 95 127 127 63 95 95 95 95 95 95 63 63 95 127 95 95 63 95 95 95 95 95 63 63 63 63 95 63 95 31 95 95 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 31 31 31 0 0 63 31 31 63 0 31 31 63 63 0 0 31 0 31 31 63 63 31 0 31 31 31 31 31 31 31 0 31 63 31 0 31 31 31 31 31 31 31 31 0 0 0 31 31 0 31 0 0 0 31 31 0 31 0 +31 31 63 31 63 31 31 63 63 31 63 31 31 31 31 63 63 31 31 63 63 63 31 63 63 63 31 63 63 31 95 63 95 31 31 63 63 95 31 63 95 95 63 63 63 63 63 95 63 95 95 63 95 95 63 95 63 95 95 127 95 95 95 63 95 95 127 127 95 127 63 63 95 95 63 95 95 95 127 95 95 95 95 95 95 63 127 127 95 95 95 95 63 63 63 63 63 63 63 95 63 95 95 63 95 95 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 31 0 31 31 0 31 63 0 0 31 0 31 31 0 31 31 31 31 31 0 31 31 31 31 31 31 31 0 31 0 31 31 0 31 0 31 0 0 0 31 0 31 31 0 0 31 31 63 31 31 31 0 31 31 31 31 31 31 +63 31 0 31 31 31 63 31 63 63 31 31 31 31 63 63 63 31 31 63 63 63 31 63 63 95 63 31 63 31 63 63 63 63 63 31 95 63 63 63 95 63 63 63 63 63 95 95 63 95 95 95 95 95 95 63 95 63 95 63 95 63 95 95 95 95 63 95 95 95 95 95 95 95 95 95 95 95 127 63 95 95 95 95 95 63 127 63 95 95 95 95 95 95 63 63 63 95 63 95 95 95 95 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 63 0 31 31 0 63 0 31 63 0 63 0 31 31 31 0 31 0 0 31 31 31 0 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 0 31 31 31 31 31 31 31 31 0 0 31 0 0 0 31 63 +31 63 31 31 31 63 63 31 63 0 63 31 63 63 63 31 63 63 63 31 63 63 31 31 63 31 31 95 31 31 31 31 63 63 95 63 31 63 95 95 63 95 63 63 63 95 63 95 63 63 63 95 63 63 63 95 63 127 95 95 95 63 63 95 63 63 63 95 95 95 63 63 95 95 95 95 63 95 95 95 95 95 95 95 95 95 127 95 63 63 95 95 95 95 63 63 63 63 63 63 63 95 63 63 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 0 31 63 0 31 31 0 63 31 0 31 31 63 0 0 31 31 31 63 31 0 31 31 31 31 31 31 31 0 31 31 31 0 31 31 31 0 31 31 31 0 0 31 31 31 0 31 31 31 31 0 31 63 +63 31 31 31 63 31 63 0 31 0 63 31 63 31 63 63 31 63 63 31 63 31 31 63 63 31 63 31 31 31 63 95 95 95 63 63 63 63 63 63 95 63 63 95 63 95 63 95 95 63 63 95 95 63 95 63 63 63 95 63 95 95 95 95 95 63 127 63 127 63 95 95 95 127 63 95 127 127 63 95 95 95 95 95 63 95 63 63 95 63 95 63 63 63 95 63 63 95 95 127 95 63 63 95 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 63 0 63 31 31 0 31 63 63 31 0 0 0 31 31 31 63 63 0 0 31 0 31 31 31 31 31 31 31 31 31 31 0 0 31 31 31 31 31 31 31 31 0 31 31 0 31 0 31 0 31 31 +31 31 63 31 63 31 63 63 31 63 31 63 31 63 63 31 63 31 63 31 31 31 63 63 31 63 31 63 31 63 63 63 95 31 95 63 63 63 63 63 63 63 63 63 95 63 31 63 63 31 63 95 95 95 95 95 63 127 63 63 63 95 63 95 127 63 95 63 95 95 63 63 95 95 63 127 95 95 63 95 127 63 95 95 95 95 63 63 95 95 63 63 95 63 95 95 95 63 63 63 63 63 63 63 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 0 31 0 31 31 0 0 31 31 0 31 31 31 63 31 0 31 31 31 0 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 0 0 31 63 31 +63 63 0 31 31 0 63 31 31 31 31 31 63 31 63 31 0 0 31 31 31 31 63 63 31 31 63 95 31 63 31 63 63 63 31 63 63 63 63 63 95 63 63 95 63 95 63 95 63 95 63 95 63 95 95 95 127 63 63 95 95 63 63 63 95 127 127 95 63 63 63 95 95 95 95 63 95 63 63 63 63 95 95 63 95 95 95 63 63 95 63 95 95 95 95 95 63 95 63 95 63 63 95 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 31 0 31 31 31 31 63 31 0 0 31 0 0 31 31 0 63 31 31 63 63 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 31 31 31 31 0 31 31 31 0 +31 31 63 0 31 0 31 63 31 31 0 63 63 63 31 63 31 31 31 31 63 31 31 63 63 63 63 63 63 31 31 63 95 31 31 31 63 63 63 63 63 31 95 63 95 95 63 31 63 63 63 95 63 63 63 63 63 95 95 63 63 63 95 63 63 95 95 63 63 95 95 63 95 95 95 95 63 63 127 63 95 95 95 95 95 63 63 127 95 95 63 63 63 95 63 63 95 31 63 63 63 31 63 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 31 0 31 0 31 31 0 31 0 31 0 31 0 31 0 31 0 31 31 0 31 0 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 31 0 0 31 0 31 31 31 +31 31 31 63 63 0 0 31 63 63 63 63 31 31 31 31 31 63 31 31 31 63 31 31 31 63 31 63 63 95 63 63 31 63 31 31 63 63 63 63 63 95 63 31 95 95 95 63 63 63 95 63 95 95 95 63 95 95 95 63 95 95 95 63 63 95 63 95 95 63 95 63 95 95 95 95 95 95 63 95 95 95 95 95 95 63 95 127 63 63 95 95 95 95 95 95 63 63 63 63 63 63 31 63 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 63 31 31 31 31 0 0 31 31 31 31 31 31 0 0 31 31 31 31 0 31 31 31 0 31 0 31 31 0 31 31 31 0 31 31 31 0 31 0 31 31 +63 63 63 31 31 63 63 31 63 63 63 63 63 63 63 63 63 31 31 95 63 31 63 31 31 31 63 31 31 63 63 31 63 63 0 63 63 63 31 63 95 31 63 31 63 31 63 63 95 63 63 95 95 63 95 95 63 95 31 63 95 95 63 95 95 63 63 95 63 95 63 63 95 63 63 63 127 63 63 95 63 63 95 95 63 95 63 63 63 63 63 95 63 95 95 63 63 63 31 63 31 63 31 63 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 31 0 0 31 31 0 0 0 0 63 0 31 31 31 0 0 31 31 0 31 0 31 31 31 31 0 0 31 31 31 31 0 31 31 0 0 31 31 31 0 31 31 +63 63 63 31 31 63 63 63 63 31 63 63 0 31 63 31 31 31 31 63 63 31 31 63 31 63 63 63 31 31 63 63 63 63 63 63 63 63 63 31 63 63 63 63 63 63 95 95 63 63 63 63 63 63 63 63 63 63 95 63 95 63 95 63 95 63 63 63 95 95 63 95 95 95 95 63 63 63 95 63 95 63 63 63 63 95 63 63 95 63 95 63 95 63 31 63 95 31 63 63 31 63 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 31 0 0 0 63 0 63 63 0 0 0 31 31 0 0 31 31 0 0 0 0 31 31 31 31 31 31 0 31 0 31 31 31 31 31 31 31 31 +63 31 0 63 0 63 31 63 31 63 31 63 63 31 63 31 63 31 31 31 63 63 63 31 63 63 31 31 31 31 63 31 31 63 31 63 31 95 31 95 95 31 63 95 63 95 63 63 63 63 95 63 63 63 63 63 63 63 95 63 63 95 63 63 63 63 95 63 63 95 63 95 95 95 95 95 63 63 95 63 31 95 63 63 95 95 63 63 63 95 63 63 63 63 95 63 31 31 63 95 63 31 63 31 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 0 31 31 0 31 0 0 31 0 0 0 63 63 31 31 0 31 63 0 63 31 31 0 31 31 31 31 0 31 0 31 31 31 0 0 31 +31 31 31 63 31 31 63 31 31 31 31 63 31 31 31 31 31 95 31 31 63 63 31 31 63 63 63 31 63 63 31 31 63 63 63 31 31 31 63 95 63 63 63 95 63 31 95 63 63 63 63 63 63 63 63 63 63 95 95 63 95 63 63 63 63 63 95 63 63 63 95 63 95 63 63 63 63 63 63 63 63 63 31 63 95 63 95 95 63 63 63 63 95 95 31 31 95 63 31 63 31 63 63 63 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 0 0 0 31 0 31 31 31 0 0 31 31 0 31 31 31 0 0 31 31 0 0 31 31 0 31 31 0 0 31 0 0 31 0 31 31 31 0 +0 63 31 63 31 31 0 31 63 63 63 63 31 31 31 31 31 63 63 63 31 63 31 31 63 63 63 63 31 63 31 63 31 31 63 63 63 63 63 63 63 31 63 63 31 31 95 63 63 63 63 63 63 63 63 63 63 63 95 63 63 63 63 63 63 63 63 63 63 31 63 95 63 63 63 63 63 95 63 63 63 63 63 95 63 95 95 63 63 63 63 63 63 63 31 31 95 31 31 31 63 31 31 63 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 0 31 0 31 0 0 31 31 31 31 31 31 0 31 31 0 0 31 31 0 31 31 31 31 31 0 0 0 31 31 31 0 0 0 31 31 31 0 +31 31 63 0 31 63 31 63 31 31 31 63 31 31 31 31 31 63 31 31 31 31 63 63 63 63 31 63 31 63 63 63 31 63 31 31 63 31 31 31 63 31 31 31 63 63 63 63 63 63 63 63 63 95 95 95 63 63 63 31 63 63 63 63 63 95 63 63 63 95 95 31 63 95 63 63 63 63 63 95 63 95 31 63 63 63 95 95 63 63 95 63 63 63 63 63 95 31 63 63 95 63 63 31 31 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 0 31 31 31 31 63 0 0 31 0 31 31 0 31 0 0 31 31 0 31 31 31 31 31 31 0 0 31 31 0 31 0 0 31 31 31 0 +31 31 31 63 63 31 31 31 31 63 31 63 95 63 31 31 63 31 31 63 63 31 31 31 63 31 63 63 31 63 63 63 63 31 31 31 63 63 31 63 63 63 31 63 95 31 63 63 63 63 63 95 95 63 63 63 95 63 95 63 95 63 95 63 63 63 63 95 31 95 63 63 63 95 63 63 63 63 63 63 63 63 31 31 95 63 63 63 63 63 63 63 63 31 31 63 31 63 95 31 63 63 63 31 63 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 31 31 31 0 0 0 31 0 31 0 0 0 0 31 63 0 31 31 0 31 0 63 31 0 31 0 0 31 0 31 31 31 31 31 +31 63 0 31 63 63 63 31 63 31 95 63 31 63 31 31 31 63 31 31 31 31 63 0 63 63 63 0 63 31 0 63 63 63 63 63 63 31 63 63 95 63 63 31 31 63 63 63 63 63 31 63 31 63 63 63 95 31 63 31 63 63 63 63 63 63 95 31 31 63 31 63 63 63 63 63 95 63 95 31 63 63 63 63 63 95 63 63 63 63 63 95 31 31 95 31 31 31 95 63 63 31 63 63 31 63 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 0 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 0 31 63 31 31 31 0 31 31 31 31 0 31 31 0 31 +31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 63 63 63 63 31 31 63 31 63 63 31 31 31 63 63 63 95 63 63 31 63 63 63 31 63 63 63 63 63 63 63 63 95 63 63 63 31 31 63 63 63 63 63 63 63 63 63 63 31 63 31 63 63 63 63 95 63 63 31 63 63 63 63 63 63 63 63 31 63 63 63 63 95 63 95 63 63 95 63 31 31 63 31 63 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 31 31 31 0 0 31 0 63 31 0 31 0 0 31 0 63 63 0 31 0 0 31 0 31 0 31 0 0 31 31 31 31 +31 63 31 31 31 31 31 31 63 31 31 31 31 63 31 31 31 31 31 31 63 63 0 63 63 31 31 31 63 31 31 63 63 63 63 63 63 63 31 63 63 63 95 63 63 31 63 63 63 63 63 63 63 31 63 63 95 63 63 31 63 95 63 63 63 63 63 95 95 63 95 63 31 95 63 63 63 63 31 63 63 63 63 63 63 63 63 31 63 63 63 63 63 95 63 63 63 63 31 31 63 63 31 0 0 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 0 0 0 63 31 0 0 31 0 31 0 31 0 31 0 0 0 31 63 31 0 0 31 0 0 31 0 31 31 +63 31 31 31 31 31 31 63 63 31 31 63 31 31 31 63 31 31 31 63 63 63 63 31 31 31 31 63 63 63 63 63 63 31 31 31 63 63 95 31 63 63 63 63 63 63 31 63 63 63 63 63 31 31 63 63 63 31 63 95 63 63 63 63 63 31 31 63 63 95 63 63 63 31 63 63 63 63 63 95 63 63 31 63 31 95 95 63 63 31 63 63 63 31 31 95 63 63 63 63 31 63 63 31 31 63 63 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 31 0 0 31 31 63 31 31 31 31 0 0 0 31 31 0 0 0 0 0 31 0 0 31 +31 31 31 63 31 31 63 31 31 31 31 31 31 63 31 31 31 31 63 31 63 63 31 63 31 31 63 31 31 63 63 63 31 31 31 63 31 63 31 63 63 63 63 31 63 63 63 63 63 63 63 63 63 63 31 63 63 31 31 95 63 31 63 63 63 63 95 63 95 63 63 95 63 63 63 63 63 63 63 63 63 63 31 31 63 63 63 63 31 63 31 31 31 63 63 31 63 95 31 31 31 63 63 31 31 63 31 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 31 0 31 0 0 0 31 31 31 31 0 0 0 31 31 31 0 0 0 0 31 31 31 0 31 +31 63 31 63 63 31 31 31 63 63 63 0 31 31 31 63 31 31 63 63 31 63 63 31 31 31 63 63 31 31 63 31 31 63 63 31 31 63 31 63 63 63 63 63 63 63 63 63 31 63 31 63 95 95 63 63 63 63 95 63 63 63 31 63 63 63 63 63 63 63 63 31 63 63 95 63 63 63 63 31 63 31 63 63 63 63 63 63 63 31 63 31 63 63 63 31 95 63 31 31 63 31 31 63 31 63 0 31 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 63 31 0 0 0 0 0 0 0 0 0 31 0 0 0 31 0 +31 31 63 31 31 31 31 31 31 31 63 63 63 31 31 63 31 31 31 63 63 31 63 63 31 63 31 63 63 63 31 31 63 63 63 95 63 63 63 63 95 63 63 31 31 31 63 31 63 63 63 95 63 63 63 63 31 63 63 63 31 31 63 63 95 63 95 95 63 63 95 95 63 63 63 63 63 63 63 63 31 63 63 63 31 63 63 63 63 63 63 63 63 31 63 63 63 31 63 63 31 63 31 0 31 31 0 31 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 31 0 0 0 0 0 31 31 31 31 31 0 0 0 31 31 0 0 0 0 0 31 31 31 +31 31 31 31 63 31 31 31 31 0 63 63 31 31 63 31 63 31 31 31 31 31 63 63 31 63 63 31 31 63 63 31 95 63 31 31 31 31 31 31 63 31 63 31 63 63 63 63 31 63 63 63 31 95 31 31 63 95 63 63 63 31 63 63 31 31 63 63 31 63 95 95 63 95 63 63 31 0 63 31 31 31 63 63 31 31 63 95 31 63 63 63 63 31 63 31 63 31 63 63 95 31 31 63 0 63 0 0 63 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 0 0 31 0 31 0 0 0 31 0 0 0 31 0 0 0 0 0 0 0 31 0 31 +31 31 31 31 31 31 31 31 63 31 31 31 63 31 31 63 63 31 0 31 31 63 63 31 31 31 31 31 31 63 95 63 63 31 63 63 63 31 31 63 63 31 63 31 63 31 63 63 31 31 63 31 63 63 31 31 63 31 31 63 63 31 63 63 63 63 63 63 63 63 63 63 95 31 31 63 63 31 63 63 63 31 31 63 63 63 63 63 63 63 31 63 63 63 63 63 31 63 31 31 31 31 63 31 31 63 0 0 31 31 31 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 31 31 0 31 31 0 0 0 31 0 0 31 0 31 0 31 31 31 0 31 +31 31 31 31 31 63 31 63 31 31 63 0 31 31 31 63 31 31 63 63 31 63 31 63 63 63 31 63 63 63 63 63 31 31 95 63 63 63 31 63 31 31 63 63 63 63 63 31 63 31 31 95 63 63 63 63 31 63 63 31 0 63 63 63 63 63 31 31 63 63 95 31 31 63 63 31 63 31 63 31 31 63 31 31 63 63 63 63 63 63 63 63 63 63 31 31 31 63 31 63 31 63 31 31 0 31 31 31 31 31 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 63 0 0 0 0 0 0 31 0 0 0 +31 31 31 31 31 63 63 31 31 63 63 31 31 31 31 31 63 63 31 0 31 31 31 63 31 31 31 63 31 63 31 31 31 31 31 31 31 63 63 31 63 31 31 31 63 63 31 31 63 31 63 31 31 31 31 31 63 63 63 63 31 31 63 63 63 63 31 95 31 95 63 95 95 63 31 63 63 63 31 63 63 63 31 31 63 31 63 31 31 63 63 31 63 63 0 63 63 31 31 63 63 31 63 31 0 31 63 63 63 31 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 31 0 0 0 31 0 0 0 31 31 31 0 0 0 0 0 0 0 0 31 +31 31 31 31 31 31 31 31 31 31 31 63 31 0 63 63 63 31 63 31 31 31 63 63 0 31 31 31 63 31 63 63 63 31 31 31 31 63 31 63 63 31 63 63 63 31 63 63 63 63 63 31 63 31 31 63 31 63 63 31 31 63 31 63 31 31 31 95 63 31 63 31 31 63 63 31 31 31 63 63 63 31 63 63 31 31 63 31 31 31 63 63 63 31 63 63 63 63 63 31 63 31 31 31 31 31 31 0 63 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 0 31 31 0 0 31 0 31 0 31 0 0 0 0 63 63 +31 31 0 31 63 31 0 63 31 31 63 31 0 63 63 31 31 63 31 0 63 0 63 31 31 31 63 31 31 63 31 31 31 31 31 31 63 31 63 31 31 63 63 31 63 31 63 31 31 31 31 31 31 63 63 63 31 31 31 63 31 63 63 63 63 63 63 63 31 31 31 31 31 63 63 63 63 63 63 63 31 63 31 31 31 63 31 31 31 31 63 31 31 63 31 63 31 63 31 63 63 31 31 63 63 0 31 31 63 63 0 31 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 0 31 31 31 0 0 31 0 31 0 31 0 31 0 +31 31 31 31 31 0 31 31 31 31 63 31 63 63 63 31 63 0 63 0 63 63 31 63 31 63 31 31 31 31 31 31 63 31 31 63 63 31 31 31 63 63 31 63 0 31 63 31 63 63 31 31 63 63 63 63 63 31 63 63 63 63 63 63 63 31 63 31 63 63 31 63 63 31 63 63 63 31 63 31 63 31 63 63 63 95 31 31 63 63 31 31 63 63 63 31 0 31 63 63 31 31 63 31 31 31 0 0 31 63 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 31 0 0 0 0 0 0 31 31 +0 31 0 63 31 31 31 31 63 31 31 63 31 63 31 63 0 63 63 31 63 63 31 63 31 31 31 63 63 31 31 63 31 31 63 63 31 31 31 31 0 63 63 31 63 31 63 31 63 31 63 63 63 63 63 31 63 31 63 31 63 63 63 63 63 63 63 63 31 31 31 63 31 31 63 63 63 31 63 63 63 63 63 31 63 31 31 31 31 63 31 63 31 31 63 63 63 63 31 31 63 31 63 31 31 31 63 31 31 31 0 0 63 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 31 0 0 31 0 31 0 0 0 0 0 0 0 +31 0 63 31 31 31 31 63 31 31 63 63 63 31 0 31 31 63 0 63 63 31 31 31 63 63 31 31 31 31 63 31 31 31 63 31 31 31 31 31 63 63 31 31 31 31 63 63 31 31 31 63 31 63 31 63 31 31 63 63 63 63 63 63 63 95 63 31 31 31 31 63 63 63 31 63 63 31 63 63 31 63 31 31 63 31 31 63 63 63 31 31 31 63 31 31 63 0 31 31 31 31 31 31 31 31 31 31 0 31 31 0 31 63 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 31 31 0 0 0 31 0 63 0 0 +31 31 31 0 31 31 0 63 31 63 31 0 63 31 63 31 0 31 63 31 31 31 31 31 63 31 31 31 31 31 31 63 63 31 31 63 31 63 31 31 63 31 31 63 31 31 63 31 31 63 31 31 31 31 63 63 31 63 63 63 31 63 63 31 63 63 63 31 95 63 31 31 63 63 31 63 63 63 31 63 31 31 31 31 63 31 31 63 31 31 63 63 63 31 31 31 31 31 0 63 63 31 31 31 31 31 31 31 0 63 0 31 31 31 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 31 31 0 0 0 0 31 0 +63 63 63 31 31 63 31 63 31 0 0 63 0 31 63 0 31 31 31 31 31 31 31 31 31 31 31 63 31 31 31 63 63 31 63 31 31 0 63 31 31 31 31 63 63 63 63 31 31 63 31 63 63 95 63 31 31 31 63 63 63 0 63 63 63 63 31 31 63 31 63 31 63 63 31 63 31 31 31 63 63 63 31 63 63 63 63 31 31 63 31 63 31 63 63 63 63 63 63 31 63 31 31 31 31 31 31 31 31 63 0 63 31 63 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 31 0 0 0 0 31 0 31 0 +31 31 63 0 0 31 31 31 31 63 63 31 31 31 31 31 0 63 63 31 0 63 63 31 31 31 31 31 31 31 31 63 31 31 63 31 31 31 63 31 31 31 63 63 31 63 31 31 31 31 31 31 63 63 63 63 31 31 63 31 63 31 63 31 63 31 31 31 63 31 95 63 95 63 63 31 0 31 31 63 31 31 63 95 31 31 31 63 63 31 63 31 63 31 0 63 63 0 63 31 31 31 31 31 31 31 31 31 63 31 31 63 63 0 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 31 0 0 0 0 31 31 +63 0 31 63 31 0 31 31 0 63 31 63 63 31 63 31 31 31 31 31 31 31 31 31 31 31 31 63 31 63 31 63 63 63 31 0 31 31 63 31 0 31 63 31 31 31 31 31 31 63 31 63 31 31 31 63 31 63 31 31 63 31 31 63 63 31 31 63 31 31 63 63 63 63 63 63 31 31 63 63 0 63 63 63 31 31 31 31 31 63 63 63 31 63 63 31 63 31 31 31 31 0 63 31 63 31 31 31 31 63 31 31 31 0 31 31 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 +31 63 31 31 0 31 63 0 63 31 31 0 0 63 31 0 63 31 31 31 31 31 31 31 31 31 63 31 31 63 63 31 63 63 63 31 0 63 63 0 63 63 63 31 31 31 31 63 63 31 31 31 31 63 31 31 31 63 63 31 31 63 31 63 31 31 31 31 63 63 63 31 31 63 63 63 63 31 31 31 63 63 31 31 31 95 63 63 31 31 63 31 63 63 63 0 63 63 31 31 63 31 31 63 31 31 31 31 63 31 31 63 31 0 0 63 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 0 0 +0 31 0 31 0 31 63 31 31 31 31 31 63 31 63 63 31 31 31 0 63 31 63 31 31 31 31 63 31 63 31 0 63 31 63 31 31 31 0 63 63 0 31 31 63 63 31 31 31 31 31 63 63 31 31 63 63 31 31 31 63 63 63 31 31 31 31 95 63 31 63 63 31 63 63 63 31 63 63 63 31 31 31 63 31 31 31 63 31 63 31 63 31 0 0 0 31 31 0 63 63 31 31 31 31 31 31 63 31 31 63 0 63 63 0 31 0 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +63 0 31 31 31 63 31 31 63 31 63 31 31 0 63 63 31 31 63 31 31 63 31 31 31 31 63 63 31 63 63 0 63 63 63 31 63 31 63 31 31 31 63 63 31 31 31 31 63 31 31 31 31 31 0 63 31 0 31 63 31 31 63 31 63 31 95 31 31 63 31 63 63 63 31 0 63 31 63 63 63 63 31 63 63 31 63 63 63 63 63 31 0 31 63 31 63 31 31 31 63 31 63 63 31 31 31 63 0 63 31 31 31 31 31 0 0 31 63 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 +31 63 0 31 63 31 31 31 63 63 0 31 31 0 31 31 31 31 63 31 31 31 31 31 31 63 31 31 63 31 63 63 0 31 0 63 31 63 63 63 63 31 63 63 31 63 31 63 31 63 31 31 0 63 31 63 31 63 0 63 63 63 63 31 31 31 63 31 95 31 63 31 63 63 31 0 63 63 63 31 31 31 31 31 63 63 63 63 63 31 31 31 31 31 63 63 63 31 63 0 63 31 31 31 31 31 31 31 63 31 63 31 31 31 31 0 0 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 +63 31 0 31 31 63 31 31 63 0 0 31 63 0 31 31 31 31 63 31 31 63 63 31 31 63 31 63 31 63 31 63 63 31 0 63 63 63 31 31 31 31 31 63 63 63 31 63 31 31 31 63 31 63 63 63 31 63 31 63 63 63 31 31 31 31 31 63 31 63 31 31 31 63 63 31 31 31 31 31 31 63 31 31 31 31 63 63 31 63 31 63 31 31 63 0 63 31 63 63 63 63 31 31 63 31 31 31 31 31 31 31 63 31 31 31 31 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +63 31 0 31 31 63 63 63 31 0 31 31 31 63 63 0 31 31 63 31 31 31 31 31 31 31 63 31 63 31 31 31 63 31 0 31 31 31 31 31 63 31 31 31 31 63 63 31 63 31 63 31 31 63 31 63 31 63 63 63 63 31 31 63 31 31 63 31 63 31 31 63 31 31 31 63 31 31 63 0 31 31 31 31 31 31 63 31 31 63 63 31 63 31 63 63 63 31 63 63 63 0 0 31 31 31 31 31 0 31 31 31 63 31 0 31 31 0 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 63 63 31 0 31 31 31 31 0 31 31 31 0 31 31 31 31 31 31 31 31 31 63 0 31 31 31 63 31 31 63 63 31 31 63 0 31 31 31 31 31 31 31 31 31 31 31 31 63 31 63 63 63 31 63 63 63 0 0 31 31 63 31 31 63 31 31 31 63 31 63 31 63 63 31 31 31 63 31 31 31 31 31 31 95 31 63 31 31 31 63 31 31 63 63 63 0 31 63 0 31 31 31 31 31 31 31 31 31 31 31 31 63 0 0 31 31 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 +63 31 31 0 0 31 31 63 63 31 63 31 63 63 63 31 31 63 63 31 31 31 63 31 31 31 0 31 31 31 63 31 31 31 31 31 0 31 31 31 31 31 31 31 31 31 95 31 63 31 31 31 63 31 31 63 63 63 31 31 63 31 31 31 31 31 31 31 31 63 31 31 63 31 63 31 31 63 63 63 31 63 31 31 63 31 63 31 31 31 31 31 31 63 63 63 31 31 63 63 0 31 63 31 31 31 31 31 31 31 31 0 0 0 31 0 0 0 31 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 63 63 63 31 63 31 63 0 63 31 31 63 31 63 31 63 31 31 31 31 31 31 31 31 31 63 63 31 63 31 63 31 63 31 31 63 63 63 31 31 31 31 63 31 63 31 31 31 31 31 31 63 63 63 31 31 63 63 0 31 63 31 31 63 31 63 31 31 31 31 31 0 63 31 31 63 63 31 63 31 63 31 31 31 31 63 31 31 31 31 31 0 0 0 31 31 31 31 0 63 31 31 63 31 31 31 31 31 31 31 31 31 31 0 0 0 31 0 0 31 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 31 31 0 31 0 0 31 31 31 63 31 31 31 31 31 31 31 31 31 31 31 63 31 31 63 0 0 0 31 31 0 31 31 31 63 31 31 31 63 31 31 63 31 31 31 31 31 0 0 0 31 63 31 31 0 63 31 31 63 31 31 31 63 31 31 31 31 31 63 0 31 31 31 31 31 31 0 31 31 31 31 31 63 31 31 31 31 31 31 31 63 63 31 63 0 31 31 31 31 63 31 31 31 31 31 31 31 31 31 31 0 0 0 0 63 0 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +63 63 0 0 31 0 63 31 31 31 31 0 31 31 63 31 31 31 31 0 63 63 31 0 31 63 31 31 31 31 31 31 0 0 31 31 0 31 31 0 31 31 31 31 31 31 31 63 31 31 63 31 31 63 63 31 63 0 31 31 63 31 63 31 31 31 31 31 63 31 31 63 63 0 31 31 31 63 31 63 63 31 63 63 63 31 31 31 31 31 31 31 63 31 31 31 31 31 0 63 31 63 63 31 31 31 31 31 31 31 31 31 0 31 31 31 31 63 31 31 0 0 0 31 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +63 0 0 31 31 31 31 31 0 31 31 31 31 31 31 31 31 31 0 31 63 0 31 0 63 31 0 31 31 31 31 31 0 31 31 31 63 0 31 31 31 31 31 63 31 31 63 31 31 31 31 63 31 31 31 63 31 31 63 31 63 63 31 31 31 31 31 31 31 31 31 0 63 31 63 31 63 31 31 63 31 31 63 0 31 31 31 31 63 63 31 63 31 31 63 63 31 0 63 31 31 31 31 31 0 31 31 31 31 31 31 31 0 31 63 31 31 0 31 0 31 0 31 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 63 0 63 31 31 0 31 31 0 31 31 31 31 31 31 31 31 63 63 31 63 0 31 31 31 31 63 0 31 0 63 31 31 31 63 63 31 31 31 31 31 31 31 31 31 31 63 0 31 63 31 63 63 63 31 0 63 63 31 31 63 63 31 31 31 31 31 31 31 31 0 31 63 63 31 0 31 63 63 0 63 31 31 31 31 63 63 31 31 31 31 31 31 31 31 31 63 0 0 63 63 31 31 63 31 31 31 31 0 31 31 31 31 31 0 31 31 31 0 0 63 0 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 63 31 0 31 31 63 0 0 31 31 31 31 31 31 31 31 31 31 31 63 31 63 0 31 31 31 31 31 31 31 31 63 63 31 0 31 31 63 31 63 31 31 63 31 31 31 0 31 31 63 31 31 63 31 31 63 0 31 63 63 31 63 63 31 31 31 31 31 31 63 63 31 31 31 31 63 63 0 31 63 31 63 31 31 31 31 31 31 63 31 31 63 31 31 63 31 0 31 31 0 63 63 31 31 31 63 31 31 31 31 31 31 31 0 31 31 63 31 0 63 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 31 63 63 31 0 31 0 63 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 63 0 0 0 31 63 63 31 31 63 63 63 0 31 63 31 31 31 31 31 31 31 63 63 31 63 63 31 63 63 31 31 31 31 0 63 63 31 31 31 63 63 31 31 31 63 31 63 31 31 63 63 63 63 63 31 31 63 31 31 31 31 63 31 31 31 31 31 31 31 63 31 63 0 31 63 63 31 63 31 31 31 31 31 31 31 31 31 31 31 63 31 31 0 31 0 63 0 0 0 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 0 31 31 31 31 31 31 0 31 31 31 31 31 31 31 31 0 31 0 31 31 31 0 31 63 0 63 31 31 31 31 31 31 31 31 31 31 63 31 31 31 31 31 31 63 31 31 31 31 31 31 31 31 63 0 63 31 31 63 63 31 63 31 31 31 31 31 31 31 31 63 63 63 63 31 63 0 31 63 63 0 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 0 63 31 0 63 0 31 31 31 31 31 31 31 31 0 31 31 0 0 31 31 31 0 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 31 31 31 63 0 31 0 31 31 31 31 31 31 0 63 31 31 31 31 31 63 63 63 0 0 31 0 31 63 63 31 31 63 63 31 0 31 31 31 31 31 31 31 63 31 63 31 31 63 31 63 63 31 0 63 31 31 0 63 31 31 31 31 63 31 31 63 31 31 31 31 0 31 63 0 31 31 63 63 31 31 63 31 63 31 31 63 31 63 31 31 0 31 63 31 31 31 31 31 0 0 31 31 31 31 31 31 31 31 31 31 0 31 31 0 0 63 31 0 63 63 0 0 31 31 63 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +63 0 0 0 31 31 31 63 31 31 31 31 31 31 31 31 31 31 31 0 63 63 31 31 63 31 31 63 31 31 63 0 31 31 31 31 31 0 63 31 31 31 63 31 0 31 31 63 31 63 31 31 0 31 31 63 31 63 31 31 0 31 31 31 31 31 31 63 0 31 63 63 31 31 63 31 0 63 31 31 63 63 31 31 31 31 63 31 31 31 31 31 31 31 0 0 63 31 63 31 31 0 0 31 63 31 31 0 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 0 0 31 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 0 0 31 31 31 0 63 63 31 31 0 31 63 31 31 31 31 31 31 63 31 31 31 31 31 31 31 31 31 31 31 0 31 31 63 0 0 0 63 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 63 63 63 63 31 31 0 31 63 31 31 31 31 31 31 63 0 31 31 63 0 63 63 0 0 31 31 63 0 0 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 31 31 0 0 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 0 31 31 31 0 31 31 31 31 31 31 31 31 31 63 31 0 31 63 31 63 31 63 0 31 31 31 31 31 63 63 0 0 0 31 63 31 31 63 31 31 31 31 31 31 31 31 31 31 31 0 31 31 63 0 63 63 0 0 31 31 31 0 31 31 31 31 31 31 31 63 0 63 31 31 0 63 0 63 63 31 31 31 31 31 0 31 31 31 31 63 31 31 31 31 0 31 31 63 31 31 0 0 63 63 31 31 31 31 31 31 31 0 0 31 0 31 31 31 31 0 0 0 0 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +63 31 31 31 0 0 63 31 0 31 31 31 31 31 31 31 0 31 63 31 31 63 63 31 0 31 63 31 63 31 31 31 31 31 0 0 63 31 31 31 31 31 31 31 31 31 0 31 31 63 63 63 31 31 31 31 31 0 31 31 31 31 31 63 31 31 31 31 31 31 63 63 31 31 63 0 63 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 0 0 31 0 63 31 31 0 0 31 31 0 31 31 31 0 31 31 31 0 0 31 31 31 31 0 31 31 0 31 31 0 0 31 31 0 0 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 31 31 0 63 31 0 31 31 31 31 31 31 0 31 31 31 31 31 63 31 63 31 0 31 0 63 0 0 63 31 31 31 31 0 31 31 31 31 31 31 31 31 63 31 31 0 31 63 0 31 31 0 31 31 63 31 31 31 31 31 63 31 31 63 63 31 31 31 31 63 63 31 31 31 63 31 63 31 31 31 31 31 31 31 31 31 0 63 31 31 31 31 0 63 0 31 31 31 31 63 31 31 31 31 31 31 0 31 31 0 31 31 0 31 31 31 31 31 0 31 0 63 31 63 0 0 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 31 63 31 31 31 31 31 31 31 31 0 31 0 31 31 31 63 0 31 63 31 31 31 63 63 0 31 63 63 31 31 31 31 31 63 31 31 63 31 31 31 31 31 63 31 31 63 31 31 31 0 31 0 0 63 31 31 63 31 31 31 0 31 31 31 31 31 31 63 0 0 0 0 63 31 63 0 31 0 63 63 63 31 31 31 31 31 31 0 31 31 31 31 63 63 63 31 31 31 31 63 31 63 31 31 31 31 31 31 31 31 31 0 0 0 31 31 0 31 31 0 0 31 0 0 0 0 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 31 31 31 31 31 31 31 31 0 31 63 31 31 0 31 0 0 63 31 31 31 31 0 31 63 31 0 31 0 0 63 63 31 0 31 31 63 63 0 31 63 31 31 0 31 0 31 31 63 63 63 31 63 31 31 63 31 31 31 31 63 31 31 31 31 31 0 0 31 31 0 0 31 31 0 0 63 31 0 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 63 63 31 31 31 0 0 31 63 63 31 31 31 31 31 31 31 31 31 31 31 31 0 63 0 31 31 0 31 0 0 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 0 31 31 31 31 0 31 31 31 31 31 31 31 0 31 0 0 31 31 0 31 0 31 31 31 0 31 31 0 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 0 31 31 31 31 0 31 31 63 31 31 31 63 31 31 31 31 31 31 31 0 31 0 31 31 0 31 31 31 31 0 63 63 31 63 31 31 31 31 31 31 31 31 31 0 31 31 31 0 0 63 31 63 31 63 31 31 31 0 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 31 0 63 0 0 31 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 31 31 0 0 31 31 31 31 63 31 0 0 0 0 0 31 0 0 31 31 31 31 31 31 63 31 31 0 0 63 0 31 31 0 31 31 0 63 63 31 31 63 63 63 31 31 31 31 31 31 31 0 31 31 31 31 31 63 0 31 0 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 63 0 31 31 63 0 31 63 0 63 63 0 31 31 0 31 0 0 31 31 31 31 31 0 31 31 31 0 31 31 0 0 0 31 31 0 63 0 0 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 0 31 31 31 31 31 31 31 0 31 31 31 0 31 0 31 0 0 31 31 31 31 0 31 0 31 31 0 31 0 31 31 31 31 31 31 0 31 0 31 31 31 31 63 0 31 31 31 63 63 63 0 31 31 63 31 31 31 31 31 31 31 31 31 63 31 63 0 0 31 31 63 31 0 63 31 0 31 63 0 31 31 31 31 31 31 31 31 31 63 0 31 31 31 0 31 31 31 31 63 31 31 0 31 31 31 0 31 31 31 31 31 31 31 0 0 31 31 0 63 31 0 31 31 31 31 0 0 0 31 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 63 0 63 0 0 31 31 31 63 31 31 63 31 63 31 31 0 31 31 31 31 31 0 31 31 31 31 31 63 31 31 0 31 31 63 63 31 31 63 31 63 31 63 31 31 31 31 31 31 31 31 31 0 31 31 63 63 31 31 63 31 31 0 63 31 0 63 31 31 63 31 31 31 31 31 31 63 31 63 63 31 63 31 63 31 31 31 31 31 31 31 0 31 31 63 31 0 31 31 31 31 31 31 0 31 31 31 31 31 0 0 31 31 0 31 31 31 0 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 31 31 31 0 0 0 31 0 31 31 63 0 31 31 63 0 0 0 31 0 63 0 31 0 31 31 31 31 31 0 31 31 31 31 63 31 31 0 63 31 31 0 0 0 0 31 63 31 63 31 31 31 63 31 63 31 31 31 31 31 63 31 31 0 31 0 63 63 31 31 63 31 63 0 31 0 31 31 63 31 31 31 31 31 31 31 31 0 63 63 0 31 31 31 31 0 31 31 31 0 63 0 31 31 31 0 63 31 31 31 31 31 31 31 31 0 31 31 31 63 0 31 0 0 0 31 63 31 0 31 0 31 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 31 31 31 31 31 31 0 0 0 31 31 0 31 0 31 0 31 31 31 31 31 63 0 31 31 31 63 31 31 31 31 31 31 63 31 31 63 31 63 31 31 63 31 63 31 63 31 63 63 31 63 0 63 31 31 31 31 31 31 31 31 31 31 31 63 31 31 0 63 31 31 63 63 31 0 31 31 63 31 31 31 31 31 31 31 31 31 31 0 31 0 0 0 0 0 31 31 31 63 31 31 31 31 0 0 0 0 31 31 0 31 0 31 31 31 31 31 31 31 0 31 31 31 0 63 31 63 0 0 0 31 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 0 31 0 31 0 31 0 31 31 0 0 31 31 63 31 63 31 0 63 31 31 0 63 63 31 31 63 31 31 31 31 31 31 31 31 31 31 31 31 0 0 31 0 31 31 31 31 0 31 31 31 31 31 0 0 0 31 31 31 63 63 31 31 31 63 31 63 31 31 31 0 31 0 31 31 0 31 63 63 31 31 31 63 63 63 31 31 31 31 31 31 31 0 63 63 0 0 31 63 0 0 31 31 63 31 0 0 31 31 31 63 0 31 0 31 31 31 31 31 0 31 0 31 31 31 31 31 0 0 31 0 0 31 31 0 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 31 31 0 31 0 63 31 63 31 63 31 31 31 0 0 63 0 31 0 31 31 31 63 63 63 31 31 0 31 31 31 31 31 31 31 31 31 0 31 0 0 63 0 31 0 63 63 0 0 63 31 0 31 0 63 0 31 31 31 31 31 31 63 31 31 31 63 31 31 31 0 31 31 31 0 0 31 0 0 63 31 31 31 31 31 0 31 31 0 31 31 0 31 63 0 0 63 0 31 31 63 0 0 31 31 0 31 0 0 31 0 31 0 31 0 31 31 31 0 63 63 31 0 31 0 31 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 31 31 31 0 31 31 31 0 31 63 31 31 0 31 0 31 0 31 0 31 0 0 63 63 63 31 0 31 31 31 0 31 31 31 31 31 31 31 0 31 31 31 31 0 0 63 63 63 31 31 31 31 0 0 31 31 31 0 63 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 63 31 31 63 31 31 31 63 63 0 0 31 31 31 31 31 31 31 31 31 31 31 0 31 63 31 0 31 63 31 31 0 31 63 63 31 31 0 31 31 0 31 31 0 31 0 0 0 31 0 0 0 31 0 0 31 0 0 31 0 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 31 0 0 63 31 31 31 0 31 31 31 0 0 63 31 31 0 31 0 63 31 31 31 63 31 31 63 0 31 31 31 31 63 31 63 31 31 0 31 31 31 31 31 63 63 63 63 63 31 63 63 31 31 0 63 31 31 31 31 31 31 31 0 31 31 31 31 31 0 31 63 31 31 63 31 0 63 0 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 31 31 63 0 31 31 63 31 0 31 31 31 31 31 31 31 31 31 0 0 31 31 31 0 31 31 31 0 0 0 0 0 0 31 0 0 0 0 0 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 0 31 31 0 31 31 31 31 31 31 31 63 63 31 0 63 0 0 63 0 0 0 31 31 0 31 31 31 31 31 0 31 31 31 31 31 63 31 31 31 0 31 31 63 63 63 31 31 31 0 0 63 0 0 31 31 63 63 31 31 31 31 31 31 31 31 31 0 31 31 0 31 63 63 31 31 0 63 0 63 63 0 63 31 31 31 31 0 31 31 31 31 31 31 31 31 31 31 0 63 31 0 31 0 0 31 0 31 63 0 0 0 31 31 31 31 31 31 31 31 31 31 0 31 0 31 0 0 63 0 0 0 0 0 63 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 0 31 31 31 63 63 63 31 31 31 0 31 31 63 0 31 0 0 31 31 31 31 0 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 0 63 0 31 0 31 31 31 63 31 63 31 0 0 31 31 31 31 31 31 31 31 31 31 31 31 31 63 0 63 0 63 0 63 63 31 31 63 0 63 31 0 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 63 31 63 0 31 0 31 0 31 0 31 31 31 31 31 0 0 31 31 31 31 31 31 31 31 0 0 0 0 31 0 31 31 31 0 0 0 0 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 0 63 31 31 31 31 0 31 0 0 31 31 63 63 31 31 63 31 63 31 31 31 0 31 31 0 31 31 31 31 31 31 63 31 31 31 31 63 0 31 31 63 63 0 31 63 31 0 0 31 31 31 31 31 31 0 31 31 31 31 31 31 31 63 31 31 31 63 63 31 0 31 31 63 0 63 31 31 0 31 63 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 0 31 63 0 0 0 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 31 0 0 0 31 0 0 31 0 31 0 0 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 31 31 31 63 0 31 31 0 31 31 31 0 0 63 31 0 63 63 31 0 31 31 63 0 31 31 0 31 31 31 31 31 31 31 31 0 31 0 31 31 31 31 0 0 31 63 31 31 31 0 0 31 31 31 31 31 31 0 31 31 31 31 31 31 31 0 31 31 31 31 0 31 31 63 31 0 31 63 31 31 0 31 31 31 31 31 31 31 31 0 31 31 31 31 31 31 31 31 0 31 0 31 0 0 0 0 31 0 63 31 31 31 31 31 0 31 31 31 31 0 31 31 0 31 31 31 0 31 31 0 0 31 0 0 31 0 0 31 0 31 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 0 31 31 31 31 31 31 31 0 63 31 63 31 31 31 0 31 63 31 63 31 0 31 0 31 31 31 31 31 31 31 63 31 0 0 31 31 31 31 63 0 31 31 0 0 63 31 31 0 31 31 31 31 0 31 63 31 31 31 31 31 63 0 31 31 31 0 31 0 31 63 0 0 0 31 31 63 31 0 0 31 31 31 63 0 31 0 31 31 31 31 31 31 0 63 0 31 0 31 0 63 63 31 0 0 31 0 0 31 63 31 31 31 31 31 0 31 31 31 31 31 31 0 0 0 31 31 0 0 0 0 0 31 0 0 0 31 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 0 31 31 31 31 31 31 0 0 31 31 0 63 0 63 31 0 31 31 31 31 0 31 31 31 31 0 31 31 31 31 0 31 31 31 0 0 31 0 31 31 63 31 0 31 31 0 31 63 31 0 63 31 31 31 31 31 31 31 31 31 31 31 63 31 31 63 31 63 31 31 31 0 31 0 63 63 31 0 63 63 0 0 0 31 31 31 31 31 31 31 31 31 0 31 31 31 31 31 0 63 63 0 31 31 0 31 63 0 0 0 0 31 31 31 31 31 0 31 31 31 31 31 31 0 31 31 31 31 31 31 31 0 0 31 0 31 0 31 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 0 31 31 0 31 63 63 31 31 63 0 63 31 31 31 31 0 31 0 31 0 31 31 0 31 31 31 31 31 31 31 31 31 31 31 31 0 31 0 0 31 31 31 0 63 0 31 31 31 63 0 31 31 31 0 31 31 31 31 31 31 31 31 0 31 31 0 31 31 63 31 63 31 31 31 31 31 31 31 0 0 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 0 0 31 31 31 0 31 31 31 31 0 0 63 31 31 0 31 31 31 31 31 31 31 0 31 31 0 0 0 31 0 0 31 31 0 0 0 0 31 0 0 31 0 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 31 0 31 63 63 0 31 31 31 31 63 31 31 31 31 31 0 31 31 31 0 63 31 0 31 0 31 31 31 31 31 31 31 31 31 31 31 31 0 31 31 31 31 0 63 31 63 63 31 0 0 0 31 31 31 0 0 31 31 31 31 0 31 0 63 31 0 0 0 31 0 0 63 31 31 0 0 31 0 0 31 31 31 0 31 31 31 31 31 31 31 31 31 63 31 0 31 63 31 31 0 63 0 31 31 31 31 0 63 31 0 0 0 31 31 31 31 0 0 0 31 31 31 31 31 31 0 31 31 0 0 0 0 0 31 31 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 31 0 31 31 0 0 0 0 31 31 31 0 0 0 63 63 63 31 31 31 31 31 0 31 31 31 31 31 31 31 63 0 0 31 31 63 31 31 31 0 31 31 31 0 63 63 31 31 31 63 0 0 31 31 0 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 31 0 0 63 31 63 31 31 31 0 0 63 31 0 31 31 31 31 31 31 0 0 31 31 31 0 31 63 31 0 0 31 31 31 31 31 31 31 0 0 0 31 0 31 31 0 0 0 0 31 0 0 0 0 31 31 0 0 31 31 0 31 0 0 31 0 0 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 0 31 31 0 0 0 31 0 0 31 31 0 0 63 31 0 63 31 0 31 0 31 31 31 31 31 31 31 0 31 31 31 0 31 31 0 31 0 31 31 0 31 63 0 31 31 0 31 63 63 31 31 31 0 31 31 0 31 31 31 31 31 31 31 31 31 63 31 31 0 63 63 31 0 31 31 0 63 0 31 31 0 63 31 0 31 31 31 31 31 31 0 31 31 31 31 0 63 31 63 31 0 31 0 0 0 0 63 31 31 31 31 0 31 0 0 0 31 31 31 31 0 0 31 0 31 31 0 0 0 0 31 0 31 31 31 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 31 31 31 0 0 31 0 31 31 0 0 31 0 31 0 63 31 31 63 0 31 31 0 31 0 31 31 31 31 31 31 31 31 0 31 31 31 31 63 63 31 31 31 31 31 63 31 63 31 0 31 63 63 31 31 63 63 31 31 31 31 31 31 31 31 31 31 31 31 0 0 0 0 31 31 0 31 63 31 0 31 0 0 31 63 31 31 31 31 31 0 31 31 0 31 0 31 31 31 31 0 31 63 0 31 31 31 63 0 31 63 63 0 31 31 31 31 31 0 31 0 0 31 31 0 0 31 0 31 0 31 0 31 0 31 0 0 0 0 31 31 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +31 0 31 31 0 0 31 0 0 31 31 0 0 0 0 63 0 31 31 31 31 31 31 31 31 0 31 31 31 0 31 31 31 31 31 31 31 31 31 63 31 63 63 0 63 0 0 31 0 63 63 31 31 0 31 31 63 31 31 31 31 31 31 31 31 31 31 31 63 31 0 0 63 31 31 0 31 0 31 31 63 31 31 31 31 31 31 63 31 31 31 0 31 31 0 31 31 31 31 0 31 0 0 31 31 0 0 31 0 31 63 31 0 31 0 0 63 31 31 0 31 31 0 31 0 0 31 31 0 0 31 0 31 0 31 31 0 31 63 31 0 31 0 31 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \ No newline at end of file diff --git a/hidden_functional_c/expect/output/39_fp_params.out b/hidden_functional_c/expect/output/39_fp_params.out index 156e925..9ee3b49 100644 --- a/hidden_functional_c/expect/output/39_fp_params.out +++ b/hidden_functional_c/expect/output/39_fp_params.out @@ -1,8 +1,8 @@ 10: 0x1.aec9c2p+2 0x1.6187ep+2 0x1.6444fep+2 0x1.5dcf9ep+2 0x1.5d7f4cp+2 0x1.7ee688p+2 0x1.75af34p+2 0x1.870674p+2 0x1.75bafp+2 0x1.9b8604p+2 -10: 0x1.aec9c2p+2 0x1.6187dep+2 0x1.6444fcp+2 0x1.5dcf9ep+2 0x1.5d7f4cp+2 0x1.7ee688p+2 0x1.75af36p+2 0x1.870674p+2 0x1.75bafp+2 0x1.9b8604p+2 +10: 0x1.aec9c2p+2 0x1.6187ep+2 0x1.6444fep+2 0x1.5dcf9ep+2 0x1.5d7f4cp+2 0x1.7ee688p+2 0x1.75af34p+2 0x1.870674p+2 0x1.75bafp+2 0x1.9b8604p+2 8: 7 5 6 5 5 6 9 8 -10: 0x1.aec9c2p+2 0x1.6187dep+2 0x1.6444fcp+2 0x1.5dcf9cp+2 0x1.5d7f4cp+2 0x1.7ee688p+2 0x1.75af34p+2 0x1.870674p+2 0x1.75bafp+2 0x1.9b8604p+2 -10: 0x1.aec9c2p+2 0x1.6187dcp+2 0x1.6444fcp+2 0x1.5dcf9cp+2 0x1.5d7f4cp+2 0x1.7ee688p+2 0x1.75af34p+2 0x1.870674p+2 0x1.75bafp+2 0x0p+0 +10: 0x1.aec9c2p+2 0x1.6187ep+2 0x1.6444fep+2 0x1.5dcf9ep+2 0x1.5d7f4cp+2 0x1.7ee688p+2 0x1.75af34p+2 0x1.870674p+2 0x1.75bafp+2 0x1.9b8604p+2 +10: 0x1.aec9c2p+2 0x1.6187ep+2 0x1.6444fep+2 0x1.5dcf9ep+2 0x1.5d7f4cp+2 0x1.7ee688p+2 0x1.75af34p+2 0x1.870674p+2 0x1.75bafp+2 0x0p+0 10: 7 5 6 5 5 6 9 8 9 0 0x1.aec9c2p+2 0x0p+0 diff --git a/hidden_functional_c/sy/29_long_line.sy b/hidden_functional_c/sy/29_long_line.sy index fe7ee6b..d66cef3 100644 --- a/hidden_functional_c/sy/29_long_line.sy +++ b/hidden_functional_c/sy/29_long_line.sy @@ -1,2 +1,2 @@ -#include "sylib.h" -int fib(int n) { if (n <= 2) return 1; int n1; { int neg_b; { int not_a; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (1); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int o0, o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15; { if (!(a0)) { o0 = 1; } else { o0 = 0; } }; { if (!(a1)) { o1 = 1; } else { o1 = 0; } }; { if (!(a2)) { o2 = 1; } else { o2 = 0; } }; { if (!(a3)) { o3 = 1; } else { o3 = 0; } }; { if (!(a4)) { o4 = 1; } else { o4 = 0; } }; { if (!(a5)) { o5 = 1; } else { o5 = 0; } }; { if (!(a6)) { o6 = 1; } else { o6 = 0; } }; { if (!(a7)) { o7 = 1; } else { o7 = 0; } }; { if (!(a8)) { o8 = 1; } else { o8 = 0; } }; { if (!(a9)) { o9 = 1; } else { o9 = 0; } }; { if (!(a10)) { o10 = 1; } else { o10 = 0; } }; { if (!(a11)) { o11 = 1; } else { o11 = 0; } }; { if (!(a12)) { o12 = 1; } else { o12 = 0; } }; { if (!(a13)) { o13 = 1; } else { o13 = 0; } }; { if (!(a14)) { o14 = 1; } else { o14 = 0; } }; { if (!(a15)) { o15 = 1; } else { o15 = 0; } }; { not_a = 0; not_a = not_a * 2 + (o15); not_a = not_a * 2 + (o14); not_a = not_a * 2 + (o13); not_a = not_a * 2 + (o12); not_a = not_a * 2 + (o11); not_a = not_a * 2 + (o10); not_a = not_a * 2 + (o9); not_a = not_a * 2 + (o8); not_a = not_a * 2 + (o7); not_a = not_a * 2 + (o6); not_a = not_a * 2 + (o5); not_a = not_a * 2 + (o4); not_a = not_a * 2 + (o3); not_a = not_a * 2 + (o2); not_a = not_a * 2 + (o1); not_a = not_a * 2 + (o0); }; }; { int cout; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (not_a); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15; { int temp = (1); { b0 = temp % 2; if (b0 < 0) b0 = -b0; temp = temp / 2; }; { b1 = temp % 2; if (b1 < 0) b1 = -b1; temp = temp / 2; }; { b2 = temp % 2; if (b2 < 0) b2 = -b2; temp = temp / 2; }; { b3 = temp % 2; if (b3 < 0) b3 = -b3; temp = temp / 2; }; { b4 = temp % 2; if (b4 < 0) b4 = -b4; temp = temp / 2; }; { b5 = temp % 2; if (b5 < 0) b5 = -b5; temp = temp / 2; }; { b6 = temp % 2; if (b6 < 0) b6 = -b6; temp = temp / 2; }; { b7 = temp % 2; if (b7 < 0) b7 = -b7; temp = temp / 2; }; { b8 = temp % 2; if (b8 < 0) b8 = -b8; temp = temp / 2; }; { b9 = temp % 2; if (b9 < 0) b9 = -b9; temp = temp / 2; }; { b10 = temp % 2; if (b10 < 0) b10 = -b10; temp = temp / 2; }; { b11 = temp % 2; if (b11 < 0) b11 = -b11; temp = temp / 2; }; { b12 = temp % 2; if (b12 < 0) b12 = -b12; temp = temp / 2; }; { b13 = temp % 2; if (b13 < 0) b13 = -b13; temp = temp / 2; }; { b14 = temp % 2; if (b14 < 0) b14 = -b14; temp = temp / 2; }; { b15 = temp % 2; if (b15 < 0) b15 = -b15; temp = temp / 2; }; }; int c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14; int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15; { int a_xor_b; { int a_or_b; { if ((a0) || (b0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s0 = 1; } else { s0 = 0; } }; }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c0 = 1; } else { c0 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a1) || (b1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s1 = 1; } else { s1 = 0; } }; }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c1 = 1; } else { c1 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a2) || (b2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s2 = 1; } else { s2 = 0; } }; }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c1)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c2 = 1; } else { c2 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a3) || (b3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s3 = 1; } else { s3 = 0; } }; }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c2)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c3 = 1; } else { c3 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a4) || (b4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s4 = 1; } else { s4 = 0; } }; }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c3)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c4 = 1; } else { c4 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a5) || (b5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s5 = 1; } else { s5 = 0; } }; }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c4)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c5 = 1; } else { c5 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a6) || (b6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s6 = 1; } else { s6 = 0; } }; }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c5)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c6 = 1; } else { c6 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a7) || (b7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s7 = 1; } else { s7 = 0; } }; }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c6)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c7 = 1; } else { c7 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a8) || (b8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s8 = 1; } else { s8 = 0; } }; }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c7)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c8 = 1; } else { c8 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a9) || (b9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s9 = 1; } else { s9 = 0; } }; }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c8)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c9 = 1; } else { c9 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a10) || (b10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s10 = 1; } else { s10 = 0; } }; }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c9)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c10 = 1; } else { c10 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a11) || (b11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s11 = 1; } else { s11 = 0; } }; }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c10)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c11 = 1; } else { c11 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a12) || (b12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s12 = 1; } else { s12 = 0; } }; }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c11)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c12 = 1; } else { c12 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a13) || (b13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s13 = 1; } else { s13 = 0; } }; }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c12)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c13 = 1; } else { c13 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a14) || (b14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s14 = 1; } else { s14 = 0; } }; }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c13)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c14 = 1; } else { c14 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a15) || (b15)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s15 = 1; } else { s15 = 0; } }; }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c14)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { cout = 1; } else { cout = 0; } }; }; { neg_b = 0; neg_b = neg_b * 2 + (s15); neg_b = neg_b * 2 + (s14); neg_b = neg_b * 2 + (s13); neg_b = neg_b * 2 + (s12); neg_b = neg_b * 2 + (s11); neg_b = neg_b * 2 + (s10); neg_b = neg_b * 2 + (s9); neg_b = neg_b * 2 + (s8); neg_b = neg_b * 2 + (s7); neg_b = neg_b * 2 + (s6); neg_b = neg_b * 2 + (s5); neg_b = neg_b * 2 + (s4); neg_b = neg_b * 2 + (s3); neg_b = neg_b * 2 + (s2); neg_b = neg_b * 2 + (s1); neg_b = neg_b * 2 + (s0); }; }; }; }; { int cout; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (n); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15; { int temp = (neg_b); { b0 = temp % 2; if (b0 < 0) b0 = -b0; temp = temp / 2; }; { b1 = temp % 2; if (b1 < 0) b1 = -b1; temp = temp / 2; }; { b2 = temp % 2; if (b2 < 0) b2 = -b2; temp = temp / 2; }; { b3 = temp % 2; if (b3 < 0) b3 = -b3; temp = temp / 2; }; { b4 = temp % 2; if (b4 < 0) b4 = -b4; temp = temp / 2; }; { b5 = temp % 2; if (b5 < 0) b5 = -b5; temp = temp / 2; }; { b6 = temp % 2; if (b6 < 0) b6 = -b6; temp = temp / 2; }; { b7 = temp % 2; if (b7 < 0) b7 = -b7; temp = temp / 2; }; { b8 = temp % 2; if (b8 < 0) b8 = -b8; temp = temp / 2; }; { b9 = temp % 2; if (b9 < 0) b9 = -b9; temp = temp / 2; }; { b10 = temp % 2; if (b10 < 0) b10 = -b10; temp = temp / 2; }; { b11 = temp % 2; if (b11 < 0) b11 = -b11; temp = temp / 2; }; { b12 = temp % 2; if (b12 < 0) b12 = -b12; temp = temp / 2; }; { b13 = temp % 2; if (b13 < 0) b13 = -b13; temp = temp / 2; }; { b14 = temp % 2; if (b14 < 0) b14 = -b14; temp = temp / 2; }; { b15 = temp % 2; if (b15 < 0) b15 = -b15; temp = temp / 2; }; }; int c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14; int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15; { int a_xor_b; { int a_or_b; { if ((a0) || (b0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s0 = 1; } else { s0 = 0; } }; }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c0 = 1; } else { c0 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a1) || (b1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s1 = 1; } else { s1 = 0; } }; }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c1 = 1; } else { c1 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a2) || (b2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s2 = 1; } else { s2 = 0; } }; }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c1)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c2 = 1; } else { c2 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a3) || (b3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s3 = 1; } else { s3 = 0; } }; }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c2)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c3 = 1; } else { c3 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a4) || (b4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s4 = 1; } else { s4 = 0; } }; }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c3)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c4 = 1; } else { c4 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a5) || (b5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s5 = 1; } else { s5 = 0; } }; }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c4)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c5 = 1; } else { c5 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a6) || (b6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s6 = 1; } else { s6 = 0; } }; }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c5)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c6 = 1; } else { c6 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a7) || (b7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s7 = 1; } else { s7 = 0; } }; }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c6)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c7 = 1; } else { c7 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a8) || (b8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s8 = 1; } else { s8 = 0; } }; }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c7)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c8 = 1; } else { c8 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a9) || (b9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s9 = 1; } else { s9 = 0; } }; }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c8)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c9 = 1; } else { c9 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a10) || (b10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s10 = 1; } else { s10 = 0; } }; }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c9)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c10 = 1; } else { c10 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a11) || (b11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s11 = 1; } else { s11 = 0; } }; }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c10)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c11 = 1; } else { c11 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a12) || (b12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s12 = 1; } else { s12 = 0; } }; }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c11)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c12 = 1; } else { c12 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a13) || (b13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s13 = 1; } else { s13 = 0; } }; }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c12)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c13 = 1; } else { c13 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a14) || (b14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s14 = 1; } else { s14 = 0; } }; }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c13)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c14 = 1; } else { c14 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a15) || (b15)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s15 = 1; } else { s15 = 0; } }; }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c14)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { cout = 1; } else { cout = 0; } }; }; { n1 = 0; n1 = n1 * 2 + (s15); n1 = n1 * 2 + (s14); n1 = n1 * 2 + (s13); n1 = n1 * 2 + (s12); n1 = n1 * 2 + (s11); n1 = n1 * 2 + (s10); n1 = n1 * 2 + (s9); n1 = n1 * 2 + (s8); n1 = n1 * 2 + (s7); n1 = n1 * 2 + (s6); n1 = n1 * 2 + (s5); n1 = n1 * 2 + (s4); n1 = n1 * 2 + (s3); n1 = n1 * 2 + (s2); n1 = n1 * 2 + (s1); n1 = n1 * 2 + (s0); }; }; }; }; int f1 = fib(n1); int n2; { int neg_b; { int not_a; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (2); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int o0, o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15; { if (!(a0)) { o0 = 1; } else { o0 = 0; } }; { if (!(a1)) { o1 = 1; } else { o1 = 0; } }; { if (!(a2)) { o2 = 1; } else { o2 = 0; } }; { if (!(a3)) { o3 = 1; } else { o3 = 0; } }; { if (!(a4)) { o4 = 1; } else { o4 = 0; } }; { if (!(a5)) { o5 = 1; } else { o5 = 0; } }; { if (!(a6)) { o6 = 1; } else { o6 = 0; } }; { if (!(a7)) { o7 = 1; } else { o7 = 0; } }; { if (!(a8)) { o8 = 1; } else { o8 = 0; } }; { if (!(a9)) { o9 = 1; } else { o9 = 0; } }; { if (!(a10)) { o10 = 1; } else { o10 = 0; } }; { if (!(a11)) { o11 = 1; } else { o11 = 0; } }; { if (!(a12)) { o12 = 1; } else { o12 = 0; } }; { if (!(a13)) { o13 = 1; } else { o13 = 0; } }; { if (!(a14)) { o14 = 1; } else { o14 = 0; } }; { if (!(a15)) { o15 = 1; } else { o15 = 0; } }; { not_a = 0; not_a = not_a * 2 + (o15); not_a = not_a * 2 + (o14); not_a = not_a * 2 + (o13); not_a = not_a * 2 + (o12); not_a = not_a * 2 + (o11); not_a = not_a * 2 + (o10); not_a = not_a * 2 + (o9); not_a = not_a * 2 + (o8); not_a = not_a * 2 + (o7); not_a = not_a * 2 + (o6); not_a = not_a * 2 + (o5); not_a = not_a * 2 + (o4); not_a = not_a * 2 + (o3); not_a = not_a * 2 + (o2); not_a = not_a * 2 + (o1); not_a = not_a * 2 + (o0); }; }; { int cout; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (not_a); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15; { int temp = (1); { b0 = temp % 2; if (b0 < 0) b0 = -b0; temp = temp / 2; }; { b1 = temp % 2; if (b1 < 0) b1 = -b1; temp = temp / 2; }; { b2 = temp % 2; if (b2 < 0) b2 = -b2; temp = temp / 2; }; { b3 = temp % 2; if (b3 < 0) b3 = -b3; temp = temp / 2; }; { b4 = temp % 2; if (b4 < 0) b4 = -b4; temp = temp / 2; }; { b5 = temp % 2; if (b5 < 0) b5 = -b5; temp = temp / 2; }; { b6 = temp % 2; if (b6 < 0) b6 = -b6; temp = temp / 2; }; { b7 = temp % 2; if (b7 < 0) b7 = -b7; temp = temp / 2; }; { b8 = temp % 2; if (b8 < 0) b8 = -b8; temp = temp / 2; }; { b9 = temp % 2; if (b9 < 0) b9 = -b9; temp = temp / 2; }; { b10 = temp % 2; if (b10 < 0) b10 = -b10; temp = temp / 2; }; { b11 = temp % 2; if (b11 < 0) b11 = -b11; temp = temp / 2; }; { b12 = temp % 2; if (b12 < 0) b12 = -b12; temp = temp / 2; }; { b13 = temp % 2; if (b13 < 0) b13 = -b13; temp = temp / 2; }; { b14 = temp % 2; if (b14 < 0) b14 = -b14; temp = temp / 2; }; { b15 = temp % 2; if (b15 < 0) b15 = -b15; temp = temp / 2; }; }; int c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14; int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15; { int a_xor_b; { int a_or_b; { if ((a0) || (b0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s0 = 1; } else { s0 = 0; } }; }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c0 = 1; } else { c0 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a1) || (b1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s1 = 1; } else { s1 = 0; } }; }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c1 = 1; } else { c1 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a2) || (b2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s2 = 1; } else { s2 = 0; } }; }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c1)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c2 = 1; } else { c2 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a3) || (b3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s3 = 1; } else { s3 = 0; } }; }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c2)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c3 = 1; } else { c3 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a4) || (b4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s4 = 1; } else { s4 = 0; } }; }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c3)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c4 = 1; } else { c4 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a5) || (b5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s5 = 1; } else { s5 = 0; } }; }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c4)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c5 = 1; } else { c5 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a6) || (b6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s6 = 1; } else { s6 = 0; } }; }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c5)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c6 = 1; } else { c6 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a7) || (b7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s7 = 1; } else { s7 = 0; } }; }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c6)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c7 = 1; } else { c7 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a8) || (b8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s8 = 1; } else { s8 = 0; } }; }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c7)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c8 = 1; } else { c8 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a9) || (b9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s9 = 1; } else { s9 = 0; } }; }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c8)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c9 = 1; } else { c9 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a10) || (b10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s10 = 1; } else { s10 = 0; } }; }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c9)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c10 = 1; } else { c10 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a11) || (b11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s11 = 1; } else { s11 = 0; } }; }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c10)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c11 = 1; } else { c11 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a12) || (b12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s12 = 1; } else { s12 = 0; } }; }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c11)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c12 = 1; } else { c12 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a13) || (b13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s13 = 1; } else { s13 = 0; } }; }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c12)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c13 = 1; } else { c13 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a14) || (b14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s14 = 1; } else { s14 = 0; } }; }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c13)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c14 = 1; } else { c14 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a15) || (b15)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s15 = 1; } else { s15 = 0; } }; }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c14)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { cout = 1; } else { cout = 0; } }; }; { neg_b = 0; neg_b = neg_b * 2 + (s15); neg_b = neg_b * 2 + (s14); neg_b = neg_b * 2 + (s13); neg_b = neg_b * 2 + (s12); neg_b = neg_b * 2 + (s11); neg_b = neg_b * 2 + (s10); neg_b = neg_b * 2 + (s9); neg_b = neg_b * 2 + (s8); neg_b = neg_b * 2 + (s7); neg_b = neg_b * 2 + (s6); neg_b = neg_b * 2 + (s5); neg_b = neg_b * 2 + (s4); neg_b = neg_b * 2 + (s3); neg_b = neg_b * 2 + (s2); neg_b = neg_b * 2 + (s1); neg_b = neg_b * 2 + (s0); }; }; }; }; { int cout; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (n); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15; { int temp = (neg_b); { b0 = temp % 2; if (b0 < 0) b0 = -b0; temp = temp / 2; }; { b1 = temp % 2; if (b1 < 0) b1 = -b1; temp = temp / 2; }; { b2 = temp % 2; if (b2 < 0) b2 = -b2; temp = temp / 2; }; { b3 = temp % 2; if (b3 < 0) b3 = -b3; temp = temp / 2; }; { b4 = temp % 2; if (b4 < 0) b4 = -b4; temp = temp / 2; }; { b5 = temp % 2; if (b5 < 0) b5 = -b5; temp = temp / 2; }; { b6 = temp % 2; if (b6 < 0) b6 = -b6; temp = temp / 2; }; { b7 = temp % 2; if (b7 < 0) b7 = -b7; temp = temp / 2; }; { b8 = temp % 2; if (b8 < 0) b8 = -b8; temp = temp / 2; }; { b9 = temp % 2; if (b9 < 0) b9 = -b9; temp = temp / 2; }; { b10 = temp % 2; if (b10 < 0) b10 = -b10; temp = temp / 2; }; { b11 = temp % 2; if (b11 < 0) b11 = -b11; temp = temp / 2; }; { b12 = temp % 2; if (b12 < 0) b12 = -b12; temp = temp / 2; }; { b13 = temp % 2; if (b13 < 0) b13 = -b13; temp = temp / 2; }; { b14 = temp % 2; if (b14 < 0) b14 = -b14; temp = temp / 2; }; { b15 = temp % 2; if (b15 < 0) b15 = -b15; temp = temp / 2; }; }; int c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14; int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15; { int a_xor_b; { int a_or_b; { if ((a0) || (b0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s0 = 1; } else { s0 = 0; } }; }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c0 = 1; } else { c0 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a1) || (b1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s1 = 1; } else { s1 = 0; } }; }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c1 = 1; } else { c1 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a2) || (b2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s2 = 1; } else { s2 = 0; } }; }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c1)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c2 = 1; } else { c2 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a3) || (b3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s3 = 1; } else { s3 = 0; } }; }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c2)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c3 = 1; } else { c3 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a4) || (b4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s4 = 1; } else { s4 = 0; } }; }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c3)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c4 = 1; } else { c4 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a5) || (b5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s5 = 1; } else { s5 = 0; } }; }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c4)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c5 = 1; } else { c5 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a6) || (b6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s6 = 1; } else { s6 = 0; } }; }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c5)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c6 = 1; } else { c6 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a7) || (b7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s7 = 1; } else { s7 = 0; } }; }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c6)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c7 = 1; } else { c7 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a8) || (b8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s8 = 1; } else { s8 = 0; } }; }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c7)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c8 = 1; } else { c8 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a9) || (b9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s9 = 1; } else { s9 = 0; } }; }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c8)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c9 = 1; } else { c9 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a10) || (b10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s10 = 1; } else { s10 = 0; } }; }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c9)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c10 = 1; } else { c10 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a11) || (b11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s11 = 1; } else { s11 = 0; } }; }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c10)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c11 = 1; } else { c11 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a12) || (b12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s12 = 1; } else { s12 = 0; } }; }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c11)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c12 = 1; } else { c12 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a13) || (b13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s13 = 1; } else { s13 = 0; } }; }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c12)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c13 = 1; } else { c13 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a14) || (b14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s14 = 1; } else { s14 = 0; } }; }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c13)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c14 = 1; } else { c14 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a15) || (b15)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s15 = 1; } else { s15 = 0; } }; }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c14)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { cout = 1; } else { cout = 0; } }; }; { n2 = 0; n2 = n2 * 2 + (s15); n2 = n2 * 2 + (s14); n2 = n2 * 2 + (s13); n2 = n2 * 2 + (s12); n2 = n2 * 2 + (s11); n2 = n2 * 2 + (s10); n2 = n2 * 2 + (s9); n2 = n2 * 2 + (s8); n2 = n2 * 2 + (s7); n2 = n2 * 2 + (s6); n2 = n2 * 2 + (s5); n2 = n2 * 2 + (s4); n2 = n2 * 2 + (s3); n2 = n2 * 2 + (s2); n2 = n2 * 2 + (s1); n2 = n2 * 2 + (s0); }; }; }; }; int f2 = fib(n2); int ans; { int cout; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (f1); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15; { int temp = (f2); { b0 = temp % 2; if (b0 < 0) b0 = -b0; temp = temp / 2; }; { b1 = temp % 2; if (b1 < 0) b1 = -b1; temp = temp / 2; }; { b2 = temp % 2; if (b2 < 0) b2 = -b2; temp = temp / 2; }; { b3 = temp % 2; if (b3 < 0) b3 = -b3; temp = temp / 2; }; { b4 = temp % 2; if (b4 < 0) b4 = -b4; temp = temp / 2; }; { b5 = temp % 2; if (b5 < 0) b5 = -b5; temp = temp / 2; }; { b6 = temp % 2; if (b6 < 0) b6 = -b6; temp = temp / 2; }; { b7 = temp % 2; if (b7 < 0) b7 = -b7; temp = temp / 2; }; { b8 = temp % 2; if (b8 < 0) b8 = -b8; temp = temp / 2; }; { b9 = temp % 2; if (b9 < 0) b9 = -b9; temp = temp / 2; }; { b10 = temp % 2; if (b10 < 0) b10 = -b10; temp = temp / 2; }; { b11 = temp % 2; if (b11 < 0) b11 = -b11; temp = temp / 2; }; { b12 = temp % 2; if (b12 < 0) b12 = -b12; temp = temp / 2; }; { b13 = temp % 2; if (b13 < 0) b13 = -b13; temp = temp / 2; }; { b14 = temp % 2; if (b14 < 0) b14 = -b14; temp = temp / 2; }; { b15 = temp % 2; if (b15 < 0) b15 = -b15; temp = temp / 2; }; }; int c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14; int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15; { int a_xor_b; { int a_or_b; { if ((a0) || (b0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s0 = 1; } else { s0 = 0; } }; }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c0 = 1; } else { c0 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a1) || (b1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s1 = 1; } else { s1 = 0; } }; }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c1 = 1; } else { c1 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a2) || (b2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s2 = 1; } else { s2 = 0; } }; }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c1)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c2 = 1; } else { c2 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a3) || (b3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s3 = 1; } else { s3 = 0; } }; }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c2)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c3 = 1; } else { c3 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a4) || (b4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s4 = 1; } else { s4 = 0; } }; }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c3)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c4 = 1; } else { c4 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a5) || (b5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s5 = 1; } else { s5 = 0; } }; }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c4)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c5 = 1; } else { c5 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a6) || (b6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s6 = 1; } else { s6 = 0; } }; }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c5)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c6 = 1; } else { c6 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a7) || (b7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s7 = 1; } else { s7 = 0; } }; }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c6)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c7 = 1; } else { c7 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a8) || (b8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s8 = 1; } else { s8 = 0; } }; }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c7)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c8 = 1; } else { c8 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a9) || (b9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s9 = 1; } else { s9 = 0; } }; }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c8)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c9 = 1; } else { c9 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a10) || (b10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s10 = 1; } else { s10 = 0; } }; }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c9)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c10 = 1; } else { c10 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a11) || (b11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s11 = 1; } else { s11 = 0; } }; }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c10)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c11 = 1; } else { c11 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a12) || (b12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s12 = 1; } else { s12 = 0; } }; }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c11)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c12 = 1; } else { c12 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a13) || (b13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s13 = 1; } else { s13 = 0; } }; }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c12)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c13 = 1; } else { c13 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a14) || (b14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s14 = 1; } else { s14 = 0; } }; }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c13)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c14 = 1; } else { c14 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a15) || (b15)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s15 = 1; } else { s15 = 0; } }; }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c14)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { cout = 1; } else { cout = 0; } }; }; { ans = 0; ans = ans * 2 + (s15); ans = ans * 2 + (s14); ans = ans * 2 + (s13); ans = ans * 2 + (s12); ans = ans * 2 + (s11); ans = ans * 2 + (s10); ans = ans * 2 + (s9); ans = ans * 2 + (s8); ans = ans * 2 + (s7); ans = ans * 2 + (s6); ans = ans * 2 + (s5); ans = ans * 2 + (s4); ans = ans * 2 + (s3); ans = ans * 2 + (s2); ans = ans * 2 + (s1); ans = ans * 2 + (s0); }; }; }; return ans; } int main() { int i = 1; while (i <= 20) { putch(102); putch(105); putch(98); putch(40); putint(i); putch(41); putch(32); putch(61); putch(32); putint(fib(i)); putch(10); i = i + 1; } return 0; } + +int fib(int n) { if (n <= 2) return 1; int n1; { int neg_b; { int not_a; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (1); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int o0, o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15; { if (!(a0)) { o0 = 1; } else { o0 = 0; } }; { if (!(a1)) { o1 = 1; } else { o1 = 0; } }; { if (!(a2)) { o2 = 1; } else { o2 = 0; } }; { if (!(a3)) { o3 = 1; } else { o3 = 0; } }; { if (!(a4)) { o4 = 1; } else { o4 = 0; } }; { if (!(a5)) { o5 = 1; } else { o5 = 0; } }; { if (!(a6)) { o6 = 1; } else { o6 = 0; } }; { if (!(a7)) { o7 = 1; } else { o7 = 0; } }; { if (!(a8)) { o8 = 1; } else { o8 = 0; } }; { if (!(a9)) { o9 = 1; } else { o9 = 0; } }; { if (!(a10)) { o10 = 1; } else { o10 = 0; } }; { if (!(a11)) { o11 = 1; } else { o11 = 0; } }; { if (!(a12)) { o12 = 1; } else { o12 = 0; } }; { if (!(a13)) { o13 = 1; } else { o13 = 0; } }; { if (!(a14)) { o14 = 1; } else { o14 = 0; } }; { if (!(a15)) { o15 = 1; } else { o15 = 0; } }; { not_a = 0; not_a = not_a * 2 + (o15); not_a = not_a * 2 + (o14); not_a = not_a * 2 + (o13); not_a = not_a * 2 + (o12); not_a = not_a * 2 + (o11); not_a = not_a * 2 + (o10); not_a = not_a * 2 + (o9); not_a = not_a * 2 + (o8); not_a = not_a * 2 + (o7); not_a = not_a * 2 + (o6); not_a = not_a * 2 + (o5); not_a = not_a * 2 + (o4); not_a = not_a * 2 + (o3); not_a = not_a * 2 + (o2); not_a = not_a * 2 + (o1); not_a = not_a * 2 + (o0); }; }; { int cout; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (not_a); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15; { int temp = (1); { b0 = temp % 2; if (b0 < 0) b0 = -b0; temp = temp / 2; }; { b1 = temp % 2; if (b1 < 0) b1 = -b1; temp = temp / 2; }; { b2 = temp % 2; if (b2 < 0) b2 = -b2; temp = temp / 2; }; { b3 = temp % 2; if (b3 < 0) b3 = -b3; temp = temp / 2; }; { b4 = temp % 2; if (b4 < 0) b4 = -b4; temp = temp / 2; }; { b5 = temp % 2; if (b5 < 0) b5 = -b5; temp = temp / 2; }; { b6 = temp % 2; if (b6 < 0) b6 = -b6; temp = temp / 2; }; { b7 = temp % 2; if (b7 < 0) b7 = -b7; temp = temp / 2; }; { b8 = temp % 2; if (b8 < 0) b8 = -b8; temp = temp / 2; }; { b9 = temp % 2; if (b9 < 0) b9 = -b9; temp = temp / 2; }; { b10 = temp % 2; if (b10 < 0) b10 = -b10; temp = temp / 2; }; { b11 = temp % 2; if (b11 < 0) b11 = -b11; temp = temp / 2; }; { b12 = temp % 2; if (b12 < 0) b12 = -b12; temp = temp / 2; }; { b13 = temp % 2; if (b13 < 0) b13 = -b13; temp = temp / 2; }; { b14 = temp % 2; if (b14 < 0) b14 = -b14; temp = temp / 2; }; { b15 = temp % 2; if (b15 < 0) b15 = -b15; temp = temp / 2; }; }; int c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14; int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15; { int a_xor_b; { int a_or_b; { if ((a0) || (b0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s0 = 1; } else { s0 = 0; } }; }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c0 = 1; } else { c0 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a1) || (b1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s1 = 1; } else { s1 = 0; } }; }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c1 = 1; } else { c1 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a2) || (b2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s2 = 1; } else { s2 = 0; } }; }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c1)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c2 = 1; } else { c2 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a3) || (b3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s3 = 1; } else { s3 = 0; } }; }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c2)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c3 = 1; } else { c3 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a4) || (b4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s4 = 1; } else { s4 = 0; } }; }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c3)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c4 = 1; } else { c4 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a5) || (b5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s5 = 1; } else { s5 = 0; } }; }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c4)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c5 = 1; } else { c5 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a6) || (b6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s6 = 1; } else { s6 = 0; } }; }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c5)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c6 = 1; } else { c6 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a7) || (b7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s7 = 1; } else { s7 = 0; } }; }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c6)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c7 = 1; } else { c7 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a8) || (b8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s8 = 1; } else { s8 = 0; } }; }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c7)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c8 = 1; } else { c8 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a9) || (b9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s9 = 1; } else { s9 = 0; } }; }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c8)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c9 = 1; } else { c9 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a10) || (b10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s10 = 1; } else { s10 = 0; } }; }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c9)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c10 = 1; } else { c10 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a11) || (b11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s11 = 1; } else { s11 = 0; } }; }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c10)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c11 = 1; } else { c11 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a12) || (b12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s12 = 1; } else { s12 = 0; } }; }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c11)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c12 = 1; } else { c12 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a13) || (b13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s13 = 1; } else { s13 = 0; } }; }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c12)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c13 = 1; } else { c13 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a14) || (b14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s14 = 1; } else { s14 = 0; } }; }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c13)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c14 = 1; } else { c14 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a15) || (b15)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s15 = 1; } else { s15 = 0; } }; }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c14)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { cout = 1; } else { cout = 0; } }; }; { neg_b = 0; neg_b = neg_b * 2 + (s15); neg_b = neg_b * 2 + (s14); neg_b = neg_b * 2 + (s13); neg_b = neg_b * 2 + (s12); neg_b = neg_b * 2 + (s11); neg_b = neg_b * 2 + (s10); neg_b = neg_b * 2 + (s9); neg_b = neg_b * 2 + (s8); neg_b = neg_b * 2 + (s7); neg_b = neg_b * 2 + (s6); neg_b = neg_b * 2 + (s5); neg_b = neg_b * 2 + (s4); neg_b = neg_b * 2 + (s3); neg_b = neg_b * 2 + (s2); neg_b = neg_b * 2 + (s1); neg_b = neg_b * 2 + (s0); }; }; }; }; { int cout; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (n); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15; { int temp = (neg_b); { b0 = temp % 2; if (b0 < 0) b0 = -b0; temp = temp / 2; }; { b1 = temp % 2; if (b1 < 0) b1 = -b1; temp = temp / 2; }; { b2 = temp % 2; if (b2 < 0) b2 = -b2; temp = temp / 2; }; { b3 = temp % 2; if (b3 < 0) b3 = -b3; temp = temp / 2; }; { b4 = temp % 2; if (b4 < 0) b4 = -b4; temp = temp / 2; }; { b5 = temp % 2; if (b5 < 0) b5 = -b5; temp = temp / 2; }; { b6 = temp % 2; if (b6 < 0) b6 = -b6; temp = temp / 2; }; { b7 = temp % 2; if (b7 < 0) b7 = -b7; temp = temp / 2; }; { b8 = temp % 2; if (b8 < 0) b8 = -b8; temp = temp / 2; }; { b9 = temp % 2; if (b9 < 0) b9 = -b9; temp = temp / 2; }; { b10 = temp % 2; if (b10 < 0) b10 = -b10; temp = temp / 2; }; { b11 = temp % 2; if (b11 < 0) b11 = -b11; temp = temp / 2; }; { b12 = temp % 2; if (b12 < 0) b12 = -b12; temp = temp / 2; }; { b13 = temp % 2; if (b13 < 0) b13 = -b13; temp = temp / 2; }; { b14 = temp % 2; if (b14 < 0) b14 = -b14; temp = temp / 2; }; { b15 = temp % 2; if (b15 < 0) b15 = -b15; temp = temp / 2; }; }; int c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14; int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15; { int a_xor_b; { int a_or_b; { if ((a0) || (b0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s0 = 1; } else { s0 = 0; } }; }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c0 = 1; } else { c0 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a1) || (b1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s1 = 1; } else { s1 = 0; } }; }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c1 = 1; } else { c1 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a2) || (b2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s2 = 1; } else { s2 = 0; } }; }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c1)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c2 = 1; } else { c2 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a3) || (b3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s3 = 1; } else { s3 = 0; } }; }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c2)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c3 = 1; } else { c3 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a4) || (b4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s4 = 1; } else { s4 = 0; } }; }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c3)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c4 = 1; } else { c4 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a5) || (b5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s5 = 1; } else { s5 = 0; } }; }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c4)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c5 = 1; } else { c5 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a6) || (b6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s6 = 1; } else { s6 = 0; } }; }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c5)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c6 = 1; } else { c6 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a7) || (b7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s7 = 1; } else { s7 = 0; } }; }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c6)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c7 = 1; } else { c7 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a8) || (b8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s8 = 1; } else { s8 = 0; } }; }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c7)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c8 = 1; } else { c8 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a9) || (b9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s9 = 1; } else { s9 = 0; } }; }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c8)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c9 = 1; } else { c9 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a10) || (b10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s10 = 1; } else { s10 = 0; } }; }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c9)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c10 = 1; } else { c10 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a11) || (b11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s11 = 1; } else { s11 = 0; } }; }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c10)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c11 = 1; } else { c11 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a12) || (b12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s12 = 1; } else { s12 = 0; } }; }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c11)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c12 = 1; } else { c12 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a13) || (b13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s13 = 1; } else { s13 = 0; } }; }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c12)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c13 = 1; } else { c13 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a14) || (b14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s14 = 1; } else { s14 = 0; } }; }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c13)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c14 = 1; } else { c14 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a15) || (b15)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s15 = 1; } else { s15 = 0; } }; }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c14)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { cout = 1; } else { cout = 0; } }; }; { n1 = 0; n1 = n1 * 2 + (s15); n1 = n1 * 2 + (s14); n1 = n1 * 2 + (s13); n1 = n1 * 2 + (s12); n1 = n1 * 2 + (s11); n1 = n1 * 2 + (s10); n1 = n1 * 2 + (s9); n1 = n1 * 2 + (s8); n1 = n1 * 2 + (s7); n1 = n1 * 2 + (s6); n1 = n1 * 2 + (s5); n1 = n1 * 2 + (s4); n1 = n1 * 2 + (s3); n1 = n1 * 2 + (s2); n1 = n1 * 2 + (s1); n1 = n1 * 2 + (s0); }; }; }; }; int f1 = fib(n1); int n2; { int neg_b; { int not_a; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (2); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int o0, o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15; { if (!(a0)) { o0 = 1; } else { o0 = 0; } }; { if (!(a1)) { o1 = 1; } else { o1 = 0; } }; { if (!(a2)) { o2 = 1; } else { o2 = 0; } }; { if (!(a3)) { o3 = 1; } else { o3 = 0; } }; { if (!(a4)) { o4 = 1; } else { o4 = 0; } }; { if (!(a5)) { o5 = 1; } else { o5 = 0; } }; { if (!(a6)) { o6 = 1; } else { o6 = 0; } }; { if (!(a7)) { o7 = 1; } else { o7 = 0; } }; { if (!(a8)) { o8 = 1; } else { o8 = 0; } }; { if (!(a9)) { o9 = 1; } else { o9 = 0; } }; { if (!(a10)) { o10 = 1; } else { o10 = 0; } }; { if (!(a11)) { o11 = 1; } else { o11 = 0; } }; { if (!(a12)) { o12 = 1; } else { o12 = 0; } }; { if (!(a13)) { o13 = 1; } else { o13 = 0; } }; { if (!(a14)) { o14 = 1; } else { o14 = 0; } }; { if (!(a15)) { o15 = 1; } else { o15 = 0; } }; { not_a = 0; not_a = not_a * 2 + (o15); not_a = not_a * 2 + (o14); not_a = not_a * 2 + (o13); not_a = not_a * 2 + (o12); not_a = not_a * 2 + (o11); not_a = not_a * 2 + (o10); not_a = not_a * 2 + (o9); not_a = not_a * 2 + (o8); not_a = not_a * 2 + (o7); not_a = not_a * 2 + (o6); not_a = not_a * 2 + (o5); not_a = not_a * 2 + (o4); not_a = not_a * 2 + (o3); not_a = not_a * 2 + (o2); not_a = not_a * 2 + (o1); not_a = not_a * 2 + (o0); }; }; { int cout; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (not_a); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15; { int temp = (1); { b0 = temp % 2; if (b0 < 0) b0 = -b0; temp = temp / 2; }; { b1 = temp % 2; if (b1 < 0) b1 = -b1; temp = temp / 2; }; { b2 = temp % 2; if (b2 < 0) b2 = -b2; temp = temp / 2; }; { b3 = temp % 2; if (b3 < 0) b3 = -b3; temp = temp / 2; }; { b4 = temp % 2; if (b4 < 0) b4 = -b4; temp = temp / 2; }; { b5 = temp % 2; if (b5 < 0) b5 = -b5; temp = temp / 2; }; { b6 = temp % 2; if (b6 < 0) b6 = -b6; temp = temp / 2; }; { b7 = temp % 2; if (b7 < 0) b7 = -b7; temp = temp / 2; }; { b8 = temp % 2; if (b8 < 0) b8 = -b8; temp = temp / 2; }; { b9 = temp % 2; if (b9 < 0) b9 = -b9; temp = temp / 2; }; { b10 = temp % 2; if (b10 < 0) b10 = -b10; temp = temp / 2; }; { b11 = temp % 2; if (b11 < 0) b11 = -b11; temp = temp / 2; }; { b12 = temp % 2; if (b12 < 0) b12 = -b12; temp = temp / 2; }; { b13 = temp % 2; if (b13 < 0) b13 = -b13; temp = temp / 2; }; { b14 = temp % 2; if (b14 < 0) b14 = -b14; temp = temp / 2; }; { b15 = temp % 2; if (b15 < 0) b15 = -b15; temp = temp / 2; }; }; int c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14; int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15; { int a_xor_b; { int a_or_b; { if ((a0) || (b0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s0 = 1; } else { s0 = 0; } }; }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c0 = 1; } else { c0 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a1) || (b1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s1 = 1; } else { s1 = 0; } }; }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c1 = 1; } else { c1 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a2) || (b2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s2 = 1; } else { s2 = 0; } }; }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c1)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c2 = 1; } else { c2 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a3) || (b3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s3 = 1; } else { s3 = 0; } }; }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c2)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c3 = 1; } else { c3 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a4) || (b4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s4 = 1; } else { s4 = 0; } }; }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c3)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c4 = 1; } else { c4 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a5) || (b5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s5 = 1; } else { s5 = 0; } }; }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c4)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c5 = 1; } else { c5 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a6) || (b6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s6 = 1; } else { s6 = 0; } }; }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c5)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c6 = 1; } else { c6 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a7) || (b7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s7 = 1; } else { s7 = 0; } }; }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c6)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c7 = 1; } else { c7 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a8) || (b8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s8 = 1; } else { s8 = 0; } }; }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c7)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c8 = 1; } else { c8 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a9) || (b9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s9 = 1; } else { s9 = 0; } }; }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c8)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c9 = 1; } else { c9 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a10) || (b10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s10 = 1; } else { s10 = 0; } }; }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c9)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c10 = 1; } else { c10 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a11) || (b11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s11 = 1; } else { s11 = 0; } }; }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c10)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c11 = 1; } else { c11 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a12) || (b12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s12 = 1; } else { s12 = 0; } }; }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c11)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c12 = 1; } else { c12 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a13) || (b13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s13 = 1; } else { s13 = 0; } }; }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c12)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c13 = 1; } else { c13 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a14) || (b14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s14 = 1; } else { s14 = 0; } }; }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c13)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c14 = 1; } else { c14 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a15) || (b15)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s15 = 1; } else { s15 = 0; } }; }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c14)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { cout = 1; } else { cout = 0; } }; }; { neg_b = 0; neg_b = neg_b * 2 + (s15); neg_b = neg_b * 2 + (s14); neg_b = neg_b * 2 + (s13); neg_b = neg_b * 2 + (s12); neg_b = neg_b * 2 + (s11); neg_b = neg_b * 2 + (s10); neg_b = neg_b * 2 + (s9); neg_b = neg_b * 2 + (s8); neg_b = neg_b * 2 + (s7); neg_b = neg_b * 2 + (s6); neg_b = neg_b * 2 + (s5); neg_b = neg_b * 2 + (s4); neg_b = neg_b * 2 + (s3); neg_b = neg_b * 2 + (s2); neg_b = neg_b * 2 + (s1); neg_b = neg_b * 2 + (s0); }; }; }; }; { int cout; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (n); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15; { int temp = (neg_b); { b0 = temp % 2; if (b0 < 0) b0 = -b0; temp = temp / 2; }; { b1 = temp % 2; if (b1 < 0) b1 = -b1; temp = temp / 2; }; { b2 = temp % 2; if (b2 < 0) b2 = -b2; temp = temp / 2; }; { b3 = temp % 2; if (b3 < 0) b3 = -b3; temp = temp / 2; }; { b4 = temp % 2; if (b4 < 0) b4 = -b4; temp = temp / 2; }; { b5 = temp % 2; if (b5 < 0) b5 = -b5; temp = temp / 2; }; { b6 = temp % 2; if (b6 < 0) b6 = -b6; temp = temp / 2; }; { b7 = temp % 2; if (b7 < 0) b7 = -b7; temp = temp / 2; }; { b8 = temp % 2; if (b8 < 0) b8 = -b8; temp = temp / 2; }; { b9 = temp % 2; if (b9 < 0) b9 = -b9; temp = temp / 2; }; { b10 = temp % 2; if (b10 < 0) b10 = -b10; temp = temp / 2; }; { b11 = temp % 2; if (b11 < 0) b11 = -b11; temp = temp / 2; }; { b12 = temp % 2; if (b12 < 0) b12 = -b12; temp = temp / 2; }; { b13 = temp % 2; if (b13 < 0) b13 = -b13; temp = temp / 2; }; { b14 = temp % 2; if (b14 < 0) b14 = -b14; temp = temp / 2; }; { b15 = temp % 2; if (b15 < 0) b15 = -b15; temp = temp / 2; }; }; int c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14; int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15; { int a_xor_b; { int a_or_b; { if ((a0) || (b0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s0 = 1; } else { s0 = 0; } }; }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c0 = 1; } else { c0 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a1) || (b1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s1 = 1; } else { s1 = 0; } }; }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c1 = 1; } else { c1 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a2) || (b2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s2 = 1; } else { s2 = 0; } }; }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c1)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c2 = 1; } else { c2 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a3) || (b3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s3 = 1; } else { s3 = 0; } }; }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c2)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c3 = 1; } else { c3 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a4) || (b4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s4 = 1; } else { s4 = 0; } }; }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c3)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c4 = 1; } else { c4 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a5) || (b5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s5 = 1; } else { s5 = 0; } }; }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c4)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c5 = 1; } else { c5 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a6) || (b6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s6 = 1; } else { s6 = 0; } }; }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c5)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c6 = 1; } else { c6 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a7) || (b7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s7 = 1; } else { s7 = 0; } }; }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c6)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c7 = 1; } else { c7 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a8) || (b8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s8 = 1; } else { s8 = 0; } }; }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c7)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c8 = 1; } else { c8 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a9) || (b9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s9 = 1; } else { s9 = 0; } }; }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c8)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c9 = 1; } else { c9 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a10) || (b10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s10 = 1; } else { s10 = 0; } }; }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c9)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c10 = 1; } else { c10 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a11) || (b11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s11 = 1; } else { s11 = 0; } }; }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c10)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c11 = 1; } else { c11 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a12) || (b12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s12 = 1; } else { s12 = 0; } }; }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c11)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c12 = 1; } else { c12 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a13) || (b13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s13 = 1; } else { s13 = 0; } }; }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c12)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c13 = 1; } else { c13 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a14) || (b14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s14 = 1; } else { s14 = 0; } }; }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c13)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c14 = 1; } else { c14 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a15) || (b15)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s15 = 1; } else { s15 = 0; } }; }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c14)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { cout = 1; } else { cout = 0; } }; }; { n2 = 0; n2 = n2 * 2 + (s15); n2 = n2 * 2 + (s14); n2 = n2 * 2 + (s13); n2 = n2 * 2 + (s12); n2 = n2 * 2 + (s11); n2 = n2 * 2 + (s10); n2 = n2 * 2 + (s9); n2 = n2 * 2 + (s8); n2 = n2 * 2 + (s7); n2 = n2 * 2 + (s6); n2 = n2 * 2 + (s5); n2 = n2 * 2 + (s4); n2 = n2 * 2 + (s3); n2 = n2 * 2 + (s2); n2 = n2 * 2 + (s1); n2 = n2 * 2 + (s0); }; }; }; }; int f2 = fib(n2); int ans; { int cout; { int a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15; { int temp = (f1); { a0 = temp % 2; if (a0 < 0) a0 = -a0; temp = temp / 2; }; { a1 = temp % 2; if (a1 < 0) a1 = -a1; temp = temp / 2; }; { a2 = temp % 2; if (a2 < 0) a2 = -a2; temp = temp / 2; }; { a3 = temp % 2; if (a3 < 0) a3 = -a3; temp = temp / 2; }; { a4 = temp % 2; if (a4 < 0) a4 = -a4; temp = temp / 2; }; { a5 = temp % 2; if (a5 < 0) a5 = -a5; temp = temp / 2; }; { a6 = temp % 2; if (a6 < 0) a6 = -a6; temp = temp / 2; }; { a7 = temp % 2; if (a7 < 0) a7 = -a7; temp = temp / 2; }; { a8 = temp % 2; if (a8 < 0) a8 = -a8; temp = temp / 2; }; { a9 = temp % 2; if (a9 < 0) a9 = -a9; temp = temp / 2; }; { a10 = temp % 2; if (a10 < 0) a10 = -a10; temp = temp / 2; }; { a11 = temp % 2; if (a11 < 0) a11 = -a11; temp = temp / 2; }; { a12 = temp % 2; if (a12 < 0) a12 = -a12; temp = temp / 2; }; { a13 = temp % 2; if (a13 < 0) a13 = -a13; temp = temp / 2; }; { a14 = temp % 2; if (a14 < 0) a14 = -a14; temp = temp / 2; }; { a15 = temp % 2; if (a15 < 0) a15 = -a15; temp = temp / 2; }; }; int b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15; { int temp = (f2); { b0 = temp % 2; if (b0 < 0) b0 = -b0; temp = temp / 2; }; { b1 = temp % 2; if (b1 < 0) b1 = -b1; temp = temp / 2; }; { b2 = temp % 2; if (b2 < 0) b2 = -b2; temp = temp / 2; }; { b3 = temp % 2; if (b3 < 0) b3 = -b3; temp = temp / 2; }; { b4 = temp % 2; if (b4 < 0) b4 = -b4; temp = temp / 2; }; { b5 = temp % 2; if (b5 < 0) b5 = -b5; temp = temp / 2; }; { b6 = temp % 2; if (b6 < 0) b6 = -b6; temp = temp / 2; }; { b7 = temp % 2; if (b7 < 0) b7 = -b7; temp = temp / 2; }; { b8 = temp % 2; if (b8 < 0) b8 = -b8; temp = temp / 2; }; { b9 = temp % 2; if (b9 < 0) b9 = -b9; temp = temp / 2; }; { b10 = temp % 2; if (b10 < 0) b10 = -b10; temp = temp / 2; }; { b11 = temp % 2; if (b11 < 0) b11 = -b11; temp = temp / 2; }; { b12 = temp % 2; if (b12 < 0) b12 = -b12; temp = temp / 2; }; { b13 = temp % 2; if (b13 < 0) b13 = -b13; temp = temp / 2; }; { b14 = temp % 2; if (b14 < 0) b14 = -b14; temp = temp / 2; }; { b15 = temp % 2; if (b15 < 0) b15 = -b15; temp = temp / 2; }; }; int c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14; int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15; { int a_xor_b; { int a_or_b; { if ((a0) || (b0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s0 = 1; } else { s0 = 0; } }; }; int a_and_b; { if ((a0) && (b0)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c0 = 1; } else { c0 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a1) || (b1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c0)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c0)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s1 = 1; } else { s1 = 0; } }; }; int a_and_b; { if ((a1) && (b1)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c0)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c1 = 1; } else { c1 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a2) || (b2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c1)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c1)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s2 = 1; } else { s2 = 0; } }; }; int a_and_b; { if ((a2) && (b2)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c1)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c2 = 1; } else { c2 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a3) || (b3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c2)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c2)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s3 = 1; } else { s3 = 0; } }; }; int a_and_b; { if ((a3) && (b3)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c2)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c3 = 1; } else { c3 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a4) || (b4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c3)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c3)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s4 = 1; } else { s4 = 0; } }; }; int a_and_b; { if ((a4) && (b4)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c3)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c4 = 1; } else { c4 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a5) || (b5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c4)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c4)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s5 = 1; } else { s5 = 0; } }; }; int a_and_b; { if ((a5) && (b5)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c4)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c5 = 1; } else { c5 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a6) || (b6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c5)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c5)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s6 = 1; } else { s6 = 0; } }; }; int a_and_b; { if ((a6) && (b6)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c5)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c6 = 1; } else { c6 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a7) || (b7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c6)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c6)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s7 = 1; } else { s7 = 0; } }; }; int a_and_b; { if ((a7) && (b7)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c6)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c7 = 1; } else { c7 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a8) || (b8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c7)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c7)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s8 = 1; } else { s8 = 0; } }; }; int a_and_b; { if ((a8) && (b8)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c7)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c8 = 1; } else { c8 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a9) || (b9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c8)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c8)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s9 = 1; } else { s9 = 0; } }; }; int a_and_b; { if ((a9) && (b9)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c8)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c9 = 1; } else { c9 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a10) || (b10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c9)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c9)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s10 = 1; } else { s10 = 0; } }; }; int a_and_b; { if ((a10) && (b10)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c9)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c10 = 1; } else { c10 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a11) || (b11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c10)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c10)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s11 = 1; } else { s11 = 0; } }; }; int a_and_b; { if ((a11) && (b11)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c10)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c11 = 1; } else { c11 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a12) || (b12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c11)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c11)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s12 = 1; } else { s12 = 0; } }; }; int a_and_b; { if ((a12) && (b12)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c11)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c12 = 1; } else { c12 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a13) || (b13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c12)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c12)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s13 = 1; } else { s13 = 0; } }; }; int a_and_b; { if ((a13) && (b13)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c12)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c13 = 1; } else { c13 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a14) || (b14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c13)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c13)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s14 = 1; } else { s14 = 0; } }; }; int a_and_b; { if ((a14) && (b14)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c13)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { c14 = 1; } else { c14 = 0; } }; }; { int a_xor_b; { int a_or_b; { if ((a15) || (b15)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { a_xor_b = 1; } else { a_xor_b = 0; } }; }; { int a_or_b; { if ((a_xor_b) || (c14)) { a_or_b = 1; } else { a_or_b = 0; } }; int a_and_b; { if ((a_xor_b) && (c14)) { a_and_b = 1; } else { a_and_b = 0; } }; int a_nand_b; { if (!(a_and_b)) { a_nand_b = 1; } else { a_nand_b = 0; } }; { if ((a_or_b) && (a_nand_b)) { s15 = 1; } else { s15 = 0; } }; }; int a_and_b; { if ((a15) && (b15)) { a_and_b = 1; } else { a_and_b = 0; } }; int ab_and_cin; { if ((a_xor_b) && (c14)) { ab_and_cin = 1; } else { ab_and_cin = 0; } }; { if ((a_and_b) || (ab_and_cin)) { cout = 1; } else { cout = 0; } }; }; { ans = 0; ans = ans * 2 + (s15); ans = ans * 2 + (s14); ans = ans * 2 + (s13); ans = ans * 2 + (s12); ans = ans * 2 + (s11); ans = ans * 2 + (s10); ans = ans * 2 + (s9); ans = ans * 2 + (s8); ans = ans * 2 + (s7); ans = ans * 2 + (s6); ans = ans * 2 + (s5); ans = ans * 2 + (s4); ans = ans * 2 + (s3); ans = ans * 2 + (s2); ans = ans * 2 + (s1); ans = ans * 2 + (s0); }; }; }; return ans; } int main() { int i = 1; while (i <= 20) { putch(102); putch(105); putch(98); putch(40); putint(i); putch(41); putch(32); putch(61); putch(32); putint(fib(i)); putch(10); i = i + 1; } return 0; } \ No newline at end of file diff --git a/hidden_functional_c/sy/36_rotate.sy b/hidden_functional_c/sy/36_rotate.sy index 6fb56f1..1d76432 100644 --- a/hidden_functional_c/sy/36_rotate.sy +++ b/hidden_functional_c/sy/36_rotate.sy @@ -1,112 +1,81 @@ -#include "sylib.h" - -#include - -#define MAX_WIDTH 1024 -// const int MAX_WIDTH = 1024 -#define MAX_HEIGHT 1024 +const int MAX_WIDTH = 1024, MAX_HEIGHT = 1024; int image[MAX_WIDTH * MAX_HEIGHT], width, height; const float PI = 3.14159265359, TWO_PI = 6.28318530718, EPSILON = 1e-6; -float my_fabs(float x) -{ - if (x > 0) { - return x; - } - return -x; +float my_fabs(float x) { + if (x > 0) return x; + return -x; } float p(float x) { return 3 * x - 4 * x * x * x; } -float my_sin_impl(float x) -{ - if (my_fabs(x) <= EPSILON) { - return x; - } - return p(my_sin_impl(x / 3.0)); +float my_sin_impl(float x) { + if (my_fabs(x) <= EPSILON) return x; + return p(my_sin_impl(x / 3.0)); } -float my_sin(float x) -{ - if (x > TWO_PI || x < -TWO_PI) { - int xx = x / TWO_PI; - x = x - xx * TWO_PI; - } - if (x > PI) { - x = x - TWO_PI; - } - if (x < -PI) { - x = x + TWO_PI; - } - return my_sin_impl(x); +float my_sin(float x) { + if (x > TWO_PI || x < -TWO_PI) { + int xx = x / TWO_PI; + x = x - xx * TWO_PI; + } + if (x > PI) x = x - TWO_PI; + if (x < -PI) x = x + TWO_PI; + return my_sin_impl(x); } float my_cos(float x) { return my_sin(x + PI / 2); } -int read_image() -{ - if (getch() != 80 || getch() != 50) - return -1; - width = getint(); - height = getint(); - if (width > MAX_WIDTH || height > MAX_HEIGHT || getint() != 255) - return -1; - int y = 0; - while (y < height) { - int x = 0; - while (x < width) { - image[y * width + x] = getint(); - x = x + 1; - } - y = y + 1; +int read_image() { + if (getch() != 80 || getch() != 50) return -1; + width = getint(); + height = getint(); + if (width > MAX_WIDTH || height > MAX_HEIGHT || getint() != 255) return -1; + int y = 0; + while (y < height) { + int x = 0; + while (x < width) { + image[y * width + x] = getint(); + x = x + 1; } - return 0; + y = y + 1; + } + return 0; } -int rotate(int x, int y, float rad) -{ - float sinma = my_sin(rad), cosma = my_cos(rad); - int hwidth = width / 2, hheight = height / 2; - int xt = x - hwidth, yt = y - hheight; - int src_x = xt * cosma - yt * sinma + hwidth, - src_y = xt * sinma + yt * cosma + hheight; - if (src_x < 0 || src_x >= width || src_y < 0 || src_y >= height) - return 0; - return image[src_y * width + src_x]; +int rotate(int x, int y, float rad) { + float sinma = my_sin(rad), cosma = my_cos(rad); + int hwidth = width / 2, hheight = height / 2; + int xt = x - hwidth, yt = y - hheight; + int src_x = xt * cosma - yt * sinma + hwidth, + src_y = xt * sinma + yt * cosma + hheight; + if (src_x < 0 || src_x >= width || src_y < 0 || src_y >= height) return 0; + return image[src_y * width + src_x]; } -void write_pgm(float rad) -{ - putch(80); - putch(50); - putch(10); // P2 - putint(width); - putch(32); - putint(height); - putch(32); // width height - putint(255); - putch(10); // 255 - int y = 0; - while (y < height) { - int x = 0; - while (x < width) { - putint(rotate(x, y, rad)); - putch(32); - x = x + 1; - } - putch(10); - y = y + 1; +void write_pgm(float rad) { + putch(80); putch(50); putch(10); // P2 + putint(width); putch(32); putint(height); putch(32); // width height + putint(255); putch(10); // 255 + int y = 0; + while (y < height) { + int x = 0; + while (x < width) { + putint(rotate(x, y, rad)); + putch(32); + x = x + 1; } + putch(10); + y = y + 1; + } } -int main() -{ - memset(image, 0, MAX_WIDTH * MAX_HEIGHT); - float rad = getfloat(); - getch(); - if (read_image() < 0) - return -1; - write_pgm(rad); - return 0; -} +int main() { + float rad = getfloat(); + getch(); + if (read_image() < 0) return -1; + write_pgm(rad); + return 0; + +} \ No newline at end of file diff --git a/hidden_functional_c/sy/37_dct.sy b/hidden_functional_c/sy/37_dct.sy index 6e87500..f552fc1 100644 --- a/hidden_functional_c/sy/37_dct.sy +++ b/hidden_functional_c/sy/37_dct.sy @@ -1,149 +1,132 @@ -#include "sylib.h" - -#include // reference: // https://stackoverflow.com/questions/8310749/discrete-cosine-transform-dct-implementation-c -// const int MAX_DIM_X = 8, MAX_DIM_Y = 8; - -#define MAX_DIM_X 8 -#define MAX_DIM_Y 8 - +const int MAX_DIM_X = 8, MAX_DIM_Y = 8; float test_block[MAX_DIM_X][MAX_DIM_Y]; float test_dct[MAX_DIM_X][MAX_DIM_Y]; float test_idct[MAX_DIM_X][MAX_DIM_Y]; const float PI = 3.14159265359, TWO_PI = 6.28318530718, EPSILON = 1e-6; -float my_fabs(float x) -{ - if (x > 0) - return x; - return -x; +float my_fabs(float x) { + if (x > 0) return x; + return -x; } float p(float x) { return 3 * x - 4 * x * x * x; } -float my_sin_impl(float x) -{ - if (my_fabs(x) <= EPSILON) - return x; - return p(my_sin_impl(x / 3.0)); +float my_sin_impl(float x) { + if (my_fabs(x) <= EPSILON) return x; + return p(my_sin_impl(x / 3.0)); } -float my_sin(float x) -{ - if (x > TWO_PI || x < -TWO_PI) { - int xx = x / TWO_PI; - x = x - xx * TWO_PI; - } - if (x > PI) - x = x - TWO_PI; - if (x < -PI) - x = x + TWO_PI; - return my_sin_impl(x); +float my_sin(float x) { + if (x > TWO_PI || x < -TWO_PI) { + int xx = x / TWO_PI; + x = x - xx * TWO_PI; + } + if (x > PI) x = x - TWO_PI; + if (x < -PI) x = x + TWO_PI; + return my_sin_impl(x); } float my_cos(float x) { return my_sin(x + PI / 2); } -void write_mat(float mat[][MAX_DIM_Y], int n, int m) -{ - int i = 0; - while (i < n) { - putfloat(mat[i][0]); - int j = 1; - while (j < m) { - putch(32); - putfloat(mat[i][j]); - j = j + 1; - } - putch(10); - i = i + 1; +void write_mat(float mat[][MAX_DIM_Y], int n, int m) { + int i = 0; + while (i < n) { + putfloat(mat[i][0]); + int j = 1; + while (j < m) { + putch(32); + putfloat(mat[i][j]); + j = j + 1; } putch(10); + i = i + 1; + } + putch(10); } -void dct(float dct_mat[][MAX_DIM_Y], float mat[][MAX_DIM_Y], int n, int m) -{ - int u = 0; - while (u < n) { - int v = 0; - while (v < m) { - dct_mat[u][v] = 0; - int i = 0; - while (i < n) { - int j = 0; - while (j < m) { - dct_mat[u][v] = dct_mat[u][v] + mat[i][j] * my_cos(PI / n * (i + 1. / 2.) * u) * my_cos(PI / m * (j + 1. / 2.) * v); - j = j + 1; - } - i = i + 1; - } - v = v + 1; - } - u = u + 1; - } -} - -void idct(float mat[][MAX_DIM_Y], float dct_mat[][MAX_DIM_Y], int n, int m) -{ - int u = 0; - while (u < n) { - int v = 0; - while (v < m) { - mat[u][v] = 1 / 4. * dct_mat[0][0]; - int i, j; - - i = 1; - while (i < n) { - mat[u][v] = mat[u][v] + 1 / 2. * dct_mat[i][0]; - i = i + 1; - } - j = 1; - while (j < m) { - mat[u][v] = mat[u][v] + 1 / 2. * dct_mat[0][j]; - j = j + 1; - } - - i = 1; - while (i < n) { - j = 1; - while (j < m) { - mat[u][v] = mat[u][v] + dct_mat[i][j] * my_cos(PI / n * (u + 1. / 2.) * i) * my_cos(PI / m * (v + 1. / 2.) * j); - j = j + 1; - } - i = i + 1; - } - mat[u][v] = mat[u][v] * 2. / n * 2. / m; - v = v + 1; - } - u = u + 1; - } -} - -int main() -{ - int dim_x = getint(), dim_y = getint(); - - memset(test_block, 0, MAX_DIM_X * MAX_DIM_Y); - memset(test_dct, 0, MAX_DIM_X * MAX_DIM_Y); - memset(test_idct, 0, MAX_DIM_X * MAX_DIM_Y); - - int i = 0; - while (i < dim_x) { +void dct(float dct_mat[][MAX_DIM_Y], float mat[][MAX_DIM_Y], int n, int m) { + int u = 0; + while (u < n) { + int v = 0; + while (v < m) { + dct_mat[u][v] = 0; + int i = 0; + while (i < n) { int j = 0; - while (j < dim_y) { - test_block[i][j] = getfloat(); - j = j + 1; + while (j < m) { + dct_mat[u][v] = + dct_mat[u][v] + mat[i][j] * my_cos(PI / n * (i + 1. / 2.) * u) * + my_cos(PI / m * (j + 1. / 2.) * v); + j = j + 1; } i = i + 1; + } + v = v + 1; } - - dct(test_dct, test_block, dim_x, dim_y); - write_mat(test_dct, dim_x, dim_y); - - idct(test_idct, test_dct, dim_x, dim_y); - write_mat(test_idct, dim_x, dim_y); - - return 0; + u = u + 1; + } } + +void idct(float mat[][MAX_DIM_Y], float dct_mat[][MAX_DIM_Y], int n, int m) { + int u = 0; + while (u < n) { + int v = 0; + while (v < m) { + mat[u][v] = 1 / 4. * dct_mat[0][0]; + int i, j; + + i = 1; + while (i < n) { + mat[u][v] = mat[u][v] + 1 / 2. * dct_mat[i][0]; + i = i + 1; + } + j = 1; + while (j < m) { + mat[u][v] = mat[u][v] + 1 / 2. * dct_mat[0][j]; + j = j + 1; + } + + i = 1; + while (i < n) { + j = 1; + while (j < m) { + mat[u][v] = mat[u][v] + dct_mat[i][j] * + my_cos(PI / n * (u + 1. / 2.) * i) * + my_cos(PI / m * (v + 1. / 2.) * j); + j = j + 1; + } + i = i + 1; + } + mat[u][v] = mat[u][v] * 2. / n * 2. / m; + v = v + 1; + } + u = u + 1; + } +} + +int main() { + int dim_x = getint(), dim_y = getint(); + + int i = 0; + while (i < dim_x) { + int j = 0; + while (j < dim_y) { + test_block[i][j] = getfloat(); + j = j + 1; + } + i = i + 1; + } + + dct(test_dct, test_block, dim_x, dim_y); + write_mat(test_dct, dim_x, dim_y); + + idct(test_idct, test_dct, dim_x, dim_y); + write_mat(test_idct, dim_x, dim_y); + + return 0; + +} \ No newline at end of file