1 /* $XTermId: VTPrsTbl.c,v 1.103 2020/12/22 20:29:32 tom Exp $ */
2 
3 /*
4  * Copyright 1999-2019,2020 by Thomas E. Dickey
5  *
6  *                         All Rights Reserved
7  *
8  * Permission is hereby granted, free of charge, to any person obtaining a
9  * copy of this software and associated documentation files (the
10  * "Software"), to deal in the Software without restriction, including
11  * without limitation the rights to use, copy, modify, merge, publish,
12  * distribute, sublicense, and/or sell copies of the Software, and to
13  * permit persons to whom the Software is furnished to do so, subject to
14  * the following conditions:
15  *
16  * The above copyright notice and this permission notice shall be included
17  * in all copies or substantial portions of the Software.
18  *
19  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
20  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
22  * IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
23  * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
24  * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
25  * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26  *
27  * Except as contained in this notice, the name(s) of the above copyright
28  * holders shall not be used in advertising or otherwise to promote the
29  * sale, use or other dealings in this Software without prior written
30  * authorization.
31  *
32  *
33  * Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.
34  *
35  *                         All Rights Reserved
36  *
37  * Permission to use, copy, modify, and distribute this software and its
38  * documentation for any purpose and without fee is hereby granted,
39  * provided that the above copyright notice appear in all copies and that
40  * both that copyright notice and this permission notice appear in
41  * supporting documentation, and that the name of Digital Equipment
42  * Corporation not be used in advertising or publicity pertaining to
43  * distribution of the software without specific, written prior permission.
44  *
45  *
46  * DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
47  * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
48  * DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
49  * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
50  * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
51  * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
52  * SOFTWARE.
53  */
54 
55 #include <VTparse.h>
56 /* *INDENT-OFF* */
57 
58 #if !OPT_BLINK_CURS
59 #undef  CASE_CSI_SPACE_STATE
60 #define CASE_CSI_SPACE_STATE CASE_CSI_IGNORE
61 #endif
62 
63 #if !OPT_DEC_LOCATOR
64 #undef  CASE_DECEFR
65 #define CASE_DECEFR CASE_CSI_IGNORE
66 #undef  CASE_DECELR
67 #define CASE_DECELR CASE_CSI_IGNORE
68 #undef  CASE_DECSLE
69 #define CASE_DECSLE CASE_CSI_IGNORE
70 #undef  CASE_DECRQLP
71 #define CASE_DECRQLP CASE_CSI_IGNORE
72 #endif
73 
74 #if !OPT_WIDE_CHARS
75 #undef  CASE_ESC_PERCENT
76 #define CASE_ESC_PERCENT CASE_ESC_IGNORE
77 #endif
78 
79 #if !OPT_MOD_FKEYS
80 #undef  CASE_SET_MOD_FKEYS
81 #define CASE_SET_MOD_FKEYS CASE_GROUND_STATE
82 #undef  CASE_SET_MOD_FKEYS0
83 #define CASE_SET_MOD_FKEYS0 CASE_GROUND_STATE
84 #endif
85 
86 #if !OPT_XTERM_SGR
87 #undef CASE_CSI_HASH_STATE
88 #define CASE_CSI_HASH_STATE CASE_CSI_IGNORE
89 #endif
90 
91 /*
92  * Stupid Apollo C preprocessor can't handle long lines.  So... To keep
93  * it happy, we put each onto a separate line....  Sigh...
94  */
95 
96 Const PARSE_T ansi_table[] =
97 {
98 /*	NUL		SOH		STX		ETX	*/
99 CASE_IGNORE,
100 CASE_IGNORE,
101 CASE_IGNORE,
102 CASE_IGNORE,
103 /*	EOT		ENQ		ACK		BEL	*/
104 CASE_IGNORE,
105 CASE_ENQ,
106 CASE_IGNORE,
107 CASE_BELL,
108 /*	BS		HT		NL		VT	*/
109 CASE_BS,
110 CASE_TAB,
111 CASE_VMOT,
112 CASE_VMOT,
113 /*	FF		CR		SO		SI	*/
114 CASE_VMOT,
115 CASE_CR,
116 CASE_SO,
117 CASE_SI,
118 /*	DLE		DC1		DC2		DC3	*/
119 CASE_IGNORE,
120 CASE_IGNORE,
121 CASE_IGNORE,
122 CASE_IGNORE,
123 /*	DC4		NAK		SYN		ETB	*/
124 CASE_IGNORE,
125 CASE_IGNORE,
126 CASE_IGNORE,
127 CASE_IGNORE,
128 /*	CAN		EM		SUB		ESC	*/
129 CASE_GROUND_STATE,
130 CASE_IGNORE,
131 CASE_GROUND_STATE,
132 CASE_ESC,
133 /*	FS		GS		RS		US	*/
134 CASE_IGNORE,
135 CASE_IGNORE,
136 CASE_IGNORE,
137 CASE_IGNORE,
138 /*	SP		!		"		#	*/
139 CASE_PRINT,
140 CASE_PRINT,
141 CASE_PRINT,
142 CASE_PRINT,
143 /*	$		%		&		'	*/
144 CASE_PRINT,
145 CASE_PRINT,
146 CASE_PRINT,
147 CASE_PRINT,
148 /*	(		)		*		+	*/
149 CASE_PRINT,
150 CASE_PRINT,
151 CASE_PRINT,
152 CASE_PRINT,
153 /*	,		-		.		/	*/
154 CASE_PRINT,
155 CASE_PRINT,
156 CASE_PRINT,
157 CASE_PRINT,
158 /*	0		1		2		3	*/
159 CASE_PRINT,
160 CASE_PRINT,
161 CASE_PRINT,
162 CASE_PRINT,
163 /*	4		5		6		7	*/
164 CASE_PRINT,
165 CASE_PRINT,
166 CASE_PRINT,
167 CASE_PRINT,
168 /*	8		9		:		;	*/
169 CASE_PRINT,
170 CASE_PRINT,
171 CASE_PRINT,
172 CASE_PRINT,
173 /*	<		=		>		?	*/
174 CASE_PRINT,
175 CASE_PRINT,
176 CASE_PRINT,
177 CASE_PRINT,
178 /*	@		A		B		C	*/
179 CASE_PRINT,
180 CASE_PRINT,
181 CASE_PRINT,
182 CASE_PRINT,
183 /*	D		E		F		G	*/
184 CASE_PRINT,
185 CASE_PRINT,
186 CASE_PRINT,
187 CASE_PRINT,
188 /*	H		I		J		K	*/
189 CASE_PRINT,
190 CASE_PRINT,
191 CASE_PRINT,
192 CASE_PRINT,
193 /*	L		M		N		O	*/
194 CASE_PRINT,
195 CASE_PRINT,
196 CASE_PRINT,
197 CASE_PRINT,
198 /*	P		Q		R		S	*/
199 CASE_PRINT,
200 CASE_PRINT,
201 CASE_PRINT,
202 CASE_PRINT,
203 /*	T		U		V		W	*/
204 CASE_PRINT,
205 CASE_PRINT,
206 CASE_PRINT,
207 CASE_PRINT,
208 /*	X		Y		Z		[	*/
209 CASE_PRINT,
210 CASE_PRINT,
211 CASE_PRINT,
212 CASE_PRINT,
213 /*	\		]		^		_	*/
214 CASE_PRINT,
215 CASE_PRINT,
216 CASE_PRINT,
217 CASE_PRINT,
218 /*	`		a		b		c	*/
219 CASE_PRINT,
220 CASE_PRINT,
221 CASE_PRINT,
222 CASE_PRINT,
223 /*	d		e		f		g	*/
224 CASE_PRINT,
225 CASE_PRINT,
226 CASE_PRINT,
227 CASE_PRINT,
228 /*	h		i		j		k	*/
229 CASE_PRINT,
230 CASE_PRINT,
231 CASE_PRINT,
232 CASE_PRINT,
233 /*	l		m		n		o	*/
234 CASE_PRINT,
235 CASE_PRINT,
236 CASE_PRINT,
237 CASE_PRINT,
238 /*	p		q		r		s	*/
239 CASE_PRINT,
240 CASE_PRINT,
241 CASE_PRINT,
242 CASE_PRINT,
243 /*	t		u		v		w	*/
244 CASE_PRINT,
245 CASE_PRINT,
246 CASE_PRINT,
247 CASE_PRINT,
248 /*	x		y		z		{	*/
249 CASE_PRINT,
250 CASE_PRINT,
251 CASE_PRINT,
252 CASE_PRINT,
253 /*	|		}		~		DEL	*/
254 CASE_PRINT,
255 CASE_PRINT,
256 CASE_PRINT,
257 CASE_IGNORE,
258 /*      0x80            0x81            0x82            0x83    */
259 CASE_GROUND_STATE,
260 CASE_GROUND_STATE,
261 CASE_GROUND_STATE,
262 CASE_GROUND_STATE,
263 /*      0x84            0x85            0x86            0x87    */
264 CASE_IND,
265 CASE_NEL,
266 CASE_GROUND_STATE,
267 CASE_GROUND_STATE,
268 /*      0x88            0x89            0x8a            0x8b    */
269 CASE_HTS,
270 CASE_GROUND_STATE,
271 CASE_GROUND_STATE,
272 CASE_GROUND_STATE,
273 /*      0x8c            0x8d            0x8e            0x8f    */
274 CASE_GROUND_STATE,
275 CASE_RI,
276 CASE_SS2,
277 CASE_SS3,
278 /*      0x90            0x91            0x92            0x93    */
279 CASE_DCS,
280 CASE_GROUND_STATE,
281 CASE_GROUND_STATE,
282 CASE_GROUND_STATE,
283 /*      0x94            0x95            0x96            0x97    */
284 CASE_GROUND_STATE,
285 CASE_GROUND_STATE,
286 CASE_SPA,
287 CASE_EPA,
288 /*      0x98            0x99            0x9a            0x9b    */
289 CASE_SOS,
290 CASE_GROUND_STATE,
291 CASE_DECID,
292 CASE_CSI_STATE,
293 /*      0x9c            0x9d            0x9e            0x9f    */
294 CASE_ST,
295 CASE_OSC,
296 CASE_PM,
297 CASE_APC,
298 /*      nobreakspace    exclamdown      cent            sterling        */
299 CASE_PRINT,
300 CASE_PRINT,
301 CASE_PRINT,
302 CASE_PRINT,
303 /*      currency        yen             brokenbar       section         */
304 CASE_PRINT,
305 CASE_PRINT,
306 CASE_PRINT,
307 CASE_PRINT,
308 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
309 CASE_PRINT,
310 CASE_PRINT,
311 CASE_PRINT,
312 CASE_PRINT,
313 /*      notsign         hyphen          registered      macron          */
314 CASE_PRINT,
315 CASE_PRINT,
316 CASE_PRINT,
317 CASE_PRINT,
318 /*      degree          plusminus       twosuperior     threesuperior   */
319 CASE_PRINT,
320 CASE_PRINT,
321 CASE_PRINT,
322 CASE_PRINT,
323 /*      acute           mu              paragraph       periodcentered  */
324 CASE_PRINT,
325 CASE_PRINT,
326 CASE_PRINT,
327 CASE_PRINT,
328 /*      cedilla         onesuperior     masculine       guillemotright  */
329 CASE_PRINT,
330 CASE_PRINT,
331 CASE_PRINT,
332 CASE_PRINT,
333 /*      onequarter      onehalf         threequarters   questiondown    */
334 CASE_PRINT,
335 CASE_PRINT,
336 CASE_PRINT,
337 CASE_PRINT,
338 /*      Agrave          Aacute          Acircumflex     Atilde          */
339 CASE_PRINT,
340 CASE_PRINT,
341 CASE_PRINT,
342 CASE_PRINT,
343 /*      Adiaeresis      Aring           AE              Ccedilla        */
344 CASE_PRINT,
345 CASE_PRINT,
346 CASE_PRINT,
347 CASE_PRINT,
348 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
349 CASE_PRINT,
350 CASE_PRINT,
351 CASE_PRINT,
352 CASE_PRINT,
353 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
354 CASE_PRINT,
355 CASE_PRINT,
356 CASE_PRINT,
357 CASE_PRINT,
358 /*      Eth             Ntilde          Ograve          Oacute          */
359 CASE_PRINT,
360 CASE_PRINT,
361 CASE_PRINT,
362 CASE_PRINT,
363 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
364 CASE_PRINT,
365 CASE_PRINT,
366 CASE_PRINT,
367 CASE_PRINT,
368 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
369 CASE_PRINT,
370 CASE_PRINT,
371 CASE_PRINT,
372 CASE_PRINT,
373 /*      Udiaeresis      Yacute          Thorn           ssharp          */
374 CASE_PRINT,
375 CASE_PRINT,
376 CASE_PRINT,
377 CASE_PRINT,
378 /*      agrave          aacute          acircumflex     atilde          */
379 CASE_PRINT,
380 CASE_PRINT,
381 CASE_PRINT,
382 CASE_PRINT,
383 /*      adiaeresis      aring           ae              ccedilla        */
384 CASE_PRINT,
385 CASE_PRINT,
386 CASE_PRINT,
387 CASE_PRINT,
388 /*      egrave          eacute          ecircumflex     ediaeresis      */
389 CASE_PRINT,
390 CASE_PRINT,
391 CASE_PRINT,
392 CASE_PRINT,
393 /*      igrave          iacute          icircumflex     idiaeresis      */
394 CASE_PRINT,
395 CASE_PRINT,
396 CASE_PRINT,
397 CASE_PRINT,
398 /*      eth             ntilde          ograve          oacute          */
399 CASE_PRINT,
400 CASE_PRINT,
401 CASE_PRINT,
402 CASE_PRINT,
403 /*      ocircumflex     otilde          odiaeresis      division        */
404 CASE_PRINT,
405 CASE_PRINT,
406 CASE_PRINT,
407 CASE_PRINT,
408 /*      oslash          ugrave          uacute          ucircumflex     */
409 CASE_PRINT,
410 CASE_PRINT,
411 CASE_PRINT,
412 CASE_PRINT,
413 /*      udiaeresis      yacute          thorn           ydiaeresis      */
414 CASE_PRINT,
415 CASE_PRINT,
416 CASE_PRINT,
417 CASE_PRINT,
418 };
419 
420 Const PARSE_T csi_table[] =		/* CSI */
421 {
422 /*	NUL		SOH		STX		ETX	*/
423 CASE_IGNORE,
424 CASE_IGNORE,
425 CASE_IGNORE,
426 CASE_IGNORE,
427 /*	EOT		ENQ		ACK		BEL	*/
428 CASE_IGNORE,
429 CASE_ENQ,
430 CASE_IGNORE,
431 CASE_BELL,
432 /*	BS		HT		NL		VT	*/
433 CASE_BS,
434 CASE_TAB,
435 CASE_VMOT,
436 CASE_VMOT,
437 /*	FF		CR		SO		SI	*/
438 CASE_VMOT,
439 CASE_CR,
440 CASE_SO,
441 CASE_SI,
442 /*	DLE		DC1		DC2		DC3	*/
443 CASE_IGNORE,
444 CASE_IGNORE,
445 CASE_IGNORE,
446 CASE_IGNORE,
447 /*	DC4		NAK		SYN		ETB	*/
448 CASE_IGNORE,
449 CASE_IGNORE,
450 CASE_IGNORE,
451 CASE_IGNORE,
452 /*	CAN		EM		SUB		ESC	*/
453 CASE_GROUND_STATE,
454 CASE_IGNORE,
455 CASE_GROUND_STATE,
456 CASE_ESC,
457 /*	FS		GS		RS		US	*/
458 CASE_IGNORE,
459 CASE_IGNORE,
460 CASE_IGNORE,
461 CASE_IGNORE,
462 /*	SP		!		"		#	*/
463 CASE_CSI_SPACE_STATE,
464 CASE_CSI_EX_STATE,
465 CASE_CSI_QUOTE_STATE,
466 CASE_CSI_HASH_STATE,
467 /*	$		%		&		'	*/
468 CASE_CSI_DOLLAR_STATE,
469 CASE_CSI_IGNORE,
470 CASE_CSI_IGNORE,
471 CASE_CSI_TICK_STATE,
472 /*	(		)		*		+	*/
473 CASE_CSI_IGNORE,
474 CASE_CSI_IGNORE,
475 CASE_CSI_IGNORE,
476 CASE_CSI_IGNORE,
477 /*	,		-		.		/	*/
478 CASE_CSI_IGNORE,
479 CASE_CSI_IGNORE,
480 CASE_CSI_IGNORE,
481 CASE_CSI_IGNORE,
482 /*	0		1		2		3	*/
483 CASE_ESC_DIGIT,
484 CASE_ESC_DIGIT,
485 CASE_ESC_DIGIT,
486 CASE_ESC_DIGIT,
487 /*	4		5		6		7	*/
488 CASE_ESC_DIGIT,
489 CASE_ESC_DIGIT,
490 CASE_ESC_DIGIT,
491 CASE_ESC_DIGIT,
492 /*	8		9		:		;	*/
493 CASE_ESC_DIGIT,
494 CASE_ESC_DIGIT,
495 CASE_ESC_COLON,
496 CASE_ESC_SEMI,
497 /*	<		=		>		?	*/
498 CASE_CSI_IGNORE,
499 CASE_DEC3_STATE,
500 CASE_DEC2_STATE,
501 CASE_DEC_STATE,
502 /*	@		A		B		C	*/
503 CASE_ICH,
504 CASE_CUU,
505 CASE_CUD,
506 CASE_CUF,
507 /*	D		E		F		G	*/
508 CASE_CUB,
509 CASE_CNL,
510 CASE_CPL,
511 CASE_HPA,
512 /*	H		I		J		K	*/
513 CASE_CUP,
514 CASE_CHT,
515 CASE_ED,
516 CASE_EL,
517 /*	L		M		N		O	*/
518 CASE_IL,
519 CASE_DL,
520 CASE_GROUND_STATE,
521 CASE_GROUND_STATE,
522 /*	P		Q		R		S	*/
523 CASE_DCH,
524 CASE_GROUND_STATE,
525 CASE_GROUND_STATE,
526 CASE_SU,
527 /*	T		U		V		W	*/
528 CASE_TRACK_MOUSE,
529 CASE_GROUND_STATE,
530 CASE_GROUND_STATE,
531 CASE_GROUND_STATE,
532 /*	X		Y		Z		[	*/
533 CASE_ECH,
534 CASE_GROUND_STATE,
535 CASE_CBT,
536 CASE_GROUND_STATE,
537 /*	\		]		^		_	*/
538 CASE_GROUND_STATE,
539 CASE_GROUND_STATE,
540 CASE_SD,
541 CASE_GROUND_STATE,
542 /*	`		a		b		c	*/
543 CASE_HPA,
544 CASE_HPR,
545 CASE_REP,
546 CASE_DA1,
547 /*	d		e		f		g	*/
548 CASE_VPA,
549 CASE_VPR,
550 CASE_CUP,
551 CASE_TBC,
552 /*	h		i		j		k	*/
553 CASE_SET,
554 CASE_MC,
555 CASE_GROUND_STATE,
556 CASE_GROUND_STATE,
557 /*	l		m		n		o	*/
558 CASE_RST,
559 CASE_SGR,
560 CASE_CPR,
561 CASE_GROUND_STATE,
562 /*	p		q		r		s	*/
563 CASE_GROUND_STATE,
564 CASE_DECLL,
565 CASE_DECSTBM,
566 CASE_ANSI_SC,
567 /*	t		u		v		w	*/
568 CASE_XTERM_WINOPS,
569 CASE_ANSI_RC,
570 CASE_GROUND_STATE,
571 CASE_GROUND_STATE,
572 /*	x		y		z		{	*/
573 CASE_DECREQTPARM,
574 CASE_GROUND_STATE,
575 CASE_GROUND_STATE,
576 CASE_GROUND_STATE,
577 /*	|		}		~		DEL	*/
578 CASE_GROUND_STATE,
579 CASE_GROUND_STATE,
580 CASE_GROUND_STATE,
581 CASE_IGNORE,
582 /*      0x80            0x81            0x82            0x83    */
583 CASE_GROUND_STATE,
584 CASE_GROUND_STATE,
585 CASE_GROUND_STATE,
586 CASE_GROUND_STATE,
587 /*      0x84            0x85            0x86            0x87    */
588 CASE_IND,
589 CASE_NEL,
590 CASE_GROUND_STATE,
591 CASE_GROUND_STATE,
592 /*      0x88            0x89            0x8a            0x8b    */
593 CASE_HTS,
594 CASE_GROUND_STATE,
595 CASE_GROUND_STATE,
596 CASE_GROUND_STATE,
597 /*      0x8c            0x8d            0x8e            0x8f    */
598 CASE_GROUND_STATE,
599 CASE_RI,
600 CASE_SS2,
601 CASE_SS3,
602 /*      0x90            0x91            0x92            0x93    */
603 CASE_DCS,
604 CASE_GROUND_STATE,
605 CASE_GROUND_STATE,
606 CASE_GROUND_STATE,
607 /*      0x94            0x95            0x96            0x97    */
608 CASE_GROUND_STATE,
609 CASE_GROUND_STATE,
610 CASE_SPA,
611 CASE_EPA,
612 /*      0x98            0x99            0x9a            0x9b    */
613 CASE_SOS,
614 CASE_GROUND_STATE,
615 CASE_DECID,
616 CASE_CSI_STATE,
617 /*      0x9c            0x9d            0x9e            0x9f    */
618 CASE_ST,
619 CASE_OSC,
620 CASE_PM,
621 CASE_APC,
622 /*      nobreakspace    exclamdown      cent            sterling        */
623 CASE_CSI_SPACE_STATE,
624 CASE_CSI_EX_STATE,
625 CASE_CSI_QUOTE_STATE,
626 CASE_CSI_HASH_STATE,
627 /*      currency        yen             brokenbar       section         */
628 CASE_CSI_DOLLAR_STATE,
629 CASE_CSI_IGNORE,
630 CASE_CSI_IGNORE,
631 CASE_CSI_TICK_STATE,
632 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
633 CASE_CSI_IGNORE,
634 CASE_CSI_IGNORE,
635 CASE_CSI_IGNORE,
636 CASE_CSI_IGNORE,
637 /*      notsign         hyphen          registered      macron          */
638 CASE_CSI_IGNORE,
639 CASE_CSI_IGNORE,
640 CASE_CSI_IGNORE,
641 CASE_CSI_IGNORE,
642 /*      degree          plusminus       twosuperior     threesuperior   */
643 CASE_ESC_DIGIT,
644 CASE_ESC_DIGIT,
645 CASE_ESC_DIGIT,
646 CASE_ESC_DIGIT,
647 /*      acute           mu              paragraph       periodcentered  */
648 CASE_ESC_DIGIT,
649 CASE_ESC_DIGIT,
650 CASE_ESC_DIGIT,
651 CASE_ESC_DIGIT,
652 /*      cedilla         onesuperior     masculine       guillemotright  */
653 CASE_ESC_DIGIT,
654 CASE_ESC_DIGIT,
655 CASE_ESC_COLON,
656 CASE_ESC_SEMI,
657 /*      onequarter      onehalf         threequarters   questiondown    */
658 CASE_CSI_IGNORE,
659 CASE_DEC3_STATE,
660 CASE_DEC2_STATE,
661 CASE_DEC_STATE,
662 /*      Agrave          Aacute          Acircumflex     Atilde          */
663 CASE_ICH,
664 CASE_CUU,
665 CASE_CUD,
666 CASE_CUF,
667 /*      Adiaeresis      Aring           AE              Ccedilla        */
668 CASE_CUB,
669 CASE_CNL,
670 CASE_CPL,
671 CASE_HPA,
672 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
673 CASE_CUP,
674 CASE_CHT,
675 CASE_ED,
676 CASE_EL,
677 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
678 CASE_IL,
679 CASE_DL,
680 CASE_GROUND_STATE,
681 CASE_GROUND_STATE,
682 /*      Eth             Ntilde          Ograve          Oacute          */
683 CASE_DCH,
684 CASE_GROUND_STATE,
685 CASE_GROUND_STATE,
686 CASE_SU,
687 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
688 CASE_TRACK_MOUSE,
689 CASE_GROUND_STATE,
690 CASE_GROUND_STATE,
691 CASE_GROUND_STATE,
692 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
693 CASE_ECH,
694 CASE_GROUND_STATE,
695 CASE_CBT,
696 CASE_GROUND_STATE,
697 /*      Udiaeresis      Yacute          Thorn           ssharp          */
698 CASE_GROUND_STATE,
699 CASE_GROUND_STATE,
700 CASE_SD,
701 CASE_GROUND_STATE,
702 /*      agrave          aacute          acircumflex     atilde          */
703 CASE_HPA,
704 CASE_HPR,
705 CASE_REP,
706 CASE_DA1,
707 /*      adiaeresis      aring           ae              ccedilla        */
708 CASE_VPA,
709 CASE_VPR,
710 CASE_CUP,
711 CASE_TBC,
712 /*      egrave          eacute          ecircumflex     ediaeresis      */
713 CASE_SET,
714 CASE_MC,
715 CASE_GROUND_STATE,
716 CASE_GROUND_STATE,
717 /*      igrave          iacute          icircumflex     idiaeresis      */
718 CASE_RST,
719 CASE_SGR,
720 CASE_CPR,
721 CASE_GROUND_STATE,
722 /*      eth             ntilde          ograve          oacute          */
723 CASE_GROUND_STATE,
724 CASE_DECLL,
725 CASE_DECSTBM,
726 CASE_ANSI_SC,
727 /*      ocircumflex     otilde          odiaeresis      division        */
728 CASE_XTERM_WINOPS,
729 CASE_ANSI_RC,
730 CASE_GROUND_STATE,
731 CASE_GROUND_STATE,
732 /*      oslash          ugrave          uacute          ucircumflex     */
733 CASE_DECREQTPARM,
734 CASE_GROUND_STATE,
735 CASE_GROUND_STATE,
736 CASE_GROUND_STATE,
737 /*      udiaeresis      yacute          thorn           ydiaeresis      */
738 CASE_GROUND_STATE,
739 CASE_GROUND_STATE,
740 CASE_GROUND_STATE,
741 CASE_IGNORE,
742 };
743 
744 Const PARSE_T csi2_table[] =		/* CSI */
745 {
746 /*	NUL		SOH		STX		ETX	*/
747 CASE_IGNORE,
748 CASE_IGNORE,
749 CASE_IGNORE,
750 CASE_IGNORE,
751 /*	EOT		ENQ		ACK		BEL	*/
752 CASE_IGNORE,
753 CASE_ENQ,
754 CASE_IGNORE,
755 CASE_BELL,
756 /*	BS		HT		NL		VT	*/
757 CASE_BS,
758 CASE_TAB,
759 CASE_VMOT,
760 CASE_VMOT,
761 /*	FF		CR		SO		SI	*/
762 CASE_VMOT,
763 CASE_CR,
764 CASE_SO,
765 CASE_SI,
766 /*	DLE		DC1		DC2		DC3	*/
767 CASE_IGNORE,
768 CASE_IGNORE,
769 CASE_IGNORE,
770 CASE_IGNORE,
771 /*	DC4		NAK		SYN		ETB	*/
772 CASE_IGNORE,
773 CASE_IGNORE,
774 CASE_IGNORE,
775 CASE_IGNORE,
776 /*	CAN		EM		SUB		ESC	*/
777 CASE_GROUND_STATE,
778 CASE_IGNORE,
779 CASE_GROUND_STATE,
780 CASE_ESC,
781 /*	FS		GS		RS		US	*/
782 CASE_IGNORE,
783 CASE_IGNORE,
784 CASE_IGNORE,
785 CASE_IGNORE,
786 /*	SP		!		"		#	*/
787 CASE_CSI_SPACE_STATE,
788 CASE_CSI_EX_STATE,
789 CASE_CSI_QUOTE_STATE,
790 CASE_CSI_HASH_STATE,
791 /*	$		%		&		'	*/
792 CASE_CSI_DOLLAR_STATE,
793 CASE_CSI_IGNORE,
794 CASE_CSI_IGNORE,
795 CASE_CSI_TICK_STATE,
796 /*	(		)		*		+	*/
797 CASE_CSI_IGNORE,
798 CASE_CSI_IGNORE,
799 CASE_CSI_STAR_STATE,
800 CASE_CSI_IGNORE,
801 /*	,		-		.		/	*/
802 CASE_CSI_IGNORE,
803 CASE_CSI_IGNORE,
804 CASE_CSI_IGNORE,
805 CASE_CSI_IGNORE,
806 /*	0		1		2		3	*/
807 CASE_ESC_DIGIT,
808 CASE_ESC_DIGIT,
809 CASE_ESC_DIGIT,
810 CASE_ESC_DIGIT,
811 /*	4		5		6		7	*/
812 CASE_ESC_DIGIT,
813 CASE_ESC_DIGIT,
814 CASE_ESC_DIGIT,
815 CASE_ESC_DIGIT,
816 /*	8		9		:		;	*/
817 CASE_ESC_DIGIT,
818 CASE_ESC_DIGIT,
819 CASE_ESC_COLON,
820 CASE_ESC_SEMI,
821 /*	<		=		>		?	*/
822 CASE_CSI_IGNORE,
823 CASE_CSI_IGNORE,
824 CASE_CSI_IGNORE,
825 CASE_CSI_IGNORE,
826 /*	@		A		B		C	*/
827 CASE_ICH,
828 CASE_CUU,
829 CASE_CUD,
830 CASE_CUF,
831 /*	D		E		F		G	*/
832 CASE_CUB,
833 CASE_CNL,
834 CASE_CPL,
835 CASE_HPA,
836 /*	H		I		J		K	*/
837 CASE_CUP,
838 CASE_CHT,
839 CASE_ED,
840 CASE_EL,
841 /*	L		M		N		O	*/
842 CASE_IL,
843 CASE_DL,
844 CASE_GROUND_STATE,
845 CASE_GROUND_STATE,
846 /*	P		Q		R		S	*/
847 CASE_DCH,
848 CASE_GROUND_STATE,
849 CASE_GROUND_STATE,
850 CASE_SU,
851 /*	T		U		V		W	*/
852 CASE_TRACK_MOUSE,
853 CASE_GROUND_STATE,
854 CASE_GROUND_STATE,
855 CASE_GROUND_STATE,
856 /*	X		Y		Z		[	*/
857 CASE_ECH,
858 CASE_GROUND_STATE,
859 CASE_CBT,
860 CASE_GROUND_STATE,
861 /*	\		]		^		_	*/
862 CASE_GROUND_STATE,
863 CASE_GROUND_STATE,
864 CASE_SD,
865 CASE_GROUND_STATE,
866 /*	`		a		b		c	*/
867 CASE_HPA,
868 CASE_HPR,
869 CASE_REP,
870 CASE_DA1,
871 /*	d		e		f		g	*/
872 CASE_VPA,
873 CASE_VPR,
874 CASE_CUP,
875 CASE_TBC,
876 /*	h		i		j		k	*/
877 CASE_SET,
878 CASE_MC,
879 CASE_GROUND_STATE,
880 CASE_GROUND_STATE,
881 /*	l		m		n		o	*/
882 CASE_RST,
883 CASE_SGR,
884 CASE_CPR,
885 CASE_GROUND_STATE,
886 /*	p		q		r		s	*/
887 CASE_GROUND_STATE,
888 CASE_DECLL,
889 CASE_DECSTBM,
890 CASE_ANSI_SC,
891 /*	t		u		v		w	*/
892 CASE_XTERM_WINOPS,
893 CASE_ANSI_RC,
894 CASE_GROUND_STATE,
895 CASE_GROUND_STATE,
896 /*	x		y		z		{	*/
897 CASE_DECREQTPARM,
898 CASE_GROUND_STATE,
899 CASE_GROUND_STATE,
900 CASE_GROUND_STATE,
901 /*	|		}		~		DEL	*/
902 CASE_GROUND_STATE,
903 CASE_GROUND_STATE,
904 CASE_GROUND_STATE,
905 CASE_IGNORE,
906 /*      0x80            0x81            0x82            0x83    */
907 CASE_GROUND_STATE,
908 CASE_GROUND_STATE,
909 CASE_GROUND_STATE,
910 CASE_GROUND_STATE,
911 /*      0x84            0x85            0x86            0x87    */
912 CASE_IND,
913 CASE_NEL,
914 CASE_GROUND_STATE,
915 CASE_GROUND_STATE,
916 /*      0x88            0x89            0x8a            0x8b    */
917 CASE_HTS,
918 CASE_GROUND_STATE,
919 CASE_GROUND_STATE,
920 CASE_GROUND_STATE,
921 /*      0x8c            0x8d            0x8e            0x8f    */
922 CASE_GROUND_STATE,
923 CASE_RI,
924 CASE_SS2,
925 CASE_SS3,
926 /*      0x90            0x91            0x92            0x93    */
927 CASE_DCS,
928 CASE_GROUND_STATE,
929 CASE_GROUND_STATE,
930 CASE_GROUND_STATE,
931 /*      0x94            0x95            0x96            0x97    */
932 CASE_GROUND_STATE,
933 CASE_GROUND_STATE,
934 CASE_SPA,
935 CASE_EPA,
936 /*      0x98            0x99            0x9a            0x9b    */
937 CASE_SOS,
938 CASE_GROUND_STATE,
939 CASE_DECID,
940 CASE_CSI_STATE,
941 /*      0x9c            0x9d            0x9e            0x9f    */
942 CASE_ST,
943 CASE_OSC,
944 CASE_PM,
945 CASE_APC,
946 /*      nobreakspace    exclamdown      cent            sterling        */
947 CASE_CSI_SPACE_STATE,
948 CASE_CSI_EX_STATE,
949 CASE_CSI_QUOTE_STATE,
950 CASE_CSI_HASH_STATE,
951 /*      currency        yen             brokenbar       section         */
952 CASE_CSI_DOLLAR_STATE,
953 CASE_CSI_IGNORE,
954 CASE_CSI_IGNORE,
955 CASE_CSI_TICK_STATE,
956 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
957 CASE_CSI_IGNORE,
958 CASE_CSI_IGNORE,
959 CASE_CSI_STAR_STATE,
960 CASE_CSI_IGNORE,
961 /*      notsign         hyphen          registered      macron          */
962 CASE_CSI_IGNORE,
963 CASE_CSI_IGNORE,
964 CASE_CSI_IGNORE,
965 CASE_CSI_IGNORE,
966 /*      degree          plusminus       twosuperior     threesuperior   */
967 CASE_ESC_DIGIT,
968 CASE_ESC_DIGIT,
969 CASE_ESC_DIGIT,
970 CASE_ESC_DIGIT,
971 /*      acute           mu              paragraph       periodcentered  */
972 CASE_ESC_DIGIT,
973 CASE_ESC_DIGIT,
974 CASE_ESC_DIGIT,
975 CASE_ESC_DIGIT,
976 /*      cedilla         onesuperior     masculine       guillemotright  */
977 CASE_ESC_DIGIT,
978 CASE_ESC_DIGIT,
979 CASE_ESC_COLON,
980 CASE_ESC_SEMI,
981 /*      onequarter      onehalf         threequarters   questiondown    */
982 CASE_CSI_IGNORE,
983 CASE_CSI_IGNORE,
984 CASE_CSI_IGNORE,
985 CASE_CSI_IGNORE,
986 /*      Agrave          Aacute          Acircumflex     Atilde          */
987 CASE_ICH,
988 CASE_CUU,
989 CASE_CUD,
990 CASE_CUF,
991 /*      Adiaeresis      Aring           AE              Ccedilla        */
992 CASE_CUB,
993 CASE_CNL,
994 CASE_CPL,
995 CASE_HPA,
996 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
997 CASE_CUP,
998 CASE_CHT,
999 CASE_ED,
1000 CASE_EL,
1001 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
1002 CASE_IL,
1003 CASE_DL,
1004 CASE_GROUND_STATE,
1005 CASE_GROUND_STATE,
1006 /*      Eth             Ntilde          Ograve          Oacute          */
1007 CASE_DCH,
1008 CASE_GROUND_STATE,
1009 CASE_GROUND_STATE,
1010 CASE_SU,
1011 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
1012 CASE_TRACK_MOUSE,
1013 CASE_GROUND_STATE,
1014 CASE_GROUND_STATE,
1015 CASE_GROUND_STATE,
1016 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
1017 CASE_ECH,
1018 CASE_GROUND_STATE,
1019 CASE_CBT,
1020 CASE_GROUND_STATE,
1021 /*      Udiaeresis      Yacute          Thorn           ssharp          */
1022 CASE_GROUND_STATE,
1023 CASE_GROUND_STATE,
1024 CASE_SD,
1025 CASE_GROUND_STATE,
1026 /*      agrave          aacute          acircumflex     atilde          */
1027 CASE_HPA,
1028 CASE_HPR,
1029 CASE_REP,
1030 CASE_DA1,
1031 /*      adiaeresis      aring           ae              ccedilla        */
1032 CASE_VPA,
1033 CASE_VPR,
1034 CASE_CUP,
1035 CASE_TBC,
1036 /*      egrave          eacute          ecircumflex     ediaeresis      */
1037 CASE_SET,
1038 CASE_MC,
1039 CASE_GROUND_STATE,
1040 CASE_GROUND_STATE,
1041 /*      igrave          iacute          icircumflex     idiaeresis      */
1042 CASE_RST,
1043 CASE_SGR,
1044 CASE_CPR,
1045 CASE_GROUND_STATE,
1046 /*      eth             ntilde          ograve          oacute          */
1047 CASE_GROUND_STATE,
1048 CASE_DECLL,
1049 CASE_DECSTBM,
1050 CASE_ANSI_SC,
1051 /*      ocircumflex     otilde          odiaeresis      division        */
1052 CASE_XTERM_WINOPS,
1053 CASE_ANSI_RC,
1054 CASE_GROUND_STATE,
1055 CASE_GROUND_STATE,
1056 /*      oslash          ugrave          uacute          ucircumflex     */
1057 CASE_DECREQTPARM,
1058 CASE_GROUND_STATE,
1059 CASE_GROUND_STATE,
1060 CASE_GROUND_STATE,
1061 /*      udiaeresis      yacute          thorn           ydiaeresis      */
1062 CASE_GROUND_STATE,
1063 CASE_GROUND_STATE,
1064 CASE_GROUND_STATE,
1065 CASE_IGNORE,
1066 };
1067 
1068 Const PARSE_T csi_ex_table[] =		/* CSI ! */
1069 {
1070 /*	NUL		SOH		STX		ETX	*/
1071 CASE_IGNORE,
1072 CASE_IGNORE,
1073 CASE_IGNORE,
1074 CASE_IGNORE,
1075 /*	EOT		ENQ		ACK		BEL	*/
1076 CASE_IGNORE,
1077 CASE_ENQ,
1078 CASE_IGNORE,
1079 CASE_BELL,
1080 /*	BS		HT		NL		VT	*/
1081 CASE_BS,
1082 CASE_TAB,
1083 CASE_VMOT,
1084 CASE_VMOT,
1085 /*	FF		CR		SO		SI	*/
1086 CASE_VMOT,
1087 CASE_CR,
1088 CASE_SO,
1089 CASE_SI,
1090 /*	DLE		DC1		DC2		DC3	*/
1091 CASE_IGNORE,
1092 CASE_IGNORE,
1093 CASE_IGNORE,
1094 CASE_IGNORE,
1095 /*	DC4		NAK		SYN		ETB	*/
1096 CASE_IGNORE,
1097 CASE_IGNORE,
1098 CASE_IGNORE,
1099 CASE_IGNORE,
1100 /*	CAN		EM		SUB		ESC	*/
1101 CASE_GROUND_STATE,
1102 CASE_IGNORE,
1103 CASE_GROUND_STATE,
1104 CASE_ESC,
1105 /*	FS		GS		RS		US	*/
1106 CASE_IGNORE,
1107 CASE_IGNORE,
1108 CASE_IGNORE,
1109 CASE_IGNORE,
1110 /*	SP		!		"		#	*/
1111 CASE_CSI_IGNORE,
1112 CASE_CSI_IGNORE,
1113 CASE_CSI_IGNORE,
1114 CASE_CSI_IGNORE,
1115 /*	$		%		&		'	*/
1116 CASE_CSI_IGNORE,
1117 CASE_CSI_IGNORE,
1118 CASE_CSI_IGNORE,
1119 CASE_CSI_IGNORE,
1120 /*	(		)		*		+	*/
1121 CASE_CSI_IGNORE,
1122 CASE_CSI_IGNORE,
1123 CASE_CSI_IGNORE,
1124 CASE_CSI_IGNORE,
1125 /*	,		-		.		/	*/
1126 CASE_CSI_IGNORE,
1127 CASE_CSI_IGNORE,
1128 CASE_CSI_IGNORE,
1129 CASE_CSI_IGNORE,
1130 /*	0		1		2		3	*/
1131 CASE_CSI_IGNORE,
1132 CASE_CSI_IGNORE,
1133 CASE_CSI_IGNORE,
1134 CASE_CSI_IGNORE,
1135 /*	4		5		6		7	*/
1136 CASE_CSI_IGNORE,
1137 CASE_CSI_IGNORE,
1138 CASE_CSI_IGNORE,
1139 CASE_CSI_IGNORE,
1140 /*	8		9		:		;	*/
1141 CASE_CSI_IGNORE,
1142 CASE_CSI_IGNORE,
1143 CASE_CSI_IGNORE,
1144 CASE_CSI_IGNORE,
1145 /*	<		=		>		?	*/
1146 CASE_CSI_IGNORE,
1147 CASE_CSI_IGNORE,
1148 CASE_CSI_IGNORE,
1149 CASE_CSI_IGNORE,
1150 /*	@		A		B		C	*/
1151 CASE_GROUND_STATE,
1152 CASE_GROUND_STATE,
1153 CASE_GROUND_STATE,
1154 CASE_GROUND_STATE,
1155 /*	D		E		F		G	*/
1156 CASE_GROUND_STATE,
1157 CASE_GROUND_STATE,
1158 CASE_GROUND_STATE,
1159 CASE_GROUND_STATE,
1160 /*	H		I		J		K	*/
1161 CASE_GROUND_STATE,
1162 CASE_GROUND_STATE,
1163 CASE_GROUND_STATE,
1164 CASE_GROUND_STATE,
1165 /*	L		M		N		O	*/
1166 CASE_GROUND_STATE,
1167 CASE_GROUND_STATE,
1168 CASE_GROUND_STATE,
1169 CASE_GROUND_STATE,
1170 /*	P		Q		R		S	*/
1171 CASE_GROUND_STATE,
1172 CASE_GROUND_STATE,
1173 CASE_GROUND_STATE,
1174 CASE_GROUND_STATE,
1175 /*	T		U		V		W	*/
1176 CASE_GROUND_STATE,
1177 CASE_GROUND_STATE,
1178 CASE_GROUND_STATE,
1179 CASE_GROUND_STATE,
1180 /*	X		Y		Z		[	*/
1181 CASE_GROUND_STATE,
1182 CASE_GROUND_STATE,
1183 CASE_GROUND_STATE,
1184 CASE_GROUND_STATE,
1185 /*	\		]		^		_	*/
1186 CASE_GROUND_STATE,
1187 CASE_GROUND_STATE,
1188 CASE_GROUND_STATE,
1189 CASE_GROUND_STATE,
1190 /*	`		a		b		c	*/
1191 CASE_GROUND_STATE,
1192 CASE_GROUND_STATE,
1193 CASE_GROUND_STATE,
1194 CASE_GROUND_STATE,
1195 /*	d		e		f		g	*/
1196 CASE_GROUND_STATE,
1197 CASE_GROUND_STATE,
1198 CASE_GROUND_STATE,
1199 CASE_GROUND_STATE,
1200 /*	h		i		j		k	*/
1201 CASE_GROUND_STATE,
1202 CASE_GROUND_STATE,
1203 CASE_GROUND_STATE,
1204 CASE_GROUND_STATE,
1205 /*	l		m		n		o	*/
1206 CASE_GROUND_STATE,
1207 CASE_GROUND_STATE,
1208 CASE_GROUND_STATE,
1209 CASE_GROUND_STATE,
1210 /*	p		q		r		s	*/
1211 CASE_DECSTR,
1212 CASE_GROUND_STATE,
1213 CASE_GROUND_STATE,
1214 CASE_GROUND_STATE,
1215 /*	t		u		v		w	*/
1216 CASE_GROUND_STATE,
1217 CASE_GROUND_STATE,
1218 CASE_GROUND_STATE,
1219 CASE_GROUND_STATE,
1220 /*	x		y		z		{	*/
1221 CASE_GROUND_STATE,
1222 CASE_GROUND_STATE,
1223 CASE_GROUND_STATE,
1224 CASE_GROUND_STATE,
1225 /*	|		}		~		DEL	*/
1226 CASE_GROUND_STATE,
1227 CASE_GROUND_STATE,
1228 CASE_GROUND_STATE,
1229 CASE_IGNORE,
1230 /*      0x80            0x81            0x82            0x83    */
1231 CASE_GROUND_STATE,
1232 CASE_GROUND_STATE,
1233 CASE_GROUND_STATE,
1234 CASE_GROUND_STATE,
1235 /*      0x84            0x85            0x86            0x87    */
1236 CASE_IND,
1237 CASE_NEL,
1238 CASE_GROUND_STATE,
1239 CASE_GROUND_STATE,
1240 /*      0x88            0x89            0x8a            0x8b    */
1241 CASE_HTS,
1242 CASE_GROUND_STATE,
1243 CASE_GROUND_STATE,
1244 CASE_GROUND_STATE,
1245 /*      0x8c            0x8d            0x8e            0x8f    */
1246 CASE_GROUND_STATE,
1247 CASE_RI,
1248 CASE_SS2,
1249 CASE_SS3,
1250 /*      0x90            0x91            0x92            0x93    */
1251 CASE_DCS,
1252 CASE_GROUND_STATE,
1253 CASE_GROUND_STATE,
1254 CASE_GROUND_STATE,
1255 /*      0x94            0x95            0x96            0x97    */
1256 CASE_GROUND_STATE,
1257 CASE_GROUND_STATE,
1258 CASE_SPA,
1259 CASE_EPA,
1260 /*      0x98            0x99            0x9a            0x9b    */
1261 CASE_SOS,
1262 CASE_GROUND_STATE,
1263 CASE_DECID,
1264 CASE_CSI_STATE,
1265 /*      0x9c            0x9d            0x9e            0x9f    */
1266 CASE_ST,
1267 CASE_OSC,
1268 CASE_PM,
1269 CASE_APC,
1270 /*      nobreakspace    exclamdown      cent            sterling        */
1271 CASE_CSI_IGNORE,
1272 CASE_CSI_IGNORE,
1273 CASE_CSI_IGNORE,
1274 CASE_CSI_IGNORE,
1275 /*      currency        yen             brokenbar       section         */
1276 CASE_CSI_IGNORE,
1277 CASE_CSI_IGNORE,
1278 CASE_CSI_IGNORE,
1279 CASE_CSI_IGNORE,
1280 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
1281 CASE_CSI_IGNORE,
1282 CASE_CSI_IGNORE,
1283 CASE_CSI_IGNORE,
1284 CASE_CSI_IGNORE,
1285 /*      notsign         hyphen          registered      macron          */
1286 CASE_CSI_IGNORE,
1287 CASE_CSI_IGNORE,
1288 CASE_CSI_IGNORE,
1289 CASE_CSI_IGNORE,
1290 /*      degree          plusminus       twosuperior     threesuperior   */
1291 CASE_CSI_IGNORE,
1292 CASE_CSI_IGNORE,
1293 CASE_CSI_IGNORE,
1294 CASE_CSI_IGNORE,
1295 /*      acute           mu              paragraph       periodcentered  */
1296 CASE_CSI_IGNORE,
1297 CASE_CSI_IGNORE,
1298 CASE_CSI_IGNORE,
1299 CASE_CSI_IGNORE,
1300 /*      cedilla         onesuperior     masculine       guillemotright  */
1301 CASE_CSI_IGNORE,
1302 CASE_CSI_IGNORE,
1303 CASE_CSI_IGNORE,
1304 CASE_CSI_IGNORE,
1305 /*      onequarter      onehalf         threequarters   questiondown    */
1306 CASE_CSI_IGNORE,
1307 CASE_CSI_IGNORE,
1308 CASE_CSI_IGNORE,
1309 CASE_CSI_IGNORE,
1310 /*      Agrave          Aacute          Acircumflex     Atilde          */
1311 CASE_GROUND_STATE,
1312 CASE_GROUND_STATE,
1313 CASE_GROUND_STATE,
1314 CASE_GROUND_STATE,
1315 /*      Adiaeresis      Aring           AE              Ccedilla        */
1316 CASE_GROUND_STATE,
1317 CASE_GROUND_STATE,
1318 CASE_GROUND_STATE,
1319 CASE_GROUND_STATE,
1320 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
1321 CASE_GROUND_STATE,
1322 CASE_GROUND_STATE,
1323 CASE_GROUND_STATE,
1324 CASE_GROUND_STATE,
1325 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
1326 CASE_GROUND_STATE,
1327 CASE_GROUND_STATE,
1328 CASE_GROUND_STATE,
1329 CASE_GROUND_STATE,
1330 /*      Eth             Ntilde          Ograve          Oacute          */
1331 CASE_GROUND_STATE,
1332 CASE_GROUND_STATE,
1333 CASE_GROUND_STATE,
1334 CASE_GROUND_STATE,
1335 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
1336 CASE_GROUND_STATE,
1337 CASE_GROUND_STATE,
1338 CASE_GROUND_STATE,
1339 CASE_GROUND_STATE,
1340 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
1341 CASE_GROUND_STATE,
1342 CASE_GROUND_STATE,
1343 CASE_GROUND_STATE,
1344 CASE_GROUND_STATE,
1345 /*      Udiaeresis      Yacute          Thorn           ssharp          */
1346 CASE_GROUND_STATE,
1347 CASE_GROUND_STATE,
1348 CASE_GROUND_STATE,
1349 CASE_GROUND_STATE,
1350 /*      agrave          aacute          acircumflex     atilde          */
1351 CASE_GROUND_STATE,
1352 CASE_GROUND_STATE,
1353 CASE_GROUND_STATE,
1354 CASE_GROUND_STATE,
1355 /*      adiaeresis      aring           ae              ccedilla        */
1356 CASE_GROUND_STATE,
1357 CASE_GROUND_STATE,
1358 CASE_GROUND_STATE,
1359 CASE_GROUND_STATE,
1360 /*      egrave          eacute          ecircumflex     ediaeresis      */
1361 CASE_GROUND_STATE,
1362 CASE_GROUND_STATE,
1363 CASE_GROUND_STATE,
1364 CASE_GROUND_STATE,
1365 /*      igrave          iacute          icircumflex     idiaeresis      */
1366 CASE_GROUND_STATE,
1367 CASE_GROUND_STATE,
1368 CASE_GROUND_STATE,
1369 CASE_GROUND_STATE,
1370 /*      eth             ntilde          ograve          oacute          */
1371 CASE_DECSTR,
1372 CASE_GROUND_STATE,
1373 CASE_GROUND_STATE,
1374 CASE_GROUND_STATE,
1375 /*      ocircumflex     otilde          odiaeresis      division        */
1376 CASE_GROUND_STATE,
1377 CASE_GROUND_STATE,
1378 CASE_GROUND_STATE,
1379 CASE_GROUND_STATE,
1380 /*      oslash          ugrave          uacute          ucircumflex     */
1381 CASE_GROUND_STATE,
1382 CASE_GROUND_STATE,
1383 CASE_GROUND_STATE,
1384 CASE_GROUND_STATE,
1385 /*      udiaeresis      yacute          thorn           ydiaeresis      */
1386 CASE_GROUND_STATE,
1387 CASE_GROUND_STATE,
1388 CASE_GROUND_STATE,
1389 CASE_IGNORE,
1390 };
1391 
1392 Const PARSE_T csi_quo_table[] =		/* CSI ... " */
1393 {
1394 /*	NUL		SOH		STX		ETX	*/
1395 CASE_IGNORE,
1396 CASE_IGNORE,
1397 CASE_IGNORE,
1398 CASE_IGNORE,
1399 /*	EOT		ENQ		ACK		BEL	*/
1400 CASE_IGNORE,
1401 CASE_ENQ,
1402 CASE_IGNORE,
1403 CASE_BELL,
1404 /*	BS		HT		NL		VT	*/
1405 CASE_BS,
1406 CASE_TAB,
1407 CASE_VMOT,
1408 CASE_VMOT,
1409 /*	FF		CR		SO		SI	*/
1410 CASE_VMOT,
1411 CASE_CR,
1412 CASE_SO,
1413 CASE_SI,
1414 /*	DLE		DC1		DC2		DC3	*/
1415 CASE_IGNORE,
1416 CASE_IGNORE,
1417 CASE_IGNORE,
1418 CASE_IGNORE,
1419 /*	DC4		NAK		SYN		ETB	*/
1420 CASE_IGNORE,
1421 CASE_IGNORE,
1422 CASE_IGNORE,
1423 CASE_IGNORE,
1424 /*	CAN		EM		SUB		ESC	*/
1425 CASE_GROUND_STATE,
1426 CASE_IGNORE,
1427 CASE_GROUND_STATE,
1428 CASE_ESC,
1429 /*	FS		GS		RS		US	*/
1430 CASE_IGNORE,
1431 CASE_IGNORE,
1432 CASE_IGNORE,
1433 CASE_IGNORE,
1434 /*	SP		!		"		#	*/
1435 CASE_CSI_IGNORE,
1436 CASE_CSI_IGNORE,
1437 CASE_CSI_IGNORE,
1438 CASE_CSI_IGNORE,
1439 /*	$		%		&		'	*/
1440 CASE_CSI_IGNORE,
1441 CASE_CSI_IGNORE,
1442 CASE_CSI_IGNORE,
1443 CASE_CSI_IGNORE,
1444 /*	(		)		*		+	*/
1445 CASE_CSI_IGNORE,
1446 CASE_CSI_IGNORE,
1447 CASE_CSI_IGNORE,
1448 CASE_CSI_IGNORE,
1449 /*	,		-		.		/	*/
1450 CASE_CSI_IGNORE,
1451 CASE_CSI_IGNORE,
1452 CASE_CSI_IGNORE,
1453 CASE_CSI_IGNORE,
1454 /*	0		1		2		3	*/
1455 CASE_CSI_IGNORE,
1456 CASE_CSI_IGNORE,
1457 CASE_CSI_IGNORE,
1458 CASE_CSI_IGNORE,
1459 /*	4		5		6		7	*/
1460 CASE_CSI_IGNORE,
1461 CASE_CSI_IGNORE,
1462 CASE_CSI_IGNORE,
1463 CASE_CSI_IGNORE,
1464 /*	8		9		:		;	*/
1465 CASE_CSI_IGNORE,
1466 CASE_CSI_IGNORE,
1467 CASE_CSI_IGNORE,
1468 CASE_CSI_IGNORE,
1469 /*	<		=		>		?	*/
1470 CASE_CSI_IGNORE,
1471 CASE_CSI_IGNORE,
1472 CASE_CSI_IGNORE,
1473 CASE_CSI_IGNORE,
1474 /*	@		A		B		C	*/
1475 CASE_GROUND_STATE,
1476 CASE_GROUND_STATE,
1477 CASE_GROUND_STATE,
1478 CASE_GROUND_STATE,
1479 /*	D		E		F		G	*/
1480 CASE_GROUND_STATE,
1481 CASE_GROUND_STATE,
1482 CASE_GROUND_STATE,
1483 CASE_GROUND_STATE,
1484 /*	H		I		J		K	*/
1485 CASE_GROUND_STATE,
1486 CASE_GROUND_STATE,
1487 CASE_GROUND_STATE,
1488 CASE_GROUND_STATE,
1489 /*	L		M		N		O	*/
1490 CASE_GROUND_STATE,
1491 CASE_GROUND_STATE,
1492 CASE_GROUND_STATE,
1493 CASE_GROUND_STATE,
1494 /*	P		Q		R		S	*/
1495 CASE_GROUND_STATE,
1496 CASE_GROUND_STATE,
1497 CASE_GROUND_STATE,
1498 CASE_GROUND_STATE,
1499 /*	T		U		V		W	*/
1500 CASE_GROUND_STATE,
1501 CASE_GROUND_STATE,
1502 CASE_GROUND_STATE,
1503 CASE_GROUND_STATE,
1504 /*	X		Y		Z		[	*/
1505 CASE_GROUND_STATE,
1506 CASE_GROUND_STATE,
1507 CASE_GROUND_STATE,
1508 CASE_GROUND_STATE,
1509 /*	\		]		^		_	*/
1510 CASE_GROUND_STATE,
1511 CASE_GROUND_STATE,
1512 CASE_GROUND_STATE,
1513 CASE_GROUND_STATE,
1514 /*	`		a		b		c	*/
1515 CASE_GROUND_STATE,
1516 CASE_GROUND_STATE,
1517 CASE_GROUND_STATE,
1518 CASE_GROUND_STATE,
1519 /*	d		e		f		g	*/
1520 CASE_GROUND_STATE,
1521 CASE_GROUND_STATE,
1522 CASE_GROUND_STATE,
1523 CASE_GROUND_STATE,
1524 /*	h		i		j		k	*/
1525 CASE_GROUND_STATE,
1526 CASE_GROUND_STATE,
1527 CASE_GROUND_STATE,
1528 CASE_GROUND_STATE,
1529 /*	l		m		n		o	*/
1530 CASE_GROUND_STATE,
1531 CASE_GROUND_STATE,
1532 CASE_GROUND_STATE,
1533 CASE_GROUND_STATE,
1534 /*	p		q		r		s	*/
1535 CASE_DECSCL,
1536 CASE_DECSCA,
1537 CASE_GROUND_STATE,
1538 CASE_GROUND_STATE,
1539 /*	t		u		v		w	*/
1540 CASE_GROUND_STATE,
1541 CASE_GROUND_STATE,
1542 CASE_GROUND_STATE,
1543 CASE_GROUND_STATE,
1544 /*	x		y		z		{	*/
1545 CASE_GROUND_STATE,
1546 CASE_GROUND_STATE,
1547 CASE_GROUND_STATE,
1548 CASE_GROUND_STATE,
1549 /*	|		}		~		DEL	*/
1550 CASE_GROUND_STATE,
1551 CASE_GROUND_STATE,
1552 CASE_GROUND_STATE,
1553 CASE_IGNORE,
1554 /*      0x80            0x81            0x82            0x83    */
1555 CASE_GROUND_STATE,
1556 CASE_GROUND_STATE,
1557 CASE_GROUND_STATE,
1558 CASE_GROUND_STATE,
1559 /*      0x84            0x85            0x86            0x87    */
1560 CASE_IND,
1561 CASE_NEL,
1562 CASE_GROUND_STATE,
1563 CASE_GROUND_STATE,
1564 /*      0x88            0x89            0x8a            0x8b    */
1565 CASE_HTS,
1566 CASE_GROUND_STATE,
1567 CASE_GROUND_STATE,
1568 CASE_GROUND_STATE,
1569 /*      0x8c            0x8d            0x8e            0x8f    */
1570 CASE_GROUND_STATE,
1571 CASE_RI,
1572 CASE_SS2,
1573 CASE_SS3,
1574 /*      0x90            0x91            0x92            0x93    */
1575 CASE_DCS,
1576 CASE_GROUND_STATE,
1577 CASE_GROUND_STATE,
1578 CASE_GROUND_STATE,
1579 /*      0x94            0x95            0x96            0x97    */
1580 CASE_GROUND_STATE,
1581 CASE_GROUND_STATE,
1582 CASE_SPA,
1583 CASE_EPA,
1584 /*      0x98            0x99            0x9a            0x9b    */
1585 CASE_SOS,
1586 CASE_GROUND_STATE,
1587 CASE_DECID,
1588 CASE_CSI_STATE,
1589 /*      0x9c            0x9d            0x9e            0x9f    */
1590 CASE_ST,
1591 CASE_OSC,
1592 CASE_PM,
1593 CASE_APC,
1594 /*      nobreakspace    exclamdown      cent            sterling        */
1595 CASE_CSI_IGNORE,
1596 CASE_CSI_IGNORE,
1597 CASE_CSI_IGNORE,
1598 CASE_CSI_IGNORE,
1599 /*      currency        yen             brokenbar       section         */
1600 CASE_CSI_IGNORE,
1601 CASE_CSI_IGNORE,
1602 CASE_CSI_IGNORE,
1603 CASE_CSI_IGNORE,
1604 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
1605 CASE_CSI_IGNORE,
1606 CASE_CSI_IGNORE,
1607 CASE_CSI_IGNORE,
1608 CASE_CSI_IGNORE,
1609 /*      notsign         hyphen          registered      macron          */
1610 CASE_CSI_IGNORE,
1611 CASE_CSI_IGNORE,
1612 CASE_CSI_IGNORE,
1613 CASE_CSI_IGNORE,
1614 /*      degree          plusminus       twosuperior     threesuperior   */
1615 CASE_CSI_IGNORE,
1616 CASE_CSI_IGNORE,
1617 CASE_CSI_IGNORE,
1618 CASE_CSI_IGNORE,
1619 /*      acute           mu              paragraph       periodcentered  */
1620 CASE_CSI_IGNORE,
1621 CASE_CSI_IGNORE,
1622 CASE_CSI_IGNORE,
1623 CASE_CSI_IGNORE,
1624 /*      cedilla         onesuperior     masculine       guillemotright  */
1625 CASE_CSI_IGNORE,
1626 CASE_CSI_IGNORE,
1627 CASE_CSI_IGNORE,
1628 CASE_CSI_IGNORE,
1629 /*      onequarter      onehalf         threequarters   questiondown    */
1630 CASE_CSI_IGNORE,
1631 CASE_CSI_IGNORE,
1632 CASE_CSI_IGNORE,
1633 CASE_CSI_IGNORE,
1634 /*      Agrave          Aacute          Acircumflex     Atilde          */
1635 CASE_GROUND_STATE,
1636 CASE_GROUND_STATE,
1637 CASE_GROUND_STATE,
1638 CASE_GROUND_STATE,
1639 /*      Adiaeresis      Aring           AE              Ccedilla        */
1640 CASE_GROUND_STATE,
1641 CASE_GROUND_STATE,
1642 CASE_GROUND_STATE,
1643 CASE_GROUND_STATE,
1644 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
1645 CASE_GROUND_STATE,
1646 CASE_GROUND_STATE,
1647 CASE_GROUND_STATE,
1648 CASE_GROUND_STATE,
1649 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
1650 CASE_GROUND_STATE,
1651 CASE_GROUND_STATE,
1652 CASE_GROUND_STATE,
1653 CASE_GROUND_STATE,
1654 /*      Eth             Ntilde          Ograve          Oacute          */
1655 CASE_GROUND_STATE,
1656 CASE_GROUND_STATE,
1657 CASE_GROUND_STATE,
1658 CASE_GROUND_STATE,
1659 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
1660 CASE_GROUND_STATE,
1661 CASE_GROUND_STATE,
1662 CASE_GROUND_STATE,
1663 CASE_GROUND_STATE,
1664 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
1665 CASE_GROUND_STATE,
1666 CASE_GROUND_STATE,
1667 CASE_GROUND_STATE,
1668 CASE_GROUND_STATE,
1669 /*      Udiaeresis      Yacute          Thorn           ssharp          */
1670 CASE_GROUND_STATE,
1671 CASE_GROUND_STATE,
1672 CASE_GROUND_STATE,
1673 CASE_GROUND_STATE,
1674 /*      agrave          aacute          acircumflex     atilde          */
1675 CASE_GROUND_STATE,
1676 CASE_GROUND_STATE,
1677 CASE_GROUND_STATE,
1678 CASE_GROUND_STATE,
1679 /*      adiaeresis      aring           ae              ccedilla        */
1680 CASE_GROUND_STATE,
1681 CASE_GROUND_STATE,
1682 CASE_GROUND_STATE,
1683 CASE_GROUND_STATE,
1684 /*      egrave          eacute          ecircumflex     ediaeresis      */
1685 CASE_GROUND_STATE,
1686 CASE_GROUND_STATE,
1687 CASE_GROUND_STATE,
1688 CASE_GROUND_STATE,
1689 /*      igrave          iacute          icircumflex     idiaeresis      */
1690 CASE_GROUND_STATE,
1691 CASE_GROUND_STATE,
1692 CASE_GROUND_STATE,
1693 CASE_GROUND_STATE,
1694 /*      eth             ntilde          ograve          oacute          */
1695 CASE_DECSCL,
1696 CASE_DECSCA,
1697 CASE_GROUND_STATE,
1698 CASE_GROUND_STATE,
1699 /*      ocircumflex     otilde          odiaeresis      division        */
1700 CASE_GROUND_STATE,
1701 CASE_GROUND_STATE,
1702 CASE_GROUND_STATE,
1703 CASE_GROUND_STATE,
1704 /*      oslash          ugrave          uacute          ucircumflex     */
1705 CASE_GROUND_STATE,
1706 CASE_GROUND_STATE,
1707 CASE_GROUND_STATE,
1708 CASE_GROUND_STATE,
1709 /*      udiaeresis      yacute          thorn           ydiaeresis      */
1710 CASE_GROUND_STATE,
1711 CASE_GROUND_STATE,
1712 CASE_GROUND_STATE,
1713 CASE_IGNORE,
1714 };
1715 
1716 #if OPT_BLINK_CURS
1717 Const PARSE_T csi_sp_table[] =		/* CSI ... SP */
1718 {
1719 /*	NUL		SOH		STX		ETX	*/
1720 CASE_IGNORE,
1721 CASE_IGNORE,
1722 CASE_IGNORE,
1723 CASE_IGNORE,
1724 /*	EOT		ENQ		ACK		BEL	*/
1725 CASE_IGNORE,
1726 CASE_ENQ,
1727 CASE_IGNORE,
1728 CASE_BELL,
1729 /*	BS		HT		NL		VT	*/
1730 CASE_BS,
1731 CASE_TAB,
1732 CASE_VMOT,
1733 CASE_VMOT,
1734 /*	FF		CR		SO		SI	*/
1735 CASE_VMOT,
1736 CASE_CR,
1737 CASE_SO,
1738 CASE_SI,
1739 /*	DLE		DC1		DC2		DC3	*/
1740 CASE_IGNORE,
1741 CASE_IGNORE,
1742 CASE_IGNORE,
1743 CASE_IGNORE,
1744 /*	DC4		NAK		SYN		ETB	*/
1745 CASE_IGNORE,
1746 CASE_IGNORE,
1747 CASE_IGNORE,
1748 CASE_IGNORE,
1749 /*	CAN		EM		SUB		ESC	*/
1750 CASE_GROUND_STATE,
1751 CASE_IGNORE,
1752 CASE_GROUND_STATE,
1753 CASE_ESC,
1754 /*	FS		GS		RS		US	*/
1755 CASE_IGNORE,
1756 CASE_IGNORE,
1757 CASE_IGNORE,
1758 CASE_IGNORE,
1759 /*	SP		!		"		#	*/
1760 CASE_CSI_IGNORE,
1761 CASE_CSI_IGNORE,
1762 CASE_CSI_IGNORE,
1763 CASE_CSI_IGNORE,
1764 /*	$		%		&		'	*/
1765 CASE_CSI_IGNORE,
1766 CASE_CSI_IGNORE,
1767 CASE_CSI_IGNORE,
1768 CASE_CSI_IGNORE,
1769 /*	(		)		*		+	*/
1770 CASE_CSI_IGNORE,
1771 CASE_CSI_IGNORE,
1772 CASE_CSI_IGNORE,
1773 CASE_CSI_IGNORE,
1774 /*	,		-		.		/	*/
1775 CASE_CSI_IGNORE,
1776 CASE_CSI_IGNORE,
1777 CASE_CSI_IGNORE,
1778 CASE_CSI_IGNORE,
1779 /*	0		1		2		3	*/
1780 CASE_CSI_IGNORE,
1781 CASE_CSI_IGNORE,
1782 CASE_CSI_IGNORE,
1783 CASE_CSI_IGNORE,
1784 /*	4		5		6		7	*/
1785 CASE_CSI_IGNORE,
1786 CASE_CSI_IGNORE,
1787 CASE_CSI_IGNORE,
1788 CASE_CSI_IGNORE,
1789 /*	8		9		:		;	*/
1790 CASE_CSI_IGNORE,
1791 CASE_CSI_IGNORE,
1792 CASE_CSI_IGNORE,
1793 CASE_CSI_IGNORE,
1794 /*	<		=		>		?	*/
1795 CASE_CSI_IGNORE,
1796 CASE_CSI_IGNORE,
1797 CASE_CSI_IGNORE,
1798 CASE_CSI_IGNORE,
1799 /*	@		A		B		C	*/
1800 CASE_SL,
1801 CASE_SR,
1802 CASE_GROUND_STATE,
1803 CASE_GROUND_STATE,
1804 /*	D		E		F		G	*/
1805 CASE_GROUND_STATE,
1806 CASE_GROUND_STATE,
1807 CASE_GROUND_STATE,
1808 CASE_GROUND_STATE,
1809 /*	H		I		J		K	*/
1810 CASE_GROUND_STATE,
1811 CASE_GROUND_STATE,
1812 CASE_GROUND_STATE,
1813 CASE_GROUND_STATE,
1814 /*	L		M		N		O	*/
1815 CASE_GROUND_STATE,
1816 CASE_GROUND_STATE,
1817 CASE_GROUND_STATE,
1818 CASE_GROUND_STATE,
1819 /*	P		Q		R		S	*/
1820 CASE_GROUND_STATE,
1821 CASE_GROUND_STATE,
1822 CASE_GROUND_STATE,
1823 CASE_GROUND_STATE,
1824 /*	T		U		V		W	*/
1825 CASE_GROUND_STATE,
1826 CASE_GROUND_STATE,
1827 CASE_GROUND_STATE,
1828 CASE_GROUND_STATE,
1829 /*	X		Y		Z		[	*/
1830 CASE_GROUND_STATE,
1831 CASE_GROUND_STATE,
1832 CASE_GROUND_STATE,
1833 CASE_GROUND_STATE,
1834 /*	\		]		^		_	*/
1835 CASE_GROUND_STATE,
1836 CASE_GROUND_STATE,
1837 CASE_GROUND_STATE,
1838 CASE_GROUND_STATE,
1839 /*	`		a		b		c	*/
1840 CASE_GROUND_STATE,
1841 CASE_GROUND_STATE,
1842 CASE_GROUND_STATE,
1843 CASE_GROUND_STATE,
1844 /*	d		e		f		g	*/
1845 CASE_GROUND_STATE,
1846 CASE_GROUND_STATE,
1847 CASE_GROUND_STATE,
1848 CASE_GROUND_STATE,
1849 /*	h		i		j		k	*/
1850 CASE_GROUND_STATE,
1851 CASE_GROUND_STATE,
1852 CASE_GROUND_STATE,
1853 CASE_GROUND_STATE,
1854 /*	l		m		n		o	*/
1855 CASE_GROUND_STATE,
1856 CASE_GROUND_STATE,
1857 CASE_GROUND_STATE,
1858 CASE_GROUND_STATE,
1859 /*	p		q		r		s	*/
1860 CASE_GROUND_STATE,
1861 CASE_DECSCUSR,
1862 CASE_GROUND_STATE,
1863 CASE_GROUND_STATE,
1864 /*	t		u		v		w	*/
1865 CASE_DECSWBV,
1866 CASE_DECSMBV,
1867 CASE_GROUND_STATE,
1868 CASE_GROUND_STATE,
1869 /*	x		y		z		{	*/
1870 CASE_GROUND_STATE,
1871 CASE_GROUND_STATE,
1872 CASE_GROUND_STATE,
1873 CASE_GROUND_STATE,
1874 /*	|		}		~		DEL	*/
1875 CASE_GROUND_STATE,
1876 CASE_GROUND_STATE,
1877 CASE_GROUND_STATE,
1878 CASE_IGNORE,
1879 /*      0x80            0x81            0x82            0x83    */
1880 CASE_GROUND_STATE,
1881 CASE_GROUND_STATE,
1882 CASE_GROUND_STATE,
1883 CASE_GROUND_STATE,
1884 /*      0x84            0x85            0x86            0x87    */
1885 CASE_IND,
1886 CASE_NEL,
1887 CASE_GROUND_STATE,
1888 CASE_GROUND_STATE,
1889 /*      0x88            0x89            0x8a            0x8b    */
1890 CASE_HTS,
1891 CASE_GROUND_STATE,
1892 CASE_GROUND_STATE,
1893 CASE_GROUND_STATE,
1894 /*      0x8c            0x8d            0x8e            0x8f    */
1895 CASE_GROUND_STATE,
1896 CASE_RI,
1897 CASE_SS2,
1898 CASE_SS3,
1899 /*      0x90            0x91            0x92            0x93    */
1900 CASE_DCS,
1901 CASE_GROUND_STATE,
1902 CASE_GROUND_STATE,
1903 CASE_GROUND_STATE,
1904 /*      0x94            0x95            0x96            0x97    */
1905 CASE_GROUND_STATE,
1906 CASE_GROUND_STATE,
1907 CASE_SPA,
1908 CASE_EPA,
1909 /*      0x98            0x99            0x9a            0x9b    */
1910 CASE_SOS,
1911 CASE_GROUND_STATE,
1912 CASE_DECID,
1913 CASE_CSI_STATE,
1914 /*      0x9c            0x9d            0x9e            0x9f    */
1915 CASE_ST,
1916 CASE_OSC,
1917 CASE_PM,
1918 CASE_APC,
1919 /*      nobreakspace    exclamdown      cent            sterling        */
1920 CASE_CSI_IGNORE,
1921 CASE_CSI_IGNORE,
1922 CASE_CSI_IGNORE,
1923 CASE_CSI_IGNORE,
1924 /*      currency        yen             brokenbar       section         */
1925 CASE_CSI_IGNORE,
1926 CASE_CSI_IGNORE,
1927 CASE_CSI_IGNORE,
1928 CASE_CSI_IGNORE,
1929 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
1930 CASE_CSI_IGNORE,
1931 CASE_CSI_IGNORE,
1932 CASE_CSI_IGNORE,
1933 CASE_CSI_IGNORE,
1934 /*      notsign         hyphen          registered      macron          */
1935 CASE_CSI_IGNORE,
1936 CASE_CSI_IGNORE,
1937 CASE_CSI_IGNORE,
1938 CASE_CSI_IGNORE,
1939 /*      degree          plusminus       twosuperior     threesuperior   */
1940 CASE_CSI_IGNORE,
1941 CASE_CSI_IGNORE,
1942 CASE_CSI_IGNORE,
1943 CASE_CSI_IGNORE,
1944 /*      acute           mu              paragraph       periodcentered  */
1945 CASE_CSI_IGNORE,
1946 CASE_CSI_IGNORE,
1947 CASE_CSI_IGNORE,
1948 CASE_CSI_IGNORE,
1949 /*      cedilla         onesuperior     masculine       guillemotright  */
1950 CASE_CSI_IGNORE,
1951 CASE_CSI_IGNORE,
1952 CASE_CSI_IGNORE,
1953 CASE_CSI_IGNORE,
1954 /*      onequarter      onehalf         threequarters   questiondown    */
1955 CASE_CSI_IGNORE,
1956 CASE_CSI_IGNORE,
1957 CASE_CSI_IGNORE,
1958 CASE_CSI_IGNORE,
1959 /*      Agrave          Aacute          Acircumflex     Atilde          */
1960 CASE_SL,
1961 CASE_SR,
1962 CASE_GROUND_STATE,
1963 CASE_GROUND_STATE,
1964 /*      Adiaeresis      Aring           AE              Ccedilla        */
1965 CASE_GROUND_STATE,
1966 CASE_GROUND_STATE,
1967 CASE_GROUND_STATE,
1968 CASE_GROUND_STATE,
1969 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
1970 CASE_GROUND_STATE,
1971 CASE_GROUND_STATE,
1972 CASE_GROUND_STATE,
1973 CASE_GROUND_STATE,
1974 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
1975 CASE_GROUND_STATE,
1976 CASE_GROUND_STATE,
1977 CASE_GROUND_STATE,
1978 CASE_GROUND_STATE,
1979 /*      Eth             Ntilde          Ograve          Oacute          */
1980 CASE_GROUND_STATE,
1981 CASE_GROUND_STATE,
1982 CASE_GROUND_STATE,
1983 CASE_GROUND_STATE,
1984 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
1985 CASE_GROUND_STATE,
1986 CASE_GROUND_STATE,
1987 CASE_GROUND_STATE,
1988 CASE_GROUND_STATE,
1989 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
1990 CASE_GROUND_STATE,
1991 CASE_GROUND_STATE,
1992 CASE_GROUND_STATE,
1993 CASE_GROUND_STATE,
1994 /*      Udiaeresis      Yacute          Thorn           ssharp          */
1995 CASE_GROUND_STATE,
1996 CASE_GROUND_STATE,
1997 CASE_GROUND_STATE,
1998 CASE_GROUND_STATE,
1999 /*      agrave          aacute          acircumflex     atilde          */
2000 CASE_GROUND_STATE,
2001 CASE_GROUND_STATE,
2002 CASE_GROUND_STATE,
2003 CASE_GROUND_STATE,
2004 /*      adiaeresis      aring           ae              ccedilla        */
2005 CASE_GROUND_STATE,
2006 CASE_GROUND_STATE,
2007 CASE_GROUND_STATE,
2008 CASE_GROUND_STATE,
2009 /*      egrave          eacute          ecircumflex     ediaeresis      */
2010 CASE_GROUND_STATE,
2011 CASE_GROUND_STATE,
2012 CASE_GROUND_STATE,
2013 CASE_GROUND_STATE,
2014 /*      igrave          iacute          icircumflex     idiaeresis      */
2015 CASE_GROUND_STATE,
2016 CASE_GROUND_STATE,
2017 CASE_GROUND_STATE,
2018 CASE_GROUND_STATE,
2019 /*      eth             ntilde          ograve          oacute          */
2020 CASE_GROUND_STATE,
2021 CASE_DECSCUSR,
2022 CASE_GROUND_STATE,
2023 CASE_GROUND_STATE,
2024 /*      ocircumflex     otilde          odiaeresis      division        */
2025 CASE_DECSWBV,
2026 CASE_DECSMBV,
2027 CASE_GROUND_STATE,
2028 CASE_GROUND_STATE,
2029 /*      oslash          ugrave          uacute          ucircumflex     */
2030 CASE_GROUND_STATE,
2031 CASE_GROUND_STATE,
2032 CASE_GROUND_STATE,
2033 CASE_GROUND_STATE,
2034 /*      udiaeresis      yacute          thorn           ydiaeresis      */
2035 CASE_GROUND_STATE,
2036 CASE_GROUND_STATE,
2037 CASE_GROUND_STATE,
2038 CASE_IGNORE,
2039 };
2040 #endif
2041 
2042 Const PARSE_T csi_tick_table[] =	/* CSI ... ' */
2043 {
2044 /*	NUL		SOH		STX		ETX	*/
2045 CASE_IGNORE,
2046 CASE_IGNORE,
2047 CASE_IGNORE,
2048 CASE_IGNORE,
2049 /*	EOT		ENQ		ACK		BEL	*/
2050 CASE_IGNORE,
2051 CASE_ENQ,
2052 CASE_IGNORE,
2053 CASE_BELL,
2054 /*	BS		HT		NL		VT	*/
2055 CASE_BS,
2056 CASE_TAB,
2057 CASE_VMOT,
2058 CASE_VMOT,
2059 /*	FF		CR		SO		SI	*/
2060 CASE_VMOT,
2061 CASE_CR,
2062 CASE_SO,
2063 CASE_SI,
2064 /*	DLE		DC1		DC2		DC3	*/
2065 CASE_IGNORE,
2066 CASE_IGNORE,
2067 CASE_IGNORE,
2068 CASE_IGNORE,
2069 /*	DC4		NAK		SYN		ETB	*/
2070 CASE_IGNORE,
2071 CASE_IGNORE,
2072 CASE_IGNORE,
2073 CASE_IGNORE,
2074 /*	CAN		EM		SUB		ESC	*/
2075 CASE_GROUND_STATE,
2076 CASE_IGNORE,
2077 CASE_GROUND_STATE,
2078 CASE_ESC,
2079 /*	FS		GS		RS		US	*/
2080 CASE_IGNORE,
2081 CASE_IGNORE,
2082 CASE_IGNORE,
2083 CASE_IGNORE,
2084 /*	SP		!		"		#	*/
2085 CASE_CSI_IGNORE,
2086 CASE_CSI_IGNORE,
2087 CASE_CSI_IGNORE,
2088 CASE_CSI_IGNORE,
2089 /*	$		%		&		'	*/
2090 CASE_CSI_IGNORE,
2091 CASE_CSI_IGNORE,
2092 CASE_CSI_IGNORE,
2093 CASE_CSI_IGNORE,
2094 /*	(		)		*		+	*/
2095 CASE_CSI_IGNORE,
2096 CASE_CSI_IGNORE,
2097 CASE_CSI_IGNORE,
2098 CASE_CSI_IGNORE,
2099 /*	,		-		.		/	*/
2100 CASE_CSI_IGNORE,
2101 CASE_CSI_IGNORE,
2102 CASE_CSI_IGNORE,
2103 CASE_CSI_IGNORE,
2104 /*	0		1		2		3	*/
2105 CASE_CSI_IGNORE,
2106 CASE_CSI_IGNORE,
2107 CASE_CSI_IGNORE,
2108 CASE_CSI_IGNORE,
2109 /*	4		5		6		7	*/
2110 CASE_CSI_IGNORE,
2111 CASE_CSI_IGNORE,
2112 CASE_CSI_IGNORE,
2113 CASE_CSI_IGNORE,
2114 /*	8		9		:		;	*/
2115 CASE_CSI_IGNORE,
2116 CASE_CSI_IGNORE,
2117 CASE_CSI_IGNORE,
2118 CASE_CSI_IGNORE,
2119 /*	<		=		>		?	*/
2120 CASE_CSI_IGNORE,
2121 CASE_CSI_IGNORE,
2122 CASE_CSI_IGNORE,
2123 CASE_CSI_IGNORE,
2124 /*	@		A		B		C	*/
2125 CASE_GROUND_STATE,
2126 CASE_GROUND_STATE,
2127 CASE_GROUND_STATE,
2128 CASE_GROUND_STATE,
2129 /*	D		E		F		G	*/
2130 CASE_GROUND_STATE,
2131 CASE_GROUND_STATE,
2132 CASE_GROUND_STATE,
2133 CASE_GROUND_STATE,
2134 /*	H		I		J		K	*/
2135 CASE_GROUND_STATE,
2136 CASE_GROUND_STATE,
2137 CASE_GROUND_STATE,
2138 CASE_GROUND_STATE,
2139 /*	L		M		N		O	*/
2140 CASE_GROUND_STATE,
2141 CASE_GROUND_STATE,
2142 CASE_GROUND_STATE,
2143 CASE_GROUND_STATE,
2144 /*	P		Q		R		S	*/
2145 CASE_GROUND_STATE,
2146 CASE_GROUND_STATE,
2147 CASE_GROUND_STATE,
2148 CASE_GROUND_STATE,
2149 /*	T		U		V		W	*/
2150 CASE_GROUND_STATE,
2151 CASE_GROUND_STATE,
2152 CASE_GROUND_STATE,
2153 CASE_GROUND_STATE,
2154 /*	X		Y		Z		[	*/
2155 CASE_GROUND_STATE,
2156 CASE_GROUND_STATE,
2157 CASE_GROUND_STATE,
2158 CASE_GROUND_STATE,
2159 /*	\		]		^		_	*/
2160 CASE_GROUND_STATE,
2161 CASE_GROUND_STATE,
2162 CASE_GROUND_STATE,
2163 CASE_GROUND_STATE,
2164 /*	`		a		b		c	*/
2165 CASE_GROUND_STATE,
2166 CASE_GROUND_STATE,
2167 CASE_GROUND_STATE,
2168 CASE_GROUND_STATE,
2169 /*	d		e		f		g	*/
2170 CASE_GROUND_STATE,
2171 CASE_GROUND_STATE,
2172 CASE_GROUND_STATE,
2173 CASE_GROUND_STATE,
2174 /*	h		i		j		k	*/
2175 CASE_GROUND_STATE,
2176 CASE_GROUND_STATE,
2177 CASE_GROUND_STATE,
2178 CASE_GROUND_STATE,
2179 /*	l		m		n		o	*/
2180 CASE_GROUND_STATE,
2181 CASE_GROUND_STATE,
2182 CASE_GROUND_STATE,
2183 CASE_GROUND_STATE,
2184 /*	p		q		r		s	*/
2185 CASE_GROUND_STATE,
2186 CASE_GROUND_STATE,
2187 CASE_GROUND_STATE,
2188 CASE_GROUND_STATE,
2189 /*	t		u		v		w	*/
2190 CASE_GROUND_STATE,
2191 CASE_GROUND_STATE,
2192 CASE_GROUND_STATE,
2193 CASE_DECEFR,
2194 /*	x		y		z		{	*/
2195 CASE_GROUND_STATE,
2196 CASE_GROUND_STATE,
2197 CASE_DECELR,
2198 CASE_DECSLE,
2199 /*	|		}		~		DEL	*/
2200 CASE_DECRQLP,
2201 CASE_DECIC,
2202 CASE_DECDC,
2203 CASE_IGNORE,
2204 /*      0x80            0x81            0x82            0x83    */
2205 CASE_GROUND_STATE,
2206 CASE_GROUND_STATE,
2207 CASE_GROUND_STATE,
2208 CASE_GROUND_STATE,
2209 /*      0x84            0x85            0x86            0x87    */
2210 CASE_IND,
2211 CASE_NEL,
2212 CASE_GROUND_STATE,
2213 CASE_GROUND_STATE,
2214 /*      0x88            0x89            0x8a            0x8b    */
2215 CASE_HTS,
2216 CASE_GROUND_STATE,
2217 CASE_GROUND_STATE,
2218 CASE_GROUND_STATE,
2219 /*      0x8c            0x8d            0x8e            0x8f    */
2220 CASE_GROUND_STATE,
2221 CASE_RI,
2222 CASE_SS2,
2223 CASE_SS3,
2224 /*      0x90            0x91            0x92            0x93    */
2225 CASE_DCS,
2226 CASE_GROUND_STATE,
2227 CASE_GROUND_STATE,
2228 CASE_GROUND_STATE,
2229 /*      0x94            0x95            0x96            0x97    */
2230 CASE_GROUND_STATE,
2231 CASE_GROUND_STATE,
2232 CASE_SPA,
2233 CASE_EPA,
2234 /*      0x98            0x99            0x9a            0x9b    */
2235 CASE_SOS,
2236 CASE_GROUND_STATE,
2237 CASE_DECID,
2238 CASE_CSI_STATE,
2239 /*      0x9c            0x9d            0x9e            0x9f    */
2240 CASE_ST,
2241 CASE_OSC,
2242 CASE_PM,
2243 CASE_APC,
2244 /*	nobreakspace	exclamdown	cent		sterling	*/
2245 CASE_CSI_IGNORE,
2246 CASE_CSI_IGNORE,
2247 CASE_CSI_IGNORE,
2248 CASE_CSI_IGNORE,
2249 /*	currency	yen		brokenbar	section		*/
2250 CASE_CSI_IGNORE,
2251 CASE_CSI_IGNORE,
2252 CASE_CSI_IGNORE,
2253 CASE_CSI_IGNORE,
2254 /*	diaeresis	copyright	ordfeminine	guillemotleft	*/
2255 CASE_CSI_IGNORE,
2256 CASE_CSI_IGNORE,
2257 CASE_CSI_IGNORE,
2258 CASE_CSI_IGNORE,
2259 /*	notsign		hyphen		registered	macron		*/
2260 CASE_CSI_IGNORE,
2261 CASE_CSI_IGNORE,
2262 CASE_CSI_IGNORE,
2263 CASE_CSI_IGNORE,
2264 /*	degree		plusminus	twosuperior	threesuperior	*/
2265 CASE_CSI_IGNORE,
2266 CASE_CSI_IGNORE,
2267 CASE_CSI_IGNORE,
2268 CASE_CSI_IGNORE,
2269 /*	acute		mu		paragraph	periodcentered	*/
2270 CASE_CSI_IGNORE,
2271 CASE_CSI_IGNORE,
2272 CASE_CSI_IGNORE,
2273 CASE_CSI_IGNORE,
2274 /*	cedilla		onesuperior	masculine	guillemotright	*/
2275 CASE_CSI_IGNORE,
2276 CASE_CSI_IGNORE,
2277 CASE_CSI_IGNORE,
2278 CASE_CSI_IGNORE,
2279 /*	onequarter	onehalf		threequarters	questiondown	*/
2280 CASE_CSI_IGNORE,
2281 CASE_CSI_IGNORE,
2282 CASE_CSI_IGNORE,
2283 CASE_CSI_IGNORE,
2284 /*	Agrave		Aacute		Acircumflex	Atilde		*/
2285 CASE_GROUND_STATE,
2286 CASE_GROUND_STATE,
2287 CASE_GROUND_STATE,
2288 CASE_GROUND_STATE,
2289 /*	Adiaeresis	Aring		AE		Ccedilla	*/
2290 CASE_GROUND_STATE,
2291 CASE_GROUND_STATE,
2292 CASE_GROUND_STATE,
2293 CASE_GROUND_STATE,
2294 /*	Egrave		Eacute		Ecircumflex	Ediaeresis	*/
2295 CASE_GROUND_STATE,
2296 CASE_GROUND_STATE,
2297 CASE_GROUND_STATE,
2298 CASE_GROUND_STATE,
2299 /*	Igrave		Iacute		Icircumflex	Idiaeresis	*/
2300 CASE_GROUND_STATE,
2301 CASE_GROUND_STATE,
2302 CASE_GROUND_STATE,
2303 CASE_GROUND_STATE,
2304 /*	Eth		Ntilde		Ograve		Oacute		*/
2305 CASE_GROUND_STATE,
2306 CASE_GROUND_STATE,
2307 CASE_GROUND_STATE,
2308 CASE_GROUND_STATE,
2309 /*	Ocircumflex	Otilde		Odiaeresis	multiply	*/
2310 CASE_GROUND_STATE,
2311 CASE_GROUND_STATE,
2312 CASE_GROUND_STATE,
2313 CASE_GROUND_STATE,
2314 /*	Ooblique	Ugrave		Uacute		Ucircumflex	*/
2315 CASE_GROUND_STATE,
2316 CASE_GROUND_STATE,
2317 CASE_GROUND_STATE,
2318 CASE_GROUND_STATE,
2319 /*	Udiaeresis	Yacute		Thorn		ssharp		*/
2320 CASE_GROUND_STATE,
2321 CASE_GROUND_STATE,
2322 CASE_GROUND_STATE,
2323 CASE_GROUND_STATE,
2324 /*	agrave		aacute		acircumflex	atilde		*/
2325 CASE_GROUND_STATE,
2326 CASE_GROUND_STATE,
2327 CASE_GROUND_STATE,
2328 CASE_GROUND_STATE,
2329 /*	adiaeresis	aring		ae		ccedilla	*/
2330 CASE_GROUND_STATE,
2331 CASE_GROUND_STATE,
2332 CASE_GROUND_STATE,
2333 CASE_GROUND_STATE,
2334 /*	egrave		eacute		ecircumflex	ediaeresis	*/
2335 CASE_GROUND_STATE,
2336 CASE_GROUND_STATE,
2337 CASE_GROUND_STATE,
2338 CASE_GROUND_STATE,
2339 /*	igrave		iacute		icircumflex	idiaeresis	*/
2340 CASE_GROUND_STATE,
2341 CASE_GROUND_STATE,
2342 CASE_GROUND_STATE,
2343 CASE_GROUND_STATE,
2344 /*	eth		ntilde		ograve		oacute		*/
2345 CASE_GROUND_STATE,
2346 CASE_GROUND_STATE,
2347 CASE_GROUND_STATE,
2348 CASE_GROUND_STATE,
2349 /*	ocircumflex	otilde		odiaeresis	division	*/
2350 CASE_GROUND_STATE,
2351 CASE_GROUND_STATE,
2352 CASE_GROUND_STATE,
2353 CASE_DECEFR,
2354 /*	oslash		ugrave		uacute		ucircumflex	*/
2355 CASE_GROUND_STATE,
2356 CASE_GROUND_STATE,
2357 CASE_DECELR,
2358 CASE_DECSLE,
2359 /*	udiaeresis	yacute		thorn		ydiaeresis	*/
2360 CASE_DECRQLP,
2361 CASE_DECIC,
2362 CASE_DECDC,
2363 CASE_IGNORE,
2364 };
2365 
2366 #if OPT_XTERM_SGR
2367 Const PARSE_T csi_hash_table[] =	/* CSI ... # */
2368 {
2369 /*	NUL		SOH		STX		ETX	*/
2370 CASE_IGNORE,
2371 CASE_IGNORE,
2372 CASE_IGNORE,
2373 CASE_IGNORE,
2374 /*	EOT		ENQ		ACK		BEL	*/
2375 CASE_IGNORE,
2376 CASE_ENQ,
2377 CASE_IGNORE,
2378 CASE_BELL,
2379 /*	BS		HT		NL		VT	*/
2380 CASE_BS,
2381 CASE_TAB,
2382 CASE_VMOT,
2383 CASE_VMOT,
2384 /*	FF		CR		SO		SI	*/
2385 CASE_VMOT,
2386 CASE_CR,
2387 CASE_SO,
2388 CASE_SI,
2389 /*	DLE		DC1		DC2		DC3	*/
2390 CASE_IGNORE,
2391 CASE_IGNORE,
2392 CASE_IGNORE,
2393 CASE_IGNORE,
2394 /*	DC4		NAK		SYN		ETB	*/
2395 CASE_IGNORE,
2396 CASE_IGNORE,
2397 CASE_IGNORE,
2398 CASE_IGNORE,
2399 /*	CAN		EM		SUB		ESC	*/
2400 CASE_GROUND_STATE,
2401 CASE_IGNORE,
2402 CASE_GROUND_STATE,
2403 CASE_ESC,
2404 /*	FS		GS		RS		US	*/
2405 CASE_IGNORE,
2406 CASE_IGNORE,
2407 CASE_IGNORE,
2408 CASE_IGNORE,
2409 /*	SP		!		"		#	*/
2410 CASE_CSI_IGNORE,
2411 CASE_CSI_IGNORE,
2412 CASE_CSI_IGNORE,
2413 CASE_CSI_IGNORE,
2414 /*	$		%		&		'	*/
2415 CASE_CSI_IGNORE,
2416 CASE_CSI_IGNORE,
2417 CASE_CSI_IGNORE,
2418 CASE_CSI_IGNORE,
2419 /*	(		)		*		+	*/
2420 CASE_CSI_IGNORE,
2421 CASE_CSI_IGNORE,
2422 CASE_CSI_IGNORE,
2423 CASE_CSI_IGNORE,
2424 /*	,		-		.		/	*/
2425 CASE_CSI_IGNORE,
2426 CASE_CSI_IGNORE,
2427 CASE_CSI_IGNORE,
2428 CASE_CSI_IGNORE,
2429 /*	0		1		2		3	*/
2430 CASE_ESC_DIGIT,
2431 CASE_ESC_DIGIT,
2432 CASE_ESC_DIGIT,
2433 CASE_ESC_DIGIT,
2434 /*	4		5		6		7	*/
2435 CASE_ESC_DIGIT,
2436 CASE_ESC_DIGIT,
2437 CASE_ESC_DIGIT,
2438 CASE_ESC_DIGIT,
2439 /*	8		9		:		;	*/
2440 CASE_ESC_DIGIT,
2441 CASE_ESC_DIGIT,
2442 CASE_ESC_DIGIT,
2443 CASE_ESC_DIGIT,
2444 /*	<		=		>		?	*/
2445 CASE_CSI_IGNORE,
2446 CASE_CSI_IGNORE,
2447 CASE_CSI_IGNORE,
2448 CASE_CSI_IGNORE,
2449 /*	@		A		B		C	*/
2450 CASE_GROUND_STATE,
2451 CASE_GROUND_STATE,
2452 CASE_GROUND_STATE,
2453 CASE_GROUND_STATE,
2454 /*	D		E		F		G	*/
2455 CASE_GROUND_STATE,
2456 CASE_GROUND_STATE,
2457 CASE_GROUND_STATE,
2458 CASE_GROUND_STATE,
2459 /*	H		I		J		K	*/
2460 CASE_GROUND_STATE,
2461 CASE_GROUND_STATE,
2462 CASE_GROUND_STATE,
2463 CASE_GROUND_STATE,
2464 /*	L		M		N		O	*/
2465 CASE_GROUND_STATE,
2466 CASE_GROUND_STATE,
2467 CASE_GROUND_STATE,
2468 CASE_GROUND_STATE,
2469 /*	P		Q		R		S	*/
2470 CASE_XTERM_PUSH_COLORS,
2471 CASE_XTERM_POP_COLORS,
2472 CASE_XTERM_REPORT_COLORS,
2473 CASE_GROUND_STATE,
2474 /*	T		U		V		W	*/
2475 CASE_GROUND_STATE,
2476 CASE_GROUND_STATE,
2477 CASE_GROUND_STATE,
2478 CASE_GROUND_STATE,
2479 /*	X		Y		Z		[	*/
2480 CASE_GROUND_STATE,
2481 CASE_GROUND_STATE,
2482 CASE_GROUND_STATE,
2483 CASE_GROUND_STATE,
2484 /*	\		]		^		_	*/
2485 CASE_GROUND_STATE,
2486 CASE_GROUND_STATE,
2487 CASE_GROUND_STATE,
2488 CASE_GROUND_STATE,
2489 /*	`		a		b		c	*/
2490 CASE_GROUND_STATE,
2491 CASE_GROUND_STATE,
2492 CASE_GROUND_STATE,
2493 CASE_GROUND_STATE,
2494 /*	d		e		f		g	*/
2495 CASE_GROUND_STATE,
2496 CASE_GROUND_STATE,
2497 CASE_GROUND_STATE,
2498 CASE_GROUND_STATE,
2499 /*	h		i		j		k	*/
2500 CASE_GROUND_STATE,
2501 CASE_GROUND_STATE,
2502 CASE_GROUND_STATE,
2503 CASE_GROUND_STATE,
2504 /*	l		m		n		o	*/
2505 CASE_GROUND_STATE,
2506 CASE_GROUND_STATE,
2507 CASE_GROUND_STATE,
2508 CASE_GROUND_STATE,
2509 /*	p		q		r		s	*/
2510 CASE_XTERM_PUSH_SGR,
2511 CASE_XTERM_POP_SGR,
2512 CASE_GROUND_STATE,
2513 CASE_GROUND_STATE,
2514 /*	t		u		v		w	*/
2515 CASE_GROUND_STATE,
2516 CASE_GROUND_STATE,
2517 CASE_GROUND_STATE,
2518 CASE_GROUND_STATE,
2519 /*	x		y		z		{	*/
2520 CASE_GROUND_STATE,
2521 CASE_XTERM_CHECKSUM,
2522 CASE_GROUND_STATE,
2523 CASE_XTERM_PUSH_SGR,
2524 /*	|		}		~		DEL	*/
2525 CASE_XTERM_REPORT_SGR,
2526 CASE_XTERM_POP_SGR,
2527 CASE_GROUND_STATE,
2528 CASE_IGNORE,
2529 /*      0x80            0x81            0x82            0x83    */
2530 CASE_GROUND_STATE,
2531 CASE_GROUND_STATE,
2532 CASE_GROUND_STATE,
2533 CASE_GROUND_STATE,
2534 /*      0x84            0x85            0x86            0x87    */
2535 CASE_IND,
2536 CASE_NEL,
2537 CASE_GROUND_STATE,
2538 CASE_GROUND_STATE,
2539 /*      0x88            0x89            0x8a            0x8b    */
2540 CASE_HTS,
2541 CASE_GROUND_STATE,
2542 CASE_GROUND_STATE,
2543 CASE_GROUND_STATE,
2544 /*      0x8c            0x8d            0x8e            0x8f    */
2545 CASE_GROUND_STATE,
2546 CASE_RI,
2547 CASE_SS2,
2548 CASE_SS3,
2549 /*      0x90            0x91            0x92            0x93    */
2550 CASE_DCS,
2551 CASE_GROUND_STATE,
2552 CASE_GROUND_STATE,
2553 CASE_GROUND_STATE,
2554 /*      0x94            0x95            0x96            0x97    */
2555 CASE_GROUND_STATE,
2556 CASE_GROUND_STATE,
2557 CASE_SPA,
2558 CASE_EPA,
2559 /*      0x98            0x99            0x9a            0x9b    */
2560 CASE_SOS,
2561 CASE_GROUND_STATE,
2562 CASE_DECID,
2563 CASE_CSI_STATE,
2564 /*      0x9c            0x9d            0x9e            0x9f    */
2565 CASE_ST,
2566 CASE_OSC,
2567 CASE_PM,
2568 CASE_APC,
2569 /*	nobreakspace	exclamdown	cent		sterling	*/
2570 CASE_CSI_IGNORE,
2571 CASE_CSI_IGNORE,
2572 CASE_CSI_IGNORE,
2573 CASE_CSI_IGNORE,
2574 /*	currency	yen		brokenbar	section		*/
2575 CASE_CSI_IGNORE,
2576 CASE_CSI_IGNORE,
2577 CASE_CSI_IGNORE,
2578 CASE_CSI_IGNORE,
2579 /*	diaeresis	copyright	ordfeminine	guillemotleft	*/
2580 CASE_CSI_IGNORE,
2581 CASE_CSI_IGNORE,
2582 CASE_CSI_IGNORE,
2583 CASE_CSI_IGNORE,
2584 /*	notsign		hyphen		registered	macron		*/
2585 CASE_CSI_IGNORE,
2586 CASE_CSI_IGNORE,
2587 CASE_CSI_IGNORE,
2588 CASE_CSI_IGNORE,
2589 /*	degree		plusminus	twosuperior	threesuperior	*/
2590 CASE_ESC_DIGIT,
2591 CASE_ESC_DIGIT,
2592 CASE_ESC_DIGIT,
2593 CASE_ESC_DIGIT,
2594 /*	acute		mu		paragraph	periodcentered	*/
2595 CASE_ESC_DIGIT,
2596 CASE_ESC_DIGIT,
2597 CASE_ESC_DIGIT,
2598 CASE_ESC_DIGIT,
2599 /*	cedilla		onesuperior	masculine	guillemotright	*/
2600 CASE_ESC_DIGIT,
2601 CASE_ESC_DIGIT,
2602 CASE_ESC_DIGIT,
2603 CASE_ESC_DIGIT,
2604 /*	onequarter	onehalf		threequarters	questiondown	*/
2605 CASE_CSI_IGNORE,
2606 CASE_CSI_IGNORE,
2607 CASE_CSI_IGNORE,
2608 CASE_CSI_IGNORE,
2609 /*	Agrave		Aacute		Acircumflex	Atilde		*/
2610 CASE_GROUND_STATE,
2611 CASE_GROUND_STATE,
2612 CASE_GROUND_STATE,
2613 CASE_GROUND_STATE,
2614 /*	Adiaeresis	Aring		AE		Ccedilla	*/
2615 CASE_GROUND_STATE,
2616 CASE_GROUND_STATE,
2617 CASE_GROUND_STATE,
2618 CASE_GROUND_STATE,
2619 /*	Egrave		Eacute		Ecircumflex	Ediaeresis	*/
2620 CASE_GROUND_STATE,
2621 CASE_GROUND_STATE,
2622 CASE_GROUND_STATE,
2623 CASE_GROUND_STATE,
2624 /*	Igrave		Iacute		Icircumflex	Idiaeresis	*/
2625 CASE_GROUND_STATE,
2626 CASE_GROUND_STATE,
2627 CASE_GROUND_STATE,
2628 CASE_GROUND_STATE,
2629 /*	Eth		Ntilde		Ograve		Oacute		*/
2630 CASE_XTERM_PUSH_COLORS,
2631 CASE_XTERM_POP_COLORS,
2632 CASE_XTERM_REPORT_COLORS,
2633 CASE_GROUND_STATE,
2634 /*	Ocircumflex	Otilde		Odiaeresis	multiply	*/
2635 CASE_GROUND_STATE,
2636 CASE_GROUND_STATE,
2637 CASE_GROUND_STATE,
2638 CASE_GROUND_STATE,
2639 /*	Ooblique	Ugrave		Uacute		Ucircumflex	*/
2640 CASE_GROUND_STATE,
2641 CASE_GROUND_STATE,
2642 CASE_GROUND_STATE,
2643 CASE_GROUND_STATE,
2644 /*	Udiaeresis	Yacute		Thorn		ssharp		*/
2645 CASE_GROUND_STATE,
2646 CASE_GROUND_STATE,
2647 CASE_GROUND_STATE,
2648 CASE_GROUND_STATE,
2649 /*	agrave		aacute		acircumflex	atilde		*/
2650 CASE_GROUND_STATE,
2651 CASE_GROUND_STATE,
2652 CASE_GROUND_STATE,
2653 CASE_GROUND_STATE,
2654 /*	adiaeresis	aring		ae		ccedilla	*/
2655 CASE_GROUND_STATE,
2656 CASE_GROUND_STATE,
2657 CASE_GROUND_STATE,
2658 CASE_GROUND_STATE,
2659 /*	egrave		eacute		ecircumflex	ediaeresis	*/
2660 CASE_GROUND_STATE,
2661 CASE_GROUND_STATE,
2662 CASE_GROUND_STATE,
2663 CASE_GROUND_STATE,
2664 /*	igrave		iacute		icircumflex	idiaeresis	*/
2665 CASE_GROUND_STATE,
2666 CASE_GROUND_STATE,
2667 CASE_GROUND_STATE,
2668 CASE_GROUND_STATE,
2669 /*	eth		ntilde		ograve		oacute		*/
2670 CASE_XTERM_PUSH_SGR,
2671 CASE_XTERM_POP_SGR,
2672 CASE_GROUND_STATE,
2673 CASE_GROUND_STATE,
2674 /*	ocircumflex	otilde		odiaeresis	division	*/
2675 CASE_GROUND_STATE,
2676 CASE_GROUND_STATE,
2677 CASE_GROUND_STATE,
2678 CASE_GROUND_STATE,
2679 /*	oslash		ugrave		uacute		ucircumflex	*/
2680 CASE_GROUND_STATE,
2681 CASE_XTERM_CHECKSUM,
2682 CASE_GROUND_STATE,
2683 CASE_XTERM_PUSH_SGR,
2684 /*	udiaeresis	yacute		thorn		ydiaeresis	*/
2685 CASE_XTERM_REPORT_SGR,
2686 CASE_XTERM_POP_SGR,
2687 CASE_GROUND_STATE,
2688 CASE_GROUND_STATE,
2689 };
2690 #endif
2691 
2692 #if OPT_DEC_RECTOPS
2693 Const PARSE_T csi_dollar_table[] =	/* CSI ... $ */
2694 {
2695 /*	NUL		SOH		STX		ETX	*/
2696 CASE_IGNORE,
2697 CASE_IGNORE,
2698 CASE_IGNORE,
2699 CASE_IGNORE,
2700 /*	EOT		ENQ		ACK		BEL	*/
2701 CASE_IGNORE,
2702 CASE_ENQ,
2703 CASE_IGNORE,
2704 CASE_BELL,
2705 /*	BS		HT		NL		VT	*/
2706 CASE_BS,
2707 CASE_TAB,
2708 CASE_VMOT,
2709 CASE_VMOT,
2710 /*	FF		CR		SO		SI	*/
2711 CASE_VMOT,
2712 CASE_CR,
2713 CASE_SO,
2714 CASE_SI,
2715 /*	DLE		DC1		DC2		DC3	*/
2716 CASE_IGNORE,
2717 CASE_IGNORE,
2718 CASE_IGNORE,
2719 CASE_IGNORE,
2720 /*	DC4		NAK		SYN		ETB	*/
2721 CASE_IGNORE,
2722 CASE_IGNORE,
2723 CASE_IGNORE,
2724 CASE_IGNORE,
2725 /*	CAN		EM		SUB		ESC	*/
2726 CASE_GROUND_STATE,
2727 CASE_IGNORE,
2728 CASE_GROUND_STATE,
2729 CASE_ESC,
2730 /*	FS		GS		RS		US	*/
2731 CASE_IGNORE,
2732 CASE_IGNORE,
2733 CASE_IGNORE,
2734 CASE_IGNORE,
2735 /*	SP		!		"		#	*/
2736 CASE_CSI_IGNORE,
2737 CASE_CSI_IGNORE,
2738 CASE_CSI_IGNORE,
2739 CASE_CSI_IGNORE,
2740 /*	$		%		&		'	*/
2741 CASE_CSI_IGNORE,
2742 CASE_CSI_IGNORE,
2743 CASE_CSI_IGNORE,
2744 CASE_CSI_IGNORE,
2745 /*	(		)		*		+	*/
2746 CASE_CSI_IGNORE,
2747 CASE_CSI_IGNORE,
2748 CASE_CSI_IGNORE,
2749 CASE_CSI_IGNORE,
2750 /*	,		-		.		/	*/
2751 CASE_CSI_IGNORE,
2752 CASE_CSI_IGNORE,
2753 CASE_CSI_IGNORE,
2754 CASE_CSI_IGNORE,
2755 /*	0		1		2		3	*/
2756 CASE_CSI_IGNORE,
2757 CASE_CSI_IGNORE,
2758 CASE_CSI_IGNORE,
2759 CASE_CSI_IGNORE,
2760 /*	4		5		6		7	*/
2761 CASE_CSI_IGNORE,
2762 CASE_CSI_IGNORE,
2763 CASE_CSI_IGNORE,
2764 CASE_CSI_IGNORE,
2765 /*	8		9		:		;	*/
2766 CASE_CSI_IGNORE,
2767 CASE_CSI_IGNORE,
2768 CASE_CSI_IGNORE,
2769 CASE_CSI_IGNORE,
2770 /*	<		=		>		?	*/
2771 CASE_CSI_IGNORE,
2772 CASE_CSI_IGNORE,
2773 CASE_CSI_IGNORE,
2774 CASE_CSI_IGNORE,
2775 /*	@		A		B		C	*/
2776 CASE_GROUND_STATE,
2777 CASE_GROUND_STATE,
2778 CASE_GROUND_STATE,
2779 CASE_GROUND_STATE,
2780 /*	D		E		F		G	*/
2781 CASE_GROUND_STATE,
2782 CASE_GROUND_STATE,
2783 CASE_GROUND_STATE,
2784 CASE_GROUND_STATE,
2785 /*	H		I		J		K	*/
2786 CASE_GROUND_STATE,
2787 CASE_GROUND_STATE,
2788 CASE_GROUND_STATE,
2789 CASE_GROUND_STATE,
2790 /*	L		M		N		O	*/
2791 CASE_GROUND_STATE,
2792 CASE_GROUND_STATE,
2793 CASE_GROUND_STATE,
2794 CASE_GROUND_STATE,
2795 /*	P		Q		R		S	*/
2796 CASE_GROUND_STATE,
2797 CASE_GROUND_STATE,
2798 CASE_GROUND_STATE,
2799 CASE_GROUND_STATE,
2800 /*	T		U		V		W	*/
2801 CASE_GROUND_STATE,
2802 CASE_GROUND_STATE,
2803 CASE_GROUND_STATE,
2804 CASE_GROUND_STATE,
2805 /*	X		Y		Z		[	*/
2806 CASE_GROUND_STATE,
2807 CASE_GROUND_STATE,
2808 CASE_GROUND_STATE,
2809 CASE_GROUND_STATE,
2810 /*	\		]		^		_	*/
2811 CASE_GROUND_STATE,
2812 CASE_GROUND_STATE,
2813 CASE_GROUND_STATE,
2814 CASE_GROUND_STATE,
2815 /*	`		a		b		c	*/
2816 CASE_GROUND_STATE,
2817 CASE_GROUND_STATE,
2818 CASE_GROUND_STATE,
2819 CASE_GROUND_STATE,
2820 /*	d		e		f		g	*/
2821 CASE_GROUND_STATE,
2822 CASE_GROUND_STATE,
2823 CASE_GROUND_STATE,
2824 CASE_GROUND_STATE,
2825 /*	h		i		j		k	*/
2826 CASE_GROUND_STATE,
2827 CASE_GROUND_STATE,
2828 CASE_GROUND_STATE,
2829 CASE_GROUND_STATE,
2830 /*	l		m		n		o	*/
2831 CASE_GROUND_STATE,
2832 CASE_GROUND_STATE,
2833 CASE_GROUND_STATE,
2834 CASE_GROUND_STATE,
2835 /*	p		q		r		s	*/
2836 CASE_RQM,
2837 CASE_GROUND_STATE,
2838 CASE_DECCARA,
2839 CASE_GROUND_STATE,
2840 /*	t		u		v		w	*/
2841 CASE_DECRARA,
2842 CASE_GROUND_STATE,
2843 CASE_DECCRA,
2844 CASE_DECRQPSR,
2845 /*	x		y		z		{	*/
2846 CASE_DECFRA,
2847 CASE_GROUND_STATE,
2848 CASE_DECERA,
2849 CASE_DECSERA,
2850 /*	|		}		~		DEL	*/
2851 CASE_DECSCPP,
2852 CASE_GROUND_STATE,
2853 CASE_GROUND_STATE,
2854 CASE_IGNORE,
2855 /*      0x80            0x81            0x82            0x83    */
2856 CASE_GROUND_STATE,
2857 CASE_GROUND_STATE,
2858 CASE_GROUND_STATE,
2859 CASE_GROUND_STATE,
2860 /*      0x84            0x85            0x86            0x87    */
2861 CASE_IND,
2862 CASE_NEL,
2863 CASE_GROUND_STATE,
2864 CASE_GROUND_STATE,
2865 /*      0x88            0x89            0x8a            0x8b    */
2866 CASE_HTS,
2867 CASE_GROUND_STATE,
2868 CASE_GROUND_STATE,
2869 CASE_GROUND_STATE,
2870 /*      0x8c            0x8d            0x8e            0x8f    */
2871 CASE_GROUND_STATE,
2872 CASE_RI,
2873 CASE_SS2,
2874 CASE_SS3,
2875 /*      0x90            0x91            0x92            0x93    */
2876 CASE_DCS,
2877 CASE_GROUND_STATE,
2878 CASE_GROUND_STATE,
2879 CASE_GROUND_STATE,
2880 /*      0x94            0x95            0x96            0x97    */
2881 CASE_GROUND_STATE,
2882 CASE_GROUND_STATE,
2883 CASE_SPA,
2884 CASE_EPA,
2885 /*      0x98            0x99            0x9a            0x9b    */
2886 CASE_SOS,
2887 CASE_GROUND_STATE,
2888 CASE_DECID,
2889 CASE_CSI_STATE,
2890 /*      0x9c            0x9d            0x9e            0x9f    */
2891 CASE_ST,
2892 CASE_OSC,
2893 CASE_PM,
2894 CASE_APC,
2895 /*	nobreakspace	exclamdown	cent		sterling	*/
2896 CASE_CSI_IGNORE,
2897 CASE_CSI_IGNORE,
2898 CASE_CSI_IGNORE,
2899 CASE_CSI_IGNORE,
2900 /*	currency	yen		brokenbar	section		*/
2901 CASE_CSI_IGNORE,
2902 CASE_CSI_IGNORE,
2903 CASE_CSI_IGNORE,
2904 CASE_CSI_IGNORE,
2905 /*	diaeresis	copyright	ordfeminine	guillemotleft	*/
2906 CASE_CSI_IGNORE,
2907 CASE_CSI_IGNORE,
2908 CASE_CSI_IGNORE,
2909 CASE_CSI_IGNORE,
2910 /*	notsign		hyphen		registered	macron		*/
2911 CASE_CSI_IGNORE,
2912 CASE_CSI_IGNORE,
2913 CASE_CSI_IGNORE,
2914 CASE_CSI_IGNORE,
2915 /*	degree		plusminus	twosuperior	threesuperior	*/
2916 CASE_CSI_IGNORE,
2917 CASE_CSI_IGNORE,
2918 CASE_CSI_IGNORE,
2919 CASE_CSI_IGNORE,
2920 /*	acute		mu		paragraph	periodcentered	*/
2921 CASE_CSI_IGNORE,
2922 CASE_CSI_IGNORE,
2923 CASE_CSI_IGNORE,
2924 CASE_CSI_IGNORE,
2925 /*	cedilla		onesuperior	masculine	guillemotright	*/
2926 CASE_CSI_IGNORE,
2927 CASE_CSI_IGNORE,
2928 CASE_CSI_IGNORE,
2929 CASE_CSI_IGNORE,
2930 /*	onequarter	onehalf		threequarters	questiondown	*/
2931 CASE_CSI_IGNORE,
2932 CASE_CSI_IGNORE,
2933 CASE_CSI_IGNORE,
2934 CASE_CSI_IGNORE,
2935 /*	Agrave		Aacute		Acircumflex	Atilde		*/
2936 CASE_GROUND_STATE,
2937 CASE_GROUND_STATE,
2938 CASE_GROUND_STATE,
2939 CASE_GROUND_STATE,
2940 /*	Adiaeresis	Aring		AE		Ccedilla	*/
2941 CASE_GROUND_STATE,
2942 CASE_GROUND_STATE,
2943 CASE_GROUND_STATE,
2944 CASE_GROUND_STATE,
2945 /*	Egrave		Eacute		Ecircumflex	Ediaeresis	*/
2946 CASE_GROUND_STATE,
2947 CASE_GROUND_STATE,
2948 CASE_GROUND_STATE,
2949 CASE_GROUND_STATE,
2950 /*	Igrave		Iacute		Icircumflex	Idiaeresis	*/
2951 CASE_GROUND_STATE,
2952 CASE_GROUND_STATE,
2953 CASE_GROUND_STATE,
2954 CASE_GROUND_STATE,
2955 /*	Eth		Ntilde		Ograve		Oacute		*/
2956 CASE_GROUND_STATE,
2957 CASE_GROUND_STATE,
2958 CASE_GROUND_STATE,
2959 CASE_GROUND_STATE,
2960 /*	Ocircumflex	Otilde		Odiaeresis	multiply	*/
2961 CASE_GROUND_STATE,
2962 CASE_GROUND_STATE,
2963 CASE_GROUND_STATE,
2964 CASE_GROUND_STATE,
2965 /*	Ooblique	Ugrave		Uacute		Ucircumflex	*/
2966 CASE_GROUND_STATE,
2967 CASE_GROUND_STATE,
2968 CASE_GROUND_STATE,
2969 CASE_GROUND_STATE,
2970 /*	Udiaeresis	Yacute		Thorn		ssharp		*/
2971 CASE_GROUND_STATE,
2972 CASE_GROUND_STATE,
2973 CASE_GROUND_STATE,
2974 CASE_GROUND_STATE,
2975 /*	agrave		aacute		acircumflex	atilde		*/
2976 CASE_GROUND_STATE,
2977 CASE_GROUND_STATE,
2978 CASE_GROUND_STATE,
2979 CASE_GROUND_STATE,
2980 /*	adiaeresis	aring		ae		ccedilla	*/
2981 CASE_GROUND_STATE,
2982 CASE_GROUND_STATE,
2983 CASE_GROUND_STATE,
2984 CASE_GROUND_STATE,
2985 /*	egrave		eacute		ecircumflex	ediaeresis	*/
2986 CASE_GROUND_STATE,
2987 CASE_GROUND_STATE,
2988 CASE_GROUND_STATE,
2989 CASE_GROUND_STATE,
2990 /*	igrave		iacute		icircumflex	idiaeresis	*/
2991 CASE_GROUND_STATE,
2992 CASE_GROUND_STATE,
2993 CASE_GROUND_STATE,
2994 CASE_GROUND_STATE,
2995 /*	eth		ntilde		ograve		oacute		*/
2996 CASE_RQM,
2997 CASE_GROUND_STATE,
2998 CASE_DECCARA,
2999 CASE_GROUND_STATE,
3000 /*	ocircumflex	otilde		odiaeresis	division	*/
3001 CASE_DECRARA,
3002 CASE_GROUND_STATE,
3003 CASE_DECCRA,
3004 CASE_DECRQPSR,
3005 /*	oslash		ugrave		uacute		ucircumflex	*/
3006 CASE_DECFRA,
3007 CASE_GROUND_STATE,
3008 CASE_DECERA,
3009 CASE_DECSERA,
3010 /*	udiaeresis	yacute		thorn		ydiaeresis	*/
3011 CASE_DECSCPP,
3012 CASE_GROUND_STATE,
3013 CASE_GROUND_STATE,
3014 CASE_GROUND_STATE,
3015 };
3016 
3017 Const PARSE_T csi_star_table[] =	/* CSI ... * */
3018 {
3019 /*	NUL		SOH		STX		ETX	*/
3020 CASE_IGNORE,
3021 CASE_IGNORE,
3022 CASE_IGNORE,
3023 CASE_IGNORE,
3024 /*	EOT		ENQ		ACK		BEL	*/
3025 CASE_IGNORE,
3026 CASE_ENQ,
3027 CASE_IGNORE,
3028 CASE_BELL,
3029 /*	BS		HT		NL		VT	*/
3030 CASE_BS,
3031 CASE_TAB,
3032 CASE_VMOT,
3033 CASE_VMOT,
3034 /*	FF		CR		SO		SI	*/
3035 CASE_VMOT,
3036 CASE_CR,
3037 CASE_SO,
3038 CASE_SI,
3039 /*	DLE		DC1		DC2		DC3	*/
3040 CASE_IGNORE,
3041 CASE_IGNORE,
3042 CASE_IGNORE,
3043 CASE_IGNORE,
3044 /*	DC4		NAK		SYN		ETB	*/
3045 CASE_IGNORE,
3046 CASE_IGNORE,
3047 CASE_IGNORE,
3048 CASE_IGNORE,
3049 /*	CAN		EM		SUB		ESC	*/
3050 CASE_GROUND_STATE,
3051 CASE_IGNORE,
3052 CASE_GROUND_STATE,
3053 CASE_ESC,
3054 /*	FS		GS		RS		US	*/
3055 CASE_IGNORE,
3056 CASE_IGNORE,
3057 CASE_IGNORE,
3058 CASE_IGNORE,
3059 /*	SP		!		"		#	*/
3060 CASE_CSI_IGNORE,
3061 CASE_CSI_IGNORE,
3062 CASE_CSI_IGNORE,
3063 CASE_CSI_IGNORE,
3064 /*	$		%		&		'	*/
3065 CASE_CSI_IGNORE,
3066 CASE_CSI_IGNORE,
3067 CASE_CSI_IGNORE,
3068 CASE_CSI_IGNORE,
3069 /*	(		)		*		+	*/
3070 CASE_CSI_IGNORE,
3071 CASE_CSI_IGNORE,
3072 CASE_CSI_IGNORE,
3073 CASE_CSI_IGNORE,
3074 /*	,		-		.		/	*/
3075 CASE_CSI_IGNORE,
3076 CASE_CSI_IGNORE,
3077 CASE_CSI_IGNORE,
3078 CASE_CSI_IGNORE,
3079 /*	0		1		2		3	*/
3080 CASE_CSI_IGNORE,
3081 CASE_CSI_IGNORE,
3082 CASE_CSI_IGNORE,
3083 CASE_CSI_IGNORE,
3084 /*	4		5		6		7	*/
3085 CASE_CSI_IGNORE,
3086 CASE_CSI_IGNORE,
3087 CASE_CSI_IGNORE,
3088 CASE_CSI_IGNORE,
3089 /*	8		9		:		;	*/
3090 CASE_CSI_IGNORE,
3091 CASE_CSI_IGNORE,
3092 CASE_CSI_IGNORE,
3093 CASE_CSI_IGNORE,
3094 /*	<		=		>		?	*/
3095 CASE_CSI_IGNORE,
3096 CASE_CSI_IGNORE,
3097 CASE_CSI_IGNORE,
3098 CASE_CSI_IGNORE,
3099 /*	@		A		B		C	*/
3100 CASE_GROUND_STATE,
3101 CASE_GROUND_STATE,
3102 CASE_GROUND_STATE,
3103 CASE_GROUND_STATE,
3104 /*	D		E		F		G	*/
3105 CASE_GROUND_STATE,
3106 CASE_GROUND_STATE,
3107 CASE_GROUND_STATE,
3108 CASE_GROUND_STATE,
3109 /*	H		I		J		K	*/
3110 CASE_GROUND_STATE,
3111 CASE_GROUND_STATE,
3112 CASE_GROUND_STATE,
3113 CASE_GROUND_STATE,
3114 /*	L		M		N		O	*/
3115 CASE_GROUND_STATE,
3116 CASE_GROUND_STATE,
3117 CASE_GROUND_STATE,
3118 CASE_GROUND_STATE,
3119 /*	P		Q		R		S	*/
3120 CASE_GROUND_STATE,
3121 CASE_GROUND_STATE,
3122 CASE_GROUND_STATE,
3123 CASE_GROUND_STATE,
3124 /*	T		U		V		W	*/
3125 CASE_GROUND_STATE,
3126 CASE_GROUND_STATE,
3127 CASE_GROUND_STATE,
3128 CASE_GROUND_STATE,
3129 /*	X		Y		Z		[	*/
3130 CASE_GROUND_STATE,
3131 CASE_GROUND_STATE,
3132 CASE_GROUND_STATE,
3133 CASE_GROUND_STATE,
3134 /*	\		]		^		_	*/
3135 CASE_GROUND_STATE,
3136 CASE_GROUND_STATE,
3137 CASE_GROUND_STATE,
3138 CASE_GROUND_STATE,
3139 /*	`		a		b		c	*/
3140 CASE_GROUND_STATE,
3141 CASE_GROUND_STATE,
3142 CASE_GROUND_STATE,
3143 CASE_GROUND_STATE,
3144 /*	d		e		f		g	*/
3145 CASE_GROUND_STATE,
3146 CASE_GROUND_STATE,
3147 CASE_GROUND_STATE,
3148 CASE_GROUND_STATE,
3149 /*	h		i		j		k	*/
3150 CASE_GROUND_STATE,
3151 CASE_GROUND_STATE,
3152 CASE_GROUND_STATE,
3153 CASE_GROUND_STATE,
3154 /*	l		m		n		o	*/
3155 CASE_GROUND_STATE,
3156 CASE_GROUND_STATE,
3157 CASE_GROUND_STATE,
3158 CASE_GROUND_STATE,
3159 /*	p		q		r		s	*/
3160 CASE_GROUND_STATE,
3161 CASE_GROUND_STATE,
3162 CASE_GROUND_STATE,
3163 CASE_GROUND_STATE,
3164 /*	t		u		v		w	*/
3165 CASE_GROUND_STATE,
3166 CASE_GROUND_STATE,
3167 CASE_GROUND_STATE,
3168 CASE_GROUND_STATE,
3169 /*	x		y		z		{	*/
3170 CASE_DECSACE,
3171 CASE_DECRQCRA,
3172 CASE_GROUND_STATE,
3173 CASE_GROUND_STATE,
3174 /*	|		}		~		DEL	*/
3175 CASE_DECSNLS,
3176 CASE_GROUND_STATE,
3177 CASE_GROUND_STATE,
3178 CASE_IGNORE,
3179 /*      0x80            0x81            0x82            0x83    */
3180 CASE_GROUND_STATE,
3181 CASE_GROUND_STATE,
3182 CASE_GROUND_STATE,
3183 CASE_GROUND_STATE,
3184 /*      0x84            0x85            0x86            0x87    */
3185 CASE_IND,
3186 CASE_NEL,
3187 CASE_GROUND_STATE,
3188 CASE_GROUND_STATE,
3189 /*      0x88            0x89            0x8a            0x8b    */
3190 CASE_HTS,
3191 CASE_GROUND_STATE,
3192 CASE_GROUND_STATE,
3193 CASE_GROUND_STATE,
3194 /*      0x8c            0x8d            0x8e            0x8f    */
3195 CASE_GROUND_STATE,
3196 CASE_RI,
3197 CASE_SS2,
3198 CASE_SS3,
3199 /*      0x90            0x91            0x92            0x93    */
3200 CASE_DCS,
3201 CASE_GROUND_STATE,
3202 CASE_GROUND_STATE,
3203 CASE_GROUND_STATE,
3204 /*      0x94            0x95            0x96            0x97    */
3205 CASE_GROUND_STATE,
3206 CASE_GROUND_STATE,
3207 CASE_SPA,
3208 CASE_EPA,
3209 /*      0x98            0x99            0x9a            0x9b    */
3210 CASE_SOS,
3211 CASE_GROUND_STATE,
3212 CASE_DECID,
3213 CASE_CSI_STATE,
3214 /*      0x9c            0x9d            0x9e            0x9f    */
3215 CASE_ST,
3216 CASE_OSC,
3217 CASE_PM,
3218 CASE_APC,
3219 /*	nobreakspace	exclamdown	cent		sterling	*/
3220 CASE_CSI_IGNORE,
3221 CASE_CSI_IGNORE,
3222 CASE_CSI_IGNORE,
3223 CASE_CSI_IGNORE,
3224 /*	currency	yen		brokenbar	section		*/
3225 CASE_CSI_IGNORE,
3226 CASE_CSI_IGNORE,
3227 CASE_CSI_IGNORE,
3228 CASE_CSI_IGNORE,
3229 /*	diaeresis	copyright	ordfeminine	guillemotleft	*/
3230 CASE_CSI_IGNORE,
3231 CASE_CSI_IGNORE,
3232 CASE_CSI_IGNORE,
3233 CASE_CSI_IGNORE,
3234 /*	notsign		hyphen		registered	macron		*/
3235 CASE_CSI_IGNORE,
3236 CASE_CSI_IGNORE,
3237 CASE_CSI_IGNORE,
3238 CASE_CSI_IGNORE,
3239 /*	degree		plusminus	twosuperior	threesuperior	*/
3240 CASE_CSI_IGNORE,
3241 CASE_CSI_IGNORE,
3242 CASE_CSI_IGNORE,
3243 CASE_CSI_IGNORE,
3244 /*	acute		mu		paragraph	periodcentered	*/
3245 CASE_CSI_IGNORE,
3246 CASE_CSI_IGNORE,
3247 CASE_CSI_IGNORE,
3248 CASE_CSI_IGNORE,
3249 /*	cedilla		onesuperior	masculine	guillemotright	*/
3250 CASE_CSI_IGNORE,
3251 CASE_CSI_IGNORE,
3252 CASE_CSI_IGNORE,
3253 CASE_CSI_IGNORE,
3254 /*	onequarter	onehalf		threequarters	questiondown	*/
3255 CASE_CSI_IGNORE,
3256 CASE_CSI_IGNORE,
3257 CASE_CSI_IGNORE,
3258 CASE_CSI_IGNORE,
3259 /*	Agrave		Aacute		Acircumflex	Atilde		*/
3260 CASE_GROUND_STATE,
3261 CASE_GROUND_STATE,
3262 CASE_GROUND_STATE,
3263 CASE_GROUND_STATE,
3264 /*	Adiaeresis	Aring		AE		Ccedilla	*/
3265 CASE_GROUND_STATE,
3266 CASE_GROUND_STATE,
3267 CASE_GROUND_STATE,
3268 CASE_GROUND_STATE,
3269 /*	Egrave		Eacute		Ecircumflex	Ediaeresis	*/
3270 CASE_GROUND_STATE,
3271 CASE_GROUND_STATE,
3272 CASE_GROUND_STATE,
3273 CASE_GROUND_STATE,
3274 /*	Igrave		Iacute		Icircumflex	Idiaeresis	*/
3275 CASE_GROUND_STATE,
3276 CASE_GROUND_STATE,
3277 CASE_GROUND_STATE,
3278 CASE_GROUND_STATE,
3279 /*	Eth		Ntilde		Ograve		Oacute		*/
3280 CASE_GROUND_STATE,
3281 CASE_GROUND_STATE,
3282 CASE_GROUND_STATE,
3283 CASE_GROUND_STATE,
3284 /*	Ocircumflex	Otilde		Odiaeresis	multiply	*/
3285 CASE_GROUND_STATE,
3286 CASE_GROUND_STATE,
3287 CASE_GROUND_STATE,
3288 CASE_GROUND_STATE,
3289 /*	Ooblique	Ugrave		Uacute		Ucircumflex	*/
3290 CASE_GROUND_STATE,
3291 CASE_GROUND_STATE,
3292 CASE_GROUND_STATE,
3293 CASE_GROUND_STATE,
3294 /*	Udiaeresis	Yacute		Thorn		ssharp		*/
3295 CASE_GROUND_STATE,
3296 CASE_GROUND_STATE,
3297 CASE_GROUND_STATE,
3298 CASE_GROUND_STATE,
3299 /*	agrave		aacute		acircumflex	atilde		*/
3300 CASE_GROUND_STATE,
3301 CASE_GROUND_STATE,
3302 CASE_GROUND_STATE,
3303 CASE_GROUND_STATE,
3304 /*	adiaeresis	aring		ae		ccedilla	*/
3305 CASE_GROUND_STATE,
3306 CASE_GROUND_STATE,
3307 CASE_GROUND_STATE,
3308 CASE_GROUND_STATE,
3309 /*	egrave		eacute		ecircumflex	ediaeresis	*/
3310 CASE_GROUND_STATE,
3311 CASE_GROUND_STATE,
3312 CASE_GROUND_STATE,
3313 CASE_GROUND_STATE,
3314 /*	igrave		iacute		icircumflex	idiaeresis	*/
3315 CASE_GROUND_STATE,
3316 CASE_GROUND_STATE,
3317 CASE_GROUND_STATE,
3318 CASE_GROUND_STATE,
3319 /*	eth		ntilde		ograve		oacute		*/
3320 CASE_GROUND_STATE,
3321 CASE_GROUND_STATE,
3322 CASE_GROUND_STATE,
3323 CASE_GROUND_STATE,
3324 /*	ocircumflex	otilde		odiaeresis	division	*/
3325 CASE_GROUND_STATE,
3326 CASE_GROUND_STATE,
3327 CASE_GROUND_STATE,
3328 CASE_GROUND_STATE,
3329 /*	oslash		ugrave		uacute		ucircumflex	*/
3330 CASE_DECSACE,
3331 CASE_DECRQCRA,
3332 CASE_GROUND_STATE,
3333 CASE_GROUND_STATE,
3334 /*	udiaeresis	yacute		thorn		ydiaeresis	*/
3335 CASE_DECSNLS,
3336 CASE_GROUND_STATE,
3337 CASE_GROUND_STATE,
3338 CASE_GROUND_STATE,
3339 };
3340 #endif	/* OPT_DEC_RECTOPS */
3341 
3342 Const PARSE_T dec_table[] =		/* CSI ? */
3343 {
3344 /*	NUL		SOH		STX		ETX	*/
3345 CASE_IGNORE,
3346 CASE_IGNORE,
3347 CASE_IGNORE,
3348 CASE_IGNORE,
3349 /*	EOT		ENQ		ACK		BEL	*/
3350 CASE_IGNORE,
3351 CASE_ENQ,
3352 CASE_IGNORE,
3353 CASE_BELL,
3354 /*	BS		HT		NL		VT	*/
3355 CASE_BS,
3356 CASE_TAB,
3357 CASE_VMOT,
3358 CASE_VMOT,
3359 /*	FF		CR		SO		SI	*/
3360 CASE_VMOT,
3361 CASE_CR,
3362 CASE_SO,
3363 CASE_SI,
3364 /*	DLE		DC1		DC2		DC3	*/
3365 CASE_IGNORE,
3366 CASE_IGNORE,
3367 CASE_IGNORE,
3368 CASE_IGNORE,
3369 /*	DC4		NAK		SYN		ETB	*/
3370 CASE_IGNORE,
3371 CASE_IGNORE,
3372 CASE_IGNORE,
3373 CASE_IGNORE,
3374 /*	CAN		EM		SUB		ESC	*/
3375 CASE_GROUND_STATE,
3376 CASE_IGNORE,
3377 CASE_GROUND_STATE,
3378 CASE_ESC,
3379 /*	FS		GS		RS		US	*/
3380 CASE_IGNORE,
3381 CASE_IGNORE,
3382 CASE_IGNORE,
3383 CASE_IGNORE,
3384 /*	SP		!		"		#	*/
3385 CASE_CSI_IGNORE,
3386 CASE_CSI_IGNORE,
3387 CASE_CSI_IGNORE,
3388 CASE_CSI_IGNORE,
3389 /*	$		%		&		'	*/
3390 CASE_CSI_DEC_DOLLAR_STATE,
3391 CASE_CSI_IGNORE,
3392 CASE_CSI_IGNORE,
3393 CASE_CSI_IGNORE,
3394 /*	(		)		*		+	*/
3395 CASE_CSI_IGNORE,
3396 CASE_CSI_IGNORE,
3397 CASE_CSI_IGNORE,
3398 CASE_CSI_IGNORE,
3399 /*	,		-		.		/	*/
3400 CASE_CSI_IGNORE,
3401 CASE_CSI_IGNORE,
3402 CASE_CSI_IGNORE,
3403 CASE_CSI_IGNORE,
3404 /*	0		1		2		3	*/
3405 CASE_ESC_DIGIT,
3406 CASE_ESC_DIGIT,
3407 CASE_ESC_DIGIT,
3408 CASE_ESC_DIGIT,
3409 /*	4		5		6		7	*/
3410 CASE_ESC_DIGIT,
3411 CASE_ESC_DIGIT,
3412 CASE_ESC_DIGIT,
3413 CASE_ESC_DIGIT,
3414 /*	8		9		:		;	*/
3415 CASE_ESC_DIGIT,
3416 CASE_ESC_DIGIT,
3417 CASE_ESC_COLON,
3418 CASE_ESC_SEMI,
3419 /*	<		=		>		?	*/
3420 CASE_CSI_IGNORE,
3421 CASE_CSI_IGNORE,
3422 CASE_CSI_IGNORE,
3423 CASE_CSI_IGNORE,
3424 /*	@		A		B		C	*/
3425 CASE_GROUND_STATE,
3426 CASE_GROUND_STATE,
3427 CASE_GROUND_STATE,
3428 CASE_GROUND_STATE,
3429 /*	D		E		F		G	*/
3430 CASE_GROUND_STATE,
3431 CASE_GROUND_STATE,
3432 CASE_GROUND_STATE,
3433 CASE_GROUND_STATE,
3434 /*	H		I		J		K	*/
3435 CASE_GROUND_STATE,
3436 CASE_GROUND_STATE,
3437 CASE_DECSED,
3438 CASE_DECSEL,
3439 /*	L		M		N		O	*/
3440 CASE_GROUND_STATE,
3441 CASE_GROUND_STATE,
3442 CASE_GROUND_STATE,
3443 CASE_GROUND_STATE,
3444 /*	P		Q		R		S	*/
3445 CASE_GROUND_STATE,
3446 CASE_GROUND_STATE,
3447 CASE_GROUND_STATE,
3448 CASE_GRAPHICS_ATTRIBUTES,
3449 /*	T		U		V		W	*/
3450 CASE_GROUND_STATE,
3451 CASE_GROUND_STATE,
3452 CASE_GROUND_STATE,
3453 CASE_GROUND_STATE,
3454 /*	X		Y		Z		[	*/
3455 CASE_GROUND_STATE,
3456 CASE_GROUND_STATE,
3457 CASE_GROUND_STATE,
3458 CASE_GROUND_STATE,
3459 /*	\		]		^		_	*/
3460 CASE_GROUND_STATE,
3461 CASE_GROUND_STATE,
3462 CASE_GROUND_STATE,
3463 CASE_GROUND_STATE,
3464 /*	`		a		b		c	*/
3465 CASE_GROUND_STATE,
3466 CASE_GROUND_STATE,
3467 CASE_GROUND_STATE,
3468 CASE_GROUND_STATE,
3469 /*	d		e		f		g	*/
3470 CASE_GROUND_STATE,
3471 CASE_GROUND_STATE,
3472 CASE_GROUND_STATE,
3473 CASE_GROUND_STATE,
3474 /*	h		i		j		k	*/
3475 CASE_DECSET,
3476 CASE_DEC_MC,
3477 CASE_GROUND_STATE,
3478 CASE_GROUND_STATE,
3479 /*	l		m		n		o	*/
3480 CASE_DECRST,
3481 CASE_GROUND_STATE,
3482 CASE_DSR,
3483 CASE_GROUND_STATE,
3484 /*	p		q		r		s	*/
3485 CASE_GROUND_STATE,
3486 CASE_GROUND_STATE,
3487 CASE_XTERM_RESTORE,
3488 CASE_XTERM_SAVE,
3489 /*	t		u		v		w	*/
3490 CASE_GROUND_STATE,
3491 CASE_GROUND_STATE,
3492 CASE_GROUND_STATE,
3493 CASE_GROUND_STATE,
3494 /*	x		y		z		{	*/
3495 CASE_GROUND_STATE,
3496 CASE_GROUND_STATE,
3497 CASE_GROUND_STATE,
3498 CASE_GROUND_STATE,
3499 /*	|		}		~		DEL	*/
3500 CASE_GROUND_STATE,
3501 CASE_GROUND_STATE,
3502 CASE_GROUND_STATE,
3503 CASE_IGNORE,
3504 /*      0x80            0x81            0x82            0x83    */
3505 CASE_GROUND_STATE,
3506 CASE_GROUND_STATE,
3507 CASE_GROUND_STATE,
3508 CASE_GROUND_STATE,
3509 /*      0x84            0x85            0x86            0x87    */
3510 CASE_IND,
3511 CASE_NEL,
3512 CASE_GROUND_STATE,
3513 CASE_GROUND_STATE,
3514 /*      0x88            0x89            0x8a            0x8b    */
3515 CASE_HTS,
3516 CASE_GROUND_STATE,
3517 CASE_GROUND_STATE,
3518 CASE_GROUND_STATE,
3519 /*      0x8c            0x8d            0x8e            0x8f    */
3520 CASE_GROUND_STATE,
3521 CASE_RI,
3522 CASE_SS2,
3523 CASE_SS3,
3524 /*      0x90            0x91            0x92            0x93    */
3525 CASE_DCS,
3526 CASE_GROUND_STATE,
3527 CASE_GROUND_STATE,
3528 CASE_GROUND_STATE,
3529 /*      0x94            0x95            0x96            0x97    */
3530 CASE_GROUND_STATE,
3531 CASE_GROUND_STATE,
3532 CASE_SPA,
3533 CASE_EPA,
3534 /*      0x98            0x99            0x9a            0x9b    */
3535 CASE_SOS,
3536 CASE_GROUND_STATE,
3537 CASE_DECID,
3538 CASE_CSI_STATE,
3539 /*      0x9c            0x9d            0x9e            0x9f    */
3540 CASE_ST,
3541 CASE_OSC,
3542 CASE_PM,
3543 CASE_APC,
3544 /*      nobreakspace    exclamdown      cent            sterling        */
3545 CASE_CSI_IGNORE,
3546 CASE_CSI_IGNORE,
3547 CASE_CSI_IGNORE,
3548 CASE_CSI_IGNORE,
3549 /*      currency        yen             brokenbar       section         */
3550 CASE_CSI_DEC_DOLLAR_STATE,
3551 CASE_CSI_IGNORE,
3552 CASE_CSI_IGNORE,
3553 CASE_CSI_IGNORE,
3554 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
3555 CASE_CSI_IGNORE,
3556 CASE_CSI_IGNORE,
3557 CASE_CSI_IGNORE,
3558 CASE_CSI_IGNORE,
3559 /*      notsign         hyphen          registered      macron          */
3560 CASE_CSI_IGNORE,
3561 CASE_CSI_IGNORE,
3562 CASE_CSI_IGNORE,
3563 CASE_CSI_IGNORE,
3564 /*      degree          plusminus       twosuperior     threesuperior   */
3565 CASE_ESC_DIGIT,
3566 CASE_ESC_DIGIT,
3567 CASE_ESC_DIGIT,
3568 CASE_ESC_DIGIT,
3569 /*      acute           mu              paragraph       periodcentered  */
3570 CASE_ESC_DIGIT,
3571 CASE_ESC_DIGIT,
3572 CASE_ESC_DIGIT,
3573 CASE_ESC_DIGIT,
3574 /*      cedilla         onesuperior     masculine       guillemotright  */
3575 CASE_ESC_DIGIT,
3576 CASE_ESC_DIGIT,
3577 CASE_ESC_COLON,
3578 CASE_ESC_SEMI,
3579 /*      onequarter      onehalf         threequarters   questiondown    */
3580 CASE_CSI_IGNORE,
3581 CASE_CSI_IGNORE,
3582 CASE_CSI_IGNORE,
3583 CASE_CSI_IGNORE,
3584 /*      Agrave          Aacute          Acircumflex     Atilde          */
3585 CASE_GROUND_STATE,
3586 CASE_GROUND_STATE,
3587 CASE_GROUND_STATE,
3588 CASE_GROUND_STATE,
3589 /*      Adiaeresis      Aring           AE              Ccedilla        */
3590 CASE_GROUND_STATE,
3591 CASE_GROUND_STATE,
3592 CASE_GROUND_STATE,
3593 CASE_GROUND_STATE,
3594 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
3595 CASE_GROUND_STATE,
3596 CASE_GROUND_STATE,
3597 CASE_DECSED,
3598 CASE_DECSEL,
3599 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
3600 CASE_GROUND_STATE,
3601 CASE_GROUND_STATE,
3602 CASE_GROUND_STATE,
3603 CASE_GROUND_STATE,
3604 /*      Eth             Ntilde          Ograve          Oacute          */
3605 CASE_GROUND_STATE,
3606 CASE_GROUND_STATE,
3607 CASE_GROUND_STATE,
3608 CASE_GRAPHICS_ATTRIBUTES,
3609 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
3610 CASE_GROUND_STATE,
3611 CASE_GROUND_STATE,
3612 CASE_GROUND_STATE,
3613 CASE_GROUND_STATE,
3614 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
3615 CASE_GROUND_STATE,
3616 CASE_GROUND_STATE,
3617 CASE_GROUND_STATE,
3618 CASE_GROUND_STATE,
3619 /*      Udiaeresis      Yacute          Thorn           ssharp          */
3620 CASE_GROUND_STATE,
3621 CASE_GROUND_STATE,
3622 CASE_GROUND_STATE,
3623 CASE_GROUND_STATE,
3624 /*      agrave          aacute          acircumflex     atilde          */
3625 CASE_GROUND_STATE,
3626 CASE_GROUND_STATE,
3627 CASE_GROUND_STATE,
3628 CASE_GROUND_STATE,
3629 /*      adiaeresis      aring           ae              ccedilla        */
3630 CASE_GROUND_STATE,
3631 CASE_GROUND_STATE,
3632 CASE_GROUND_STATE,
3633 CASE_GROUND_STATE,
3634 /*      egrave          eacute          ecircumflex     ediaeresis      */
3635 CASE_DECSET,
3636 CASE_DEC_MC,
3637 CASE_GROUND_STATE,
3638 CASE_GROUND_STATE,
3639 /*      igrave          iacute          icircumflex     idiaeresis      */
3640 CASE_DECRST,
3641 CASE_GROUND_STATE,
3642 CASE_DSR,
3643 CASE_GROUND_STATE,
3644 /*      eth             ntilde          ograve          oacute          */
3645 CASE_GROUND_STATE,
3646 CASE_GROUND_STATE,
3647 CASE_XTERM_RESTORE,
3648 CASE_XTERM_SAVE,
3649 /*      ocircumflex     otilde          odiaeresis      division        */
3650 CASE_GROUND_STATE,
3651 CASE_GROUND_STATE,
3652 CASE_GROUND_STATE,
3653 CASE_GROUND_STATE,
3654 /*      oslash          ugrave          uacute          ucircumflex     */
3655 CASE_GROUND_STATE,
3656 CASE_GROUND_STATE,
3657 CASE_GROUND_STATE,
3658 CASE_GROUND_STATE,
3659 /*      udiaeresis      yacute          thorn           ydiaeresis      */
3660 CASE_GROUND_STATE,
3661 CASE_GROUND_STATE,
3662 CASE_GROUND_STATE,
3663 CASE_IGNORE,
3664 };
3665 
3666 #if OPT_DEC_RECTOPS
3667 Const PARSE_T csi_dec_dollar_table[] =	/* CSI ?... $ */
3668 {
3669 /*	NUL		SOH		STX		ETX	*/
3670 CASE_IGNORE,
3671 CASE_IGNORE,
3672 CASE_IGNORE,
3673 CASE_IGNORE,
3674 /*	EOT		ENQ		ACK		BEL	*/
3675 CASE_IGNORE,
3676 CASE_ENQ,
3677 CASE_IGNORE,
3678 CASE_BELL,
3679 /*	BS		HT		NL		VT	*/
3680 CASE_BS,
3681 CASE_TAB,
3682 CASE_VMOT,
3683 CASE_VMOT,
3684 /*	FF		CR		SO		SI	*/
3685 CASE_VMOT,
3686 CASE_CR,
3687 CASE_SO,
3688 CASE_SI,
3689 /*	DLE		DC1		DC2		DC3	*/
3690 CASE_IGNORE,
3691 CASE_IGNORE,
3692 CASE_IGNORE,
3693 CASE_IGNORE,
3694 /*	DC4		NAK		SYN		ETB	*/
3695 CASE_IGNORE,
3696 CASE_IGNORE,
3697 CASE_IGNORE,
3698 CASE_IGNORE,
3699 /*	CAN		EM		SUB		ESC	*/
3700 CASE_GROUND_STATE,
3701 CASE_IGNORE,
3702 CASE_GROUND_STATE,
3703 CASE_ESC,
3704 /*	FS		GS		RS		US	*/
3705 CASE_IGNORE,
3706 CASE_IGNORE,
3707 CASE_IGNORE,
3708 CASE_IGNORE,
3709 /*	SP		!		"		#	*/
3710 CASE_CSI_IGNORE,
3711 CASE_CSI_IGNORE,
3712 CASE_CSI_IGNORE,
3713 CASE_CSI_IGNORE,
3714 /*	$		%		&		'	*/
3715 CASE_CSI_IGNORE,
3716 CASE_CSI_IGNORE,
3717 CASE_CSI_IGNORE,
3718 CASE_CSI_IGNORE,
3719 /*	(		)		*		+	*/
3720 CASE_CSI_IGNORE,
3721 CASE_CSI_IGNORE,
3722 CASE_CSI_IGNORE,
3723 CASE_CSI_IGNORE,
3724 /*	,		-		.		/	*/
3725 CASE_CSI_IGNORE,
3726 CASE_CSI_IGNORE,
3727 CASE_CSI_IGNORE,
3728 CASE_CSI_IGNORE,
3729 /*	0		1		2		3	*/
3730 CASE_CSI_IGNORE,
3731 CASE_CSI_IGNORE,
3732 CASE_CSI_IGNORE,
3733 CASE_CSI_IGNORE,
3734 /*	4		5		6		7	*/
3735 CASE_CSI_IGNORE,
3736 CASE_CSI_IGNORE,
3737 CASE_CSI_IGNORE,
3738 CASE_CSI_IGNORE,
3739 /*	8		9		:		;	*/
3740 CASE_CSI_IGNORE,
3741 CASE_CSI_IGNORE,
3742 CASE_CSI_IGNORE,
3743 CASE_CSI_IGNORE,
3744 /*	<		=		>		?	*/
3745 CASE_CSI_IGNORE,
3746 CASE_CSI_IGNORE,
3747 CASE_CSI_IGNORE,
3748 CASE_CSI_IGNORE,
3749 /*	@		A		B		C	*/
3750 CASE_GROUND_STATE,
3751 CASE_GROUND_STATE,
3752 CASE_GROUND_STATE,
3753 CASE_GROUND_STATE,
3754 /*	D		E		F		G	*/
3755 CASE_GROUND_STATE,
3756 CASE_GROUND_STATE,
3757 CASE_GROUND_STATE,
3758 CASE_GROUND_STATE,
3759 /*	H		I		J		K	*/
3760 CASE_GROUND_STATE,
3761 CASE_GROUND_STATE,
3762 CASE_GROUND_STATE,
3763 CASE_GROUND_STATE,
3764 /*	L		M		N		O	*/
3765 CASE_GROUND_STATE,
3766 CASE_GROUND_STATE,
3767 CASE_GROUND_STATE,
3768 CASE_GROUND_STATE,
3769 /*	P		Q		R		S	*/
3770 CASE_GROUND_STATE,
3771 CASE_GROUND_STATE,
3772 CASE_GROUND_STATE,
3773 CASE_GROUND_STATE,
3774 /*	T		U		V		W	*/
3775 CASE_GROUND_STATE,
3776 CASE_GROUND_STATE,
3777 CASE_GROUND_STATE,
3778 CASE_GROUND_STATE,
3779 /*	X		Y		Z		[	*/
3780 CASE_GROUND_STATE,
3781 CASE_GROUND_STATE,
3782 CASE_GROUND_STATE,
3783 CASE_GROUND_STATE,
3784 /*	\		]		^		_	*/
3785 CASE_GROUND_STATE,
3786 CASE_GROUND_STATE,
3787 CASE_GROUND_STATE,
3788 CASE_GROUND_STATE,
3789 /*	`		a		b		c	*/
3790 CASE_GROUND_STATE,
3791 CASE_GROUND_STATE,
3792 CASE_GROUND_STATE,
3793 CASE_GROUND_STATE,
3794 /*	d		e		f		g	*/
3795 CASE_GROUND_STATE,
3796 CASE_GROUND_STATE,
3797 CASE_GROUND_STATE,
3798 CASE_GROUND_STATE,
3799 /*	h		i		j		k	*/
3800 CASE_GROUND_STATE,
3801 CASE_GROUND_STATE,
3802 CASE_GROUND_STATE,
3803 CASE_GROUND_STATE,
3804 /*	l		m		n		o	*/
3805 CASE_GROUND_STATE,
3806 CASE_GROUND_STATE,
3807 CASE_GROUND_STATE,
3808 CASE_GROUND_STATE,
3809 /*	p		q		r		s	*/
3810 CASE_DECRQM,
3811 CASE_GROUND_STATE,
3812 CASE_GROUND_STATE,
3813 CASE_GROUND_STATE,
3814 /*	t		u		v		w	*/
3815 CASE_GROUND_STATE,
3816 CASE_GROUND_STATE,
3817 CASE_GROUND_STATE,
3818 CASE_GROUND_STATE,
3819 /*	x		y		z		{	*/
3820 CASE_GROUND_STATE,
3821 CASE_GROUND_STATE,
3822 CASE_GROUND_STATE,
3823 CASE_GROUND_STATE,
3824 /*	|		}		~		DEL	*/
3825 CASE_GROUND_STATE,
3826 CASE_GROUND_STATE,
3827 CASE_GROUND_STATE,
3828 CASE_IGNORE,
3829 /*      0x80            0x81            0x82            0x83    */
3830 CASE_GROUND_STATE,
3831 CASE_GROUND_STATE,
3832 CASE_GROUND_STATE,
3833 CASE_GROUND_STATE,
3834 /*      0x84            0x85            0x86            0x87    */
3835 CASE_IND,
3836 CASE_NEL,
3837 CASE_GROUND_STATE,
3838 CASE_GROUND_STATE,
3839 /*      0x88            0x89            0x8a            0x8b    */
3840 CASE_HTS,
3841 CASE_GROUND_STATE,
3842 CASE_GROUND_STATE,
3843 CASE_GROUND_STATE,
3844 /*      0x8c            0x8d            0x8e            0x8f    */
3845 CASE_GROUND_STATE,
3846 CASE_RI,
3847 CASE_SS2,
3848 CASE_SS3,
3849 /*      0x90            0x91            0x92            0x93    */
3850 CASE_DCS,
3851 CASE_GROUND_STATE,
3852 CASE_GROUND_STATE,
3853 CASE_GROUND_STATE,
3854 /*      0x94            0x95            0x96            0x97    */
3855 CASE_GROUND_STATE,
3856 CASE_GROUND_STATE,
3857 CASE_SPA,
3858 CASE_EPA,
3859 /*      0x98            0x99            0x9a            0x9b    */
3860 CASE_SOS,
3861 CASE_GROUND_STATE,
3862 CASE_DECID,
3863 CASE_CSI_STATE,
3864 /*      0x9c            0x9d            0x9e            0x9f    */
3865 CASE_ST,
3866 CASE_OSC,
3867 CASE_PM,
3868 CASE_APC,
3869 /*	nobreakspace	exclamdown	cent		sterling	*/
3870 CASE_CSI_IGNORE,
3871 CASE_CSI_IGNORE,
3872 CASE_CSI_IGNORE,
3873 CASE_CSI_IGNORE,
3874 /*	currency	yen		brokenbar	section		*/
3875 CASE_CSI_IGNORE,
3876 CASE_CSI_IGNORE,
3877 CASE_CSI_IGNORE,
3878 CASE_CSI_IGNORE,
3879 /*	diaeresis	copyright	ordfeminine	guillemotleft	*/
3880 CASE_CSI_IGNORE,
3881 CASE_CSI_IGNORE,
3882 CASE_CSI_IGNORE,
3883 CASE_CSI_IGNORE,
3884 /*	notsign		hyphen		registered	macron		*/
3885 CASE_CSI_IGNORE,
3886 CASE_CSI_IGNORE,
3887 CASE_CSI_IGNORE,
3888 CASE_CSI_IGNORE,
3889 /*	degree		plusminus	twosuperior	threesuperior	*/
3890 CASE_CSI_IGNORE,
3891 CASE_CSI_IGNORE,
3892 CASE_CSI_IGNORE,
3893 CASE_CSI_IGNORE,
3894 /*	acute		mu		paragraph	periodcentered	*/
3895 CASE_CSI_IGNORE,
3896 CASE_CSI_IGNORE,
3897 CASE_CSI_IGNORE,
3898 CASE_CSI_IGNORE,
3899 /*	cedilla		onesuperior	masculine	guillemotright	*/
3900 CASE_CSI_IGNORE,
3901 CASE_CSI_IGNORE,
3902 CASE_CSI_IGNORE,
3903 CASE_CSI_IGNORE,
3904 /*	onequarter	onehalf		threequarters	questiondown	*/
3905 CASE_CSI_IGNORE,
3906 CASE_CSI_IGNORE,
3907 CASE_CSI_IGNORE,
3908 CASE_CSI_IGNORE,
3909 /*	Agrave		Aacute		Acircumflex	Atilde		*/
3910 CASE_GROUND_STATE,
3911 CASE_GROUND_STATE,
3912 CASE_GROUND_STATE,
3913 CASE_GROUND_STATE,
3914 /*	Adiaeresis	Aring		AE		Ccedilla	*/
3915 CASE_GROUND_STATE,
3916 CASE_GROUND_STATE,
3917 CASE_GROUND_STATE,
3918 CASE_GROUND_STATE,
3919 /*	Egrave		Eacute		Ecircumflex	Ediaeresis	*/
3920 CASE_GROUND_STATE,
3921 CASE_GROUND_STATE,
3922 CASE_GROUND_STATE,
3923 CASE_GROUND_STATE,
3924 /*	Igrave		Iacute		Icircumflex	Idiaeresis	*/
3925 CASE_GROUND_STATE,
3926 CASE_GROUND_STATE,
3927 CASE_GROUND_STATE,
3928 CASE_GROUND_STATE,
3929 /*	Eth		Ntilde		Ograve		Oacute		*/
3930 CASE_GROUND_STATE,
3931 CASE_GROUND_STATE,
3932 CASE_GROUND_STATE,
3933 CASE_GROUND_STATE,
3934 /*	Ocircumflex	Otilde		Odiaeresis	multiply	*/
3935 CASE_GROUND_STATE,
3936 CASE_GROUND_STATE,
3937 CASE_GROUND_STATE,
3938 CASE_GROUND_STATE,
3939 /*	Ooblique	Ugrave		Uacute		Ucircumflex	*/
3940 CASE_GROUND_STATE,
3941 CASE_GROUND_STATE,
3942 CASE_GROUND_STATE,
3943 CASE_GROUND_STATE,
3944 /*	Udiaeresis	Yacute		Thorn		ssharp		*/
3945 CASE_GROUND_STATE,
3946 CASE_GROUND_STATE,
3947 CASE_GROUND_STATE,
3948 CASE_GROUND_STATE,
3949 /*	agrave		aacute		acircumflex	atilde		*/
3950 CASE_GROUND_STATE,
3951 CASE_GROUND_STATE,
3952 CASE_GROUND_STATE,
3953 CASE_GROUND_STATE,
3954 /*	adiaeresis	aring		ae		ccedilla	*/
3955 CASE_GROUND_STATE,
3956 CASE_GROUND_STATE,
3957 CASE_GROUND_STATE,
3958 CASE_GROUND_STATE,
3959 /*	egrave		eacute		ecircumflex	ediaeresis	*/
3960 CASE_GROUND_STATE,
3961 CASE_GROUND_STATE,
3962 CASE_GROUND_STATE,
3963 CASE_GROUND_STATE,
3964 /*	igrave		iacute		icircumflex	idiaeresis	*/
3965 CASE_GROUND_STATE,
3966 CASE_GROUND_STATE,
3967 CASE_GROUND_STATE,
3968 CASE_GROUND_STATE,
3969 /*	eth		ntilde		ograve		oacute		*/
3970 CASE_DECRQM,
3971 CASE_GROUND_STATE,
3972 CASE_GROUND_STATE,
3973 CASE_GROUND_STATE,
3974 /*	ocircumflex	otilde		odiaeresis	division	*/
3975 CASE_GROUND_STATE,
3976 CASE_GROUND_STATE,
3977 CASE_GROUND_STATE,
3978 CASE_GROUND_STATE,
3979 /*	oslash		ugrave		uacute		ucircumflex	*/
3980 CASE_GROUND_STATE,
3981 CASE_GROUND_STATE,
3982 CASE_GROUND_STATE,
3983 CASE_GROUND_STATE,
3984 /*	udiaeresis	yacute		thorn		ydiaeresis	*/
3985 CASE_GROUND_STATE,
3986 CASE_GROUND_STATE,
3987 CASE_GROUND_STATE,
3988 CASE_GROUND_STATE,
3989 };
3990 #endif /* OPT_DEC_RECTOPS */
3991 
3992 Const PARSE_T dec2_table[] =		/* CSI > */
3993 {
3994 /*	NUL		SOH		STX		ETX	*/
3995 CASE_IGNORE,
3996 CASE_IGNORE,
3997 CASE_IGNORE,
3998 CASE_IGNORE,
3999 /*	EOT		ENQ		ACK		BEL	*/
4000 CASE_IGNORE,
4001 CASE_ENQ,
4002 CASE_IGNORE,
4003 CASE_BELL,
4004 /*	BS		HT		NL		VT	*/
4005 CASE_BS,
4006 CASE_TAB,
4007 CASE_VMOT,
4008 CASE_VMOT,
4009 /*	FF		CR		SO		SI	*/
4010 CASE_VMOT,
4011 CASE_CR,
4012 CASE_SO,
4013 CASE_SI,
4014 /*	DLE		DC1		DC2		DC3	*/
4015 CASE_IGNORE,
4016 CASE_IGNORE,
4017 CASE_IGNORE,
4018 CASE_IGNORE,
4019 /*	DC4		NAK		SYN		ETB	*/
4020 CASE_IGNORE,
4021 CASE_IGNORE,
4022 CASE_IGNORE,
4023 CASE_IGNORE,
4024 /*	CAN		EM		SUB		ESC	*/
4025 CASE_GROUND_STATE,
4026 CASE_IGNORE,
4027 CASE_GROUND_STATE,
4028 CASE_ESC,
4029 /*	FS		GS		RS		US	*/
4030 CASE_IGNORE,
4031 CASE_IGNORE,
4032 CASE_IGNORE,
4033 CASE_IGNORE,
4034 /*	SP		!		"		#	*/
4035 CASE_CSI_IGNORE,
4036 CASE_CSI_IGNORE,
4037 CASE_CSI_IGNORE,
4038 CASE_CSI_IGNORE,
4039 /*	$		%		&		'	*/
4040 CASE_CSI_IGNORE,
4041 CASE_CSI_IGNORE,
4042 CASE_CSI_IGNORE,
4043 CASE_CSI_IGNORE,
4044 /*	(		)		*		+	*/
4045 CASE_CSI_IGNORE,
4046 CASE_CSI_IGNORE,
4047 CASE_CSI_IGNORE,
4048 CASE_CSI_IGNORE,
4049 /*	,		-		.		/	*/
4050 CASE_CSI_IGNORE,
4051 CASE_CSI_IGNORE,
4052 CASE_CSI_IGNORE,
4053 CASE_CSI_IGNORE,
4054 /*	0		1		2		3	*/
4055 CASE_ESC_DIGIT,
4056 CASE_ESC_DIGIT,
4057 CASE_ESC_DIGIT,
4058 CASE_ESC_DIGIT,
4059 /*	4		5		6		7	*/
4060 CASE_ESC_DIGIT,
4061 CASE_ESC_DIGIT,
4062 CASE_ESC_DIGIT,
4063 CASE_ESC_DIGIT,
4064 /*	8		9		:		;	*/
4065 CASE_ESC_DIGIT,
4066 CASE_ESC_DIGIT,
4067 CASE_ESC_COLON,
4068 CASE_ESC_SEMI,
4069 /*	<		=		>		?	*/
4070 CASE_CSI_IGNORE,
4071 CASE_CSI_IGNORE,
4072 CASE_CSI_IGNORE,
4073 CASE_CSI_IGNORE,
4074 /*	@		A		B		C	*/
4075 CASE_GROUND_STATE,
4076 CASE_GROUND_STATE,
4077 CASE_GROUND_STATE,
4078 CASE_GROUND_STATE,
4079 /*	D		E		F		G	*/
4080 CASE_GROUND_STATE,
4081 CASE_GROUND_STATE,
4082 CASE_GROUND_STATE,
4083 CASE_GROUND_STATE,
4084 /*	H		I		J		K	*/
4085 CASE_GROUND_STATE,
4086 CASE_GROUND_STATE,
4087 CASE_GROUND_STATE,
4088 CASE_GROUND_STATE,
4089 /*	L		M		N		O	*/
4090 CASE_GROUND_STATE,
4091 CASE_GROUND_STATE,
4092 CASE_GROUND_STATE,
4093 CASE_GROUND_STATE,
4094 /*	P		Q		R		S	*/
4095 CASE_GROUND_STATE,
4096 CASE_GROUND_STATE,
4097 CASE_GROUND_STATE,
4098 CASE_GROUND_STATE,
4099 /*	T		U		V		W	*/
4100 CASE_XTERM_RM_TITLE,
4101 CASE_GROUND_STATE,
4102 CASE_GROUND_STATE,
4103 CASE_GROUND_STATE,
4104 /*	X		Y		Z		[	*/
4105 CASE_GROUND_STATE,
4106 CASE_GROUND_STATE,
4107 CASE_GROUND_STATE,
4108 CASE_GROUND_STATE,
4109 /*	\		]		^		_	*/
4110 CASE_GROUND_STATE,
4111 CASE_GROUND_STATE,
4112 CASE_GROUND_STATE,
4113 CASE_GROUND_STATE,
4114 /*	`		a		b		c	*/
4115 CASE_GROUND_STATE,
4116 CASE_GROUND_STATE,
4117 CASE_GROUND_STATE,
4118 CASE_DA2,
4119 /*	d		e		f		g	*/
4120 CASE_GROUND_STATE,
4121 CASE_GROUND_STATE,
4122 CASE_GROUND_STATE,
4123 CASE_GROUND_STATE,
4124 /*	h		i		j		k	*/
4125 CASE_GROUND_STATE,
4126 CASE_GROUND_STATE,
4127 CASE_GROUND_STATE,
4128 CASE_GROUND_STATE,
4129 /*	l		m		n		o	*/
4130 CASE_GROUND_STATE,
4131 CASE_SET_MOD_FKEYS,
4132 CASE_SET_MOD_FKEYS0,
4133 CASE_GROUND_STATE,
4134 /*	p		q		r		s	*/
4135 CASE_HIDE_POINTER,
4136 CASE_REPORT_VERSION,
4137 CASE_GROUND_STATE,
4138 CASE_XTERM_SHIFT_ESCAPE,
4139 /*	t		u		v		w	*/
4140 CASE_XTERM_SM_TITLE,
4141 CASE_GROUND_STATE,
4142 CASE_GROUND_STATE,
4143 CASE_GROUND_STATE,
4144 /*	x		y		z		{	*/
4145 CASE_GROUND_STATE,
4146 CASE_GROUND_STATE,
4147 CASE_GROUND_STATE,
4148 CASE_GROUND_STATE,
4149 /*	|		}		~		DEL	*/
4150 CASE_GROUND_STATE,
4151 CASE_GROUND_STATE,
4152 CASE_GROUND_STATE,
4153 CASE_IGNORE,
4154 /*      0x80            0x81            0x82            0x83    */
4155 CASE_GROUND_STATE,
4156 CASE_GROUND_STATE,
4157 CASE_GROUND_STATE,
4158 CASE_GROUND_STATE,
4159 /*      0x84            0x85            0x86            0x87    */
4160 CASE_IND,
4161 CASE_NEL,
4162 CASE_GROUND_STATE,
4163 CASE_GROUND_STATE,
4164 /*      0x88            0x89            0x8a            0x8b    */
4165 CASE_HTS,
4166 CASE_GROUND_STATE,
4167 CASE_GROUND_STATE,
4168 CASE_GROUND_STATE,
4169 /*      0x8c            0x8d            0x8e            0x8f    */
4170 CASE_GROUND_STATE,
4171 CASE_RI,
4172 CASE_SS2,
4173 CASE_SS3,
4174 /*      0x90            0x91            0x92            0x93    */
4175 CASE_DCS,
4176 CASE_GROUND_STATE,
4177 CASE_GROUND_STATE,
4178 CASE_GROUND_STATE,
4179 /*      0x94            0x95            0x96            0x97    */
4180 CASE_GROUND_STATE,
4181 CASE_GROUND_STATE,
4182 CASE_SPA,
4183 CASE_EPA,
4184 /*      0x98            0x99            0x9a            0x9b    */
4185 CASE_SOS,
4186 CASE_GROUND_STATE,
4187 CASE_DECID,
4188 CASE_CSI_STATE,
4189 /*      0x9c            0x9d            0x9e            0x9f    */
4190 CASE_ST,
4191 CASE_OSC,
4192 CASE_PM,
4193 CASE_APC,
4194 /*      nobreakspace    exclamdown      cent            sterling        */
4195 CASE_CSI_IGNORE,
4196 CASE_CSI_IGNORE,
4197 CASE_CSI_IGNORE,
4198 CASE_CSI_IGNORE,
4199 /*      currency        yen             brokenbar       section         */
4200 CASE_CSI_IGNORE,
4201 CASE_CSI_IGNORE,
4202 CASE_CSI_IGNORE,
4203 CASE_CSI_IGNORE,
4204 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
4205 CASE_CSI_IGNORE,
4206 CASE_CSI_IGNORE,
4207 CASE_CSI_IGNORE,
4208 CASE_CSI_IGNORE,
4209 /*      notsign         hyphen          registered      macron          */
4210 CASE_CSI_IGNORE,
4211 CASE_CSI_IGNORE,
4212 CASE_CSI_IGNORE,
4213 CASE_CSI_IGNORE,
4214 /*      degree          plusminus       twosuperior     threesuperior   */
4215 CASE_ESC_DIGIT,
4216 CASE_ESC_DIGIT,
4217 CASE_ESC_DIGIT,
4218 CASE_ESC_DIGIT,
4219 /*      acute           mu              paragraph       periodcentered  */
4220 CASE_ESC_DIGIT,
4221 CASE_ESC_DIGIT,
4222 CASE_ESC_DIGIT,
4223 CASE_ESC_DIGIT,
4224 /*      cedilla         onesuperior     masculine       guillemotright  */
4225 CASE_ESC_DIGIT,
4226 CASE_ESC_DIGIT,
4227 CASE_ESC_COLON,
4228 CASE_ESC_SEMI,
4229 /*      onequarter      onehalf         threequarters   questiondown    */
4230 CASE_CSI_IGNORE,
4231 CASE_CSI_IGNORE,
4232 CASE_CSI_IGNORE,
4233 CASE_CSI_IGNORE,
4234 /*      Agrave          Aacute          Acircumflex     Atilde          */
4235 CASE_GROUND_STATE,
4236 CASE_GROUND_STATE,
4237 CASE_GROUND_STATE,
4238 CASE_GROUND_STATE,
4239 /*      Adiaeresis      Aring           AE              Ccedilla        */
4240 CASE_GROUND_STATE,
4241 CASE_GROUND_STATE,
4242 CASE_GROUND_STATE,
4243 CASE_GROUND_STATE,
4244 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
4245 CASE_GROUND_STATE,
4246 CASE_GROUND_STATE,
4247 CASE_GROUND_STATE,
4248 CASE_GROUND_STATE,
4249 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
4250 CASE_GROUND_STATE,
4251 CASE_GROUND_STATE,
4252 CASE_GROUND_STATE,
4253 CASE_GROUND_STATE,
4254 /*      Eth             Ntilde          Ograve          Oacute          */
4255 CASE_GROUND_STATE,
4256 CASE_GROUND_STATE,
4257 CASE_GROUND_STATE,
4258 CASE_GROUND_STATE,
4259 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
4260 CASE_XTERM_RM_TITLE,
4261 CASE_GROUND_STATE,
4262 CASE_GROUND_STATE,
4263 CASE_GROUND_STATE,
4264 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
4265 CASE_GROUND_STATE,
4266 CASE_GROUND_STATE,
4267 CASE_GROUND_STATE,
4268 CASE_GROUND_STATE,
4269 /*      Udiaeresis      Yacute          Thorn           ssharp          */
4270 CASE_GROUND_STATE,
4271 CASE_GROUND_STATE,
4272 CASE_GROUND_STATE,
4273 CASE_GROUND_STATE,
4274 /*      agrave          aacute          acircumflex     atilde          */
4275 CASE_GROUND_STATE,
4276 CASE_GROUND_STATE,
4277 CASE_GROUND_STATE,
4278 CASE_DA2,
4279 /*      adiaeresis      aring           ae              ccedilla        */
4280 CASE_GROUND_STATE,
4281 CASE_GROUND_STATE,
4282 CASE_GROUND_STATE,
4283 CASE_GROUND_STATE,
4284 /*      egrave          eacute          ecircumflex     ediaeresis      */
4285 CASE_GROUND_STATE,
4286 CASE_GROUND_STATE,
4287 CASE_GROUND_STATE,
4288 CASE_GROUND_STATE,
4289 /*      igrave          iacute          icircumflex     idiaeresis      */
4290 CASE_GROUND_STATE,
4291 CASE_SET_MOD_FKEYS,
4292 CASE_SET_MOD_FKEYS0,
4293 CASE_GROUND_STATE,
4294 /*      eth             ntilde          ograve          oacute          */
4295 CASE_HIDE_POINTER,
4296 CASE_REPORT_VERSION,
4297 CASE_GROUND_STATE,
4298 CASE_XTERM_SHIFT_ESCAPE,
4299 /*      ocircumflex     otilde          odiaeresis      division        */
4300 CASE_XTERM_SM_TITLE,
4301 CASE_GROUND_STATE,
4302 CASE_GROUND_STATE,
4303 CASE_GROUND_STATE,
4304 /*      oslash          ugrave          uacute          ucircumflex     */
4305 CASE_GROUND_STATE,
4306 CASE_GROUND_STATE,
4307 CASE_GROUND_STATE,
4308 CASE_GROUND_STATE,
4309 /*      udiaeresis      yacute          thorn           ydiaeresis      */
4310 CASE_GROUND_STATE,
4311 CASE_GROUND_STATE,
4312 CASE_GROUND_STATE,
4313 CASE_IGNORE,
4314 };
4315 
4316 Const PARSE_T dec3_table[] =		/* CSI = */
4317 {
4318 /*	NUL		SOH		STX		ETX	*/
4319 CASE_IGNORE,
4320 CASE_IGNORE,
4321 CASE_IGNORE,
4322 CASE_IGNORE,
4323 /*	EOT		ENQ		ACK		BEL	*/
4324 CASE_IGNORE,
4325 CASE_ENQ,
4326 CASE_IGNORE,
4327 CASE_BELL,
4328 /*	BS		HT		NL		VT	*/
4329 CASE_BS,
4330 CASE_TAB,
4331 CASE_VMOT,
4332 CASE_VMOT,
4333 /*	FF		CR		SO		SI	*/
4334 CASE_VMOT,
4335 CASE_CR,
4336 CASE_SO,
4337 CASE_SI,
4338 /*	DLE		DC1		DC2		DC3	*/
4339 CASE_IGNORE,
4340 CASE_IGNORE,
4341 CASE_IGNORE,
4342 CASE_IGNORE,
4343 /*	DC4		NAK		SYN		ETB	*/
4344 CASE_IGNORE,
4345 CASE_IGNORE,
4346 CASE_IGNORE,
4347 CASE_IGNORE,
4348 /*	CAN		EM		SUB		ESC	*/
4349 CASE_GROUND_STATE,
4350 CASE_IGNORE,
4351 CASE_GROUND_STATE,
4352 CASE_ESC,
4353 /*	FS		GS		RS		US	*/
4354 CASE_IGNORE,
4355 CASE_IGNORE,
4356 CASE_IGNORE,
4357 CASE_IGNORE,
4358 /*	SP		!		"		#	*/
4359 CASE_CSI_IGNORE,
4360 CASE_CSI_IGNORE,
4361 CASE_CSI_IGNORE,
4362 CASE_CSI_IGNORE,
4363 /*	$		%		&		'	*/
4364 CASE_CSI_IGNORE,
4365 CASE_CSI_IGNORE,
4366 CASE_CSI_IGNORE,
4367 CASE_CSI_IGNORE,
4368 /*	(		)		*		+	*/
4369 CASE_CSI_IGNORE,
4370 CASE_CSI_IGNORE,
4371 CASE_CSI_IGNORE,
4372 CASE_CSI_IGNORE,
4373 /*	,		-		.		/	*/
4374 CASE_CSI_IGNORE,
4375 CASE_CSI_IGNORE,
4376 CASE_CSI_IGNORE,
4377 CASE_CSI_IGNORE,
4378 /*	0		1		2		3	*/
4379 CASE_ESC_DIGIT,
4380 CASE_ESC_DIGIT,
4381 CASE_ESC_DIGIT,
4382 CASE_ESC_DIGIT,
4383 /*	4		5		6		7	*/
4384 CASE_ESC_DIGIT,
4385 CASE_ESC_DIGIT,
4386 CASE_ESC_DIGIT,
4387 CASE_ESC_DIGIT,
4388 /*	8		9		:		;	*/
4389 CASE_ESC_DIGIT,
4390 CASE_ESC_DIGIT,
4391 CASE_ESC_COLON,
4392 CASE_ESC_SEMI,
4393 /*	<		=		>		?	*/
4394 CASE_CSI_IGNORE,
4395 CASE_CSI_IGNORE,
4396 CASE_CSI_IGNORE,
4397 CASE_CSI_IGNORE,
4398 /*	@		A		B		C	*/
4399 CASE_GROUND_STATE,
4400 CASE_GROUND_STATE,
4401 CASE_GROUND_STATE,
4402 CASE_GROUND_STATE,
4403 /*	D		E		F		G	*/
4404 CASE_GROUND_STATE,
4405 CASE_GROUND_STATE,
4406 CASE_GROUND_STATE,
4407 CASE_GROUND_STATE,
4408 /*	H		I		J		K	*/
4409 CASE_GROUND_STATE,
4410 CASE_GROUND_STATE,
4411 CASE_GROUND_STATE,
4412 CASE_GROUND_STATE,
4413 /*	L		M		N		O	*/
4414 CASE_GROUND_STATE,
4415 CASE_GROUND_STATE,
4416 CASE_GROUND_STATE,
4417 CASE_GROUND_STATE,
4418 /*	P		Q		R		S	*/
4419 CASE_GROUND_STATE,
4420 CASE_GROUND_STATE,
4421 CASE_GROUND_STATE,
4422 CASE_GROUND_STATE,
4423 /*	T		U		V		W	*/
4424 CASE_GROUND_STATE,
4425 CASE_GROUND_STATE,
4426 CASE_GROUND_STATE,
4427 CASE_GROUND_STATE,
4428 /*	X		Y		Z		[	*/
4429 CASE_GROUND_STATE,
4430 CASE_GROUND_STATE,
4431 CASE_GROUND_STATE,
4432 CASE_GROUND_STATE,
4433 /*	\		]		^		_	*/
4434 CASE_GROUND_STATE,
4435 CASE_GROUND_STATE,
4436 CASE_GROUND_STATE,
4437 CASE_GROUND_STATE,
4438 /*	`		a		b		c	*/
4439 CASE_GROUND_STATE,
4440 CASE_GROUND_STATE,
4441 CASE_GROUND_STATE,
4442 CASE_DECRPTUI,
4443 /*	d		e		f		g	*/
4444 CASE_GROUND_STATE,
4445 CASE_GROUND_STATE,
4446 CASE_GROUND_STATE,
4447 CASE_GROUND_STATE,
4448 /*	h		i		j		k	*/
4449 CASE_GROUND_STATE,
4450 CASE_GROUND_STATE,
4451 CASE_GROUND_STATE,
4452 CASE_GROUND_STATE,
4453 /*	l		m		n		o	*/
4454 CASE_GROUND_STATE,
4455 CASE_GROUND_STATE,
4456 CASE_GROUND_STATE,
4457 CASE_GROUND_STATE,
4458 /*	p		q		r		s	*/
4459 CASE_GROUND_STATE,
4460 CASE_GROUND_STATE,
4461 CASE_GROUND_STATE,
4462 CASE_GROUND_STATE,
4463 /*	t		u		v		w	*/
4464 CASE_GROUND_STATE,
4465 CASE_GROUND_STATE,
4466 CASE_GROUND_STATE,
4467 CASE_GROUND_STATE,
4468 /*	x		y		z		{	*/
4469 CASE_GROUND_STATE,
4470 CASE_GROUND_STATE,
4471 CASE_GROUND_STATE,
4472 CASE_GROUND_STATE,
4473 /*	|		}		~		DEL	*/
4474 CASE_GROUND_STATE,
4475 CASE_GROUND_STATE,
4476 CASE_GROUND_STATE,
4477 CASE_IGNORE,
4478 /*      0x80            0x81            0x82            0x83    */
4479 CASE_GROUND_STATE,
4480 CASE_GROUND_STATE,
4481 CASE_GROUND_STATE,
4482 CASE_GROUND_STATE,
4483 /*      0x84            0x85            0x86            0x87    */
4484 CASE_IND,
4485 CASE_NEL,
4486 CASE_GROUND_STATE,
4487 CASE_GROUND_STATE,
4488 /*      0x88            0x89            0x8a            0x8b    */
4489 CASE_HTS,
4490 CASE_GROUND_STATE,
4491 CASE_GROUND_STATE,
4492 CASE_GROUND_STATE,
4493 /*      0x8c            0x8d            0x8e            0x8f    */
4494 CASE_GROUND_STATE,
4495 CASE_RI,
4496 CASE_SS2,
4497 CASE_SS3,
4498 /*      0x90            0x91            0x92            0x93    */
4499 CASE_DCS,
4500 CASE_GROUND_STATE,
4501 CASE_GROUND_STATE,
4502 CASE_GROUND_STATE,
4503 /*      0x94            0x95            0x96            0x97    */
4504 CASE_GROUND_STATE,
4505 CASE_GROUND_STATE,
4506 CASE_SPA,
4507 CASE_EPA,
4508 /*      0x98            0x99            0x9a            0x9b    */
4509 CASE_SOS,
4510 CASE_GROUND_STATE,
4511 CASE_DECID,
4512 CASE_CSI_STATE,
4513 /*      0x9c            0x9d            0x9e            0x9f    */
4514 CASE_ST,
4515 CASE_OSC,
4516 CASE_PM,
4517 CASE_APC,
4518 /*      nobreakspace    exclamdown      cent            sterling        */
4519 CASE_CSI_IGNORE,
4520 CASE_CSI_IGNORE,
4521 CASE_CSI_IGNORE,
4522 CASE_CSI_IGNORE,
4523 /*      currency        yen             brokenbar       section         */
4524 CASE_CSI_IGNORE,
4525 CASE_CSI_IGNORE,
4526 CASE_CSI_IGNORE,
4527 CASE_CSI_IGNORE,
4528 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
4529 CASE_CSI_IGNORE,
4530 CASE_CSI_IGNORE,
4531 CASE_CSI_IGNORE,
4532 CASE_CSI_IGNORE,
4533 /*      notsign         hyphen          registered      macron          */
4534 CASE_CSI_IGNORE,
4535 CASE_CSI_IGNORE,
4536 CASE_CSI_IGNORE,
4537 CASE_CSI_IGNORE,
4538 /*      degree          plusminus       twosuperior     threesuperior   */
4539 CASE_ESC_DIGIT,
4540 CASE_ESC_DIGIT,
4541 CASE_ESC_DIGIT,
4542 CASE_ESC_DIGIT,
4543 /*      acute           mu              paragraph       periodcentered  */
4544 CASE_ESC_DIGIT,
4545 CASE_ESC_DIGIT,
4546 CASE_ESC_DIGIT,
4547 CASE_ESC_DIGIT,
4548 /*      cedilla         onesuperior     masculine       guillemotright  */
4549 CASE_ESC_DIGIT,
4550 CASE_ESC_DIGIT,
4551 CASE_ESC_COLON,
4552 CASE_ESC_SEMI,
4553 /*      onequarter      onehalf         threequarters   questiondown    */
4554 CASE_CSI_IGNORE,
4555 CASE_CSI_IGNORE,
4556 CASE_CSI_IGNORE,
4557 CASE_CSI_IGNORE,
4558 /*      Agrave          Aacute          Acircumflex     Atilde          */
4559 CASE_GROUND_STATE,
4560 CASE_GROUND_STATE,
4561 CASE_GROUND_STATE,
4562 CASE_GROUND_STATE,
4563 /*      Adiaeresis      Aring           AE              Ccedilla        */
4564 CASE_GROUND_STATE,
4565 CASE_GROUND_STATE,
4566 CASE_GROUND_STATE,
4567 CASE_GROUND_STATE,
4568 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
4569 CASE_GROUND_STATE,
4570 CASE_GROUND_STATE,
4571 CASE_GROUND_STATE,
4572 CASE_GROUND_STATE,
4573 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
4574 CASE_GROUND_STATE,
4575 CASE_GROUND_STATE,
4576 CASE_GROUND_STATE,
4577 CASE_GROUND_STATE,
4578 /*      Eth             Ntilde          Ograve          Oacute          */
4579 CASE_GROUND_STATE,
4580 CASE_GROUND_STATE,
4581 CASE_GROUND_STATE,
4582 CASE_GROUND_STATE,
4583 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
4584 CASE_GROUND_STATE,
4585 CASE_GROUND_STATE,
4586 CASE_GROUND_STATE,
4587 CASE_GROUND_STATE,
4588 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
4589 CASE_GROUND_STATE,
4590 CASE_GROUND_STATE,
4591 CASE_GROUND_STATE,
4592 CASE_GROUND_STATE,
4593 /*      Udiaeresis      Yacute          Thorn           ssharp          */
4594 CASE_GROUND_STATE,
4595 CASE_GROUND_STATE,
4596 CASE_GROUND_STATE,
4597 CASE_GROUND_STATE,
4598 /*      agrave          aacute          acircumflex     atilde          */
4599 CASE_GROUND_STATE,
4600 CASE_GROUND_STATE,
4601 CASE_GROUND_STATE,
4602 CASE_DECRPTUI,
4603 /*      adiaeresis      aring           ae              ccedilla        */
4604 CASE_GROUND_STATE,
4605 CASE_GROUND_STATE,
4606 CASE_GROUND_STATE,
4607 CASE_GROUND_STATE,
4608 /*      egrave          eacute          ecircumflex     ediaeresis      */
4609 CASE_GROUND_STATE,
4610 CASE_GROUND_STATE,
4611 CASE_GROUND_STATE,
4612 CASE_GROUND_STATE,
4613 /*      igrave          iacute          icircumflex     idiaeresis      */
4614 CASE_GROUND_STATE,
4615 CASE_GROUND_STATE,
4616 CASE_GROUND_STATE,
4617 CASE_GROUND_STATE,
4618 /*      eth             ntilde          ograve          oacute          */
4619 CASE_GROUND_STATE,
4620 CASE_GROUND_STATE,
4621 CASE_GROUND_STATE,
4622 CASE_GROUND_STATE,
4623 /*      ocircumflex     otilde          odiaeresis      division        */
4624 CASE_GROUND_STATE,
4625 CASE_GROUND_STATE,
4626 CASE_GROUND_STATE,
4627 CASE_GROUND_STATE,
4628 /*      oslash          ugrave          uacute          ucircumflex     */
4629 CASE_GROUND_STATE,
4630 CASE_GROUND_STATE,
4631 CASE_GROUND_STATE,
4632 CASE_GROUND_STATE,
4633 /*      udiaeresis      yacute          thorn           ydiaeresis      */
4634 CASE_GROUND_STATE,
4635 CASE_GROUND_STATE,
4636 CASE_GROUND_STATE,
4637 CASE_IGNORE,
4638 };
4639 
4640 Const PARSE_T cigtable[] =		/* CASE_CSI_IGNORE */
4641 {
4642 /*	NUL		SOH		STX		ETX	*/
4643 CASE_IGNORE,
4644 CASE_IGNORE,
4645 CASE_IGNORE,
4646 CASE_IGNORE,
4647 /*	EOT		ENQ		ACK		BEL	*/
4648 CASE_IGNORE,
4649 CASE_ENQ,
4650 CASE_IGNORE,
4651 CASE_BELL,
4652 /*	BS		HT		NL		VT	*/
4653 CASE_BS,
4654 CASE_TAB,
4655 CASE_VMOT,
4656 CASE_VMOT,
4657 /*	FF		CR		SO		SI	*/
4658 CASE_VMOT,
4659 CASE_CR,
4660 CASE_SO,
4661 CASE_SI,
4662 /*	DLE		DC1		DC2		DC3	*/
4663 CASE_IGNORE,
4664 CASE_IGNORE,
4665 CASE_IGNORE,
4666 CASE_IGNORE,
4667 /*	DC4		NAK		SYN		ETB	*/
4668 CASE_IGNORE,
4669 CASE_IGNORE,
4670 CASE_IGNORE,
4671 CASE_IGNORE,
4672 /*	CAN		EM		SUB		ESC	*/
4673 CASE_GROUND_STATE,
4674 CASE_IGNORE,
4675 CASE_GROUND_STATE,
4676 CASE_ESC,
4677 /*	FS		GS		RS		US	*/
4678 CASE_IGNORE,
4679 CASE_IGNORE,
4680 CASE_IGNORE,
4681 CASE_IGNORE,
4682 /*	SP		!		"		#	*/
4683 CASE_IGNORE,
4684 CASE_IGNORE,
4685 CASE_IGNORE,
4686 CASE_IGNORE,
4687 /*	$		%		&		'	*/
4688 CASE_IGNORE,
4689 CASE_IGNORE,
4690 CASE_IGNORE,
4691 CASE_IGNORE,
4692 /*	(		)		*		+	*/
4693 CASE_IGNORE,
4694 CASE_IGNORE,
4695 CASE_IGNORE,
4696 CASE_IGNORE,
4697 /*	,		-		.		/	*/
4698 CASE_IGNORE,
4699 CASE_IGNORE,
4700 CASE_IGNORE,
4701 CASE_IGNORE,
4702 /*	0		1		2		3	*/
4703 CASE_IGNORE,
4704 CASE_IGNORE,
4705 CASE_IGNORE,
4706 CASE_IGNORE,
4707 /*	4		5		6		7	*/
4708 CASE_IGNORE,
4709 CASE_IGNORE,
4710 CASE_IGNORE,
4711 CASE_IGNORE,
4712 /*	8		9		:		;	*/
4713 CASE_IGNORE,
4714 CASE_IGNORE,
4715 CASE_IGNORE,
4716 CASE_IGNORE,
4717 /*	<		=		>		?	*/
4718 CASE_IGNORE,
4719 CASE_IGNORE,
4720 CASE_IGNORE,
4721 CASE_IGNORE,
4722 /*	@		A		B		C	*/
4723 CASE_GROUND_STATE,
4724 CASE_GROUND_STATE,
4725 CASE_GROUND_STATE,
4726 CASE_GROUND_STATE,
4727 /*	D		E		F		G	*/
4728 CASE_GROUND_STATE,
4729 CASE_GROUND_STATE,
4730 CASE_GROUND_STATE,
4731 CASE_GROUND_STATE,
4732 /*	H		I		J		K	*/
4733 CASE_GROUND_STATE,
4734 CASE_GROUND_STATE,
4735 CASE_GROUND_STATE,
4736 CASE_GROUND_STATE,
4737 /*	L		M		N		O	*/
4738 CASE_GROUND_STATE,
4739 CASE_GROUND_STATE,
4740 CASE_GROUND_STATE,
4741 CASE_GROUND_STATE,
4742 /*	P		Q		R		S	*/
4743 CASE_GROUND_STATE,
4744 CASE_GROUND_STATE,
4745 CASE_GROUND_STATE,
4746 CASE_GROUND_STATE,
4747 /*	T		U		V		W	*/
4748 CASE_GROUND_STATE,
4749 CASE_GROUND_STATE,
4750 CASE_GROUND_STATE,
4751 CASE_GROUND_STATE,
4752 /*	X		Y		Z		[	*/
4753 CASE_GROUND_STATE,
4754 CASE_GROUND_STATE,
4755 CASE_GROUND_STATE,
4756 CASE_GROUND_STATE,
4757 /*	\		]		^		_	*/
4758 CASE_GROUND_STATE,
4759 CASE_GROUND_STATE,
4760 CASE_GROUND_STATE,
4761 CASE_GROUND_STATE,
4762 /*	`		a		b		c	*/
4763 CASE_GROUND_STATE,
4764 CASE_GROUND_STATE,
4765 CASE_GROUND_STATE,
4766 CASE_GROUND_STATE,
4767 /*	d		e		f		g	*/
4768 CASE_GROUND_STATE,
4769 CASE_GROUND_STATE,
4770 CASE_GROUND_STATE,
4771 CASE_GROUND_STATE,
4772 /*	h		i		j		k	*/
4773 CASE_GROUND_STATE,
4774 CASE_GROUND_STATE,
4775 CASE_GROUND_STATE,
4776 CASE_GROUND_STATE,
4777 /*	l		m		n		o	*/
4778 CASE_GROUND_STATE,
4779 CASE_GROUND_STATE,
4780 CASE_GROUND_STATE,
4781 CASE_GROUND_STATE,
4782 /*	p		q		r		s	*/
4783 CASE_GROUND_STATE,
4784 CASE_GROUND_STATE,
4785 CASE_GROUND_STATE,
4786 CASE_GROUND_STATE,
4787 /*	t		u		v		w	*/
4788 CASE_GROUND_STATE,
4789 CASE_GROUND_STATE,
4790 CASE_GROUND_STATE,
4791 CASE_GROUND_STATE,
4792 /*	x		y		z		{	*/
4793 CASE_GROUND_STATE,
4794 CASE_GROUND_STATE,
4795 CASE_GROUND_STATE,
4796 CASE_GROUND_STATE,
4797 /*	|		}		~		DEL	*/
4798 CASE_GROUND_STATE,
4799 CASE_GROUND_STATE,
4800 CASE_GROUND_STATE,
4801 CASE_IGNORE,
4802 /*      0x80            0x81            0x82            0x83    */
4803 CASE_GROUND_STATE,
4804 CASE_GROUND_STATE,
4805 CASE_GROUND_STATE,
4806 CASE_GROUND_STATE,
4807 /*      0x84            0x85            0x86            0x87    */
4808 CASE_IND,
4809 CASE_NEL,
4810 CASE_GROUND_STATE,
4811 CASE_GROUND_STATE,
4812 /*      0x88            0x89            0x8a            0x8b    */
4813 CASE_HTS,
4814 CASE_GROUND_STATE,
4815 CASE_GROUND_STATE,
4816 CASE_GROUND_STATE,
4817 /*      0x8c            0x8d            0x8e            0x8f    */
4818 CASE_GROUND_STATE,
4819 CASE_RI,
4820 CASE_SS2,
4821 CASE_SS3,
4822 /*      0x90            0x91            0x92            0x93    */
4823 CASE_DCS,
4824 CASE_GROUND_STATE,
4825 CASE_GROUND_STATE,
4826 CASE_GROUND_STATE,
4827 /*      0x94            0x95            0x96            0x97    */
4828 CASE_GROUND_STATE,
4829 CASE_GROUND_STATE,
4830 CASE_SPA,
4831 CASE_EPA,
4832 /*      0x98            0x99            0x9a            0x9b    */
4833 CASE_SOS,
4834 CASE_GROUND_STATE,
4835 CASE_DECID,
4836 CASE_CSI_STATE,
4837 /*      0x9c            0x9d            0x9e            0x9f    */
4838 CASE_ST,
4839 CASE_OSC,
4840 CASE_PM,
4841 CASE_APC,
4842 /*      nobreakspace    exclamdown      cent            sterling        */
4843 CASE_IGNORE,
4844 CASE_IGNORE,
4845 CASE_IGNORE,
4846 CASE_IGNORE,
4847 /*      currency        yen             brokenbar       section         */
4848 CASE_IGNORE,
4849 CASE_IGNORE,
4850 CASE_IGNORE,
4851 CASE_IGNORE,
4852 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
4853 CASE_IGNORE,
4854 CASE_IGNORE,
4855 CASE_IGNORE,
4856 CASE_IGNORE,
4857 /*      notsign         hyphen          registered      macron          */
4858 CASE_IGNORE,
4859 CASE_IGNORE,
4860 CASE_IGNORE,
4861 CASE_IGNORE,
4862 /*      degree          plusminus       twosuperior     threesuperior   */
4863 CASE_IGNORE,
4864 CASE_IGNORE,
4865 CASE_IGNORE,
4866 CASE_IGNORE,
4867 /*      acute           mu              paragraph       periodcentered  */
4868 CASE_IGNORE,
4869 CASE_IGNORE,
4870 CASE_IGNORE,
4871 CASE_IGNORE,
4872 /*      cedilla         onesuperior     masculine       guillemotright  */
4873 CASE_IGNORE,
4874 CASE_IGNORE,
4875 CASE_IGNORE,
4876 CASE_IGNORE,
4877 /*      onequarter      onehalf         threequarters   questiondown    */
4878 CASE_IGNORE,
4879 CASE_IGNORE,
4880 CASE_IGNORE,
4881 CASE_IGNORE,
4882 /*      Agrave          Aacute          Acircumflex     Atilde          */
4883 CASE_GROUND_STATE,
4884 CASE_GROUND_STATE,
4885 CASE_GROUND_STATE,
4886 CASE_GROUND_STATE,
4887 /*      Adiaeresis      Aring           AE              Ccedilla        */
4888 CASE_GROUND_STATE,
4889 CASE_GROUND_STATE,
4890 CASE_GROUND_STATE,
4891 CASE_GROUND_STATE,
4892 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
4893 CASE_GROUND_STATE,
4894 CASE_GROUND_STATE,
4895 CASE_GROUND_STATE,
4896 CASE_GROUND_STATE,
4897 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
4898 CASE_GROUND_STATE,
4899 CASE_GROUND_STATE,
4900 CASE_GROUND_STATE,
4901 CASE_GROUND_STATE,
4902 /*      Eth             Ntilde          Ograve          Oacute          */
4903 CASE_GROUND_STATE,
4904 CASE_GROUND_STATE,
4905 CASE_GROUND_STATE,
4906 CASE_GROUND_STATE,
4907 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
4908 CASE_GROUND_STATE,
4909 CASE_GROUND_STATE,
4910 CASE_GROUND_STATE,
4911 CASE_GROUND_STATE,
4912 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
4913 CASE_GROUND_STATE,
4914 CASE_GROUND_STATE,
4915 CASE_GROUND_STATE,
4916 CASE_GROUND_STATE,
4917 /*      Udiaeresis      Yacute          Thorn           ssharp          */
4918 CASE_GROUND_STATE,
4919 CASE_GROUND_STATE,
4920 CASE_GROUND_STATE,
4921 CASE_GROUND_STATE,
4922 /*      agrave          aacute          acircumflex     atilde          */
4923 CASE_GROUND_STATE,
4924 CASE_GROUND_STATE,
4925 CASE_GROUND_STATE,
4926 CASE_GROUND_STATE,
4927 /*      adiaeresis      aring           ae              ccedilla        */
4928 CASE_GROUND_STATE,
4929 CASE_GROUND_STATE,
4930 CASE_GROUND_STATE,
4931 CASE_GROUND_STATE,
4932 /*      egrave          eacute          ecircumflex     ediaeresis      */
4933 CASE_GROUND_STATE,
4934 CASE_GROUND_STATE,
4935 CASE_GROUND_STATE,
4936 CASE_GROUND_STATE,
4937 /*      igrave          iacute          icircumflex     idiaeresis      */
4938 CASE_GROUND_STATE,
4939 CASE_GROUND_STATE,
4940 CASE_GROUND_STATE,
4941 CASE_GROUND_STATE,
4942 /*      eth             ntilde          ograve          oacute          */
4943 CASE_GROUND_STATE,
4944 CASE_GROUND_STATE,
4945 CASE_GROUND_STATE,
4946 CASE_GROUND_STATE,
4947 /*      ocircumflex     otilde          odiaeresis      division        */
4948 CASE_GROUND_STATE,
4949 CASE_GROUND_STATE,
4950 CASE_GROUND_STATE,
4951 CASE_GROUND_STATE,
4952 /*      oslash          ugrave          uacute          ucircumflex     */
4953 CASE_GROUND_STATE,
4954 CASE_GROUND_STATE,
4955 CASE_GROUND_STATE,
4956 CASE_GROUND_STATE,
4957 /*      udiaeresis      yacute          thorn           ydiaeresis      */
4958 CASE_GROUND_STATE,
4959 CASE_GROUND_STATE,
4960 CASE_GROUND_STATE,
4961 CASE_IGNORE,
4962 };
4963 
4964 Const PARSE_T eigtable[] =		/* CASE_ESC_IGNORE */
4965 {
4966 /*	NUL		SOH		STX		ETX	*/
4967 CASE_IGNORE,
4968 CASE_IGNORE,
4969 CASE_IGNORE,
4970 CASE_IGNORE,
4971 /*	EOT		ENQ		ACK		BEL	*/
4972 CASE_IGNORE,
4973 CASE_ENQ,
4974 CASE_IGNORE,
4975 CASE_BELL,
4976 /*	BS		HT		NL		VT	*/
4977 CASE_BS,
4978 CASE_TAB,
4979 CASE_VMOT,
4980 CASE_VMOT,
4981 /*	FF		CR		SO		SI	*/
4982 CASE_VMOT,
4983 CASE_CR,
4984 CASE_SO,
4985 CASE_SI,
4986 /*	DLE		DC1		DC2		DC3	*/
4987 CASE_IGNORE,
4988 CASE_IGNORE,
4989 CASE_IGNORE,
4990 CASE_IGNORE,
4991 /*	DC4		NAK		SYN		ETB	*/
4992 CASE_IGNORE,
4993 CASE_IGNORE,
4994 CASE_IGNORE,
4995 CASE_IGNORE,
4996 /*	CAN		EM		SUB		ESC	*/
4997 CASE_GROUND_STATE,
4998 CASE_IGNORE,
4999 CASE_GROUND_STATE,
5000 CASE_ESC,
5001 /*	FS		GS		RS		US	*/
5002 CASE_IGNORE,
5003 CASE_IGNORE,
5004 CASE_IGNORE,
5005 CASE_IGNORE,
5006 /*	SP		!		"		#	*/
5007 CASE_IGNORE,
5008 CASE_IGNORE,
5009 CASE_IGNORE,
5010 CASE_IGNORE,
5011 /*	$		%		&		'	*/
5012 CASE_IGNORE,
5013 CASE_IGNORE,
5014 CASE_IGNORE,
5015 CASE_IGNORE,
5016 /*	(		)		*		+	*/
5017 CASE_IGNORE,
5018 CASE_IGNORE,
5019 CASE_IGNORE,
5020 CASE_IGNORE,
5021 /*	,		-		.		/	*/
5022 CASE_IGNORE,
5023 CASE_IGNORE,
5024 CASE_IGNORE,
5025 CASE_IGNORE,
5026 /*	0		1		2		3	*/
5027 CASE_GROUND_STATE,
5028 CASE_GROUND_STATE,
5029 CASE_GROUND_STATE,
5030 CASE_GROUND_STATE,
5031 /*	4		5		6		7	*/
5032 CASE_GROUND_STATE,
5033 CASE_GROUND_STATE,
5034 CASE_GROUND_STATE,
5035 CASE_GROUND_STATE,
5036 /*	8		9		:		;	*/
5037 CASE_GROUND_STATE,
5038 CASE_GROUND_STATE,
5039 CASE_GROUND_STATE,
5040 CASE_GROUND_STATE,
5041 /*	<		=		>		?	*/
5042 CASE_GROUND_STATE,
5043 CASE_GROUND_STATE,
5044 CASE_GROUND_STATE,
5045 CASE_GROUND_STATE,
5046 /*	@		A		B		C	*/
5047 CASE_GROUND_STATE,
5048 CASE_GROUND_STATE,
5049 CASE_GROUND_STATE,
5050 CASE_GROUND_STATE,
5051 /*	D		E		F		G	*/
5052 CASE_GROUND_STATE,
5053 CASE_GROUND_STATE,
5054 CASE_GROUND_STATE,
5055 CASE_GROUND_STATE,
5056 /*	H		I		J		K	*/
5057 CASE_GROUND_STATE,
5058 CASE_GROUND_STATE,
5059 CASE_GROUND_STATE,
5060 CASE_GROUND_STATE,
5061 /*	L		M		N		O	*/
5062 CASE_GROUND_STATE,
5063 CASE_GROUND_STATE,
5064 CASE_GROUND_STATE,
5065 CASE_GROUND_STATE,
5066 /*	P		Q		R		S	*/
5067 CASE_GROUND_STATE,
5068 CASE_GROUND_STATE,
5069 CASE_GROUND_STATE,
5070 CASE_GROUND_STATE,
5071 /*	T		U		V		W	*/
5072 CASE_GROUND_STATE,
5073 CASE_GROUND_STATE,
5074 CASE_GROUND_STATE,
5075 CASE_GROUND_STATE,
5076 /*	X		Y		Z		[	*/
5077 CASE_GROUND_STATE,
5078 CASE_GROUND_STATE,
5079 CASE_GROUND_STATE,
5080 CASE_GROUND_STATE,
5081 /*	\		]		^		_	*/
5082 CASE_GROUND_STATE,
5083 CASE_GROUND_STATE,
5084 CASE_GROUND_STATE,
5085 CASE_GROUND_STATE,
5086 /*	`		a		b		c	*/
5087 CASE_GROUND_STATE,
5088 CASE_GROUND_STATE,
5089 CASE_GROUND_STATE,
5090 CASE_GROUND_STATE,
5091 /*	d		e		f		g	*/
5092 CASE_GROUND_STATE,
5093 CASE_GROUND_STATE,
5094 CASE_GROUND_STATE,
5095 CASE_GROUND_STATE,
5096 /*	h		i		j		k	*/
5097 CASE_GROUND_STATE,
5098 CASE_GROUND_STATE,
5099 CASE_GROUND_STATE,
5100 CASE_GROUND_STATE,
5101 /*	l		m		n		o	*/
5102 CASE_GROUND_STATE,
5103 CASE_GROUND_STATE,
5104 CASE_GROUND_STATE,
5105 CASE_GROUND_STATE,
5106 /*	p		q		r		s	*/
5107 CASE_GROUND_STATE,
5108 CASE_GROUND_STATE,
5109 CASE_GROUND_STATE,
5110 CASE_GROUND_STATE,
5111 /*	t		u		v		w	*/
5112 CASE_GROUND_STATE,
5113 CASE_GROUND_STATE,
5114 CASE_GROUND_STATE,
5115 CASE_GROUND_STATE,
5116 /*	x		y		z		{	*/
5117 CASE_GROUND_STATE,
5118 CASE_GROUND_STATE,
5119 CASE_GROUND_STATE,
5120 CASE_GROUND_STATE,
5121 /*	|		}		~		DEL	*/
5122 CASE_GROUND_STATE,
5123 CASE_GROUND_STATE,
5124 CASE_GROUND_STATE,
5125 CASE_IGNORE,
5126 /*      0x80            0x81            0x82            0x83    */
5127 CASE_GROUND_STATE,
5128 CASE_GROUND_STATE,
5129 CASE_GROUND_STATE,
5130 CASE_GROUND_STATE,
5131 /*      0x84            0x85            0x86            0x87    */
5132 CASE_IND,
5133 CASE_NEL,
5134 CASE_GROUND_STATE,
5135 CASE_GROUND_STATE,
5136 /*      0x88            0x89            0x8a            0x8b    */
5137 CASE_HTS,
5138 CASE_GROUND_STATE,
5139 CASE_GROUND_STATE,
5140 CASE_GROUND_STATE,
5141 /*      0x8c            0x8d            0x8e            0x8f    */
5142 CASE_GROUND_STATE,
5143 CASE_RI,
5144 CASE_SS2,
5145 CASE_SS3,
5146 /*      0x90            0x91            0x92            0x93    */
5147 CASE_DCS,
5148 CASE_GROUND_STATE,
5149 CASE_GROUND_STATE,
5150 CASE_GROUND_STATE,
5151 /*      0x94            0x95            0x96            0x97    */
5152 CASE_GROUND_STATE,
5153 CASE_GROUND_STATE,
5154 CASE_SPA,
5155 CASE_EPA,
5156 /*      0x98            0x99            0x9a            0x9b    */
5157 CASE_SOS,
5158 CASE_GROUND_STATE,
5159 CASE_DECID,
5160 CASE_CSI_STATE,
5161 /*      0x9c            0x9d            0x9e            0x9f    */
5162 CASE_ST,
5163 CASE_OSC,
5164 CASE_PM,
5165 CASE_APC,
5166 /*      nobreakspace    exclamdown      cent            sterling        */
5167 CASE_IGNORE,
5168 CASE_IGNORE,
5169 CASE_IGNORE,
5170 CASE_IGNORE,
5171 /*      currency        yen             brokenbar       section         */
5172 CASE_IGNORE,
5173 CASE_IGNORE,
5174 CASE_IGNORE,
5175 CASE_IGNORE,
5176 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
5177 CASE_IGNORE,
5178 CASE_IGNORE,
5179 CASE_IGNORE,
5180 CASE_IGNORE,
5181 /*      notsign         hyphen          registered      macron          */
5182 CASE_IGNORE,
5183 CASE_IGNORE,
5184 CASE_IGNORE,
5185 CASE_IGNORE,
5186 /*      degree          plusminus       twosuperior     threesuperior   */
5187 CASE_GROUND_STATE,
5188 CASE_GROUND_STATE,
5189 CASE_GROUND_STATE,
5190 CASE_GROUND_STATE,
5191 /*      acute           mu              paragraph       periodcentered  */
5192 CASE_GROUND_STATE,
5193 CASE_GROUND_STATE,
5194 CASE_GROUND_STATE,
5195 CASE_GROUND_STATE,
5196 /*      cedilla         onesuperior     masculine       guillemotright  */
5197 CASE_GROUND_STATE,
5198 CASE_GROUND_STATE,
5199 CASE_GROUND_STATE,
5200 CASE_GROUND_STATE,
5201 /*      onequarter      onehalf         threequarters   questiondown    */
5202 CASE_GROUND_STATE,
5203 CASE_GROUND_STATE,
5204 CASE_GROUND_STATE,
5205 CASE_GROUND_STATE,
5206 /*      Agrave          Aacute          Acircumflex     Atilde          */
5207 CASE_GROUND_STATE,
5208 CASE_GROUND_STATE,
5209 CASE_GROUND_STATE,
5210 CASE_GROUND_STATE,
5211 /*      Adiaeresis      Aring           AE              Ccedilla        */
5212 CASE_GROUND_STATE,
5213 CASE_GROUND_STATE,
5214 CASE_GROUND_STATE,
5215 CASE_GROUND_STATE,
5216 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
5217 CASE_GROUND_STATE,
5218 CASE_GROUND_STATE,
5219 CASE_GROUND_STATE,
5220 CASE_GROUND_STATE,
5221 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
5222 CASE_GROUND_STATE,
5223 CASE_GROUND_STATE,
5224 CASE_GROUND_STATE,
5225 CASE_GROUND_STATE,
5226 /*      Eth             Ntilde          Ograve          Oacute          */
5227 CASE_GROUND_STATE,
5228 CASE_GROUND_STATE,
5229 CASE_GROUND_STATE,
5230 CASE_GROUND_STATE,
5231 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
5232 CASE_GROUND_STATE,
5233 CASE_GROUND_STATE,
5234 CASE_GROUND_STATE,
5235 CASE_GROUND_STATE,
5236 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
5237 CASE_GROUND_STATE,
5238 CASE_GROUND_STATE,
5239 CASE_GROUND_STATE,
5240 CASE_GROUND_STATE,
5241 /*      Udiaeresis      Yacute          Thorn           ssharp          */
5242 CASE_GROUND_STATE,
5243 CASE_GROUND_STATE,
5244 CASE_GROUND_STATE,
5245 CASE_GROUND_STATE,
5246 /*      agrave          aacute          acircumflex     atilde          */
5247 CASE_GROUND_STATE,
5248 CASE_GROUND_STATE,
5249 CASE_GROUND_STATE,
5250 CASE_GROUND_STATE,
5251 /*      adiaeresis      aring           ae              ccedilla        */
5252 CASE_GROUND_STATE,
5253 CASE_GROUND_STATE,
5254 CASE_GROUND_STATE,
5255 CASE_GROUND_STATE,
5256 /*      egrave          eacute          ecircumflex     ediaeresis      */
5257 CASE_GROUND_STATE,
5258 CASE_GROUND_STATE,
5259 CASE_GROUND_STATE,
5260 CASE_GROUND_STATE,
5261 /*      igrave          iacute          icircumflex     idiaeresis      */
5262 CASE_GROUND_STATE,
5263 CASE_GROUND_STATE,
5264 CASE_GROUND_STATE,
5265 CASE_GROUND_STATE,
5266 /*      eth             ntilde          ograve          oacute          */
5267 CASE_GROUND_STATE,
5268 CASE_GROUND_STATE,
5269 CASE_GROUND_STATE,
5270 CASE_GROUND_STATE,
5271 /*      ocircumflex     otilde          odiaeresis      division        */
5272 CASE_GROUND_STATE,
5273 CASE_GROUND_STATE,
5274 CASE_GROUND_STATE,
5275 CASE_GROUND_STATE,
5276 /*      oslash          ugrave          uacute          ucircumflex     */
5277 CASE_GROUND_STATE,
5278 CASE_GROUND_STATE,
5279 CASE_GROUND_STATE,
5280 CASE_GROUND_STATE,
5281 /*      udiaeresis      yacute          thorn           ydiaeresis      */
5282 CASE_GROUND_STATE,
5283 CASE_GROUND_STATE,
5284 CASE_GROUND_STATE,
5285 CASE_IGNORE,
5286 };
5287 
5288 Const PARSE_T esc_table[] =		/* ESC */
5289 {
5290 /*	NUL		SOH		STX		ETX	*/
5291 CASE_IGNORE,
5292 CASE_IGNORE,
5293 CASE_IGNORE,
5294 CASE_IGNORE,
5295 /*	EOT		ENQ		ACK		BEL	*/
5296 CASE_IGNORE,
5297 CASE_ENQ,
5298 CASE_IGNORE,
5299 CASE_BELL,
5300 /*	BS		HT		NL		VT	*/
5301 CASE_BS,
5302 CASE_TAB,
5303 CASE_VMOT,
5304 CASE_VMOT,
5305 /*	FF		CR		SO		SI	*/
5306 CASE_VMOT,
5307 CASE_CR,
5308 CASE_SO,
5309 CASE_SI,
5310 /*	DLE		DC1		DC2		DC3	*/
5311 CASE_IGNORE,
5312 CASE_IGNORE,
5313 CASE_IGNORE,
5314 CASE_IGNORE,
5315 /*	DC4		NAK		SYN		ETB	*/
5316 CASE_IGNORE,
5317 CASE_IGNORE,
5318 CASE_IGNORE,
5319 CASE_IGNORE,
5320 /*	CAN		EM		SUB		ESC	*/
5321 CASE_GROUND_STATE,
5322 CASE_IGNORE,
5323 CASE_GROUND_STATE,
5324 CASE_ESC,
5325 /*	FS		GS		RS		US	*/
5326 CASE_IGNORE,
5327 CASE_IGNORE,
5328 CASE_IGNORE,
5329 CASE_IGNORE,
5330 /*	SP		!		"		#	*/
5331 CASE_ESC_SP_STATE,
5332 CASE_ESC_IGNORE,
5333 CASE_ESC_IGNORE,
5334 CASE_SCR_STATE,
5335 /*	$		%		&		'	*/
5336 CASE_ESC_IGNORE,
5337 CASE_ESC_PERCENT,
5338 CASE_ESC_IGNORE,
5339 CASE_ESC_IGNORE,
5340 /*	(		)		*		+	*/
5341 CASE_SCS0_STATE,
5342 CASE_SCS1_STATE,
5343 CASE_SCS2_STATE,
5344 CASE_SCS3_STATE,
5345 /*	,		-		.		/	*/
5346 CASE_ESC_IGNORE,
5347 CASE_SCS1A_STATE,
5348 CASE_SCS2A_STATE,
5349 CASE_SCS3A_STATE,
5350 /*	0		1		2		3	*/
5351 CASE_GROUND_STATE,
5352 CASE_GROUND_STATE,
5353 CASE_GROUND_STATE,
5354 CASE_GROUND_STATE,
5355 /*	4		5		6		7	*/
5356 CASE_GROUND_STATE,
5357 CASE_GROUND_STATE,
5358 CASE_DECBI,
5359 CASE_DECSC,
5360 /*	8		9		:		;	*/
5361 CASE_DECRC,
5362 CASE_DECFI,
5363 CASE_GROUND_STATE,
5364 CASE_GROUND_STATE,
5365 /*	<		=		>		?	*/
5366 CASE_GROUND_STATE,
5367 CASE_DECKPAM,
5368 CASE_DECKPNM,
5369 CASE_GROUND_STATE,
5370 /*	@		A		B		C	*/
5371 CASE_GROUND_STATE,
5372 CASE_GROUND_STATE,
5373 CASE_GROUND_STATE,
5374 CASE_GROUND_STATE,
5375 /*	D		E		F		G	*/
5376 CASE_IND,
5377 CASE_NEL,
5378 CASE_HP_BUGGY_LL,
5379 CASE_GROUND_STATE,
5380 /*	H		I		J		K	*/
5381 CASE_HTS,
5382 CASE_GROUND_STATE,
5383 CASE_GROUND_STATE,
5384 CASE_GROUND_STATE,
5385 /*	L		M		N		O	*/
5386 CASE_GROUND_STATE,
5387 CASE_RI,
5388 CASE_SS2,
5389 CASE_SS3,
5390 /*	P		Q		R		S	*/
5391 CASE_DCS,
5392 CASE_GROUND_STATE,
5393 CASE_GROUND_STATE,
5394 CASE_GROUND_STATE,
5395 /*	T		U		V		W	*/
5396 CASE_GROUND_STATE,
5397 CASE_GROUND_STATE,
5398 CASE_SPA,
5399 CASE_EPA,
5400 /*	X		Y		Z		[	*/
5401 CASE_SOS,
5402 CASE_GROUND_STATE,
5403 CASE_DECID,
5404 CASE_CSI_STATE,
5405 /*	\		]		^		_	*/
5406 CASE_ST,
5407 CASE_OSC,
5408 CASE_PM,
5409 CASE_APC,
5410 /*	`		a		b		c	*/
5411 CASE_GROUND_STATE,
5412 CASE_GROUND_STATE,
5413 CASE_GROUND_STATE,
5414 CASE_RIS,
5415 /*	d		e		f		g	*/
5416 CASE_GROUND_STATE,
5417 CASE_GROUND_STATE,
5418 CASE_GROUND_STATE,
5419 CASE_GROUND_STATE,
5420 /*	h		i		j		k	*/
5421 CASE_GROUND_STATE,
5422 CASE_GROUND_STATE,
5423 CASE_GROUND_STATE,
5424 CASE_GROUND_STATE,
5425 /*	l		m		n		o	*/
5426 CASE_HP_MEM_LOCK,
5427 CASE_HP_MEM_UNLOCK,
5428 CASE_LS2,
5429 CASE_LS3,
5430 /*	p		q		r		s	*/
5431 CASE_GROUND_STATE,
5432 CASE_GROUND_STATE,
5433 CASE_GROUND_STATE,
5434 CASE_GROUND_STATE,
5435 /*	t		u		v		w	*/
5436 CASE_GROUND_STATE,
5437 CASE_GROUND_STATE,
5438 CASE_GROUND_STATE,
5439 CASE_GROUND_STATE,
5440 /*	x		y		z		{	*/
5441 CASE_GROUND_STATE,
5442 CASE_GROUND_STATE,
5443 CASE_GROUND_STATE,
5444 CASE_GROUND_STATE,
5445 /*	|		}		~		DEL	*/
5446 CASE_LS3R,
5447 CASE_LS2R,
5448 CASE_LS1R,
5449 CASE_IGNORE,
5450 /*      0x80            0x81            0x82            0x83    */
5451 CASE_GROUND_STATE,
5452 CASE_GROUND_STATE,
5453 CASE_GROUND_STATE,
5454 CASE_GROUND_STATE,
5455 /*      0x84            0x85            0x86            0x87    */
5456 CASE_IND,
5457 CASE_NEL,
5458 CASE_GROUND_STATE,
5459 CASE_GROUND_STATE,
5460 /*      0x88            0x89            0x8a            0x8b    */
5461 CASE_HTS,
5462 CASE_GROUND_STATE,
5463 CASE_GROUND_STATE,
5464 CASE_GROUND_STATE,
5465 /*      0x8c            0x8d            0x8e            0x8f    */
5466 CASE_GROUND_STATE,
5467 CASE_RI,
5468 CASE_SS2,
5469 CASE_SS3,
5470 /*      0x90            0x91            0x92            0x93    */
5471 CASE_DCS,
5472 CASE_GROUND_STATE,
5473 CASE_GROUND_STATE,
5474 CASE_GROUND_STATE,
5475 /*      0x94            0x95            0x96            0x97    */
5476 CASE_GROUND_STATE,
5477 CASE_GROUND_STATE,
5478 CASE_SPA,
5479 CASE_EPA,
5480 /*      0x98            0x99            0x9a            0x9b    */
5481 CASE_SOS,
5482 CASE_GROUND_STATE,
5483 CASE_DECID,
5484 CASE_CSI_STATE,
5485 /*      0x9c            0x9d            0x9e            0x9f    */
5486 CASE_ST,
5487 CASE_OSC,
5488 CASE_PM,
5489 CASE_APC,
5490 /*      nobreakspace    exclamdown      cent            sterling        */
5491 CASE_ESC_SP_STATE,
5492 CASE_ESC_IGNORE,
5493 CASE_ESC_IGNORE,
5494 CASE_SCR_STATE,
5495 /*      currency        yen             brokenbar       section         */
5496 CASE_ESC_IGNORE,
5497 CASE_ESC_PERCENT,
5498 CASE_ESC_IGNORE,
5499 CASE_ESC_IGNORE,
5500 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
5501 CASE_SCS0_STATE,
5502 CASE_SCS1_STATE,
5503 CASE_SCS2_STATE,
5504 CASE_SCS3_STATE,
5505 /*      notsign         hyphen          registered      macron          */
5506 CASE_ESC_IGNORE,
5507 CASE_SCS1A_STATE,
5508 CASE_SCS2A_STATE,
5509 CASE_SCS3A_STATE,
5510 /*      degree          plusminus       twosuperior     threesuperior   */
5511 CASE_GROUND_STATE,
5512 CASE_GROUND_STATE,
5513 CASE_GROUND_STATE,
5514 CASE_GROUND_STATE,
5515 /*      acute           mu              paragraph       periodcentered  */
5516 CASE_GROUND_STATE,
5517 CASE_GROUND_STATE,
5518 CASE_DECBI,
5519 CASE_DECSC,
5520 /*      cedilla         onesuperior     masculine       guillemotright  */
5521 CASE_DECRC,
5522 CASE_DECFI,
5523 CASE_GROUND_STATE,
5524 CASE_GROUND_STATE,
5525 /*      onequarter      onehalf         threequarters   questiondown    */
5526 CASE_GROUND_STATE,
5527 CASE_DECKPAM,
5528 CASE_DECKPNM,
5529 CASE_GROUND_STATE,
5530 /*      Agrave          Aacute          Acircumflex     Atilde          */
5531 CASE_GROUND_STATE,
5532 CASE_GROUND_STATE,
5533 CASE_GROUND_STATE,
5534 CASE_GROUND_STATE,
5535 /*      Adiaeresis      Aring           AE              Ccedilla        */
5536 CASE_IND,
5537 CASE_NEL,
5538 CASE_HP_BUGGY_LL,
5539 CASE_GROUND_STATE,
5540 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
5541 CASE_HTS,
5542 CASE_GROUND_STATE,
5543 CASE_GROUND_STATE,
5544 CASE_GROUND_STATE,
5545 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
5546 CASE_GROUND_STATE,
5547 CASE_RI,
5548 CASE_SS2,
5549 CASE_SS3,
5550 /*      Eth             Ntilde          Ograve          Oacute          */
5551 CASE_DCS,
5552 CASE_GROUND_STATE,
5553 CASE_GROUND_STATE,
5554 CASE_GROUND_STATE,
5555 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
5556 CASE_GROUND_STATE,
5557 CASE_GROUND_STATE,
5558 CASE_SPA,
5559 CASE_EPA,
5560 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
5561 CASE_SOS,
5562 CASE_GROUND_STATE,
5563 CASE_DECID,
5564 CASE_CSI_STATE,
5565 /*      Udiaeresis      Yacute          Thorn           ssharp          */
5566 CASE_ST,
5567 CASE_OSC,
5568 CASE_PM,
5569 CASE_APC,
5570 /*      agrave          aacute          acircumflex     atilde          */
5571 CASE_GROUND_STATE,
5572 CASE_GROUND_STATE,
5573 CASE_GROUND_STATE,
5574 CASE_RIS,
5575 /*      adiaeresis      aring           ae              ccedilla        */
5576 CASE_GROUND_STATE,
5577 CASE_GROUND_STATE,
5578 CASE_GROUND_STATE,
5579 CASE_GROUND_STATE,
5580 /*      egrave          eacute          ecircumflex     ediaeresis      */
5581 CASE_GROUND_STATE,
5582 CASE_GROUND_STATE,
5583 CASE_GROUND_STATE,
5584 CASE_GROUND_STATE,
5585 /*      igrave          iacute          icircumflex     idiaeresis      */
5586 CASE_HP_MEM_LOCK,
5587 CASE_HP_MEM_UNLOCK,
5588 CASE_LS2,
5589 CASE_LS3,
5590 /*      eth             ntilde          ograve          oacute          */
5591 CASE_GROUND_STATE,
5592 CASE_GROUND_STATE,
5593 CASE_GROUND_STATE,
5594 CASE_GROUND_STATE,
5595 /*      ocircumflex     otilde          odiaeresis      division        */
5596 CASE_GROUND_STATE,
5597 CASE_GROUND_STATE,
5598 CASE_GROUND_STATE,
5599 CASE_GROUND_STATE,
5600 /*      oslash          ugrave          uacute          ucircumflex     */
5601 CASE_GROUND_STATE,
5602 CASE_GROUND_STATE,
5603 CASE_GROUND_STATE,
5604 CASE_GROUND_STATE,
5605 /*      udiaeresis      yacute          thorn           ydiaeresis      */
5606 CASE_LS3R,
5607 CASE_LS2R,
5608 CASE_LS1R,
5609 CASE_IGNORE,
5610 };
5611 
5612 Const PARSE_T esc_sp_table[] =		/* ESC SP */
5613 {
5614 /*	NUL		SOH		STX		ETX	*/
5615 CASE_IGNORE,
5616 CASE_IGNORE,
5617 CASE_IGNORE,
5618 CASE_IGNORE,
5619 /*	EOT		ENQ		ACK		BEL	*/
5620 CASE_IGNORE,
5621 CASE_ENQ,
5622 CASE_IGNORE,
5623 CASE_BELL,
5624 /*	BS		HT		NL		VT	*/
5625 CASE_BS,
5626 CASE_TAB,
5627 CASE_VMOT,
5628 CASE_VMOT,
5629 /*	FF		CR		SO		SI	*/
5630 CASE_VMOT,
5631 CASE_CR,
5632 CASE_SO,
5633 CASE_SI,
5634 /*	DLE		DC1		DC2		DC3	*/
5635 CASE_IGNORE,
5636 CASE_IGNORE,
5637 CASE_IGNORE,
5638 CASE_IGNORE,
5639 /*	DC4		NAK		SYN		ETB	*/
5640 CASE_IGNORE,
5641 CASE_IGNORE,
5642 CASE_IGNORE,
5643 CASE_IGNORE,
5644 /*	CAN		EM		SUB		ESC	*/
5645 CASE_GROUND_STATE,
5646 CASE_IGNORE,
5647 CASE_GROUND_STATE,
5648 CASE_ESC,
5649 /*	FS		GS		RS		US	*/
5650 CASE_IGNORE,
5651 CASE_IGNORE,
5652 CASE_IGNORE,
5653 CASE_IGNORE,
5654 /*	SP		!		"		#	*/
5655 CASE_ESC_IGNORE,
5656 CASE_ESC_IGNORE,
5657 CASE_ESC_IGNORE,
5658 CASE_ESC_IGNORE,
5659 /*	$		%		&		'	*/
5660 CASE_ESC_IGNORE,
5661 CASE_ESC_IGNORE,
5662 CASE_ESC_IGNORE,
5663 CASE_ESC_IGNORE,
5664 /*	(		)		*		+	*/
5665 CASE_ESC_IGNORE,
5666 CASE_ESC_IGNORE,
5667 CASE_ESC_IGNORE,
5668 CASE_ESC_IGNORE,
5669 /*	,		-		.		/	*/
5670 CASE_ESC_IGNORE,
5671 CASE_ESC_IGNORE,
5672 CASE_ESC_IGNORE,
5673 CASE_ESC_IGNORE,
5674 /*	0		1		2		3	*/
5675 CASE_GROUND_STATE,
5676 CASE_GROUND_STATE,
5677 CASE_GROUND_STATE,
5678 CASE_GROUND_STATE,
5679 /*	4		5		6		7	*/
5680 CASE_GROUND_STATE,
5681 CASE_GROUND_STATE,
5682 CASE_GROUND_STATE,
5683 CASE_GROUND_STATE,
5684 /*	8		9		:		;	*/
5685 CASE_GROUND_STATE,
5686 CASE_GROUND_STATE,
5687 CASE_GROUND_STATE,
5688 CASE_GROUND_STATE,
5689 /*	<		=		>		?	*/
5690 CASE_GROUND_STATE,
5691 CASE_GROUND_STATE,
5692 CASE_GROUND_STATE,
5693 CASE_GROUND_STATE,
5694 /*	@		A		B		C	*/
5695 CASE_GROUND_STATE,
5696 CASE_GROUND_STATE,
5697 CASE_GROUND_STATE,
5698 CASE_GROUND_STATE,
5699 /*	D		E		F		G	*/
5700 CASE_GROUND_STATE,
5701 CASE_GROUND_STATE,
5702 CASE_S7C1T,
5703 CASE_S8C1T,
5704 /*	H		I		J		K	*/
5705 CASE_GROUND_STATE,
5706 CASE_GROUND_STATE,
5707 CASE_GROUND_STATE,
5708 CASE_GROUND_STATE,
5709 /*	L		M		N		O	*/
5710 CASE_ANSI_LEVEL_1,
5711 CASE_ANSI_LEVEL_2,
5712 CASE_ANSI_LEVEL_3,
5713 CASE_GROUND_STATE,
5714 /*	P		Q		R		S	*/
5715 CASE_GROUND_STATE,
5716 CASE_GROUND_STATE,
5717 CASE_GROUND_STATE,
5718 CASE_GROUND_STATE,
5719 /*	T		U		V		W	*/
5720 CASE_GROUND_STATE,
5721 CASE_GROUND_STATE,
5722 CASE_GROUND_STATE,
5723 CASE_GROUND_STATE,
5724 /*	X		Y		Z		[	*/
5725 CASE_GROUND_STATE,
5726 CASE_GROUND_STATE,
5727 CASE_GROUND_STATE,
5728 CASE_GROUND_STATE,
5729 /*	\		]		^		_	*/
5730 CASE_GROUND_STATE,
5731 CASE_GROUND_STATE,
5732 CASE_GROUND_STATE,
5733 CASE_GROUND_STATE,
5734 /*	`		a		b		c	*/
5735 CASE_GROUND_STATE,
5736 CASE_GROUND_STATE,
5737 CASE_GROUND_STATE,
5738 CASE_GROUND_STATE,
5739 /*	d		e		f		g	*/
5740 CASE_GROUND_STATE,
5741 CASE_GROUND_STATE,
5742 CASE_GROUND_STATE,
5743 CASE_GROUND_STATE,
5744 /*	h		i		j		k	*/
5745 CASE_GROUND_STATE,
5746 CASE_GROUND_STATE,
5747 CASE_GROUND_STATE,
5748 CASE_GROUND_STATE,
5749 /*	l		m		n		o	*/
5750 CASE_GROUND_STATE,
5751 CASE_GROUND_STATE,
5752 CASE_GROUND_STATE,
5753 CASE_GROUND_STATE,
5754 /*	p		q		r		s	*/
5755 CASE_GROUND_STATE,
5756 CASE_GROUND_STATE,
5757 CASE_GROUND_STATE,
5758 CASE_GROUND_STATE,
5759 /*	t		u		v		w	*/
5760 CASE_GROUND_STATE,
5761 CASE_GROUND_STATE,
5762 CASE_GROUND_STATE,
5763 CASE_GROUND_STATE,
5764 /*	x		y		z		{	*/
5765 CASE_GROUND_STATE,
5766 CASE_GROUND_STATE,
5767 CASE_GROUND_STATE,
5768 CASE_GROUND_STATE,
5769 /*	|		}		~		DEL	*/
5770 CASE_GROUND_STATE,
5771 CASE_GROUND_STATE,
5772 CASE_GROUND_STATE,
5773 CASE_IGNORE,
5774 /*      0x80            0x81            0x82            0x83    */
5775 CASE_GROUND_STATE,
5776 CASE_GROUND_STATE,
5777 CASE_GROUND_STATE,
5778 CASE_GROUND_STATE,
5779 /*      0x84            0x85            0x86            0x87    */
5780 CASE_IND,
5781 CASE_NEL,
5782 CASE_GROUND_STATE,
5783 CASE_GROUND_STATE,
5784 /*      0x88            0x89            0x8a            0x8b    */
5785 CASE_HTS,
5786 CASE_GROUND_STATE,
5787 CASE_GROUND_STATE,
5788 CASE_GROUND_STATE,
5789 /*      0x8c            0x8d            0x8e            0x8f    */
5790 CASE_GROUND_STATE,
5791 CASE_RI,
5792 CASE_SS2,
5793 CASE_SS3,
5794 /*      0x90            0x91            0x92            0x93    */
5795 CASE_DCS,
5796 CASE_GROUND_STATE,
5797 CASE_GROUND_STATE,
5798 CASE_GROUND_STATE,
5799 /*      0x94            0x95            0x96            0x97    */
5800 CASE_GROUND_STATE,
5801 CASE_GROUND_STATE,
5802 CASE_SPA,
5803 CASE_EPA,
5804 /*      0x98            0x99            0x9a            0x9b    */
5805 CASE_SOS,
5806 CASE_GROUND_STATE,
5807 CASE_DECID,
5808 CASE_CSI_STATE,
5809 /*      0x9c            0x9d            0x9e            0x9f    */
5810 CASE_ST,
5811 CASE_OSC,
5812 CASE_PM,
5813 CASE_APC,
5814 /*      nobreakspace    exclamdown      cent            sterling        */
5815 CASE_ESC_IGNORE,
5816 CASE_ESC_IGNORE,
5817 CASE_ESC_IGNORE,
5818 CASE_ESC_IGNORE,
5819 /*      currency        yen             brokenbar       section         */
5820 CASE_ESC_IGNORE,
5821 CASE_ESC_IGNORE,
5822 CASE_ESC_IGNORE,
5823 CASE_ESC_IGNORE,
5824 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
5825 CASE_ESC_IGNORE,
5826 CASE_ESC_IGNORE,
5827 CASE_ESC_IGNORE,
5828 CASE_ESC_IGNORE,
5829 /*      notsign         hyphen          registered      macron          */
5830 CASE_ESC_IGNORE,
5831 CASE_ESC_IGNORE,
5832 CASE_ESC_IGNORE,
5833 CASE_ESC_IGNORE,
5834 /*      degree          plusminus       twosuperior     threesuperior   */
5835 CASE_GROUND_STATE,
5836 CASE_GROUND_STATE,
5837 CASE_GROUND_STATE,
5838 CASE_GROUND_STATE,
5839 /*      acute           mu              paragraph       periodcentered  */
5840 CASE_GROUND_STATE,
5841 CASE_GROUND_STATE,
5842 CASE_GROUND_STATE,
5843 CASE_GROUND_STATE,
5844 /*      cedilla         onesuperior     masculine       guillemotright  */
5845 CASE_GROUND_STATE,
5846 CASE_GROUND_STATE,
5847 CASE_GROUND_STATE,
5848 CASE_GROUND_STATE,
5849 /*      onequarter      onehalf         threequarters   questiondown    */
5850 CASE_GROUND_STATE,
5851 CASE_GROUND_STATE,
5852 CASE_GROUND_STATE,
5853 CASE_GROUND_STATE,
5854 /*      Agrave          Aacute          Acircumflex     Atilde          */
5855 CASE_GROUND_STATE,
5856 CASE_GROUND_STATE,
5857 CASE_GROUND_STATE,
5858 CASE_GROUND_STATE,
5859 /*      Adiaeresis      Aring           AE              Ccedilla        */
5860 CASE_GROUND_STATE,
5861 CASE_GROUND_STATE,
5862 CASE_S7C1T,
5863 CASE_S8C1T,
5864 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
5865 CASE_GROUND_STATE,
5866 CASE_GROUND_STATE,
5867 CASE_GROUND_STATE,
5868 CASE_GROUND_STATE,
5869 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
5870 CASE_ANSI_LEVEL_1,
5871 CASE_ANSI_LEVEL_2,
5872 CASE_ANSI_LEVEL_3,
5873 CASE_GROUND_STATE,
5874 /*      Eth             Ntilde          Ograve          Oacute          */
5875 CASE_GROUND_STATE,
5876 CASE_GROUND_STATE,
5877 CASE_GROUND_STATE,
5878 CASE_GROUND_STATE,
5879 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
5880 CASE_GROUND_STATE,
5881 CASE_GROUND_STATE,
5882 CASE_GROUND_STATE,
5883 CASE_GROUND_STATE,
5884 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
5885 CASE_GROUND_STATE,
5886 CASE_GROUND_STATE,
5887 CASE_GROUND_STATE,
5888 CASE_GROUND_STATE,
5889 /*      Udiaeresis      Yacute          Thorn           ssharp          */
5890 CASE_GROUND_STATE,
5891 CASE_GROUND_STATE,
5892 CASE_GROUND_STATE,
5893 CASE_GROUND_STATE,
5894 /*      agrave          aacute          acircumflex     atilde          */
5895 CASE_GROUND_STATE,
5896 CASE_GROUND_STATE,
5897 CASE_GROUND_STATE,
5898 CASE_GROUND_STATE,
5899 /*      adiaeresis      aring           ae              ccedilla        */
5900 CASE_GROUND_STATE,
5901 CASE_GROUND_STATE,
5902 CASE_GROUND_STATE,
5903 CASE_GROUND_STATE,
5904 /*      egrave          eacute          ecircumflex     ediaeresis      */
5905 CASE_GROUND_STATE,
5906 CASE_GROUND_STATE,
5907 CASE_GROUND_STATE,
5908 CASE_GROUND_STATE,
5909 /*      igrave          iacute          icircumflex     idiaeresis      */
5910 CASE_GROUND_STATE,
5911 CASE_GROUND_STATE,
5912 CASE_GROUND_STATE,
5913 CASE_GROUND_STATE,
5914 /*      eth             ntilde          ograve          oacute          */
5915 CASE_GROUND_STATE,
5916 CASE_GROUND_STATE,
5917 CASE_GROUND_STATE,
5918 CASE_GROUND_STATE,
5919 /*      ocircumflex     otilde          odiaeresis      division        */
5920 CASE_GROUND_STATE,
5921 CASE_GROUND_STATE,
5922 CASE_GROUND_STATE,
5923 CASE_GROUND_STATE,
5924 /*      oslash          ugrave          uacute          ucircumflex     */
5925 CASE_GROUND_STATE,
5926 CASE_GROUND_STATE,
5927 CASE_GROUND_STATE,
5928 CASE_GROUND_STATE,
5929 /*      udiaeresis      yacute          thorn           ydiaeresis      */
5930 CASE_GROUND_STATE,
5931 CASE_GROUND_STATE,
5932 CASE_GROUND_STATE,
5933 CASE_IGNORE,
5934 };
5935 
5936 Const PARSE_T scrtable[] =		/* ESC # */
5937 {
5938 /*	NUL		SOH		STX		ETX	*/
5939 CASE_IGNORE,
5940 CASE_IGNORE,
5941 CASE_IGNORE,
5942 CASE_IGNORE,
5943 /*	EOT		ENQ		ACK		BEL	*/
5944 CASE_IGNORE,
5945 CASE_ENQ,
5946 CASE_IGNORE,
5947 CASE_BELL,
5948 /*	BS		HT		NL		VT	*/
5949 CASE_BS,
5950 CASE_TAB,
5951 CASE_VMOT,
5952 CASE_VMOT,
5953 /*	FF		CR		SO		SI	*/
5954 CASE_VMOT,
5955 CASE_CR,
5956 CASE_SO,
5957 CASE_SI,
5958 /*	DLE		DC1		DC2		DC3	*/
5959 CASE_IGNORE,
5960 CASE_IGNORE,
5961 CASE_IGNORE,
5962 CASE_IGNORE,
5963 /*	DC4		NAK		SYN		ETB	*/
5964 CASE_IGNORE,
5965 CASE_IGNORE,
5966 CASE_IGNORE,
5967 CASE_IGNORE,
5968 /*	CAN		EM		SUB		ESC	*/
5969 CASE_GROUND_STATE,
5970 CASE_IGNORE,
5971 CASE_GROUND_STATE,
5972 CASE_ESC,
5973 /*	FS		GS		RS		US	*/
5974 CASE_IGNORE,
5975 CASE_IGNORE,
5976 CASE_IGNORE,
5977 CASE_IGNORE,
5978 /*	SP		!		"		#	*/
5979 CASE_ESC_IGNORE,
5980 CASE_ESC_IGNORE,
5981 CASE_ESC_IGNORE,
5982 CASE_ESC_IGNORE,
5983 /*	$		%		&		'	*/
5984 CASE_ESC_IGNORE,
5985 CASE_ESC_IGNORE,
5986 CASE_ESC_IGNORE,
5987 CASE_ESC_IGNORE,
5988 /*	(		)		*		+	*/
5989 CASE_ESC_IGNORE,
5990 CASE_ESC_IGNORE,
5991 CASE_ESC_IGNORE,
5992 CASE_ESC_IGNORE,
5993 /*	,		-		.		/	*/
5994 CASE_ESC_IGNORE,
5995 CASE_ESC_IGNORE,
5996 CASE_ESC_IGNORE,
5997 CASE_ESC_IGNORE,
5998 /*	0		1		2		3	*/
5999 CASE_GROUND_STATE,
6000 CASE_GROUND_STATE,
6001 CASE_GROUND_STATE,
6002 CASE_DECDHL,
6003 /*	4		5		6		7	*/
6004 CASE_DECDHL,
6005 CASE_DECSWL,
6006 CASE_DECDWL,
6007 CASE_GROUND_STATE,
6008 /*	8		9		:		;	*/
6009 CASE_DECALN,
6010 CASE_GROUND_STATE,
6011 CASE_GROUND_STATE,
6012 CASE_GROUND_STATE,
6013 /*	<		=		>		?	*/
6014 CASE_GROUND_STATE,
6015 CASE_GROUND_STATE,
6016 CASE_GROUND_STATE,
6017 CASE_GROUND_STATE,
6018 /*	@		A		B		C	*/
6019 CASE_GROUND_STATE,
6020 CASE_GROUND_STATE,
6021 CASE_GROUND_STATE,
6022 CASE_GROUND_STATE,
6023 /*	D		E		F		G	*/
6024 CASE_GROUND_STATE,
6025 CASE_GROUND_STATE,
6026 CASE_GROUND_STATE,
6027 CASE_GROUND_STATE,
6028 /*	H		I		J		K	*/
6029 CASE_GROUND_STATE,
6030 CASE_GROUND_STATE,
6031 CASE_GROUND_STATE,
6032 CASE_GROUND_STATE,
6033 /*	L		M		N		O	*/
6034 CASE_GROUND_STATE,
6035 CASE_GROUND_STATE,
6036 CASE_GROUND_STATE,
6037 CASE_GROUND_STATE,
6038 /*	P		Q		R		S	*/
6039 CASE_GROUND_STATE,
6040 CASE_GROUND_STATE,
6041 CASE_GROUND_STATE,
6042 CASE_GROUND_STATE,
6043 /*	T		U		V		W	*/
6044 CASE_GROUND_STATE,
6045 CASE_GROUND_STATE,
6046 CASE_GROUND_STATE,
6047 CASE_GROUND_STATE,
6048 /*	X		Y		Z		[	*/
6049 CASE_GROUND_STATE,
6050 CASE_GROUND_STATE,
6051 CASE_GROUND_STATE,
6052 CASE_GROUND_STATE,
6053 /*	\		]		^		_	*/
6054 CASE_GROUND_STATE,
6055 CASE_GROUND_STATE,
6056 CASE_GROUND_STATE,
6057 CASE_GROUND_STATE,
6058 /*	`		a		b		c	*/
6059 CASE_GROUND_STATE,
6060 CASE_GROUND_STATE,
6061 CASE_GROUND_STATE,
6062 CASE_GROUND_STATE,
6063 /*	d		e		f		g	*/
6064 CASE_GROUND_STATE,
6065 CASE_GROUND_STATE,
6066 CASE_GROUND_STATE,
6067 CASE_GROUND_STATE,
6068 /*	h		i		j		k	*/
6069 CASE_GROUND_STATE,
6070 CASE_GROUND_STATE,
6071 CASE_GROUND_STATE,
6072 CASE_GROUND_STATE,
6073 /*	l		m		n		o	*/
6074 CASE_GROUND_STATE,
6075 CASE_GROUND_STATE,
6076 CASE_GROUND_STATE,
6077 CASE_GROUND_STATE,
6078 /*	p		q		r		s	*/
6079 CASE_GROUND_STATE,
6080 CASE_GROUND_STATE,
6081 CASE_GROUND_STATE,
6082 CASE_GROUND_STATE,
6083 /*	t		u		v		w	*/
6084 CASE_GROUND_STATE,
6085 CASE_GROUND_STATE,
6086 CASE_GROUND_STATE,
6087 CASE_GROUND_STATE,
6088 /*	x		y		z		{	*/
6089 CASE_GROUND_STATE,
6090 CASE_GROUND_STATE,
6091 CASE_GROUND_STATE,
6092 CASE_GROUND_STATE,
6093 /*	|		}		~		DEL	*/
6094 CASE_GROUND_STATE,
6095 CASE_GROUND_STATE,
6096 CASE_GROUND_STATE,
6097 CASE_IGNORE,
6098 /*      0x80            0x81            0x82            0x83    */
6099 CASE_GROUND_STATE,
6100 CASE_GROUND_STATE,
6101 CASE_GROUND_STATE,
6102 CASE_GROUND_STATE,
6103 /*      0x84            0x85            0x86            0x87    */
6104 CASE_IND,
6105 CASE_NEL,
6106 CASE_GROUND_STATE,
6107 CASE_GROUND_STATE,
6108 /*      0x88            0x89            0x8a            0x8b    */
6109 CASE_HTS,
6110 CASE_GROUND_STATE,
6111 CASE_GROUND_STATE,
6112 CASE_GROUND_STATE,
6113 /*      0x8c            0x8d            0x8e            0x8f    */
6114 CASE_GROUND_STATE,
6115 CASE_RI,
6116 CASE_SS2,
6117 CASE_SS3,
6118 /*      0x90            0x91            0x92            0x93    */
6119 CASE_DCS,
6120 CASE_GROUND_STATE,
6121 CASE_GROUND_STATE,
6122 CASE_GROUND_STATE,
6123 /*      0x94            0x95            0x96            0x97    */
6124 CASE_GROUND_STATE,
6125 CASE_GROUND_STATE,
6126 CASE_SPA,
6127 CASE_EPA,
6128 /*      0x98            0x99            0x9a            0x9b    */
6129 CASE_SOS,
6130 CASE_GROUND_STATE,
6131 CASE_DECID,
6132 CASE_CSI_STATE,
6133 /*      0x9c            0x9d            0x9e            0x9f    */
6134 CASE_ST,
6135 CASE_OSC,
6136 CASE_PM,
6137 CASE_APC,
6138 /*      nobreakspace    exclamdown      cent            sterling        */
6139 CASE_ESC_IGNORE,
6140 CASE_ESC_IGNORE,
6141 CASE_ESC_IGNORE,
6142 CASE_ESC_IGNORE,
6143 /*      currency        yen             brokenbar       section         */
6144 CASE_ESC_IGNORE,
6145 CASE_ESC_IGNORE,
6146 CASE_ESC_IGNORE,
6147 CASE_ESC_IGNORE,
6148 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
6149 CASE_ESC_IGNORE,
6150 CASE_ESC_IGNORE,
6151 CASE_ESC_IGNORE,
6152 CASE_ESC_IGNORE,
6153 /*      notsign         hyphen          registered      macron          */
6154 CASE_ESC_IGNORE,
6155 CASE_ESC_IGNORE,
6156 CASE_ESC_IGNORE,
6157 CASE_ESC_IGNORE,
6158 /*      degree          plusminus       twosuperior     threesuperior   */
6159 CASE_GROUND_STATE,
6160 CASE_GROUND_STATE,
6161 CASE_GROUND_STATE,
6162 CASE_DECDHL,
6163 /*      acute           mu              paragraph       periodcentered  */
6164 CASE_DECDHL,
6165 CASE_DECSWL,
6166 CASE_DECDWL,
6167 CASE_GROUND_STATE,
6168 /*      cedilla         onesuperior     masculine       guillemotright  */
6169 CASE_DECALN,
6170 CASE_GROUND_STATE,
6171 CASE_GROUND_STATE,
6172 CASE_GROUND_STATE,
6173 /*      onequarter      onehalf         threequarters   questiondown    */
6174 CASE_GROUND_STATE,
6175 CASE_GROUND_STATE,
6176 CASE_GROUND_STATE,
6177 CASE_GROUND_STATE,
6178 /*      Agrave          Aacute          Acircumflex     Atilde          */
6179 CASE_GROUND_STATE,
6180 CASE_GROUND_STATE,
6181 CASE_GROUND_STATE,
6182 CASE_GROUND_STATE,
6183 /*      Adiaeresis      Aring           AE              Ccedilla        */
6184 CASE_GROUND_STATE,
6185 CASE_GROUND_STATE,
6186 CASE_GROUND_STATE,
6187 CASE_GROUND_STATE,
6188 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
6189 CASE_GROUND_STATE,
6190 CASE_GROUND_STATE,
6191 CASE_GROUND_STATE,
6192 CASE_GROUND_STATE,
6193 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
6194 CASE_GROUND_STATE,
6195 CASE_GROUND_STATE,
6196 CASE_GROUND_STATE,
6197 CASE_GROUND_STATE,
6198 /*      Eth             Ntilde          Ograve          Oacute          */
6199 CASE_GROUND_STATE,
6200 CASE_GROUND_STATE,
6201 CASE_GROUND_STATE,
6202 CASE_GROUND_STATE,
6203 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
6204 CASE_GROUND_STATE,
6205 CASE_GROUND_STATE,
6206 CASE_GROUND_STATE,
6207 CASE_GROUND_STATE,
6208 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
6209 CASE_GROUND_STATE,
6210 CASE_GROUND_STATE,
6211 CASE_GROUND_STATE,
6212 CASE_GROUND_STATE,
6213 /*      Udiaeresis      Yacute          Thorn           ssharp          */
6214 CASE_GROUND_STATE,
6215 CASE_GROUND_STATE,
6216 CASE_GROUND_STATE,
6217 CASE_GROUND_STATE,
6218 /*      agrave          aacute          acircumflex     atilde          */
6219 CASE_GROUND_STATE,
6220 CASE_GROUND_STATE,
6221 CASE_GROUND_STATE,
6222 CASE_GROUND_STATE,
6223 /*      adiaeresis      aring           ae              ccedilla        */
6224 CASE_GROUND_STATE,
6225 CASE_GROUND_STATE,
6226 CASE_GROUND_STATE,
6227 CASE_GROUND_STATE,
6228 /*      egrave          eacute          ecircumflex     ediaeresis      */
6229 CASE_GROUND_STATE,
6230 CASE_GROUND_STATE,
6231 CASE_GROUND_STATE,
6232 CASE_GROUND_STATE,
6233 /*      igrave          iacute          icircumflex     idiaeresis      */
6234 CASE_GROUND_STATE,
6235 CASE_GROUND_STATE,
6236 CASE_GROUND_STATE,
6237 CASE_GROUND_STATE,
6238 /*      eth             ntilde          ograve          oacute          */
6239 CASE_GROUND_STATE,
6240 CASE_GROUND_STATE,
6241 CASE_GROUND_STATE,
6242 CASE_GROUND_STATE,
6243 /*      ocircumflex     otilde          odiaeresis      division        */
6244 CASE_GROUND_STATE,
6245 CASE_GROUND_STATE,
6246 CASE_GROUND_STATE,
6247 CASE_GROUND_STATE,
6248 /*      oslash          ugrave          uacute          ucircumflex     */
6249 CASE_GROUND_STATE,
6250 CASE_GROUND_STATE,
6251 CASE_GROUND_STATE,
6252 CASE_GROUND_STATE,
6253 /*      udiaeresis      yacute          thorn           ydiaeresis      */
6254 CASE_GROUND_STATE,
6255 CASE_GROUND_STATE,
6256 CASE_GROUND_STATE,
6257 CASE_IGNORE,
6258 };
6259 
6260 Const PARSE_T scstable[] =		/* ESC ( etc. */
6261 {
6262 /*	NUL		SOH		STX		ETX	*/
6263 CASE_IGNORE,
6264 CASE_IGNORE,
6265 CASE_IGNORE,
6266 CASE_IGNORE,
6267 /*	EOT		ENQ		ACK		BEL	*/
6268 CASE_IGNORE,
6269 CASE_ENQ,
6270 CASE_IGNORE,
6271 CASE_BELL,
6272 /*	BS		HT		NL		VT	*/
6273 CASE_BS,
6274 CASE_TAB,
6275 CASE_VMOT,
6276 CASE_VMOT,
6277 /*	FF		CR		SO		SI	*/
6278 CASE_VMOT,
6279 CASE_CR,
6280 CASE_SO,
6281 CASE_SI,
6282 /*	DLE		DC1		DC2		DC3	*/
6283 CASE_IGNORE,
6284 CASE_IGNORE,
6285 CASE_IGNORE,
6286 CASE_IGNORE,
6287 /*	DC4		NAK		SYN		ETB	*/
6288 CASE_IGNORE,
6289 CASE_IGNORE,
6290 CASE_IGNORE,
6291 CASE_IGNORE,
6292 /*	CAN		EM		SUB		ESC	*/
6293 CASE_GROUND_STATE,
6294 CASE_IGNORE,
6295 CASE_GROUND_STATE,
6296 CASE_ESC,
6297 /*	FS		GS		RS		US	*/
6298 CASE_IGNORE,
6299 CASE_IGNORE,
6300 CASE_IGNORE,
6301 CASE_IGNORE,
6302 /*	SP		!		"		#	*/
6303 CASE_ESC_IGNORE,
6304 CASE_ESC_IGNORE,
6305 CASE_SCS_DQUOTE,
6306 CASE_ESC_IGNORE,
6307 /*	$		%		&		'	*/
6308 CASE_ESC_IGNORE,
6309 CASE_SCS_PERCENT,
6310 CASE_SCS_AMPRSND,
6311 CASE_ESC_IGNORE,
6312 /*	(		)		*		+	*/
6313 CASE_ESC_IGNORE,
6314 CASE_ESC_IGNORE,
6315 CASE_ESC_IGNORE,
6316 CASE_ESC_IGNORE,
6317 /*	,		-		.		/	*/
6318 CASE_ESC_IGNORE,
6319 CASE_ESC_IGNORE,
6320 CASE_ESC_IGNORE,
6321 CASE_ESC_IGNORE,
6322 /*	0		1		2		3	*/
6323 CASE_GSETS,
6324 CASE_GSETS,
6325 CASE_GSETS,
6326 CASE_GROUND_STATE,
6327 /*	4		5		6		7	*/
6328 CASE_GSETS,
6329 CASE_GSETS,
6330 CASE_GSETS,
6331 CASE_GSETS,
6332 /*	8		9		:		;	*/
6333 CASE_GROUND_STATE,
6334 CASE_GSETS3,
6335 CASE_GROUND_STATE,
6336 CASE_GROUND_STATE,
6337 /*	<		=		>		?	*/
6338 CASE_GSETS,
6339 CASE_GSETS,
6340 CASE_GSETS3,
6341 CASE_GROUND_STATE,
6342 /*	@		A		B		C	*/
6343 CASE_GROUND_STATE,
6344 CASE_GSETS,
6345 CASE_GSETS,
6346 CASE_GSETS,
6347 /*	D		E		F		G	*/
6348 CASE_GROUND_STATE,
6349 CASE_GSETS,
6350 CASE_GROUND_STATE,
6351 CASE_GROUND_STATE,
6352 /*	H		I		J		K	*/
6353 CASE_GSETS,
6354 CASE_GROUND_STATE,
6355 CASE_GROUND_STATE,
6356 CASE_GSETS,
6357 /*	L		M		N		O	*/
6358 CASE_GROUND_STATE,
6359 CASE_GROUND_STATE,
6360 CASE_GROUND_STATE,
6361 CASE_GROUND_STATE,
6362 /*	P		Q		R		S	*/
6363 CASE_GROUND_STATE,
6364 CASE_GSETS,
6365 CASE_GSETS,
6366 CASE_GROUND_STATE,
6367 /*	T		U		V		W	*/
6368 CASE_GROUND_STATE,
6369 CASE_GROUND_STATE,
6370 CASE_GROUND_STATE,
6371 CASE_GROUND_STATE,
6372 /*	X		Y		Z		[	*/
6373 CASE_GROUND_STATE,
6374 CASE_GSETS,
6375 CASE_GSETS,
6376 CASE_GROUND_STATE,
6377 /*	\		]		^		_	*/
6378 CASE_GROUND_STATE,
6379 CASE_GROUND_STATE,
6380 CASE_GROUND_STATE,
6381 CASE_GROUND_STATE,
6382 /*	`		a		b		c	*/
6383 CASE_GSETS3,
6384 CASE_GROUND_STATE,
6385 CASE_GROUND_STATE,
6386 CASE_GROUND_STATE,
6387 /*	d		e		f		g	*/
6388 CASE_GROUND_STATE,
6389 CASE_GROUND_STATE,
6390 CASE_GSETS,
6391 CASE_GROUND_STATE,
6392 /*	h		i		j		k	*/
6393 CASE_GROUND_STATE,
6394 CASE_GROUND_STATE,
6395 CASE_GROUND_STATE,
6396 CASE_GROUND_STATE,
6397 /*	l		m		n		o	*/
6398 CASE_GROUND_STATE,
6399 CASE_GROUND_STATE,
6400 CASE_GROUND_STATE,
6401 CASE_GROUND_STATE,
6402 /*	p		q		r		s	*/
6403 CASE_GROUND_STATE,
6404 CASE_GROUND_STATE,
6405 CASE_GROUND_STATE,
6406 CASE_GROUND_STATE,
6407 /*	t		u		v		w	*/
6408 CASE_GROUND_STATE,
6409 CASE_GROUND_STATE,
6410 CASE_GROUND_STATE,
6411 CASE_GROUND_STATE,
6412 /*	x		y		z		{	*/
6413 CASE_GROUND_STATE,
6414 CASE_GROUND_STATE,
6415 CASE_GROUND_STATE,
6416 CASE_GROUND_STATE,
6417 /*	|		}		~		DEL	*/
6418 CASE_GROUND_STATE,
6419 CASE_GROUND_STATE,
6420 CASE_GROUND_STATE,
6421 CASE_IGNORE,
6422 /*      0x80            0x81            0x82            0x83    */
6423 CASE_GROUND_STATE,
6424 CASE_GROUND_STATE,
6425 CASE_GROUND_STATE,
6426 CASE_GROUND_STATE,
6427 /*      0x84            0x85            0x86            0x87    */
6428 CASE_IND,
6429 CASE_NEL,
6430 CASE_GROUND_STATE,
6431 CASE_GROUND_STATE,
6432 /*      0x88            0x89            0x8a            0x8b    */
6433 CASE_HTS,
6434 CASE_GROUND_STATE,
6435 CASE_GROUND_STATE,
6436 CASE_GROUND_STATE,
6437 /*      0x8c            0x8d            0x8e            0x8f    */
6438 CASE_GROUND_STATE,
6439 CASE_RI,
6440 CASE_SS2,
6441 CASE_SS3,
6442 /*      0x90            0x91            0x92            0x93    */
6443 CASE_DCS,
6444 CASE_GROUND_STATE,
6445 CASE_GROUND_STATE,
6446 CASE_GROUND_STATE,
6447 /*      0x94            0x95            0x96            0x97    */
6448 CASE_GROUND_STATE,
6449 CASE_GROUND_STATE,
6450 CASE_SPA,
6451 CASE_EPA,
6452 /*      0x98            0x99            0x9a            0x9b    */
6453 CASE_SOS,
6454 CASE_GROUND_STATE,
6455 CASE_DECID,
6456 CASE_CSI_STATE,
6457 /*      0x9c            0x9d            0x9e            0x9f    */
6458 CASE_ST,
6459 CASE_OSC,
6460 CASE_PM,
6461 CASE_APC,
6462 /*      nobreakspace    exclamdown      cent            sterling        */
6463 CASE_ESC_IGNORE,
6464 CASE_ESC_IGNORE,
6465 CASE_SCS_DQUOTE,
6466 CASE_ESC_IGNORE,
6467 /*      currency        yen             brokenbar       section         */
6468 CASE_ESC_IGNORE,
6469 CASE_SCS_PERCENT,
6470 CASE_SCS_AMPRSND,
6471 CASE_ESC_IGNORE,
6472 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
6473 CASE_ESC_IGNORE,
6474 CASE_ESC_IGNORE,
6475 CASE_ESC_IGNORE,
6476 CASE_ESC_IGNORE,
6477 /*      notsign         hyphen          registered      macron          */
6478 CASE_ESC_IGNORE,
6479 CASE_ESC_IGNORE,
6480 CASE_ESC_IGNORE,
6481 CASE_ESC_IGNORE,
6482 /*      degree          plusminus       twosuperior     threesuperior   */
6483 CASE_GSETS,
6484 CASE_GSETS,
6485 CASE_GSETS,
6486 CASE_GROUND_STATE,
6487 /*      acute           mu              paragraph       periodcentered  */
6488 CASE_GSETS,
6489 CASE_GSETS,
6490 CASE_GSETS,
6491 CASE_GSETS,
6492 /*      cedilla         onesuperior     masculine       guillemotright  */
6493 CASE_GROUND_STATE,
6494 CASE_GSETS3,
6495 CASE_GROUND_STATE,
6496 CASE_GROUND_STATE,
6497 /*      onequarter      onehalf         threequarters   questiondown    */
6498 CASE_GSETS,
6499 CASE_GSETS,
6500 CASE_GSETS3,
6501 CASE_GROUND_STATE,
6502 /*      Agrave          Aacute          Acircumflex     Atilde          */
6503 CASE_GROUND_STATE,
6504 CASE_GSETS,
6505 CASE_GSETS,
6506 CASE_GSETS,
6507 /*      Adiaeresis      Aring           AE              Ccedilla        */
6508 CASE_GROUND_STATE,
6509 CASE_GSETS,
6510 CASE_GROUND_STATE,
6511 CASE_GROUND_STATE,
6512 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
6513 CASE_GSETS,
6514 CASE_GROUND_STATE,
6515 CASE_GROUND_STATE,
6516 CASE_GSETS,
6517 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
6518 CASE_GROUND_STATE,
6519 CASE_GROUND_STATE,
6520 CASE_GROUND_STATE,
6521 CASE_GROUND_STATE,
6522 /*      Eth             Ntilde          Ograve          Oacute          */
6523 CASE_GROUND_STATE,
6524 CASE_GSETS,
6525 CASE_GSETS,
6526 CASE_GROUND_STATE,
6527 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
6528 CASE_GROUND_STATE,
6529 CASE_GROUND_STATE,
6530 CASE_GROUND_STATE,
6531 CASE_GROUND_STATE,
6532 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
6533 CASE_GROUND_STATE,
6534 CASE_GSETS,
6535 CASE_GSETS,
6536 CASE_GROUND_STATE,
6537 /*      Udiaeresis      Yacute          Thorn           ssharp          */
6538 CASE_GROUND_STATE,
6539 CASE_GROUND_STATE,
6540 CASE_GROUND_STATE,
6541 CASE_GROUND_STATE,
6542 /*      agrave          aacute          acircumflex     atilde          */
6543 CASE_GSETS3,
6544 CASE_GROUND_STATE,
6545 CASE_GROUND_STATE,
6546 CASE_GROUND_STATE,
6547 /*      adiaeresis      aring           ae              ccedilla        */
6548 CASE_GROUND_STATE,
6549 CASE_GROUND_STATE,
6550 CASE_GSETS,
6551 CASE_GROUND_STATE,
6552 /*      egrave          eacute          ecircumflex     ediaeresis      */
6553 CASE_GROUND_STATE,
6554 CASE_GROUND_STATE,
6555 CASE_GROUND_STATE,
6556 CASE_GROUND_STATE,
6557 /*      igrave          iacute          icircumflex     idiaeresis      */
6558 CASE_GROUND_STATE,
6559 CASE_GROUND_STATE,
6560 CASE_GROUND_STATE,
6561 CASE_GROUND_STATE,
6562 /*      eth             ntilde          ograve          oacute          */
6563 CASE_GROUND_STATE,
6564 CASE_GROUND_STATE,
6565 CASE_GROUND_STATE,
6566 CASE_GROUND_STATE,
6567 /*      ocircumflex     otilde          odiaeresis      division        */
6568 CASE_GROUND_STATE,
6569 CASE_GROUND_STATE,
6570 CASE_GROUND_STATE,
6571 CASE_GROUND_STATE,
6572 /*      oslash          ugrave          uacute          ucircumflex     */
6573 CASE_GROUND_STATE,
6574 CASE_GROUND_STATE,
6575 CASE_GROUND_STATE,
6576 CASE_GROUND_STATE,
6577 /*      udiaeresis      yacute          thorn           ydiaeresis      */
6578 CASE_GROUND_STATE,
6579 CASE_GROUND_STATE,
6580 CASE_GROUND_STATE,
6581 CASE_IGNORE,
6582 };
6583 
6584 Const PARSE_T scs96table[] =		/* ESC - etc. */
6585 {
6586 /*	NUL		SOH		STX		ETX	*/
6587 CASE_IGNORE,
6588 CASE_IGNORE,
6589 CASE_IGNORE,
6590 CASE_IGNORE,
6591 /*	EOT		ENQ		ACK		BEL	*/
6592 CASE_IGNORE,
6593 CASE_ENQ,
6594 CASE_IGNORE,
6595 CASE_BELL,
6596 /*	BS		HT		NL		VT	*/
6597 CASE_BS,
6598 CASE_TAB,
6599 CASE_VMOT,
6600 CASE_VMOT,
6601 /*	FF		CR		SO		SI	*/
6602 CASE_VMOT,
6603 CASE_CR,
6604 CASE_SO,
6605 CASE_SI,
6606 /*	DLE		DC1		DC2		DC3	*/
6607 CASE_IGNORE,
6608 CASE_IGNORE,
6609 CASE_IGNORE,
6610 CASE_IGNORE,
6611 /*	DC4		NAK		SYN		ETB	*/
6612 CASE_IGNORE,
6613 CASE_IGNORE,
6614 CASE_IGNORE,
6615 CASE_IGNORE,
6616 /*	CAN		EM		SUB		ESC	*/
6617 CASE_GROUND_STATE,
6618 CASE_IGNORE,
6619 CASE_GROUND_STATE,
6620 CASE_ESC,
6621 /*	FS		GS		RS		US	*/
6622 CASE_IGNORE,
6623 CASE_IGNORE,
6624 CASE_IGNORE,
6625 CASE_IGNORE,
6626 /*	SP		!		"		#	*/
6627 CASE_ESC_IGNORE,
6628 CASE_ESC_IGNORE,
6629 CASE_ESC_IGNORE,
6630 CASE_ESC_IGNORE,
6631 /*	$		%		&		'	*/
6632 CASE_ESC_IGNORE,
6633 CASE_ESC_IGNORE,
6634 CASE_ESC_IGNORE,
6635 CASE_ESC_IGNORE,
6636 /*	(		)		*		+	*/
6637 CASE_ESC_IGNORE,
6638 CASE_ESC_IGNORE,
6639 CASE_ESC_IGNORE,
6640 CASE_ESC_IGNORE,
6641 /*	,		-		.		/	*/
6642 CASE_ESC_IGNORE,
6643 CASE_ESC_IGNORE,
6644 CASE_ESC_IGNORE,
6645 CASE_ESC_IGNORE,
6646 /*	0		1		2		3	*/
6647 CASE_GROUND_STATE,
6648 CASE_GROUND_STATE,
6649 CASE_GROUND_STATE,
6650 CASE_GROUND_STATE,
6651 /*	4		5		6		7	*/
6652 CASE_GROUND_STATE,
6653 CASE_GROUND_STATE,
6654 CASE_GROUND_STATE,
6655 CASE_GROUND_STATE,
6656 /*	8		9		:		;	*/
6657 CASE_GROUND_STATE,
6658 CASE_GROUND_STATE,
6659 CASE_GROUND_STATE,
6660 CASE_GROUND_STATE,
6661 /*	<		=		>		?	*/
6662 CASE_GROUND_STATE,
6663 CASE_GROUND_STATE,
6664 CASE_GROUND_STATE,
6665 CASE_GROUND_STATE,
6666 /*	@		A		B		C	*/
6667 CASE_GROUND_STATE,
6668 CASE_GSETS3,
6669 CASE_GSETS5,
6670 CASE_GROUND_STATE,
6671 /*	D		E		F		G	*/
6672 CASE_GROUND_STATE,
6673 CASE_GROUND_STATE,
6674 CASE_GSETS5,
6675 CASE_GROUND_STATE,
6676 /*	H		I		J		K	*/
6677 CASE_GSETS5,
6678 CASE_GROUND_STATE,
6679 CASE_GROUND_STATE,
6680 CASE_GROUND_STATE,
6681 /*	L		M		N		O	*/
6682 CASE_GSETS5,
6683 CASE_GSETS5,
6684 CASE_GROUND_STATE,
6685 CASE_GROUND_STATE,
6686 /*	P		Q		R		S	*/
6687 CASE_GROUND_STATE,
6688 CASE_GROUND_STATE,
6689 CASE_GROUND_STATE,
6690 CASE_GROUND_STATE,
6691 /*	T		U		V		W	*/
6692 CASE_GROUND_STATE,
6693 CASE_GROUND_STATE,
6694 CASE_GROUND_STATE,
6695 CASE_GROUND_STATE,
6696 /*	X		Y		Z		[	*/
6697 CASE_GROUND_STATE,
6698 CASE_GROUND_STATE,
6699 CASE_GROUND_STATE,
6700 CASE_GROUND_STATE,
6701 /*	\		]		^		_	*/
6702 CASE_GROUND_STATE,
6703 CASE_GROUND_STATE,
6704 CASE_GROUND_STATE,
6705 CASE_GROUND_STATE,
6706 /*	`		a		b		c	*/
6707 CASE_GROUND_STATE,
6708 CASE_GROUND_STATE,
6709 CASE_GROUND_STATE,
6710 CASE_GROUND_STATE,
6711 /*	d		e		f		g	*/
6712 CASE_GROUND_STATE,
6713 CASE_GROUND_STATE,
6714 CASE_GROUND_STATE,
6715 CASE_GROUND_STATE,
6716 /*	h		i		j		k	*/
6717 CASE_GROUND_STATE,
6718 CASE_GROUND_STATE,
6719 CASE_GROUND_STATE,
6720 CASE_GROUND_STATE,
6721 /*	l		m		n		o	*/
6722 CASE_GROUND_STATE,
6723 CASE_GROUND_STATE,
6724 CASE_GROUND_STATE,
6725 CASE_GROUND_STATE,
6726 /*	p		q		r		s	*/
6727 CASE_GROUND_STATE,
6728 CASE_GROUND_STATE,
6729 CASE_GROUND_STATE,
6730 CASE_GROUND_STATE,
6731 /*	t		u		v		w	*/
6732 CASE_GROUND_STATE,
6733 CASE_GROUND_STATE,
6734 CASE_GROUND_STATE,
6735 CASE_GROUND_STATE,
6736 /*	x		y		z		{	*/
6737 CASE_GROUND_STATE,
6738 CASE_GROUND_STATE,
6739 CASE_GROUND_STATE,
6740 CASE_GROUND_STATE,
6741 /*	|		}		~		DEL	*/
6742 CASE_GROUND_STATE,
6743 CASE_GROUND_STATE,
6744 CASE_GROUND_STATE,
6745 CASE_IGNORE,
6746 /*      0x80            0x81            0x82            0x83    */
6747 CASE_GROUND_STATE,
6748 CASE_GROUND_STATE,
6749 CASE_GROUND_STATE,
6750 CASE_GROUND_STATE,
6751 /*      0x84            0x85            0x86            0x87    */
6752 CASE_IND,
6753 CASE_NEL,
6754 CASE_GROUND_STATE,
6755 CASE_GROUND_STATE,
6756 /*      0x88            0x89            0x8a            0x8b    */
6757 CASE_HTS,
6758 CASE_GROUND_STATE,
6759 CASE_GROUND_STATE,
6760 CASE_GROUND_STATE,
6761 /*      0x8c            0x8d            0x8e            0x8f    */
6762 CASE_GROUND_STATE,
6763 CASE_RI,
6764 CASE_SS2,
6765 CASE_SS3,
6766 /*      0x90            0x91            0x92            0x93    */
6767 CASE_DCS,
6768 CASE_GROUND_STATE,
6769 CASE_GROUND_STATE,
6770 CASE_GROUND_STATE,
6771 /*      0x94            0x95            0x96            0x97    */
6772 CASE_GROUND_STATE,
6773 CASE_GROUND_STATE,
6774 CASE_SPA,
6775 CASE_EPA,
6776 /*      0x98            0x99            0x9a            0x9b    */
6777 CASE_SOS,
6778 CASE_GROUND_STATE,
6779 CASE_DECID,
6780 CASE_CSI_STATE,
6781 /*      0x9c            0x9d            0x9e            0x9f    */
6782 CASE_ST,
6783 CASE_OSC,
6784 CASE_PM,
6785 CASE_APC,
6786 /*      nobreakspace    exclamdown      cent            sterling        */
6787 CASE_ESC_IGNORE,
6788 CASE_ESC_IGNORE,
6789 CASE_ESC_IGNORE,
6790 CASE_ESC_IGNORE,
6791 /*      currency        yen             brokenbar       section         */
6792 CASE_ESC_IGNORE,
6793 CASE_ESC_IGNORE,
6794 CASE_ESC_IGNORE,
6795 CASE_ESC_IGNORE,
6796 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
6797 CASE_ESC_IGNORE,
6798 CASE_ESC_IGNORE,
6799 CASE_ESC_IGNORE,
6800 CASE_ESC_IGNORE,
6801 /*      notsign         hyphen          registered      macron          */
6802 CASE_ESC_IGNORE,
6803 CASE_ESC_IGNORE,
6804 CASE_ESC_IGNORE,
6805 CASE_ESC_IGNORE,
6806 /*      degree          plusminus       twosuperior     threesuperior   */
6807 CASE_GROUND_STATE,
6808 CASE_GROUND_STATE,
6809 CASE_GROUND_STATE,
6810 CASE_GROUND_STATE,
6811 /*      acute           mu              paragraph       periodcentered  */
6812 CASE_GROUND_STATE,
6813 CASE_GROUND_STATE,
6814 CASE_GROUND_STATE,
6815 CASE_GROUND_STATE,
6816 /*      cedilla         onesuperior     masculine       guillemotright  */
6817 CASE_GROUND_STATE,
6818 CASE_GROUND_STATE,
6819 CASE_GROUND_STATE,
6820 CASE_GROUND_STATE,
6821 /*      onequarter      onehalf         threequarters   questiondown    */
6822 CASE_GROUND_STATE,
6823 CASE_GROUND_STATE,
6824 CASE_GROUND_STATE,
6825 CASE_GROUND_STATE,
6826 /*      Agrave          Aacute          Acircumflex     Atilde          */
6827 CASE_GROUND_STATE,
6828 CASE_GSETS3,
6829 CASE_GSETS5,
6830 CASE_GROUND_STATE,
6831 /*      Adiaeresis      Aring           AE              Ccedilla        */
6832 CASE_GROUND_STATE,
6833 CASE_GROUND_STATE,
6834 CASE_GSETS5,
6835 CASE_GROUND_STATE,
6836 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
6837 CASE_GSETS5,
6838 CASE_GROUND_STATE,
6839 CASE_GROUND_STATE,
6840 CASE_GROUND_STATE,
6841 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
6842 CASE_GSETS5,
6843 CASE_GSETS5,
6844 CASE_GROUND_STATE,
6845 CASE_GROUND_STATE,
6846 /*      Eth             Ntilde          Ograve          Oacute          */
6847 CASE_GROUND_STATE,
6848 CASE_GROUND_STATE,
6849 CASE_GROUND_STATE,
6850 CASE_GROUND_STATE,
6851 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
6852 CASE_GROUND_STATE,
6853 CASE_GROUND_STATE,
6854 CASE_GROUND_STATE,
6855 CASE_GROUND_STATE,
6856 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
6857 CASE_GROUND_STATE,
6858 CASE_GROUND_STATE,
6859 CASE_GROUND_STATE,
6860 CASE_GROUND_STATE,
6861 /*      Udiaeresis      Yacute          Thorn           ssharp          */
6862 CASE_GROUND_STATE,
6863 CASE_GROUND_STATE,
6864 CASE_GROUND_STATE,
6865 CASE_GROUND_STATE,
6866 /*      agrave          aacute          acircumflex     atilde          */
6867 CASE_GROUND_STATE,
6868 CASE_GROUND_STATE,
6869 CASE_GROUND_STATE,
6870 CASE_GROUND_STATE,
6871 /*      adiaeresis      aring           ae              ccedilla        */
6872 CASE_GROUND_STATE,
6873 CASE_GROUND_STATE,
6874 CASE_GROUND_STATE,
6875 CASE_GROUND_STATE,
6876 /*      egrave          eacute          ecircumflex     ediaeresis      */
6877 CASE_GROUND_STATE,
6878 CASE_GROUND_STATE,
6879 CASE_GROUND_STATE,
6880 CASE_GROUND_STATE,
6881 /*      igrave          iacute          icircumflex     idiaeresis      */
6882 CASE_GROUND_STATE,
6883 CASE_GROUND_STATE,
6884 CASE_GROUND_STATE,
6885 CASE_GROUND_STATE,
6886 /*      eth             ntilde          ograve          oacute          */
6887 CASE_GROUND_STATE,
6888 CASE_GROUND_STATE,
6889 CASE_GROUND_STATE,
6890 CASE_GROUND_STATE,
6891 /*      ocircumflex     otilde          odiaeresis      division        */
6892 CASE_GROUND_STATE,
6893 CASE_GROUND_STATE,
6894 CASE_GROUND_STATE,
6895 CASE_GROUND_STATE,
6896 /*      oslash          ugrave          uacute          ucircumflex     */
6897 CASE_GROUND_STATE,
6898 CASE_GROUND_STATE,
6899 CASE_GROUND_STATE,
6900 CASE_GROUND_STATE,
6901 /*      udiaeresis      yacute          thorn           ydiaeresis      */
6902 CASE_GROUND_STATE,
6903 CASE_GROUND_STATE,
6904 CASE_GROUND_STATE,
6905 CASE_IGNORE,
6906 };
6907 
6908 /*
6909  * This table is treated specially.  The CASE_IGNORE entries correspond to the
6910  * characters that can be accumulated for the string function (e.g., OSC).
6911  */
6912 Const PARSE_T sos_table[] =		/* OSC, DCS, etc. */
6913 {
6914 /*	NUL		SOH		STX		ETX	*/
6915 CASE_IGNORE,
6916 CASE_IGNORE,
6917 CASE_IGNORE,
6918 CASE_IGNORE,
6919 /*	EOT		ENQ		ACK		BEL	*/
6920 CASE_IGNORE,
6921 CASE_IGNORE,
6922 CASE_IGNORE,
6923 CASE_BELL,
6924 /*	BS		HT		NL		VT	*/
6925 CASE_IGNORE,
6926 CASE_IGNORE,
6927 CASE_IGNORE,
6928 CASE_IGNORE,
6929 /*	FF		CR		SO		SI	*/
6930 CASE_IGNORE,
6931 CASE_IGNORE,
6932 CASE_IGNORE,
6933 CASE_IGNORE,
6934 /*	DLE		DC1		DC2		DC3	*/
6935 CASE_IGNORE,
6936 CASE_IGNORE,
6937 CASE_IGNORE,
6938 CASE_IGNORE,
6939 /*	DC4		NAK		SYN		ETB	*/
6940 CASE_IGNORE,
6941 CASE_IGNORE,
6942 CASE_IGNORE,
6943 CASE_IGNORE,
6944 /*	CAN		EM		SUB		ESC	*/
6945 CASE_GROUND_STATE,
6946 CASE_IGNORE,
6947 CASE_GROUND_STATE,
6948 CASE_ESC,
6949 /*	FS		GS		RS		US	*/
6950 CASE_IGNORE,
6951 CASE_IGNORE,
6952 CASE_IGNORE,
6953 CASE_IGNORE,
6954 /*	SP		!		"		#	*/
6955 CASE_IGNORE,
6956 CASE_IGNORE,
6957 CASE_IGNORE,
6958 CASE_IGNORE,
6959 /*	$		%		&		'	*/
6960 CASE_IGNORE,
6961 CASE_IGNORE,
6962 CASE_IGNORE,
6963 CASE_IGNORE,
6964 /*	(		)		*		+	*/
6965 CASE_IGNORE,
6966 CASE_IGNORE,
6967 CASE_IGNORE,
6968 CASE_IGNORE,
6969 /*	,		-		.		/	*/
6970 CASE_IGNORE,
6971 CASE_IGNORE,
6972 CASE_IGNORE,
6973 CASE_IGNORE,
6974 /*	0		1		2		3	*/
6975 CASE_IGNORE,
6976 CASE_IGNORE,
6977 CASE_IGNORE,
6978 CASE_IGNORE,
6979 /*	4		5		6		7	*/
6980 CASE_IGNORE,
6981 CASE_IGNORE,
6982 CASE_IGNORE,
6983 CASE_IGNORE,
6984 /*	8		9		:		;	*/
6985 CASE_IGNORE,
6986 CASE_IGNORE,
6987 CASE_IGNORE,
6988 CASE_IGNORE,
6989 /*	<		=		>		?	*/
6990 CASE_IGNORE,
6991 CASE_IGNORE,
6992 CASE_IGNORE,
6993 CASE_IGNORE,
6994 /*	@		A		B		C	*/
6995 CASE_IGNORE,
6996 CASE_IGNORE,
6997 CASE_IGNORE,
6998 CASE_IGNORE,
6999 /*	D		E		F		G	*/
7000 CASE_IGNORE,
7001 CASE_IGNORE,
7002 CASE_IGNORE,
7003 CASE_IGNORE,
7004 /*	H		I		J		K	*/
7005 CASE_IGNORE,
7006 CASE_IGNORE,
7007 CASE_IGNORE,
7008 CASE_IGNORE,
7009 /*	L		M		N		O	*/
7010 CASE_IGNORE,
7011 CASE_IGNORE,
7012 CASE_IGNORE,
7013 CASE_IGNORE,
7014 /*	P		Q		R		S	*/
7015 CASE_IGNORE,
7016 CASE_IGNORE,
7017 CASE_IGNORE,
7018 CASE_IGNORE,
7019 /*	T		U		V		W	*/
7020 CASE_IGNORE,
7021 CASE_IGNORE,
7022 CASE_IGNORE,
7023 CASE_IGNORE,
7024 /*	X		Y		Z		[	*/
7025 CASE_IGNORE,
7026 CASE_IGNORE,
7027 CASE_IGNORE,
7028 CASE_IGNORE,
7029 /*	\		]		^		_	*/
7030 CASE_IGNORE,
7031 CASE_IGNORE,
7032 CASE_IGNORE,
7033 CASE_IGNORE,
7034 /*	`		a		b		c	*/
7035 CASE_IGNORE,
7036 CASE_IGNORE,
7037 CASE_IGNORE,
7038 CASE_IGNORE,
7039 /*	d		e		f		g	*/
7040 CASE_IGNORE,
7041 CASE_IGNORE,
7042 CASE_IGNORE,
7043 CASE_IGNORE,
7044 /*	h		i		j		k	*/
7045 CASE_IGNORE,
7046 CASE_IGNORE,
7047 CASE_IGNORE,
7048 CASE_IGNORE,
7049 /*	l		m		n		o	*/
7050 CASE_IGNORE,
7051 CASE_IGNORE,
7052 CASE_IGNORE,
7053 CASE_IGNORE,
7054 /*	p		q		r		s	*/
7055 CASE_IGNORE,
7056 CASE_IGNORE,
7057 CASE_IGNORE,
7058 CASE_IGNORE,
7059 /*	t		u		v		w	*/
7060 CASE_IGNORE,
7061 CASE_IGNORE,
7062 CASE_IGNORE,
7063 CASE_IGNORE,
7064 /*	x		y		z		{	*/
7065 CASE_IGNORE,
7066 CASE_IGNORE,
7067 CASE_IGNORE,
7068 CASE_IGNORE,
7069 /*	|		}		~		DEL	*/
7070 CASE_IGNORE,
7071 CASE_IGNORE,
7072 CASE_IGNORE,
7073 CASE_IGNORE,
7074 /*      0x80            0x81            0x82            0x83    */
7075 CASE_GROUND_STATE,
7076 CASE_GROUND_STATE,
7077 CASE_GROUND_STATE,
7078 CASE_GROUND_STATE,
7079 /*      0x84            0x85            0x86            0x87    */
7080 CASE_IND,
7081 CASE_NEL,
7082 CASE_GROUND_STATE,
7083 CASE_GROUND_STATE,
7084 /*      0x88            0x89            0x8a            0x8b    */
7085 CASE_HTS,
7086 CASE_GROUND_STATE,
7087 CASE_GROUND_STATE,
7088 CASE_GROUND_STATE,
7089 /*      0x8c            0x8d            0x8e            0x8f    */
7090 CASE_GROUND_STATE,
7091 CASE_RI,
7092 CASE_SS2,
7093 CASE_SS3,
7094 /*      0x90            0x91            0x92            0x93    */
7095 CASE_DCS,
7096 CASE_GROUND_STATE,
7097 CASE_GROUND_STATE,
7098 CASE_GROUND_STATE,
7099 /*      0x94            0x95            0x96            0x97    */
7100 CASE_GROUND_STATE,
7101 CASE_GROUND_STATE,
7102 CASE_SPA,
7103 CASE_EPA,
7104 /*      0x98            0x99            0x9a            0x9b    */
7105 CASE_SOS,
7106 CASE_GROUND_STATE,
7107 CASE_DECID,
7108 CASE_CSI_STATE,
7109 /*      0x9c            0x9d            0x9e            0x9f    */
7110 CASE_ST,
7111 CASE_OSC,
7112 CASE_PM,
7113 CASE_APC,
7114 /*      nobreakspace    exclamdown      cent            sterling        */
7115 CASE_IGNORE,
7116 CASE_IGNORE,
7117 CASE_IGNORE,
7118 CASE_IGNORE,
7119 /*      currency        yen             brokenbar       section         */
7120 CASE_IGNORE,
7121 CASE_IGNORE,
7122 CASE_IGNORE,
7123 CASE_IGNORE,
7124 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
7125 CASE_IGNORE,
7126 CASE_IGNORE,
7127 CASE_IGNORE,
7128 CASE_IGNORE,
7129 /*      notsign         hyphen          registered      macron          */
7130 CASE_IGNORE,
7131 CASE_IGNORE,
7132 CASE_IGNORE,
7133 CASE_IGNORE,
7134 /*      degree          plusminus       twosuperior     threesuperior   */
7135 CASE_IGNORE,
7136 CASE_IGNORE,
7137 CASE_IGNORE,
7138 CASE_IGNORE,
7139 /*      acute           mu              paragraph       periodcentered  */
7140 CASE_IGNORE,
7141 CASE_IGNORE,
7142 CASE_IGNORE,
7143 CASE_IGNORE,
7144 /*      cedilla         onesuperior     masculine       guillemotright  */
7145 CASE_IGNORE,
7146 CASE_IGNORE,
7147 CASE_IGNORE,
7148 CASE_IGNORE,
7149 /*      onequarter      onehalf         threequarters   questiondown    */
7150 CASE_IGNORE,
7151 CASE_IGNORE,
7152 CASE_IGNORE,
7153 CASE_IGNORE,
7154 /*      Agrave          Aacute          Acircumflex     Atilde          */
7155 CASE_IGNORE,
7156 CASE_IGNORE,
7157 CASE_IGNORE,
7158 CASE_IGNORE,
7159 /*      Adiaeresis      Aring           AE              Ccedilla        */
7160 CASE_IGNORE,
7161 CASE_IGNORE,
7162 CASE_IGNORE,
7163 CASE_IGNORE,
7164 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
7165 CASE_IGNORE,
7166 CASE_IGNORE,
7167 CASE_IGNORE,
7168 CASE_IGNORE,
7169 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
7170 CASE_IGNORE,
7171 CASE_IGNORE,
7172 CASE_IGNORE,
7173 CASE_IGNORE,
7174 /*      Eth             Ntilde          Ograve          Oacute          */
7175 CASE_IGNORE,
7176 CASE_IGNORE,
7177 CASE_IGNORE,
7178 CASE_IGNORE,
7179 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
7180 CASE_IGNORE,
7181 CASE_IGNORE,
7182 CASE_IGNORE,
7183 CASE_IGNORE,
7184 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
7185 CASE_IGNORE,
7186 CASE_IGNORE,
7187 CASE_IGNORE,
7188 CASE_IGNORE,
7189 /*      Udiaeresis      Yacute          Thorn           ssharp          */
7190 CASE_IGNORE,
7191 CASE_IGNORE,
7192 CASE_IGNORE,
7193 CASE_IGNORE,
7194 /*      agrave          aacute          acircumflex     atilde          */
7195 CASE_IGNORE,
7196 CASE_IGNORE,
7197 CASE_IGNORE,
7198 CASE_IGNORE,
7199 /*      adiaeresis      aring           ae              ccedilla        */
7200 CASE_IGNORE,
7201 CASE_IGNORE,
7202 CASE_IGNORE,
7203 CASE_IGNORE,
7204 /*      egrave          eacute          ecircumflex     ediaeresis      */
7205 CASE_IGNORE,
7206 CASE_IGNORE,
7207 CASE_IGNORE,
7208 CASE_IGNORE,
7209 /*      igrave          iacute          icircumflex     idiaeresis      */
7210 CASE_IGNORE,
7211 CASE_IGNORE,
7212 CASE_IGNORE,
7213 CASE_IGNORE,
7214 /*      eth             ntilde          ograve          oacute          */
7215 CASE_IGNORE,
7216 CASE_IGNORE,
7217 CASE_IGNORE,
7218 CASE_IGNORE,
7219 /*      ocircumflex     otilde          odiaeresis      division        */
7220 CASE_IGNORE,
7221 CASE_IGNORE,
7222 CASE_IGNORE,
7223 CASE_IGNORE,
7224 /*      oslash          ugrave          uacute          ucircumflex     */
7225 CASE_IGNORE,
7226 CASE_IGNORE,
7227 CASE_IGNORE,
7228 CASE_IGNORE,
7229 /*      udiaeresis      yacute          thorn           ydiaeresis      */
7230 CASE_IGNORE,
7231 CASE_IGNORE,
7232 CASE_IGNORE,
7233 CASE_IGNORE,
7234 };
7235 
7236 #if OPT_WIDE_CHARS
7237 Const PARSE_T esc_pct_table[] =		/* ESC % */
7238 {
7239 /*	NUL		SOH		STX		ETX	*/
7240 CASE_IGNORE,
7241 CASE_IGNORE,
7242 CASE_IGNORE,
7243 CASE_IGNORE,
7244 /*	EOT		ENQ		ACK		BEL	*/
7245 CASE_IGNORE,
7246 CASE_ENQ,
7247 CASE_IGNORE,
7248 CASE_BELL,
7249 /*	BS		HT		NL		VT	*/
7250 CASE_BS,
7251 CASE_TAB,
7252 CASE_VMOT,
7253 CASE_VMOT,
7254 /*	FF		CR		SO		SI	*/
7255 CASE_VMOT,
7256 CASE_CR,
7257 CASE_SO,
7258 CASE_SI,
7259 /*	DLE		DC1		DC2		DC3	*/
7260 CASE_IGNORE,
7261 CASE_IGNORE,
7262 CASE_IGNORE,
7263 CASE_IGNORE,
7264 /*	DC4		NAK		SYN		ETB	*/
7265 CASE_IGNORE,
7266 CASE_IGNORE,
7267 CASE_IGNORE,
7268 CASE_IGNORE,
7269 /*	CAN		EM		SUB		ESC	*/
7270 CASE_GROUND_STATE,
7271 CASE_IGNORE,
7272 CASE_GROUND_STATE,
7273 CASE_ESC,
7274 /*	FS		GS		RS		US	*/
7275 CASE_IGNORE,
7276 CASE_IGNORE,
7277 CASE_IGNORE,
7278 CASE_IGNORE,
7279 /*	SP		!		"		#	*/
7280 CASE_ESC_IGNORE,
7281 CASE_ESC_IGNORE,
7282 CASE_ESC_IGNORE,
7283 CASE_ESC_IGNORE,
7284 /*	$		%		&		'	*/
7285 CASE_ESC_IGNORE,
7286 CASE_ESC_IGNORE,
7287 CASE_ESC_IGNORE,
7288 CASE_ESC_IGNORE,
7289 /*	(		)		*		+	*/
7290 CASE_ESC_IGNORE,
7291 CASE_ESC_IGNORE,
7292 CASE_ESC_IGNORE,
7293 CASE_ESC_IGNORE,
7294 /*	,		-		.		/	*/
7295 CASE_ESC_IGNORE,
7296 CASE_ESC_IGNORE,
7297 CASE_ESC_IGNORE,
7298 CASE_ESC_IGNORE,
7299 /*	0		1		2		3	*/
7300 CASE_GSETS5,
7301 CASE_GROUND_STATE,
7302 CASE_GSETS5,
7303 CASE_GROUND_STATE,
7304 /*	4		5		6		7	*/
7305 CASE_GROUND_STATE,
7306 CASE_GROUND_STATE,
7307 CASE_GROUND_STATE,
7308 CASE_GROUND_STATE,
7309 /*	8		9		:		;	*/
7310 CASE_GROUND_STATE,
7311 CASE_GROUND_STATE,
7312 CASE_GROUND_STATE,
7313 CASE_GROUND_STATE,
7314 /*	<		=		>		?	*/
7315 CASE_GROUND_STATE,
7316 CASE_GROUND_STATE,
7317 CASE_GROUND_STATE,
7318 CASE_GROUND_STATE,
7319 /*	@		A		B		C	*/
7320 CASE_UTF8,
7321 CASE_GROUND_STATE,
7322 CASE_GROUND_STATE,
7323 CASE_GROUND_STATE,
7324 /*	D		E		F		G	*/
7325 CASE_GROUND_STATE,
7326 CASE_GROUND_STATE,
7327 CASE_GROUND_STATE,
7328 CASE_UTF8,
7329 /*	H		I		J		K	*/
7330 CASE_GROUND_STATE,
7331 CASE_GROUND_STATE,
7332 CASE_GROUND_STATE,
7333 CASE_GROUND_STATE,
7334 /*	L		M		N		O	*/
7335 CASE_GROUND_STATE,
7336 CASE_GROUND_STATE,
7337 CASE_GROUND_STATE,
7338 CASE_GROUND_STATE,
7339 /*	P		Q		R		S	*/
7340 CASE_GROUND_STATE,
7341 CASE_GROUND_STATE,
7342 CASE_GROUND_STATE,
7343 CASE_GROUND_STATE,
7344 /*	T		U		V		W	*/
7345 CASE_GROUND_STATE,
7346 CASE_GROUND_STATE,
7347 CASE_GROUND_STATE,
7348 CASE_GROUND_STATE,
7349 /*	X		Y		Z		[	*/
7350 CASE_GROUND_STATE,
7351 CASE_GROUND_STATE,
7352 CASE_GROUND_STATE,
7353 CASE_GROUND_STATE,
7354 /*	\		]		^		_	*/
7355 CASE_GROUND_STATE,
7356 CASE_GROUND_STATE,
7357 CASE_GROUND_STATE,
7358 CASE_GROUND_STATE,
7359 /*	`		a		b		c	*/
7360 CASE_GROUND_STATE,
7361 CASE_GROUND_STATE,
7362 CASE_GROUND_STATE,
7363 CASE_GROUND_STATE,
7364 /*	d		e		f		g	*/
7365 CASE_GROUND_STATE,
7366 CASE_GROUND_STATE,
7367 CASE_GROUND_STATE,
7368 CASE_GROUND_STATE,
7369 /*	h		i		j		k	*/
7370 CASE_GROUND_STATE,
7371 CASE_GROUND_STATE,
7372 CASE_GROUND_STATE,
7373 CASE_GROUND_STATE,
7374 /*	l		m		n		o	*/
7375 CASE_GROUND_STATE,
7376 CASE_GROUND_STATE,
7377 CASE_GROUND_STATE,
7378 CASE_GROUND_STATE,
7379 /*	p		q		r		s	*/
7380 CASE_GROUND_STATE,
7381 CASE_GROUND_STATE,
7382 CASE_GROUND_STATE,
7383 CASE_GROUND_STATE,
7384 /*	t		u		v		w	*/
7385 CASE_GROUND_STATE,
7386 CASE_GROUND_STATE,
7387 CASE_GROUND_STATE,
7388 CASE_GROUND_STATE,
7389 /*	x		y		z		{	*/
7390 CASE_GROUND_STATE,
7391 CASE_GROUND_STATE,
7392 CASE_GROUND_STATE,
7393 CASE_GROUND_STATE,
7394 /*	|		}		~		DEL	*/
7395 CASE_GROUND_STATE,
7396 CASE_GROUND_STATE,
7397 CASE_GROUND_STATE,
7398 CASE_IGNORE,
7399 /*      0x80            0x81            0x82            0x83    */
7400 CASE_GROUND_STATE,
7401 CASE_GROUND_STATE,
7402 CASE_GROUND_STATE,
7403 CASE_GROUND_STATE,
7404 /*      0x84            0x85            0x86            0x87    */
7405 CASE_IND,
7406 CASE_NEL,
7407 CASE_GROUND_STATE,
7408 CASE_GROUND_STATE,
7409 /*      0x88            0x89            0x8a            0x8b    */
7410 CASE_HTS,
7411 CASE_GROUND_STATE,
7412 CASE_GROUND_STATE,
7413 CASE_GROUND_STATE,
7414 /*      0x8c            0x8d            0x8e            0x8f    */
7415 CASE_GROUND_STATE,
7416 CASE_RI,
7417 CASE_SS2,
7418 CASE_SS3,
7419 /*      0x90            0x91            0x92            0x93    */
7420 CASE_DCS,
7421 CASE_GROUND_STATE,
7422 CASE_GROUND_STATE,
7423 CASE_GROUND_STATE,
7424 /*      0x94            0x95            0x96            0x97    */
7425 CASE_GROUND_STATE,
7426 CASE_GROUND_STATE,
7427 CASE_SPA,
7428 CASE_EPA,
7429 /*      0x98            0x99            0x9a            0x9b    */
7430 CASE_SOS,
7431 CASE_GROUND_STATE,
7432 CASE_DECID,
7433 CASE_CSI_STATE,
7434 /*      0x9c            0x9d            0x9e            0x9f    */
7435 CASE_ST,
7436 CASE_OSC,
7437 CASE_PM,
7438 CASE_APC,
7439 /*      nobreakspace    exclamdown      cent            sterling        */
7440 CASE_ESC_IGNORE,
7441 CASE_ESC_IGNORE,
7442 CASE_ESC_IGNORE,
7443 CASE_ESC_IGNORE,
7444 /*      currency        yen             brokenbar       section         */
7445 CASE_ESC_IGNORE,
7446 CASE_ESC_IGNORE,
7447 CASE_ESC_IGNORE,
7448 CASE_ESC_IGNORE,
7449 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
7450 CASE_ESC_IGNORE,
7451 CASE_ESC_IGNORE,
7452 CASE_ESC_IGNORE,
7453 CASE_ESC_IGNORE,
7454 /*      notsign         hyphen          registered      macron          */
7455 CASE_ESC_IGNORE,
7456 CASE_ESC_IGNORE,
7457 CASE_ESC_IGNORE,
7458 CASE_ESC_IGNORE,
7459 /*      degree          plusminus       twosuperior     threesuperior   */
7460 CASE_GSETS5,
7461 CASE_GROUND_STATE,
7462 CASE_GSETS5,
7463 CASE_GROUND_STATE,
7464 /*      acute           mu              paragraph       periodcentered  */
7465 CASE_GROUND_STATE,
7466 CASE_GROUND_STATE,
7467 CASE_GROUND_STATE,
7468 CASE_GROUND_STATE,
7469 /*      cedilla         onesuperior     masculine       guillemotright  */
7470 CASE_GROUND_STATE,
7471 CASE_GROUND_STATE,
7472 CASE_GROUND_STATE,
7473 CASE_GROUND_STATE,
7474 /*      onequarter      onehalf         threequarters   questiondown    */
7475 CASE_GROUND_STATE,
7476 CASE_GROUND_STATE,
7477 CASE_GROUND_STATE,
7478 CASE_GROUND_STATE,
7479 /*      Agrave          Aacute          Acircumflex     Atilde          */
7480 CASE_UTF8,
7481 CASE_GROUND_STATE,
7482 CASE_GROUND_STATE,
7483 CASE_GROUND_STATE,
7484 /*      Adiaeresis      Aring           AE              Ccedilla        */
7485 CASE_GROUND_STATE,
7486 CASE_GROUND_STATE,
7487 CASE_GROUND_STATE,
7488 CASE_UTF8,
7489 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
7490 CASE_GROUND_STATE,
7491 CASE_GROUND_STATE,
7492 CASE_GROUND_STATE,
7493 CASE_GROUND_STATE,
7494 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
7495 CASE_GROUND_STATE,
7496 CASE_GROUND_STATE,
7497 CASE_GROUND_STATE,
7498 CASE_GROUND_STATE,
7499 /*      Eth             Ntilde          Ograve          Oacute          */
7500 CASE_GROUND_STATE,
7501 CASE_GROUND_STATE,
7502 CASE_GROUND_STATE,
7503 CASE_GROUND_STATE,
7504 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
7505 CASE_GROUND_STATE,
7506 CASE_GROUND_STATE,
7507 CASE_GROUND_STATE,
7508 CASE_GROUND_STATE,
7509 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
7510 CASE_GROUND_STATE,
7511 CASE_GROUND_STATE,
7512 CASE_GROUND_STATE,
7513 CASE_GROUND_STATE,
7514 /*      Udiaeresis      Yacute          Thorn           ssharp          */
7515 CASE_GROUND_STATE,
7516 CASE_GROUND_STATE,
7517 CASE_GROUND_STATE,
7518 CASE_GROUND_STATE,
7519 /*      agrave          aacute          acircumflex     atilde          */
7520 CASE_GROUND_STATE,
7521 CASE_GROUND_STATE,
7522 CASE_GROUND_STATE,
7523 CASE_GROUND_STATE,
7524 /*      adiaeresis      aring           ae              ccedilla        */
7525 CASE_GROUND_STATE,
7526 CASE_GROUND_STATE,
7527 CASE_GROUND_STATE,
7528 CASE_GROUND_STATE,
7529 /*      egrave          eacute          ecircumflex     ediaeresis      */
7530 CASE_GROUND_STATE,
7531 CASE_GROUND_STATE,
7532 CASE_GROUND_STATE,
7533 CASE_GROUND_STATE,
7534 /*      igrave          iacute          icircumflex     idiaeresis      */
7535 CASE_GROUND_STATE,
7536 CASE_GROUND_STATE,
7537 CASE_GROUND_STATE,
7538 CASE_GROUND_STATE,
7539 /*      eth             ntilde          ograve          oacute          */
7540 CASE_GROUND_STATE,
7541 CASE_GROUND_STATE,
7542 CASE_GROUND_STATE,
7543 CASE_GROUND_STATE,
7544 /*      ocircumflex     otilde          odiaeresis      division        */
7545 CASE_GROUND_STATE,
7546 CASE_GROUND_STATE,
7547 CASE_GROUND_STATE,
7548 CASE_GROUND_STATE,
7549 /*      oslash          ugrave          uacute          ucircumflex     */
7550 CASE_GROUND_STATE,
7551 CASE_GROUND_STATE,
7552 CASE_GROUND_STATE,
7553 CASE_GROUND_STATE,
7554 /*      udiaeresis      yacute          thorn           ydiaeresis      */
7555 CASE_GROUND_STATE,
7556 CASE_GROUND_STATE,
7557 CASE_GROUND_STATE,
7558 CASE_IGNORE,
7559 };
7560 
7561 Const PARSE_T scs_2qt_table[] =		/* SCS " */
7562 {
7563 /*	NUL		SOH		STX		ETX	*/
7564 CASE_IGNORE,
7565 CASE_IGNORE,
7566 CASE_IGNORE,
7567 CASE_IGNORE,
7568 /*	EOT		ENQ		ACK		BEL	*/
7569 CASE_IGNORE,
7570 CASE_ENQ,
7571 CASE_IGNORE,
7572 CASE_BELL,
7573 /*	BS		HT		NL		VT	*/
7574 CASE_BS,
7575 CASE_TAB,
7576 CASE_VMOT,
7577 CASE_VMOT,
7578 /*	FF		CR		SO		SI	*/
7579 CASE_VMOT,
7580 CASE_CR,
7581 CASE_SO,
7582 CASE_SI,
7583 /*	DLE		DC1		DC2		DC3	*/
7584 CASE_IGNORE,
7585 CASE_IGNORE,
7586 CASE_IGNORE,
7587 CASE_IGNORE,
7588 /*	DC4		NAK		SYN		ETB	*/
7589 CASE_IGNORE,
7590 CASE_IGNORE,
7591 CASE_IGNORE,
7592 CASE_IGNORE,
7593 /*	CAN		EM		SUB		ESC	*/
7594 CASE_GROUND_STATE,
7595 CASE_IGNORE,
7596 CASE_GROUND_STATE,
7597 CASE_ESC,
7598 /*	FS		GS		RS		US	*/
7599 CASE_IGNORE,
7600 CASE_IGNORE,
7601 CASE_IGNORE,
7602 CASE_IGNORE,
7603 /*	SP		!		"		#	*/
7604 CASE_ESC_IGNORE,
7605 CASE_ESC_IGNORE,
7606 CASE_ESC_IGNORE,
7607 CASE_ESC_IGNORE,
7608 /*	$		%		&		'	*/
7609 CASE_ESC_IGNORE,
7610 CASE_ESC_IGNORE,
7611 CASE_ESC_IGNORE,
7612 CASE_ESC_IGNORE,
7613 /*	(		)		*		+	*/
7614 CASE_ESC_IGNORE,
7615 CASE_ESC_IGNORE,
7616 CASE_ESC_IGNORE,
7617 CASE_ESC_IGNORE,
7618 /*	,		-		.		/	*/
7619 CASE_ESC_IGNORE,
7620 CASE_ESC_IGNORE,
7621 CASE_ESC_IGNORE,
7622 CASE_ESC_IGNORE,
7623 /*	0		1		2		3	*/
7624 CASE_GROUND_STATE,
7625 CASE_GROUND_STATE,
7626 CASE_GROUND_STATE,
7627 CASE_GROUND_STATE,
7628 /*	4		5		6		7	*/
7629 CASE_GSETS_DQUOTE,
7630 CASE_GROUND_STATE,
7631 CASE_GROUND_STATE,
7632 CASE_GROUND_STATE,
7633 /*	8		9		:		;	*/
7634 CASE_GROUND_STATE,
7635 CASE_GROUND_STATE,
7636 CASE_GROUND_STATE,
7637 CASE_GROUND_STATE,
7638 /*	<		=		>		?	*/
7639 CASE_GROUND_STATE,
7640 CASE_GROUND_STATE,
7641 CASE_GSETS_DQUOTE,
7642 CASE_GSETS_DQUOTE,
7643 /*	@		A		B		C	*/
7644 CASE_GROUND_STATE,
7645 CASE_GROUND_STATE,
7646 CASE_GROUND_STATE,
7647 CASE_GROUND_STATE,
7648 /*	D		E		F		G	*/
7649 CASE_GROUND_STATE,
7650 CASE_GROUND_STATE,
7651 CASE_GROUND_STATE,
7652 CASE_GROUND_STATE,
7653 /*	H		I		J		K	*/
7654 CASE_GROUND_STATE,
7655 CASE_GROUND_STATE,
7656 CASE_GROUND_STATE,
7657 CASE_GROUND_STATE,
7658 /*	L		M		N		O	*/
7659 CASE_GROUND_STATE,
7660 CASE_GROUND_STATE,
7661 CASE_GROUND_STATE,
7662 CASE_GROUND_STATE,
7663 /*	P		Q		R		S	*/
7664 CASE_GROUND_STATE,
7665 CASE_GROUND_STATE,
7666 CASE_GROUND_STATE,
7667 CASE_GROUND_STATE,
7668 /*	T		U		V		W	*/
7669 CASE_GROUND_STATE,
7670 CASE_GROUND_STATE,
7671 CASE_GROUND_STATE,
7672 CASE_GROUND_STATE,
7673 /*	X		Y		Z		[	*/
7674 CASE_GROUND_STATE,
7675 CASE_GROUND_STATE,
7676 CASE_GROUND_STATE,
7677 CASE_GROUND_STATE,
7678 /*	\		]		^		_	*/
7679 CASE_GROUND_STATE,
7680 CASE_GROUND_STATE,
7681 CASE_GROUND_STATE,
7682 CASE_GROUND_STATE,
7683 /*	`		a		b		c	*/
7684 CASE_GROUND_STATE,
7685 CASE_GROUND_STATE,
7686 CASE_GROUND_STATE,
7687 CASE_GROUND_STATE,
7688 /*	d		e		f		g	*/
7689 CASE_GROUND_STATE,
7690 CASE_GROUND_STATE,
7691 CASE_GROUND_STATE,
7692 CASE_GROUND_STATE,
7693 /*	h		i		j		k	*/
7694 CASE_GROUND_STATE,
7695 CASE_GROUND_STATE,
7696 CASE_GROUND_STATE,
7697 CASE_GROUND_STATE,
7698 /*	l		m		n		o	*/
7699 CASE_GROUND_STATE,
7700 CASE_GROUND_STATE,
7701 CASE_GROUND_STATE,
7702 CASE_GROUND_STATE,
7703 /*	p		q		r		s	*/
7704 CASE_GROUND_STATE,
7705 CASE_GROUND_STATE,
7706 CASE_GROUND_STATE,
7707 CASE_GROUND_STATE,
7708 /*	t		u		v		w	*/
7709 CASE_GROUND_STATE,
7710 CASE_GROUND_STATE,
7711 CASE_GROUND_STATE,
7712 CASE_GROUND_STATE,
7713 /*	x		y		z		{	*/
7714 CASE_GROUND_STATE,
7715 CASE_GROUND_STATE,
7716 CASE_GROUND_STATE,
7717 CASE_GROUND_STATE,
7718 /*	|		}		~		DEL	*/
7719 CASE_GROUND_STATE,
7720 CASE_GROUND_STATE,
7721 CASE_GROUND_STATE,
7722 CASE_IGNORE,
7723 /*      0x80            0x81            0x82            0x83    */
7724 CASE_GROUND_STATE,
7725 CASE_GROUND_STATE,
7726 CASE_GROUND_STATE,
7727 CASE_GROUND_STATE,
7728 /*      0x84            0x85            0x86            0x87    */
7729 CASE_IND,
7730 CASE_NEL,
7731 CASE_GROUND_STATE,
7732 CASE_GROUND_STATE,
7733 /*      0x88            0x89            0x8a            0x8b    */
7734 CASE_HTS,
7735 CASE_GROUND_STATE,
7736 CASE_GROUND_STATE,
7737 CASE_GROUND_STATE,
7738 /*      0x8c            0x8d            0x8e            0x8f    */
7739 CASE_GROUND_STATE,
7740 CASE_RI,
7741 CASE_SS2,
7742 CASE_SS3,
7743 /*      0x90            0x91            0x92            0x93    */
7744 CASE_DCS,
7745 CASE_GROUND_STATE,
7746 CASE_GROUND_STATE,
7747 CASE_GROUND_STATE,
7748 /*      0x94            0x95            0x96            0x97    */
7749 CASE_GROUND_STATE,
7750 CASE_GROUND_STATE,
7751 CASE_SPA,
7752 CASE_EPA,
7753 /*      0x98            0x99            0x9a            0x9b    */
7754 CASE_SOS,
7755 CASE_GROUND_STATE,
7756 CASE_DECID,
7757 CASE_CSI_STATE,
7758 /*      0x9c            0x9d            0x9e            0x9f    */
7759 CASE_ST,
7760 CASE_OSC,
7761 CASE_PM,
7762 CASE_APC,
7763 /*      nobreakspace    exclamdown      cent            sterling        */
7764 CASE_ESC_IGNORE,
7765 CASE_ESC_IGNORE,
7766 CASE_ESC_IGNORE,
7767 CASE_ESC_IGNORE,
7768 /*      currency        yen             brokenbar       section         */
7769 CASE_ESC_IGNORE,
7770 CASE_ESC_IGNORE,
7771 CASE_ESC_IGNORE,
7772 CASE_ESC_IGNORE,
7773 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
7774 CASE_ESC_IGNORE,
7775 CASE_ESC_IGNORE,
7776 CASE_ESC_IGNORE,
7777 CASE_ESC_IGNORE,
7778 /*      notsign         hyphen          registered      macron          */
7779 CASE_ESC_IGNORE,
7780 CASE_ESC_IGNORE,
7781 CASE_ESC_IGNORE,
7782 CASE_ESC_IGNORE,
7783 /*      degree          plusminus       twosuperior     threesuperior   */
7784 CASE_GROUND_STATE,
7785 CASE_GROUND_STATE,
7786 CASE_GROUND_STATE,
7787 CASE_GROUND_STATE,
7788 /*      acute           mu              paragraph       periodcentered  */
7789 CASE_GSETS_DQUOTE,
7790 CASE_GROUND_STATE,
7791 CASE_GROUND_STATE,
7792 CASE_GROUND_STATE,
7793 /*      cedilla         onesuperior     masculine       guillemotright  */
7794 CASE_GROUND_STATE,
7795 CASE_GROUND_STATE,
7796 CASE_GROUND_STATE,
7797 CASE_GROUND_STATE,
7798 /*      onequarter      onehalf         threequarters   questiondown    */
7799 CASE_GROUND_STATE,
7800 CASE_GROUND_STATE,
7801 CASE_GSETS_DQUOTE,
7802 CASE_GSETS_DQUOTE,
7803 /*      Agrave          Aacute          Acircumflex     Atilde          */
7804 CASE_GROUND_STATE,
7805 CASE_GROUND_STATE,
7806 CASE_GROUND_STATE,
7807 CASE_GROUND_STATE,
7808 /*      Adiaeresis      Aring           AE              Ccedilla        */
7809 CASE_GROUND_STATE,
7810 CASE_GROUND_STATE,
7811 CASE_GROUND_STATE,
7812 CASE_GROUND_STATE,
7813 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
7814 CASE_GROUND_STATE,
7815 CASE_GROUND_STATE,
7816 CASE_GROUND_STATE,
7817 CASE_GROUND_STATE,
7818 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
7819 CASE_GROUND_STATE,
7820 CASE_GROUND_STATE,
7821 CASE_GROUND_STATE,
7822 CASE_GROUND_STATE,
7823 /*      Eth             Ntilde          Ograve          Oacute          */
7824 CASE_GROUND_STATE,
7825 CASE_GROUND_STATE,
7826 CASE_GROUND_STATE,
7827 CASE_GROUND_STATE,
7828 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
7829 CASE_GROUND_STATE,
7830 CASE_GROUND_STATE,
7831 CASE_GROUND_STATE,
7832 CASE_GROUND_STATE,
7833 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
7834 CASE_GROUND_STATE,
7835 CASE_GROUND_STATE,
7836 CASE_GROUND_STATE,
7837 CASE_GROUND_STATE,
7838 /*      Udiaeresis      Yacute          Thorn           ssharp          */
7839 CASE_GROUND_STATE,
7840 CASE_GROUND_STATE,
7841 CASE_GROUND_STATE,
7842 CASE_GROUND_STATE,
7843 /*      agrave          aacute          acircumflex     atilde          */
7844 CASE_GROUND_STATE,
7845 CASE_GROUND_STATE,
7846 CASE_GROUND_STATE,
7847 CASE_GROUND_STATE,
7848 /*      adiaeresis      aring           ae              ccedilla        */
7849 CASE_GROUND_STATE,
7850 CASE_GROUND_STATE,
7851 CASE_GROUND_STATE,
7852 CASE_GROUND_STATE,
7853 /*      egrave          eacute          ecircumflex     ediaeresis      */
7854 CASE_GROUND_STATE,
7855 CASE_GROUND_STATE,
7856 CASE_GROUND_STATE,
7857 CASE_GROUND_STATE,
7858 /*      igrave          iacute          icircumflex     idiaeresis      */
7859 CASE_GROUND_STATE,
7860 CASE_GROUND_STATE,
7861 CASE_GROUND_STATE,
7862 CASE_GROUND_STATE,
7863 /*      eth             ntilde          ograve          oacute          */
7864 CASE_GROUND_STATE,
7865 CASE_GROUND_STATE,
7866 CASE_GROUND_STATE,
7867 CASE_GROUND_STATE,
7868 /*      ocircumflex     otilde          odiaeresis      division        */
7869 CASE_GROUND_STATE,
7870 CASE_GROUND_STATE,
7871 CASE_GROUND_STATE,
7872 CASE_GROUND_STATE,
7873 /*      oslash          ugrave          uacute          ucircumflex     */
7874 CASE_GROUND_STATE,
7875 CASE_GROUND_STATE,
7876 CASE_GROUND_STATE,
7877 CASE_GROUND_STATE,
7878 /*      udiaeresis      yacute          thorn           ydiaeresis      */
7879 CASE_GROUND_STATE,
7880 CASE_GROUND_STATE,
7881 CASE_GROUND_STATE,
7882 CASE_IGNORE,
7883 };
7884 
7885 Const PARSE_T scs_amp_table[] =		/* SCS & */
7886 {
7887 /*	NUL		SOH		STX		ETX	*/
7888 CASE_IGNORE,
7889 CASE_IGNORE,
7890 CASE_IGNORE,
7891 CASE_IGNORE,
7892 /*	EOT		ENQ		ACK		BEL	*/
7893 CASE_IGNORE,
7894 CASE_ENQ,
7895 CASE_IGNORE,
7896 CASE_BELL,
7897 /*	BS		HT		NL		VT	*/
7898 CASE_BS,
7899 CASE_TAB,
7900 CASE_VMOT,
7901 CASE_VMOT,
7902 /*	FF		CR		SO		SI	*/
7903 CASE_VMOT,
7904 CASE_CR,
7905 CASE_SO,
7906 CASE_SI,
7907 /*	DLE		DC1		DC2		DC3	*/
7908 CASE_IGNORE,
7909 CASE_IGNORE,
7910 CASE_IGNORE,
7911 CASE_IGNORE,
7912 /*	DC4		NAK		SYN		ETB	*/
7913 CASE_IGNORE,
7914 CASE_IGNORE,
7915 CASE_IGNORE,
7916 CASE_IGNORE,
7917 /*	CAN		EM		SUB		ESC	*/
7918 CASE_GROUND_STATE,
7919 CASE_IGNORE,
7920 CASE_GROUND_STATE,
7921 CASE_ESC,
7922 /*	FS		GS		RS		US	*/
7923 CASE_IGNORE,
7924 CASE_IGNORE,
7925 CASE_IGNORE,
7926 CASE_IGNORE,
7927 /*	SP		!		"		#	*/
7928 CASE_ESC_IGNORE,
7929 CASE_ESC_IGNORE,
7930 CASE_ESC_IGNORE,
7931 CASE_ESC_IGNORE,
7932 /*	$		%		&		'	*/
7933 CASE_ESC_IGNORE,
7934 CASE_ESC_IGNORE,
7935 CASE_ESC_IGNORE,
7936 CASE_ESC_IGNORE,
7937 /*	(		)		*		+	*/
7938 CASE_ESC_IGNORE,
7939 CASE_ESC_IGNORE,
7940 CASE_ESC_IGNORE,
7941 CASE_ESC_IGNORE,
7942 /*	,		-		.		/	*/
7943 CASE_ESC_IGNORE,
7944 CASE_ESC_IGNORE,
7945 CASE_ESC_IGNORE,
7946 CASE_ESC_IGNORE,
7947 /*	0		1		2		3	*/
7948 CASE_GROUND_STATE,
7949 CASE_GROUND_STATE,
7950 CASE_GROUND_STATE,
7951 CASE_GROUND_STATE,
7952 /*	4		5		6		7	*/
7953 CASE_GSETS_AMPRSND,
7954 CASE_GROUND_STATE,
7955 CASE_GROUND_STATE,
7956 CASE_GROUND_STATE,
7957 /*	8		9		:		;	*/
7958 CASE_GROUND_STATE,
7959 CASE_GROUND_STATE,
7960 CASE_GROUND_STATE,
7961 CASE_GROUND_STATE,
7962 /*	<		=		>		?	*/
7963 CASE_GROUND_STATE,
7964 CASE_GROUND_STATE,
7965 CASE_GROUND_STATE,
7966 CASE_GROUND_STATE,
7967 /*	@		A		B		C	*/
7968 CASE_GROUND_STATE,
7969 CASE_GROUND_STATE,
7970 CASE_GROUND_STATE,
7971 CASE_GROUND_STATE,
7972 /*	D		E		F		G	*/
7973 CASE_GROUND_STATE,
7974 CASE_GROUND_STATE,
7975 CASE_GROUND_STATE,
7976 CASE_GROUND_STATE,
7977 /*	H		I		J		K	*/
7978 CASE_GROUND_STATE,
7979 CASE_GROUND_STATE,
7980 CASE_GROUND_STATE,
7981 CASE_GROUND_STATE,
7982 /*	L		M		N		O	*/
7983 CASE_GROUND_STATE,
7984 CASE_GROUND_STATE,
7985 CASE_GROUND_STATE,
7986 CASE_GROUND_STATE,
7987 /*	P		Q		R		S	*/
7988 CASE_GROUND_STATE,
7989 CASE_GROUND_STATE,
7990 CASE_GROUND_STATE,
7991 CASE_GROUND_STATE,
7992 /*	T		U		V		W	*/
7993 CASE_GROUND_STATE,
7994 CASE_GROUND_STATE,
7995 CASE_GROUND_STATE,
7996 CASE_GROUND_STATE,
7997 /*	X		Y		Z		[	*/
7998 CASE_GROUND_STATE,
7999 CASE_GROUND_STATE,
8000 CASE_GROUND_STATE,
8001 CASE_GROUND_STATE,
8002 /*	\		]		^		_	*/
8003 CASE_GROUND_STATE,
8004 CASE_GROUND_STATE,
8005 CASE_GROUND_STATE,
8006 CASE_GROUND_STATE,
8007 /*	`		a		b		c	*/
8008 CASE_GROUND_STATE,
8009 CASE_GROUND_STATE,
8010 CASE_GROUND_STATE,
8011 CASE_GROUND_STATE,
8012 /*	d		e		f		g	*/
8013 CASE_GROUND_STATE,
8014 CASE_GROUND_STATE,
8015 CASE_GROUND_STATE,
8016 CASE_GROUND_STATE,
8017 /*	h		i		j		k	*/
8018 CASE_GROUND_STATE,
8019 CASE_GROUND_STATE,
8020 CASE_GROUND_STATE,
8021 CASE_GROUND_STATE,
8022 /*	l		m		n		o	*/
8023 CASE_GROUND_STATE,
8024 CASE_GROUND_STATE,
8025 CASE_GROUND_STATE,
8026 CASE_GROUND_STATE,
8027 /*	p		q		r		s	*/
8028 CASE_GROUND_STATE,
8029 CASE_GROUND_STATE,
8030 CASE_GROUND_STATE,
8031 CASE_GROUND_STATE,
8032 /*	t		u		v		w	*/
8033 CASE_GROUND_STATE,
8034 CASE_GROUND_STATE,
8035 CASE_GROUND_STATE,
8036 CASE_GROUND_STATE,
8037 /*	x		y		z		{	*/
8038 CASE_GROUND_STATE,
8039 CASE_GROUND_STATE,
8040 CASE_GROUND_STATE,
8041 CASE_GROUND_STATE,
8042 /*	|		}		~		DEL	*/
8043 CASE_GROUND_STATE,
8044 CASE_GROUND_STATE,
8045 CASE_GROUND_STATE,
8046 CASE_IGNORE,
8047 /*      0x80            0x81            0x82            0x83    */
8048 CASE_GROUND_STATE,
8049 CASE_GROUND_STATE,
8050 CASE_GROUND_STATE,
8051 CASE_GROUND_STATE,
8052 /*      0x84            0x85            0x86            0x87    */
8053 CASE_IND,
8054 CASE_NEL,
8055 CASE_GROUND_STATE,
8056 CASE_GROUND_STATE,
8057 /*      0x88            0x89            0x8a            0x8b    */
8058 CASE_HTS,
8059 CASE_GROUND_STATE,
8060 CASE_GROUND_STATE,
8061 CASE_GROUND_STATE,
8062 /*      0x8c            0x8d            0x8e            0x8f    */
8063 CASE_GROUND_STATE,
8064 CASE_RI,
8065 CASE_SS2,
8066 CASE_SS3,
8067 /*      0x90            0x91            0x92            0x93    */
8068 CASE_DCS,
8069 CASE_GROUND_STATE,
8070 CASE_GROUND_STATE,
8071 CASE_GROUND_STATE,
8072 /*      0x94            0x95            0x96            0x97    */
8073 CASE_GROUND_STATE,
8074 CASE_GROUND_STATE,
8075 CASE_SPA,
8076 CASE_EPA,
8077 /*      0x98            0x99            0x9a            0x9b    */
8078 CASE_SOS,
8079 CASE_GROUND_STATE,
8080 CASE_DECID,
8081 CASE_CSI_STATE,
8082 /*      0x9c            0x9d            0x9e            0x9f    */
8083 CASE_ST,
8084 CASE_OSC,
8085 CASE_PM,
8086 CASE_APC,
8087 /*      nobreakspace    exclamdown      cent            sterling        */
8088 CASE_ESC_IGNORE,
8089 CASE_ESC_IGNORE,
8090 CASE_ESC_IGNORE,
8091 CASE_ESC_IGNORE,
8092 /*      currency        yen             brokenbar       section         */
8093 CASE_ESC_IGNORE,
8094 CASE_ESC_IGNORE,
8095 CASE_ESC_IGNORE,
8096 CASE_ESC_IGNORE,
8097 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
8098 CASE_ESC_IGNORE,
8099 CASE_ESC_IGNORE,
8100 CASE_ESC_IGNORE,
8101 CASE_ESC_IGNORE,
8102 /*      notsign         hyphen          registered      macron          */
8103 CASE_ESC_IGNORE,
8104 CASE_ESC_IGNORE,
8105 CASE_ESC_IGNORE,
8106 CASE_ESC_IGNORE,
8107 /*      degree          plusminus       twosuperior     threesuperior   */
8108 CASE_GROUND_STATE,
8109 CASE_GROUND_STATE,
8110 CASE_GROUND_STATE,
8111 CASE_GROUND_STATE,
8112 /*      acute           mu              paragraph       periodcentered  */
8113 CASE_GSETS_AMPRSND,
8114 CASE_GROUND_STATE,
8115 CASE_GROUND_STATE,
8116 CASE_GROUND_STATE,
8117 /*      cedilla         onesuperior     masculine       guillemotright  */
8118 CASE_GROUND_STATE,
8119 CASE_GROUND_STATE,
8120 CASE_GROUND_STATE,
8121 CASE_GROUND_STATE,
8122 /*      onequarter      onehalf         threequarters   questiondown    */
8123 CASE_GROUND_STATE,
8124 CASE_GROUND_STATE,
8125 CASE_GROUND_STATE,
8126 CASE_GROUND_STATE,
8127 /*      Agrave          Aacute          Acircumflex     Atilde          */
8128 CASE_GROUND_STATE,
8129 CASE_GROUND_STATE,
8130 CASE_GROUND_STATE,
8131 CASE_GROUND_STATE,
8132 /*      Adiaeresis      Aring           AE              Ccedilla        */
8133 CASE_GROUND_STATE,
8134 CASE_GROUND_STATE,
8135 CASE_GROUND_STATE,
8136 CASE_GROUND_STATE,
8137 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
8138 CASE_GROUND_STATE,
8139 CASE_GROUND_STATE,
8140 CASE_GROUND_STATE,
8141 CASE_GROUND_STATE,
8142 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
8143 CASE_GROUND_STATE,
8144 CASE_GROUND_STATE,
8145 CASE_GROUND_STATE,
8146 CASE_GROUND_STATE,
8147 /*      Eth             Ntilde          Ograve          Oacute          */
8148 CASE_GROUND_STATE,
8149 CASE_GROUND_STATE,
8150 CASE_GROUND_STATE,
8151 CASE_GROUND_STATE,
8152 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
8153 CASE_GROUND_STATE,
8154 CASE_GROUND_STATE,
8155 CASE_GROUND_STATE,
8156 CASE_GROUND_STATE,
8157 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
8158 CASE_GROUND_STATE,
8159 CASE_GROUND_STATE,
8160 CASE_GROUND_STATE,
8161 CASE_GROUND_STATE,
8162 /*      Udiaeresis      Yacute          Thorn           ssharp          */
8163 CASE_GROUND_STATE,
8164 CASE_GROUND_STATE,
8165 CASE_GROUND_STATE,
8166 CASE_GROUND_STATE,
8167 /*      agrave          aacute          acircumflex     atilde          */
8168 CASE_GROUND_STATE,
8169 CASE_GROUND_STATE,
8170 CASE_GROUND_STATE,
8171 CASE_GROUND_STATE,
8172 /*      adiaeresis      aring           ae              ccedilla        */
8173 CASE_GROUND_STATE,
8174 CASE_GROUND_STATE,
8175 CASE_GROUND_STATE,
8176 CASE_GROUND_STATE,
8177 /*      egrave          eacute          ecircumflex     ediaeresis      */
8178 CASE_GROUND_STATE,
8179 CASE_GROUND_STATE,
8180 CASE_GROUND_STATE,
8181 CASE_GROUND_STATE,
8182 /*      igrave          iacute          icircumflex     idiaeresis      */
8183 CASE_GROUND_STATE,
8184 CASE_GROUND_STATE,
8185 CASE_GROUND_STATE,
8186 CASE_GROUND_STATE,
8187 /*      eth             ntilde          ograve          oacute          */
8188 CASE_GROUND_STATE,
8189 CASE_GROUND_STATE,
8190 CASE_GROUND_STATE,
8191 CASE_GROUND_STATE,
8192 /*      ocircumflex     otilde          odiaeresis      division        */
8193 CASE_GROUND_STATE,
8194 CASE_GROUND_STATE,
8195 CASE_GROUND_STATE,
8196 CASE_GROUND_STATE,
8197 /*      oslash          ugrave          uacute          ucircumflex     */
8198 CASE_GROUND_STATE,
8199 CASE_GROUND_STATE,
8200 CASE_GROUND_STATE,
8201 CASE_GROUND_STATE,
8202 /*      udiaeresis      yacute          thorn           ydiaeresis      */
8203 CASE_GROUND_STATE,
8204 CASE_GROUND_STATE,
8205 CASE_GROUND_STATE,
8206 CASE_IGNORE,
8207 };
8208 
8209 Const PARSE_T scs_pct_table[] =		/* SCS % */
8210 {
8211 /*	NUL		SOH		STX		ETX	*/
8212 CASE_IGNORE,
8213 CASE_IGNORE,
8214 CASE_IGNORE,
8215 CASE_IGNORE,
8216 /*	EOT		ENQ		ACK		BEL	*/
8217 CASE_IGNORE,
8218 CASE_ENQ,
8219 CASE_IGNORE,
8220 CASE_BELL,
8221 /*	BS		HT		NL		VT	*/
8222 CASE_BS,
8223 CASE_TAB,
8224 CASE_VMOT,
8225 CASE_VMOT,
8226 /*	FF		CR		SO		SI	*/
8227 CASE_VMOT,
8228 CASE_CR,
8229 CASE_SO,
8230 CASE_SI,
8231 /*	DLE		DC1		DC2		DC3	*/
8232 CASE_IGNORE,
8233 CASE_IGNORE,
8234 CASE_IGNORE,
8235 CASE_IGNORE,
8236 /*	DC4		NAK		SYN		ETB	*/
8237 CASE_IGNORE,
8238 CASE_IGNORE,
8239 CASE_IGNORE,
8240 CASE_IGNORE,
8241 /*	CAN		EM		SUB		ESC	*/
8242 CASE_GROUND_STATE,
8243 CASE_IGNORE,
8244 CASE_GROUND_STATE,
8245 CASE_ESC,
8246 /*	FS		GS		RS		US	*/
8247 CASE_IGNORE,
8248 CASE_IGNORE,
8249 CASE_IGNORE,
8250 CASE_IGNORE,
8251 /*	SP		!		"		#	*/
8252 CASE_ESC_IGNORE,
8253 CASE_ESC_IGNORE,
8254 CASE_ESC_IGNORE,
8255 CASE_ESC_IGNORE,
8256 /*	$		%		&		'	*/
8257 CASE_ESC_IGNORE,
8258 CASE_ESC_IGNORE,
8259 CASE_ESC_IGNORE,
8260 CASE_ESC_IGNORE,
8261 /*	(		)		*		+	*/
8262 CASE_ESC_IGNORE,
8263 CASE_ESC_IGNORE,
8264 CASE_ESC_IGNORE,
8265 CASE_ESC_IGNORE,
8266 /*	,		-		.		/	*/
8267 CASE_ESC_IGNORE,
8268 CASE_ESC_IGNORE,
8269 CASE_ESC_IGNORE,
8270 CASE_ESC_IGNORE,
8271 /*	0		1		2		3	*/
8272 CASE_GSETS_PERCENT,
8273 CASE_GROUND_STATE,
8274 CASE_GSETS_PERCENT,
8275 CASE_GSETS_PERCENT,
8276 /*	4		5		6		7	*/
8277 CASE_GROUND_STATE,
8278 CASE_GSETS_PERCENT,
8279 CASE_GSETS_PERCENT,
8280 CASE_GROUND_STATE,
8281 /*	8		9		:		;	*/
8282 CASE_GROUND_STATE,
8283 CASE_GROUND_STATE,
8284 CASE_GROUND_STATE,
8285 CASE_GROUND_STATE,
8286 /*	<		=		>		?	*/
8287 CASE_GROUND_STATE,
8288 CASE_GSETS_PERCENT,
8289 CASE_GROUND_STATE,
8290 CASE_GROUND_STATE,
8291 /*	@		A		B		C	*/
8292 CASE_GROUND_STATE,
8293 CASE_GROUND_STATE,
8294 CASE_GROUND_STATE,
8295 CASE_GROUND_STATE,
8296 /*	D		E		F		G	*/
8297 CASE_GROUND_STATE,
8298 CASE_GROUND_STATE,
8299 CASE_GROUND_STATE,
8300 CASE_GROUND_STATE,
8301 /*	H		I		J		K	*/
8302 CASE_GROUND_STATE,
8303 CASE_GROUND_STATE,
8304 CASE_GROUND_STATE,
8305 CASE_GROUND_STATE,
8306 /*	L		M		N		O	*/
8307 CASE_GROUND_STATE,
8308 CASE_GROUND_STATE,
8309 CASE_GROUND_STATE,
8310 CASE_GROUND_STATE,
8311 /*	P		Q		R		S	*/
8312 CASE_GROUND_STATE,
8313 CASE_GROUND_STATE,
8314 CASE_GROUND_STATE,
8315 CASE_GROUND_STATE,
8316 /*	T		U		V		W	*/
8317 CASE_GROUND_STATE,
8318 CASE_GROUND_STATE,
8319 CASE_GROUND_STATE,
8320 CASE_GROUND_STATE,
8321 /*	X		Y		Z		[	*/
8322 CASE_GROUND_STATE,
8323 CASE_GROUND_STATE,
8324 CASE_GROUND_STATE,
8325 CASE_GROUND_STATE,
8326 /*	\		]		^		_	*/
8327 CASE_GROUND_STATE,
8328 CASE_GROUND_STATE,
8329 CASE_GROUND_STATE,
8330 CASE_GROUND_STATE,
8331 /*	`		a		b		c	*/
8332 CASE_GROUND_STATE,
8333 CASE_GROUND_STATE,
8334 CASE_GROUND_STATE,
8335 CASE_GROUND_STATE,
8336 /*	d		e		f		g	*/
8337 CASE_GROUND_STATE,
8338 CASE_GROUND_STATE,
8339 CASE_GROUND_STATE,
8340 CASE_GROUND_STATE,
8341 /*	h		i		j		k	*/
8342 CASE_GROUND_STATE,
8343 CASE_GROUND_STATE,
8344 CASE_GROUND_STATE,
8345 CASE_GROUND_STATE,
8346 /*	l		m		n		o	*/
8347 CASE_GROUND_STATE,
8348 CASE_GROUND_STATE,
8349 CASE_GROUND_STATE,
8350 CASE_GROUND_STATE,
8351 /*	p		q		r		s	*/
8352 CASE_GROUND_STATE,
8353 CASE_GROUND_STATE,
8354 CASE_GROUND_STATE,
8355 CASE_GROUND_STATE,
8356 /*	t		u		v		w	*/
8357 CASE_GROUND_STATE,
8358 CASE_GROUND_STATE,
8359 CASE_GROUND_STATE,
8360 CASE_GROUND_STATE,
8361 /*	x		y		z		{	*/
8362 CASE_GROUND_STATE,
8363 CASE_GROUND_STATE,
8364 CASE_GROUND_STATE,
8365 CASE_GROUND_STATE,
8366 /*	|		}		~		DEL	*/
8367 CASE_GROUND_STATE,
8368 CASE_GROUND_STATE,
8369 CASE_GROUND_STATE,
8370 CASE_IGNORE,
8371 /*      0x80            0x81            0x82            0x83    */
8372 CASE_GROUND_STATE,
8373 CASE_GROUND_STATE,
8374 CASE_GROUND_STATE,
8375 CASE_GROUND_STATE,
8376 /*      0x84            0x85            0x86            0x87    */
8377 CASE_IND,
8378 CASE_NEL,
8379 CASE_GROUND_STATE,
8380 CASE_GROUND_STATE,
8381 /*      0x88            0x89            0x8a            0x8b    */
8382 CASE_HTS,
8383 CASE_GROUND_STATE,
8384 CASE_GROUND_STATE,
8385 CASE_GROUND_STATE,
8386 /*      0x8c            0x8d            0x8e            0x8f    */
8387 CASE_GROUND_STATE,
8388 CASE_RI,
8389 CASE_SS2,
8390 CASE_SS3,
8391 /*      0x90            0x91            0x92            0x93    */
8392 CASE_DCS,
8393 CASE_GROUND_STATE,
8394 CASE_GROUND_STATE,
8395 CASE_GROUND_STATE,
8396 /*      0x94            0x95            0x96            0x97    */
8397 CASE_GROUND_STATE,
8398 CASE_GROUND_STATE,
8399 CASE_SPA,
8400 CASE_EPA,
8401 /*      0x98            0x99            0x9a            0x9b    */
8402 CASE_SOS,
8403 CASE_GROUND_STATE,
8404 CASE_DECID,
8405 CASE_CSI_STATE,
8406 /*      0x9c            0x9d            0x9e            0x9f    */
8407 CASE_ST,
8408 CASE_OSC,
8409 CASE_PM,
8410 CASE_APC,
8411 /*      nobreakspace    exclamdown      cent            sterling        */
8412 CASE_ESC_IGNORE,
8413 CASE_ESC_IGNORE,
8414 CASE_ESC_IGNORE,
8415 CASE_ESC_IGNORE,
8416 /*      currency        yen             brokenbar       section         */
8417 CASE_ESC_IGNORE,
8418 CASE_ESC_IGNORE,
8419 CASE_ESC_IGNORE,
8420 CASE_ESC_IGNORE,
8421 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
8422 CASE_ESC_IGNORE,
8423 CASE_ESC_IGNORE,
8424 CASE_ESC_IGNORE,
8425 CASE_ESC_IGNORE,
8426 /*      notsign         hyphen          registered      macron          */
8427 CASE_ESC_IGNORE,
8428 CASE_ESC_IGNORE,
8429 CASE_ESC_IGNORE,
8430 CASE_ESC_IGNORE,
8431 /*      degree          plusminus       twosuperior     threesuperior   */
8432 CASE_GSETS_PERCENT,
8433 CASE_GROUND_STATE,
8434 CASE_GSETS_PERCENT,
8435 CASE_GSETS_PERCENT,
8436 /*      acute           mu              paragraph       periodcentered  */
8437 CASE_GROUND_STATE,
8438 CASE_GSETS_PERCENT,
8439 CASE_GSETS_PERCENT,
8440 CASE_GROUND_STATE,
8441 /*      cedilla         onesuperior     masculine       guillemotright  */
8442 CASE_GROUND_STATE,
8443 CASE_GROUND_STATE,
8444 CASE_GROUND_STATE,
8445 CASE_GROUND_STATE,
8446 /*      onequarter      onehalf         threequarters   questiondown    */
8447 CASE_GROUND_STATE,
8448 CASE_GSETS_PERCENT,
8449 CASE_GROUND_STATE,
8450 CASE_GROUND_STATE,
8451 /*      Agrave          Aacute          Acircumflex     Atilde          */
8452 CASE_GROUND_STATE,
8453 CASE_GROUND_STATE,
8454 CASE_GROUND_STATE,
8455 CASE_GROUND_STATE,
8456 /*      Adiaeresis      Aring           AE              Ccedilla        */
8457 CASE_GROUND_STATE,
8458 CASE_GROUND_STATE,
8459 CASE_GROUND_STATE,
8460 CASE_GROUND_STATE,
8461 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
8462 CASE_GROUND_STATE,
8463 CASE_GROUND_STATE,
8464 CASE_GROUND_STATE,
8465 CASE_GROUND_STATE,
8466 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
8467 CASE_GROUND_STATE,
8468 CASE_GROUND_STATE,
8469 CASE_GROUND_STATE,
8470 CASE_GROUND_STATE,
8471 /*      Eth             Ntilde          Ograve          Oacute          */
8472 CASE_GROUND_STATE,
8473 CASE_GROUND_STATE,
8474 CASE_GROUND_STATE,
8475 CASE_GROUND_STATE,
8476 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
8477 CASE_GROUND_STATE,
8478 CASE_GROUND_STATE,
8479 CASE_GROUND_STATE,
8480 CASE_GROUND_STATE,
8481 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
8482 CASE_GROUND_STATE,
8483 CASE_GROUND_STATE,
8484 CASE_GROUND_STATE,
8485 CASE_GROUND_STATE,
8486 /*      Udiaeresis      Yacute          Thorn           ssharp          */
8487 CASE_GROUND_STATE,
8488 CASE_GROUND_STATE,
8489 CASE_GROUND_STATE,
8490 CASE_GROUND_STATE,
8491 /*      agrave          aacute          acircumflex     atilde          */
8492 CASE_GROUND_STATE,
8493 CASE_GROUND_STATE,
8494 CASE_GROUND_STATE,
8495 CASE_GROUND_STATE,
8496 /*      adiaeresis      aring           ae              ccedilla        */
8497 CASE_GROUND_STATE,
8498 CASE_GROUND_STATE,
8499 CASE_GROUND_STATE,
8500 CASE_GROUND_STATE,
8501 /*      egrave          eacute          ecircumflex     ediaeresis      */
8502 CASE_GROUND_STATE,
8503 CASE_GROUND_STATE,
8504 CASE_GROUND_STATE,
8505 CASE_GROUND_STATE,
8506 /*      igrave          iacute          icircumflex     idiaeresis      */
8507 CASE_GROUND_STATE,
8508 CASE_GROUND_STATE,
8509 CASE_GROUND_STATE,
8510 CASE_GROUND_STATE,
8511 /*      eth             ntilde          ograve          oacute          */
8512 CASE_GROUND_STATE,
8513 CASE_GROUND_STATE,
8514 CASE_GROUND_STATE,
8515 CASE_GROUND_STATE,
8516 /*      ocircumflex     otilde          odiaeresis      division        */
8517 CASE_GROUND_STATE,
8518 CASE_GROUND_STATE,
8519 CASE_GROUND_STATE,
8520 CASE_GROUND_STATE,
8521 /*      oslash          ugrave          uacute          ucircumflex     */
8522 CASE_GROUND_STATE,
8523 CASE_GROUND_STATE,
8524 CASE_GROUND_STATE,
8525 CASE_GROUND_STATE,
8526 /*      udiaeresis      yacute          thorn           ydiaeresis      */
8527 CASE_GROUND_STATE,
8528 CASE_GROUND_STATE,
8529 CASE_GROUND_STATE,
8530 CASE_IGNORE,
8531 };
8532 #endif /* OPT_WIDE_CHARS */
8533 
8534 #if OPT_VT52_MODE
8535 Const PARSE_T vt52_table[] =
8536 {
8537 /*	NUL		SOH		STX		ETX	*/
8538 CASE_IGNORE,
8539 CASE_IGNORE,
8540 CASE_IGNORE,
8541 CASE_IGNORE,
8542 /*	EOT		ENQ		ACK		BEL	*/
8543 CASE_IGNORE,
8544 CASE_ENQ,
8545 CASE_IGNORE,
8546 CASE_BELL,
8547 /*	BS		HT		NL		VT	*/
8548 CASE_BS,
8549 CASE_TAB,
8550 CASE_VMOT,
8551 CASE_VMOT,
8552 /*	FF		CR		SO		SI	*/
8553 CASE_VMOT,
8554 CASE_CR,
8555 CASE_IGNORE,
8556 CASE_IGNORE,
8557 /*	DLE		DC1		DC2		DC3	*/
8558 CASE_IGNORE,
8559 CASE_IGNORE,
8560 CASE_IGNORE,
8561 CASE_IGNORE,
8562 /*	DC4		NAK		SYN		ETB	*/
8563 CASE_IGNORE,
8564 CASE_IGNORE,
8565 CASE_IGNORE,
8566 CASE_IGNORE,
8567 /*	CAN		EM		SUB		ESC	*/
8568 CASE_GROUND_STATE,
8569 CASE_IGNORE,
8570 CASE_GROUND_STATE,
8571 CASE_ESC,
8572 /*	FS		GS		RS		US	*/
8573 CASE_IGNORE,
8574 CASE_IGNORE,
8575 CASE_IGNORE,
8576 CASE_IGNORE,
8577 /*	SP		!		"		#	*/
8578 CASE_PRINT,
8579 CASE_PRINT,
8580 CASE_PRINT,
8581 CASE_PRINT,
8582 /*	$		%		&		'	*/
8583 CASE_PRINT,
8584 CASE_PRINT,
8585 CASE_PRINT,
8586 CASE_PRINT,
8587 /*	(		)		*		+	*/
8588 CASE_PRINT,
8589 CASE_PRINT,
8590 CASE_PRINT,
8591 CASE_PRINT,
8592 /*	,		-		.		/	*/
8593 CASE_PRINT,
8594 CASE_PRINT,
8595 CASE_PRINT,
8596 CASE_PRINT,
8597 /*	0		1		2		3	*/
8598 CASE_PRINT,
8599 CASE_PRINT,
8600 CASE_PRINT,
8601 CASE_PRINT,
8602 /*	4		5		6		7	*/
8603 CASE_PRINT,
8604 CASE_PRINT,
8605 CASE_PRINT,
8606 CASE_PRINT,
8607 /*	8		9		:		;	*/
8608 CASE_PRINT,
8609 CASE_PRINT,
8610 CASE_PRINT,
8611 CASE_PRINT,
8612 /*	<		=		>		?	*/
8613 CASE_PRINT,
8614 CASE_PRINT,
8615 CASE_PRINT,
8616 CASE_PRINT,
8617 /*	@		A		B		C	*/
8618 CASE_PRINT,
8619 CASE_PRINT,
8620 CASE_PRINT,
8621 CASE_PRINT,
8622 /*	D		E		F		G	*/
8623 CASE_PRINT,
8624 CASE_PRINT,
8625 CASE_PRINT,
8626 CASE_PRINT,
8627 /*	H		I		J		K	*/
8628 CASE_PRINT,
8629 CASE_PRINT,
8630 CASE_PRINT,
8631 CASE_PRINT,
8632 /*	L		M		N		O	*/
8633 CASE_PRINT,
8634 CASE_PRINT,
8635 CASE_PRINT,
8636 CASE_PRINT,
8637 /*	P		Q		R		S	*/
8638 CASE_PRINT,
8639 CASE_PRINT,
8640 CASE_PRINT,
8641 CASE_PRINT,
8642 /*	T		U		V		W	*/
8643 CASE_PRINT,
8644 CASE_PRINT,
8645 CASE_PRINT,
8646 CASE_PRINT,
8647 /*	X		Y		Z		[	*/
8648 CASE_PRINT,
8649 CASE_PRINT,
8650 CASE_PRINT,
8651 CASE_PRINT,
8652 /*	\		]		^		_	*/
8653 CASE_PRINT,
8654 CASE_PRINT,
8655 CASE_PRINT,
8656 CASE_PRINT,
8657 /*	`		a		b		c	*/
8658 CASE_PRINT,
8659 CASE_PRINT,
8660 CASE_PRINT,
8661 CASE_PRINT,
8662 /*	d		e		f		g	*/
8663 CASE_PRINT,
8664 CASE_PRINT,
8665 CASE_PRINT,
8666 CASE_PRINT,
8667 /*	h		i		j		k	*/
8668 CASE_PRINT,
8669 CASE_PRINT,
8670 CASE_PRINT,
8671 CASE_PRINT,
8672 /*	l		m		n		o	*/
8673 CASE_PRINT,
8674 CASE_PRINT,
8675 CASE_PRINT,
8676 CASE_PRINT,
8677 /*	p		q		r		s	*/
8678 CASE_PRINT,
8679 CASE_PRINT,
8680 CASE_PRINT,
8681 CASE_PRINT,
8682 /*	t		u		v		w	*/
8683 CASE_PRINT,
8684 CASE_PRINT,
8685 CASE_PRINT,
8686 CASE_PRINT,
8687 /*	x		y		z		{	*/
8688 CASE_PRINT,
8689 CASE_PRINT,
8690 CASE_PRINT,
8691 CASE_PRINT,
8692 /*	|		}		~		DEL	*/
8693 CASE_PRINT,
8694 CASE_PRINT,
8695 CASE_PRINT,
8696 CASE_IGNORE,
8697 /*      0x80            0x81            0x82            0x83    */
8698 CASE_IGNORE,
8699 CASE_IGNORE,
8700 CASE_IGNORE,
8701 CASE_IGNORE,
8702 /*      0x84            0x85            0x86            0x87    */
8703 CASE_IGNORE,
8704 CASE_IGNORE,
8705 CASE_IGNORE,
8706 CASE_IGNORE,
8707 /*      0x88            0x89            0x8a            0x8b    */
8708 CASE_IGNORE,
8709 CASE_IGNORE,
8710 CASE_IGNORE,
8711 CASE_IGNORE,
8712 /*      0x8c            0x8d            0x8e            0x8f    */
8713 CASE_IGNORE,
8714 CASE_IGNORE,
8715 CASE_IGNORE,
8716 CASE_IGNORE,
8717 /*      0x90            0x91            0x92            0x93    */
8718 CASE_IGNORE,
8719 CASE_IGNORE,
8720 CASE_IGNORE,
8721 CASE_IGNORE,
8722 /*      0x94            0x95            0x96            0x97    */
8723 CASE_IGNORE,
8724 CASE_IGNORE,
8725 CASE_IGNORE,
8726 CASE_IGNORE,
8727 /*      0x98            0x99            0x9a            0x9b    */
8728 CASE_IGNORE,
8729 CASE_IGNORE,
8730 CASE_IGNORE,
8731 CASE_IGNORE,
8732 /*      0x9c            0x9d            0x9e            0x9f    */
8733 CASE_IGNORE,
8734 CASE_IGNORE,
8735 CASE_IGNORE,
8736 CASE_IGNORE,
8737 /*      nobreakspace    exclamdown      cent            sterling        */
8738 CASE_IGNORE,
8739 CASE_IGNORE,
8740 CASE_IGNORE,
8741 CASE_IGNORE,
8742 /*      currency        yen             brokenbar       section         */
8743 CASE_IGNORE,
8744 CASE_IGNORE,
8745 CASE_IGNORE,
8746 CASE_IGNORE,
8747 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
8748 CASE_IGNORE,
8749 CASE_IGNORE,
8750 CASE_IGNORE,
8751 CASE_IGNORE,
8752 /*      notsign         hyphen          registered      macron          */
8753 CASE_IGNORE,
8754 CASE_IGNORE,
8755 CASE_IGNORE,
8756 CASE_IGNORE,
8757 /*      degree          plusminus       twosuperior     threesuperior   */
8758 CASE_IGNORE,
8759 CASE_IGNORE,
8760 CASE_IGNORE,
8761 CASE_IGNORE,
8762 /*      acute           mu              paragraph       periodcentered  */
8763 CASE_IGNORE,
8764 CASE_IGNORE,
8765 CASE_IGNORE,
8766 CASE_IGNORE,
8767 /*      cedilla         onesuperior     masculine       guillemotright  */
8768 CASE_IGNORE,
8769 CASE_IGNORE,
8770 CASE_IGNORE,
8771 CASE_IGNORE,
8772 /*      onequarter      onehalf         threequarters   questiondown    */
8773 CASE_IGNORE,
8774 CASE_IGNORE,
8775 CASE_IGNORE,
8776 CASE_IGNORE,
8777 /*      Agrave          Aacute          Acircumflex     Atilde          */
8778 CASE_IGNORE,
8779 CASE_IGNORE,
8780 CASE_IGNORE,
8781 CASE_IGNORE,
8782 /*      Adiaeresis      Aring           AE              Ccedilla        */
8783 CASE_IGNORE,
8784 CASE_IGNORE,
8785 CASE_IGNORE,
8786 CASE_IGNORE,
8787 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
8788 CASE_IGNORE,
8789 CASE_IGNORE,
8790 CASE_IGNORE,
8791 CASE_IGNORE,
8792 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
8793 CASE_IGNORE,
8794 CASE_IGNORE,
8795 CASE_IGNORE,
8796 CASE_IGNORE,
8797 /*      Eth             Ntilde          Ograve          Oacute          */
8798 CASE_IGNORE,
8799 CASE_IGNORE,
8800 CASE_IGNORE,
8801 CASE_IGNORE,
8802 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
8803 CASE_IGNORE,
8804 CASE_IGNORE,
8805 CASE_IGNORE,
8806 CASE_IGNORE,
8807 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
8808 CASE_IGNORE,
8809 CASE_IGNORE,
8810 CASE_IGNORE,
8811 CASE_IGNORE,
8812 /*      Udiaeresis      Yacute          Thorn           ssharp          */
8813 CASE_IGNORE,
8814 CASE_IGNORE,
8815 CASE_IGNORE,
8816 CASE_IGNORE,
8817 /*      agrave          aacute          acircumflex     atilde          */
8818 CASE_IGNORE,
8819 CASE_IGNORE,
8820 CASE_IGNORE,
8821 CASE_IGNORE,
8822 /*      adiaeresis      aring           ae              ccedilla        */
8823 CASE_IGNORE,
8824 CASE_IGNORE,
8825 CASE_IGNORE,
8826 CASE_IGNORE,
8827 /*      egrave          eacute          ecircumflex     ediaeresis      */
8828 CASE_IGNORE,
8829 CASE_IGNORE,
8830 CASE_IGNORE,
8831 CASE_IGNORE,
8832 /*      igrave          iacute          icircumflex     idiaeresis      */
8833 CASE_IGNORE,
8834 CASE_IGNORE,
8835 CASE_IGNORE,
8836 CASE_IGNORE,
8837 /*      eth             ntilde          ograve          oacute          */
8838 CASE_IGNORE,
8839 CASE_IGNORE,
8840 CASE_IGNORE,
8841 CASE_IGNORE,
8842 /*      ocircumflex     otilde          odiaeresis      division        */
8843 CASE_IGNORE,
8844 CASE_IGNORE,
8845 CASE_IGNORE,
8846 CASE_IGNORE,
8847 /*      oslash          ugrave          uacute          ucircumflex     */
8848 CASE_IGNORE,
8849 CASE_IGNORE,
8850 CASE_IGNORE,
8851 CASE_IGNORE,
8852 /*      udiaeresis      yacute          thorn           ydiaeresis      */
8853 CASE_IGNORE,
8854 CASE_IGNORE,
8855 CASE_IGNORE,
8856 CASE_IGNORE,
8857 };
8858 
8859 Const PARSE_T vt52_esc_table[] =
8860 {
8861 /*	NUL		SOH		STX		ETX	*/
8862 CASE_IGNORE,
8863 CASE_IGNORE,
8864 CASE_IGNORE,
8865 CASE_IGNORE,
8866 /*	EOT		ENQ		ACK		BEL	*/
8867 CASE_IGNORE,
8868 CASE_ENQ,
8869 CASE_IGNORE,
8870 CASE_BELL,
8871 /*	BS		HT		NL		VT	*/
8872 CASE_BS,
8873 CASE_TAB,
8874 CASE_VMOT,
8875 CASE_VMOT,
8876 /*	FF		CR		SO		SI	*/
8877 CASE_VMOT,
8878 CASE_CR,
8879 CASE_IGNORE,
8880 CASE_IGNORE,
8881 /*	DLE		DC1		DC2		DC3	*/
8882 CASE_IGNORE,
8883 CASE_IGNORE,
8884 CASE_IGNORE,
8885 CASE_IGNORE,
8886 /*	DC4		NAK		SYN		ETB	*/
8887 CASE_IGNORE,
8888 CASE_IGNORE,
8889 CASE_IGNORE,
8890 CASE_IGNORE,
8891 /*	CAN		EM		SUB		ESC	*/
8892 CASE_GROUND_STATE,
8893 CASE_IGNORE,
8894 CASE_GROUND_STATE,
8895 CASE_ESC,
8896 /*	FS		GS		RS		US	*/
8897 CASE_IGNORE,
8898 CASE_IGNORE,
8899 CASE_IGNORE,
8900 CASE_IGNORE,
8901 /*	SP		!		"		#	*/
8902 CASE_VT52_IGNORE,
8903 CASE_VT52_IGNORE,
8904 CASE_VT52_IGNORE,
8905 CASE_VT52_IGNORE,
8906 /*	$		%		&		'	*/
8907 CASE_VT52_IGNORE,
8908 CASE_VT52_IGNORE,
8909 CASE_VT52_IGNORE,
8910 CASE_VT52_IGNORE,
8911 /*	(		)		*		+	*/
8912 CASE_VT52_IGNORE,
8913 CASE_VT52_IGNORE,
8914 CASE_VT52_IGNORE,
8915 CASE_VT52_IGNORE,
8916 /*	,		-		.		/	*/
8917 CASE_VT52_IGNORE,
8918 CASE_VT52_IGNORE,
8919 CASE_VT52_IGNORE,
8920 CASE_VT52_IGNORE,
8921 /*	0		1		2		3	*/
8922 CASE_GROUND_STATE,
8923 CASE_GROUND_STATE,
8924 CASE_GROUND_STATE,
8925 CASE_GROUND_STATE,
8926 /*	4		5		6		7	*/
8927 CASE_GROUND_STATE,
8928 CASE_GROUND_STATE,
8929 CASE_GROUND_STATE,
8930 CASE_GROUND_STATE,
8931 /*	8		9		:		;	*/
8932 CASE_GROUND_STATE,
8933 CASE_GROUND_STATE,
8934 CASE_GROUND_STATE,
8935 CASE_GROUND_STATE,
8936 /*	<		=		>		?	*/
8937 CASE_VT52_FINISH,
8938 CASE_DECKPAM,
8939 CASE_DECKPNM,
8940 CASE_GROUND_STATE,
8941 /*	@		A		B		C	*/
8942 CASE_GROUND_STATE,
8943 CASE_CUU,
8944 CASE_CUD,
8945 CASE_CUF,
8946 /*	D		E		F		G	*/
8947 CASE_CUB,
8948 CASE_GROUND_STATE,
8949 CASE_SO,
8950 CASE_SI,
8951 /*	H		I		J		K	*/
8952 CASE_CUP,
8953 CASE_RI,
8954 CASE_ED,
8955 CASE_EL,
8956 /*	L		M		N		O	*/
8957 CASE_GROUND_STATE,
8958 CASE_GROUND_STATE,
8959 CASE_GROUND_STATE,
8960 CASE_GROUND_STATE,
8961 /*	P		Q		R		S	*/
8962 CASE_GROUND_STATE,
8963 CASE_GROUND_STATE,
8964 CASE_GROUND_STATE,
8965 CASE_GROUND_STATE,
8966 /*	T		U		V		W	*/
8967 CASE_GROUND_STATE,
8968 CASE_GROUND_STATE,
8969 CASE_GROUND_STATE,
8970 CASE_GROUND_STATE,
8971 /*	X		Y		Z		[	*/
8972 CASE_GROUND_STATE,
8973 CASE_VT52_CUP,
8974 CASE_DECID,
8975 CASE_GROUND_STATE,
8976 /*	\		]		^		_	*/
8977 CASE_GROUND_STATE,
8978 CASE_GROUND_STATE,
8979 CASE_GROUND_STATE,
8980 CASE_GROUND_STATE,
8981 /*	`		a		b		c	*/
8982 CASE_GROUND_STATE,
8983 CASE_GROUND_STATE,
8984 CASE_GROUND_STATE,
8985 CASE_GROUND_STATE,
8986 /*	d		e		f		g	*/
8987 CASE_GROUND_STATE,
8988 CASE_GROUND_STATE,
8989 CASE_GROUND_STATE,
8990 CASE_GROUND_STATE,
8991 /*	h		i		j		k	*/
8992 CASE_GROUND_STATE,
8993 CASE_GROUND_STATE,
8994 CASE_GROUND_STATE,
8995 CASE_GROUND_STATE,
8996 /*	l		m		n		o	*/
8997 CASE_GROUND_STATE,
8998 CASE_GROUND_STATE,
8999 CASE_GROUND_STATE,
9000 CASE_GROUND_STATE,
9001 /*	p		q		r		s	*/
9002 CASE_GROUND_STATE,
9003 CASE_GROUND_STATE,
9004 CASE_GROUND_STATE,
9005 CASE_GROUND_STATE,
9006 /*	t		u		v		w	*/
9007 CASE_GROUND_STATE,
9008 CASE_GROUND_STATE,
9009 CASE_GROUND_STATE,
9010 CASE_GROUND_STATE,
9011 /*	x		y		z		{	*/
9012 CASE_GROUND_STATE,
9013 CASE_GROUND_STATE,
9014 CASE_GROUND_STATE,
9015 CASE_GROUND_STATE,
9016 /*	|		}		~		DEL	*/
9017 CASE_GROUND_STATE,
9018 CASE_GROUND_STATE,
9019 CASE_GROUND_STATE,
9020 CASE_IGNORE,
9021 /*      0x80            0x81            0x82            0x83    */
9022 CASE_IGNORE,
9023 CASE_IGNORE,
9024 CASE_IGNORE,
9025 CASE_IGNORE,
9026 /*      0x84            0x85            0x86            0x87    */
9027 CASE_IGNORE,
9028 CASE_IGNORE,
9029 CASE_IGNORE,
9030 CASE_IGNORE,
9031 /*      0x88            0x89            0x8a            0x8b    */
9032 CASE_IGNORE,
9033 CASE_IGNORE,
9034 CASE_IGNORE,
9035 CASE_IGNORE,
9036 /*      0x8c            0x8d            0x8e            0x8f    */
9037 CASE_IGNORE,
9038 CASE_IGNORE,
9039 CASE_IGNORE,
9040 CASE_IGNORE,
9041 /*      0x90            0x91            0x92            0x93    */
9042 CASE_IGNORE,
9043 CASE_IGNORE,
9044 CASE_IGNORE,
9045 CASE_IGNORE,
9046 /*      0x94            0x95            0x96            0x97    */
9047 CASE_IGNORE,
9048 CASE_IGNORE,
9049 CASE_IGNORE,
9050 CASE_IGNORE,
9051 /*      0x98            0x99            0x9a            0x9b    */
9052 CASE_IGNORE,
9053 CASE_IGNORE,
9054 CASE_IGNORE,
9055 CASE_IGNORE,
9056 /*      0x9c            0x9d            0x9e            0x9f    */
9057 CASE_IGNORE,
9058 CASE_IGNORE,
9059 CASE_IGNORE,
9060 CASE_IGNORE,
9061 /*      nobreakspace    exclamdown      cent            sterling        */
9062 CASE_IGNORE,
9063 CASE_IGNORE,
9064 CASE_IGNORE,
9065 CASE_IGNORE,
9066 /*      currency        yen             brokenbar       section         */
9067 CASE_IGNORE,
9068 CASE_IGNORE,
9069 CASE_IGNORE,
9070 CASE_IGNORE,
9071 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
9072 CASE_IGNORE,
9073 CASE_IGNORE,
9074 CASE_IGNORE,
9075 CASE_IGNORE,
9076 /*      notsign         hyphen          registered      macron          */
9077 CASE_IGNORE,
9078 CASE_IGNORE,
9079 CASE_IGNORE,
9080 CASE_IGNORE,
9081 /*      degree          plusminus       twosuperior     threesuperior   */
9082 CASE_IGNORE,
9083 CASE_IGNORE,
9084 CASE_IGNORE,
9085 CASE_IGNORE,
9086 /*      acute           mu              paragraph       periodcentered  */
9087 CASE_IGNORE,
9088 CASE_IGNORE,
9089 CASE_IGNORE,
9090 CASE_IGNORE,
9091 /*      cedilla         onesuperior     masculine       guillemotright  */
9092 CASE_IGNORE,
9093 CASE_IGNORE,
9094 CASE_IGNORE,
9095 CASE_IGNORE,
9096 /*      onequarter      onehalf         threequarters   questiondown    */
9097 CASE_IGNORE,
9098 CASE_IGNORE,
9099 CASE_IGNORE,
9100 CASE_IGNORE,
9101 /*      Agrave          Aacute          Acircumflex     Atilde          */
9102 CASE_IGNORE,
9103 CASE_IGNORE,
9104 CASE_IGNORE,
9105 CASE_IGNORE,
9106 /*      Adiaeresis      Aring           AE              Ccedilla        */
9107 CASE_IGNORE,
9108 CASE_IGNORE,
9109 CASE_IGNORE,
9110 CASE_IGNORE,
9111 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
9112 CASE_IGNORE,
9113 CASE_IGNORE,
9114 CASE_IGNORE,
9115 CASE_IGNORE,
9116 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
9117 CASE_IGNORE,
9118 CASE_IGNORE,
9119 CASE_IGNORE,
9120 CASE_IGNORE,
9121 /*      Eth             Ntilde          Ograve          Oacute          */
9122 CASE_IGNORE,
9123 CASE_IGNORE,
9124 CASE_IGNORE,
9125 CASE_IGNORE,
9126 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
9127 CASE_IGNORE,
9128 CASE_IGNORE,
9129 CASE_IGNORE,
9130 CASE_IGNORE,
9131 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
9132 CASE_IGNORE,
9133 CASE_IGNORE,
9134 CASE_IGNORE,
9135 CASE_IGNORE,
9136 /*      Udiaeresis      Yacute          Thorn           ssharp          */
9137 CASE_IGNORE,
9138 CASE_IGNORE,
9139 CASE_IGNORE,
9140 CASE_IGNORE,
9141 /*      agrave          aacute          acircumflex     atilde          */
9142 CASE_IGNORE,
9143 CASE_IGNORE,
9144 CASE_IGNORE,
9145 CASE_IGNORE,
9146 /*      adiaeresis      aring           ae              ccedilla        */
9147 CASE_IGNORE,
9148 CASE_IGNORE,
9149 CASE_IGNORE,
9150 CASE_IGNORE,
9151 /*      egrave          eacute          ecircumflex     ediaeresis      */
9152 CASE_IGNORE,
9153 CASE_IGNORE,
9154 CASE_IGNORE,
9155 CASE_IGNORE,
9156 /*      igrave          iacute          icircumflex     idiaeresis      */
9157 CASE_IGNORE,
9158 CASE_IGNORE,
9159 CASE_IGNORE,
9160 CASE_IGNORE,
9161 /*      eth             ntilde          ograve          oacute          */
9162 CASE_IGNORE,
9163 CASE_IGNORE,
9164 CASE_IGNORE,
9165 CASE_IGNORE,
9166 /*      ocircumflex     otilde          odiaeresis      division        */
9167 CASE_IGNORE,
9168 CASE_IGNORE,
9169 CASE_IGNORE,
9170 CASE_IGNORE,
9171 /*      oslash          ugrave          uacute          ucircumflex     */
9172 CASE_IGNORE,
9173 CASE_IGNORE,
9174 CASE_IGNORE,
9175 CASE_IGNORE,
9176 /*      udiaeresis      yacute          thorn           ydiaeresis      */
9177 CASE_IGNORE,
9178 CASE_IGNORE,
9179 CASE_IGNORE,
9180 CASE_IGNORE,
9181 };
9182 
9183 Const PARSE_T vt52_ignore_table[] =
9184 {
9185 /*	NUL		SOH		STX		ETX	*/
9186 CASE_IGNORE,
9187 CASE_IGNORE,
9188 CASE_IGNORE,
9189 CASE_IGNORE,
9190 /*	EOT		ENQ		ACK		BEL	*/
9191 CASE_IGNORE,
9192 CASE_ENQ,
9193 CASE_IGNORE,
9194 CASE_BELL,
9195 /*	BS		HT		NL		VT	*/
9196 CASE_BS,
9197 CASE_TAB,
9198 CASE_VMOT,
9199 CASE_VMOT,
9200 /*	FF		CR		SO		SI	*/
9201 CASE_VMOT,
9202 CASE_CR,
9203 CASE_IGNORE,
9204 CASE_IGNORE,
9205 /*	DLE		DC1		DC2		DC3	*/
9206 CASE_IGNORE,
9207 CASE_IGNORE,
9208 CASE_IGNORE,
9209 CASE_IGNORE,
9210 /*	DC4		NAK		SYN		ETB	*/
9211 CASE_IGNORE,
9212 CASE_IGNORE,
9213 CASE_IGNORE,
9214 CASE_IGNORE,
9215 /*	CAN		EM		SUB		ESC	*/
9216 CASE_GROUND_STATE,
9217 CASE_IGNORE,
9218 CASE_GROUND_STATE,
9219 CASE_ESC,
9220 /*	FS		GS		RS		US	*/
9221 CASE_IGNORE,
9222 CASE_IGNORE,
9223 CASE_IGNORE,
9224 CASE_IGNORE,
9225 /*	SP		!		"		#	*/
9226 CASE_IGNORE,
9227 CASE_IGNORE,
9228 CASE_IGNORE,
9229 CASE_IGNORE,
9230 /*	$		%		&		'	*/
9231 CASE_IGNORE,
9232 CASE_IGNORE,
9233 CASE_IGNORE,
9234 CASE_IGNORE,
9235 /*	(		)		*		+	*/
9236 CASE_IGNORE,
9237 CASE_IGNORE,
9238 CASE_IGNORE,
9239 CASE_IGNORE,
9240 /*	,		-		.		/	*/
9241 CASE_IGNORE,
9242 CASE_IGNORE,
9243 CASE_IGNORE,
9244 CASE_IGNORE,
9245 /*	0		1		2		3	*/
9246 CASE_GROUND_STATE,
9247 CASE_GROUND_STATE,
9248 CASE_GROUND_STATE,
9249 CASE_GROUND_STATE,
9250 /*	4		5		6		7	*/
9251 CASE_GROUND_STATE,
9252 CASE_GROUND_STATE,
9253 CASE_GROUND_STATE,
9254 CASE_GROUND_STATE,
9255 /*	8		9		:		;	*/
9256 CASE_GROUND_STATE,
9257 CASE_GROUND_STATE,
9258 CASE_GROUND_STATE,
9259 CASE_GROUND_STATE,
9260 /*	<		=		>		?	*/
9261 CASE_GROUND_STATE,
9262 CASE_GROUND_STATE,
9263 CASE_GROUND_STATE,
9264 CASE_GROUND_STATE,
9265 /*	@		A		B		C	*/
9266 CASE_GROUND_STATE,
9267 CASE_GROUND_STATE,
9268 CASE_GROUND_STATE,
9269 CASE_GROUND_STATE,
9270 /*	D		E		F		G	*/
9271 CASE_GROUND_STATE,
9272 CASE_GROUND_STATE,
9273 CASE_GROUND_STATE,
9274 CASE_GROUND_STATE,
9275 /*	H		I		J		K	*/
9276 CASE_GROUND_STATE,
9277 CASE_GROUND_STATE,
9278 CASE_GROUND_STATE,
9279 CASE_GROUND_STATE,
9280 /*	L		M		N		O	*/
9281 CASE_GROUND_STATE,
9282 CASE_GROUND_STATE,
9283 CASE_GROUND_STATE,
9284 CASE_GROUND_STATE,
9285 /*	P		Q		R		S	*/
9286 CASE_GROUND_STATE,
9287 CASE_GROUND_STATE,
9288 CASE_GROUND_STATE,
9289 CASE_GROUND_STATE,
9290 /*	T		U		V		W	*/
9291 CASE_GROUND_STATE,
9292 CASE_GROUND_STATE,
9293 CASE_GROUND_STATE,
9294 CASE_GROUND_STATE,
9295 /*	X		Y		Z		[	*/
9296 CASE_GROUND_STATE,
9297 CASE_GROUND_STATE,
9298 CASE_GROUND_STATE,
9299 CASE_GROUND_STATE,
9300 /*	\		]		^		_	*/
9301 CASE_GROUND_STATE,
9302 CASE_GROUND_STATE,
9303 CASE_GROUND_STATE,
9304 CASE_GROUND_STATE,
9305 /*	`		a		b		c	*/
9306 CASE_GROUND_STATE,
9307 CASE_GROUND_STATE,
9308 CASE_GROUND_STATE,
9309 CASE_GROUND_STATE,
9310 /*	d		e		f		g	*/
9311 CASE_GROUND_STATE,
9312 CASE_GROUND_STATE,
9313 CASE_GROUND_STATE,
9314 CASE_GROUND_STATE,
9315 /*	h		i		j		k	*/
9316 CASE_GROUND_STATE,
9317 CASE_GROUND_STATE,
9318 CASE_GROUND_STATE,
9319 CASE_GROUND_STATE,
9320 /*	l		m		n		o	*/
9321 CASE_GROUND_STATE,
9322 CASE_GROUND_STATE,
9323 CASE_GROUND_STATE,
9324 CASE_GROUND_STATE,
9325 /*	p		q		r		s	*/
9326 CASE_GROUND_STATE,
9327 CASE_GROUND_STATE,
9328 CASE_GROUND_STATE,
9329 CASE_GROUND_STATE,
9330 /*	t		u		v		w	*/
9331 CASE_GROUND_STATE,
9332 CASE_GROUND_STATE,
9333 CASE_GROUND_STATE,
9334 CASE_GROUND_STATE,
9335 /*	x		y		z		{	*/
9336 CASE_GROUND_STATE,
9337 CASE_GROUND_STATE,
9338 CASE_GROUND_STATE,
9339 CASE_GROUND_STATE,
9340 /*	|		}		~		DEL	*/
9341 CASE_GROUND_STATE,
9342 CASE_GROUND_STATE,
9343 CASE_GROUND_STATE,
9344 CASE_IGNORE,
9345 /*      0x80            0x81            0x82            0x83    */
9346 CASE_IGNORE,
9347 CASE_IGNORE,
9348 CASE_IGNORE,
9349 CASE_IGNORE,
9350 /*      0x84            0x85            0x86            0x87    */
9351 CASE_IGNORE,
9352 CASE_IGNORE,
9353 CASE_IGNORE,
9354 CASE_IGNORE,
9355 /*      0x88            0x89            0x8a            0x8b    */
9356 CASE_IGNORE,
9357 CASE_IGNORE,
9358 CASE_IGNORE,
9359 CASE_IGNORE,
9360 /*      0x8c            0x8d            0x8e            0x8f    */
9361 CASE_IGNORE,
9362 CASE_IGNORE,
9363 CASE_IGNORE,
9364 CASE_IGNORE,
9365 /*      0x90            0x91            0x92            0x93    */
9366 CASE_IGNORE,
9367 CASE_IGNORE,
9368 CASE_IGNORE,
9369 CASE_IGNORE,
9370 /*      0x94            0x95            0x96            0x97    */
9371 CASE_IGNORE,
9372 CASE_IGNORE,
9373 CASE_IGNORE,
9374 CASE_IGNORE,
9375 /*      0x98            0x99            0x9a            0x9b    */
9376 CASE_IGNORE,
9377 CASE_IGNORE,
9378 CASE_IGNORE,
9379 CASE_IGNORE,
9380 /*      0x9c            0x9d            0x9e            0x9f    */
9381 CASE_IGNORE,
9382 CASE_IGNORE,
9383 CASE_IGNORE,
9384 CASE_IGNORE,
9385 /*      nobreakspace    exclamdown      cent            sterling        */
9386 CASE_IGNORE,
9387 CASE_IGNORE,
9388 CASE_IGNORE,
9389 CASE_IGNORE,
9390 /*      currency        yen             brokenbar       section         */
9391 CASE_IGNORE,
9392 CASE_IGNORE,
9393 CASE_IGNORE,
9394 CASE_IGNORE,
9395 /*      diaeresis       copyright       ordfeminine     guillemotleft   */
9396 CASE_IGNORE,
9397 CASE_IGNORE,
9398 CASE_IGNORE,
9399 CASE_IGNORE,
9400 /*      notsign         hyphen          registered      macron          */
9401 CASE_IGNORE,
9402 CASE_IGNORE,
9403 CASE_IGNORE,
9404 CASE_IGNORE,
9405 /*      degree          plusminus       twosuperior     threesuperior   */
9406 CASE_IGNORE,
9407 CASE_IGNORE,
9408 CASE_IGNORE,
9409 CASE_IGNORE,
9410 /*      acute           mu              paragraph       periodcentered  */
9411 CASE_IGNORE,
9412 CASE_IGNORE,
9413 CASE_IGNORE,
9414 CASE_IGNORE,
9415 /*      cedilla         onesuperior     masculine       guillemotright  */
9416 CASE_IGNORE,
9417 CASE_IGNORE,
9418 CASE_IGNORE,
9419 CASE_IGNORE,
9420 /*      onequarter      onehalf         threequarters   questiondown    */
9421 CASE_IGNORE,
9422 CASE_IGNORE,
9423 CASE_IGNORE,
9424 CASE_IGNORE,
9425 /*      Agrave          Aacute          Acircumflex     Atilde          */
9426 CASE_IGNORE,
9427 CASE_IGNORE,
9428 CASE_IGNORE,
9429 CASE_IGNORE,
9430 /*      Adiaeresis      Aring           AE              Ccedilla        */
9431 CASE_IGNORE,
9432 CASE_IGNORE,
9433 CASE_IGNORE,
9434 CASE_IGNORE,
9435 /*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
9436 CASE_IGNORE,
9437 CASE_IGNORE,
9438 CASE_IGNORE,
9439 CASE_IGNORE,
9440 /*      Igrave          Iacute          Icircumflex     Idiaeresis      */
9441 CASE_IGNORE,
9442 CASE_IGNORE,
9443 CASE_IGNORE,
9444 CASE_IGNORE,
9445 /*      Eth             Ntilde          Ograve          Oacute          */
9446 CASE_IGNORE,
9447 CASE_IGNORE,
9448 CASE_IGNORE,
9449 CASE_IGNORE,
9450 /*      Ocircumflex     Otilde          Odiaeresis      multiply        */
9451 CASE_IGNORE,
9452 CASE_IGNORE,
9453 CASE_IGNORE,
9454 CASE_IGNORE,
9455 /*      Ooblique        Ugrave          Uacute          Ucircumflex     */
9456 CASE_IGNORE,
9457 CASE_IGNORE,
9458 CASE_IGNORE,
9459 CASE_IGNORE,
9460 /*      Udiaeresis      Yacute          Thorn           ssharp          */
9461 CASE_IGNORE,
9462 CASE_IGNORE,
9463 CASE_IGNORE,
9464 CASE_IGNORE,
9465 /*      agrave          aacute          acircumflex     atilde          */
9466 CASE_IGNORE,
9467 CASE_IGNORE,
9468 CASE_IGNORE,
9469 CASE_IGNORE,
9470 /*      adiaeresis      aring           ae              ccedilla        */
9471 CASE_IGNORE,
9472 CASE_IGNORE,
9473 CASE_IGNORE,
9474 CASE_IGNORE,
9475 /*      egrave          eacute          ecircumflex     ediaeresis      */
9476 CASE_IGNORE,
9477 CASE_IGNORE,
9478 CASE_IGNORE,
9479 CASE_IGNORE,
9480 /*      igrave          iacute          icircumflex     idiaeresis      */
9481 CASE_IGNORE,
9482 CASE_IGNORE,
9483 CASE_IGNORE,
9484 CASE_IGNORE,
9485 /*      eth             ntilde          ograve          oacute          */
9486 CASE_IGNORE,
9487 CASE_IGNORE,
9488 CASE_IGNORE,
9489 CASE_IGNORE,
9490 /*      ocircumflex     otilde          odiaeresis      division        */
9491 CASE_IGNORE,
9492 CASE_IGNORE,
9493 CASE_IGNORE,
9494 CASE_IGNORE,
9495 /*      oslash          ugrave          uacute          ucircumflex     */
9496 CASE_IGNORE,
9497 CASE_IGNORE,
9498 CASE_IGNORE,
9499 CASE_IGNORE,
9500 /*      udiaeresis      yacute          thorn           ydiaeresis      */
9501 CASE_IGNORE,
9502 CASE_IGNORE,
9503 CASE_IGNORE,
9504 CASE_IGNORE,
9505 };
9506 #endif /* OPT_VT52_MODE */
9507 /* *INDENT-ON* */
9508