1 # ARIA (RFC 5794, A Description of the ARIA Encryption Algorithm, 2010): a 2 # 128-bit block cipher with 128-, 192- or 256-bit keys (12, 14 or 16 3 # rounds), as a cipher for cipher-modes' modes (~LcAriaKey, 4 # ~LcAria.encrypt, ~LcAria.decrypt). 5 # 6 # Each round but the last is the round key XORed in, a substitution layer 7 # (SL1 in odd rounds, SL2 in even ones) and the diffusion layer A; the last 8 # is the round key, SL2 and the final round key. SL1 applies SB1, SB2, SB3, 9 # SB4 to the bytes in turn and SL2 applies SB3, SB4, SB1, SB2; SB3 and SB4 10 # are the inverses of SB1 and SB2, so SL2 undoes SL1 and SL1 undoes SL2. 11 # 12 # The cipher works on the block's 16 bytes, each kept as its eight bits 13 # (LcAriaSt), and the key holds it as a list of steps. Decryption undoes the 14 # steps last to first: a round key by XOR, SL1 by SL2 and SL2 by SL1, A by 15 # its elementary steps undone in reverse order (gen/tables.py writes A as a 16 # chain of steps x_a ^= x_b). That is the same function as RFC 5794's 17 # decryption with the keys dk (A is an involution), and it makes 18 # decrypt(encrypt(b)) == b provable for every key and block: each S-box and 19 # its inverse are checked on all 256 bytes, and every other step is undone 20 # by XOR. The S-boxes are decision trees on a byte's bits (no table is built 21 # at run time); the key schedule works on whole words. 22 import Base 23 import bend-osdev-bytes@0.1.0.0/bytes.bend as B 24 import bend-osdev-word64@0.1.0.0/word64.bend as W 25 import bend-osdev-cipher-modes@0.1.0.0/cipher_modes.bend as M 26 import ./legacy_ciphers.bend as L 27 28 # BEGIN GENERATED by gen/tables.py: sboxes 29 # SB1 (RFC 5794, 2.4.2; the AES S-box), on a byte's bits, least significant 30 # first 31 def aria.sb1(w0: Word(8n)) -> Word(8n): 32 match w0: 33 case WCon{False{}, w1}: 34 match w1: 35 case WCon{False{}, w2}: 36 match w2: 37 case WCon{False{}, w3}: 38 match w3: 39 case WCon{False{}, w4}: 40 match w4: 41 case WCon{False{}, w5}: 42 match w5: 43 case WCon{False{}, w6}: 44 match w6: 45 case WCon{False{}, w7}: 46 match w7: 47 case WCon{False{}, w8}: 48 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 49 case WCon{True{}, w8}: 50 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 51 case WCon{True{}, w7}: 52 match w7: 53 case WCon{False{}, w8}: 54 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 55 case WCon{True{}, w8}: 56 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 57 case WCon{True{}, w6}: 58 match w6: 59 case WCon{False{}, w7}: 60 match w7: 61 case WCon{False{}, w8}: 62 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 63 case WCon{True{}, w8}: 64 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 65 case WCon{True{}, w7}: 66 match w7: 67 case WCon{False{}, w8}: 68 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 69 case WCon{True{}, w8}: 70 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 71 case WCon{True{}, w5}: 72 match w5: 73 case WCon{False{}, w6}: 74 match w6: 75 case WCon{False{}, w7}: 76 match w7: 77 case WCon{False{}, w8}: 78 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 79 case WCon{True{}, w8}: 80 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 81 case WCon{True{}, w7}: 82 match w7: 83 case WCon{False{}, w8}: 84 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 85 case WCon{True{}, w8}: 86 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 87 case WCon{True{}, w6}: 88 match w6: 89 case WCon{False{}, w7}: 90 match w7: 91 case WCon{False{}, w8}: 92 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 93 case WCon{True{}, w8}: 94 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 95 case WCon{True{}, w7}: 96 match w7: 97 case WCon{False{}, w8}: 98 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 99 case WCon{True{}, w8}: 100 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 101 case WCon{True{}, w4}: 102 match w4: 103 case WCon{False{}, w5}: 104 match w5: 105 case WCon{False{}, w6}: 106 match w6: 107 case WCon{False{}, w7}: 108 match w7: 109 case WCon{False{}, w8}: 110 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 111 case WCon{True{}, w8}: 112 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 113 case WCon{True{}, w7}: 114 match w7: 115 case WCon{False{}, w8}: 116 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 117 case WCon{True{}, w8}: 118 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 119 case WCon{True{}, w6}: 120 match w6: 121 case WCon{False{}, w7}: 122 match w7: 123 case WCon{False{}, w8}: 124 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 125 case WCon{True{}, w8}: 126 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 127 case WCon{True{}, w7}: 128 match w7: 129 case WCon{False{}, w8}: 130 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 131 case WCon{True{}, w8}: 132 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 133 case WCon{True{}, w5}: 134 match w5: 135 case WCon{False{}, w6}: 136 match w6: 137 case WCon{False{}, w7}: 138 match w7: 139 case WCon{False{}, w8}: 140 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 141 case WCon{True{}, w8}: 142 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 143 case WCon{True{}, w7}: 144 match w7: 145 case WCon{False{}, w8}: 146 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 147 case WCon{True{}, w8}: 148 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 149 case WCon{True{}, w6}: 150 match w6: 151 case WCon{False{}, w7}: 152 match w7: 153 case WCon{False{}, w8}: 154 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 155 case WCon{True{}, w8}: 156 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 157 case WCon{True{}, w7}: 158 match w7: 159 case WCon{False{}, w8}: 160 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 161 case WCon{True{}, w8}: 162 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 163 case WCon{True{}, w3}: 164 match w3: 165 case WCon{False{}, w4}: 166 match w4: 167 case WCon{False{}, w5}: 168 match w5: 169 case WCon{False{}, w6}: 170 match w6: 171 case WCon{False{}, w7}: 172 match w7: 173 case WCon{False{}, w8}: 174 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 175 case WCon{True{}, w8}: 176 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 177 case WCon{True{}, w7}: 178 match w7: 179 case WCon{False{}, w8}: 180 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 181 case WCon{True{}, w8}: 182 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 183 case WCon{True{}, w6}: 184 match w6: 185 case WCon{False{}, w7}: 186 match w7: 187 case WCon{False{}, w8}: 188 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 189 case WCon{True{}, w8}: 190 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 191 case WCon{True{}, w7}: 192 match w7: 193 case WCon{False{}, w8}: 194 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 195 case WCon{True{}, w8}: 196 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 197 case WCon{True{}, w5}: 198 match w5: 199 case WCon{False{}, w6}: 200 match w6: 201 case WCon{False{}, w7}: 202 match w7: 203 case WCon{False{}, w8}: 204 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 205 case WCon{True{}, w8}: 206 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 207 case WCon{True{}, w7}: 208 match w7: 209 case WCon{False{}, w8}: 210 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 211 case WCon{True{}, w8}: 212 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 213 case WCon{True{}, w6}: 214 match w6: 215 case WCon{False{}, w7}: 216 match w7: 217 case WCon{False{}, w8}: 218 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 219 case WCon{True{}, w8}: 220 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 221 case WCon{True{}, w7}: 222 match w7: 223 case WCon{False{}, w8}: 224 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 225 case WCon{True{}, w8}: 226 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 227 case WCon{True{}, w4}: 228 match w4: 229 case WCon{False{}, w5}: 230 match w5: 231 case WCon{False{}, w6}: 232 match w6: 233 case WCon{False{}, w7}: 234 match w7: 235 case WCon{False{}, w8}: 236 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 237 case WCon{True{}, w8}: 238 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 239 case WCon{True{}, w7}: 240 match w7: 241 case WCon{False{}, w8}: 242 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 243 case WCon{True{}, w8}: 244 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 245 case WCon{True{}, w6}: 246 match w6: 247 case WCon{False{}, w7}: 248 match w7: 249 case WCon{False{}, w8}: 250 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 251 case WCon{True{}, w8}: 252 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 253 case WCon{True{}, w7}: 254 match w7: 255 case WCon{False{}, w8}: 256 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 257 case WCon{True{}, w8}: 258 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 259 case WCon{True{}, w5}: 260 match w5: 261 case WCon{False{}, w6}: 262 match w6: 263 case WCon{False{}, w7}: 264 match w7: 265 case WCon{False{}, w8}: 266 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 267 case WCon{True{}, w8}: 268 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 269 case WCon{True{}, w7}: 270 match w7: 271 case WCon{False{}, w8}: 272 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 273 case WCon{True{}, w8}: 274 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 275 case WCon{True{}, w6}: 276 match w6: 277 case WCon{False{}, w7}: 278 match w7: 279 case WCon{False{}, w8}: 280 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 281 case WCon{True{}, w8}: 282 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 283 case WCon{True{}, w7}: 284 match w7: 285 case WCon{False{}, w8}: 286 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 287 case WCon{True{}, w8}: 288 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 289 case WCon{True{}, w2}: 290 match w2: 291 case WCon{False{}, w3}: 292 match w3: 293 case WCon{False{}, w4}: 294 match w4: 295 case WCon{False{}, w5}: 296 match w5: 297 case WCon{False{}, w6}: 298 match w6: 299 case WCon{False{}, w7}: 300 match w7: 301 case WCon{False{}, w8}: 302 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 303 case WCon{True{}, w8}: 304 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 305 case WCon{True{}, w7}: 306 match w7: 307 case WCon{False{}, w8}: 308 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 309 case WCon{True{}, w8}: 310 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 311 case WCon{True{}, w6}: 312 match w6: 313 case WCon{False{}, w7}: 314 match w7: 315 case WCon{False{}, w8}: 316 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 317 case WCon{True{}, w8}: 318 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 319 case WCon{True{}, w7}: 320 match w7: 321 case WCon{False{}, w8}: 322 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 323 case WCon{True{}, w8}: 324 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 325 case WCon{True{}, w5}: 326 match w5: 327 case WCon{False{}, w6}: 328 match w6: 329 case WCon{False{}, w7}: 330 match w7: 331 case WCon{False{}, w8}: 332 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 333 case WCon{True{}, w8}: 334 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 335 case WCon{True{}, w7}: 336 match w7: 337 case WCon{False{}, w8}: 338 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 339 case WCon{True{}, w8}: 340 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 341 case WCon{True{}, w6}: 342 match w6: 343 case WCon{False{}, w7}: 344 match w7: 345 case WCon{False{}, w8}: 346 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 347 case WCon{True{}, w8}: 348 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 349 case WCon{True{}, w7}: 350 match w7: 351 case WCon{False{}, w8}: 352 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 353 case WCon{True{}, w8}: 354 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 355 case WCon{True{}, w4}: 356 match w4: 357 case WCon{False{}, w5}: 358 match w5: 359 case WCon{False{}, w6}: 360 match w6: 361 case WCon{False{}, w7}: 362 match w7: 363 case WCon{False{}, w8}: 364 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 365 case WCon{True{}, w8}: 366 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 367 case WCon{True{}, w7}: 368 match w7: 369 case WCon{False{}, w8}: 370 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 371 case WCon{True{}, w8}: 372 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 373 case WCon{True{}, w6}: 374 match w6: 375 case WCon{False{}, w7}: 376 match w7: 377 case WCon{False{}, w8}: 378 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 379 case WCon{True{}, w8}: 380 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 381 case WCon{True{}, w7}: 382 match w7: 383 case WCon{False{}, w8}: 384 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 385 case WCon{True{}, w8}: 386 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 387 case WCon{True{}, w5}: 388 match w5: 389 case WCon{False{}, w6}: 390 match w6: 391 case WCon{False{}, w7}: 392 match w7: 393 case WCon{False{}, w8}: 394 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 395 case WCon{True{}, w8}: 396 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 397 case WCon{True{}, w7}: 398 match w7: 399 case WCon{False{}, w8}: 400 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 401 case WCon{True{}, w8}: 402 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 403 case WCon{True{}, w6}: 404 match w6: 405 case WCon{False{}, w7}: 406 match w7: 407 case WCon{False{}, w8}: 408 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 409 case WCon{True{}, w8}: 410 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 411 case WCon{True{}, w7}: 412 match w7: 413 case WCon{False{}, w8}: 414 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 415 case WCon{True{}, w8}: 416 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 417 case WCon{True{}, w3}: 418 match w3: 419 case WCon{False{}, w4}: 420 match w4: 421 case WCon{False{}, w5}: 422 match w5: 423 case WCon{False{}, w6}: 424 match w6: 425 case WCon{False{}, w7}: 426 match w7: 427 case WCon{False{}, w8}: 428 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 429 case WCon{True{}, w8}: 430 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 431 case WCon{True{}, w7}: 432 match w7: 433 case WCon{False{}, w8}: 434 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 435 case WCon{True{}, w8}: 436 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 437 case WCon{True{}, w6}: 438 match w6: 439 case WCon{False{}, w7}: 440 match w7: 441 case WCon{False{}, w8}: 442 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 443 case WCon{True{}, w8}: 444 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 445 case WCon{True{}, w7}: 446 match w7: 447 case WCon{False{}, w8}: 448 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 449 case WCon{True{}, w8}: 450 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 451 case WCon{True{}, w5}: 452 match w5: 453 case WCon{False{}, w6}: 454 match w6: 455 case WCon{False{}, w7}: 456 match w7: 457 case WCon{False{}, w8}: 458 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 459 case WCon{True{}, w8}: 460 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 461 case WCon{True{}, w7}: 462 match w7: 463 case WCon{False{}, w8}: 464 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 465 case WCon{True{}, w8}: 466 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 467 case WCon{True{}, w6}: 468 match w6: 469 case WCon{False{}, w7}: 470 match w7: 471 case WCon{False{}, w8}: 472 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 473 case WCon{True{}, w8}: 474 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 475 case WCon{True{}, w7}: 476 match w7: 477 case WCon{False{}, w8}: 478 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 479 case WCon{True{}, w8}: 480 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 481 case WCon{True{}, w4}: 482 match w4: 483 case WCon{False{}, w5}: 484 match w5: 485 case WCon{False{}, w6}: 486 match w6: 487 case WCon{False{}, w7}: 488 match w7: 489 case WCon{False{}, w8}: 490 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 491 case WCon{True{}, w8}: 492 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 493 case WCon{True{}, w7}: 494 match w7: 495 case WCon{False{}, w8}: 496 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 497 case WCon{True{}, w8}: 498 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 499 case WCon{True{}, w6}: 500 match w6: 501 case WCon{False{}, w7}: 502 match w7: 503 case WCon{False{}, w8}: 504 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 505 case WCon{True{}, w8}: 506 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 507 case WCon{True{}, w7}: 508 match w7: 509 case WCon{False{}, w8}: 510 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 511 case WCon{True{}, w8}: 512 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 513 case WCon{True{}, w5}: 514 match w5: 515 case WCon{False{}, w6}: 516 match w6: 517 case WCon{False{}, w7}: 518 match w7: 519 case WCon{False{}, w8}: 520 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 521 case WCon{True{}, w8}: 522 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 523 case WCon{True{}, w7}: 524 match w7: 525 case WCon{False{}, w8}: 526 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 527 case WCon{True{}, w8}: 528 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 529 case WCon{True{}, w6}: 530 match w6: 531 case WCon{False{}, w7}: 532 match w7: 533 case WCon{False{}, w8}: 534 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 535 case WCon{True{}, w8}: 536 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 537 case WCon{True{}, w7}: 538 match w7: 539 case WCon{False{}, w8}: 540 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 541 case WCon{True{}, w8}: 542 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 543 case WCon{True{}, w1}: 544 match w1: 545 case WCon{False{}, w2}: 546 match w2: 547 case WCon{False{}, w3}: 548 match w3: 549 case WCon{False{}, w4}: 550 match w4: 551 case WCon{False{}, w5}: 552 match w5: 553 case WCon{False{}, w6}: 554 match w6: 555 case WCon{False{}, w7}: 556 match w7: 557 case WCon{False{}, w8}: 558 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 559 case WCon{True{}, w8}: 560 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 561 case WCon{True{}, w7}: 562 match w7: 563 case WCon{False{}, w8}: 564 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 565 case WCon{True{}, w8}: 566 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 567 case WCon{True{}, w6}: 568 match w6: 569 case WCon{False{}, w7}: 570 match w7: 571 case WCon{False{}, w8}: 572 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 573 case WCon{True{}, w8}: 574 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 575 case WCon{True{}, w7}: 576 match w7: 577 case WCon{False{}, w8}: 578 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 579 case WCon{True{}, w8}: 580 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 581 case WCon{True{}, w5}: 582 match w5: 583 case WCon{False{}, w6}: 584 match w6: 585 case WCon{False{}, w7}: 586 match w7: 587 case WCon{False{}, w8}: 588 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 589 case WCon{True{}, w8}: 590 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 591 case WCon{True{}, w7}: 592 match w7: 593 case WCon{False{}, w8}: 594 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 595 case WCon{True{}, w8}: 596 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 597 case WCon{True{}, w6}: 598 match w6: 599 case WCon{False{}, w7}: 600 match w7: 601 case WCon{False{}, w8}: 602 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 603 case WCon{True{}, w8}: 604 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 605 case WCon{True{}, w7}: 606 match w7: 607 case WCon{False{}, w8}: 608 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 609 case WCon{True{}, w8}: 610 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 611 case WCon{True{}, w4}: 612 match w4: 613 case WCon{False{}, w5}: 614 match w5: 615 case WCon{False{}, w6}: 616 match w6: 617 case WCon{False{}, w7}: 618 match w7: 619 case WCon{False{}, w8}: 620 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 621 case WCon{True{}, w8}: 622 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 623 case WCon{True{}, w7}: 624 match w7: 625 case WCon{False{}, w8}: 626 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 627 case WCon{True{}, w8}: 628 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 629 case WCon{True{}, w6}: 630 match w6: 631 case WCon{False{}, w7}: 632 match w7: 633 case WCon{False{}, w8}: 634 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 635 case WCon{True{}, w8}: 636 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 637 case WCon{True{}, w7}: 638 match w7: 639 case WCon{False{}, w8}: 640 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 641 case WCon{True{}, w8}: 642 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 643 case WCon{True{}, w5}: 644 match w5: 645 case WCon{False{}, w6}: 646 match w6: 647 case WCon{False{}, w7}: 648 match w7: 649 case WCon{False{}, w8}: 650 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 651 case WCon{True{}, w8}: 652 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 653 case WCon{True{}, w7}: 654 match w7: 655 case WCon{False{}, w8}: 656 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 657 case WCon{True{}, w8}: 658 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 659 case WCon{True{}, w6}: 660 match w6: 661 case WCon{False{}, w7}: 662 match w7: 663 case WCon{False{}, w8}: 664 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 665 case WCon{True{}, w8}: 666 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 667 case WCon{True{}, w7}: 668 match w7: 669 case WCon{False{}, w8}: 670 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 671 case WCon{True{}, w8}: 672 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 673 case WCon{True{}, w3}: 674 match w3: 675 case WCon{False{}, w4}: 676 match w4: 677 case WCon{False{}, w5}: 678 match w5: 679 case WCon{False{}, w6}: 680 match w6: 681 case WCon{False{}, w7}: 682 match w7: 683 case WCon{False{}, w8}: 684 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 685 case WCon{True{}, w8}: 686 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 687 case WCon{True{}, w7}: 688 match w7: 689 case WCon{False{}, w8}: 690 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 691 case WCon{True{}, w8}: 692 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 693 case WCon{True{}, w6}: 694 match w6: 695 case WCon{False{}, w7}: 696 match w7: 697 case WCon{False{}, w8}: 698 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 699 case WCon{True{}, w8}: 700 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 701 case WCon{True{}, w7}: 702 match w7: 703 case WCon{False{}, w8}: 704 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 705 case WCon{True{}, w8}: 706 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 707 case WCon{True{}, w5}: 708 match w5: 709 case WCon{False{}, w6}: 710 match w6: 711 case WCon{False{}, w7}: 712 match w7: 713 case WCon{False{}, w8}: 714 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 715 case WCon{True{}, w8}: 716 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 717 case WCon{True{}, w7}: 718 match w7: 719 case WCon{False{}, w8}: 720 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 721 case WCon{True{}, w8}: 722 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 723 case WCon{True{}, w6}: 724 match w6: 725 case WCon{False{}, w7}: 726 match w7: 727 case WCon{False{}, w8}: 728 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 729 case WCon{True{}, w8}: 730 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 731 case WCon{True{}, w7}: 732 match w7: 733 case WCon{False{}, w8}: 734 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 735 case WCon{True{}, w8}: 736 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 737 case WCon{True{}, w4}: 738 match w4: 739 case WCon{False{}, w5}: 740 match w5: 741 case WCon{False{}, w6}: 742 match w6: 743 case WCon{False{}, w7}: 744 match w7: 745 case WCon{False{}, w8}: 746 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 747 case WCon{True{}, w8}: 748 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 749 case WCon{True{}, w7}: 750 match w7: 751 case WCon{False{}, w8}: 752 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 753 case WCon{True{}, w8}: 754 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 755 case WCon{True{}, w6}: 756 match w6: 757 case WCon{False{}, w7}: 758 match w7: 759 case WCon{False{}, w8}: 760 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 761 case WCon{True{}, w8}: 762 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 763 case WCon{True{}, w7}: 764 match w7: 765 case WCon{False{}, w8}: 766 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 767 case WCon{True{}, w8}: 768 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 769 case WCon{True{}, w5}: 770 match w5: 771 case WCon{False{}, w6}: 772 match w6: 773 case WCon{False{}, w7}: 774 match w7: 775 case WCon{False{}, w8}: 776 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 777 case WCon{True{}, w8}: 778 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 779 case WCon{True{}, w7}: 780 match w7: 781 case WCon{False{}, w8}: 782 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 783 case WCon{True{}, w8}: 784 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 785 case WCon{True{}, w6}: 786 match w6: 787 case WCon{False{}, w7}: 788 match w7: 789 case WCon{False{}, w8}: 790 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 791 case WCon{True{}, w8}: 792 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 793 case WCon{True{}, w7}: 794 match w7: 795 case WCon{False{}, w8}: 796 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 797 case WCon{True{}, w8}: 798 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 799 case WCon{True{}, w2}: 800 match w2: 801 case WCon{False{}, w3}: 802 match w3: 803 case WCon{False{}, w4}: 804 match w4: 805 case WCon{False{}, w5}: 806 match w5: 807 case WCon{False{}, w6}: 808 match w6: 809 case WCon{False{}, w7}: 810 match w7: 811 case WCon{False{}, w8}: 812 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 813 case WCon{True{}, w8}: 814 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 815 case WCon{True{}, w7}: 816 match w7: 817 case WCon{False{}, w8}: 818 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 819 case WCon{True{}, w8}: 820 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 821 case WCon{True{}, w6}: 822 match w6: 823 case WCon{False{}, w7}: 824 match w7: 825 case WCon{False{}, w8}: 826 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 827 case WCon{True{}, w8}: 828 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 829 case WCon{True{}, w7}: 830 match w7: 831 case WCon{False{}, w8}: 832 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 833 case WCon{True{}, w8}: 834 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 835 case WCon{True{}, w5}: 836 match w5: 837 case WCon{False{}, w6}: 838 match w6: 839 case WCon{False{}, w7}: 840 match w7: 841 case WCon{False{}, w8}: 842 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 843 case WCon{True{}, w8}: 844 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 845 case WCon{True{}, w7}: 846 match w7: 847 case WCon{False{}, w8}: 848 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 849 case WCon{True{}, w8}: 850 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 851 case WCon{True{}, w6}: 852 match w6: 853 case WCon{False{}, w7}: 854 match w7: 855 case WCon{False{}, w8}: 856 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 857 case WCon{True{}, w8}: 858 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 859 case WCon{True{}, w7}: 860 match w7: 861 case WCon{False{}, w8}: 862 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 863 case WCon{True{}, w8}: 864 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 865 case WCon{True{}, w4}: 866 match w4: 867 case WCon{False{}, w5}: 868 match w5: 869 case WCon{False{}, w6}: 870 match w6: 871 case WCon{False{}, w7}: 872 match w7: 873 case WCon{False{}, w8}: 874 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 875 case WCon{True{}, w8}: 876 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 877 case WCon{True{}, w7}: 878 match w7: 879 case WCon{False{}, w8}: 880 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 881 case WCon{True{}, w8}: 882 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 883 case WCon{True{}, w6}: 884 match w6: 885 case WCon{False{}, w7}: 886 match w7: 887 case WCon{False{}, w8}: 888 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 889 case WCon{True{}, w8}: 890 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 891 case WCon{True{}, w7}: 892 match w7: 893 case WCon{False{}, w8}: 894 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 895 case WCon{True{}, w8}: 896 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 897 case WCon{True{}, w5}: 898 match w5: 899 case WCon{False{}, w6}: 900 match w6: 901 case WCon{False{}, w7}: 902 match w7: 903 case WCon{False{}, w8}: 904 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 905 case WCon{True{}, w8}: 906 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 907 case WCon{True{}, w7}: 908 match w7: 909 case WCon{False{}, w8}: 910 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 911 case WCon{True{}, w8}: 912 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 913 case WCon{True{}, w6}: 914 match w6: 915 case WCon{False{}, w7}: 916 match w7: 917 case WCon{False{}, w8}: 918 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 919 case WCon{True{}, w8}: 920 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 921 case WCon{True{}, w7}: 922 match w7: 923 case WCon{False{}, w8}: 924 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 925 case WCon{True{}, w8}: 926 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 927 case WCon{True{}, w3}: 928 match w3: 929 case WCon{False{}, w4}: 930 match w4: 931 case WCon{False{}, w5}: 932 match w5: 933 case WCon{False{}, w6}: 934 match w6: 935 case WCon{False{}, w7}: 936 match w7: 937 case WCon{False{}, w8}: 938 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 939 case WCon{True{}, w8}: 940 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 941 case WCon{True{}, w7}: 942 match w7: 943 case WCon{False{}, w8}: 944 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 945 case WCon{True{}, w8}: 946 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 947 case WCon{True{}, w6}: 948 match w6: 949 case WCon{False{}, w7}: 950 match w7: 951 case WCon{False{}, w8}: 952 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 953 case WCon{True{}, w8}: 954 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 955 case WCon{True{}, w7}: 956 match w7: 957 case WCon{False{}, w8}: 958 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 959 case WCon{True{}, w8}: 960 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 961 case WCon{True{}, w5}: 962 match w5: 963 case WCon{False{}, w6}: 964 match w6: 965 case WCon{False{}, w7}: 966 match w7: 967 case WCon{False{}, w8}: 968 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 969 case WCon{True{}, w8}: 970 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 971 case WCon{True{}, w7}: 972 match w7: 973 case WCon{False{}, w8}: 974 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 975 case WCon{True{}, w8}: 976 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 977 case WCon{True{}, w6}: 978 match w6: 979 case WCon{False{}, w7}: 980 match w7: 981 case WCon{False{}, w8}: 982 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 983 case WCon{True{}, w8}: 984 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 985 case WCon{True{}, w7}: 986 match w7: 987 case WCon{False{}, w8}: 988 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 989 case WCon{True{}, w8}: 990 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 991 case WCon{True{}, w4}: 992 match w4: 993 case WCon{False{}, w5}: 994 match w5: 995 case WCon{False{}, w6}: 996 match w6: 997 case WCon{False{}, w7}: 998 match w7: 999 case WCon{False{}, w8}: 1000 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1001 case WCon{True{}, w8}: 1002 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1003 case WCon{True{}, w7}: 1004 match w7: 1005 case WCon{False{}, w8}: 1006 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1007 case WCon{True{}, w8}: 1008 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1009 case WCon{True{}, w6}: 1010 match w6: 1011 case WCon{False{}, w7}: 1012 match w7: 1013 case WCon{False{}, w8}: 1014 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1015 case WCon{True{}, w8}: 1016 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1017 case WCon{True{}, w7}: 1018 match w7: 1019 case WCon{False{}, w8}: 1020 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1021 case WCon{True{}, w8}: 1022 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1023 case WCon{True{}, w5}: 1024 match w5: 1025 case WCon{False{}, w6}: 1026 match w6: 1027 case WCon{False{}, w7}: 1028 match w7: 1029 case WCon{False{}, w8}: 1030 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1031 case WCon{True{}, w8}: 1032 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1033 case WCon{True{}, w7}: 1034 match w7: 1035 case WCon{False{}, w8}: 1036 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1037 case WCon{True{}, w8}: 1038 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1039 case WCon{True{}, w6}: 1040 match w6: 1041 case WCon{False{}, w7}: 1042 match w7: 1043 case WCon{False{}, w8}: 1044 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1045 case WCon{True{}, w8}: 1046 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1047 case WCon{True{}, w7}: 1048 match w7: 1049 case WCon{False{}, w8}: 1050 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1051 case WCon{True{}, w8}: 1052 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1053 1054 # SB2 (RFC 5794, 2.4.2) 1055 def aria.sb2(w0: Word(8n)) -> Word(8n): 1056 match w0: 1057 case WCon{False{}, w1}: 1058 match w1: 1059 case WCon{False{}, w2}: 1060 match w2: 1061 case WCon{False{}, w3}: 1062 match w3: 1063 case WCon{False{}, w4}: 1064 match w4: 1065 case WCon{False{}, w5}: 1066 match w5: 1067 case WCon{False{}, w6}: 1068 match w6: 1069 case WCon{False{}, w7}: 1070 match w7: 1071 case WCon{False{}, w8}: 1072 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1073 case WCon{True{}, w8}: 1074 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1075 case WCon{True{}, w7}: 1076 match w7: 1077 case WCon{False{}, w8}: 1078 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1079 case WCon{True{}, w8}: 1080 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1081 case WCon{True{}, w6}: 1082 match w6: 1083 case WCon{False{}, w7}: 1084 match w7: 1085 case WCon{False{}, w8}: 1086 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1087 case WCon{True{}, w8}: 1088 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1089 case WCon{True{}, w7}: 1090 match w7: 1091 case WCon{False{}, w8}: 1092 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1093 case WCon{True{}, w8}: 1094 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1095 case WCon{True{}, w5}: 1096 match w5: 1097 case WCon{False{}, w6}: 1098 match w6: 1099 case WCon{False{}, w7}: 1100 match w7: 1101 case WCon{False{}, w8}: 1102 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1103 case WCon{True{}, w8}: 1104 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1105 case WCon{True{}, w7}: 1106 match w7: 1107 case WCon{False{}, w8}: 1108 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1109 case WCon{True{}, w8}: 1110 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1111 case WCon{True{}, w6}: 1112 match w6: 1113 case WCon{False{}, w7}: 1114 match w7: 1115 case WCon{False{}, w8}: 1116 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1117 case WCon{True{}, w8}: 1118 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1119 case WCon{True{}, w7}: 1120 match w7: 1121 case WCon{False{}, w8}: 1122 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1123 case WCon{True{}, w8}: 1124 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1125 case WCon{True{}, w4}: 1126 match w4: 1127 case WCon{False{}, w5}: 1128 match w5: 1129 case WCon{False{}, w6}: 1130 match w6: 1131 case WCon{False{}, w7}: 1132 match w7: 1133 case WCon{False{}, w8}: 1134 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1135 case WCon{True{}, w8}: 1136 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1137 case WCon{True{}, w7}: 1138 match w7: 1139 case WCon{False{}, w8}: 1140 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1141 case WCon{True{}, w8}: 1142 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1143 case WCon{True{}, w6}: 1144 match w6: 1145 case WCon{False{}, w7}: 1146 match w7: 1147 case WCon{False{}, w8}: 1148 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1149 case WCon{True{}, w8}: 1150 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1151 case WCon{True{}, w7}: 1152 match w7: 1153 case WCon{False{}, w8}: 1154 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1155 case WCon{True{}, w8}: 1156 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1157 case WCon{True{}, w5}: 1158 match w5: 1159 case WCon{False{}, w6}: 1160 match w6: 1161 case WCon{False{}, w7}: 1162 match w7: 1163 case WCon{False{}, w8}: 1164 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1165 case WCon{True{}, w8}: 1166 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1167 case WCon{True{}, w7}: 1168 match w7: 1169 case WCon{False{}, w8}: 1170 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1171 case WCon{True{}, w8}: 1172 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1173 case WCon{True{}, w6}: 1174 match w6: 1175 case WCon{False{}, w7}: 1176 match w7: 1177 case WCon{False{}, w8}: 1178 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1179 case WCon{True{}, w8}: 1180 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1181 case WCon{True{}, w7}: 1182 match w7: 1183 case WCon{False{}, w8}: 1184 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1185 case WCon{True{}, w8}: 1186 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1187 case WCon{True{}, w3}: 1188 match w3: 1189 case WCon{False{}, w4}: 1190 match w4: 1191 case WCon{False{}, w5}: 1192 match w5: 1193 case WCon{False{}, w6}: 1194 match w6: 1195 case WCon{False{}, w7}: 1196 match w7: 1197 case WCon{False{}, w8}: 1198 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1199 case WCon{True{}, w8}: 1200 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1201 case WCon{True{}, w7}: 1202 match w7: 1203 case WCon{False{}, w8}: 1204 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1205 case WCon{True{}, w8}: 1206 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1207 case WCon{True{}, w6}: 1208 match w6: 1209 case WCon{False{}, w7}: 1210 match w7: 1211 case WCon{False{}, w8}: 1212 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1213 case WCon{True{}, w8}: 1214 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1215 case WCon{True{}, w7}: 1216 match w7: 1217 case WCon{False{}, w8}: 1218 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1219 case WCon{True{}, w8}: 1220 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1221 case WCon{True{}, w5}: 1222 match w5: 1223 case WCon{False{}, w6}: 1224 match w6: 1225 case WCon{False{}, w7}: 1226 match w7: 1227 case WCon{False{}, w8}: 1228 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1229 case WCon{True{}, w8}: 1230 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1231 case WCon{True{}, w7}: 1232 match w7: 1233 case WCon{False{}, w8}: 1234 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1235 case WCon{True{}, w8}: 1236 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1237 case WCon{True{}, w6}: 1238 match w6: 1239 case WCon{False{}, w7}: 1240 match w7: 1241 case WCon{False{}, w8}: 1242 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1243 case WCon{True{}, w8}: 1244 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1245 case WCon{True{}, w7}: 1246 match w7: 1247 case WCon{False{}, w8}: 1248 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1249 case WCon{True{}, w8}: 1250 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1251 case WCon{True{}, w4}: 1252 match w4: 1253 case WCon{False{}, w5}: 1254 match w5: 1255 case WCon{False{}, w6}: 1256 match w6: 1257 case WCon{False{}, w7}: 1258 match w7: 1259 case WCon{False{}, w8}: 1260 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1261 case WCon{True{}, w8}: 1262 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1263 case WCon{True{}, w7}: 1264 match w7: 1265 case WCon{False{}, w8}: 1266 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1267 case WCon{True{}, w8}: 1268 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1269 case WCon{True{}, w6}: 1270 match w6: 1271 case WCon{False{}, w7}: 1272 match w7: 1273 case WCon{False{}, w8}: 1274 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1275 case WCon{True{}, w8}: 1276 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1277 case WCon{True{}, w7}: 1278 match w7: 1279 case WCon{False{}, w8}: 1280 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1281 case WCon{True{}, w8}: 1282 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1283 case WCon{True{}, w5}: 1284 match w5: 1285 case WCon{False{}, w6}: 1286 match w6: 1287 case WCon{False{}, w7}: 1288 match w7: 1289 case WCon{False{}, w8}: 1290 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1291 case WCon{True{}, w8}: 1292 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1293 case WCon{True{}, w7}: 1294 match w7: 1295 case WCon{False{}, w8}: 1296 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1297 case WCon{True{}, w8}: 1298 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1299 case WCon{True{}, w6}: 1300 match w6: 1301 case WCon{False{}, w7}: 1302 match w7: 1303 case WCon{False{}, w8}: 1304 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1305 case WCon{True{}, w8}: 1306 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1307 case WCon{True{}, w7}: 1308 match w7: 1309 case WCon{False{}, w8}: 1310 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1311 case WCon{True{}, w8}: 1312 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1313 case WCon{True{}, w2}: 1314 match w2: 1315 case WCon{False{}, w3}: 1316 match w3: 1317 case WCon{False{}, w4}: 1318 match w4: 1319 case WCon{False{}, w5}: 1320 match w5: 1321 case WCon{False{}, w6}: 1322 match w6: 1323 case WCon{False{}, w7}: 1324 match w7: 1325 case WCon{False{}, w8}: 1326 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1327 case WCon{True{}, w8}: 1328 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1329 case WCon{True{}, w7}: 1330 match w7: 1331 case WCon{False{}, w8}: 1332 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1333 case WCon{True{}, w8}: 1334 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1335 case WCon{True{}, w6}: 1336 match w6: 1337 case WCon{False{}, w7}: 1338 match w7: 1339 case WCon{False{}, w8}: 1340 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1341 case WCon{True{}, w8}: 1342 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1343 case WCon{True{}, w7}: 1344 match w7: 1345 case WCon{False{}, w8}: 1346 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1347 case WCon{True{}, w8}: 1348 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1349 case WCon{True{}, w5}: 1350 match w5: 1351 case WCon{False{}, w6}: 1352 match w6: 1353 case WCon{False{}, w7}: 1354 match w7: 1355 case WCon{False{}, w8}: 1356 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1357 case WCon{True{}, w8}: 1358 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1359 case WCon{True{}, w7}: 1360 match w7: 1361 case WCon{False{}, w8}: 1362 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1363 case WCon{True{}, w8}: 1364 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1365 case WCon{True{}, w6}: 1366 match w6: 1367 case WCon{False{}, w7}: 1368 match w7: 1369 case WCon{False{}, w8}: 1370 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1371 case WCon{True{}, w8}: 1372 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1373 case WCon{True{}, w7}: 1374 match w7: 1375 case WCon{False{}, w8}: 1376 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1377 case WCon{True{}, w8}: 1378 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1379 case WCon{True{}, w4}: 1380 match w4: 1381 case WCon{False{}, w5}: 1382 match w5: 1383 case WCon{False{}, w6}: 1384 match w6: 1385 case WCon{False{}, w7}: 1386 match w7: 1387 case WCon{False{}, w8}: 1388 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1389 case WCon{True{}, w8}: 1390 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1391 case WCon{True{}, w7}: 1392 match w7: 1393 case WCon{False{}, w8}: 1394 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1395 case WCon{True{}, w8}: 1396 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1397 case WCon{True{}, w6}: 1398 match w6: 1399 case WCon{False{}, w7}: 1400 match w7: 1401 case WCon{False{}, w8}: 1402 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1403 case WCon{True{}, w8}: 1404 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1405 case WCon{True{}, w7}: 1406 match w7: 1407 case WCon{False{}, w8}: 1408 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1409 case WCon{True{}, w8}: 1410 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1411 case WCon{True{}, w5}: 1412 match w5: 1413 case WCon{False{}, w6}: 1414 match w6: 1415 case WCon{False{}, w7}: 1416 match w7: 1417 case WCon{False{}, w8}: 1418 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1419 case WCon{True{}, w8}: 1420 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1421 case WCon{True{}, w7}: 1422 match w7: 1423 case WCon{False{}, w8}: 1424 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1425 case WCon{True{}, w8}: 1426 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1427 case WCon{True{}, w6}: 1428 match w6: 1429 case WCon{False{}, w7}: 1430 match w7: 1431 case WCon{False{}, w8}: 1432 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1433 case WCon{True{}, w8}: 1434 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1435 case WCon{True{}, w7}: 1436 match w7: 1437 case WCon{False{}, w8}: 1438 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1439 case WCon{True{}, w8}: 1440 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1441 case WCon{True{}, w3}: 1442 match w3: 1443 case WCon{False{}, w4}: 1444 match w4: 1445 case WCon{False{}, w5}: 1446 match w5: 1447 case WCon{False{}, w6}: 1448 match w6: 1449 case WCon{False{}, w7}: 1450 match w7: 1451 case WCon{False{}, w8}: 1452 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1453 case WCon{True{}, w8}: 1454 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1455 case WCon{True{}, w7}: 1456 match w7: 1457 case WCon{False{}, w8}: 1458 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1459 case WCon{True{}, w8}: 1460 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1461 case WCon{True{}, w6}: 1462 match w6: 1463 case WCon{False{}, w7}: 1464 match w7: 1465 case WCon{False{}, w8}: 1466 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1467 case WCon{True{}, w8}: 1468 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1469 case WCon{True{}, w7}: 1470 match w7: 1471 case WCon{False{}, w8}: 1472 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1473 case WCon{True{}, w8}: 1474 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1475 case WCon{True{}, w5}: 1476 match w5: 1477 case WCon{False{}, w6}: 1478 match w6: 1479 case WCon{False{}, w7}: 1480 match w7: 1481 case WCon{False{}, w8}: 1482 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1483 case WCon{True{}, w8}: 1484 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1485 case WCon{True{}, w7}: 1486 match w7: 1487 case WCon{False{}, w8}: 1488 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1489 case WCon{True{}, w8}: 1490 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1491 case WCon{True{}, w6}: 1492 match w6: 1493 case WCon{False{}, w7}: 1494 match w7: 1495 case WCon{False{}, w8}: 1496 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1497 case WCon{True{}, w8}: 1498 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1499 case WCon{True{}, w7}: 1500 match w7: 1501 case WCon{False{}, w8}: 1502 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1503 case WCon{True{}, w8}: 1504 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1505 case WCon{True{}, w4}: 1506 match w4: 1507 case WCon{False{}, w5}: 1508 match w5: 1509 case WCon{False{}, w6}: 1510 match w6: 1511 case WCon{False{}, w7}: 1512 match w7: 1513 case WCon{False{}, w8}: 1514 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1515 case WCon{True{}, w8}: 1516 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1517 case WCon{True{}, w7}: 1518 match w7: 1519 case WCon{False{}, w8}: 1520 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1521 case WCon{True{}, w8}: 1522 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1523 case WCon{True{}, w6}: 1524 match w6: 1525 case WCon{False{}, w7}: 1526 match w7: 1527 case WCon{False{}, w8}: 1528 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1529 case WCon{True{}, w8}: 1530 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1531 case WCon{True{}, w7}: 1532 match w7: 1533 case WCon{False{}, w8}: 1534 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1535 case WCon{True{}, w8}: 1536 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1537 case WCon{True{}, w5}: 1538 match w5: 1539 case WCon{False{}, w6}: 1540 match w6: 1541 case WCon{False{}, w7}: 1542 match w7: 1543 case WCon{False{}, w8}: 1544 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1545 case WCon{True{}, w8}: 1546 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1547 case WCon{True{}, w7}: 1548 match w7: 1549 case WCon{False{}, w8}: 1550 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1551 case WCon{True{}, w8}: 1552 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1553 case WCon{True{}, w6}: 1554 match w6: 1555 case WCon{False{}, w7}: 1556 match w7: 1557 case WCon{False{}, w8}: 1558 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1559 case WCon{True{}, w8}: 1560 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1561 case WCon{True{}, w7}: 1562 match w7: 1563 case WCon{False{}, w8}: 1564 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1565 case WCon{True{}, w8}: 1566 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1567 case WCon{True{}, w1}: 1568 match w1: 1569 case WCon{False{}, w2}: 1570 match w2: 1571 case WCon{False{}, w3}: 1572 match w3: 1573 case WCon{False{}, w4}: 1574 match w4: 1575 case WCon{False{}, w5}: 1576 match w5: 1577 case WCon{False{}, w6}: 1578 match w6: 1579 case WCon{False{}, w7}: 1580 match w7: 1581 case WCon{False{}, w8}: 1582 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1583 case WCon{True{}, w8}: 1584 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1585 case WCon{True{}, w7}: 1586 match w7: 1587 case WCon{False{}, w8}: 1588 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1589 case WCon{True{}, w8}: 1590 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1591 case WCon{True{}, w6}: 1592 match w6: 1593 case WCon{False{}, w7}: 1594 match w7: 1595 case WCon{False{}, w8}: 1596 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1597 case WCon{True{}, w8}: 1598 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1599 case WCon{True{}, w7}: 1600 match w7: 1601 case WCon{False{}, w8}: 1602 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1603 case WCon{True{}, w8}: 1604 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1605 case WCon{True{}, w5}: 1606 match w5: 1607 case WCon{False{}, w6}: 1608 match w6: 1609 case WCon{False{}, w7}: 1610 match w7: 1611 case WCon{False{}, w8}: 1612 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1613 case WCon{True{}, w8}: 1614 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1615 case WCon{True{}, w7}: 1616 match w7: 1617 case WCon{False{}, w8}: 1618 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1619 case WCon{True{}, w8}: 1620 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1621 case WCon{True{}, w6}: 1622 match w6: 1623 case WCon{False{}, w7}: 1624 match w7: 1625 case WCon{False{}, w8}: 1626 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1627 case WCon{True{}, w8}: 1628 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1629 case WCon{True{}, w7}: 1630 match w7: 1631 case WCon{False{}, w8}: 1632 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1633 case WCon{True{}, w8}: 1634 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1635 case WCon{True{}, w4}: 1636 match w4: 1637 case WCon{False{}, w5}: 1638 match w5: 1639 case WCon{False{}, w6}: 1640 match w6: 1641 case WCon{False{}, w7}: 1642 match w7: 1643 case WCon{False{}, w8}: 1644 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1645 case WCon{True{}, w8}: 1646 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1647 case WCon{True{}, w7}: 1648 match w7: 1649 case WCon{False{}, w8}: 1650 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1651 case WCon{True{}, w8}: 1652 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1653 case WCon{True{}, w6}: 1654 match w6: 1655 case WCon{False{}, w7}: 1656 match w7: 1657 case WCon{False{}, w8}: 1658 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1659 case WCon{True{}, w8}: 1660 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1661 case WCon{True{}, w7}: 1662 match w7: 1663 case WCon{False{}, w8}: 1664 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1665 case WCon{True{}, w8}: 1666 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1667 case WCon{True{}, w5}: 1668 match w5: 1669 case WCon{False{}, w6}: 1670 match w6: 1671 case WCon{False{}, w7}: 1672 match w7: 1673 case WCon{False{}, w8}: 1674 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1675 case WCon{True{}, w8}: 1676 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1677 case WCon{True{}, w7}: 1678 match w7: 1679 case WCon{False{}, w8}: 1680 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1681 case WCon{True{}, w8}: 1682 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1683 case WCon{True{}, w6}: 1684 match w6: 1685 case WCon{False{}, w7}: 1686 match w7: 1687 case WCon{False{}, w8}: 1688 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1689 case WCon{True{}, w8}: 1690 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1691 case WCon{True{}, w7}: 1692 match w7: 1693 case WCon{False{}, w8}: 1694 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1695 case WCon{True{}, w8}: 1696 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1697 case WCon{True{}, w3}: 1698 match w3: 1699 case WCon{False{}, w4}: 1700 match w4: 1701 case WCon{False{}, w5}: 1702 match w5: 1703 case WCon{False{}, w6}: 1704 match w6: 1705 case WCon{False{}, w7}: 1706 match w7: 1707 case WCon{False{}, w8}: 1708 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1709 case WCon{True{}, w8}: 1710 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1711 case WCon{True{}, w7}: 1712 match w7: 1713 case WCon{False{}, w8}: 1714 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1715 case WCon{True{}, w8}: 1716 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1717 case WCon{True{}, w6}: 1718 match w6: 1719 case WCon{False{}, w7}: 1720 match w7: 1721 case WCon{False{}, w8}: 1722 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1723 case WCon{True{}, w8}: 1724 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1725 case WCon{True{}, w7}: 1726 match w7: 1727 case WCon{False{}, w8}: 1728 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1729 case WCon{True{}, w8}: 1730 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1731 case WCon{True{}, w5}: 1732 match w5: 1733 case WCon{False{}, w6}: 1734 match w6: 1735 case WCon{False{}, w7}: 1736 match w7: 1737 case WCon{False{}, w8}: 1738 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1739 case WCon{True{}, w8}: 1740 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1741 case WCon{True{}, w7}: 1742 match w7: 1743 case WCon{False{}, w8}: 1744 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1745 case WCon{True{}, w8}: 1746 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1747 case WCon{True{}, w6}: 1748 match w6: 1749 case WCon{False{}, w7}: 1750 match w7: 1751 case WCon{False{}, w8}: 1752 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1753 case WCon{True{}, w8}: 1754 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1755 case WCon{True{}, w7}: 1756 match w7: 1757 case WCon{False{}, w8}: 1758 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1759 case WCon{True{}, w8}: 1760 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1761 case WCon{True{}, w4}: 1762 match w4: 1763 case WCon{False{}, w5}: 1764 match w5: 1765 case WCon{False{}, w6}: 1766 match w6: 1767 case WCon{False{}, w7}: 1768 match w7: 1769 case WCon{False{}, w8}: 1770 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1771 case WCon{True{}, w8}: 1772 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1773 case WCon{True{}, w7}: 1774 match w7: 1775 case WCon{False{}, w8}: 1776 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1777 case WCon{True{}, w8}: 1778 WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1779 case WCon{True{}, w6}: 1780 match w6: 1781 case WCon{False{}, w7}: 1782 match w7: 1783 case WCon{False{}, w8}: 1784 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1785 case WCon{True{}, w8}: 1786 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1787 case WCon{True{}, w7}: 1788 match w7: 1789 case WCon{False{}, w8}: 1790 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1791 case WCon{True{}, w8}: 1792 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1793 case WCon{True{}, w5}: 1794 match w5: 1795 case WCon{False{}, w6}: 1796 match w6: 1797 case WCon{False{}, w7}: 1798 match w7: 1799 case WCon{False{}, w8}: 1800 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1801 case WCon{True{}, w8}: 1802 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1803 case WCon{True{}, w7}: 1804 match w7: 1805 case WCon{False{}, w8}: 1806 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1807 case WCon{True{}, w8}: 1808 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1809 case WCon{True{}, w6}: 1810 match w6: 1811 case WCon{False{}, w7}: 1812 match w7: 1813 case WCon{False{}, w8}: 1814 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1815 case WCon{True{}, w8}: 1816 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1817 case WCon{True{}, w7}: 1818 match w7: 1819 case WCon{False{}, w8}: 1820 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1821 case WCon{True{}, w8}: 1822 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1823 case WCon{True{}, w2}: 1824 match w2: 1825 case WCon{False{}, w3}: 1826 match w3: 1827 case WCon{False{}, w4}: 1828 match w4: 1829 case WCon{False{}, w5}: 1830 match w5: 1831 case WCon{False{}, w6}: 1832 match w6: 1833 case WCon{False{}, w7}: 1834 match w7: 1835 case WCon{False{}, w8}: 1836 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1837 case WCon{True{}, w8}: 1838 WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1839 case WCon{True{}, w7}: 1840 match w7: 1841 case WCon{False{}, w8}: 1842 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1843 case WCon{True{}, w8}: 1844 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1845 case WCon{True{}, w6}: 1846 match w6: 1847 case WCon{False{}, w7}: 1848 match w7: 1849 case WCon{False{}, w8}: 1850 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1851 case WCon{True{}, w8}: 1852 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1853 case WCon{True{}, w7}: 1854 match w7: 1855 case WCon{False{}, w8}: 1856 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1857 case WCon{True{}, w8}: 1858 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1859 case WCon{True{}, w5}: 1860 match w5: 1861 case WCon{False{}, w6}: 1862 match w6: 1863 case WCon{False{}, w7}: 1864 match w7: 1865 case WCon{False{}, w8}: 1866 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1867 case WCon{True{}, w8}: 1868 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1869 case WCon{True{}, w7}: 1870 match w7: 1871 case WCon{False{}, w8}: 1872 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1873 case WCon{True{}, w8}: 1874 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1875 case WCon{True{}, w6}: 1876 match w6: 1877 case WCon{False{}, w7}: 1878 match w7: 1879 case WCon{False{}, w8}: 1880 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1881 case WCon{True{}, w8}: 1882 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1883 case WCon{True{}, w7}: 1884 match w7: 1885 case WCon{False{}, w8}: 1886 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1887 case WCon{True{}, w8}: 1888 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1889 case WCon{True{}, w4}: 1890 match w4: 1891 case WCon{False{}, w5}: 1892 match w5: 1893 case WCon{False{}, w6}: 1894 match w6: 1895 case WCon{False{}, w7}: 1896 match w7: 1897 case WCon{False{}, w8}: 1898 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1899 case WCon{True{}, w8}: 1900 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1901 case WCon{True{}, w7}: 1902 match w7: 1903 case WCon{False{}, w8}: 1904 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1905 case WCon{True{}, w8}: 1906 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1907 case WCon{True{}, w6}: 1908 match w6: 1909 case WCon{False{}, w7}: 1910 match w7: 1911 case WCon{False{}, w8}: 1912 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1913 case WCon{True{}, w8}: 1914 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1915 case WCon{True{}, w7}: 1916 match w7: 1917 case WCon{False{}, w8}: 1918 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1919 case WCon{True{}, w8}: 1920 WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1921 case WCon{True{}, w5}: 1922 match w5: 1923 case WCon{False{}, w6}: 1924 match w6: 1925 case WCon{False{}, w7}: 1926 match w7: 1927 case WCon{False{}, w8}: 1928 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1929 case WCon{True{}, w8}: 1930 WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1931 case WCon{True{}, w7}: 1932 match w7: 1933 case WCon{False{}, w8}: 1934 WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1935 case WCon{True{}, w8}: 1936 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1937 case WCon{True{}, w6}: 1938 match w6: 1939 case WCon{False{}, w7}: 1940 match w7: 1941 case WCon{False{}, w8}: 1942 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1943 case WCon{True{}, w8}: 1944 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1945 case WCon{True{}, w7}: 1946 match w7: 1947 case WCon{False{}, w8}: 1948 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1949 case WCon{True{}, w8}: 1950 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1951 case WCon{True{}, w3}: 1952 match w3: 1953 case WCon{False{}, w4}: 1954 match w4: 1955 case WCon{False{}, w5}: 1956 match w5: 1957 case WCon{False{}, w6}: 1958 match w6: 1959 case WCon{False{}, w7}: 1960 match w7: 1961 case WCon{False{}, w8}: 1962 WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1963 case WCon{True{}, w8}: 1964 WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1965 case WCon{True{}, w7}: 1966 match w7: 1967 case WCon{False{}, w8}: 1968 WCon{True{}, WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1969 case WCon{True{}, w8}: 1970 WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1971 case WCon{True{}, w6}: 1972 match w6: 1973 case WCon{False{}, w7}: 1974 match w7: 1975 case WCon{False{}, w8}: 1976 WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1977 case WCon{True{}, w8}: 1978 WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} 1979 case WCon{True{}, w7}: 1980 match w7: 1981 case WCon{False{}, w8}: 1982 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1983 case WCon{True{}, w8}: 1984 WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WNil{}}}}}}}}} 1985 case WCon{True{}, w5}: 1986 match w5: 1987 case WCon{False{}, w6}: 1988 match w6: 1989 case WCon{False{}, w7}: 1990 match w7: 1991 case WCon{False{}, w8}: 1992 WCon{True{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1993 case WCon{True{}, w8}: 1994 WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{True{}, WCon{False{}, WNil{}}}}}}}}} 1995 case WCon{True{}, w7}: 1996 match w7: 1997 case WCon{False{}, w8}: 1998 WCon{False{}, WCon{False{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{True{}, WCon{False{}, WCon{False{}, WNil{}}}}}}}}} 1999 case WCon{True{}, w8}: 2000 WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{True{}, WCon{False{}, WCon{False{}, WCon{True{}, WNil{}}}}}}}}} Lines 1-2000 of 4618. More: https://jend.leeeet.dev/read.txt?path=bend-osdev-legacy-ciphers@0.1.0.0/aria.bend&start_line=2001