1 pub const INVALID_VALUE: u8 = 255; 2 #[rustfmt::skip] 3 pub const STANDARD_ENCODE: &[u8; 64] = &[ 4 65, // input 0 (0x0) => 'A' (0x41) 5 66, // input 1 (0x1) => 'B' (0x42) 6 67, // input 2 (0x2) => 'C' (0x43) 7 68, // input 3 (0x3) => 'D' (0x44) 8 69, // input 4 (0x4) => 'E' (0x45) 9 70, // input 5 (0x5) => 'F' (0x46) 10 71, // input 6 (0x6) => 'G' (0x47) 11 72, // input 7 (0x7) => 'H' (0x48) 12 73, // input 8 (0x8) => 'I' (0x49) 13 74, // input 9 (0x9) => 'J' (0x4A) 14 75, // input 10 (0xA) => 'K' (0x4B) 15 76, // input 11 (0xB) => 'L' (0x4C) 16 77, // input 12 (0xC) => 'M' (0x4D) 17 78, // input 13 (0xD) => 'N' (0x4E) 18 79, // input 14 (0xE) => 'O' (0x4F) 19 80, // input 15 (0xF) => 'P' (0x50) 20 81, // input 16 (0x10) => 'Q' (0x51) 21 82, // input 17 (0x11) => 'R' (0x52) 22 83, // input 18 (0x12) => 'S' (0x53) 23 84, // input 19 (0x13) => 'T' (0x54) 24 85, // input 20 (0x14) => 'U' (0x55) 25 86, // input 21 (0x15) => 'V' (0x56) 26 87, // input 22 (0x16) => 'W' (0x57) 27 88, // input 23 (0x17) => 'X' (0x58) 28 89, // input 24 (0x18) => 'Y' (0x59) 29 90, // input 25 (0x19) => 'Z' (0x5A) 30 97, // input 26 (0x1A) => 'a' (0x61) 31 98, // input 27 (0x1B) => 'b' (0x62) 32 99, // input 28 (0x1C) => 'c' (0x63) 33 100, // input 29 (0x1D) => 'd' (0x64) 34 101, // input 30 (0x1E) => 'e' (0x65) 35 102, // input 31 (0x1F) => 'f' (0x66) 36 103, // input 32 (0x20) => 'g' (0x67) 37 104, // input 33 (0x21) => 'h' (0x68) 38 105, // input 34 (0x22) => 'i' (0x69) 39 106, // input 35 (0x23) => 'j' (0x6A) 40 107, // input 36 (0x24) => 'k' (0x6B) 41 108, // input 37 (0x25) => 'l' (0x6C) 42 109, // input 38 (0x26) => 'm' (0x6D) 43 110, // input 39 (0x27) => 'n' (0x6E) 44 111, // input 40 (0x28) => 'o' (0x6F) 45 112, // input 41 (0x29) => 'p' (0x70) 46 113, // input 42 (0x2A) => 'q' (0x71) 47 114, // input 43 (0x2B) => 'r' (0x72) 48 115, // input 44 (0x2C) => 's' (0x73) 49 116, // input 45 (0x2D) => 't' (0x74) 50 117, // input 46 (0x2E) => 'u' (0x75) 51 118, // input 47 (0x2F) => 'v' (0x76) 52 119, // input 48 (0x30) => 'w' (0x77) 53 120, // input 49 (0x31) => 'x' (0x78) 54 121, // input 50 (0x32) => 'y' (0x79) 55 122, // input 51 (0x33) => 'z' (0x7A) 56 48, // input 52 (0x34) => '0' (0x30) 57 49, // input 53 (0x35) => '1' (0x31) 58 50, // input 54 (0x36) => '2' (0x32) 59 51, // input 55 (0x37) => '3' (0x33) 60 52, // input 56 (0x38) => '4' (0x34) 61 53, // input 57 (0x39) => '5' (0x35) 62 54, // input 58 (0x3A) => '6' (0x36) 63 55, // input 59 (0x3B) => '7' (0x37) 64 56, // input 60 (0x3C) => '8' (0x38) 65 57, // input 61 (0x3D) => '9' (0x39) 66 43, // input 62 (0x3E) => '+' (0x2B) 67 47, // input 63 (0x3F) => '/' (0x2F) 68 ]; 69 #[rustfmt::skip] 70 pub const STANDARD_DECODE: &[u8; 256] = &[ 71 INVALID_VALUE, // input 0 (0x0) 72 INVALID_VALUE, // input 1 (0x1) 73 INVALID_VALUE, // input 2 (0x2) 74 INVALID_VALUE, // input 3 (0x3) 75 INVALID_VALUE, // input 4 (0x4) 76 INVALID_VALUE, // input 5 (0x5) 77 INVALID_VALUE, // input 6 (0x6) 78 INVALID_VALUE, // input 7 (0x7) 79 INVALID_VALUE, // input 8 (0x8) 80 INVALID_VALUE, // input 9 (0x9) 81 INVALID_VALUE, // input 10 (0xA) 82 INVALID_VALUE, // input 11 (0xB) 83 INVALID_VALUE, // input 12 (0xC) 84 INVALID_VALUE, // input 13 (0xD) 85 INVALID_VALUE, // input 14 (0xE) 86 INVALID_VALUE, // input 15 (0xF) 87 INVALID_VALUE, // input 16 (0x10) 88 INVALID_VALUE, // input 17 (0x11) 89 INVALID_VALUE, // input 18 (0x12) 90 INVALID_VALUE, // input 19 (0x13) 91 INVALID_VALUE, // input 20 (0x14) 92 INVALID_VALUE, // input 21 (0x15) 93 INVALID_VALUE, // input 22 (0x16) 94 INVALID_VALUE, // input 23 (0x17) 95 INVALID_VALUE, // input 24 (0x18) 96 INVALID_VALUE, // input 25 (0x19) 97 INVALID_VALUE, // input 26 (0x1A) 98 INVALID_VALUE, // input 27 (0x1B) 99 INVALID_VALUE, // input 28 (0x1C) 100 INVALID_VALUE, // input 29 (0x1D) 101 INVALID_VALUE, // input 30 (0x1E) 102 INVALID_VALUE, // input 31 (0x1F) 103 INVALID_VALUE, // input 32 (0x20) 104 INVALID_VALUE, // input 33 (0x21) 105 INVALID_VALUE, // input 34 (0x22) 106 INVALID_VALUE, // input 35 (0x23) 107 INVALID_VALUE, // input 36 (0x24) 108 INVALID_VALUE, // input 37 (0x25) 109 INVALID_VALUE, // input 38 (0x26) 110 INVALID_VALUE, // input 39 (0x27) 111 INVALID_VALUE, // input 40 (0x28) 112 INVALID_VALUE, // input 41 (0x29) 113 INVALID_VALUE, // input 42 (0x2A) 114 62, // input 43 (0x2B char '+') => 62 (0x3E) 115 INVALID_VALUE, // input 44 (0x2C) 116 INVALID_VALUE, // input 45 (0x2D) 117 INVALID_VALUE, // input 46 (0x2E) 118 63, // input 47 (0x2F char '/') => 63 (0x3F) 119 52, // input 48 (0x30 char '0') => 52 (0x34) 120 53, // input 49 (0x31 char '1') => 53 (0x35) 121 54, // input 50 (0x32 char '2') => 54 (0x36) 122 55, // input 51 (0x33 char '3') => 55 (0x37) 123 56, // input 52 (0x34 char '4') => 56 (0x38) 124 57, // input 53 (0x35 char '5') => 57 (0x39) 125 58, // input 54 (0x36 char '6') => 58 (0x3A) 126 59, // input 55 (0x37 char '7') => 59 (0x3B) 127 60, // input 56 (0x38 char '8') => 60 (0x3C) 128 61, // input 57 (0x39 char '9') => 61 (0x3D) 129 INVALID_VALUE, // input 58 (0x3A) 130 INVALID_VALUE, // input 59 (0x3B) 131 INVALID_VALUE, // input 60 (0x3C) 132 INVALID_VALUE, // input 61 (0x3D) 133 INVALID_VALUE, // input 62 (0x3E) 134 INVALID_VALUE, // input 63 (0x3F) 135 INVALID_VALUE, // input 64 (0x40) 136 0, // input 65 (0x41 char 'A') => 0 (0x0) 137 1, // input 66 (0x42 char 'B') => 1 (0x1) 138 2, // input 67 (0x43 char 'C') => 2 (0x2) 139 3, // input 68 (0x44 char 'D') => 3 (0x3) 140 4, // input 69 (0x45 char 'E') => 4 (0x4) 141 5, // input 70 (0x46 char 'F') => 5 (0x5) 142 6, // input 71 (0x47 char 'G') => 6 (0x6) 143 7, // input 72 (0x48 char 'H') => 7 (0x7) 144 8, // input 73 (0x49 char 'I') => 8 (0x8) 145 9, // input 74 (0x4A char 'J') => 9 (0x9) 146 10, // input 75 (0x4B char 'K') => 10 (0xA) 147 11, // input 76 (0x4C char 'L') => 11 (0xB) 148 12, // input 77 (0x4D char 'M') => 12 (0xC) 149 13, // input 78 (0x4E char 'N') => 13 (0xD) 150 14, // input 79 (0x4F char 'O') => 14 (0xE) 151 15, // input 80 (0x50 char 'P') => 15 (0xF) 152 16, // input 81 (0x51 char 'Q') => 16 (0x10) 153 17, // input 82 (0x52 char 'R') => 17 (0x11) 154 18, // input 83 (0x53 char 'S') => 18 (0x12) 155 19, // input 84 (0x54 char 'T') => 19 (0x13) 156 20, // input 85 (0x55 char 'U') => 20 (0x14) 157 21, // input 86 (0x56 char 'V') => 21 (0x15) 158 22, // input 87 (0x57 char 'W') => 22 (0x16) 159 23, // input 88 (0x58 char 'X') => 23 (0x17) 160 24, // input 89 (0x59 char 'Y') => 24 (0x18) 161 25, // input 90 (0x5A char 'Z') => 25 (0x19) 162 INVALID_VALUE, // input 91 (0x5B) 163 INVALID_VALUE, // input 92 (0x5C) 164 INVALID_VALUE, // input 93 (0x5D) 165 INVALID_VALUE, // input 94 (0x5E) 166 INVALID_VALUE, // input 95 (0x5F) 167 INVALID_VALUE, // input 96 (0x60) 168 26, // input 97 (0x61 char 'a') => 26 (0x1A) 169 27, // input 98 (0x62 char 'b') => 27 (0x1B) 170 28, // input 99 (0x63 char 'c') => 28 (0x1C) 171 29, // input 100 (0x64 char 'd') => 29 (0x1D) 172 30, // input 101 (0x65 char 'e') => 30 (0x1E) 173 31, // input 102 (0x66 char 'f') => 31 (0x1F) 174 32, // input 103 (0x67 char 'g') => 32 (0x20) 175 33, // input 104 (0x68 char 'h') => 33 (0x21) 176 34, // input 105 (0x69 char 'i') => 34 (0x22) 177 35, // input 106 (0x6A char 'j') => 35 (0x23) 178 36, // input 107 (0x6B char 'k') => 36 (0x24) 179 37, // input 108 (0x6C char 'l') => 37 (0x25) 180 38, // input 109 (0x6D char 'm') => 38 (0x26) 181 39, // input 110 (0x6E char 'n') => 39 (0x27) 182 40, // input 111 (0x6F char 'o') => 40 (0x28) 183 41, // input 112 (0x70 char 'p') => 41 (0x29) 184 42, // input 113 (0x71 char 'q') => 42 (0x2A) 185 43, // input 114 (0x72 char 'r') => 43 (0x2B) 186 44, // input 115 (0x73 char 's') => 44 (0x2C) 187 45, // input 116 (0x74 char 't') => 45 (0x2D) 188 46, // input 117 (0x75 char 'u') => 46 (0x2E) 189 47, // input 118 (0x76 char 'v') => 47 (0x2F) 190 48, // input 119 (0x77 char 'w') => 48 (0x30) 191 49, // input 120 (0x78 char 'x') => 49 (0x31) 192 50, // input 121 (0x79 char 'y') => 50 (0x32) 193 51, // input 122 (0x7A char 'z') => 51 (0x33) 194 INVALID_VALUE, // input 123 (0x7B) 195 INVALID_VALUE, // input 124 (0x7C) 196 INVALID_VALUE, // input 125 (0x7D) 197 INVALID_VALUE, // input 126 (0x7E) 198 INVALID_VALUE, // input 127 (0x7F) 199 INVALID_VALUE, // input 128 (0x80) 200 INVALID_VALUE, // input 129 (0x81) 201 INVALID_VALUE, // input 130 (0x82) 202 INVALID_VALUE, // input 131 (0x83) 203 INVALID_VALUE, // input 132 (0x84) 204 INVALID_VALUE, // input 133 (0x85) 205 INVALID_VALUE, // input 134 (0x86) 206 INVALID_VALUE, // input 135 (0x87) 207 INVALID_VALUE, // input 136 (0x88) 208 INVALID_VALUE, // input 137 (0x89) 209 INVALID_VALUE, // input 138 (0x8A) 210 INVALID_VALUE, // input 139 (0x8B) 211 INVALID_VALUE, // input 140 (0x8C) 212 INVALID_VALUE, // input 141 (0x8D) 213 INVALID_VALUE, // input 142 (0x8E) 214 INVALID_VALUE, // input 143 (0x8F) 215 INVALID_VALUE, // input 144 (0x90) 216 INVALID_VALUE, // input 145 (0x91) 217 INVALID_VALUE, // input 146 (0x92) 218 INVALID_VALUE, // input 147 (0x93) 219 INVALID_VALUE, // input 148 (0x94) 220 INVALID_VALUE, // input 149 (0x95) 221 INVALID_VALUE, // input 150 (0x96) 222 INVALID_VALUE, // input 151 (0x97) 223 INVALID_VALUE, // input 152 (0x98) 224 INVALID_VALUE, // input 153 (0x99) 225 INVALID_VALUE, // input 154 (0x9A) 226 INVALID_VALUE, // input 155 (0x9B) 227 INVALID_VALUE, // input 156 (0x9C) 228 INVALID_VALUE, // input 157 (0x9D) 229 INVALID_VALUE, // input 158 (0x9E) 230 INVALID_VALUE, // input 159 (0x9F) 231 INVALID_VALUE, // input 160 (0xA0) 232 INVALID_VALUE, // input 161 (0xA1) 233 INVALID_VALUE, // input 162 (0xA2) 234 INVALID_VALUE, // input 163 (0xA3) 235 INVALID_VALUE, // input 164 (0xA4) 236 INVALID_VALUE, // input 165 (0xA5) 237 INVALID_VALUE, // input 166 (0xA6) 238 INVALID_VALUE, // input 167 (0xA7) 239 INVALID_VALUE, // input 168 (0xA8) 240 INVALID_VALUE, // input 169 (0xA9) 241 INVALID_VALUE, // input 170 (0xAA) 242 INVALID_VALUE, // input 171 (0xAB) 243 INVALID_VALUE, // input 172 (0xAC) 244 INVALID_VALUE, // input 173 (0xAD) 245 INVALID_VALUE, // input 174 (0xAE) 246 INVALID_VALUE, // input 175 (0xAF) 247 INVALID_VALUE, // input 176 (0xB0) 248 INVALID_VALUE, // input 177 (0xB1) 249 INVALID_VALUE, // input 178 (0xB2) 250 INVALID_VALUE, // input 179 (0xB3) 251 INVALID_VALUE, // input 180 (0xB4) 252 INVALID_VALUE, // input 181 (0xB5) 253 INVALID_VALUE, // input 182 (0xB6) 254 INVALID_VALUE, // input 183 (0xB7) 255 INVALID_VALUE, // input 184 (0xB8) 256 INVALID_VALUE, // input 185 (0xB9) 257 INVALID_VALUE, // input 186 (0xBA) 258 INVALID_VALUE, // input 187 (0xBB) 259 INVALID_VALUE, // input 188 (0xBC) 260 INVALID_VALUE, // input 189 (0xBD) 261 INVALID_VALUE, // input 190 (0xBE) 262 INVALID_VALUE, // input 191 (0xBF) 263 INVALID_VALUE, // input 192 (0xC0) 264 INVALID_VALUE, // input 193 (0xC1) 265 INVALID_VALUE, // input 194 (0xC2) 266 INVALID_VALUE, // input 195 (0xC3) 267 INVALID_VALUE, // input 196 (0xC4) 268 INVALID_VALUE, // input 197 (0xC5) 269 INVALID_VALUE, // input 198 (0xC6) 270 INVALID_VALUE, // input 199 (0xC7) 271 INVALID_VALUE, // input 200 (0xC8) 272 INVALID_VALUE, // input 201 (0xC9) 273 INVALID_VALUE, // input 202 (0xCA) 274 INVALID_VALUE, // input 203 (0xCB) 275 INVALID_VALUE, // input 204 (0xCC) 276 INVALID_VALUE, // input 205 (0xCD) 277 INVALID_VALUE, // input 206 (0xCE) 278 INVALID_VALUE, // input 207 (0xCF) 279 INVALID_VALUE, // input 208 (0xD0) 280 INVALID_VALUE, // input 209 (0xD1) 281 INVALID_VALUE, // input 210 (0xD2) 282 INVALID_VALUE, // input 211 (0xD3) 283 INVALID_VALUE, // input 212 (0xD4) 284 INVALID_VALUE, // input 213 (0xD5) 285 INVALID_VALUE, // input 214 (0xD6) 286 INVALID_VALUE, // input 215 (0xD7) 287 INVALID_VALUE, // input 216 (0xD8) 288 INVALID_VALUE, // input 217 (0xD9) 289 INVALID_VALUE, // input 218 (0xDA) 290 INVALID_VALUE, // input 219 (0xDB) 291 INVALID_VALUE, // input 220 (0xDC) 292 INVALID_VALUE, // input 221 (0xDD) 293 INVALID_VALUE, // input 222 (0xDE) 294 INVALID_VALUE, // input 223 (0xDF) 295 INVALID_VALUE, // input 224 (0xE0) 296 INVALID_VALUE, // input 225 (0xE1) 297 INVALID_VALUE, // input 226 (0xE2) 298 INVALID_VALUE, // input 227 (0xE3) 299 INVALID_VALUE, // input 228 (0xE4) 300 INVALID_VALUE, // input 229 (0xE5) 301 INVALID_VALUE, // input 230 (0xE6) 302 INVALID_VALUE, // input 231 (0xE7) 303 INVALID_VALUE, // input 232 (0xE8) 304 INVALID_VALUE, // input 233 (0xE9) 305 INVALID_VALUE, // input 234 (0xEA) 306 INVALID_VALUE, // input 235 (0xEB) 307 INVALID_VALUE, // input 236 (0xEC) 308 INVALID_VALUE, // input 237 (0xED) 309 INVALID_VALUE, // input 238 (0xEE) 310 INVALID_VALUE, // input 239 (0xEF) 311 INVALID_VALUE, // input 240 (0xF0) 312 INVALID_VALUE, // input 241 (0xF1) 313 INVALID_VALUE, // input 242 (0xF2) 314 INVALID_VALUE, // input 243 (0xF3) 315 INVALID_VALUE, // input 244 (0xF4) 316 INVALID_VALUE, // input 245 (0xF5) 317 INVALID_VALUE, // input 246 (0xF6) 318 INVALID_VALUE, // input 247 (0xF7) 319 INVALID_VALUE, // input 248 (0xF8) 320 INVALID_VALUE, // input 249 (0xF9) 321 INVALID_VALUE, // input 250 (0xFA) 322 INVALID_VALUE, // input 251 (0xFB) 323 INVALID_VALUE, // input 252 (0xFC) 324 INVALID_VALUE, // input 253 (0xFD) 325 INVALID_VALUE, // input 254 (0xFE) 326 INVALID_VALUE, // input 255 (0xFF) 327 ]; 328 #[rustfmt::skip] 329 pub const URL_SAFE_ENCODE: &[u8; 64] = &[ 330 65, // input 0 (0x0) => 'A' (0x41) 331 66, // input 1 (0x1) => 'B' (0x42) 332 67, // input 2 (0x2) => 'C' (0x43) 333 68, // input 3 (0x3) => 'D' (0x44) 334 69, // input 4 (0x4) => 'E' (0x45) 335 70, // input 5 (0x5) => 'F' (0x46) 336 71, // input 6 (0x6) => 'G' (0x47) 337 72, // input 7 (0x7) => 'H' (0x48) 338 73, // input 8 (0x8) => 'I' (0x49) 339 74, // input 9 (0x9) => 'J' (0x4A) 340 75, // input 10 (0xA) => 'K' (0x4B) 341 76, // input 11 (0xB) => 'L' (0x4C) 342 77, // input 12 (0xC) => 'M' (0x4D) 343 78, // input 13 (0xD) => 'N' (0x4E) 344 79, // input 14 (0xE) => 'O' (0x4F) 345 80, // input 15 (0xF) => 'P' (0x50) 346 81, // input 16 (0x10) => 'Q' (0x51) 347 82, // input 17 (0x11) => 'R' (0x52) 348 83, // input 18 (0x12) => 'S' (0x53) 349 84, // input 19 (0x13) => 'T' (0x54) 350 85, // input 20 (0x14) => 'U' (0x55) 351 86, // input 21 (0x15) => 'V' (0x56) 352 87, // input 22 (0x16) => 'W' (0x57) 353 88, // input 23 (0x17) => 'X' (0x58) 354 89, // input 24 (0x18) => 'Y' (0x59) 355 90, // input 25 (0x19) => 'Z' (0x5A) 356 97, // input 26 (0x1A) => 'a' (0x61) 357 98, // input 27 (0x1B) => 'b' (0x62) 358 99, // input 28 (0x1C) => 'c' (0x63) 359 100, // input 29 (0x1D) => 'd' (0x64) 360 101, // input 30 (0x1E) => 'e' (0x65) 361 102, // input 31 (0x1F) => 'f' (0x66) 362 103, // input 32 (0x20) => 'g' (0x67) 363 104, // input 33 (0x21) => 'h' (0x68) 364 105, // input 34 (0x22) => 'i' (0x69) 365 106, // input 35 (0x23) => 'j' (0x6A) 366 107, // input 36 (0x24) => 'k' (0x6B) 367 108, // input 37 (0x25) => 'l' (0x6C) 368 109, // input 38 (0x26) => 'm' (0x6D) 369 110, // input 39 (0x27) => 'n' (0x6E) 370 111, // input 40 (0x28) => 'o' (0x6F) 371 112, // input 41 (0x29) => 'p' (0x70) 372 113, // input 42 (0x2A) => 'q' (0x71) 373 114, // input 43 (0x2B) => 'r' (0x72) 374 115, // input 44 (0x2C) => 's' (0x73) 375 116, // input 45 (0x2D) => 't' (0x74) 376 117, // input 46 (0x2E) => 'u' (0x75) 377 118, // input 47 (0x2F) => 'v' (0x76) 378 119, // input 48 (0x30) => 'w' (0x77) 379 120, // input 49 (0x31) => 'x' (0x78) 380 121, // input 50 (0x32) => 'y' (0x79) 381 122, // input 51 (0x33) => 'z' (0x7A) 382 48, // input 52 (0x34) => '0' (0x30) 383 49, // input 53 (0x35) => '1' (0x31) 384 50, // input 54 (0x36) => '2' (0x32) 385 51, // input 55 (0x37) => '3' (0x33) 386 52, // input 56 (0x38) => '4' (0x34) 387 53, // input 57 (0x39) => '5' (0x35) 388 54, // input 58 (0x3A) => '6' (0x36) 389 55, // input 59 (0x3B) => '7' (0x37) 390 56, // input 60 (0x3C) => '8' (0x38) 391 57, // input 61 (0x3D) => '9' (0x39) 392 45, // input 62 (0x3E) => '-' (0x2D) 393 95, // input 63 (0x3F) => '_' (0x5F) 394 ]; 395 #[rustfmt::skip] 396 pub const URL_SAFE_DECODE: &[u8; 256] = &[ 397 INVALID_VALUE, // input 0 (0x0) 398 INVALID_VALUE, // input 1 (0x1) 399 INVALID_VALUE, // input 2 (0x2) 400 INVALID_VALUE, // input 3 (0x3) 401 INVALID_VALUE, // input 4 (0x4) 402 INVALID_VALUE, // input 5 (0x5) 403 INVALID_VALUE, // input 6 (0x6) 404 INVALID_VALUE, // input 7 (0x7) 405 INVALID_VALUE, // input 8 (0x8) 406 INVALID_VALUE, // input 9 (0x9) 407 INVALID_VALUE, // input 10 (0xA) 408 INVALID_VALUE, // input 11 (0xB) 409 INVALID_VALUE, // input 12 (0xC) 410 INVALID_VALUE, // input 13 (0xD) 411 INVALID_VALUE, // input 14 (0xE) 412 INVALID_VALUE, // input 15 (0xF) 413 INVALID_VALUE, // input 16 (0x10) 414 INVALID_VALUE, // input 17 (0x11) 415 INVALID_VALUE, // input 18 (0x12) 416 INVALID_VALUE, // input 19 (0x13) 417 INVALID_VALUE, // input 20 (0x14) 418 INVALID_VALUE, // input 21 (0x15) 419 INVALID_VALUE, // input 22 (0x16) 420 INVALID_VALUE, // input 23 (0x17) 421 INVALID_VALUE, // input 24 (0x18) 422 INVALID_VALUE, // input 25 (0x19) 423 INVALID_VALUE, // input 26 (0x1A) 424 INVALID_VALUE, // input 27 (0x1B) 425 INVALID_VALUE, // input 28 (0x1C) 426 INVALID_VALUE, // input 29 (0x1D) 427 INVALID_VALUE, // input 30 (0x1E) 428 INVALID_VALUE, // input 31 (0x1F) 429 INVALID_VALUE, // input 32 (0x20) 430 INVALID_VALUE, // input 33 (0x21) 431 INVALID_VALUE, // input 34 (0x22) 432 INVALID_VALUE, // input 35 (0x23) 433 INVALID_VALUE, // input 36 (0x24) 434 INVALID_VALUE, // input 37 (0x25) 435 INVALID_VALUE, // input 38 (0x26) 436 INVALID_VALUE, // input 39 (0x27) 437 INVALID_VALUE, // input 40 (0x28) 438 INVALID_VALUE, // input 41 (0x29) 439 INVALID_VALUE, // input 42 (0x2A) 440 INVALID_VALUE, // input 43 (0x2B) 441 INVALID_VALUE, // input 44 (0x2C) 442 62, // input 45 (0x2D char '-') => 62 (0x3E) 443 INVALID_VALUE, // input 46 (0x2E) 444 INVALID_VALUE, // input 47 (0x2F) 445 52, // input 48 (0x30 char '0') => 52 (0x34) 446 53, // input 49 (0x31 char '1') => 53 (0x35) 447 54, // input 50 (0x32 char '2') => 54 (0x36) 448 55, // input 51 (0x33 char '3') => 55 (0x37) 449 56, // input 52 (0x34 char '4') => 56 (0x38) 450 57, // input 53 (0x35 char '5') => 57 (0x39) 451 58, // input 54 (0x36 char '6') => 58 (0x3A) 452 59, // input 55 (0x37 char '7') => 59 (0x3B) 453 60, // input 56 (0x38 char '8') => 60 (0x3C) 454 61, // input 57 (0x39 char '9') => 61 (0x3D) 455 INVALID_VALUE, // input 58 (0x3A) 456 INVALID_VALUE, // input 59 (0x3B) 457 INVALID_VALUE, // input 60 (0x3C) 458 INVALID_VALUE, // input 61 (0x3D) 459 INVALID_VALUE, // input 62 (0x3E) 460 INVALID_VALUE, // input 63 (0x3F) 461 INVALID_VALUE, // input 64 (0x40) 462 0, // input 65 (0x41 char 'A') => 0 (0x0) 463 1, // input 66 (0x42 char 'B') => 1 (0x1) 464 2, // input 67 (0x43 char 'C') => 2 (0x2) 465 3, // input 68 (0x44 char 'D') => 3 (0x3) 466 4, // input 69 (0x45 char 'E') => 4 (0x4) 467 5, // input 70 (0x46 char 'F') => 5 (0x5) 468 6, // input 71 (0x47 char 'G') => 6 (0x6) 469 7, // input 72 (0x48 char 'H') => 7 (0x7) 470 8, // input 73 (0x49 char 'I') => 8 (0x8) 471 9, // input 74 (0x4A char 'J') => 9 (0x9) 472 10, // input 75 (0x4B char 'K') => 10 (0xA) 473 11, // input 76 (0x4C char 'L') => 11 (0xB) 474 12, // input 77 (0x4D char 'M') => 12 (0xC) 475 13, // input 78 (0x4E char 'N') => 13 (0xD) 476 14, // input 79 (0x4F char 'O') => 14 (0xE) 477 15, // input 80 (0x50 char 'P') => 15 (0xF) 478 16, // input 81 (0x51 char 'Q') => 16 (0x10) 479 17, // input 82 (0x52 char 'R') => 17 (0x11) 480 18, // input 83 (0x53 char 'S') => 18 (0x12) 481 19, // input 84 (0x54 char 'T') => 19 (0x13) 482 20, // input 85 (0x55 char 'U') => 20 (0x14) 483 21, // input 86 (0x56 char 'V') => 21 (0x15) 484 22, // input 87 (0x57 char 'W') => 22 (0x16) 485 23, // input 88 (0x58 char 'X') => 23 (0x17) 486 24, // input 89 (0x59 char 'Y') => 24 (0x18) 487 25, // input 90 (0x5A char 'Z') => 25 (0x19) 488 INVALID_VALUE, // input 91 (0x5B) 489 INVALID_VALUE, // input 92 (0x5C) 490 INVALID_VALUE, // input 93 (0x5D) 491 INVALID_VALUE, // input 94 (0x5E) 492 63, // input 95 (0x5F char '_') => 63 (0x3F) 493 INVALID_VALUE, // input 96 (0x60) 494 26, // input 97 (0x61 char 'a') => 26 (0x1A) 495 27, // input 98 (0x62 char 'b') => 27 (0x1B) 496 28, // input 99 (0x63 char 'c') => 28 (0x1C) 497 29, // input 100 (0x64 char 'd') => 29 (0x1D) 498 30, // input 101 (0x65 char 'e') => 30 (0x1E) 499 31, // input 102 (0x66 char 'f') => 31 (0x1F) 500 32, // input 103 (0x67 char 'g') => 32 (0x20) 501 33, // input 104 (0x68 char 'h') => 33 (0x21) 502 34, // input 105 (0x69 char 'i') => 34 (0x22) 503 35, // input 106 (0x6A char 'j') => 35 (0x23) 504 36, // input 107 (0x6B char 'k') => 36 (0x24) 505 37, // input 108 (0x6C char 'l') => 37 (0x25) 506 38, // input 109 (0x6D char 'm') => 38 (0x26) 507 39, // input 110 (0x6E char 'n') => 39 (0x27) 508 40, // input 111 (0x6F char 'o') => 40 (0x28) 509 41, // input 112 (0x70 char 'p') => 41 (0x29) 510 42, // input 113 (0x71 char 'q') => 42 (0x2A) 511 43, // input 114 (0x72 char 'r') => 43 (0x2B) 512 44, // input 115 (0x73 char 's') => 44 (0x2C) 513 45, // input 116 (0x74 char 't') => 45 (0x2D) 514 46, // input 117 (0x75 char 'u') => 46 (0x2E) 515 47, // input 118 (0x76 char 'v') => 47 (0x2F) 516 48, // input 119 (0x77 char 'w') => 48 (0x30) 517 49, // input 120 (0x78 char 'x') => 49 (0x31) 518 50, // input 121 (0x79 char 'y') => 50 (0x32) 519 51, // input 122 (0x7A char 'z') => 51 (0x33) 520 INVALID_VALUE, // input 123 (0x7B) 521 INVALID_VALUE, // input 124 (0x7C) 522 INVALID_VALUE, // input 125 (0x7D) 523 INVALID_VALUE, // input 126 (0x7E) 524 INVALID_VALUE, // input 127 (0x7F) 525 INVALID_VALUE, // input 128 (0x80) 526 INVALID_VALUE, // input 129 (0x81) 527 INVALID_VALUE, // input 130 (0x82) 528 INVALID_VALUE, // input 131 (0x83) 529 INVALID_VALUE, // input 132 (0x84) 530 INVALID_VALUE, // input 133 (0x85) 531 INVALID_VALUE, // input 134 (0x86) 532 INVALID_VALUE, // input 135 (0x87) 533 INVALID_VALUE, // input 136 (0x88) 534 INVALID_VALUE, // input 137 (0x89) 535 INVALID_VALUE, // input 138 (0x8A) 536 INVALID_VALUE, // input 139 (0x8B) 537 INVALID_VALUE, // input 140 (0x8C) 538 INVALID_VALUE, // input 141 (0x8D) 539 INVALID_VALUE, // input 142 (0x8E) 540 INVALID_VALUE, // input 143 (0x8F) 541 INVALID_VALUE, // input 144 (0x90) 542 INVALID_VALUE, // input 145 (0x91) 543 INVALID_VALUE, // input 146 (0x92) 544 INVALID_VALUE, // input 147 (0x93) 545 INVALID_VALUE, // input 148 (0x94) 546 INVALID_VALUE, // input 149 (0x95) 547 INVALID_VALUE, // input 150 (0x96) 548 INVALID_VALUE, // input 151 (0x97) 549 INVALID_VALUE, // input 152 (0x98) 550 INVALID_VALUE, // input 153 (0x99) 551 INVALID_VALUE, // input 154 (0x9A) 552 INVALID_VALUE, // input 155 (0x9B) 553 INVALID_VALUE, // input 156 (0x9C) 554 INVALID_VALUE, // input 157 (0x9D) 555 INVALID_VALUE, // input 158 (0x9E) 556 INVALID_VALUE, // input 159 (0x9F) 557 INVALID_VALUE, // input 160 (0xA0) 558 INVALID_VALUE, // input 161 (0xA1) 559 INVALID_VALUE, // input 162 (0xA2) 560 INVALID_VALUE, // input 163 (0xA3) 561 INVALID_VALUE, // input 164 (0xA4) 562 INVALID_VALUE, // input 165 (0xA5) 563 INVALID_VALUE, // input 166 (0xA6) 564 INVALID_VALUE, // input 167 (0xA7) 565 INVALID_VALUE, // input 168 (0xA8) 566 INVALID_VALUE, // input 169 (0xA9) 567 INVALID_VALUE, // input 170 (0xAA) 568 INVALID_VALUE, // input 171 (0xAB) 569 INVALID_VALUE, // input 172 (0xAC) 570 INVALID_VALUE, // input 173 (0xAD) 571 INVALID_VALUE, // input 174 (0xAE) 572 INVALID_VALUE, // input 175 (0xAF) 573 INVALID_VALUE, // input 176 (0xB0) 574 INVALID_VALUE, // input 177 (0xB1) 575 INVALID_VALUE, // input 178 (0xB2) 576 INVALID_VALUE, // input 179 (0xB3) 577 INVALID_VALUE, // input 180 (0xB4) 578 INVALID_VALUE, // input 181 (0xB5) 579 INVALID_VALUE, // input 182 (0xB6) 580 INVALID_VALUE, // input 183 (0xB7) 581 INVALID_VALUE, // input 184 (0xB8) 582 INVALID_VALUE, // input 185 (0xB9) 583 INVALID_VALUE, // input 186 (0xBA) 584 INVALID_VALUE, // input 187 (0xBB) 585 INVALID_VALUE, // input 188 (0xBC) 586 INVALID_VALUE, // input 189 (0xBD) 587 INVALID_VALUE, // input 190 (0xBE) 588 INVALID_VALUE, // input 191 (0xBF) 589 INVALID_VALUE, // input 192 (0xC0) 590 INVALID_VALUE, // input 193 (0xC1) 591 INVALID_VALUE, // input 194 (0xC2) 592 INVALID_VALUE, // input 195 (0xC3) 593 INVALID_VALUE, // input 196 (0xC4) 594 INVALID_VALUE, // input 197 (0xC5) 595 INVALID_VALUE, // input 198 (0xC6) 596 INVALID_VALUE, // input 199 (0xC7) 597 INVALID_VALUE, // input 200 (0xC8) 598 INVALID_VALUE, // input 201 (0xC9) 599 INVALID_VALUE, // input 202 (0xCA) 600 INVALID_VALUE, // input 203 (0xCB) 601 INVALID_VALUE, // input 204 (0xCC) 602 INVALID_VALUE, // input 205 (0xCD) 603 INVALID_VALUE, // input 206 (0xCE) 604 INVALID_VALUE, // input 207 (0xCF) 605 INVALID_VALUE, // input 208 (0xD0) 606 INVALID_VALUE, // input 209 (0xD1) 607 INVALID_VALUE, // input 210 (0xD2) 608 INVALID_VALUE, // input 211 (0xD3) 609 INVALID_VALUE, // input 212 (0xD4) 610 INVALID_VALUE, // input 213 (0xD5) 611 INVALID_VALUE, // input 214 (0xD6) 612 INVALID_VALUE, // input 215 (0xD7) 613 INVALID_VALUE, // input 216 (0xD8) 614 INVALID_VALUE, // input 217 (0xD9) 615 INVALID_VALUE, // input 218 (0xDA) 616 INVALID_VALUE, // input 219 (0xDB) 617 INVALID_VALUE, // input 220 (0xDC) 618 INVALID_VALUE, // input 221 (0xDD) 619 INVALID_VALUE, // input 222 (0xDE) 620 INVALID_VALUE, // input 223 (0xDF) 621 INVALID_VALUE, // input 224 (0xE0) 622 INVALID_VALUE, // input 225 (0xE1) 623 INVALID_VALUE, // input 226 (0xE2) 624 INVALID_VALUE, // input 227 (0xE3) 625 INVALID_VALUE, // input 228 (0xE4) 626 INVALID_VALUE, // input 229 (0xE5) 627 INVALID_VALUE, // input 230 (0xE6) 628 INVALID_VALUE, // input 231 (0xE7) 629 INVALID_VALUE, // input 232 (0xE8) 630 INVALID_VALUE, // input 233 (0xE9) 631 INVALID_VALUE, // input 234 (0xEA) 632 INVALID_VALUE, // input 235 (0xEB) 633 INVALID_VALUE, // input 236 (0xEC) 634 INVALID_VALUE, // input 237 (0xED) 635 INVALID_VALUE, // input 238 (0xEE) 636 INVALID_VALUE, // input 239 (0xEF) 637 INVALID_VALUE, // input 240 (0xF0) 638 INVALID_VALUE, // input 241 (0xF1) 639 INVALID_VALUE, // input 242 (0xF2) 640 INVALID_VALUE, // input 243 (0xF3) 641 INVALID_VALUE, // input 244 (0xF4) 642 INVALID_VALUE, // input 245 (0xF5) 643 INVALID_VALUE, // input 246 (0xF6) 644 INVALID_VALUE, // input 247 (0xF7) 645 INVALID_VALUE, // input 248 (0xF8) 646 INVALID_VALUE, // input 249 (0xF9) 647 INVALID_VALUE, // input 250 (0xFA) 648 INVALID_VALUE, // input 251 (0xFB) 649 INVALID_VALUE, // input 252 (0xFC) 650 INVALID_VALUE, // input 253 (0xFD) 651 INVALID_VALUE, // input 254 (0xFE) 652 INVALID_VALUE, // input 255 (0xFF) 653 ]; 654 #[rustfmt::skip] 655 pub const CRYPT_ENCODE: &[u8; 64] = &[ 656 46, // input 0 (0x0) => '.' (0x2E) 657 47, // input 1 (0x1) => '/' (0x2F) 658 48, // input 2 (0x2) => '0' (0x30) 659 49, // input 3 (0x3) => '1' (0x31) 660 50, // input 4 (0x4) => '2' (0x32) 661 51, // input 5 (0x5) => '3' (0x33) 662 52, // input 6 (0x6) => '4' (0x34) 663 53, // input 7 (0x7) => '5' (0x35) 664 54, // input 8 (0x8) => '6' (0x36) 665 55, // input 9 (0x9) => '7' (0x37) 666 56, // input 10 (0xA) => '8' (0x38) 667 57, // input 11 (0xB) => '9' (0x39) 668 65, // input 12 (0xC) => 'A' (0x41) 669 66, // input 13 (0xD) => 'B' (0x42) 670 67, // input 14 (0xE) => 'C' (0x43) 671 68, // input 15 (0xF) => 'D' (0x44) 672 69, // input 16 (0x10) => 'E' (0x45) 673 70, // input 17 (0x11) => 'F' (0x46) 674 71, // input 18 (0x12) => 'G' (0x47) 675 72, // input 19 (0x13) => 'H' (0x48) 676 73, // input 20 (0x14) => 'I' (0x49) 677 74, // input 21 (0x15) => 'J' (0x4A) 678 75, // input 22 (0x16) => 'K' (0x4B) 679 76, // input 23 (0x17) => 'L' (0x4C) 680 77, // input 24 (0x18) => 'M' (0x4D) 681 78, // input 25 (0x19) => 'N' (0x4E) 682 79, // input 26 (0x1A) => 'O' (0x4F) 683 80, // input 27 (0x1B) => 'P' (0x50) 684 81, // input 28 (0x1C) => 'Q' (0x51) 685 82, // input 29 (0x1D) => 'R' (0x52) 686 83, // input 30 (0x1E) => 'S' (0x53) 687 84, // input 31 (0x1F) => 'T' (0x54) 688 85, // input 32 (0x20) => 'U' (0x55) 689 86, // input 33 (0x21) => 'V' (0x56) 690 87, // input 34 (0x22) => 'W' (0x57) 691 88, // input 35 (0x23) => 'X' (0x58) 692 89, // input 36 (0x24) => 'Y' (0x59) 693 90, // input 37 (0x25) => 'Z' (0x5A) 694 97, // input 38 (0x26) => 'a' (0x61) 695 98, // input 39 (0x27) => 'b' (0x62) 696 99, // input 40 (0x28) => 'c' (0x63) 697 100, // input 41 (0x29) => 'd' (0x64) 698 101, // input 42 (0x2A) => 'e' (0x65) 699 102, // input 43 (0x2B) => 'f' (0x66) 700 103, // input 44 (0x2C) => 'g' (0x67) 701 104, // input 45 (0x2D) => 'h' (0x68) 702 105, // input 46 (0x2E) => 'i' (0x69) 703 106, // input 47 (0x2F) => 'j' (0x6A) 704 107, // input 48 (0x30) => 'k' (0x6B) 705 108, // input 49 (0x31) => 'l' (0x6C) 706 109, // input 50 (0x32) => 'm' (0x6D) 707 110, // input 51 (0x33) => 'n' (0x6E) 708 111, // input 52 (0x34) => 'o' (0x6F) 709 112, // input 53 (0x35) => 'p' (0x70) 710 113, // input 54 (0x36) => 'q' (0x71) 711 114, // input 55 (0x37) => 'r' (0x72) 712 115, // input 56 (0x38) => 's' (0x73) 713 116, // input 57 (0x39) => 't' (0x74) 714 117, // input 58 (0x3A) => 'u' (0x75) 715 118, // input 59 (0x3B) => 'v' (0x76) 716 119, // input 60 (0x3C) => 'w' (0x77) 717 120, // input 61 (0x3D) => 'x' (0x78) 718 121, // input 62 (0x3E) => 'y' (0x79) 719 122, // input 63 (0x3F) => 'z' (0x7A) 720 ]; 721 #[rustfmt::skip] 722 pub const CRYPT_DECODE: &[u8; 256] = &[ 723 INVALID_VALUE, // input 0 (0x0) 724 INVALID_VALUE, // input 1 (0x1) 725 INVALID_VALUE, // input 2 (0x2) 726 INVALID_VALUE, // input 3 (0x3) 727 INVALID_VALUE, // input 4 (0x4) 728 INVALID_VALUE, // input 5 (0x5) 729 INVALID_VALUE, // input 6 (0x6) 730 INVALID_VALUE, // input 7 (0x7) 731 INVALID_VALUE, // input 8 (0x8) 732 INVALID_VALUE, // input 9 (0x9) 733 INVALID_VALUE, // input 10 (0xA) 734 INVALID_VALUE, // input 11 (0xB) 735 INVALID_VALUE, // input 12 (0xC) 736 INVALID_VALUE, // input 13 (0xD) 737 INVALID_VALUE, // input 14 (0xE) 738 INVALID_VALUE, // input 15 (0xF) 739 INVALID_VALUE, // input 16 (0x10) 740 INVALID_VALUE, // input 17 (0x11) 741 INVALID_VALUE, // input 18 (0x12) 742 INVALID_VALUE, // input 19 (0x13) 743 INVALID_VALUE, // input 20 (0x14) 744 INVALID_VALUE, // input 21 (0x15) 745 INVALID_VALUE, // input 22 (0x16) 746 INVALID_VALUE, // input 23 (0x17) 747 INVALID_VALUE, // input 24 (0x18) 748 INVALID_VALUE, // input 25 (0x19) 749 INVALID_VALUE, // input 26 (0x1A) 750 INVALID_VALUE, // input 27 (0x1B) 751 INVALID_VALUE, // input 28 (0x1C) 752 INVALID_VALUE, // input 29 (0x1D) 753 INVALID_VALUE, // input 30 (0x1E) 754 INVALID_VALUE, // input 31 (0x1F) 755 INVALID_VALUE, // input 32 (0x20) 756 INVALID_VALUE, // input 33 (0x21) 757 INVALID_VALUE, // input 34 (0x22) 758 INVALID_VALUE, // input 35 (0x23) 759 INVALID_VALUE, // input 36 (0x24) 760 INVALID_VALUE, // input 37 (0x25) 761 INVALID_VALUE, // input 38 (0x26) 762 INVALID_VALUE, // input 39 (0x27) 763 INVALID_VALUE, // input 40 (0x28) 764 INVALID_VALUE, // input 41 (0x29) 765 INVALID_VALUE, // input 42 (0x2A) 766 INVALID_VALUE, // input 43 (0x2B) 767 INVALID_VALUE, // input 44 (0x2C) 768 INVALID_VALUE, // input 45 (0x2D) 769 0, // input 46 (0x2E char '.') => 0 (0x0) 770 1, // input 47 (0x2F char '/') => 1 (0x1) 771 2, // input 48 (0x30 char '0') => 2 (0x2) 772 3, // input 49 (0x31 char '1') => 3 (0x3) 773 4, // input 50 (0x32 char '2') => 4 (0x4) 774 5, // input 51 (0x33 char '3') => 5 (0x5) 775 6, // input 52 (0x34 char '4') => 6 (0x6) 776 7, // input 53 (0x35 char '5') => 7 (0x7) 777 8, // input 54 (0x36 char '6') => 8 (0x8) 778 9, // input 55 (0x37 char '7') => 9 (0x9) 779 10, // input 56 (0x38 char '8') => 10 (0xA) 780 11, // input 57 (0x39 char '9') => 11 (0xB) 781 INVALID_VALUE, // input 58 (0x3A) 782 INVALID_VALUE, // input 59 (0x3B) 783 INVALID_VALUE, // input 60 (0x3C) 784 INVALID_VALUE, // input 61 (0x3D) 785 INVALID_VALUE, // input 62 (0x3E) 786 INVALID_VALUE, // input 63 (0x3F) 787 INVALID_VALUE, // input 64 (0x40) 788 12, // input 65 (0x41 char 'A') => 12 (0xC) 789 13, // input 66 (0x42 char 'B') => 13 (0xD) 790 14, // input 67 (0x43 char 'C') => 14 (0xE) 791 15, // input 68 (0x44 char 'D') => 15 (0xF) 792 16, // input 69 (0x45 char 'E') => 16 (0x10) 793 17, // input 70 (0x46 char 'F') => 17 (0x11) 794 18, // input 71 (0x47 char 'G') => 18 (0x12) 795 19, // input 72 (0x48 char 'H') => 19 (0x13) 796 20, // input 73 (0x49 char 'I') => 20 (0x14) 797 21, // input 74 (0x4A char 'J') => 21 (0x15) 798 22, // input 75 (0x4B char 'K') => 22 (0x16) 799 23, // input 76 (0x4C char 'L') => 23 (0x17) 800 24, // input 77 (0x4D char 'M') => 24 (0x18) 801 25, // input 78 (0x4E char 'N') => 25 (0x19) 802 26, // input 79 (0x4F char 'O') => 26 (0x1A) 803 27, // input 80 (0x50 char 'P') => 27 (0x1B) 804 28, // input 81 (0x51 char 'Q') => 28 (0x1C) 805 29, // input 82 (0x52 char 'R') => 29 (0x1D) 806 30, // input 83 (0x53 char 'S') => 30 (0x1E) 807 31, // input 84 (0x54 char 'T') => 31 (0x1F) 808 32, // input 85 (0x55 char 'U') => 32 (0x20) 809 33, // input 86 (0x56 char 'V') => 33 (0x21) 810 34, // input 87 (0x57 char 'W') => 34 (0x22) 811 35, // input 88 (0x58 char 'X') => 35 (0x23) 812 36, // input 89 (0x59 char 'Y') => 36 (0x24) 813 37, // input 90 (0x5A char 'Z') => 37 (0x25) 814 INVALID_VALUE, // input 91 (0x5B) 815 INVALID_VALUE, // input 92 (0x5C) 816 INVALID_VALUE, // input 93 (0x5D) 817 INVALID_VALUE, // input 94 (0x5E) 818 INVALID_VALUE, // input 95 (0x5F) 819 INVALID_VALUE, // input 96 (0x60) 820 38, // input 97 (0x61 char 'a') => 38 (0x26) 821 39, // input 98 (0x62 char 'b') => 39 (0x27) 822 40, // input 99 (0x63 char 'c') => 40 (0x28) 823 41, // input 100 (0x64 char 'd') => 41 (0x29) 824 42, // input 101 (0x65 char 'e') => 42 (0x2A) 825 43, // input 102 (0x66 char 'f') => 43 (0x2B) 826 44, // input 103 (0x67 char 'g') => 44 (0x2C) 827 45, // input 104 (0x68 char 'h') => 45 (0x2D) 828 46, // input 105 (0x69 char 'i') => 46 (0x2E) 829 47, // input 106 (0x6A char 'j') => 47 (0x2F) 830 48, // input 107 (0x6B char 'k') => 48 (0x30) 831 49, // input 108 (0x6C char 'l') => 49 (0x31) 832 50, // input 109 (0x6D char 'm') => 50 (0x32) 833 51, // input 110 (0x6E char 'n') => 51 (0x33) 834 52, // input 111 (0x6F char 'o') => 52 (0x34) 835 53, // input 112 (0x70 char 'p') => 53 (0x35) 836 54, // input 113 (0x71 char 'q') => 54 (0x36) 837 55, // input 114 (0x72 char 'r') => 55 (0x37) 838 56, // input 115 (0x73 char 's') => 56 (0x38) 839 57, // input 116 (0x74 char 't') => 57 (0x39) 840 58, // input 117 (0x75 char 'u') => 58 (0x3A) 841 59, // input 118 (0x76 char 'v') => 59 (0x3B) 842 60, // input 119 (0x77 char 'w') => 60 (0x3C) 843 61, // input 120 (0x78 char 'x') => 61 (0x3D) 844 62, // input 121 (0x79 char 'y') => 62 (0x3E) 845 63, // input 122 (0x7A char 'z') => 63 (0x3F) 846 INVALID_VALUE, // input 123 (0x7B) 847 INVALID_VALUE, // input 124 (0x7C) 848 INVALID_VALUE, // input 125 (0x7D) 849 INVALID_VALUE, // input 126 (0x7E) 850 INVALID_VALUE, // input 127 (0x7F) 851 INVALID_VALUE, // input 128 (0x80) 852 INVALID_VALUE, // input 129 (0x81) 853 INVALID_VALUE, // input 130 (0x82) 854 INVALID_VALUE, // input 131 (0x83) 855 INVALID_VALUE, // input 132 (0x84) 856 INVALID_VALUE, // input 133 (0x85) 857 INVALID_VALUE, // input 134 (0x86) 858 INVALID_VALUE, // input 135 (0x87) 859 INVALID_VALUE, // input 136 (0x88) 860 INVALID_VALUE, // input 137 (0x89) 861 INVALID_VALUE, // input 138 (0x8A) 862 INVALID_VALUE, // input 139 (0x8B) 863 INVALID_VALUE, // input 140 (0x8C) 864 INVALID_VALUE, // input 141 (0x8D) 865 INVALID_VALUE, // input 142 (0x8E) 866 INVALID_VALUE, // input 143 (0x8F) 867 INVALID_VALUE, // input 144 (0x90) 868 INVALID_VALUE, // input 145 (0x91) 869 INVALID_VALUE, // input 146 (0x92) 870 INVALID_VALUE, // input 147 (0x93) 871 INVALID_VALUE, // input 148 (0x94) 872 INVALID_VALUE, // input 149 (0x95) 873 INVALID_VALUE, // input 150 (0x96) 874 INVALID_VALUE, // input 151 (0x97) 875 INVALID_VALUE, // input 152 (0x98) 876 INVALID_VALUE, // input 153 (0x99) 877 INVALID_VALUE, // input 154 (0x9A) 878 INVALID_VALUE, // input 155 (0x9B) 879 INVALID_VALUE, // input 156 (0x9C) 880 INVALID_VALUE, // input 157 (0x9D) 881 INVALID_VALUE, // input 158 (0x9E) 882 INVALID_VALUE, // input 159 (0x9F) 883 INVALID_VALUE, // input 160 (0xA0) 884 INVALID_VALUE, // input 161 (0xA1) 885 INVALID_VALUE, // input 162 (0xA2) 886 INVALID_VALUE, // input 163 (0xA3) 887 INVALID_VALUE, // input 164 (0xA4) 888 INVALID_VALUE, // input 165 (0xA5) 889 INVALID_VALUE, // input 166 (0xA6) 890 INVALID_VALUE, // input 167 (0xA7) 891 INVALID_VALUE, // input 168 (0xA8) 892 INVALID_VALUE, // input 169 (0xA9) 893 INVALID_VALUE, // input 170 (0xAA) 894 INVALID_VALUE, // input 171 (0xAB) 895 INVALID_VALUE, // input 172 (0xAC) 896 INVALID_VALUE, // input 173 (0xAD) 897 INVALID_VALUE, // input 174 (0xAE) 898 INVALID_VALUE, // input 175 (0xAF) 899 INVALID_VALUE, // input 176 (0xB0) 900 INVALID_VALUE, // input 177 (0xB1) 901 INVALID_VALUE, // input 178 (0xB2) 902 INVALID_VALUE, // input 179 (0xB3) 903 INVALID_VALUE, // input 180 (0xB4) 904 INVALID_VALUE, // input 181 (0xB5) 905 INVALID_VALUE, // input 182 (0xB6) 906 INVALID_VALUE, // input 183 (0xB7) 907 INVALID_VALUE, // input 184 (0xB8) 908 INVALID_VALUE, // input 185 (0xB9) 909 INVALID_VALUE, // input 186 (0xBA) 910 INVALID_VALUE, // input 187 (0xBB) 911 INVALID_VALUE, // input 188 (0xBC) 912 INVALID_VALUE, // input 189 (0xBD) 913 INVALID_VALUE, // input 190 (0xBE) 914 INVALID_VALUE, // input 191 (0xBF) 915 INVALID_VALUE, // input 192 (0xC0) 916 INVALID_VALUE, // input 193 (0xC1) 917 INVALID_VALUE, // input 194 (0xC2) 918 INVALID_VALUE, // input 195 (0xC3) 919 INVALID_VALUE, // input 196 (0xC4) 920 INVALID_VALUE, // input 197 (0xC5) 921 INVALID_VALUE, // input 198 (0xC6) 922 INVALID_VALUE, // input 199 (0xC7) 923 INVALID_VALUE, // input 200 (0xC8) 924 INVALID_VALUE, // input 201 (0xC9) 925 INVALID_VALUE, // input 202 (0xCA) 926 INVALID_VALUE, // input 203 (0xCB) 927 INVALID_VALUE, // input 204 (0xCC) 928 INVALID_VALUE, // input 205 (0xCD) 929 INVALID_VALUE, // input 206 (0xCE) 930 INVALID_VALUE, // input 207 (0xCF) 931 INVALID_VALUE, // input 208 (0xD0) 932 INVALID_VALUE, // input 209 (0xD1) 933 INVALID_VALUE, // input 210 (0xD2) 934 INVALID_VALUE, // input 211 (0xD3) 935 INVALID_VALUE, // input 212 (0xD4) 936 INVALID_VALUE, // input 213 (0xD5) 937 INVALID_VALUE, // input 214 (0xD6) 938 INVALID_VALUE, // input 215 (0xD7) 939 INVALID_VALUE, // input 216 (0xD8) 940 INVALID_VALUE, // input 217 (0xD9) 941 INVALID_VALUE, // input 218 (0xDA) 942 INVALID_VALUE, // input 219 (0xDB) 943 INVALID_VALUE, // input 220 (0xDC) 944 INVALID_VALUE, // input 221 (0xDD) 945 INVALID_VALUE, // input 222 (0xDE) 946 INVALID_VALUE, // input 223 (0xDF) 947 INVALID_VALUE, // input 224 (0xE0) 948 INVALID_VALUE, // input 225 (0xE1) 949 INVALID_VALUE, // input 226 (0xE2) 950 INVALID_VALUE, // input 227 (0xE3) 951 INVALID_VALUE, // input 228 (0xE4) 952 INVALID_VALUE, // input 229 (0xE5) 953 INVALID_VALUE, // input 230 (0xE6) 954 INVALID_VALUE, // input 231 (0xE7) 955 INVALID_VALUE, // input 232 (0xE8) 956 INVALID_VALUE, // input 233 (0xE9) 957 INVALID_VALUE, // input 234 (0xEA) 958 INVALID_VALUE, // input 235 (0xEB) 959 INVALID_VALUE, // input 236 (0xEC) 960 INVALID_VALUE, // input 237 (0xED) 961 INVALID_VALUE, // input 238 (0xEE) 962 INVALID_VALUE, // input 239 (0xEF) 963 INVALID_VALUE, // input 240 (0xF0) 964 INVALID_VALUE, // input 241 (0xF1) 965 INVALID_VALUE, // input 242 (0xF2) 966 INVALID_VALUE, // input 243 (0xF3) 967 INVALID_VALUE, // input 244 (0xF4) 968 INVALID_VALUE, // input 245 (0xF5) 969 INVALID_VALUE, // input 246 (0xF6) 970 INVALID_VALUE, // input 247 (0xF7) 971 INVALID_VALUE, // input 248 (0xF8) 972 INVALID_VALUE, // input 249 (0xF9) 973 INVALID_VALUE, // input 250 (0xFA) 974 INVALID_VALUE, // input 251 (0xFB) 975 INVALID_VALUE, // input 252 (0xFC) 976 INVALID_VALUE, // input 253 (0xFD) 977 INVALID_VALUE, // input 254 (0xFE) 978 INVALID_VALUE, // input 255 (0xFF) 979 ]; 980 #[rustfmt::skip] 981 pub const BCRYPT_ENCODE: &[u8; 64] = &[ 982 46, // input 0 (0x0) => '.' (0x2E) 983 47, // input 1 (0x1) => '/' (0x2F) 984 65, // input 2 (0x2) => 'A' (0x41) 985 66, // input 3 (0x3) => 'B' (0x42) 986 67, // input 4 (0x4) => 'C' (0x43) 987 68, // input 5 (0x5) => 'D' (0x44) 988 69, // input 6 (0x6) => 'E' (0x45) 989 70, // input 7 (0x7) => 'F' (0x46) 990 71, // input 8 (0x8) => 'G' (0x47) 991 72, // input 9 (0x9) => 'H' (0x48) 992 73, // input 10 (0xA) => 'I' (0x49) 993 74, // input 11 (0xB) => 'J' (0x4A) 994 75, // input 12 (0xC) => 'K' (0x4B) 995 76, // input 13 (0xD) => 'L' (0x4C) 996 77, // input 14 (0xE) => 'M' (0x4D) 997 78, // input 15 (0xF) => 'N' (0x4E) 998 79, // input 16 (0x10) => 'O' (0x4F) 999 80, // input 17 (0x11) => 'P' (0x50) 1000 81, // input 18 (0x12) => 'Q' (0x51) 1001 82, // input 19 (0x13) => 'R' (0x52) 1002 83, // input 20 (0x14) => 'S' (0x53) 1003 84, // input 21 (0x15) => 'T' (0x54) 1004 85, // input 22 (0x16) => 'U' (0x55) 1005 86, // input 23 (0x17) => 'V' (0x56) 1006 87, // input 24 (0x18) => 'W' (0x57) 1007 88, // input 25 (0x19) => 'X' (0x58) 1008 89, // input 26 (0x1A) => 'Y' (0x59) 1009 90, // input 27 (0x1B) => 'Z' (0x5A) 1010 97, // input 28 (0x1C) => 'a' (0x61) 1011 98, // input 29 (0x1D) => 'b' (0x62) 1012 99, // input 30 (0x1E) => 'c' (0x63) 1013 100, // input 31 (0x1F) => 'd' (0x64) 1014 101, // input 32 (0x20) => 'e' (0x65) 1015 102, // input 33 (0x21) => 'f' (0x66) 1016 103, // input 34 (0x22) => 'g' (0x67) 1017 104, // input 35 (0x23) => 'h' (0x68) 1018 105, // input 36 (0x24) => 'i' (0x69) 1019 106, // input 37 (0x25) => 'j' (0x6A) 1020 107, // input 38 (0x26) => 'k' (0x6B) 1021 108, // input 39 (0x27) => 'l' (0x6C) 1022 109, // input 40 (0x28) => 'm' (0x6D) 1023 110, // input 41 (0x29) => 'n' (0x6E) 1024 111, // input 42 (0x2A) => 'o' (0x6F) 1025 112, // input 43 (0x2B) => 'p' (0x70) 1026 113, // input 44 (0x2C) => 'q' (0x71) 1027 114, // input 45 (0x2D) => 'r' (0x72) 1028 115, // input 46 (0x2E) => 's' (0x73) 1029 116, // input 47 (0x2F) => 't' (0x74) 1030 117, // input 48 (0x30) => 'u' (0x75) 1031 118, // input 49 (0x31) => 'v' (0x76) 1032 119, // input 50 (0x32) => 'w' (0x77) 1033 120, // input 51 (0x33) => 'x' (0x78) 1034 121, // input 52 (0x34) => 'y' (0x79) 1035 122, // input 53 (0x35) => 'z' (0x7A) 1036 48, // input 54 (0x36) => '0' (0x30) 1037 49, // input 55 (0x37) => '1' (0x31) 1038 50, // input 56 (0x38) => '2' (0x32) 1039 51, // input 57 (0x39) => '3' (0x33) 1040 52, // input 58 (0x3A) => '4' (0x34) 1041 53, // input 59 (0x3B) => '5' (0x35) 1042 54, // input 60 (0x3C) => '6' (0x36) 1043 55, // input 61 (0x3D) => '7' (0x37) 1044 56, // input 62 (0x3E) => '8' (0x38) 1045 57, // input 63 (0x3F) => '9' (0x39) 1046 ]; 1047 #[rustfmt::skip] 1048 pub const BCRYPT_DECODE: &[u8; 256] = &[ 1049 INVALID_VALUE, // input 0 (0x0) 1050 INVALID_VALUE, // input 1 (0x1) 1051 INVALID_VALUE, // input 2 (0x2) 1052 INVALID_VALUE, // input 3 (0x3) 1053 INVALID_VALUE, // input 4 (0x4) 1054 INVALID_VALUE, // input 5 (0x5) 1055 INVALID_VALUE, // input 6 (0x6) 1056 INVALID_VALUE, // input 7 (0x7) 1057 INVALID_VALUE, // input 8 (0x8) 1058 INVALID_VALUE, // input 9 (0x9) 1059 INVALID_VALUE, // input 10 (0xA) 1060 INVALID_VALUE, // input 11 (0xB) 1061 INVALID_VALUE, // input 12 (0xC) 1062 INVALID_VALUE, // input 13 (0xD) 1063 INVALID_VALUE, // input 14 (0xE) 1064 INVALID_VALUE, // input 15 (0xF) 1065 INVALID_VALUE, // input 16 (0x10) 1066 INVALID_VALUE, // input 17 (0x11) 1067 INVALID_VALUE, // input 18 (0x12) 1068 INVALID_VALUE, // input 19 (0x13) 1069 INVALID_VALUE, // input 20 (0x14) 1070 INVALID_VALUE, // input 21 (0x15) 1071 INVALID_VALUE, // input 22 (0x16) 1072 INVALID_VALUE, // input 23 (0x17) 1073 INVALID_VALUE, // input 24 (0x18) 1074 INVALID_VALUE, // input 25 (0x19) 1075 INVALID_VALUE, // input 26 (0x1A) 1076 INVALID_VALUE, // input 27 (0x1B) 1077 INVALID_VALUE, // input 28 (0x1C) 1078 INVALID_VALUE, // input 29 (0x1D) 1079 INVALID_VALUE, // input 30 (0x1E) 1080 INVALID_VALUE, // input 31 (0x1F) 1081 INVALID_VALUE, // input 32 (0x20) 1082 INVALID_VALUE, // input 33 (0x21) 1083 INVALID_VALUE, // input 34 (0x22) 1084 INVALID_VALUE, // input 35 (0x23) 1085 INVALID_VALUE, // input 36 (0x24) 1086 INVALID_VALUE, // input 37 (0x25) 1087 INVALID_VALUE, // input 38 (0x26) 1088 INVALID_VALUE, // input 39 (0x27) 1089 INVALID_VALUE, // input 40 (0x28) 1090 INVALID_VALUE, // input 41 (0x29) 1091 INVALID_VALUE, // input 42 (0x2A) 1092 INVALID_VALUE, // input 43 (0x2B) 1093 INVALID_VALUE, // input 44 (0x2C) 1094 INVALID_VALUE, // input 45 (0x2D) 1095 0, // input 46 (0x2E char '.') => 0 (0x0) 1096 1, // input 47 (0x2F char '/') => 1 (0x1) 1097 54, // input 48 (0x30 char '0') => 54 (0x36) 1098 55, // input 49 (0x31 char '1') => 55 (0x37) 1099 56, // input 50 (0x32 char '2') => 56 (0x38) 1100 57, // input 51 (0x33 char '3') => 57 (0x39) 1101 58, // input 52 (0x34 char '4') => 58 (0x3A) 1102 59, // input 53 (0x35 char '5') => 59 (0x3B) 1103 60, // input 54 (0x36 char '6') => 60 (0x3C) 1104 61, // input 55 (0x37 char '7') => 61 (0x3D) 1105 62, // input 56 (0x38 char '8') => 62 (0x3E) 1106 63, // input 57 (0x39 char '9') => 63 (0x3F) 1107 INVALID_VALUE, // input 58 (0x3A) 1108 INVALID_VALUE, // input 59 (0x3B) 1109 INVALID_VALUE, // input 60 (0x3C) 1110 INVALID_VALUE, // input 61 (0x3D) 1111 INVALID_VALUE, // input 62 (0x3E) 1112 INVALID_VALUE, // input 63 (0x3F) 1113 INVALID_VALUE, // input 64 (0x40) 1114 2, // input 65 (0x41 char 'A') => 2 (0x2) 1115 3, // input 66 (0x42 char 'B') => 3 (0x3) 1116 4, // input 67 (0x43 char 'C') => 4 (0x4) 1117 5, // input 68 (0x44 char 'D') => 5 (0x5) 1118 6, // input 69 (0x45 char 'E') => 6 (0x6) 1119 7, // input 70 (0x46 char 'F') => 7 (0x7) 1120 8, // input 71 (0x47 char 'G') => 8 (0x8) 1121 9, // input 72 (0x48 char 'H') => 9 (0x9) 1122 10, // input 73 (0x49 char 'I') => 10 (0xA) 1123 11, // input 74 (0x4A char 'J') => 11 (0xB) 1124 12, // input 75 (0x4B char 'K') => 12 (0xC) 1125 13, // input 76 (0x4C char 'L') => 13 (0xD) 1126 14, // input 77 (0x4D char 'M') => 14 (0xE) 1127 15, // input 78 (0x4E char 'N') => 15 (0xF) 1128 16, // input 79 (0x4F char 'O') => 16 (0x10) 1129 17, // input 80 (0x50 char 'P') => 17 (0x11) 1130 18, // input 81 (0x51 char 'Q') => 18 (0x12) 1131 19, // input 82 (0x52 char 'R') => 19 (0x13) 1132 20, // input 83 (0x53 char 'S') => 20 (0x14) 1133 21, // input 84 (0x54 char 'T') => 21 (0x15) 1134 22, // input 85 (0x55 char 'U') => 22 (0x16) 1135 23, // input 86 (0x56 char 'V') => 23 (0x17) 1136 24, // input 87 (0x57 char 'W') => 24 (0x18) 1137 25, // input 88 (0x58 char 'X') => 25 (0x19) 1138 26, // input 89 (0x59 char 'Y') => 26 (0x1A) 1139 27, // input 90 (0x5A char 'Z') => 27 (0x1B) 1140 INVALID_VALUE, // input 91 (0x5B) 1141 INVALID_VALUE, // input 92 (0x5C) 1142 INVALID_VALUE, // input 93 (0x5D) 1143 INVALID_VALUE, // input 94 (0x5E) 1144 INVALID_VALUE, // input 95 (0x5F) 1145 INVALID_VALUE, // input 96 (0x60) 1146 28, // input 97 (0x61 char 'a') => 28 (0x1C) 1147 29, // input 98 (0x62 char 'b') => 29 (0x1D) 1148 30, // input 99 (0x63 char 'c') => 30 (0x1E) 1149 31, // input 100 (0x64 char 'd') => 31 (0x1F) 1150 32, // input 101 (0x65 char 'e') => 32 (0x20) 1151 33, // input 102 (0x66 char 'f') => 33 (0x21) 1152 34, // input 103 (0x67 char 'g') => 34 (0x22) 1153 35, // input 104 (0x68 char 'h') => 35 (0x23) 1154 36, // input 105 (0x69 char 'i') => 36 (0x24) 1155 37, // input 106 (0x6A char 'j') => 37 (0x25) 1156 38, // input 107 (0x6B char 'k') => 38 (0x26) 1157 39, // input 108 (0x6C char 'l') => 39 (0x27) 1158 40, // input 109 (0x6D char 'm') => 40 (0x28) 1159 41, // input 110 (0x6E char 'n') => 41 (0x29) 1160 42, // input 111 (0x6F char 'o') => 42 (0x2A) 1161 43, // input 112 (0x70 char 'p') => 43 (0x2B) 1162 44, // input 113 (0x71 char 'q') => 44 (0x2C) 1163 45, // input 114 (0x72 char 'r') => 45 (0x2D) 1164 46, // input 115 (0x73 char 's') => 46 (0x2E) 1165 47, // input 116 (0x74 char 't') => 47 (0x2F) 1166 48, // input 117 (0x75 char 'u') => 48 (0x30) 1167 49, // input 118 (0x76 char 'v') => 49 (0x31) 1168 50, // input 119 (0x77 char 'w') => 50 (0x32) 1169 51, // input 120 (0x78 char 'x') => 51 (0x33) 1170 52, // input 121 (0x79 char 'y') => 52 (0x34) 1171 53, // input 122 (0x7A char 'z') => 53 (0x35) 1172 INVALID_VALUE, // input 123 (0x7B) 1173 INVALID_VALUE, // input 124 (0x7C) 1174 INVALID_VALUE, // input 125 (0x7D) 1175 INVALID_VALUE, // input 126 (0x7E) 1176 INVALID_VALUE, // input 127 (0x7F) 1177 INVALID_VALUE, // input 128 (0x80) 1178 INVALID_VALUE, // input 129 (0x81) 1179 INVALID_VALUE, // input 130 (0x82) 1180 INVALID_VALUE, // input 131 (0x83) 1181 INVALID_VALUE, // input 132 (0x84) 1182 INVALID_VALUE, // input 133 (0x85) 1183 INVALID_VALUE, // input 134 (0x86) 1184 INVALID_VALUE, // input 135 (0x87) 1185 INVALID_VALUE, // input 136 (0x88) 1186 INVALID_VALUE, // input 137 (0x89) 1187 INVALID_VALUE, // input 138 (0x8A) 1188 INVALID_VALUE, // input 139 (0x8B) 1189 INVALID_VALUE, // input 140 (0x8C) 1190 INVALID_VALUE, // input 141 (0x8D) 1191 INVALID_VALUE, // input 142 (0x8E) 1192 INVALID_VALUE, // input 143 (0x8F) 1193 INVALID_VALUE, // input 144 (0x90) 1194 INVALID_VALUE, // input 145 (0x91) 1195 INVALID_VALUE, // input 146 (0x92) 1196 INVALID_VALUE, // input 147 (0x93) 1197 INVALID_VALUE, // input 148 (0x94) 1198 INVALID_VALUE, // input 149 (0x95) 1199 INVALID_VALUE, // input 150 (0x96) 1200 INVALID_VALUE, // input 151 (0x97) 1201 INVALID_VALUE, // input 152 (0x98) 1202 INVALID_VALUE, // input 153 (0x99) 1203 INVALID_VALUE, // input 154 (0x9A) 1204 INVALID_VALUE, // input 155 (0x9B) 1205 INVALID_VALUE, // input 156 (0x9C) 1206 INVALID_VALUE, // input 157 (0x9D) 1207 INVALID_VALUE, // input 158 (0x9E) 1208 INVALID_VALUE, // input 159 (0x9F) 1209 INVALID_VALUE, // input 160 (0xA0) 1210 INVALID_VALUE, // input 161 (0xA1) 1211 INVALID_VALUE, // input 162 (0xA2) 1212 INVALID_VALUE, // input 163 (0xA3) 1213 INVALID_VALUE, // input 164 (0xA4) 1214 INVALID_VALUE, // input 165 (0xA5) 1215 INVALID_VALUE, // input 166 (0xA6) 1216 INVALID_VALUE, // input 167 (0xA7) 1217 INVALID_VALUE, // input 168 (0xA8) 1218 INVALID_VALUE, // input 169 (0xA9) 1219 INVALID_VALUE, // input 170 (0xAA) 1220 INVALID_VALUE, // input 171 (0xAB) 1221 INVALID_VALUE, // input 172 (0xAC) 1222 INVALID_VALUE, // input 173 (0xAD) 1223 INVALID_VALUE, // input 174 (0xAE) 1224 INVALID_VALUE, // input 175 (0xAF) 1225 INVALID_VALUE, // input 176 (0xB0) 1226 INVALID_VALUE, // input 177 (0xB1) 1227 INVALID_VALUE, // input 178 (0xB2) 1228 INVALID_VALUE, // input 179 (0xB3) 1229 INVALID_VALUE, // input 180 (0xB4) 1230 INVALID_VALUE, // input 181 (0xB5) 1231 INVALID_VALUE, // input 182 (0xB6) 1232 INVALID_VALUE, // input 183 (0xB7) 1233 INVALID_VALUE, // input 184 (0xB8) 1234 INVALID_VALUE, // input 185 (0xB9) 1235 INVALID_VALUE, // input 186 (0xBA) 1236 INVALID_VALUE, // input 187 (0xBB) 1237 INVALID_VALUE, // input 188 (0xBC) 1238 INVALID_VALUE, // input 189 (0xBD) 1239 INVALID_VALUE, // input 190 (0xBE) 1240 INVALID_VALUE, // input 191 (0xBF) 1241 INVALID_VALUE, // input 192 (0xC0) 1242 INVALID_VALUE, // input 193 (0xC1) 1243 INVALID_VALUE, // input 194 (0xC2) 1244 INVALID_VALUE, // input 195 (0xC3) 1245 INVALID_VALUE, // input 196 (0xC4) 1246 INVALID_VALUE, // input 197 (0xC5) 1247 INVALID_VALUE, // input 198 (0xC6) 1248 INVALID_VALUE, // input 199 (0xC7) 1249 INVALID_VALUE, // input 200 (0xC8) 1250 INVALID_VALUE, // input 201 (0xC9) 1251 INVALID_VALUE, // input 202 (0xCA) 1252 INVALID_VALUE, // input 203 (0xCB) 1253 INVALID_VALUE, // input 204 (0xCC) 1254 INVALID_VALUE, // input 205 (0xCD) 1255 INVALID_VALUE, // input 206 (0xCE) 1256 INVALID_VALUE, // input 207 (0xCF) 1257 INVALID_VALUE, // input 208 (0xD0) 1258 INVALID_VALUE, // input 209 (0xD1) 1259 INVALID_VALUE, // input 210 (0xD2) 1260 INVALID_VALUE, // input 211 (0xD3) 1261 INVALID_VALUE, // input 212 (0xD4) 1262 INVALID_VALUE, // input 213 (0xD5) 1263 INVALID_VALUE, // input 214 (0xD6) 1264 INVALID_VALUE, // input 215 (0xD7) 1265 INVALID_VALUE, // input 216 (0xD8) 1266 INVALID_VALUE, // input 217 (0xD9) 1267 INVALID_VALUE, // input 218 (0xDA) 1268 INVALID_VALUE, // input 219 (0xDB) 1269 INVALID_VALUE, // input 220 (0xDC) 1270 INVALID_VALUE, // input 221 (0xDD) 1271 INVALID_VALUE, // input 222 (0xDE) 1272 INVALID_VALUE, // input 223 (0xDF) 1273 INVALID_VALUE, // input 224 (0xE0) 1274 INVALID_VALUE, // input 225 (0xE1) 1275 INVALID_VALUE, // input 226 (0xE2) 1276 INVALID_VALUE, // input 227 (0xE3) 1277 INVALID_VALUE, // input 228 (0xE4) 1278 INVALID_VALUE, // input 229 (0xE5) 1279 INVALID_VALUE, // input 230 (0xE6) 1280 INVALID_VALUE, // input 231 (0xE7) 1281 INVALID_VALUE, // input 232 (0xE8) 1282 INVALID_VALUE, // input 233 (0xE9) 1283 INVALID_VALUE, // input 234 (0xEA) 1284 INVALID_VALUE, // input 235 (0xEB) 1285 INVALID_VALUE, // input 236 (0xEC) 1286 INVALID_VALUE, // input 237 (0xED) 1287 INVALID_VALUE, // input 238 (0xEE) 1288 INVALID_VALUE, // input 239 (0xEF) 1289 INVALID_VALUE, // input 240 (0xF0) 1290 INVALID_VALUE, // input 241 (0xF1) 1291 INVALID_VALUE, // input 242 (0xF2) 1292 INVALID_VALUE, // input 243 (0xF3) 1293 INVALID_VALUE, // input 244 (0xF4) 1294 INVALID_VALUE, // input 245 (0xF5) 1295 INVALID_VALUE, // input 246 (0xF6) 1296 INVALID_VALUE, // input 247 (0xF7) 1297 INVALID_VALUE, // input 248 (0xF8) 1298 INVALID_VALUE, // input 249 (0xF9) 1299 INVALID_VALUE, // input 250 (0xFA) 1300 INVALID_VALUE, // input 251 (0xFB) 1301 INVALID_VALUE, // input 252 (0xFC) 1302 INVALID_VALUE, // input 253 (0xFD) 1303 INVALID_VALUE, // input 254 (0xFE) 1304 INVALID_VALUE, // input 255 (0xFF) 1305 ]; 1306 #[rustfmt::skip] 1307 pub const IMAP_MUTF7_ENCODE: &[u8; 64] = &[ 1308 65, // input 0 (0x0) => 'A' (0x41) 1309 66, // input 1 (0x1) => 'B' (0x42) 1310 67, // input 2 (0x2) => 'C' (0x43) 1311 68, // input 3 (0x3) => 'D' (0x44) 1312 69, // input 4 (0x4) => 'E' (0x45) 1313 70, // input 5 (0x5) => 'F' (0x46) 1314 71, // input 6 (0x6) => 'G' (0x47) 1315 72, // input 7 (0x7) => 'H' (0x48) 1316 73, // input 8 (0x8) => 'I' (0x49) 1317 74, // input 9 (0x9) => 'J' (0x4A) 1318 75, // input 10 (0xA) => 'K' (0x4B) 1319 76, // input 11 (0xB) => 'L' (0x4C) 1320 77, // input 12 (0xC) => 'M' (0x4D) 1321 78, // input 13 (0xD) => 'N' (0x4E) 1322 79, // input 14 (0xE) => 'O' (0x4F) 1323 80, // input 15 (0xF) => 'P' (0x50) 1324 81, // input 16 (0x10) => 'Q' (0x51) 1325 82, // input 17 (0x11) => 'R' (0x52) 1326 83, // input 18 (0x12) => 'S' (0x53) 1327 84, // input 19 (0x13) => 'T' (0x54) 1328 85, // input 20 (0x14) => 'U' (0x55) 1329 86, // input 21 (0x15) => 'V' (0x56) 1330 87, // input 22 (0x16) => 'W' (0x57) 1331 88, // input 23 (0x17) => 'X' (0x58) 1332 89, // input 24 (0x18) => 'Y' (0x59) 1333 90, // input 25 (0x19) => 'Z' (0x5A) 1334 97, // input 26 (0x1A) => 'a' (0x61) 1335 98, // input 27 (0x1B) => 'b' (0x62) 1336 99, // input 28 (0x1C) => 'c' (0x63) 1337 100, // input 29 (0x1D) => 'd' (0x64) 1338 101, // input 30 (0x1E) => 'e' (0x65) 1339 102, // input 31 (0x1F) => 'f' (0x66) 1340 103, // input 32 (0x20) => 'g' (0x67) 1341 104, // input 33 (0x21) => 'h' (0x68) 1342 105, // input 34 (0x22) => 'i' (0x69) 1343 106, // input 35 (0x23) => 'j' (0x6A) 1344 107, // input 36 (0x24) => 'k' (0x6B) 1345 108, // input 37 (0x25) => 'l' (0x6C) 1346 109, // input 38 (0x26) => 'm' (0x6D) 1347 110, // input 39 (0x27) => 'n' (0x6E) 1348 111, // input 40 (0x28) => 'o' (0x6F) 1349 112, // input 41 (0x29) => 'p' (0x70) 1350 113, // input 42 (0x2A) => 'q' (0x71) 1351 114, // input 43 (0x2B) => 'r' (0x72) 1352 115, // input 44 (0x2C) => 's' (0x73) 1353 116, // input 45 (0x2D) => 't' (0x74) 1354 117, // input 46 (0x2E) => 'u' (0x75) 1355 118, // input 47 (0x2F) => 'v' (0x76) 1356 119, // input 48 (0x30) => 'w' (0x77) 1357 120, // input 49 (0x31) => 'x' (0x78) 1358 121, // input 50 (0x32) => 'y' (0x79) 1359 122, // input 51 (0x33) => 'z' (0x7A) 1360 48, // input 52 (0x34) => '0' (0x30) 1361 49, // input 53 (0x35) => '1' (0x31) 1362 50, // input 54 (0x36) => '2' (0x32) 1363 51, // input 55 (0x37) => '3' (0x33) 1364 52, // input 56 (0x38) => '4' (0x34) 1365 53, // input 57 (0x39) => '5' (0x35) 1366 54, // input 58 (0x3A) => '6' (0x36) 1367 55, // input 59 (0x3B) => '7' (0x37) 1368 56, // input 60 (0x3C) => '8' (0x38) 1369 57, // input 61 (0x3D) => '9' (0x39) 1370 43, // input 62 (0x3E) => '+' (0x2B) 1371 44, // input 63 (0x3F) => ',' (0x2C) 1372 ]; 1373 #[rustfmt::skip] 1374 pub const IMAP_MUTF7_DECODE: &[u8; 256] = &[ 1375 INVALID_VALUE, // input 0 (0x0) 1376 INVALID_VALUE, // input 1 (0x1) 1377 INVALID_VALUE, // input 2 (0x2) 1378 INVALID_VALUE, // input 3 (0x3) 1379 INVALID_VALUE, // input 4 (0x4) 1380 INVALID_VALUE, // input 5 (0x5) 1381 INVALID_VALUE, // input 6 (0x6) 1382 INVALID_VALUE, // input 7 (0x7) 1383 INVALID_VALUE, // input 8 (0x8) 1384 INVALID_VALUE, // input 9 (0x9) 1385 INVALID_VALUE, // input 10 (0xA) 1386 INVALID_VALUE, // input 11 (0xB) 1387 INVALID_VALUE, // input 12 (0xC) 1388 INVALID_VALUE, // input 13 (0xD) 1389 INVALID_VALUE, // input 14 (0xE) 1390 INVALID_VALUE, // input 15 (0xF) 1391 INVALID_VALUE, // input 16 (0x10) 1392 INVALID_VALUE, // input 17 (0x11) 1393 INVALID_VALUE, // input 18 (0x12) 1394 INVALID_VALUE, // input 19 (0x13) 1395 INVALID_VALUE, // input 20 (0x14) 1396 INVALID_VALUE, // input 21 (0x15) 1397 INVALID_VALUE, // input 22 (0x16) 1398 INVALID_VALUE, // input 23 (0x17) 1399 INVALID_VALUE, // input 24 (0x18) 1400 INVALID_VALUE, // input 25 (0x19) 1401 INVALID_VALUE, // input 26 (0x1A) 1402 INVALID_VALUE, // input 27 (0x1B) 1403 INVALID_VALUE, // input 28 (0x1C) 1404 INVALID_VALUE, // input 29 (0x1D) 1405 INVALID_VALUE, // input 30 (0x1E) 1406 INVALID_VALUE, // input 31 (0x1F) 1407 INVALID_VALUE, // input 32 (0x20) 1408 INVALID_VALUE, // input 33 (0x21) 1409 INVALID_VALUE, // input 34 (0x22) 1410 INVALID_VALUE, // input 35 (0x23) 1411 INVALID_VALUE, // input 36 (0x24) 1412 INVALID_VALUE, // input 37 (0x25) 1413 INVALID_VALUE, // input 38 (0x26) 1414 INVALID_VALUE, // input 39 (0x27) 1415 INVALID_VALUE, // input 40 (0x28) 1416 INVALID_VALUE, // input 41 (0x29) 1417 INVALID_VALUE, // input 42 (0x2A) 1418 62, // input 43 (0x2B char '+') => 62 (0x3E) 1419 63, // input 44 (0x2C char ',') => 63 (0x3F) 1420 INVALID_VALUE, // input 45 (0x2D) 1421 INVALID_VALUE, // input 46 (0x2E) 1422 INVALID_VALUE, // input 47 (0x2F) 1423 52, // input 48 (0x30 char '0') => 52 (0x34) 1424 53, // input 49 (0x31 char '1') => 53 (0x35) 1425 54, // input 50 (0x32 char '2') => 54 (0x36) 1426 55, // input 51 (0x33 char '3') => 55 (0x37) 1427 56, // input 52 (0x34 char '4') => 56 (0x38) 1428 57, // input 53 (0x35 char '5') => 57 (0x39) 1429 58, // input 54 (0x36 char '6') => 58 (0x3A) 1430 59, // input 55 (0x37 char '7') => 59 (0x3B) 1431 60, // input 56 (0x38 char '8') => 60 (0x3C) 1432 61, // input 57 (0x39 char '9') => 61 (0x3D) 1433 INVALID_VALUE, // input 58 (0x3A) 1434 INVALID_VALUE, // input 59 (0x3B) 1435 INVALID_VALUE, // input 60 (0x3C) 1436 INVALID_VALUE, // input 61 (0x3D) 1437 INVALID_VALUE, // input 62 (0x3E) 1438 INVALID_VALUE, // input 63 (0x3F) 1439 INVALID_VALUE, // input 64 (0x40) 1440 0, // input 65 (0x41 char 'A') => 0 (0x0) 1441 1, // input 66 (0x42 char 'B') => 1 (0x1) 1442 2, // input 67 (0x43 char 'C') => 2 (0x2) 1443 3, // input 68 (0x44 char 'D') => 3 (0x3) 1444 4, // input 69 (0x45 char 'E') => 4 (0x4) 1445 5, // input 70 (0x46 char 'F') => 5 (0x5) 1446 6, // input 71 (0x47 char 'G') => 6 (0x6) 1447 7, // input 72 (0x48 char 'H') => 7 (0x7) 1448 8, // input 73 (0x49 char 'I') => 8 (0x8) 1449 9, // input 74 (0x4A char 'J') => 9 (0x9) 1450 10, // input 75 (0x4B char 'K') => 10 (0xA) 1451 11, // input 76 (0x4C char 'L') => 11 (0xB) 1452 12, // input 77 (0x4D char 'M') => 12 (0xC) 1453 13, // input 78 (0x4E char 'N') => 13 (0xD) 1454 14, // input 79 (0x4F char 'O') => 14 (0xE) 1455 15, // input 80 (0x50 char 'P') => 15 (0xF) 1456 16, // input 81 (0x51 char 'Q') => 16 (0x10) 1457 17, // input 82 (0x52 char 'R') => 17 (0x11) 1458 18, // input 83 (0x53 char 'S') => 18 (0x12) 1459 19, // input 84 (0x54 char 'T') => 19 (0x13) 1460 20, // input 85 (0x55 char 'U') => 20 (0x14) 1461 21, // input 86 (0x56 char 'V') => 21 (0x15) 1462 22, // input 87 (0x57 char 'W') => 22 (0x16) 1463 23, // input 88 (0x58 char 'X') => 23 (0x17) 1464 24, // input 89 (0x59 char 'Y') => 24 (0x18) 1465 25, // input 90 (0x5A char 'Z') => 25 (0x19) 1466 INVALID_VALUE, // input 91 (0x5B) 1467 INVALID_VALUE, // input 92 (0x5C) 1468 INVALID_VALUE, // input 93 (0x5D) 1469 INVALID_VALUE, // input 94 (0x5E) 1470 INVALID_VALUE, // input 95 (0x5F) 1471 INVALID_VALUE, // input 96 (0x60) 1472 26, // input 97 (0x61 char 'a') => 26 (0x1A) 1473 27, // input 98 (0x62 char 'b') => 27 (0x1B) 1474 28, // input 99 (0x63 char 'c') => 28 (0x1C) 1475 29, // input 100 (0x64 char 'd') => 29 (0x1D) 1476 30, // input 101 (0x65 char 'e') => 30 (0x1E) 1477 31, // input 102 (0x66 char 'f') => 31 (0x1F) 1478 32, // input 103 (0x67 char 'g') => 32 (0x20) 1479 33, // input 104 (0x68 char 'h') => 33 (0x21) 1480 34, // input 105 (0x69 char 'i') => 34 (0x22) 1481 35, // input 106 (0x6A char 'j') => 35 (0x23) 1482 36, // input 107 (0x6B char 'k') => 36 (0x24) 1483 37, // input 108 (0x6C char 'l') => 37 (0x25) 1484 38, // input 109 (0x6D char 'm') => 38 (0x26) 1485 39, // input 110 (0x6E char 'n') => 39 (0x27) 1486 40, // input 111 (0x6F char 'o') => 40 (0x28) 1487 41, // input 112 (0x70 char 'p') => 41 (0x29) 1488 42, // input 113 (0x71 char 'q') => 42 (0x2A) 1489 43, // input 114 (0x72 char 'r') => 43 (0x2B) 1490 44, // input 115 (0x73 char 's') => 44 (0x2C) 1491 45, // input 116 (0x74 char 't') => 45 (0x2D) 1492 46, // input 117 (0x75 char 'u') => 46 (0x2E) 1493 47, // input 118 (0x76 char 'v') => 47 (0x2F) 1494 48, // input 119 (0x77 char 'w') => 48 (0x30) 1495 49, // input 120 (0x78 char 'x') => 49 (0x31) 1496 50, // input 121 (0x79 char 'y') => 50 (0x32) 1497 51, // input 122 (0x7A char 'z') => 51 (0x33) 1498 INVALID_VALUE, // input 123 (0x7B) 1499 INVALID_VALUE, // input 124 (0x7C) 1500 INVALID_VALUE, // input 125 (0x7D) 1501 INVALID_VALUE, // input 126 (0x7E) 1502 INVALID_VALUE, // input 127 (0x7F) 1503 INVALID_VALUE, // input 128 (0x80) 1504 INVALID_VALUE, // input 129 (0x81) 1505 INVALID_VALUE, // input 130 (0x82) 1506 INVALID_VALUE, // input 131 (0x83) 1507 INVALID_VALUE, // input 132 (0x84) 1508 INVALID_VALUE, // input 133 (0x85) 1509 INVALID_VALUE, // input 134 (0x86) 1510 INVALID_VALUE, // input 135 (0x87) 1511 INVALID_VALUE, // input 136 (0x88) 1512 INVALID_VALUE, // input 137 (0x89) 1513 INVALID_VALUE, // input 138 (0x8A) 1514 INVALID_VALUE, // input 139 (0x8B) 1515 INVALID_VALUE, // input 140 (0x8C) 1516 INVALID_VALUE, // input 141 (0x8D) 1517 INVALID_VALUE, // input 142 (0x8E) 1518 INVALID_VALUE, // input 143 (0x8F) 1519 INVALID_VALUE, // input 144 (0x90) 1520 INVALID_VALUE, // input 145 (0x91) 1521 INVALID_VALUE, // input 146 (0x92) 1522 INVALID_VALUE, // input 147 (0x93) 1523 INVALID_VALUE, // input 148 (0x94) 1524 INVALID_VALUE, // input 149 (0x95) 1525 INVALID_VALUE, // input 150 (0x96) 1526 INVALID_VALUE, // input 151 (0x97) 1527 INVALID_VALUE, // input 152 (0x98) 1528 INVALID_VALUE, // input 153 (0x99) 1529 INVALID_VALUE, // input 154 (0x9A) 1530 INVALID_VALUE, // input 155 (0x9B) 1531 INVALID_VALUE, // input 156 (0x9C) 1532 INVALID_VALUE, // input 157 (0x9D) 1533 INVALID_VALUE, // input 158 (0x9E) 1534 INVALID_VALUE, // input 159 (0x9F) 1535 INVALID_VALUE, // input 160 (0xA0) 1536 INVALID_VALUE, // input 161 (0xA1) 1537 INVALID_VALUE, // input 162 (0xA2) 1538 INVALID_VALUE, // input 163 (0xA3) 1539 INVALID_VALUE, // input 164 (0xA4) 1540 INVALID_VALUE, // input 165 (0xA5) 1541 INVALID_VALUE, // input 166 (0xA6) 1542 INVALID_VALUE, // input 167 (0xA7) 1543 INVALID_VALUE, // input 168 (0xA8) 1544 INVALID_VALUE, // input 169 (0xA9) 1545 INVALID_VALUE, // input 170 (0xAA) 1546 INVALID_VALUE, // input 171 (0xAB) 1547 INVALID_VALUE, // input 172 (0xAC) 1548 INVALID_VALUE, // input 173 (0xAD) 1549 INVALID_VALUE, // input 174 (0xAE) 1550 INVALID_VALUE, // input 175 (0xAF) 1551 INVALID_VALUE, // input 176 (0xB0) 1552 INVALID_VALUE, // input 177 (0xB1) 1553 INVALID_VALUE, // input 178 (0xB2) 1554 INVALID_VALUE, // input 179 (0xB3) 1555 INVALID_VALUE, // input 180 (0xB4) 1556 INVALID_VALUE, // input 181 (0xB5) 1557 INVALID_VALUE, // input 182 (0xB6) 1558 INVALID_VALUE, // input 183 (0xB7) 1559 INVALID_VALUE, // input 184 (0xB8) 1560 INVALID_VALUE, // input 185 (0xB9) 1561 INVALID_VALUE, // input 186 (0xBA) 1562 INVALID_VALUE, // input 187 (0xBB) 1563 INVALID_VALUE, // input 188 (0xBC) 1564 INVALID_VALUE, // input 189 (0xBD) 1565 INVALID_VALUE, // input 190 (0xBE) 1566 INVALID_VALUE, // input 191 (0xBF) 1567 INVALID_VALUE, // input 192 (0xC0) 1568 INVALID_VALUE, // input 193 (0xC1) 1569 INVALID_VALUE, // input 194 (0xC2) 1570 INVALID_VALUE, // input 195 (0xC3) 1571 INVALID_VALUE, // input 196 (0xC4) 1572 INVALID_VALUE, // input 197 (0xC5) 1573 INVALID_VALUE, // input 198 (0xC6) 1574 INVALID_VALUE, // input 199 (0xC7) 1575 INVALID_VALUE, // input 200 (0xC8) 1576 INVALID_VALUE, // input 201 (0xC9) 1577 INVALID_VALUE, // input 202 (0xCA) 1578 INVALID_VALUE, // input 203 (0xCB) 1579 INVALID_VALUE, // input 204 (0xCC) 1580 INVALID_VALUE, // input 205 (0xCD) 1581 INVALID_VALUE, // input 206 (0xCE) 1582 INVALID_VALUE, // input 207 (0xCF) 1583 INVALID_VALUE, // input 208 (0xD0) 1584 INVALID_VALUE, // input 209 (0xD1) 1585 INVALID_VALUE, // input 210 (0xD2) 1586 INVALID_VALUE, // input 211 (0xD3) 1587 INVALID_VALUE, // input 212 (0xD4) 1588 INVALID_VALUE, // input 213 (0xD5) 1589 INVALID_VALUE, // input 214 (0xD6) 1590 INVALID_VALUE, // input 215 (0xD7) 1591 INVALID_VALUE, // input 216 (0xD8) 1592 INVALID_VALUE, // input 217 (0xD9) 1593 INVALID_VALUE, // input 218 (0xDA) 1594 INVALID_VALUE, // input 219 (0xDB) 1595 INVALID_VALUE, // input 220 (0xDC) 1596 INVALID_VALUE, // input 221 (0xDD) 1597 INVALID_VALUE, // input 222 (0xDE) 1598 INVALID_VALUE, // input 223 (0xDF) 1599 INVALID_VALUE, // input 224 (0xE0) 1600 INVALID_VALUE, // input 225 (0xE1) 1601 INVALID_VALUE, // input 226 (0xE2) 1602 INVALID_VALUE, // input 227 (0xE3) 1603 INVALID_VALUE, // input 228 (0xE4) 1604 INVALID_VALUE, // input 229 (0xE5) 1605 INVALID_VALUE, // input 230 (0xE6) 1606 INVALID_VALUE, // input 231 (0xE7) 1607 INVALID_VALUE, // input 232 (0xE8) 1608 INVALID_VALUE, // input 233 (0xE9) 1609 INVALID_VALUE, // input 234 (0xEA) 1610 INVALID_VALUE, // input 235 (0xEB) 1611 INVALID_VALUE, // input 236 (0xEC) 1612 INVALID_VALUE, // input 237 (0xED) 1613 INVALID_VALUE, // input 238 (0xEE) 1614 INVALID_VALUE, // input 239 (0xEF) 1615 INVALID_VALUE, // input 240 (0xF0) 1616 INVALID_VALUE, // input 241 (0xF1) 1617 INVALID_VALUE, // input 242 (0xF2) 1618 INVALID_VALUE, // input 243 (0xF3) 1619 INVALID_VALUE, // input 244 (0xF4) 1620 INVALID_VALUE, // input 245 (0xF5) 1621 INVALID_VALUE, // input 246 (0xF6) 1622 INVALID_VALUE, // input 247 (0xF7) 1623 INVALID_VALUE, // input 248 (0xF8) 1624 INVALID_VALUE, // input 249 (0xF9) 1625 INVALID_VALUE, // input 250 (0xFA) 1626 INVALID_VALUE, // input 251 (0xFB) 1627 INVALID_VALUE, // input 252 (0xFC) 1628 INVALID_VALUE, // input 253 (0xFD) 1629 INVALID_VALUE, // input 254 (0xFE) 1630 INVALID_VALUE, // input 255 (0xFF) 1631 ]; 1632 #[rustfmt::skip] 1633 pub const BINHEX_ENCODE: &[u8; 64] = &[ 1634 33, // input 0 (0x0) => '!' (0x21) 1635 34, // input 1 (0x1) => '"' (0x22) 1636 35, // input 2 (0x2) => '#' (0x23) 1637 36, // input 3 (0x3) => '$' (0x24) 1638 37, // input 4 (0x4) => '%' (0x25) 1639 38, // input 5 (0x5) => '&' (0x26) 1640 39, // input 6 (0x6) => ''' (0x27) 1641 40, // input 7 (0x7) => '(' (0x28) 1642 41, // input 8 (0x8) => ')' (0x29) 1643 42, // input 9 (0x9) => '*' (0x2A) 1644 43, // input 10 (0xA) => '+' (0x2B) 1645 44, // input 11 (0xB) => ',' (0x2C) 1646 45, // input 12 (0xC) => '-' (0x2D) 1647 48, // input 13 (0xD) => '0' (0x30) 1648 49, // input 14 (0xE) => '1' (0x31) 1649 50, // input 15 (0xF) => '2' (0x32) 1650 51, // input 16 (0x10) => '3' (0x33) 1651 52, // input 17 (0x11) => '4' (0x34) 1652 53, // input 18 (0x12) => '5' (0x35) 1653 54, // input 19 (0x13) => '6' (0x36) 1654 55, // input 20 (0x14) => '7' (0x37) 1655 56, // input 21 (0x15) => '8' (0x38) 1656 57, // input 22 (0x16) => '9' (0x39) 1657 64, // input 23 (0x17) => '@' (0x40) 1658 65, // input 24 (0x18) => 'A' (0x41) 1659 66, // input 25 (0x19) => 'B' (0x42) 1660 67, // input 26 (0x1A) => 'C' (0x43) 1661 68, // input 27 (0x1B) => 'D' (0x44) 1662 69, // input 28 (0x1C) => 'E' (0x45) 1663 70, // input 29 (0x1D) => 'F' (0x46) 1664 71, // input 30 (0x1E) => 'G' (0x47) 1665 72, // input 31 (0x1F) => 'H' (0x48) 1666 73, // input 32 (0x20) => 'I' (0x49) 1667 74, // input 33 (0x21) => 'J' (0x4A) 1668 75, // input 34 (0x22) => 'K' (0x4B) 1669 76, // input 35 (0x23) => 'L' (0x4C) 1670 77, // input 36 (0x24) => 'M' (0x4D) 1671 78, // input 37 (0x25) => 'N' (0x4E) 1672 80, // input 38 (0x26) => 'P' (0x50) 1673 81, // input 39 (0x27) => 'Q' (0x51) 1674 82, // input 40 (0x28) => 'R' (0x52) 1675 83, // input 41 (0x29) => 'S' (0x53) 1676 84, // input 42 (0x2A) => 'T' (0x54) 1677 85, // input 43 (0x2B) => 'U' (0x55) 1678 86, // input 44 (0x2C) => 'V' (0x56) 1679 88, // input 45 (0x2D) => 'X' (0x58) 1680 89, // input 46 (0x2E) => 'Y' (0x59) 1681 90, // input 47 (0x2F) => 'Z' (0x5A) 1682 91, // input 48 (0x30) => '[' (0x5B) 1683 96, // input 49 (0x31) => '`' (0x60) 1684 97, // input 50 (0x32) => 'a' (0x61) 1685 98, // input 51 (0x33) => 'b' (0x62) 1686 99, // input 52 (0x34) => 'c' (0x63) 1687 100, // input 53 (0x35) => 'd' (0x64) 1688 101, // input 54 (0x36) => 'e' (0x65) 1689 104, // input 55 (0x37) => 'h' (0x68) 1690 105, // input 56 (0x38) => 'i' (0x69) 1691 106, // input 57 (0x39) => 'j' (0x6A) 1692 107, // input 58 (0x3A) => 'k' (0x6B) 1693 108, // input 59 (0x3B) => 'l' (0x6C) 1694 109, // input 60 (0x3C) => 'm' (0x6D) 1695 112, // input 61 (0x3D) => 'p' (0x70) 1696 113, // input 62 (0x3E) => 'q' (0x71) 1697 114, // input 63 (0x3F) => 'r' (0x72) 1698 ]; 1699 #[rustfmt::skip] 1700 pub const BINHEX_DECODE: &[u8; 256] = &[ 1701 INVALID_VALUE, // input 0 (0x0) 1702 INVALID_VALUE, // input 1 (0x1) 1703 INVALID_VALUE, // input 2 (0x2) 1704 INVALID_VALUE, // input 3 (0x3) 1705 INVALID_VALUE, // input 4 (0x4) 1706 INVALID_VALUE, // input 5 (0x5) 1707 INVALID_VALUE, // input 6 (0x6) 1708 INVALID_VALUE, // input 7 (0x7) 1709 INVALID_VALUE, // input 8 (0x8) 1710 INVALID_VALUE, // input 9 (0x9) 1711 INVALID_VALUE, // input 10 (0xA) 1712 INVALID_VALUE, // input 11 (0xB) 1713 INVALID_VALUE, // input 12 (0xC) 1714 INVALID_VALUE, // input 13 (0xD) 1715 INVALID_VALUE, // input 14 (0xE) 1716 INVALID_VALUE, // input 15 (0xF) 1717 INVALID_VALUE, // input 16 (0x10) 1718 INVALID_VALUE, // input 17 (0x11) 1719 INVALID_VALUE, // input 18 (0x12) 1720 INVALID_VALUE, // input 19 (0x13) 1721 INVALID_VALUE, // input 20 (0x14) 1722 INVALID_VALUE, // input 21 (0x15) 1723 INVALID_VALUE, // input 22 (0x16) 1724 INVALID_VALUE, // input 23 (0x17) 1725 INVALID_VALUE, // input 24 (0x18) 1726 INVALID_VALUE, // input 25 (0x19) 1727 INVALID_VALUE, // input 26 (0x1A) 1728 INVALID_VALUE, // input 27 (0x1B) 1729 INVALID_VALUE, // input 28 (0x1C) 1730 INVALID_VALUE, // input 29 (0x1D) 1731 INVALID_VALUE, // input 30 (0x1E) 1732 INVALID_VALUE, // input 31 (0x1F) 1733 INVALID_VALUE, // input 32 (0x20) 1734 0, // input 33 (0x21 char '!') => 0 (0x0) 1735 1, // input 34 (0x22 char '"') => 1 (0x1) 1736 2, // input 35 (0x23 char '#') => 2 (0x2) 1737 3, // input 36 (0x24 char '$') => 3 (0x3) 1738 4, // input 37 (0x25 char '%') => 4 (0x4) 1739 5, // input 38 (0x26 char '&') => 5 (0x5) 1740 6, // input 39 (0x27 char ''') => 6 (0x6) 1741 7, // input 40 (0x28 char '(') => 7 (0x7) 1742 8, // input 41 (0x29 char ')') => 8 (0x8) 1743 9, // input 42 (0x2A char '*') => 9 (0x9) 1744 10, // input 43 (0x2B char '+') => 10 (0xA) 1745 11, // input 44 (0x2C char ',') => 11 (0xB) 1746 12, // input 45 (0x2D char '-') => 12 (0xC) 1747 INVALID_VALUE, // input 46 (0x2E) 1748 INVALID_VALUE, // input 47 (0x2F) 1749 13, // input 48 (0x30 char '0') => 13 (0xD) 1750 14, // input 49 (0x31 char '1') => 14 (0xE) 1751 15, // input 50 (0x32 char '2') => 15 (0xF) 1752 16, // input 51 (0x33 char '3') => 16 (0x10) 1753 17, // input 52 (0x34 char '4') => 17 (0x11) 1754 18, // input 53 (0x35 char '5') => 18 (0x12) 1755 19, // input 54 (0x36 char '6') => 19 (0x13) 1756 20, // input 55 (0x37 char '7') => 20 (0x14) 1757 21, // input 56 (0x38 char '8') => 21 (0x15) 1758 22, // input 57 (0x39 char '9') => 22 (0x16) 1759 INVALID_VALUE, // input 58 (0x3A) 1760 INVALID_VALUE, // input 59 (0x3B) 1761 INVALID_VALUE, // input 60 (0x3C) 1762 INVALID_VALUE, // input 61 (0x3D) 1763 INVALID_VALUE, // input 62 (0x3E) 1764 INVALID_VALUE, // input 63 (0x3F) 1765 23, // input 64 (0x40 char '@') => 23 (0x17) 1766 24, // input 65 (0x41 char 'A') => 24 (0x18) 1767 25, // input 66 (0x42 char 'B') => 25 (0x19) 1768 26, // input 67 (0x43 char 'C') => 26 (0x1A) 1769 27, // input 68 (0x44 char 'D') => 27 (0x1B) 1770 28, // input 69 (0x45 char 'E') => 28 (0x1C) 1771 29, // input 70 (0x46 char 'F') => 29 (0x1D) 1772 30, // input 71 (0x47 char 'G') => 30 (0x1E) 1773 31, // input 72 (0x48 char 'H') => 31 (0x1F) 1774 32, // input 73 (0x49 char 'I') => 32 (0x20) 1775 33, // input 74 (0x4A char 'J') => 33 (0x21) 1776 34, // input 75 (0x4B char 'K') => 34 (0x22) 1777 35, // input 76 (0x4C char 'L') => 35 (0x23) 1778 36, // input 77 (0x4D char 'M') => 36 (0x24) 1779 37, // input 78 (0x4E char 'N') => 37 (0x25) 1780 INVALID_VALUE, // input 79 (0x4F) 1781 38, // input 80 (0x50 char 'P') => 38 (0x26) 1782 39, // input 81 (0x51 char 'Q') => 39 (0x27) 1783 40, // input 82 (0x52 char 'R') => 40 (0x28) 1784 41, // input 83 (0x53 char 'S') => 41 (0x29) 1785 42, // input 84 (0x54 char 'T') => 42 (0x2A) 1786 43, // input 85 (0x55 char 'U') => 43 (0x2B) 1787 44, // input 86 (0x56 char 'V') => 44 (0x2C) 1788 INVALID_VALUE, // input 87 (0x57) 1789 45, // input 88 (0x58 char 'X') => 45 (0x2D) 1790 46, // input 89 (0x59 char 'Y') => 46 (0x2E) 1791 47, // input 90 (0x5A char 'Z') => 47 (0x2F) 1792 48, // input 91 (0x5B char '[') => 48 (0x30) 1793 INVALID_VALUE, // input 92 (0x5C) 1794 INVALID_VALUE, // input 93 (0x5D) 1795 INVALID_VALUE, // input 94 (0x5E) 1796 INVALID_VALUE, // input 95 (0x5F) 1797 49, // input 96 (0x60 char '`') => 49 (0x31) 1798 50, // input 97 (0x61 char 'a') => 50 (0x32) 1799 51, // input 98 (0x62 char 'b') => 51 (0x33) 1800 52, // input 99 (0x63 char 'c') => 52 (0x34) 1801 53, // input 100 (0x64 char 'd') => 53 (0x35) 1802 54, // input 101 (0x65 char 'e') => 54 (0x36) 1803 INVALID_VALUE, // input 102 (0x66) 1804 INVALID_VALUE, // input 103 (0x67) 1805 55, // input 104 (0x68 char 'h') => 55 (0x37) 1806 56, // input 105 (0x69 char 'i') => 56 (0x38) 1807 57, // input 106 (0x6A char 'j') => 57 (0x39) 1808 58, // input 107 (0x6B char 'k') => 58 (0x3A) 1809 59, // input 108 (0x6C char 'l') => 59 (0x3B) 1810 60, // input 109 (0x6D char 'm') => 60 (0x3C) 1811 INVALID_VALUE, // input 110 (0x6E) 1812 INVALID_VALUE, // input 111 (0x6F) 1813 61, // input 112 (0x70 char 'p') => 61 (0x3D) 1814 62, // input 113 (0x71 char 'q') => 62 (0x3E) 1815 63, // input 114 (0x72 char 'r') => 63 (0x3F) 1816 INVALID_VALUE, // input 115 (0x73) 1817 INVALID_VALUE, // input 116 (0x74) 1818 INVALID_VALUE, // input 117 (0x75) 1819 INVALID_VALUE, // input 118 (0x76) 1820 INVALID_VALUE, // input 119 (0x77) 1821 INVALID_VALUE, // input 120 (0x78) 1822 INVALID_VALUE, // input 121 (0x79) 1823 INVALID_VALUE, // input 122 (0x7A) 1824 INVALID_VALUE, // input 123 (0x7B) 1825 INVALID_VALUE, // input 124 (0x7C) 1826 INVALID_VALUE, // input 125 (0x7D) 1827 INVALID_VALUE, // input 126 (0x7E) 1828 INVALID_VALUE, // input 127 (0x7F) 1829 INVALID_VALUE, // input 128 (0x80) 1830 INVALID_VALUE, // input 129 (0x81) 1831 INVALID_VALUE, // input 130 (0x82) 1832 INVALID_VALUE, // input 131 (0x83) 1833 INVALID_VALUE, // input 132 (0x84) 1834 INVALID_VALUE, // input 133 (0x85) 1835 INVALID_VALUE, // input 134 (0x86) 1836 INVALID_VALUE, // input 135 (0x87) 1837 INVALID_VALUE, // input 136 (0x88) 1838 INVALID_VALUE, // input 137 (0x89) 1839 INVALID_VALUE, // input 138 (0x8A) 1840 INVALID_VALUE, // input 139 (0x8B) 1841 INVALID_VALUE, // input 140 (0x8C) 1842 INVALID_VALUE, // input 141 (0x8D) 1843 INVALID_VALUE, // input 142 (0x8E) 1844 INVALID_VALUE, // input 143 (0x8F) 1845 INVALID_VALUE, // input 144 (0x90) 1846 INVALID_VALUE, // input 145 (0x91) 1847 INVALID_VALUE, // input 146 (0x92) 1848 INVALID_VALUE, // input 147 (0x93) 1849 INVALID_VALUE, // input 148 (0x94) 1850 INVALID_VALUE, // input 149 (0x95) 1851 INVALID_VALUE, // input 150 (0x96) 1852 INVALID_VALUE, // input 151 (0x97) 1853 INVALID_VALUE, // input 152 (0x98) 1854 INVALID_VALUE, // input 153 (0x99) 1855 INVALID_VALUE, // input 154 (0x9A) 1856 INVALID_VALUE, // input 155 (0x9B) 1857 INVALID_VALUE, // input 156 (0x9C) 1858 INVALID_VALUE, // input 157 (0x9D) 1859 INVALID_VALUE, // input 158 (0x9E) 1860 INVALID_VALUE, // input 159 (0x9F) 1861 INVALID_VALUE, // input 160 (0xA0) 1862 INVALID_VALUE, // input 161 (0xA1) 1863 INVALID_VALUE, // input 162 (0xA2) 1864 INVALID_VALUE, // input 163 (0xA3) 1865 INVALID_VALUE, // input 164 (0xA4) 1866 INVALID_VALUE, // input 165 (0xA5) 1867 INVALID_VALUE, // input 166 (0xA6) 1868 INVALID_VALUE, // input 167 (0xA7) 1869 INVALID_VALUE, // input 168 (0xA8) 1870 INVALID_VALUE, // input 169 (0xA9) 1871 INVALID_VALUE, // input 170 (0xAA) 1872 INVALID_VALUE, // input 171 (0xAB) 1873 INVALID_VALUE, // input 172 (0xAC) 1874 INVALID_VALUE, // input 173 (0xAD) 1875 INVALID_VALUE, // input 174 (0xAE) 1876 INVALID_VALUE, // input 175 (0xAF) 1877 INVALID_VALUE, // input 176 (0xB0) 1878 INVALID_VALUE, // input 177 (0xB1) 1879 INVALID_VALUE, // input 178 (0xB2) 1880 INVALID_VALUE, // input 179 (0xB3) 1881 INVALID_VALUE, // input 180 (0xB4) 1882 INVALID_VALUE, // input 181 (0xB5) 1883 INVALID_VALUE, // input 182 (0xB6) 1884 INVALID_VALUE, // input 183 (0xB7) 1885 INVALID_VALUE, // input 184 (0xB8) 1886 INVALID_VALUE, // input 185 (0xB9) 1887 INVALID_VALUE, // input 186 (0xBA) 1888 INVALID_VALUE, // input 187 (0xBB) 1889 INVALID_VALUE, // input 188 (0xBC) 1890 INVALID_VALUE, // input 189 (0xBD) 1891 INVALID_VALUE, // input 190 (0xBE) 1892 INVALID_VALUE, // input 191 (0xBF) 1893 INVALID_VALUE, // input 192 (0xC0) 1894 INVALID_VALUE, // input 193 (0xC1) 1895 INVALID_VALUE, // input 194 (0xC2) 1896 INVALID_VALUE, // input 195 (0xC3) 1897 INVALID_VALUE, // input 196 (0xC4) 1898 INVALID_VALUE, // input 197 (0xC5) 1899 INVALID_VALUE, // input 198 (0xC6) 1900 INVALID_VALUE, // input 199 (0xC7) 1901 INVALID_VALUE, // input 200 (0xC8) 1902 INVALID_VALUE, // input 201 (0xC9) 1903 INVALID_VALUE, // input 202 (0xCA) 1904 INVALID_VALUE, // input 203 (0xCB) 1905 INVALID_VALUE, // input 204 (0xCC) 1906 INVALID_VALUE, // input 205 (0xCD) 1907 INVALID_VALUE, // input 206 (0xCE) 1908 INVALID_VALUE, // input 207 (0xCF) 1909 INVALID_VALUE, // input 208 (0xD0) 1910 INVALID_VALUE, // input 209 (0xD1) 1911 INVALID_VALUE, // input 210 (0xD2) 1912 INVALID_VALUE, // input 211 (0xD3) 1913 INVALID_VALUE, // input 212 (0xD4) 1914 INVALID_VALUE, // input 213 (0xD5) 1915 INVALID_VALUE, // input 214 (0xD6) 1916 INVALID_VALUE, // input 215 (0xD7) 1917 INVALID_VALUE, // input 216 (0xD8) 1918 INVALID_VALUE, // input 217 (0xD9) 1919 INVALID_VALUE, // input 218 (0xDA) 1920 INVALID_VALUE, // input 219 (0xDB) 1921 INVALID_VALUE, // input 220 (0xDC) 1922 INVALID_VALUE, // input 221 (0xDD) 1923 INVALID_VALUE, // input 222 (0xDE) 1924 INVALID_VALUE, // input 223 (0xDF) 1925 INVALID_VALUE, // input 224 (0xE0) 1926 INVALID_VALUE, // input 225 (0xE1) 1927 INVALID_VALUE, // input 226 (0xE2) 1928 INVALID_VALUE, // input 227 (0xE3) 1929 INVALID_VALUE, // input 228 (0xE4) 1930 INVALID_VALUE, // input 229 (0xE5) 1931 INVALID_VALUE, // input 230 (0xE6) 1932 INVALID_VALUE, // input 231 (0xE7) 1933 INVALID_VALUE, // input 232 (0xE8) 1934 INVALID_VALUE, // input 233 (0xE9) 1935 INVALID_VALUE, // input 234 (0xEA) 1936 INVALID_VALUE, // input 235 (0xEB) 1937 INVALID_VALUE, // input 236 (0xEC) 1938 INVALID_VALUE, // input 237 (0xED) 1939 INVALID_VALUE, // input 238 (0xEE) 1940 INVALID_VALUE, // input 239 (0xEF) 1941 INVALID_VALUE, // input 240 (0xF0) 1942 INVALID_VALUE, // input 241 (0xF1) 1943 INVALID_VALUE, // input 242 (0xF2) 1944 INVALID_VALUE, // input 243 (0xF3) 1945 INVALID_VALUE, // input 244 (0xF4) 1946 INVALID_VALUE, // input 245 (0xF5) 1947 INVALID_VALUE, // input 246 (0xF6) 1948 INVALID_VALUE, // input 247 (0xF7) 1949 INVALID_VALUE, // input 248 (0xF8) 1950 INVALID_VALUE, // input 249 (0xF9) 1951 INVALID_VALUE, // input 250 (0xFA) 1952 INVALID_VALUE, // input 251 (0xFB) 1953 INVALID_VALUE, // input 252 (0xFC) 1954 INVALID_VALUE, // input 253 (0xFD) 1955 INVALID_VALUE, // input 254 (0xFE) 1956 INVALID_VALUE, // input 255 (0xFF) 1957 ]; 1958