enc-koi8.lisp - clic - Clic is an command line interactive client for gopher wr… | |
git clone git://bitreich.org/clic/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65… | |
Log | |
Files | |
Refs | |
Tags | |
README | |
LICENSE | |
--- | |
enc-koi8.lisp (19034B) | |
--- | |
1 ;;;; -*- Mode: lisp; indent-tabs-mode: nil -*- | |
2 ;;; | |
3 ;;; enc-cp1251.lisp --- Implementation of the CP1251 character encoding. | |
4 ;;; | |
5 ;;; Copyright (C) 2009, Andrey Moskvitin | |
6 ;;; | |
7 ;;; Permission is hereby granted, free of charge, to any person | |
8 ;;; obtaining a copy of this software and associated documentation | |
9 ;;; files (the "Software"), to deal in the Software without | |
10 ;;; restriction, including without limitation the rights to use, copy, | |
11 ;;; modify, merge, publish, distribute, sublicense, and/or sell copies | |
12 ;;; of the Software, and to permit persons to whom the Software is | |
13 ;;; furnished to do so, subject to the following conditions: | |
14 ;;; | |
15 ;;; The above copyright notice and this permission notice shall be | |
16 ;;; included in all copies or substantial portions of the Software. | |
17 ;;; | |
18 ;;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | |
19 ;;; EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | |
20 ;;; MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | |
21 ;;; NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | |
22 ;;; HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | |
23 ;;; WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | |
24 ;;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | |
25 ;;; DEALINGS IN THE SOFTWARE. | |
26 | |
27 (in-package #:babel-encodings) | |
28 | |
29 (define-character-encoding :koi8-ru | |
30 "An 8-bit, fixed-width character Russian encoding." | |
31 :literal-char-code-limit #x80) | |
32 | |
33 (define-constant +koi8-ru-to-unicode+ | |
34 #(#x2500 #x2502 #x250C #x2510 #x2514 #x2518 #x251C #x2524 | |
35 #x252C #x2534 #x253C #x2580 #x2584 #x2588 #x258C #x2590 | |
36 #x2591 #x2592 #x2593 #x2320 #x25A0 #x2219 #x221A #x2248 | |
37 #x2264 #x2265 #x00A0 #x2321 #x00B0 #x00B2 #x00B7 #x00F7 | |
38 #x2550 #x2551 #x2552 #x0451 #x0454 #x2554 #x0456 #x0457 | |
39 #x2557 #x2558 #x2559 #x255A #x255B #x0491 #x045E #x255E | |
40 #x255F #x2560 #x2561 #x0401 #x0404 #x2563 #x0406 #x0407 | |
41 #x2566 #x2567 #x2568 #x2569 #x256A #x0490 #x040E #x00A9 | |
42 #x044E #x0430 #x0431 #x0446 #x0434 #x0435 #x0444 #x0433 | |
43 #x0445 #x0438 #x0439 #x043A #x043B #x043C #x043D #x043E | |
44 #x043F #x044F #x0440 #x0441 #x0442 #x0443 #x0436 #x0432 | |
45 #x044C #x044B #x0437 #x0448 #x044D #x0449 #x0447 #x044A | |
46 #x042E #x0410 #x0411 #x0426 #x0414 #x0415 #x0424 #x0413 | |
47 #x0425 #x0418 #x0419 #x041A #x041B #x041C #x041D #x041E | |
48 #x041F #x042F #x0420 #x0421 #x0422 #x0423 #x0416 #x0412 | |
49 #x042C #x042B #x0417 #x0428 #x042D #x0429 #x0427 #x042A) | |
50 :test #'equalp) | |
51 | |
52 (define-unibyte-decoder :koi8-ru (octet) | |
53 (if (< octet #x80) | |
54 octet | |
55 (svref +koi8-ru-to-unicode+ (the ub8 (- octet #x80))))) | |
56 | |
57 (define-constant +unicode-04->koi8-ru+ | |
58 #(#x7f #x79 #x78 #x7c #x60 #x71 #x41 #x42 #x57 #x47 #x44 #x45 #x56 #… | |
59 #x49 #x4a #x4b #x4c #x4d #x4e #x4f #x50 #x52 #x53 #x54 #x55 #x46 #… | |
60 #x43 #x5e #x5b #x5d #x5f #x59 #x58 #x5c #x40 #x51 nil #x23 nil nil… | |
61 nil #x26 #x27 nil nil nil nil nil nil #x2e nil nil nil nil nil nil… | |
62 nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni… | |
63 nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni… | |
64 nil nil nil nil nil nil #x3d #x2d) | |
65 :test 'equalp) | |
66 | |
67 (define-unibyte-encoder :koi8-ru (code) | |
68 (or (and (< code #x80) code) | |
69 (let ((hi (ldb (byte 8 8) code)) | |
70 (lo (ldb (byte 8 0) code))) | |
71 (case hi | |
72 (#x4 | |
73 (case lo | |
74 (#x1 #xb3) | |
75 (#x4 #xb4) | |
76 (#x6 #xb6) | |
77 (#x7 #xb7) | |
78 (#xe #xbe) | |
79 (#x10 #xe1) | |
80 (#x11 #xe2) | |
81 (#x12 #xf7) | |
82 (#x13 #xe7) | |
83 (#x14 #xe4) | |
84 (#x15 #xe5) | |
85 (#x16 #xf6) | |
86 (#x17 #xfa) | |
87 (#x18 #xe9) | |
88 (#x19 #xea) | |
89 (#x1a #xeb) | |
90 (#x1b #xec) | |
91 (#x1c #xed) | |
92 (#x1d #xee) | |
93 (#x1e #xef) | |
94 (#x1f #xf0) | |
95 (#x20 #xf2) | |
96 (#x21 #xf3) | |
97 (#x22 #xf4) | |
98 (#x23 #xf5) | |
99 (#x24 #xe6) | |
100 (#x25 #xe8) | |
101 (#x26 #xe3) | |
102 (#x27 #xfe) | |
103 (#x28 #xfb) | |
104 (#x29 #xfd) | |
105 (#x2a #xff) | |
106 (#x2b #xf9) | |
107 (#x2c #xf8) | |
108 (#x2d #xfc) | |
109 (#x2e #xe0) | |
110 (#x2f #xf1) | |
111 (#x30 #xc1) | |
112 (#x31 #xc2) | |
113 (#x32 #xd7) | |
114 (#x33 #xc7) | |
115 (#x34 #xc4) | |
116 (#x35 #xc5) | |
117 (#x36 #xd6) | |
118 (#x37 #xda) | |
119 (#x38 #xc9) | |
120 (#x39 #xca) | |
121 (#x3a #xcb) | |
122 (#x3b #xcc) | |
123 (#x3c #xcd) | |
124 (#x3d #xce) | |
125 (#x3e #xcf) | |
126 (#x3f #xd0) | |
127 (#x40 #xd2) | |
128 (#x41 #xd3) | |
129 (#x42 #xd4) | |
130 (#x43 #xd5) | |
131 (#x44 #xc6) | |
132 (#x45 #xc8) | |
133 (#x46 #xc3) | |
134 (#x47 #xde) | |
135 (#x48 #xdb) | |
136 (#x49 #xdd) | |
137 (#x4a #xdf) | |
138 (#x4b #xd9) | |
139 (#x4c #xd8) | |
140 (#x4d #xdc) | |
141 (#x4e #xc0) | |
142 (#x4f #xd1) | |
143 (#x51 #xa3) | |
144 (#x54 #xa4) | |
145 (#x56 #xa6) | |
146 (#x57 #xa7) | |
147 (#x5e #xae) | |
148 (#x90 #xbd) | |
149 (#x91 #xad))) | |
150 (#x0 | |
151 (case lo | |
152 (#xa0 #x9a) | |
153 (#xa9 #xbf) | |
154 (#xb0 #x9c) | |
155 (#xb2 #x9d) | |
156 (#xb7 #x9e) | |
157 (#xf7 #x9f))) | |
158 (#x22 (case lo (#x19 #x95) (#x1a #x96) (#x48 #x97) (#x64 #x98)… | |
159 (#x23 (case lo (#x20 #x93) (#x21 #x9b))) | |
160 (#x25 | |
161 (case lo | |
162 (#x0 #x80) | |
163 (#x2 #x81) | |
164 (#xc #x82) | |
165 (#x10 #x83) | |
166 (#x14 #x84) | |
167 (#x18 #x85) | |
168 (#x1c #x86) | |
169 (#x24 #x87) | |
170 (#x2c #x88) | |
171 (#x34 #x89) | |
172 (#x3c #x8a) | |
173 (#x50 #xa0) | |
174 (#x51 #xa1) | |
175 (#x52 #xa2) | |
176 (#x54 #xa5) | |
177 (#x57 #xa8) | |
178 (#x58 #xa9) | |
179 (#x59 #xaa) | |
180 (#x5a #xab) | |
181 (#x5b #xac) | |
182 (#x5e #xaf) | |
183 (#x5f #xb0) | |
184 (#x60 #xb1) | |
185 (#x61 #xb2) | |
186 (#x63 #xb5) | |
187 (#x66 #xb8) | |
188 (#x67 #xb9) | |
189 (#x68 #xba) | |
190 (#x69 #xbb) | |
191 (#x6a #xbc) | |
192 (#x80 #x8b) | |
193 (#x84 #x8c) | |
194 (#x88 #x8d) | |
195 (#x8c #x8e) | |
196 (#x90 #x8f) | |
197 (#x91 #x90) | |
198 (#x92 #x91) | |
199 (#x93 #x92) | |
200 (#xa0 #x94))))) | |
201 (handle-error))) | |
202 | |
203 (define-character-encoding :koi8-r | |
204 "An 8-bit, fixed-width character Russian encoding." | |
205 :literal-char-code-limit #x80) | |
206 | |
207 (define-constant +koi8-r-to-unicode+ | |
208 #(#x2500 #x2502 #x250C #x2510 #x2514 #x2518 #x251C #x2524 | |
209 #x252C #x2534 #x253C #x2580 #x2584 #x2588 #x258C #x2590 | |
210 #x2591 #x2592 #x2593 #x2320 #x25A0 #x2219 #x221A #x2248 | |
211 #x2264 #x2265 #x00A0 #x2321 #x00B0 #x00B2 #x00B7 #x00F7 | |
212 #x2550 #x2551 #x2552 #x0451 #x2553 #x2554 #x2555 #x2556 | |
213 #x2557 #x2558 #x2559 #x255A #x255B #x255C #x255D #x255E | |
214 #x255F #x2560 #x2561 #x0401 #x2562 #x2563 #x2564 #x2565 | |
215 #x2566 #x2567 #x2568 #x2569 #x256A #x256B #x256C #x00A9 | |
216 #x044E #x0430 #x0431 #x0446 #x0434 #x0435 #x0444 #x0433 | |
217 #x0445 #x0438 #x0439 #x043A #x043B #x043C #x043D #x043E | |
218 #x043F #x044F #x0440 #x0441 #x0442 #x0443 #x0436 #x0432 | |
219 #x044C #x044B #x0437 #x0448 #x044D #x0449 #x0447 #x044A | |
220 #x042E #x0410 #x0411 #x0426 #x0414 #x0415 #x0424 #x0413 | |
221 #x0425 #x0418 #x0419 #x041A #x041B #x041C #x041D #x041E | |
222 #x041F #x042F #x0420 #x0421 #x0422 #x0423 #x0416 #x0412 | |
223 #x042C #x042B #x0417 #x0428 #x042D #x0429 #x0427 #x042A) | |
224 :test #'equalp) | |
225 | |
226 (define-unibyte-decoder :koi8-r (octet) | |
227 (if (< octet #x80) | |
228 octet | |
229 (svref +koi8-r-to-unicode+ (the ub8 (- octet #x80))))) | |
230 | |
231 (define-constant +unicode-x04->koi8-r+ | |
232 #(nil #x33 nil nil nil nil nil nil nil nil nil nil nil nil nil nil #… | |
233 #x62 #x77 #x67 #x64 #x65 #x76 #x7a #x69 #x6a #x6b #x6c #x6d #x6e #… | |
234 #x70 #x72 #x73 #x74 #x75 #x66 #x68 #x63 #x7e #x7b #x7d #x7f #x79 #… | |
235 #x7c #x60 #x71 #x41 #x42 #x57 #x47 #x44 #x45 #x56 #x5a #x49 #x4a #… | |
236 #x4c #x4d #x4e #x4f #x50 #x52 #x53 #x54 #x55 #x46 #x48 #x43 #x5e #… | |
237 #x5d #x5f #x59 #x58 #x5c #x40 #x51 nil #x23) | |
238 :test 'equalp) | |
239 | |
240 (define-constant +unicode-x25->koi8-r+ | |
241 #(#x0 nil #x1 nil nil nil nil nil nil nil nil nil #x2 nil nil nil #x… | |
242 nil nil #x4 nil nil nil #x5 nil nil nil #x6 nil nil nil nil nil ni… | |
243 #x7 nil nil nil nil nil nil nil #x8 nil nil nil nil nil nil nil #x… | |
244 nil nil nil nil nil nil #xa nil nil nil nil nil nil nil nil nil ni… | |
245 nil nil nil nil nil nil nil nil #x20 #x21 #x22 #x24 #x25 #x26 #x27… | |
246 #x29 #x2a #x2b #x2c #x2d #x2e #x2f #x30 #x31 #x32 #x34 #x35 #x36 #… | |
247 #x38 #x39 #x3a #x3b #x3c #x3d #x3e nil nil nil nil nil nil nil nil… | |
248 nil nil nil nil nil nil nil nil nil nil #xb nil nil nil #xc nil ni… | |
249 #xd nil nil nil #xe nil nil nil #xf #x10 #x11 #x12 nil nil nil nil… | |
250 nil nil nil nil nil nil nil #x14) | |
251 :test 'equalp) | |
252 | |
253 (define-unibyte-encoder :koi8-r (code) | |
254 (or (and (< code #x80) code) | |
255 (let ((hi (ldb (byte 8 8) code)) | |
256 (lo (ldb (byte 8 0) code))) | |
257 (case hi | |
258 (#x4 | |
259 (case lo | |
260 (#x1 #xb3) | |
261 (#x10 #xe1) | |
262 (#x11 #xe2) | |
263 (#x12 #xf7) | |
264 (#x13 #xe7) | |
265 (#x14 #xe4) | |
266 (#x15 #xe5) | |
267 (#x16 #xf6) | |
268 (#x17 #xfa) | |
269 (#x18 #xe9) | |
270 (#x19 #xea) | |
271 (#x1a #xeb) | |
272 (#x1b #xec) | |
273 (#x1c #xed) | |
274 (#x1d #xee) | |
275 (#x1e #xef) | |
276 (#x1f #xf0) | |
277 (#x20 #xf2) | |
278 (#x21 #xf3) | |
279 (#x22 #xf4) | |
280 (#x23 #xf5) | |
281 (#x24 #xe6) | |
282 (#x25 #xe8) | |
283 (#x26 #xe3) | |
284 (#x27 #xfe) | |
285 (#x28 #xfb) | |
286 (#x29 #xfd) | |
287 (#x2a #xff) | |
288 (#x2b #xf9) | |
289 (#x2c #xf8) | |
290 (#x2d #xfc) | |
291 (#x2e #xe0) | |
292 (#x2f #xf1) | |
293 (#x30 #xc1) | |
294 (#x31 #xc2) | |
295 (#x32 #xd7) | |
296 (#x33 #xc7) | |
297 (#x34 #xc4) | |
298 (#x35 #xc5) | |
299 (#x36 #xd6) | |
300 (#x37 #xda) | |
301 (#x38 #xc9) | |
302 (#x39 #xca) | |
303 (#x3a #xcb) | |
304 (#x3b #xcc) | |
305 (#x3c #xcd) | |
306 (#x3d #xce) | |
307 (#x3e #xcf) | |
308 (#x3f #xd0) | |
309 (#x40 #xd2) | |
310 (#x41 #xd3) | |
311 (#x42 #xd4) | |
312 (#x43 #xd5) | |
313 (#x44 #xc6) | |
314 (#x45 #xc8) | |
315 (#x46 #xc3) | |
316 (#x47 #xde) | |
317 (#x48 #xdb) | |
318 (#x49 #xdd) | |
319 (#x4a #xdf) | |
320 (#x4b #xd9) | |
321 (#x4c #xd8) | |
322 (#x4d #xdc) | |
323 (#x4e #xc0) | |
324 (#x4f #xd1) | |
325 (#x51 #xa3))) | |
326 (#x0 | |
327 (case lo | |
328 (#xa0 #x9a) | |
329 (#xa9 #xbf) | |
330 (#xb0 #x9c) | |
331 (#xb2 #x9d) | |
332 (#xb7 #x9e) | |
333 (#xf7 #x9f))) | |
334 (#x22 (case lo (#x19 #x95) (#x1a #x96) (#x48 #x97) (#x64 #x98)… | |
335 (#x23 (case lo (#x20 #x93) (#x21 #x9b))) | |
336 (#x25 | |
337 (case lo | |
338 (#x0 #x80) | |
339 (#x2 #x81) | |
340 (#xc #x82) | |
341 (#x10 #x83) | |
342 (#x14 #x84) | |
343 (#x18 #x85) | |
344 (#x1c #x86) | |
345 (#x24 #x87) | |
346 (#x2c #x88) | |
347 (#x34 #x89) | |
348 (#x3c #x8a) | |
349 (#x50 #xa0) | |
350 (#x51 #xa1) | |
351 (#x52 #xa2) | |
352 (#x53 #xa4) | |
353 (#x54 #xa5) | |
354 (#x55 #xa6) | |
355 (#x56 #xa7) | |
356 (#x57 #xa8) | |
357 (#x58 #xa9) | |
358 (#x59 #xaa) | |
359 (#x5a #xab) | |
360 (#x5b #xac) | |
361 (#x5c #xad) | |
362 (#x5d #xae) | |
363 (#x5e #xaf) | |
364 (#x5f #xb0) | |
365 (#x60 #xb1) | |
366 (#x61 #xb2) | |
367 (#x62 #xb4) | |
368 (#x63 #xb5) | |
369 (#x64 #xb6) | |
370 (#x65 #xb7) | |
371 (#x66 #xb8) | |
372 (#x67 #xb9) | |
373 (#x68 #xba) | |
374 (#x69 #xbb) | |
375 (#x6a #xbc) | |
376 (#x6b #xbd) | |
377 (#x6c #xbe) | |
378 (#x80 #x8b) | |
379 (#x84 #x8c) | |
380 (#x88 #x8d) | |
381 (#x8c #x8e) | |
382 (#x90 #x8f) | |
383 (#x91 #x90) | |
384 (#x92 #x91) | |
385 (#x93 #x92) | |
386 (#xa0 #x94))))) | |
387 (handle-error))) | |
388 | |
389 (define-character-encoding :koi8-u | |
390 "An 8-bit, fixed-width character Ukranian encoding." | |
391 :literal-char-code-limit #x80) | |
392 | |
393 (define-constant +koi8-u-to-unicode+ | |
394 #(#x2500 #x2502 #x250C #x2510 #x2514 #x2518 #x251C #x2524 | |
395 #x252C #x2534 #x253C #x2580 #x2584 #x2588 #x258C #x2590 | |
396 #x2591 #x2592 #x2593 #x2320 #x25A0 #x2219 #x221A #x2248 | |
397 #x2264 #x2265 #x00A0 #x2321 #x00B0 #x00B2 #x00B7 #x00F7 | |
398 #x2550 #x2551 #x2552 #x0451 #x0454 #x2554 #x0456 #x0457 | |
399 #x2557 #x2558 #x2559 #x255A #x255B #x0491 #x255D #x255E | |
400 #x255F #x2560 #x2561 #x0401 #x0404 #x2563 #x0406 #x0407 | |
401 #x2566 #x2567 #x2568 #x2569 #x256A #x0490 #x256C #x00A9 | |
402 #x044E #x0430 #x0431 #x0446 #x0434 #x0435 #x0444 #x0433 | |
403 #x0445 #x0438 #x0439 #x043A #x043B #x043C #x043D #x043E | |
404 #x043F #x044F #x0440 #x0441 #x0442 #x0443 #x0436 #x0432 | |
405 #x044C #x044B #x0437 #x0448 #x044D #x0449 #x0447 #x044A | |
406 #x042E #x0410 #x0411 #x0426 #x0414 #x0415 #x0424 #x0413 | |
407 #x0425 #x0418 #x0419 #x041A #x041B #x041C #x041D #x041E | |
408 #x041F #x042F #x0420 #x0421 #x0422 #x0423 #x0416 #x0412 | |
409 #x042C #x042B #x0417 #x0428 #x042D #x0429 #x0427 #x042A ) | |
410 :test #'equalp) | |
411 | |
412 (define-unibyte-decoder :koi8-u (octet) | |
413 (if (< octet #x80) | |
414 octet | |
415 (svref +koi8-u-to-unicode+ (the ub8 (- octet #x80))))) | |
416 | |
417 (define-constant +unicode-x04->koi8-u+ | |
418 #(nil #x33 nil nil #x34 nil #x36 #x37 nil nil nil nil nil nil nil ni… | |
419 #x62 #x77 #x67 #x64 #x65 #x76 #x7a #x69 #x6a #x6b #x6c #x6d #x6e #… | |
420 #x70 #x72 #x73 #x74 #x75 #x66 #x68 #x63 #x7e #x7b #x7d #x7f #x79 #… | |
421 #x7c #x60 #x71 #x41 #x42 #x57 #x47 #x44 #x45 #x56 #x5a #x49 #x4a #… | |
422 #x4c #x4d #x4e #x4f #x50 #x52 #x53 #x54 #x55 #x46 #x48 #x43 #x5e #… | |
423 #x5d #x5f #x59 #x58 #x5c #x40 #x51 nil #x23 nil nil #x24 nil #x26 … | |
424 nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni… | |
425 nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni… | |
426 nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni… | |
427 nil nil #x3d #x2d) | |
428 :test 'equalp) | |
429 | |
430 (define-constant +unicode-x25->koi8-u+ | |
431 #(#x0 nil #x1 nil nil nil nil nil nil nil nil nil #x2 nil nil nil #x… | |
432 nil nil #x4 nil nil nil #x5 nil nil nil #x6 nil nil nil nil nil ni… | |
433 #x7 nil nil nil nil nil nil nil #x8 nil nil nil nil nil nil nil #x… | |
434 nil nil nil nil nil nil #xa nil nil nil nil nil nil nil nil nil ni… | |
435 nil nil nil nil nil nil nil nil #x20 #x21 #x22 nil #x25 nil nil #x… | |
436 #x29 #x2a #x2b #x2c nil #x2e #x2f #x30 #x31 #x32 nil #x35 nil nil … | |
437 #x39 #x3a #x3b #x3c nil #x3e nil nil nil nil nil nil nil nil nil n… | |
438 nil nil nil nil nil nil nil nil #xb nil nil nil #xc nil nil nil #x… | |
439 nil nil #xe nil nil nil #xf #x10 #x11 #x12 nil nil nil nil nil nil… | |
440 nil nil nil nil nil #x14) | |
441 :test 'equalp) | |
442 | |
443 (define-unibyte-encoder :koi8-u (code) | |
444 (or (and (< code #x80) code) | |
445 (let ((hi (ldb (byte 8 8) code)) | |
446 (lo (ldb (byte 8 0) code))) | |
447 (case hi | |
448 (#x4 | |
449 (case lo | |
450 (#x1 #xb3) | |
451 (#x4 #xb4) | |
452 (#x6 #xb6) | |
453 (#x7 #xb7) | |
454 (#x10 #xe1) | |
455 (#x11 #xe2) | |
456 (#x12 #xf7) | |
457 (#x13 #xe7) | |
458 (#x14 #xe4) | |
459 (#x15 #xe5) | |
460 (#x16 #xf6) | |
461 (#x17 #xfa) | |
462 (#x18 #xe9) | |
463 (#x19 #xea) | |
464 (#x1a #xeb) | |
465 (#x1b #xec) | |
466 (#x1c #xed) | |
467 (#x1d #xee) | |
468 (#x1e #xef) | |
469 (#x1f #xf0) | |
470 (#x20 #xf2) | |
471 (#x21 #xf3) | |
472 (#x22 #xf4) | |
473 (#x23 #xf5) | |
474 (#x24 #xe6) | |
475 (#x25 #xe8) | |
476 (#x26 #xe3) | |
477 (#x27 #xfe) | |
478 (#x28 #xfb) | |
479 (#x29 #xfd) | |
480 (#x2a #xff) | |
481 (#x2b #xf9) | |
482 (#x2c #xf8) | |
483 (#x2d #xfc) | |
484 (#x2e #xe0) | |
485 (#x2f #xf1) | |
486 (#x30 #xc1) | |
487 (#x31 #xc2) | |
488 (#x32 #xd7) | |
489 (#x33 #xc7) | |
490 (#x34 #xc4) | |
491 (#x35 #xc5) | |
492 (#x36 #xd6) | |
493 (#x37 #xda) | |
494 (#x38 #xc9) | |
495 (#x39 #xca) | |
496 (#x3a #xcb) | |
497 (#x3b #xcc) | |
498 (#x3c #xcd) | |
499 (#x3d #xce) | |
500 (#x3e #xcf) | |
501 (#x3f #xd0) | |
502 (#x40 #xd2) | |
503 (#x41 #xd3) | |
504 (#x42 #xd4) | |
505 (#x43 #xd5) | |
506 (#x44 #xc6) | |
507 (#x45 #xc8) | |
508 (#x46 #xc3) | |
509 (#x47 #xde) | |
510 (#x48 #xdb) | |
511 (#x49 #xdd) | |
512 (#x4a #xdf) | |
513 (#x4b #xd9) | |
514 (#x4c #xd8) | |
515 (#x4d #xdc) | |
516 (#x4e #xc0) | |
517 (#x4f #xd1) | |
518 (#x51 #xa3) | |
519 (#x54 #xa4) | |
520 (#x56 #xa6) | |
521 (#x57 #xa7) | |
522 (#x90 #xbd) | |
523 (#x91 #xad))) | |
524 (#x0 | |
525 (case lo | |
526 (#xa0 #x9a) | |
527 (#xa9 #xbf) | |
528 (#xb0 #x9c) | |
529 (#xb2 #x9d) | |
530 (#xb7 #x9e) | |
531 (#xf7 #x9f))) | |
532 (#x22 (case lo (#x19 #x95) (#x1a #x96) (#x48 #x97) (#x64 #x98)… | |
533 (#x23 (case lo (#x20 #x93) (#x21 #x9b))) | |
534 (#x25 | |
535 (case lo | |
536 (#x0 #x80) | |
537 (#x2 #x81) | |
538 (#xc #x82) | |
539 (#x10 #x83) | |
540 (#x14 #x84) | |
541 (#x18 #x85) | |
542 (#x1c #x86) | |
543 (#x24 #x87) | |
544 (#x2c #x88) | |
545 (#x34 #x89) | |
546 (#x3c #x8a) | |
547 (#x50 #xa0) | |
548 (#x51 #xa1) | |
549 (#x52 #xa2) | |
550 (#x54 #xa5) | |
551 (#x57 #xa8) | |
552 (#x58 #xa9) | |
553 (#x59 #xaa) | |
554 (#x5a #xab) | |
555 (#x5b #xac) | |
556 (#x5d #xae) | |
557 (#x5e #xaf) | |
558 (#x5f #xb0) | |
559 (#x60 #xb1) | |
560 (#x61 #xb2) | |
561 (#x63 #xb5) | |
562 (#x66 #xb8) | |
563 (#x67 #xb9) | |
564 (#x68 #xba) | |
565 (#x69 #xbb) | |
566 (#x6a #xbc) | |
567 (#x6c #xbe) | |
568 (#x80 #x8b) | |
569 (#x84 #x8c) | |
570 (#x88 #x8d) | |
571 (#x8c #x8e) | |
572 (#x90 #x8f) | |
573 (#x91 #x90) | |
574 (#x92 #x91) | |
575 (#x93 #x92) | |
576 (#xa0 #x94))))) | |
577 (handle-error))) |