VTPrsTbl.c revision 20d2c4d2
120d2c4d2Smrg/* $XTermId: VTPrsTbl.c,v 1.58 2010/06/15 10:58:13 tom Exp $ */ 2d522f475Smrg 3d522f475Smrg/* 4d522f475Smrg * 520d2c4d2Smrg * Copyright 1999-2009,2010 by Thomas E. Dickey 6d522f475Smrg * 7d522f475Smrg * All Rights Reserved 8d522f475Smrg * 9d522f475Smrg * Permission is hereby granted, free of charge, to any person obtaining a 10d522f475Smrg * copy of this software and associated documentation files (the 11d522f475Smrg * "Software"), to deal in the Software without restriction, including 12d522f475Smrg * without limitation the rights to use, copy, modify, merge, publish, 13d522f475Smrg * distribute, sublicense, and/or sell copies of the Software, and to 14d522f475Smrg * permit persons to whom the Software is furnished to do so, subject to 15d522f475Smrg * the following conditions: 16d522f475Smrg * 17d522f475Smrg * The above copyright notice and this permission notice shall be included 18d522f475Smrg * in all copies or substantial portions of the Software. 19d522f475Smrg * 20d522f475Smrg * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 21d522f475Smrg * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 22d522f475Smrg * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 23d522f475Smrg * IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY 24d522f475Smrg * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 25d522f475Smrg * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 26d522f475Smrg * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 27d522f475Smrg * 28d522f475Smrg * Except as contained in this notice, the name(s) of the above copyright 29d522f475Smrg * holders shall not be used in advertising or otherwise to promote the 30d522f475Smrg * sale, use or other dealings in this Software without prior written 31d522f475Smrg * authorization. 32d522f475Smrg * 33d522f475Smrg * 34d522f475Smrg * Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts. 35d522f475Smrg * 36d522f475Smrg * All Rights Reserved 37d522f475Smrg * 38d522f475Smrg * Permission to use, copy, modify, and distribute this software and its 39d522f475Smrg * documentation for any purpose and without fee is hereby granted, 40d522f475Smrg * provided that the above copyright notice appear in all copies and that 41d522f475Smrg * both that copyright notice and this permission notice appear in 42d522f475Smrg * supporting documentation, and that the name of Digital Equipment 43d522f475Smrg * Corporation not be used in advertising or publicity pertaining to 44d522f475Smrg * distribution of the software without specific, written prior permission. 45d522f475Smrg * 46d522f475Smrg * 47d522f475Smrg * DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING 48d522f475Smrg * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL 49d522f475Smrg * DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR 50d522f475Smrg * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, 51d522f475Smrg * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, 52d522f475Smrg * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS 53d522f475Smrg * SOFTWARE. 54d522f475Smrg */ 55d522f475Smrg 56d522f475Smrg#include <VTparse.h> 57d522f475Smrg 5820d2c4d2Smrg#if !OPT_BLINK_CURS 5920d2c4d2Smrg#undef CASE_CSI_SPACE_STATE 6020d2c4d2Smrg#define CASE_CSI_SPACE_STATE CASE_CSI_IGNORE 6120d2c4d2Smrg#endif 6220d2c4d2Smrg 63d522f475Smrg#if !OPT_DEC_LOCATOR 64d522f475Smrg#undef CASE_CSI_TICK_STATE 65d522f475Smrg#define CASE_CSI_TICK_STATE CASE_CSI_IGNORE 66d522f475Smrg#endif 67d522f475Smrg 68d522f475Smrg#if !OPT_WIDE_CHARS 69d522f475Smrg#undef CASE_ESC_PERCENT 70d522f475Smrg#define CASE_ESC_PERCENT CASE_ESC_IGNORE 71d522f475Smrg#endif 72d522f475Smrg 73d522f475Smrg#if !OPT_MOD_FKEYS 74d522f475Smrg#undef CASE_SET_MOD_FKEYS 75d522f475Smrg#define CASE_SET_MOD_FKEYS CASE_GROUND_STATE 76d522f475Smrg#undef CASE_SET_MOD_FKEYS0 77d522f475Smrg#define CASE_SET_MOD_FKEYS0 CASE_GROUND_STATE 78d522f475Smrg#endif 79d522f475Smrg 80d522f475Smrg/* 81d522f475Smrg * Stupid Apollo C preprocessor can't handle long lines. So... To keep 82d522f475Smrg * it happy, we put each onto a separate line.... Sigh... 83d522f475Smrg */ 84d522f475Smrg 85d522f475SmrgConst PARSE_T ansi_table[] = 86d522f475Smrg{ 87d522f475Smrg/* NUL SOH STX ETX */ 88d522f475SmrgCASE_IGNORE, 89d522f475SmrgCASE_IGNORE, 90d522f475SmrgCASE_IGNORE, 91d522f475SmrgCASE_IGNORE, 92d522f475Smrg/* EOT ENQ ACK BEL */ 93d522f475SmrgCASE_IGNORE, 94d522f475SmrgCASE_ENQ, 95d522f475SmrgCASE_IGNORE, 96d522f475SmrgCASE_BELL, 97d522f475Smrg/* BS HT NL VT */ 98d522f475SmrgCASE_BS, 99d522f475SmrgCASE_TAB, 100d522f475SmrgCASE_VMOT, 101d522f475SmrgCASE_VMOT, 102d522f475Smrg/* NP CR SO SI */ 103d522f475SmrgCASE_VMOT, 104d522f475SmrgCASE_CR, 105d522f475SmrgCASE_SO, 106d522f475SmrgCASE_SI, 107d522f475Smrg/* DLE DC1 DC2 DC3 */ 108d522f475SmrgCASE_IGNORE, 109d522f475SmrgCASE_IGNORE, 110d522f475SmrgCASE_IGNORE, 111d522f475SmrgCASE_IGNORE, 112d522f475Smrg/* DC4 NAK SYN ETB */ 113d522f475SmrgCASE_IGNORE, 114d522f475SmrgCASE_IGNORE, 115d522f475SmrgCASE_IGNORE, 116d522f475SmrgCASE_IGNORE, 117d522f475Smrg/* CAN EM SUB ESC */ 118d522f475SmrgCASE_GROUND_STATE, 119d522f475SmrgCASE_IGNORE, 120d522f475SmrgCASE_GROUND_STATE, 121d522f475SmrgCASE_ESC, 122d522f475Smrg/* FS GS RS US */ 123d522f475SmrgCASE_IGNORE, 124d522f475SmrgCASE_IGNORE, 125d522f475SmrgCASE_IGNORE, 126d522f475SmrgCASE_IGNORE, 127d522f475Smrg/* SP ! " # */ 128d522f475SmrgCASE_PRINT, 129d522f475SmrgCASE_PRINT, 130d522f475SmrgCASE_PRINT, 131d522f475SmrgCASE_PRINT, 132d522f475Smrg/* $ % & ' */ 133d522f475SmrgCASE_PRINT, 134d522f475SmrgCASE_PRINT, 135d522f475SmrgCASE_PRINT, 136d522f475SmrgCASE_PRINT, 137d522f475Smrg/* ( ) * + */ 138d522f475SmrgCASE_PRINT, 139d522f475SmrgCASE_PRINT, 140d522f475SmrgCASE_PRINT, 141d522f475SmrgCASE_PRINT, 142d522f475Smrg/* , - . / */ 143d522f475SmrgCASE_PRINT, 144d522f475SmrgCASE_PRINT, 145d522f475SmrgCASE_PRINT, 146d522f475SmrgCASE_PRINT, 147d522f475Smrg/* 0 1 2 3 */ 148d522f475SmrgCASE_PRINT, 149d522f475SmrgCASE_PRINT, 150d522f475SmrgCASE_PRINT, 151d522f475SmrgCASE_PRINT, 152d522f475Smrg/* 4 5 6 7 */ 153d522f475SmrgCASE_PRINT, 154d522f475SmrgCASE_PRINT, 155d522f475SmrgCASE_PRINT, 156d522f475SmrgCASE_PRINT, 157d522f475Smrg/* 8 9 : ; */ 158d522f475SmrgCASE_PRINT, 159d522f475SmrgCASE_PRINT, 160d522f475SmrgCASE_PRINT, 161d522f475SmrgCASE_PRINT, 162d522f475Smrg/* < = > ? */ 163d522f475SmrgCASE_PRINT, 164d522f475SmrgCASE_PRINT, 165d522f475SmrgCASE_PRINT, 166d522f475SmrgCASE_PRINT, 167d522f475Smrg/* @ A B C */ 168d522f475SmrgCASE_PRINT, 169d522f475SmrgCASE_PRINT, 170d522f475SmrgCASE_PRINT, 171d522f475SmrgCASE_PRINT, 172d522f475Smrg/* D E F G */ 173d522f475SmrgCASE_PRINT, 174d522f475SmrgCASE_PRINT, 175d522f475SmrgCASE_PRINT, 176d522f475SmrgCASE_PRINT, 177d522f475Smrg/* H I J K */ 178d522f475SmrgCASE_PRINT, 179d522f475SmrgCASE_PRINT, 180d522f475SmrgCASE_PRINT, 181d522f475SmrgCASE_PRINT, 182d522f475Smrg/* L M N O */ 183d522f475SmrgCASE_PRINT, 184d522f475SmrgCASE_PRINT, 185d522f475SmrgCASE_PRINT, 186d522f475SmrgCASE_PRINT, 187d522f475Smrg/* P Q R S */ 188d522f475SmrgCASE_PRINT, 189d522f475SmrgCASE_PRINT, 190d522f475SmrgCASE_PRINT, 191d522f475SmrgCASE_PRINT, 192d522f475Smrg/* T U V W */ 193d522f475SmrgCASE_PRINT, 194d522f475SmrgCASE_PRINT, 195d522f475SmrgCASE_PRINT, 196d522f475SmrgCASE_PRINT, 197d522f475Smrg/* X Y Z [ */ 198d522f475SmrgCASE_PRINT, 199d522f475SmrgCASE_PRINT, 200d522f475SmrgCASE_PRINT, 201d522f475SmrgCASE_PRINT, 202d522f475Smrg/* \ ] ^ _ */ 203d522f475SmrgCASE_PRINT, 204d522f475SmrgCASE_PRINT, 205d522f475SmrgCASE_PRINT, 206d522f475SmrgCASE_PRINT, 207d522f475Smrg/* ` a b c */ 208d522f475SmrgCASE_PRINT, 209d522f475SmrgCASE_PRINT, 210d522f475SmrgCASE_PRINT, 211d522f475SmrgCASE_PRINT, 212d522f475Smrg/* d e f g */ 213d522f475SmrgCASE_PRINT, 214d522f475SmrgCASE_PRINT, 215d522f475SmrgCASE_PRINT, 216d522f475SmrgCASE_PRINT, 217d522f475Smrg/* h i j k */ 218d522f475SmrgCASE_PRINT, 219d522f475SmrgCASE_PRINT, 220d522f475SmrgCASE_PRINT, 221d522f475SmrgCASE_PRINT, 222d522f475Smrg/* l m n o */ 223d522f475SmrgCASE_PRINT, 224d522f475SmrgCASE_PRINT, 225d522f475SmrgCASE_PRINT, 226d522f475SmrgCASE_PRINT, 227d522f475Smrg/* p q r s */ 228d522f475SmrgCASE_PRINT, 229d522f475SmrgCASE_PRINT, 230d522f475SmrgCASE_PRINT, 231d522f475SmrgCASE_PRINT, 232d522f475Smrg/* t u v w */ 233d522f475SmrgCASE_PRINT, 234d522f475SmrgCASE_PRINT, 235d522f475SmrgCASE_PRINT, 236d522f475SmrgCASE_PRINT, 237d522f475Smrg/* x y z { */ 238d522f475SmrgCASE_PRINT, 239d522f475SmrgCASE_PRINT, 240d522f475SmrgCASE_PRINT, 241d522f475SmrgCASE_PRINT, 242d522f475Smrg/* | } ~ DEL */ 243d522f475SmrgCASE_PRINT, 244d522f475SmrgCASE_PRINT, 245d522f475SmrgCASE_PRINT, 246d522f475SmrgCASE_IGNORE, 247d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 248d522f475SmrgCASE_GROUND_STATE, 249d522f475SmrgCASE_GROUND_STATE, 250d522f475SmrgCASE_GROUND_STATE, 251d522f475SmrgCASE_GROUND_STATE, 252d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 253d522f475SmrgCASE_IND, 254d522f475SmrgCASE_NEL, 255d522f475SmrgCASE_GROUND_STATE, 256d522f475SmrgCASE_GROUND_STATE, 257d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 258d522f475SmrgCASE_HTS, 259d522f475SmrgCASE_GROUND_STATE, 260d522f475SmrgCASE_GROUND_STATE, 261d522f475SmrgCASE_GROUND_STATE, 262d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 263d522f475SmrgCASE_GROUND_STATE, 264d522f475SmrgCASE_RI, 265d522f475SmrgCASE_SS2, 266d522f475SmrgCASE_SS3, 267d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 268d522f475SmrgCASE_DCS, 269d522f475SmrgCASE_GROUND_STATE, 270d522f475SmrgCASE_GROUND_STATE, 271d522f475SmrgCASE_GROUND_STATE, 272d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 273d522f475SmrgCASE_GROUND_STATE, 274d522f475SmrgCASE_GROUND_STATE, 275d522f475SmrgCASE_SPA, 276d522f475SmrgCASE_EPA, 277d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 278d522f475SmrgCASE_SOS, 279d522f475SmrgCASE_GROUND_STATE, 280d522f475SmrgCASE_DECID, 281d522f475SmrgCASE_CSI_STATE, 282d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 283d522f475SmrgCASE_ST, 284d522f475SmrgCASE_OSC, 285d522f475SmrgCASE_PM, 286d522f475SmrgCASE_APC, 287d522f475Smrg/* nobreakspace exclamdown cent sterling */ 288d522f475SmrgCASE_PRINT, 289d522f475SmrgCASE_PRINT, 290d522f475SmrgCASE_PRINT, 291d522f475SmrgCASE_PRINT, 292d522f475Smrg/* currency yen brokenbar section */ 293d522f475SmrgCASE_PRINT, 294d522f475SmrgCASE_PRINT, 295d522f475SmrgCASE_PRINT, 296d522f475SmrgCASE_PRINT, 297d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 298d522f475SmrgCASE_PRINT, 299d522f475SmrgCASE_PRINT, 300d522f475SmrgCASE_PRINT, 301d522f475SmrgCASE_PRINT, 302d522f475Smrg/* notsign hyphen registered macron */ 303d522f475SmrgCASE_PRINT, 304d522f475SmrgCASE_PRINT, 305d522f475SmrgCASE_PRINT, 306d522f475SmrgCASE_PRINT, 307d522f475Smrg/* degree plusminus twosuperior threesuperior */ 308d522f475SmrgCASE_PRINT, 309d522f475SmrgCASE_PRINT, 310d522f475SmrgCASE_PRINT, 311d522f475SmrgCASE_PRINT, 312d522f475Smrg/* acute mu paragraph periodcentered */ 313d522f475SmrgCASE_PRINT, 314d522f475SmrgCASE_PRINT, 315d522f475SmrgCASE_PRINT, 316d522f475SmrgCASE_PRINT, 317d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 318d522f475SmrgCASE_PRINT, 319d522f475SmrgCASE_PRINT, 320d522f475SmrgCASE_PRINT, 321d522f475SmrgCASE_PRINT, 322d522f475Smrg/* onequarter onehalf threequarters questiondown */ 323d522f475SmrgCASE_PRINT, 324d522f475SmrgCASE_PRINT, 325d522f475SmrgCASE_PRINT, 326d522f475SmrgCASE_PRINT, 327d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 328d522f475SmrgCASE_PRINT, 329d522f475SmrgCASE_PRINT, 330d522f475SmrgCASE_PRINT, 331d522f475SmrgCASE_PRINT, 332d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 333d522f475SmrgCASE_PRINT, 334d522f475SmrgCASE_PRINT, 335d522f475SmrgCASE_PRINT, 336d522f475SmrgCASE_PRINT, 337d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 338d522f475SmrgCASE_PRINT, 339d522f475SmrgCASE_PRINT, 340d522f475SmrgCASE_PRINT, 341d522f475SmrgCASE_PRINT, 342d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 343d522f475SmrgCASE_PRINT, 344d522f475SmrgCASE_PRINT, 345d522f475SmrgCASE_PRINT, 346d522f475SmrgCASE_PRINT, 347d522f475Smrg/* Eth Ntilde Ograve Oacute */ 348d522f475SmrgCASE_PRINT, 349d522f475SmrgCASE_PRINT, 350d522f475SmrgCASE_PRINT, 351d522f475SmrgCASE_PRINT, 352d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 353d522f475SmrgCASE_PRINT, 354d522f475SmrgCASE_PRINT, 355d522f475SmrgCASE_PRINT, 356d522f475SmrgCASE_PRINT, 357d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 358d522f475SmrgCASE_PRINT, 359d522f475SmrgCASE_PRINT, 360d522f475SmrgCASE_PRINT, 361d522f475SmrgCASE_PRINT, 362d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 363d522f475SmrgCASE_PRINT, 364d522f475SmrgCASE_PRINT, 365d522f475SmrgCASE_PRINT, 366d522f475SmrgCASE_PRINT, 367d522f475Smrg/* agrave aacute acircumflex atilde */ 368d522f475SmrgCASE_PRINT, 369d522f475SmrgCASE_PRINT, 370d522f475SmrgCASE_PRINT, 371d522f475SmrgCASE_PRINT, 372d522f475Smrg/* adiaeresis aring ae ccedilla */ 373d522f475SmrgCASE_PRINT, 374d522f475SmrgCASE_PRINT, 375d522f475SmrgCASE_PRINT, 376d522f475SmrgCASE_PRINT, 377d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 378d522f475SmrgCASE_PRINT, 379d522f475SmrgCASE_PRINT, 380d522f475SmrgCASE_PRINT, 381d522f475SmrgCASE_PRINT, 382d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 383d522f475SmrgCASE_PRINT, 384d522f475SmrgCASE_PRINT, 385d522f475SmrgCASE_PRINT, 386d522f475SmrgCASE_PRINT, 387d522f475Smrg/* eth ntilde ograve oacute */ 388d522f475SmrgCASE_PRINT, 389d522f475SmrgCASE_PRINT, 390d522f475SmrgCASE_PRINT, 391d522f475SmrgCASE_PRINT, 392d522f475Smrg/* ocircumflex otilde odiaeresis division */ 393d522f475SmrgCASE_PRINT, 394d522f475SmrgCASE_PRINT, 395d522f475SmrgCASE_PRINT, 396d522f475SmrgCASE_PRINT, 397d522f475Smrg/* oslash ugrave uacute ucircumflex */ 398d522f475SmrgCASE_PRINT, 399d522f475SmrgCASE_PRINT, 400d522f475SmrgCASE_PRINT, 401d522f475SmrgCASE_PRINT, 402d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 403d522f475SmrgCASE_PRINT, 404d522f475SmrgCASE_PRINT, 405d522f475SmrgCASE_PRINT, 406d522f475SmrgCASE_PRINT, 407d522f475Smrg}; 408d522f475Smrg 409d522f475SmrgConst PARSE_T csi_table[] = /* CSI */ 410d522f475Smrg{ 411d522f475Smrg/* NUL SOH STX ETX */ 412d522f475SmrgCASE_IGNORE, 413d522f475SmrgCASE_IGNORE, 414d522f475SmrgCASE_IGNORE, 415d522f475SmrgCASE_IGNORE, 416d522f475Smrg/* EOT ENQ ACK BEL */ 417d522f475SmrgCASE_IGNORE, 418d522f475SmrgCASE_ENQ, 419d522f475SmrgCASE_IGNORE, 420d522f475SmrgCASE_BELL, 421d522f475Smrg/* BS HT NL VT */ 422d522f475SmrgCASE_BS, 423d522f475SmrgCASE_TAB, 424d522f475SmrgCASE_VMOT, 425d522f475SmrgCASE_VMOT, 426d522f475Smrg/* NP CR SO SI */ 427d522f475SmrgCASE_VMOT, 428d522f475SmrgCASE_CR, 429d522f475SmrgCASE_SO, 430d522f475SmrgCASE_SI, 431d522f475Smrg/* DLE DC1 DC2 DC3 */ 432d522f475SmrgCASE_IGNORE, 433d522f475SmrgCASE_IGNORE, 434d522f475SmrgCASE_IGNORE, 435d522f475SmrgCASE_IGNORE, 436d522f475Smrg/* DC4 NAK SYN ETB */ 437d522f475SmrgCASE_IGNORE, 438d522f475SmrgCASE_IGNORE, 439d522f475SmrgCASE_IGNORE, 440d522f475SmrgCASE_IGNORE, 441d522f475Smrg/* CAN EM SUB ESC */ 442d522f475SmrgCASE_GROUND_STATE, 443d522f475SmrgCASE_IGNORE, 444d522f475SmrgCASE_GROUND_STATE, 445d522f475SmrgCASE_ESC, 446d522f475Smrg/* FS GS RS US */ 447d522f475SmrgCASE_IGNORE, 448d522f475SmrgCASE_IGNORE, 449d522f475SmrgCASE_IGNORE, 450d522f475SmrgCASE_IGNORE, 451d522f475Smrg/* SP ! " # */ 45220d2c4d2SmrgCASE_CSI_SPACE_STATE, 453d522f475SmrgCASE_CSI_EX_STATE, 454d522f475SmrgCASE_CSI_QUOTE_STATE, 455d522f475SmrgCASE_CSI_IGNORE, 456d522f475Smrg/* $ % & ' */ 457d522f475SmrgCASE_CSI_IGNORE, 458d522f475SmrgCASE_CSI_IGNORE, 459d522f475SmrgCASE_CSI_IGNORE, 460d522f475SmrgCASE_CSI_TICK_STATE, 461d522f475Smrg/* ( ) * + */ 462d522f475SmrgCASE_CSI_IGNORE, 463d522f475SmrgCASE_CSI_IGNORE, 464d522f475SmrgCASE_CSI_IGNORE, 465d522f475SmrgCASE_CSI_IGNORE, 466d522f475Smrg/* , - . / */ 467d522f475SmrgCASE_CSI_IGNORE, 468d522f475SmrgCASE_CSI_IGNORE, 469d522f475SmrgCASE_CSI_IGNORE, 470d522f475SmrgCASE_CSI_IGNORE, 471d522f475Smrg/* 0 1 2 3 */ 472d522f475SmrgCASE_ESC_DIGIT, 473d522f475SmrgCASE_ESC_DIGIT, 474d522f475SmrgCASE_ESC_DIGIT, 475d522f475SmrgCASE_ESC_DIGIT, 476d522f475Smrg/* 4 5 6 7 */ 477d522f475SmrgCASE_ESC_DIGIT, 478d522f475SmrgCASE_ESC_DIGIT, 479d522f475SmrgCASE_ESC_DIGIT, 480d522f475SmrgCASE_ESC_DIGIT, 481d522f475Smrg/* 8 9 : ; */ 482d522f475SmrgCASE_ESC_DIGIT, 483d522f475SmrgCASE_ESC_DIGIT, 484d522f475SmrgCASE_CSI_IGNORE, 485d522f475SmrgCASE_ESC_SEMI, 486d522f475Smrg/* < = > ? */ 487d522f475SmrgCASE_CSI_IGNORE, 488d522f475SmrgCASE_DEC3_STATE, 489d522f475SmrgCASE_DEC2_STATE, 490d522f475SmrgCASE_DEC_STATE, 491d522f475Smrg/* @ A B C */ 492d522f475SmrgCASE_ICH, 493d522f475SmrgCASE_CUU, 494d522f475SmrgCASE_CUD, 495d522f475SmrgCASE_CUF, 496d522f475Smrg/* D E F G */ 497d522f475SmrgCASE_CUB, 498d522f475SmrgCASE_CNL, 499d522f475SmrgCASE_CPL, 500d522f475SmrgCASE_HPA, 501d522f475Smrg/* H I J K */ 502d522f475SmrgCASE_CUP, 503d522f475SmrgCASE_CHT, 504d522f475SmrgCASE_ED, 505d522f475SmrgCASE_EL, 506d522f475Smrg/* L M N O */ 507d522f475SmrgCASE_IL, 508d522f475SmrgCASE_DL, 509d522f475SmrgCASE_GROUND_STATE, 510d522f475SmrgCASE_GROUND_STATE, 511d522f475Smrg/* P Q R S */ 512d522f475SmrgCASE_DCH, 513d522f475SmrgCASE_GROUND_STATE, 514d522f475SmrgCASE_GROUND_STATE, 515d522f475SmrgCASE_SU, 516d522f475Smrg/* T U V W */ 517d522f475SmrgCASE_TRACK_MOUSE, 518d522f475SmrgCASE_GROUND_STATE, 519d522f475SmrgCASE_GROUND_STATE, 520d522f475SmrgCASE_GROUND_STATE, 521d522f475Smrg/* X Y Z [ */ 522d522f475SmrgCASE_ECH, 523d522f475SmrgCASE_GROUND_STATE, 524d522f475SmrgCASE_CBT, 525d522f475SmrgCASE_GROUND_STATE, 526d522f475Smrg/* \ ] ^ _ */ 527d522f475SmrgCASE_GROUND_STATE, 528d522f475SmrgCASE_GROUND_STATE, 529d522f475SmrgCASE_GROUND_STATE, 530d522f475SmrgCASE_GROUND_STATE, 531d522f475Smrg/* ` a b c */ 532d522f475SmrgCASE_HPA, 533d522f475SmrgCASE_GROUND_STATE, 534d522f475SmrgCASE_REP, 535d522f475SmrgCASE_DA1, 536d522f475Smrg/* d e f g */ 537d522f475SmrgCASE_VPA, 538d522f475SmrgCASE_GROUND_STATE, 539d522f475SmrgCASE_CUP, 540d522f475SmrgCASE_TBC, 541d522f475Smrg/* h i j k */ 542d522f475SmrgCASE_SET, 543d522f475SmrgCASE_MC, 544d522f475SmrgCASE_GROUND_STATE, 545d522f475SmrgCASE_GROUND_STATE, 546d522f475Smrg/* l m n o */ 547d522f475SmrgCASE_RST, 548d522f475SmrgCASE_SGR, 549d522f475SmrgCASE_CPR, 550d522f475SmrgCASE_GROUND_STATE, 551d522f475Smrg/* p q r s */ 552d522f475SmrgCASE_GROUND_STATE, 55320d2c4d2SmrgCASE_DECLL, 554d522f475SmrgCASE_DECSTBM, 555d522f475SmrgCASE_DECSC, 556d522f475Smrg/* t u v w */ 557d522f475SmrgCASE_XTERM_WINOPS, 558d522f475SmrgCASE_DECRC, 559d522f475SmrgCASE_GROUND_STATE, 560d522f475SmrgCASE_GROUND_STATE, 561d522f475Smrg/* x y z { */ 562d522f475SmrgCASE_DECREQTPARM, 563d522f475SmrgCASE_GROUND_STATE, 564d522f475SmrgCASE_GROUND_STATE, 565d522f475SmrgCASE_GROUND_STATE, 566d522f475Smrg/* | } ~ DEL */ 567d522f475SmrgCASE_GROUND_STATE, 568d522f475SmrgCASE_GROUND_STATE, 569d522f475SmrgCASE_GROUND_STATE, 570d522f475SmrgCASE_IGNORE, 571d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 572d522f475SmrgCASE_GROUND_STATE, 573d522f475SmrgCASE_GROUND_STATE, 574d522f475SmrgCASE_GROUND_STATE, 575d522f475SmrgCASE_GROUND_STATE, 576d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 577d522f475SmrgCASE_IND, 578d522f475SmrgCASE_NEL, 579d522f475SmrgCASE_GROUND_STATE, 580d522f475SmrgCASE_GROUND_STATE, 581d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 582d522f475SmrgCASE_HTS, 583d522f475SmrgCASE_GROUND_STATE, 584d522f475SmrgCASE_GROUND_STATE, 585d522f475SmrgCASE_GROUND_STATE, 586d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 587d522f475SmrgCASE_GROUND_STATE, 588d522f475SmrgCASE_RI, 589d522f475SmrgCASE_SS2, 590d522f475SmrgCASE_SS3, 591d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 592d522f475SmrgCASE_DCS, 593d522f475SmrgCASE_GROUND_STATE, 594d522f475SmrgCASE_GROUND_STATE, 595d522f475SmrgCASE_GROUND_STATE, 596d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 597d522f475SmrgCASE_GROUND_STATE, 598d522f475SmrgCASE_GROUND_STATE, 599d522f475SmrgCASE_SPA, 600d522f475SmrgCASE_EPA, 601d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 602d522f475SmrgCASE_SOS, 603d522f475SmrgCASE_GROUND_STATE, 604d522f475SmrgCASE_DECID, 605d522f475SmrgCASE_CSI_STATE, 606d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 607d522f475SmrgCASE_ST, 608d522f475SmrgCASE_OSC, 609d522f475SmrgCASE_PM, 610d522f475SmrgCASE_APC, 611d522f475Smrg/* nobreakspace exclamdown cent sterling */ 61220d2c4d2SmrgCASE_CSI_SPACE_STATE, 613d522f475SmrgCASE_CSI_EX_STATE, 614d522f475SmrgCASE_CSI_QUOTE_STATE, 615d522f475SmrgCASE_CSI_IGNORE, 616d522f475Smrg/* currency yen brokenbar section */ 617d522f475SmrgCASE_CSI_IGNORE, 618d522f475SmrgCASE_CSI_IGNORE, 619d522f475SmrgCASE_CSI_IGNORE, 620d522f475SmrgCASE_CSI_TICK_STATE, 621d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 622d522f475SmrgCASE_CSI_IGNORE, 623d522f475SmrgCASE_CSI_IGNORE, 624d522f475SmrgCASE_CSI_IGNORE, 625d522f475SmrgCASE_CSI_IGNORE, 626d522f475Smrg/* notsign hyphen registered macron */ 627d522f475SmrgCASE_CSI_IGNORE, 628d522f475SmrgCASE_CSI_IGNORE, 629d522f475SmrgCASE_CSI_IGNORE, 630d522f475SmrgCASE_CSI_IGNORE, 631d522f475Smrg/* degree plusminus twosuperior threesuperior */ 632d522f475SmrgCASE_ESC_DIGIT, 633d522f475SmrgCASE_ESC_DIGIT, 634d522f475SmrgCASE_ESC_DIGIT, 635d522f475SmrgCASE_ESC_DIGIT, 636d522f475Smrg/* acute mu paragraph periodcentered */ 637d522f475SmrgCASE_ESC_DIGIT, 638d522f475SmrgCASE_ESC_DIGIT, 639d522f475SmrgCASE_ESC_DIGIT, 640d522f475SmrgCASE_ESC_DIGIT, 641d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 642d522f475SmrgCASE_ESC_DIGIT, 643d522f475SmrgCASE_ESC_DIGIT, 644d522f475SmrgCASE_CSI_IGNORE, 645d522f475SmrgCASE_ESC_SEMI, 646d522f475Smrg/* onequarter onehalf threequarters questiondown */ 647d522f475SmrgCASE_CSI_IGNORE, 648d522f475SmrgCASE_DEC3_STATE, 649d522f475SmrgCASE_DEC2_STATE, 650d522f475SmrgCASE_DEC_STATE, 651d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 652d522f475SmrgCASE_ICH, 653d522f475SmrgCASE_CUU, 654d522f475SmrgCASE_CUD, 655d522f475SmrgCASE_CUF, 656d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 657d522f475SmrgCASE_CUB, 658d522f475SmrgCASE_CNL, 659d522f475SmrgCASE_CPL, 660d522f475SmrgCASE_HPA, 661d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 662d522f475SmrgCASE_CUP, 663d522f475SmrgCASE_CHT, 664d522f475SmrgCASE_ED, 665d522f475SmrgCASE_EL, 666d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 667d522f475SmrgCASE_IL, 668d522f475SmrgCASE_DL, 669d522f475SmrgCASE_GROUND_STATE, 670d522f475SmrgCASE_GROUND_STATE, 671d522f475Smrg/* Eth Ntilde Ograve Oacute */ 672d522f475SmrgCASE_DCH, 673d522f475SmrgCASE_GROUND_STATE, 674d522f475SmrgCASE_GROUND_STATE, 675d522f475SmrgCASE_SU, 676d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 677d522f475SmrgCASE_TRACK_MOUSE, 678d522f475SmrgCASE_GROUND_STATE, 679d522f475SmrgCASE_GROUND_STATE, 680d522f475SmrgCASE_GROUND_STATE, 681d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 682d522f475SmrgCASE_ECH, 683d522f475SmrgCASE_GROUND_STATE, 684d522f475SmrgCASE_CBT, 685d522f475SmrgCASE_GROUND_STATE, 686d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 687d522f475SmrgCASE_GROUND_STATE, 688d522f475SmrgCASE_GROUND_STATE, 689d522f475SmrgCASE_GROUND_STATE, 690d522f475SmrgCASE_GROUND_STATE, 691d522f475Smrg/* agrave aacute acircumflex atilde */ 692d522f475SmrgCASE_HPA, 693d522f475SmrgCASE_GROUND_STATE, 694d522f475SmrgCASE_REP, 695d522f475SmrgCASE_DA1, 696d522f475Smrg/* adiaeresis aring ae ccedilla */ 697d522f475SmrgCASE_VPA, 698d522f475SmrgCASE_GROUND_STATE, 699d522f475SmrgCASE_CUP, 700d522f475SmrgCASE_TBC, 701d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 702d522f475SmrgCASE_SET, 703d522f475SmrgCASE_MC, 704d522f475SmrgCASE_GROUND_STATE, 705d522f475SmrgCASE_GROUND_STATE, 706d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 707d522f475SmrgCASE_RST, 708d522f475SmrgCASE_SGR, 709d522f475SmrgCASE_CPR, 710d522f475SmrgCASE_GROUND_STATE, 711d522f475Smrg/* eth ntilde ograve oacute */ 712d522f475SmrgCASE_GROUND_STATE, 71320d2c4d2SmrgCASE_DECLL, 714d522f475SmrgCASE_DECSTBM, 715d522f475SmrgCASE_DECSC, 716d522f475Smrg/* ocircumflex otilde odiaeresis division */ 717d522f475SmrgCASE_XTERM_WINOPS, 718d522f475SmrgCASE_DECRC, 719d522f475SmrgCASE_GROUND_STATE, 720d522f475SmrgCASE_GROUND_STATE, 721d522f475Smrg/* oslash ugrave uacute ucircumflex */ 722d522f475SmrgCASE_DECREQTPARM, 723d522f475SmrgCASE_GROUND_STATE, 724d522f475SmrgCASE_GROUND_STATE, 725d522f475SmrgCASE_GROUND_STATE, 726d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 727d522f475SmrgCASE_GROUND_STATE, 728d522f475SmrgCASE_GROUND_STATE, 729d522f475SmrgCASE_GROUND_STATE, 730d522f475SmrgCASE_IGNORE, 731d522f475Smrg}; 732d522f475Smrg 733d522f475SmrgConst PARSE_T csi2_table[] = /* CSI */ 734d522f475Smrg{ 735d522f475Smrg/* NUL SOH STX ETX */ 736d522f475SmrgCASE_IGNORE, 737d522f475SmrgCASE_IGNORE, 738d522f475SmrgCASE_IGNORE, 739d522f475SmrgCASE_IGNORE, 740d522f475Smrg/* EOT ENQ ACK BEL */ 741d522f475SmrgCASE_IGNORE, 742d522f475SmrgCASE_ENQ, 743d522f475SmrgCASE_IGNORE, 744d522f475SmrgCASE_BELL, 745d522f475Smrg/* BS HT NL VT */ 746d522f475SmrgCASE_BS, 747d522f475SmrgCASE_TAB, 748d522f475SmrgCASE_VMOT, 749d522f475SmrgCASE_VMOT, 750d522f475Smrg/* NP CR SO SI */ 751d522f475SmrgCASE_VMOT, 752d522f475SmrgCASE_CR, 753d522f475SmrgCASE_SO, 754d522f475SmrgCASE_SI, 755d522f475Smrg/* DLE DC1 DC2 DC3 */ 756d522f475SmrgCASE_IGNORE, 757d522f475SmrgCASE_IGNORE, 758d522f475SmrgCASE_IGNORE, 759d522f475SmrgCASE_IGNORE, 760d522f475Smrg/* DC4 NAK SYN ETB */ 761d522f475SmrgCASE_IGNORE, 762d522f475SmrgCASE_IGNORE, 763d522f475SmrgCASE_IGNORE, 764d522f475SmrgCASE_IGNORE, 765d522f475Smrg/* CAN EM SUB ESC */ 766d522f475SmrgCASE_GROUND_STATE, 767d522f475SmrgCASE_IGNORE, 768d522f475SmrgCASE_GROUND_STATE, 769d522f475SmrgCASE_ESC, 770d522f475Smrg/* FS GS RS US */ 771d522f475SmrgCASE_IGNORE, 772d522f475SmrgCASE_IGNORE, 773d522f475SmrgCASE_IGNORE, 774d522f475SmrgCASE_IGNORE, 775d522f475Smrg/* SP ! " # */ 77620d2c4d2SmrgCASE_CSI_SPACE_STATE, 777d522f475SmrgCASE_CSI_EX_STATE, 778d522f475SmrgCASE_CSI_QUOTE_STATE, 779d522f475SmrgCASE_CSI_IGNORE, 780d522f475Smrg/* $ % & ' */ 781d522f475SmrgCASE_CSI_DOLLAR_STATE, 782d522f475SmrgCASE_CSI_IGNORE, 783d522f475SmrgCASE_CSI_IGNORE, 784d522f475SmrgCASE_CSI_TICK_STATE, 785d522f475Smrg/* ( ) * + */ 786d522f475SmrgCASE_CSI_IGNORE, 787d522f475SmrgCASE_CSI_IGNORE, 788d522f475SmrgCASE_CSI_STAR_STATE, 789d522f475SmrgCASE_CSI_IGNORE, 790d522f475Smrg/* , - . / */ 791d522f475SmrgCASE_CSI_IGNORE, 792d522f475SmrgCASE_CSI_IGNORE, 793d522f475SmrgCASE_CSI_IGNORE, 794d522f475SmrgCASE_CSI_IGNORE, 795d522f475Smrg/* 0 1 2 3 */ 796d522f475SmrgCASE_ESC_DIGIT, 797d522f475SmrgCASE_ESC_DIGIT, 798d522f475SmrgCASE_ESC_DIGIT, 799d522f475SmrgCASE_ESC_DIGIT, 800d522f475Smrg/* 4 5 6 7 */ 801d522f475SmrgCASE_ESC_DIGIT, 802d522f475SmrgCASE_ESC_DIGIT, 803d522f475SmrgCASE_ESC_DIGIT, 804d522f475SmrgCASE_ESC_DIGIT, 805d522f475Smrg/* 8 9 : ; */ 806d522f475SmrgCASE_ESC_DIGIT, 807d522f475SmrgCASE_ESC_DIGIT, 808d522f475SmrgCASE_CSI_IGNORE, 809d522f475SmrgCASE_ESC_SEMI, 810d522f475Smrg/* < = > ? */ 811d522f475SmrgCASE_CSI_IGNORE, 812d522f475SmrgCASE_CSI_IGNORE, 813d522f475SmrgCASE_CSI_IGNORE, 814d522f475SmrgCASE_CSI_IGNORE, 815d522f475Smrg/* @ A B C */ 816d522f475SmrgCASE_ICH, 817d522f475SmrgCASE_CUU, 818d522f475SmrgCASE_CUD, 819d522f475SmrgCASE_CUF, 820d522f475Smrg/* D E F G */ 821d522f475SmrgCASE_CUB, 822d522f475SmrgCASE_CNL, 823d522f475SmrgCASE_CPL, 824d522f475SmrgCASE_HPA, 825d522f475Smrg/* H I J K */ 826d522f475SmrgCASE_CUP, 827d522f475SmrgCASE_CHT, 828d522f475SmrgCASE_ED, 829d522f475SmrgCASE_EL, 830d522f475Smrg/* L M N O */ 831d522f475SmrgCASE_IL, 832d522f475SmrgCASE_DL, 833d522f475SmrgCASE_GROUND_STATE, 834d522f475SmrgCASE_GROUND_STATE, 835d522f475Smrg/* P Q R S */ 836d522f475SmrgCASE_DCH, 837d522f475SmrgCASE_GROUND_STATE, 838d522f475SmrgCASE_GROUND_STATE, 839d522f475SmrgCASE_SU, 840d522f475Smrg/* T U V W */ 841d522f475SmrgCASE_TRACK_MOUSE, 842d522f475SmrgCASE_GROUND_STATE, 843d522f475SmrgCASE_GROUND_STATE, 844d522f475SmrgCASE_GROUND_STATE, 845d522f475Smrg/* X Y Z [ */ 846d522f475SmrgCASE_ECH, 847d522f475SmrgCASE_GROUND_STATE, 848d522f475SmrgCASE_CBT, 849d522f475SmrgCASE_GROUND_STATE, 850d522f475Smrg/* \ ] ^ _ */ 851d522f475SmrgCASE_GROUND_STATE, 852d522f475SmrgCASE_GROUND_STATE, 853d522f475SmrgCASE_GROUND_STATE, 854d522f475SmrgCASE_GROUND_STATE, 855d522f475Smrg/* ` a b c */ 856d522f475SmrgCASE_HPA, 857d522f475SmrgCASE_GROUND_STATE, 858d522f475SmrgCASE_REP, 859d522f475SmrgCASE_DA1, 860d522f475Smrg/* d e f g */ 861d522f475SmrgCASE_VPA, 862d522f475SmrgCASE_GROUND_STATE, 863d522f475SmrgCASE_CUP, 864d522f475SmrgCASE_TBC, 865d522f475Smrg/* h i j k */ 866d522f475SmrgCASE_SET, 867d522f475SmrgCASE_MC, 868d522f475SmrgCASE_GROUND_STATE, 869d522f475SmrgCASE_GROUND_STATE, 870d522f475Smrg/* l m n o */ 871d522f475SmrgCASE_RST, 872d522f475SmrgCASE_SGR, 873d522f475SmrgCASE_CPR, 874d522f475SmrgCASE_GROUND_STATE, 875d522f475Smrg/* p q r s */ 876d522f475SmrgCASE_GROUND_STATE, 87720d2c4d2SmrgCASE_DECLL, 878d522f475SmrgCASE_DECSTBM, 879d522f475SmrgCASE_DECSC, 880d522f475Smrg/* t u v w */ 881d522f475SmrgCASE_XTERM_WINOPS, 882d522f475SmrgCASE_DECRC, 883d522f475SmrgCASE_GROUND_STATE, 884d522f475SmrgCASE_GROUND_STATE, 885d522f475Smrg/* x y z { */ 886d522f475SmrgCASE_DECREQTPARM, 887d522f475SmrgCASE_GROUND_STATE, 888d522f475SmrgCASE_GROUND_STATE, 889d522f475SmrgCASE_GROUND_STATE, 890d522f475Smrg/* | } ~ DEL */ 891d522f475SmrgCASE_GROUND_STATE, 892d522f475SmrgCASE_GROUND_STATE, 893d522f475SmrgCASE_GROUND_STATE, 894d522f475SmrgCASE_IGNORE, 895d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 896d522f475SmrgCASE_GROUND_STATE, 897d522f475SmrgCASE_GROUND_STATE, 898d522f475SmrgCASE_GROUND_STATE, 899d522f475SmrgCASE_GROUND_STATE, 900d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 901d522f475SmrgCASE_IND, 902d522f475SmrgCASE_NEL, 903d522f475SmrgCASE_GROUND_STATE, 904d522f475SmrgCASE_GROUND_STATE, 905d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 906d522f475SmrgCASE_HTS, 907d522f475SmrgCASE_GROUND_STATE, 908d522f475SmrgCASE_GROUND_STATE, 909d522f475SmrgCASE_GROUND_STATE, 910d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 911d522f475SmrgCASE_GROUND_STATE, 912d522f475SmrgCASE_RI, 913d522f475SmrgCASE_SS2, 914d522f475SmrgCASE_SS3, 915d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 916d522f475SmrgCASE_DCS, 917d522f475SmrgCASE_GROUND_STATE, 918d522f475SmrgCASE_GROUND_STATE, 919d522f475SmrgCASE_GROUND_STATE, 920d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 921d522f475SmrgCASE_GROUND_STATE, 922d522f475SmrgCASE_GROUND_STATE, 923d522f475SmrgCASE_SPA, 924d522f475SmrgCASE_EPA, 925d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 926d522f475SmrgCASE_SOS, 927d522f475SmrgCASE_GROUND_STATE, 928d522f475SmrgCASE_DECID, 929d522f475SmrgCASE_CSI_STATE, 930d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 931d522f475SmrgCASE_ST, 932d522f475SmrgCASE_OSC, 933d522f475SmrgCASE_PM, 934d522f475SmrgCASE_APC, 935d522f475Smrg/* nobreakspace exclamdown cent sterling */ 93620d2c4d2SmrgCASE_CSI_SPACE_STATE, 937d522f475SmrgCASE_CSI_EX_STATE, 938d522f475SmrgCASE_CSI_QUOTE_STATE, 939d522f475SmrgCASE_CSI_IGNORE, 940d522f475Smrg/* currency yen brokenbar section */ 941d522f475SmrgCASE_CSI_IGNORE, 942d522f475SmrgCASE_CSI_IGNORE, 943d522f475SmrgCASE_CSI_IGNORE, 944d522f475SmrgCASE_CSI_TICK_STATE, 945d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 946d522f475SmrgCASE_CSI_IGNORE, 947d522f475SmrgCASE_CSI_IGNORE, 948d522f475SmrgCASE_CSI_IGNORE, 949d522f475SmrgCASE_CSI_IGNORE, 950d522f475Smrg/* notsign hyphen registered macron */ 951d522f475SmrgCASE_CSI_IGNORE, 952d522f475SmrgCASE_CSI_IGNORE, 953d522f475SmrgCASE_CSI_IGNORE, 954d522f475SmrgCASE_CSI_IGNORE, 955d522f475Smrg/* degree plusminus twosuperior threesuperior */ 956d522f475SmrgCASE_ESC_DIGIT, 957d522f475SmrgCASE_ESC_DIGIT, 958d522f475SmrgCASE_ESC_DIGIT, 959d522f475SmrgCASE_ESC_DIGIT, 960d522f475Smrg/* acute mu paragraph periodcentered */ 961d522f475SmrgCASE_ESC_DIGIT, 962d522f475SmrgCASE_ESC_DIGIT, 963d522f475SmrgCASE_ESC_DIGIT, 964d522f475SmrgCASE_ESC_DIGIT, 965d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 966d522f475SmrgCASE_ESC_DIGIT, 967d522f475SmrgCASE_ESC_DIGIT, 968d522f475SmrgCASE_CSI_IGNORE, 969d522f475SmrgCASE_ESC_SEMI, 970d522f475Smrg/* onequarter onehalf threequarters questiondown */ 971d522f475SmrgCASE_CSI_IGNORE, 972d522f475SmrgCASE_CSI_IGNORE, 973d522f475SmrgCASE_CSI_IGNORE, 974d522f475SmrgCASE_CSI_IGNORE, 975d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 976d522f475SmrgCASE_ICH, 977d522f475SmrgCASE_CUU, 978d522f475SmrgCASE_CUD, 979d522f475SmrgCASE_CUF, 980d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 981d522f475SmrgCASE_CUB, 982d522f475SmrgCASE_CNL, 983d522f475SmrgCASE_CPL, 984d522f475SmrgCASE_HPA, 985d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 986d522f475SmrgCASE_CUP, 987d522f475SmrgCASE_CHT, 988d522f475SmrgCASE_ED, 989d522f475SmrgCASE_EL, 990d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 991d522f475SmrgCASE_IL, 992d522f475SmrgCASE_DL, 993d522f475SmrgCASE_GROUND_STATE, 994d522f475SmrgCASE_GROUND_STATE, 995d522f475Smrg/* Eth Ntilde Ograve Oacute */ 996d522f475SmrgCASE_DCH, 997d522f475SmrgCASE_GROUND_STATE, 998d522f475SmrgCASE_GROUND_STATE, 999d522f475SmrgCASE_SU, 1000d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 1001d522f475SmrgCASE_TRACK_MOUSE, 1002d522f475SmrgCASE_GROUND_STATE, 1003d522f475SmrgCASE_GROUND_STATE, 1004d522f475SmrgCASE_GROUND_STATE, 1005d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 1006d522f475SmrgCASE_ECH, 1007d522f475SmrgCASE_GROUND_STATE, 1008d522f475SmrgCASE_CBT, 1009d522f475SmrgCASE_GROUND_STATE, 1010d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 1011d522f475SmrgCASE_GROUND_STATE, 1012d522f475SmrgCASE_GROUND_STATE, 1013d522f475SmrgCASE_GROUND_STATE, 1014d522f475SmrgCASE_GROUND_STATE, 1015d522f475Smrg/* agrave aacute acircumflex atilde */ 1016d522f475SmrgCASE_HPA, 1017d522f475SmrgCASE_GROUND_STATE, 1018d522f475SmrgCASE_REP, 1019d522f475SmrgCASE_DA1, 1020d522f475Smrg/* adiaeresis aring ae ccedilla */ 1021d522f475SmrgCASE_VPA, 1022d522f475SmrgCASE_GROUND_STATE, 1023d522f475SmrgCASE_CUP, 1024d522f475SmrgCASE_TBC, 1025d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 1026d522f475SmrgCASE_SET, 1027d522f475SmrgCASE_MC, 1028d522f475SmrgCASE_GROUND_STATE, 1029d522f475SmrgCASE_GROUND_STATE, 1030d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 1031d522f475SmrgCASE_RST, 1032d522f475SmrgCASE_SGR, 1033d522f475SmrgCASE_CPR, 1034d522f475SmrgCASE_GROUND_STATE, 1035d522f475Smrg/* eth ntilde ograve oacute */ 1036d522f475SmrgCASE_GROUND_STATE, 103720d2c4d2SmrgCASE_DECLL, 1038d522f475SmrgCASE_DECSTBM, 1039d522f475SmrgCASE_DECSC, 1040d522f475Smrg/* ocircumflex otilde odiaeresis division */ 1041d522f475SmrgCASE_XTERM_WINOPS, 1042d522f475SmrgCASE_DECRC, 1043d522f475SmrgCASE_GROUND_STATE, 1044d522f475SmrgCASE_GROUND_STATE, 1045d522f475Smrg/* oslash ugrave uacute ucircumflex */ 1046d522f475SmrgCASE_DECREQTPARM, 1047d522f475SmrgCASE_GROUND_STATE, 1048d522f475SmrgCASE_GROUND_STATE, 1049d522f475SmrgCASE_GROUND_STATE, 1050d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 1051d522f475SmrgCASE_GROUND_STATE, 1052d522f475SmrgCASE_GROUND_STATE, 1053d522f475SmrgCASE_GROUND_STATE, 1054d522f475SmrgCASE_IGNORE, 1055d522f475Smrg}; 1056d522f475Smrg 1057d522f475SmrgConst PARSE_T csi_ex_table[] = /* CSI ! */ 1058d522f475Smrg{ 1059d522f475Smrg/* NUL SOH STX ETX */ 1060d522f475SmrgCASE_IGNORE, 1061d522f475SmrgCASE_IGNORE, 1062d522f475SmrgCASE_IGNORE, 1063d522f475SmrgCASE_IGNORE, 1064d522f475Smrg/* EOT ENQ ACK BEL */ 1065d522f475SmrgCASE_IGNORE, 1066d522f475SmrgCASE_ENQ, 1067d522f475SmrgCASE_IGNORE, 1068d522f475SmrgCASE_BELL, 1069d522f475Smrg/* BS HT NL VT */ 1070d522f475SmrgCASE_BS, 1071d522f475SmrgCASE_TAB, 1072d522f475SmrgCASE_VMOT, 1073d522f475SmrgCASE_VMOT, 1074d522f475Smrg/* NP CR SO SI */ 1075d522f475SmrgCASE_VMOT, 1076d522f475SmrgCASE_CR, 1077d522f475SmrgCASE_SO, 1078d522f475SmrgCASE_SI, 1079d522f475Smrg/* DLE DC1 DC2 DC3 */ 1080d522f475SmrgCASE_IGNORE, 1081d522f475SmrgCASE_IGNORE, 1082d522f475SmrgCASE_IGNORE, 1083d522f475SmrgCASE_IGNORE, 1084d522f475Smrg/* DC4 NAK SYN ETB */ 1085d522f475SmrgCASE_IGNORE, 1086d522f475SmrgCASE_IGNORE, 1087d522f475SmrgCASE_IGNORE, 1088d522f475SmrgCASE_IGNORE, 1089d522f475Smrg/* CAN EM SUB ESC */ 1090d522f475SmrgCASE_GROUND_STATE, 1091d522f475SmrgCASE_IGNORE, 1092d522f475SmrgCASE_GROUND_STATE, 1093d522f475SmrgCASE_ESC, 1094d522f475Smrg/* FS GS RS US */ 1095d522f475SmrgCASE_IGNORE, 1096d522f475SmrgCASE_IGNORE, 1097d522f475SmrgCASE_IGNORE, 1098d522f475SmrgCASE_IGNORE, 1099d522f475Smrg/* SP ! " # */ 1100d522f475SmrgCASE_CSI_IGNORE, 1101d522f475SmrgCASE_CSI_IGNORE, 1102d522f475SmrgCASE_CSI_IGNORE, 1103d522f475SmrgCASE_CSI_IGNORE, 1104d522f475Smrg/* $ % & ' */ 1105d522f475SmrgCASE_CSI_IGNORE, 1106d522f475SmrgCASE_CSI_IGNORE, 1107d522f475SmrgCASE_CSI_IGNORE, 1108d522f475SmrgCASE_CSI_IGNORE, 1109d522f475Smrg/* ( ) * + */ 1110d522f475SmrgCASE_CSI_IGNORE, 1111d522f475SmrgCASE_CSI_IGNORE, 1112d522f475SmrgCASE_CSI_IGNORE, 1113d522f475SmrgCASE_CSI_IGNORE, 1114d522f475Smrg/* , - . / */ 1115d522f475SmrgCASE_CSI_IGNORE, 1116d522f475SmrgCASE_CSI_IGNORE, 1117d522f475SmrgCASE_CSI_IGNORE, 1118d522f475SmrgCASE_CSI_IGNORE, 1119d522f475Smrg/* 0 1 2 3 */ 1120d522f475SmrgCASE_CSI_IGNORE, 1121d522f475SmrgCASE_CSI_IGNORE, 1122d522f475SmrgCASE_CSI_IGNORE, 1123d522f475SmrgCASE_CSI_IGNORE, 1124d522f475Smrg/* 4 5 6 7 */ 1125d522f475SmrgCASE_CSI_IGNORE, 1126d522f475SmrgCASE_CSI_IGNORE, 1127d522f475SmrgCASE_CSI_IGNORE, 1128d522f475SmrgCASE_CSI_IGNORE, 1129d522f475Smrg/* 8 9 : ; */ 1130d522f475SmrgCASE_CSI_IGNORE, 1131d522f475SmrgCASE_CSI_IGNORE, 1132d522f475SmrgCASE_CSI_IGNORE, 1133d522f475SmrgCASE_CSI_IGNORE, 1134d522f475Smrg/* < = > ? */ 1135d522f475SmrgCASE_CSI_IGNORE, 1136d522f475SmrgCASE_CSI_IGNORE, 1137d522f475SmrgCASE_CSI_IGNORE, 1138d522f475SmrgCASE_CSI_IGNORE, 1139d522f475Smrg/* @ A B C */ 1140d522f475SmrgCASE_GROUND_STATE, 1141d522f475SmrgCASE_GROUND_STATE, 1142d522f475SmrgCASE_GROUND_STATE, 1143d522f475SmrgCASE_GROUND_STATE, 1144d522f475Smrg/* D E F G */ 1145d522f475SmrgCASE_GROUND_STATE, 1146d522f475SmrgCASE_GROUND_STATE, 1147d522f475SmrgCASE_GROUND_STATE, 1148d522f475SmrgCASE_GROUND_STATE, 1149d522f475Smrg/* H I J K */ 1150d522f475SmrgCASE_GROUND_STATE, 1151d522f475SmrgCASE_GROUND_STATE, 1152d522f475SmrgCASE_GROUND_STATE, 1153d522f475SmrgCASE_GROUND_STATE, 1154d522f475Smrg/* L M N O */ 1155d522f475SmrgCASE_GROUND_STATE, 1156d522f475SmrgCASE_GROUND_STATE, 1157d522f475SmrgCASE_GROUND_STATE, 1158d522f475SmrgCASE_GROUND_STATE, 1159d522f475Smrg/* P Q R S */ 1160d522f475SmrgCASE_GROUND_STATE, 1161d522f475SmrgCASE_GROUND_STATE, 1162d522f475SmrgCASE_GROUND_STATE, 1163d522f475SmrgCASE_GROUND_STATE, 1164d522f475Smrg/* T U V W */ 1165d522f475SmrgCASE_GROUND_STATE, 1166d522f475SmrgCASE_GROUND_STATE, 1167d522f475SmrgCASE_GROUND_STATE, 1168d522f475SmrgCASE_GROUND_STATE, 1169d522f475Smrg/* X Y Z [ */ 1170d522f475SmrgCASE_GROUND_STATE, 1171d522f475SmrgCASE_GROUND_STATE, 1172d522f475SmrgCASE_GROUND_STATE, 1173d522f475SmrgCASE_GROUND_STATE, 1174d522f475Smrg/* \ ] ^ _ */ 1175d522f475SmrgCASE_GROUND_STATE, 1176d522f475SmrgCASE_GROUND_STATE, 1177d522f475SmrgCASE_GROUND_STATE, 1178d522f475SmrgCASE_GROUND_STATE, 1179d522f475Smrg/* ` a b c */ 1180d522f475SmrgCASE_GROUND_STATE, 1181d522f475SmrgCASE_GROUND_STATE, 1182d522f475SmrgCASE_GROUND_STATE, 1183d522f475SmrgCASE_GROUND_STATE, 1184d522f475Smrg/* d e f g */ 1185d522f475SmrgCASE_GROUND_STATE, 1186d522f475SmrgCASE_GROUND_STATE, 1187d522f475SmrgCASE_GROUND_STATE, 1188d522f475SmrgCASE_GROUND_STATE, 1189d522f475Smrg/* h i j k */ 1190d522f475SmrgCASE_GROUND_STATE, 1191d522f475SmrgCASE_GROUND_STATE, 1192d522f475SmrgCASE_GROUND_STATE, 1193d522f475SmrgCASE_GROUND_STATE, 1194d522f475Smrg/* l m n o */ 1195d522f475SmrgCASE_GROUND_STATE, 1196d522f475SmrgCASE_GROUND_STATE, 1197d522f475SmrgCASE_GROUND_STATE, 1198d522f475SmrgCASE_GROUND_STATE, 1199d522f475Smrg/* p q r s */ 1200d522f475SmrgCASE_DECSTR, 1201d522f475SmrgCASE_GROUND_STATE, 1202d522f475SmrgCASE_GROUND_STATE, 1203d522f475SmrgCASE_GROUND_STATE, 1204d522f475Smrg/* t u v w */ 1205d522f475SmrgCASE_GROUND_STATE, 1206d522f475SmrgCASE_GROUND_STATE, 1207d522f475SmrgCASE_GROUND_STATE, 1208d522f475SmrgCASE_GROUND_STATE, 1209d522f475Smrg/* x y z { */ 1210d522f475SmrgCASE_GROUND_STATE, 1211d522f475SmrgCASE_GROUND_STATE, 1212d522f475SmrgCASE_GROUND_STATE, 1213d522f475SmrgCASE_GROUND_STATE, 1214d522f475Smrg/* | } ~ DEL */ 1215d522f475SmrgCASE_GROUND_STATE, 1216d522f475SmrgCASE_GROUND_STATE, 1217d522f475SmrgCASE_GROUND_STATE, 1218d522f475SmrgCASE_IGNORE, 1219d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 1220d522f475SmrgCASE_GROUND_STATE, 1221d522f475SmrgCASE_GROUND_STATE, 1222d522f475SmrgCASE_GROUND_STATE, 1223d522f475SmrgCASE_GROUND_STATE, 1224d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 1225d522f475SmrgCASE_IND, 1226d522f475SmrgCASE_NEL, 1227d522f475SmrgCASE_GROUND_STATE, 1228d522f475SmrgCASE_GROUND_STATE, 1229d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 1230d522f475SmrgCASE_HTS, 1231d522f475SmrgCASE_GROUND_STATE, 1232d522f475SmrgCASE_GROUND_STATE, 1233d522f475SmrgCASE_GROUND_STATE, 1234d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 1235d522f475SmrgCASE_GROUND_STATE, 1236d522f475SmrgCASE_RI, 1237d522f475SmrgCASE_SS2, 1238d522f475SmrgCASE_SS3, 1239d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 1240d522f475SmrgCASE_DCS, 1241d522f475SmrgCASE_GROUND_STATE, 1242d522f475SmrgCASE_GROUND_STATE, 1243d522f475SmrgCASE_GROUND_STATE, 1244d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 1245d522f475SmrgCASE_GROUND_STATE, 1246d522f475SmrgCASE_GROUND_STATE, 1247d522f475SmrgCASE_SPA, 1248d522f475SmrgCASE_EPA, 1249d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 1250d522f475SmrgCASE_SOS, 1251d522f475SmrgCASE_GROUND_STATE, 1252d522f475SmrgCASE_DECID, 1253d522f475SmrgCASE_CSI_STATE, 1254d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 1255d522f475SmrgCASE_ST, 1256d522f475SmrgCASE_OSC, 1257d522f475SmrgCASE_PM, 1258d522f475SmrgCASE_APC, 1259d522f475Smrg/* nobreakspace exclamdown cent sterling */ 1260d522f475SmrgCASE_CSI_IGNORE, 1261d522f475SmrgCASE_CSI_IGNORE, 1262d522f475SmrgCASE_CSI_IGNORE, 1263d522f475SmrgCASE_CSI_IGNORE, 1264d522f475Smrg/* currency yen brokenbar section */ 1265d522f475SmrgCASE_CSI_IGNORE, 1266d522f475SmrgCASE_CSI_IGNORE, 1267d522f475SmrgCASE_CSI_IGNORE, 1268d522f475SmrgCASE_CSI_IGNORE, 1269d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 1270d522f475SmrgCASE_CSI_IGNORE, 1271d522f475SmrgCASE_CSI_IGNORE, 1272d522f475SmrgCASE_CSI_IGNORE, 1273d522f475SmrgCASE_CSI_IGNORE, 1274d522f475Smrg/* notsign hyphen registered macron */ 1275d522f475SmrgCASE_CSI_IGNORE, 1276d522f475SmrgCASE_CSI_IGNORE, 1277d522f475SmrgCASE_CSI_IGNORE, 1278d522f475SmrgCASE_CSI_IGNORE, 1279d522f475Smrg/* degree plusminus twosuperior threesuperior */ 1280d522f475SmrgCASE_CSI_IGNORE, 1281d522f475SmrgCASE_CSI_IGNORE, 1282d522f475SmrgCASE_CSI_IGNORE, 1283d522f475SmrgCASE_CSI_IGNORE, 1284d522f475Smrg/* acute mu paragraph periodcentered */ 1285d522f475SmrgCASE_CSI_IGNORE, 1286d522f475SmrgCASE_CSI_IGNORE, 1287d522f475SmrgCASE_CSI_IGNORE, 1288d522f475SmrgCASE_CSI_IGNORE, 1289d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 1290d522f475SmrgCASE_CSI_IGNORE, 1291d522f475SmrgCASE_CSI_IGNORE, 1292d522f475SmrgCASE_CSI_IGNORE, 1293d522f475SmrgCASE_CSI_IGNORE, 1294d522f475Smrg/* onequarter onehalf threequarters questiondown */ 1295d522f475SmrgCASE_CSI_IGNORE, 1296d522f475SmrgCASE_CSI_IGNORE, 1297d522f475SmrgCASE_CSI_IGNORE, 1298d522f475SmrgCASE_CSI_IGNORE, 1299d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 1300d522f475SmrgCASE_GROUND_STATE, 1301d522f475SmrgCASE_GROUND_STATE, 1302d522f475SmrgCASE_GROUND_STATE, 1303d522f475SmrgCASE_GROUND_STATE, 1304d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 1305d522f475SmrgCASE_GROUND_STATE, 1306d522f475SmrgCASE_GROUND_STATE, 1307d522f475SmrgCASE_GROUND_STATE, 1308d522f475SmrgCASE_GROUND_STATE, 1309d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 1310d522f475SmrgCASE_GROUND_STATE, 1311d522f475SmrgCASE_GROUND_STATE, 1312d522f475SmrgCASE_GROUND_STATE, 1313d522f475SmrgCASE_GROUND_STATE, 1314d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 1315d522f475SmrgCASE_GROUND_STATE, 1316d522f475SmrgCASE_GROUND_STATE, 1317d522f475SmrgCASE_GROUND_STATE, 1318d522f475SmrgCASE_GROUND_STATE, 1319d522f475Smrg/* Eth Ntilde Ograve Oacute */ 1320d522f475SmrgCASE_GROUND_STATE, 1321d522f475SmrgCASE_GROUND_STATE, 1322d522f475SmrgCASE_GROUND_STATE, 1323d522f475SmrgCASE_GROUND_STATE, 1324d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 1325d522f475SmrgCASE_GROUND_STATE, 1326d522f475SmrgCASE_GROUND_STATE, 1327d522f475SmrgCASE_GROUND_STATE, 1328d522f475SmrgCASE_GROUND_STATE, 1329d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 1330d522f475SmrgCASE_GROUND_STATE, 1331d522f475SmrgCASE_GROUND_STATE, 1332d522f475SmrgCASE_GROUND_STATE, 1333d522f475SmrgCASE_GROUND_STATE, 1334d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 1335d522f475SmrgCASE_GROUND_STATE, 1336d522f475SmrgCASE_GROUND_STATE, 1337d522f475SmrgCASE_GROUND_STATE, 1338d522f475SmrgCASE_GROUND_STATE, 1339d522f475Smrg/* agrave aacute acircumflex atilde */ 1340d522f475SmrgCASE_GROUND_STATE, 1341d522f475SmrgCASE_GROUND_STATE, 1342d522f475SmrgCASE_GROUND_STATE, 1343d522f475SmrgCASE_GROUND_STATE, 1344d522f475Smrg/* adiaeresis aring ae ccedilla */ 1345d522f475SmrgCASE_GROUND_STATE, 1346d522f475SmrgCASE_GROUND_STATE, 1347d522f475SmrgCASE_GROUND_STATE, 1348d522f475SmrgCASE_GROUND_STATE, 1349d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 1350d522f475SmrgCASE_GROUND_STATE, 1351d522f475SmrgCASE_GROUND_STATE, 1352d522f475SmrgCASE_GROUND_STATE, 1353d522f475SmrgCASE_GROUND_STATE, 1354d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 1355d522f475SmrgCASE_GROUND_STATE, 1356d522f475SmrgCASE_GROUND_STATE, 1357d522f475SmrgCASE_GROUND_STATE, 1358d522f475SmrgCASE_GROUND_STATE, 1359d522f475Smrg/* eth ntilde ograve oacute */ 1360d522f475SmrgCASE_DECSTR, 1361d522f475SmrgCASE_GROUND_STATE, 1362d522f475SmrgCASE_GROUND_STATE, 1363d522f475SmrgCASE_GROUND_STATE, 1364d522f475Smrg/* ocircumflex otilde odiaeresis division */ 1365d522f475SmrgCASE_GROUND_STATE, 1366d522f475SmrgCASE_GROUND_STATE, 1367d522f475SmrgCASE_GROUND_STATE, 1368d522f475SmrgCASE_GROUND_STATE, 1369d522f475Smrg/* oslash ugrave uacute ucircumflex */ 1370d522f475SmrgCASE_GROUND_STATE, 1371d522f475SmrgCASE_GROUND_STATE, 1372d522f475SmrgCASE_GROUND_STATE, 1373d522f475SmrgCASE_GROUND_STATE, 1374d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 1375d522f475SmrgCASE_GROUND_STATE, 1376d522f475SmrgCASE_GROUND_STATE, 1377d522f475SmrgCASE_GROUND_STATE, 1378d522f475SmrgCASE_IGNORE, 1379d522f475Smrg}; 1380d522f475Smrg 1381d522f475SmrgConst PARSE_T csi_quo_table[] = /* CSI ... " */ 1382d522f475Smrg{ 1383d522f475Smrg/* NUL SOH STX ETX */ 1384d522f475SmrgCASE_IGNORE, 1385d522f475SmrgCASE_IGNORE, 1386d522f475SmrgCASE_IGNORE, 1387d522f475SmrgCASE_IGNORE, 1388d522f475Smrg/* EOT ENQ ACK BEL */ 1389d522f475SmrgCASE_IGNORE, 1390d522f475SmrgCASE_ENQ, 1391d522f475SmrgCASE_IGNORE, 1392d522f475SmrgCASE_BELL, 1393d522f475Smrg/* BS HT NL VT */ 1394d522f475SmrgCASE_BS, 1395d522f475SmrgCASE_TAB, 1396d522f475SmrgCASE_VMOT, 1397d522f475SmrgCASE_VMOT, 1398d522f475Smrg/* NP CR SO SI */ 1399d522f475SmrgCASE_VMOT, 1400d522f475SmrgCASE_CR, 1401d522f475SmrgCASE_SO, 1402d522f475SmrgCASE_SI, 1403d522f475Smrg/* DLE DC1 DC2 DC3 */ 1404d522f475SmrgCASE_IGNORE, 1405d522f475SmrgCASE_IGNORE, 1406d522f475SmrgCASE_IGNORE, 1407d522f475SmrgCASE_IGNORE, 1408d522f475Smrg/* DC4 NAK SYN ETB */ 1409d522f475SmrgCASE_IGNORE, 1410d522f475SmrgCASE_IGNORE, 1411d522f475SmrgCASE_IGNORE, 1412d522f475SmrgCASE_IGNORE, 1413d522f475Smrg/* CAN EM SUB ESC */ 1414d522f475SmrgCASE_GROUND_STATE, 1415d522f475SmrgCASE_IGNORE, 1416d522f475SmrgCASE_GROUND_STATE, 1417d522f475SmrgCASE_ESC, 1418d522f475Smrg/* FS GS RS US */ 1419d522f475SmrgCASE_IGNORE, 1420d522f475SmrgCASE_IGNORE, 1421d522f475SmrgCASE_IGNORE, 1422d522f475SmrgCASE_IGNORE, 1423d522f475Smrg/* SP ! " # */ 1424d522f475SmrgCASE_CSI_IGNORE, 1425d522f475SmrgCASE_CSI_IGNORE, 1426d522f475SmrgCASE_CSI_IGNORE, 1427d522f475SmrgCASE_CSI_IGNORE, 1428d522f475Smrg/* $ % & ' */ 1429d522f475SmrgCASE_CSI_IGNORE, 1430d522f475SmrgCASE_CSI_IGNORE, 1431d522f475SmrgCASE_CSI_IGNORE, 1432d522f475SmrgCASE_CSI_IGNORE, 1433d522f475Smrg/* ( ) * + */ 1434d522f475SmrgCASE_CSI_IGNORE, 1435d522f475SmrgCASE_CSI_IGNORE, 1436d522f475SmrgCASE_CSI_IGNORE, 1437d522f475SmrgCASE_CSI_IGNORE, 1438d522f475Smrg/* , - . / */ 1439d522f475SmrgCASE_CSI_IGNORE, 1440d522f475SmrgCASE_CSI_IGNORE, 1441d522f475SmrgCASE_CSI_IGNORE, 1442d522f475SmrgCASE_CSI_IGNORE, 1443d522f475Smrg/* 0 1 2 3 */ 1444d522f475SmrgCASE_CSI_IGNORE, 1445d522f475SmrgCASE_CSI_IGNORE, 1446d522f475SmrgCASE_CSI_IGNORE, 1447d522f475SmrgCASE_CSI_IGNORE, 1448d522f475Smrg/* 4 5 6 7 */ 1449d522f475SmrgCASE_CSI_IGNORE, 1450d522f475SmrgCASE_CSI_IGNORE, 1451d522f475SmrgCASE_CSI_IGNORE, 1452d522f475SmrgCASE_CSI_IGNORE, 1453d522f475Smrg/* 8 9 : ; */ 1454d522f475SmrgCASE_CSI_IGNORE, 1455d522f475SmrgCASE_CSI_IGNORE, 1456d522f475SmrgCASE_CSI_IGNORE, 1457d522f475SmrgCASE_CSI_IGNORE, 1458d522f475Smrg/* < = > ? */ 1459d522f475SmrgCASE_CSI_IGNORE, 1460d522f475SmrgCASE_CSI_IGNORE, 1461d522f475SmrgCASE_CSI_IGNORE, 1462d522f475SmrgCASE_CSI_IGNORE, 1463d522f475Smrg/* @ A B C */ 1464d522f475SmrgCASE_GROUND_STATE, 1465d522f475SmrgCASE_GROUND_STATE, 1466d522f475SmrgCASE_GROUND_STATE, 1467d522f475SmrgCASE_GROUND_STATE, 1468d522f475Smrg/* D E F G */ 1469d522f475SmrgCASE_GROUND_STATE, 1470d522f475SmrgCASE_GROUND_STATE, 1471d522f475SmrgCASE_GROUND_STATE, 1472d522f475SmrgCASE_GROUND_STATE, 1473d522f475Smrg/* H I J K */ 1474d522f475SmrgCASE_GROUND_STATE, 1475d522f475SmrgCASE_GROUND_STATE, 1476d522f475SmrgCASE_GROUND_STATE, 1477d522f475SmrgCASE_GROUND_STATE, 1478d522f475Smrg/* L M N O */ 1479d522f475SmrgCASE_GROUND_STATE, 1480d522f475SmrgCASE_GROUND_STATE, 1481d522f475SmrgCASE_GROUND_STATE, 1482d522f475SmrgCASE_GROUND_STATE, 1483d522f475Smrg/* P Q R S */ 1484d522f475SmrgCASE_GROUND_STATE, 1485d522f475SmrgCASE_GROUND_STATE, 1486d522f475SmrgCASE_GROUND_STATE, 1487d522f475SmrgCASE_GROUND_STATE, 1488d522f475Smrg/* T U V W */ 1489d522f475SmrgCASE_GROUND_STATE, 1490d522f475SmrgCASE_GROUND_STATE, 1491d522f475SmrgCASE_GROUND_STATE, 1492d522f475SmrgCASE_GROUND_STATE, 1493d522f475Smrg/* X Y Z [ */ 1494d522f475SmrgCASE_GROUND_STATE, 1495d522f475SmrgCASE_GROUND_STATE, 1496d522f475SmrgCASE_GROUND_STATE, 1497d522f475SmrgCASE_GROUND_STATE, 1498d522f475Smrg/* \ ] ^ _ */ 1499d522f475SmrgCASE_GROUND_STATE, 1500d522f475SmrgCASE_GROUND_STATE, 1501d522f475SmrgCASE_GROUND_STATE, 1502d522f475SmrgCASE_GROUND_STATE, 1503d522f475Smrg/* ` a b c */ 1504d522f475SmrgCASE_GROUND_STATE, 1505d522f475SmrgCASE_GROUND_STATE, 1506d522f475SmrgCASE_GROUND_STATE, 1507d522f475SmrgCASE_GROUND_STATE, 1508d522f475Smrg/* d e f g */ 1509d522f475SmrgCASE_GROUND_STATE, 1510d522f475SmrgCASE_GROUND_STATE, 1511d522f475SmrgCASE_GROUND_STATE, 1512d522f475SmrgCASE_GROUND_STATE, 1513d522f475Smrg/* h i j k */ 1514d522f475SmrgCASE_GROUND_STATE, 1515d522f475SmrgCASE_GROUND_STATE, 1516d522f475SmrgCASE_GROUND_STATE, 1517d522f475SmrgCASE_GROUND_STATE, 1518d522f475Smrg/* l m n o */ 1519d522f475SmrgCASE_GROUND_STATE, 1520d522f475SmrgCASE_GROUND_STATE, 1521d522f475SmrgCASE_GROUND_STATE, 1522d522f475SmrgCASE_GROUND_STATE, 1523d522f475Smrg/* p q r s */ 1524d522f475SmrgCASE_DECSCL, 1525d522f475SmrgCASE_DECSCA, 1526d522f475SmrgCASE_GROUND_STATE, 1527d522f475SmrgCASE_GROUND_STATE, 1528d522f475Smrg/* t u v w */ 1529d522f475SmrgCASE_GROUND_STATE, 1530d522f475SmrgCASE_GROUND_STATE, 1531d522f475SmrgCASE_GROUND_STATE, 1532d522f475SmrgCASE_GROUND_STATE, 1533d522f475Smrg/* x y z { */ 1534d522f475SmrgCASE_GROUND_STATE, 1535d522f475SmrgCASE_GROUND_STATE, 1536d522f475SmrgCASE_GROUND_STATE, 1537d522f475SmrgCASE_GROUND_STATE, 1538d522f475Smrg/* | } ~ DEL */ 1539d522f475SmrgCASE_GROUND_STATE, 1540d522f475SmrgCASE_GROUND_STATE, 1541d522f475SmrgCASE_GROUND_STATE, 1542d522f475SmrgCASE_IGNORE, 1543d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 1544d522f475SmrgCASE_GROUND_STATE, 1545d522f475SmrgCASE_GROUND_STATE, 1546d522f475SmrgCASE_GROUND_STATE, 1547d522f475SmrgCASE_GROUND_STATE, 1548d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 1549d522f475SmrgCASE_IND, 1550d522f475SmrgCASE_NEL, 1551d522f475SmrgCASE_GROUND_STATE, 1552d522f475SmrgCASE_GROUND_STATE, 1553d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 1554d522f475SmrgCASE_HTS, 1555d522f475SmrgCASE_GROUND_STATE, 1556d522f475SmrgCASE_GROUND_STATE, 1557d522f475SmrgCASE_GROUND_STATE, 1558d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 1559d522f475SmrgCASE_GROUND_STATE, 1560d522f475SmrgCASE_RI, 1561d522f475SmrgCASE_SS2, 1562d522f475SmrgCASE_SS3, 1563d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 1564d522f475SmrgCASE_DCS, 1565d522f475SmrgCASE_GROUND_STATE, 1566d522f475SmrgCASE_GROUND_STATE, 1567d522f475SmrgCASE_GROUND_STATE, 1568d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 1569d522f475SmrgCASE_GROUND_STATE, 1570d522f475SmrgCASE_GROUND_STATE, 1571d522f475SmrgCASE_SPA, 1572d522f475SmrgCASE_EPA, 1573d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 1574d522f475SmrgCASE_SOS, 1575d522f475SmrgCASE_GROUND_STATE, 1576d522f475SmrgCASE_DECID, 1577d522f475SmrgCASE_CSI_STATE, 1578d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 1579d522f475SmrgCASE_ST, 1580d522f475SmrgCASE_OSC, 1581d522f475SmrgCASE_PM, 1582d522f475SmrgCASE_APC, 1583d522f475Smrg/* nobreakspace exclamdown cent sterling */ 1584d522f475SmrgCASE_CSI_IGNORE, 1585d522f475SmrgCASE_CSI_IGNORE, 1586d522f475SmrgCASE_CSI_IGNORE, 1587d522f475SmrgCASE_CSI_IGNORE, 1588d522f475Smrg/* currency yen brokenbar section */ 1589d522f475SmrgCASE_CSI_IGNORE, 1590d522f475SmrgCASE_CSI_IGNORE, 1591d522f475SmrgCASE_CSI_IGNORE, 1592d522f475SmrgCASE_CSI_IGNORE, 1593d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 1594d522f475SmrgCASE_CSI_IGNORE, 1595d522f475SmrgCASE_CSI_IGNORE, 1596d522f475SmrgCASE_CSI_IGNORE, 1597d522f475SmrgCASE_CSI_IGNORE, 1598d522f475Smrg/* notsign hyphen registered macron */ 1599d522f475SmrgCASE_CSI_IGNORE, 1600d522f475SmrgCASE_CSI_IGNORE, 1601d522f475SmrgCASE_CSI_IGNORE, 1602d522f475SmrgCASE_CSI_IGNORE, 1603d522f475Smrg/* degree plusminus twosuperior threesuperior */ 1604d522f475SmrgCASE_CSI_IGNORE, 1605d522f475SmrgCASE_CSI_IGNORE, 1606d522f475SmrgCASE_CSI_IGNORE, 1607d522f475SmrgCASE_CSI_IGNORE, 1608d522f475Smrg/* acute mu paragraph periodcentered */ 1609d522f475SmrgCASE_CSI_IGNORE, 1610d522f475SmrgCASE_CSI_IGNORE, 1611d522f475SmrgCASE_CSI_IGNORE, 1612d522f475SmrgCASE_CSI_IGNORE, 1613d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 1614d522f475SmrgCASE_CSI_IGNORE, 1615d522f475SmrgCASE_CSI_IGNORE, 1616d522f475SmrgCASE_CSI_IGNORE, 1617d522f475SmrgCASE_CSI_IGNORE, 1618d522f475Smrg/* onequarter onehalf threequarters questiondown */ 1619d522f475SmrgCASE_CSI_IGNORE, 1620d522f475SmrgCASE_CSI_IGNORE, 1621d522f475SmrgCASE_CSI_IGNORE, 1622d522f475SmrgCASE_CSI_IGNORE, 1623d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 1624d522f475SmrgCASE_GROUND_STATE, 1625d522f475SmrgCASE_GROUND_STATE, 1626d522f475SmrgCASE_GROUND_STATE, 1627d522f475SmrgCASE_GROUND_STATE, 1628d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 1629d522f475SmrgCASE_GROUND_STATE, 1630d522f475SmrgCASE_GROUND_STATE, 1631d522f475SmrgCASE_GROUND_STATE, 1632d522f475SmrgCASE_GROUND_STATE, 1633d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 1634d522f475SmrgCASE_GROUND_STATE, 1635d522f475SmrgCASE_GROUND_STATE, 1636d522f475SmrgCASE_GROUND_STATE, 1637d522f475SmrgCASE_GROUND_STATE, 1638d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 1639d522f475SmrgCASE_GROUND_STATE, 1640d522f475SmrgCASE_GROUND_STATE, 1641d522f475SmrgCASE_GROUND_STATE, 1642d522f475SmrgCASE_GROUND_STATE, 1643d522f475Smrg/* Eth Ntilde Ograve Oacute */ 1644d522f475SmrgCASE_GROUND_STATE, 1645d522f475SmrgCASE_GROUND_STATE, 1646d522f475SmrgCASE_GROUND_STATE, 1647d522f475SmrgCASE_GROUND_STATE, 1648d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 1649d522f475SmrgCASE_GROUND_STATE, 1650d522f475SmrgCASE_GROUND_STATE, 1651d522f475SmrgCASE_GROUND_STATE, 1652d522f475SmrgCASE_GROUND_STATE, 1653d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 1654d522f475SmrgCASE_GROUND_STATE, 1655d522f475SmrgCASE_GROUND_STATE, 1656d522f475SmrgCASE_GROUND_STATE, 1657d522f475SmrgCASE_GROUND_STATE, 1658d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 1659d522f475SmrgCASE_GROUND_STATE, 1660d522f475SmrgCASE_GROUND_STATE, 1661d522f475SmrgCASE_GROUND_STATE, 1662d522f475SmrgCASE_GROUND_STATE, 1663d522f475Smrg/* agrave aacute acircumflex atilde */ 1664d522f475SmrgCASE_GROUND_STATE, 1665d522f475SmrgCASE_GROUND_STATE, 1666d522f475SmrgCASE_GROUND_STATE, 1667d522f475SmrgCASE_GROUND_STATE, 1668d522f475Smrg/* adiaeresis aring ae ccedilla */ 1669d522f475SmrgCASE_GROUND_STATE, 1670d522f475SmrgCASE_GROUND_STATE, 1671d522f475SmrgCASE_GROUND_STATE, 1672d522f475SmrgCASE_GROUND_STATE, 1673d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 1674d522f475SmrgCASE_GROUND_STATE, 1675d522f475SmrgCASE_GROUND_STATE, 1676d522f475SmrgCASE_GROUND_STATE, 1677d522f475SmrgCASE_GROUND_STATE, 1678d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 1679d522f475SmrgCASE_GROUND_STATE, 1680d522f475SmrgCASE_GROUND_STATE, 1681d522f475SmrgCASE_GROUND_STATE, 1682d522f475SmrgCASE_GROUND_STATE, 1683d522f475Smrg/* eth ntilde ograve oacute */ 1684d522f475SmrgCASE_DECSCL, 1685d522f475SmrgCASE_DECSCA, 1686d522f475SmrgCASE_GROUND_STATE, 1687d522f475SmrgCASE_GROUND_STATE, 1688d522f475Smrg/* ocircumflex otilde odiaeresis division */ 1689d522f475SmrgCASE_GROUND_STATE, 1690d522f475SmrgCASE_GROUND_STATE, 1691d522f475SmrgCASE_GROUND_STATE, 1692d522f475SmrgCASE_GROUND_STATE, 1693d522f475Smrg/* oslash ugrave uacute ucircumflex */ 1694d522f475SmrgCASE_GROUND_STATE, 1695d522f475SmrgCASE_GROUND_STATE, 1696d522f475SmrgCASE_GROUND_STATE, 1697d522f475SmrgCASE_GROUND_STATE, 1698d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 1699d522f475SmrgCASE_GROUND_STATE, 1700d522f475SmrgCASE_GROUND_STATE, 1701d522f475SmrgCASE_GROUND_STATE, 1702d522f475SmrgCASE_IGNORE, 1703d522f475Smrg}; 1704d522f475Smrg 170520d2c4d2Smrg#if OPT_BLINK_CURS 170620d2c4d2SmrgConst PARSE_T csi_sp_table[] = /* CSI ... SP */ 170720d2c4d2Smrg{ 170820d2c4d2Smrg/* NUL SOH STX ETX */ 170920d2c4d2SmrgCASE_IGNORE, 171020d2c4d2SmrgCASE_IGNORE, 171120d2c4d2SmrgCASE_IGNORE, 171220d2c4d2SmrgCASE_IGNORE, 171320d2c4d2Smrg/* EOT ENQ ACK BEL */ 171420d2c4d2SmrgCASE_IGNORE, 171520d2c4d2SmrgCASE_ENQ, 171620d2c4d2SmrgCASE_IGNORE, 171720d2c4d2SmrgCASE_BELL, 171820d2c4d2Smrg/* BS HT NL VT */ 171920d2c4d2SmrgCASE_BS, 172020d2c4d2SmrgCASE_TAB, 172120d2c4d2SmrgCASE_VMOT, 172220d2c4d2SmrgCASE_VMOT, 172320d2c4d2Smrg/* NP CR SO SI */ 172420d2c4d2SmrgCASE_VMOT, 172520d2c4d2SmrgCASE_CR, 172620d2c4d2SmrgCASE_SO, 172720d2c4d2SmrgCASE_SI, 172820d2c4d2Smrg/* DLE DC1 DC2 DC3 */ 172920d2c4d2SmrgCASE_IGNORE, 173020d2c4d2SmrgCASE_IGNORE, 173120d2c4d2SmrgCASE_IGNORE, 173220d2c4d2SmrgCASE_IGNORE, 173320d2c4d2Smrg/* DC4 NAK SYN ETB */ 173420d2c4d2SmrgCASE_IGNORE, 173520d2c4d2SmrgCASE_IGNORE, 173620d2c4d2SmrgCASE_IGNORE, 173720d2c4d2SmrgCASE_IGNORE, 173820d2c4d2Smrg/* CAN EM SUB ESC */ 173920d2c4d2SmrgCASE_GROUND_STATE, 174020d2c4d2SmrgCASE_IGNORE, 174120d2c4d2SmrgCASE_GROUND_STATE, 174220d2c4d2SmrgCASE_ESC, 174320d2c4d2Smrg/* FS GS RS US */ 174420d2c4d2SmrgCASE_IGNORE, 174520d2c4d2SmrgCASE_IGNORE, 174620d2c4d2SmrgCASE_IGNORE, 174720d2c4d2SmrgCASE_IGNORE, 174820d2c4d2Smrg/* SP ! " # */ 174920d2c4d2SmrgCASE_CSI_IGNORE, 175020d2c4d2SmrgCASE_CSI_IGNORE, 175120d2c4d2SmrgCASE_CSI_IGNORE, 175220d2c4d2SmrgCASE_CSI_IGNORE, 175320d2c4d2Smrg/* $ % & ' */ 175420d2c4d2SmrgCASE_CSI_IGNORE, 175520d2c4d2SmrgCASE_CSI_IGNORE, 175620d2c4d2SmrgCASE_CSI_IGNORE, 175720d2c4d2SmrgCASE_CSI_IGNORE, 175820d2c4d2Smrg/* ( ) * + */ 175920d2c4d2SmrgCASE_CSI_IGNORE, 176020d2c4d2SmrgCASE_CSI_IGNORE, 176120d2c4d2SmrgCASE_CSI_IGNORE, 176220d2c4d2SmrgCASE_CSI_IGNORE, 176320d2c4d2Smrg/* , - . / */ 176420d2c4d2SmrgCASE_CSI_IGNORE, 176520d2c4d2SmrgCASE_CSI_IGNORE, 176620d2c4d2SmrgCASE_CSI_IGNORE, 176720d2c4d2SmrgCASE_CSI_IGNORE, 176820d2c4d2Smrg/* 0 1 2 3 */ 176920d2c4d2SmrgCASE_CSI_IGNORE, 177020d2c4d2SmrgCASE_CSI_IGNORE, 177120d2c4d2SmrgCASE_CSI_IGNORE, 177220d2c4d2SmrgCASE_CSI_IGNORE, 177320d2c4d2Smrg/* 4 5 6 7 */ 177420d2c4d2SmrgCASE_CSI_IGNORE, 177520d2c4d2SmrgCASE_CSI_IGNORE, 177620d2c4d2SmrgCASE_CSI_IGNORE, 177720d2c4d2SmrgCASE_CSI_IGNORE, 177820d2c4d2Smrg/* 8 9 : ; */ 177920d2c4d2SmrgCASE_CSI_IGNORE, 178020d2c4d2SmrgCASE_CSI_IGNORE, 178120d2c4d2SmrgCASE_CSI_IGNORE, 178220d2c4d2SmrgCASE_CSI_IGNORE, 178320d2c4d2Smrg/* < = > ? */ 178420d2c4d2SmrgCASE_CSI_IGNORE, 178520d2c4d2SmrgCASE_CSI_IGNORE, 178620d2c4d2SmrgCASE_CSI_IGNORE, 178720d2c4d2SmrgCASE_CSI_IGNORE, 178820d2c4d2Smrg/* @ A B C */ 178920d2c4d2SmrgCASE_GROUND_STATE, 179020d2c4d2SmrgCASE_GROUND_STATE, 179120d2c4d2SmrgCASE_GROUND_STATE, 179220d2c4d2SmrgCASE_GROUND_STATE, 179320d2c4d2Smrg/* D E F G */ 179420d2c4d2SmrgCASE_GROUND_STATE, 179520d2c4d2SmrgCASE_GROUND_STATE, 179620d2c4d2SmrgCASE_GROUND_STATE, 179720d2c4d2SmrgCASE_GROUND_STATE, 179820d2c4d2Smrg/* H I J K */ 179920d2c4d2SmrgCASE_GROUND_STATE, 180020d2c4d2SmrgCASE_GROUND_STATE, 180120d2c4d2SmrgCASE_GROUND_STATE, 180220d2c4d2SmrgCASE_GROUND_STATE, 180320d2c4d2Smrg/* L M N O */ 180420d2c4d2SmrgCASE_GROUND_STATE, 180520d2c4d2SmrgCASE_GROUND_STATE, 180620d2c4d2SmrgCASE_GROUND_STATE, 180720d2c4d2SmrgCASE_GROUND_STATE, 180820d2c4d2Smrg/* P Q R S */ 180920d2c4d2SmrgCASE_GROUND_STATE, 181020d2c4d2SmrgCASE_GROUND_STATE, 181120d2c4d2SmrgCASE_GROUND_STATE, 181220d2c4d2SmrgCASE_GROUND_STATE, 181320d2c4d2Smrg/* T U V W */ 181420d2c4d2SmrgCASE_GROUND_STATE, 181520d2c4d2SmrgCASE_GROUND_STATE, 181620d2c4d2SmrgCASE_GROUND_STATE, 181720d2c4d2SmrgCASE_GROUND_STATE, 181820d2c4d2Smrg/* X Y Z [ */ 181920d2c4d2SmrgCASE_GROUND_STATE, 182020d2c4d2SmrgCASE_GROUND_STATE, 182120d2c4d2SmrgCASE_GROUND_STATE, 182220d2c4d2SmrgCASE_GROUND_STATE, 182320d2c4d2Smrg/* \ ] ^ _ */ 182420d2c4d2SmrgCASE_GROUND_STATE, 182520d2c4d2SmrgCASE_GROUND_STATE, 182620d2c4d2SmrgCASE_GROUND_STATE, 182720d2c4d2SmrgCASE_GROUND_STATE, 182820d2c4d2Smrg/* ` a b c */ 182920d2c4d2SmrgCASE_GROUND_STATE, 183020d2c4d2SmrgCASE_GROUND_STATE, 183120d2c4d2SmrgCASE_GROUND_STATE, 183220d2c4d2SmrgCASE_GROUND_STATE, 183320d2c4d2Smrg/* d e f g */ 183420d2c4d2SmrgCASE_GROUND_STATE, 183520d2c4d2SmrgCASE_GROUND_STATE, 183620d2c4d2SmrgCASE_GROUND_STATE, 183720d2c4d2SmrgCASE_GROUND_STATE, 183820d2c4d2Smrg/* h i j k */ 183920d2c4d2SmrgCASE_GROUND_STATE, 184020d2c4d2SmrgCASE_GROUND_STATE, 184120d2c4d2SmrgCASE_GROUND_STATE, 184220d2c4d2SmrgCASE_GROUND_STATE, 184320d2c4d2Smrg/* l m n o */ 184420d2c4d2SmrgCASE_GROUND_STATE, 184520d2c4d2SmrgCASE_GROUND_STATE, 184620d2c4d2SmrgCASE_GROUND_STATE, 184720d2c4d2SmrgCASE_GROUND_STATE, 184820d2c4d2Smrg/* p q r s */ 184920d2c4d2SmrgCASE_GROUND_STATE, 185020d2c4d2SmrgCASE_DECSCUSR, 185120d2c4d2SmrgCASE_GROUND_STATE, 185220d2c4d2SmrgCASE_GROUND_STATE, 185320d2c4d2Smrg/* t u v w */ 185420d2c4d2SmrgCASE_DECSWBV, 185520d2c4d2SmrgCASE_DECSMBV, 185620d2c4d2SmrgCASE_GROUND_STATE, 185720d2c4d2SmrgCASE_GROUND_STATE, 185820d2c4d2Smrg/* x y z { */ 185920d2c4d2SmrgCASE_GROUND_STATE, 186020d2c4d2SmrgCASE_GROUND_STATE, 186120d2c4d2SmrgCASE_GROUND_STATE, 186220d2c4d2SmrgCASE_GROUND_STATE, 186320d2c4d2Smrg/* | } ~ DEL */ 186420d2c4d2SmrgCASE_GROUND_STATE, 186520d2c4d2SmrgCASE_GROUND_STATE, 186620d2c4d2SmrgCASE_GROUND_STATE, 186720d2c4d2SmrgCASE_IGNORE, 186820d2c4d2Smrg/* 0x80 0x81 0x82 0x83 */ 186920d2c4d2SmrgCASE_GROUND_STATE, 187020d2c4d2SmrgCASE_GROUND_STATE, 187120d2c4d2SmrgCASE_GROUND_STATE, 187220d2c4d2SmrgCASE_GROUND_STATE, 187320d2c4d2Smrg/* 0x84 0x85 0x86 0x87 */ 187420d2c4d2SmrgCASE_IND, 187520d2c4d2SmrgCASE_NEL, 187620d2c4d2SmrgCASE_GROUND_STATE, 187720d2c4d2SmrgCASE_GROUND_STATE, 187820d2c4d2Smrg/* 0x88 0x89 0x8a 0x8b */ 187920d2c4d2SmrgCASE_HTS, 188020d2c4d2SmrgCASE_GROUND_STATE, 188120d2c4d2SmrgCASE_GROUND_STATE, 188220d2c4d2SmrgCASE_GROUND_STATE, 188320d2c4d2Smrg/* 0x8c 0x8d 0x8e 0x8f */ 188420d2c4d2SmrgCASE_GROUND_STATE, 188520d2c4d2SmrgCASE_RI, 188620d2c4d2SmrgCASE_SS2, 188720d2c4d2SmrgCASE_SS3, 188820d2c4d2Smrg/* 0x90 0x91 0x92 0x93 */ 188920d2c4d2SmrgCASE_DCS, 189020d2c4d2SmrgCASE_GROUND_STATE, 189120d2c4d2SmrgCASE_GROUND_STATE, 189220d2c4d2SmrgCASE_GROUND_STATE, 189320d2c4d2Smrg/* 0x94 0x95 0x96 0x97 */ 189420d2c4d2SmrgCASE_GROUND_STATE, 189520d2c4d2SmrgCASE_GROUND_STATE, 189620d2c4d2SmrgCASE_SPA, 189720d2c4d2SmrgCASE_EPA, 189820d2c4d2Smrg/* 0x98 0x99 0x9a 0x9b */ 189920d2c4d2SmrgCASE_SOS, 190020d2c4d2SmrgCASE_GROUND_STATE, 190120d2c4d2SmrgCASE_DECID, 190220d2c4d2SmrgCASE_CSI_STATE, 190320d2c4d2Smrg/* 0x9c 0x9d 0x9e 0x9f */ 190420d2c4d2SmrgCASE_ST, 190520d2c4d2SmrgCASE_OSC, 190620d2c4d2SmrgCASE_PM, 190720d2c4d2SmrgCASE_APC, 190820d2c4d2Smrg/* nobreakspace exclamdown cent sterling */ 190920d2c4d2SmrgCASE_CSI_IGNORE, 191020d2c4d2SmrgCASE_CSI_IGNORE, 191120d2c4d2SmrgCASE_CSI_IGNORE, 191220d2c4d2SmrgCASE_CSI_IGNORE, 191320d2c4d2Smrg/* currency yen brokenbar section */ 191420d2c4d2SmrgCASE_CSI_IGNORE, 191520d2c4d2SmrgCASE_CSI_IGNORE, 191620d2c4d2SmrgCASE_CSI_IGNORE, 191720d2c4d2SmrgCASE_CSI_IGNORE, 191820d2c4d2Smrg/* diaeresis copyright ordfeminine guillemotleft */ 191920d2c4d2SmrgCASE_CSI_IGNORE, 192020d2c4d2SmrgCASE_CSI_IGNORE, 192120d2c4d2SmrgCASE_CSI_IGNORE, 192220d2c4d2SmrgCASE_CSI_IGNORE, 192320d2c4d2Smrg/* notsign hyphen registered macron */ 192420d2c4d2SmrgCASE_CSI_IGNORE, 192520d2c4d2SmrgCASE_CSI_IGNORE, 192620d2c4d2SmrgCASE_CSI_IGNORE, 192720d2c4d2SmrgCASE_CSI_IGNORE, 192820d2c4d2Smrg/* degree plusminus twosuperior threesuperior */ 192920d2c4d2SmrgCASE_CSI_IGNORE, 193020d2c4d2SmrgCASE_CSI_IGNORE, 193120d2c4d2SmrgCASE_CSI_IGNORE, 193220d2c4d2SmrgCASE_CSI_IGNORE, 193320d2c4d2Smrg/* acute mu paragraph periodcentered */ 193420d2c4d2SmrgCASE_CSI_IGNORE, 193520d2c4d2SmrgCASE_CSI_IGNORE, 193620d2c4d2SmrgCASE_CSI_IGNORE, 193720d2c4d2SmrgCASE_CSI_IGNORE, 193820d2c4d2Smrg/* cedilla onesuperior masculine guillemotright */ 193920d2c4d2SmrgCASE_CSI_IGNORE, 194020d2c4d2SmrgCASE_CSI_IGNORE, 194120d2c4d2SmrgCASE_CSI_IGNORE, 194220d2c4d2SmrgCASE_CSI_IGNORE, 194320d2c4d2Smrg/* onequarter onehalf threequarters questiondown */ 194420d2c4d2SmrgCASE_CSI_IGNORE, 194520d2c4d2SmrgCASE_CSI_IGNORE, 194620d2c4d2SmrgCASE_CSI_IGNORE, 194720d2c4d2SmrgCASE_CSI_IGNORE, 194820d2c4d2Smrg/* Agrave Aacute Acircumflex Atilde */ 194920d2c4d2SmrgCASE_GROUND_STATE, 195020d2c4d2SmrgCASE_GROUND_STATE, 195120d2c4d2SmrgCASE_GROUND_STATE, 195220d2c4d2SmrgCASE_GROUND_STATE, 195320d2c4d2Smrg/* Adiaeresis Aring AE Ccedilla */ 195420d2c4d2SmrgCASE_GROUND_STATE, 195520d2c4d2SmrgCASE_GROUND_STATE, 195620d2c4d2SmrgCASE_GROUND_STATE, 195720d2c4d2SmrgCASE_GROUND_STATE, 195820d2c4d2Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 195920d2c4d2SmrgCASE_GROUND_STATE, 196020d2c4d2SmrgCASE_GROUND_STATE, 196120d2c4d2SmrgCASE_GROUND_STATE, 196220d2c4d2SmrgCASE_GROUND_STATE, 196320d2c4d2Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 196420d2c4d2SmrgCASE_GROUND_STATE, 196520d2c4d2SmrgCASE_GROUND_STATE, 196620d2c4d2SmrgCASE_GROUND_STATE, 196720d2c4d2SmrgCASE_GROUND_STATE, 196820d2c4d2Smrg/* Eth Ntilde Ograve Oacute */ 196920d2c4d2SmrgCASE_GROUND_STATE, 197020d2c4d2SmrgCASE_GROUND_STATE, 197120d2c4d2SmrgCASE_GROUND_STATE, 197220d2c4d2SmrgCASE_GROUND_STATE, 197320d2c4d2Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 197420d2c4d2SmrgCASE_GROUND_STATE, 197520d2c4d2SmrgCASE_GROUND_STATE, 197620d2c4d2SmrgCASE_GROUND_STATE, 197720d2c4d2SmrgCASE_GROUND_STATE, 197820d2c4d2Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 197920d2c4d2SmrgCASE_GROUND_STATE, 198020d2c4d2SmrgCASE_GROUND_STATE, 198120d2c4d2SmrgCASE_GROUND_STATE, 198220d2c4d2SmrgCASE_GROUND_STATE, 198320d2c4d2Smrg/* Udiaeresis Yacute Thorn ssharp */ 198420d2c4d2SmrgCASE_GROUND_STATE, 198520d2c4d2SmrgCASE_GROUND_STATE, 198620d2c4d2SmrgCASE_GROUND_STATE, 198720d2c4d2SmrgCASE_GROUND_STATE, 198820d2c4d2Smrg/* agrave aacute acircumflex atilde */ 198920d2c4d2SmrgCASE_GROUND_STATE, 199020d2c4d2SmrgCASE_GROUND_STATE, 199120d2c4d2SmrgCASE_GROUND_STATE, 199220d2c4d2SmrgCASE_GROUND_STATE, 199320d2c4d2Smrg/* adiaeresis aring ae ccedilla */ 199420d2c4d2SmrgCASE_GROUND_STATE, 199520d2c4d2SmrgCASE_GROUND_STATE, 199620d2c4d2SmrgCASE_GROUND_STATE, 199720d2c4d2SmrgCASE_GROUND_STATE, 199820d2c4d2Smrg/* egrave eacute ecircumflex ediaeresis */ 199920d2c4d2SmrgCASE_GROUND_STATE, 200020d2c4d2SmrgCASE_GROUND_STATE, 200120d2c4d2SmrgCASE_GROUND_STATE, 200220d2c4d2SmrgCASE_GROUND_STATE, 200320d2c4d2Smrg/* igrave iacute icircumflex idiaeresis */ 200420d2c4d2SmrgCASE_GROUND_STATE, 200520d2c4d2SmrgCASE_GROUND_STATE, 200620d2c4d2SmrgCASE_GROUND_STATE, 200720d2c4d2SmrgCASE_GROUND_STATE, 200820d2c4d2Smrg/* eth ntilde ograve oacute */ 200920d2c4d2SmrgCASE_GROUND_STATE, 201020d2c4d2SmrgCASE_DECSCUSR, 201120d2c4d2SmrgCASE_GROUND_STATE, 201220d2c4d2SmrgCASE_GROUND_STATE, 201320d2c4d2Smrg/* ocircumflex otilde odiaeresis division */ 201420d2c4d2SmrgCASE_DECSWBV, 201520d2c4d2SmrgCASE_DECSMBV, 201620d2c4d2SmrgCASE_GROUND_STATE, 201720d2c4d2SmrgCASE_GROUND_STATE, 201820d2c4d2Smrg/* oslash ugrave uacute ucircumflex */ 201920d2c4d2SmrgCASE_GROUND_STATE, 202020d2c4d2SmrgCASE_GROUND_STATE, 202120d2c4d2SmrgCASE_GROUND_STATE, 202220d2c4d2SmrgCASE_GROUND_STATE, 202320d2c4d2Smrg/* udiaeresis yacute thorn ydiaeresis */ 202420d2c4d2SmrgCASE_GROUND_STATE, 202520d2c4d2SmrgCASE_GROUND_STATE, 202620d2c4d2SmrgCASE_GROUND_STATE, 202720d2c4d2SmrgCASE_IGNORE, 202820d2c4d2Smrg}; 202920d2c4d2Smrg#endif 203020d2c4d2Smrg 2031d522f475Smrg#if OPT_DEC_LOCATOR 2032d522f475SmrgConst PARSE_T csi_tick_table[] = /* CSI ... ' */ 2033d522f475Smrg{ 2034d522f475Smrg/* NUL SOH STX ETX */ 2035d522f475SmrgCASE_IGNORE, 2036d522f475SmrgCASE_IGNORE, 2037d522f475SmrgCASE_IGNORE, 2038d522f475SmrgCASE_IGNORE, 2039d522f475Smrg/* EOT ENQ ACK BEL */ 2040d522f475SmrgCASE_IGNORE, 2041d522f475SmrgCASE_ENQ, 2042d522f475SmrgCASE_IGNORE, 2043d522f475SmrgCASE_BELL, 2044d522f475Smrg/* BS HT NL VT */ 2045d522f475SmrgCASE_BS, 2046d522f475SmrgCASE_TAB, 2047d522f475SmrgCASE_VMOT, 2048d522f475SmrgCASE_VMOT, 2049d522f475Smrg/* NP CR SO SI */ 2050d522f475SmrgCASE_VMOT, 2051d522f475SmrgCASE_CR, 2052d522f475SmrgCASE_SO, 2053d522f475SmrgCASE_SI, 2054d522f475Smrg/* DLE DC1 DC2 DC3 */ 2055d522f475SmrgCASE_IGNORE, 2056d522f475SmrgCASE_IGNORE, 2057d522f475SmrgCASE_IGNORE, 2058d522f475SmrgCASE_IGNORE, 2059d522f475Smrg/* DC4 NAK SYN ETB */ 2060d522f475SmrgCASE_IGNORE, 2061d522f475SmrgCASE_IGNORE, 2062d522f475SmrgCASE_IGNORE, 2063d522f475SmrgCASE_IGNORE, 2064d522f475Smrg/* CAN EM SUB ESC */ 2065d522f475SmrgCASE_GROUND_STATE, 2066d522f475SmrgCASE_IGNORE, 2067d522f475SmrgCASE_GROUND_STATE, 2068d522f475SmrgCASE_ESC, 2069d522f475Smrg/* FS GS RS US */ 2070d522f475SmrgCASE_IGNORE, 2071d522f475SmrgCASE_IGNORE, 2072d522f475SmrgCASE_IGNORE, 2073d522f475SmrgCASE_IGNORE, 2074d522f475Smrg/* SP ! " # */ 2075d522f475SmrgCASE_CSI_IGNORE, 2076d522f475SmrgCASE_CSI_IGNORE, 2077d522f475SmrgCASE_CSI_IGNORE, 2078d522f475SmrgCASE_CSI_IGNORE, 2079d522f475Smrg/* $ % & ' */ 2080d522f475SmrgCASE_CSI_IGNORE, 2081d522f475SmrgCASE_CSI_IGNORE, 2082d522f475SmrgCASE_CSI_IGNORE, 2083d522f475SmrgCASE_CSI_IGNORE, 2084d522f475Smrg/* ( ) * + */ 2085d522f475SmrgCASE_CSI_IGNORE, 2086d522f475SmrgCASE_CSI_IGNORE, 2087d522f475SmrgCASE_CSI_IGNORE, 2088d522f475SmrgCASE_CSI_IGNORE, 2089d522f475Smrg/* , - . / */ 2090d522f475SmrgCASE_CSI_IGNORE, 2091d522f475SmrgCASE_CSI_IGNORE, 2092d522f475SmrgCASE_CSI_IGNORE, 2093d522f475SmrgCASE_CSI_IGNORE, 2094d522f475Smrg/* 0 1 2 3 */ 2095d522f475SmrgCASE_CSI_IGNORE, 2096d522f475SmrgCASE_CSI_IGNORE, 2097d522f475SmrgCASE_CSI_IGNORE, 2098d522f475SmrgCASE_CSI_IGNORE, 2099d522f475Smrg/* 4 5 6 7 */ 2100d522f475SmrgCASE_CSI_IGNORE, 2101d522f475SmrgCASE_CSI_IGNORE, 2102d522f475SmrgCASE_CSI_IGNORE, 2103d522f475SmrgCASE_CSI_IGNORE, 2104d522f475Smrg/* 8 9 : ; */ 2105d522f475SmrgCASE_CSI_IGNORE, 2106d522f475SmrgCASE_CSI_IGNORE, 2107d522f475SmrgCASE_CSI_IGNORE, 2108d522f475SmrgCASE_CSI_IGNORE, 2109d522f475Smrg/* < = > ? */ 2110d522f475SmrgCASE_CSI_IGNORE, 2111d522f475SmrgCASE_CSI_IGNORE, 2112d522f475SmrgCASE_CSI_IGNORE, 2113d522f475SmrgCASE_CSI_IGNORE, 2114d522f475Smrg/* @ A B C */ 2115d522f475SmrgCASE_GROUND_STATE, 2116d522f475SmrgCASE_GROUND_STATE, 2117d522f475SmrgCASE_GROUND_STATE, 2118d522f475SmrgCASE_GROUND_STATE, 2119d522f475Smrg/* D E F G */ 2120d522f475SmrgCASE_GROUND_STATE, 2121d522f475SmrgCASE_GROUND_STATE, 2122d522f475SmrgCASE_GROUND_STATE, 2123d522f475SmrgCASE_GROUND_STATE, 2124d522f475Smrg/* H I J K */ 2125d522f475SmrgCASE_GROUND_STATE, 2126d522f475SmrgCASE_GROUND_STATE, 2127d522f475SmrgCASE_GROUND_STATE, 2128d522f475SmrgCASE_GROUND_STATE, 2129d522f475Smrg/* L M N O */ 2130d522f475SmrgCASE_GROUND_STATE, 2131d522f475SmrgCASE_GROUND_STATE, 2132d522f475SmrgCASE_GROUND_STATE, 2133d522f475SmrgCASE_GROUND_STATE, 2134d522f475Smrg/* P Q R S */ 2135d522f475SmrgCASE_GROUND_STATE, 2136d522f475SmrgCASE_GROUND_STATE, 2137d522f475SmrgCASE_GROUND_STATE, 2138d522f475SmrgCASE_GROUND_STATE, 2139d522f475Smrg/* T U V W */ 2140d522f475SmrgCASE_GROUND_STATE, 2141d522f475SmrgCASE_GROUND_STATE, 2142d522f475SmrgCASE_GROUND_STATE, 2143d522f475SmrgCASE_GROUND_STATE, 2144d522f475Smrg/* X Y Z [ */ 2145d522f475SmrgCASE_GROUND_STATE, 2146d522f475SmrgCASE_GROUND_STATE, 2147d522f475SmrgCASE_GROUND_STATE, 2148d522f475SmrgCASE_GROUND_STATE, 2149d522f475Smrg/* \ ] ^ _ */ 2150d522f475SmrgCASE_GROUND_STATE, 2151d522f475SmrgCASE_GROUND_STATE, 2152d522f475SmrgCASE_GROUND_STATE, 2153d522f475SmrgCASE_GROUND_STATE, 2154d522f475Smrg/* ` a b c */ 2155d522f475SmrgCASE_GROUND_STATE, 2156d522f475SmrgCASE_GROUND_STATE, 2157d522f475SmrgCASE_GROUND_STATE, 2158d522f475SmrgCASE_GROUND_STATE, 2159d522f475Smrg/* d e f g */ 2160d522f475SmrgCASE_GROUND_STATE, 2161d522f475SmrgCASE_GROUND_STATE, 2162d522f475SmrgCASE_GROUND_STATE, 2163d522f475SmrgCASE_GROUND_STATE, 2164d522f475Smrg/* h i j k */ 2165d522f475SmrgCASE_GROUND_STATE, 2166d522f475SmrgCASE_GROUND_STATE, 2167d522f475SmrgCASE_GROUND_STATE, 2168d522f475SmrgCASE_GROUND_STATE, 2169d522f475Smrg/* l m n o */ 2170d522f475SmrgCASE_GROUND_STATE, 2171d522f475SmrgCASE_GROUND_STATE, 2172d522f475SmrgCASE_GROUND_STATE, 2173d522f475SmrgCASE_GROUND_STATE, 2174d522f475Smrg/* p q r s */ 2175d522f475SmrgCASE_GROUND_STATE, 2176d522f475SmrgCASE_GROUND_STATE, 2177d522f475SmrgCASE_GROUND_STATE, 2178d522f475SmrgCASE_GROUND_STATE, 2179d522f475Smrg/* t u v w */ 2180d522f475SmrgCASE_GROUND_STATE, 2181d522f475SmrgCASE_GROUND_STATE, 2182d522f475SmrgCASE_GROUND_STATE, 2183d522f475SmrgCASE_DECEFR, 2184d522f475Smrg/* x y z { */ 2185d522f475SmrgCASE_GROUND_STATE, 2186d522f475SmrgCASE_GROUND_STATE, 2187d522f475SmrgCASE_DECELR, 2188d522f475SmrgCASE_DECSLE, 2189d522f475Smrg/* | } ~ DEL */ 2190d522f475SmrgCASE_DECRQLP, 2191d522f475SmrgCASE_GROUND_STATE, 2192d522f475SmrgCASE_GROUND_STATE, 2193d522f475SmrgCASE_IGNORE, 2194d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 2195d522f475SmrgCASE_GROUND_STATE, 2196d522f475SmrgCASE_GROUND_STATE, 2197d522f475SmrgCASE_GROUND_STATE, 2198d522f475SmrgCASE_GROUND_STATE, 2199d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 2200d522f475SmrgCASE_IND, 2201d522f475SmrgCASE_NEL, 2202d522f475SmrgCASE_GROUND_STATE, 2203d522f475SmrgCASE_GROUND_STATE, 2204d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 2205d522f475SmrgCASE_HTS, 2206d522f475SmrgCASE_GROUND_STATE, 2207d522f475SmrgCASE_GROUND_STATE, 2208d522f475SmrgCASE_GROUND_STATE, 2209d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 2210d522f475SmrgCASE_GROUND_STATE, 2211d522f475SmrgCASE_RI, 2212d522f475SmrgCASE_SS2, 2213d522f475SmrgCASE_SS3, 2214d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 2215d522f475SmrgCASE_DCS, 2216d522f475SmrgCASE_GROUND_STATE, 2217d522f475SmrgCASE_GROUND_STATE, 2218d522f475SmrgCASE_GROUND_STATE, 2219d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 2220d522f475SmrgCASE_GROUND_STATE, 2221d522f475SmrgCASE_GROUND_STATE, 2222d522f475SmrgCASE_SPA, 2223d522f475SmrgCASE_EPA, 2224d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 2225d522f475SmrgCASE_SOS, 2226d522f475SmrgCASE_GROUND_STATE, 2227d522f475SmrgCASE_DECID, 2228d522f475SmrgCASE_CSI_STATE, 2229d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 2230d522f475SmrgCASE_ST, 2231d522f475SmrgCASE_OSC, 2232d522f475SmrgCASE_PM, 2233d522f475SmrgCASE_APC, 2234d522f475Smrg/* nobreakspace exclamdown cent sterling */ 2235d522f475SmrgCASE_CSI_IGNORE, 2236d522f475SmrgCASE_CSI_IGNORE, 2237d522f475SmrgCASE_CSI_IGNORE, 2238d522f475SmrgCASE_CSI_IGNORE, 2239d522f475Smrg/* currency yen brokenbar section */ 2240d522f475SmrgCASE_CSI_IGNORE, 2241d522f475SmrgCASE_CSI_IGNORE, 2242d522f475SmrgCASE_CSI_IGNORE, 2243d522f475SmrgCASE_CSI_IGNORE, 2244d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 2245d522f475SmrgCASE_CSI_IGNORE, 2246d522f475SmrgCASE_CSI_IGNORE, 2247d522f475SmrgCASE_CSI_IGNORE, 2248d522f475SmrgCASE_CSI_IGNORE, 2249d522f475Smrg/* notsign hyphen registered macron */ 2250d522f475SmrgCASE_CSI_IGNORE, 2251d522f475SmrgCASE_CSI_IGNORE, 2252d522f475SmrgCASE_CSI_IGNORE, 2253d522f475SmrgCASE_CSI_IGNORE, 2254d522f475Smrg/* degree plusminus twosuperior threesuperior */ 2255d522f475SmrgCASE_CSI_IGNORE, 2256d522f475SmrgCASE_CSI_IGNORE, 2257d522f475SmrgCASE_CSI_IGNORE, 2258d522f475SmrgCASE_CSI_IGNORE, 2259d522f475Smrg/* acute mu paragraph periodcentered */ 2260d522f475SmrgCASE_CSI_IGNORE, 2261d522f475SmrgCASE_CSI_IGNORE, 2262d522f475SmrgCASE_CSI_IGNORE, 2263d522f475SmrgCASE_CSI_IGNORE, 2264d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 2265d522f475SmrgCASE_CSI_IGNORE, 2266d522f475SmrgCASE_CSI_IGNORE, 2267d522f475SmrgCASE_CSI_IGNORE, 2268d522f475SmrgCASE_CSI_IGNORE, 2269d522f475Smrg/* onequarter onehalf threequarters questiondown */ 2270d522f475SmrgCASE_CSI_IGNORE, 2271d522f475SmrgCASE_CSI_IGNORE, 2272d522f475SmrgCASE_CSI_IGNORE, 2273d522f475SmrgCASE_CSI_IGNORE, 2274d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 2275d522f475SmrgCASE_GROUND_STATE, 2276d522f475SmrgCASE_GROUND_STATE, 2277d522f475SmrgCASE_GROUND_STATE, 2278d522f475SmrgCASE_GROUND_STATE, 2279d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 2280d522f475SmrgCASE_GROUND_STATE, 2281d522f475SmrgCASE_GROUND_STATE, 2282d522f475SmrgCASE_GROUND_STATE, 2283d522f475SmrgCASE_GROUND_STATE, 2284d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 2285d522f475SmrgCASE_GROUND_STATE, 2286d522f475SmrgCASE_GROUND_STATE, 2287d522f475SmrgCASE_GROUND_STATE, 2288d522f475SmrgCASE_GROUND_STATE, 2289d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 2290d522f475SmrgCASE_GROUND_STATE, 2291d522f475SmrgCASE_GROUND_STATE, 2292d522f475SmrgCASE_GROUND_STATE, 2293d522f475SmrgCASE_GROUND_STATE, 2294d522f475Smrg/* Eth Ntilde Ograve Oacute */ 2295d522f475SmrgCASE_GROUND_STATE, 2296d522f475SmrgCASE_GROUND_STATE, 2297d522f475SmrgCASE_GROUND_STATE, 2298d522f475SmrgCASE_GROUND_STATE, 2299d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 2300d522f475SmrgCASE_GROUND_STATE, 2301d522f475SmrgCASE_GROUND_STATE, 2302d522f475SmrgCASE_GROUND_STATE, 2303d522f475SmrgCASE_GROUND_STATE, 2304d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 2305d522f475SmrgCASE_GROUND_STATE, 2306d522f475SmrgCASE_GROUND_STATE, 2307d522f475SmrgCASE_GROUND_STATE, 2308d522f475SmrgCASE_GROUND_STATE, 2309d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 2310d522f475SmrgCASE_GROUND_STATE, 2311d522f475SmrgCASE_GROUND_STATE, 2312d522f475SmrgCASE_GROUND_STATE, 2313d522f475SmrgCASE_GROUND_STATE, 2314d522f475Smrg/* agrave aacute acircumflex atilde */ 2315d522f475SmrgCASE_GROUND_STATE, 2316d522f475SmrgCASE_GROUND_STATE, 2317d522f475SmrgCASE_GROUND_STATE, 2318d522f475SmrgCASE_GROUND_STATE, 2319d522f475Smrg/* adiaeresis aring ae ccedilla */ 2320d522f475SmrgCASE_GROUND_STATE, 2321d522f475SmrgCASE_GROUND_STATE, 2322d522f475SmrgCASE_GROUND_STATE, 2323d522f475SmrgCASE_GROUND_STATE, 2324d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 2325d522f475SmrgCASE_GROUND_STATE, 2326d522f475SmrgCASE_GROUND_STATE, 2327d522f475SmrgCASE_GROUND_STATE, 2328d522f475SmrgCASE_GROUND_STATE, 2329d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 2330d522f475SmrgCASE_GROUND_STATE, 2331d522f475SmrgCASE_GROUND_STATE, 2332d522f475SmrgCASE_GROUND_STATE, 2333d522f475SmrgCASE_GROUND_STATE, 2334d522f475Smrg/* eth ntilde ograve oacute */ 2335d522f475SmrgCASE_GROUND_STATE, 2336d522f475SmrgCASE_GROUND_STATE, 2337d522f475SmrgCASE_GROUND_STATE, 2338d522f475SmrgCASE_GROUND_STATE, 2339d522f475Smrg/* ocircumflex otilde odiaeresis division */ 2340d522f475SmrgCASE_GROUND_STATE, 2341d522f475SmrgCASE_GROUND_STATE, 2342d522f475SmrgCASE_GROUND_STATE, 2343d522f475SmrgCASE_DECEFR, 2344d522f475Smrg/* oslash ugrave uacute ucircumflex */ 2345d522f475SmrgCASE_GROUND_STATE, 2346d522f475SmrgCASE_GROUND_STATE, 2347d522f475SmrgCASE_DECELR, 2348d522f475SmrgCASE_DECSLE, 2349d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 2350d522f475SmrgCASE_DECRQLP, 2351d522f475SmrgCASE_GROUND_STATE, 2352d522f475SmrgCASE_GROUND_STATE, 2353d522f475SmrgCASE_IGNORE, 2354d522f475Smrg}; 2355d522f475Smrg#endif /* OPT_DEC_LOCATOR */ 2356d522f475Smrg 2357d522f475Smrg#if OPT_DEC_RECTOPS 2358d522f475SmrgConst PARSE_T csi_dollar_table[] = /* CSI ... $ */ 2359d522f475Smrg{ 2360d522f475Smrg/* NUL SOH STX ETX */ 2361d522f475SmrgCASE_IGNORE, 2362d522f475SmrgCASE_IGNORE, 2363d522f475SmrgCASE_IGNORE, 2364d522f475SmrgCASE_IGNORE, 2365d522f475Smrg/* EOT ENQ ACK BEL */ 2366d522f475SmrgCASE_IGNORE, 2367d522f475SmrgCASE_ENQ, 2368d522f475SmrgCASE_IGNORE, 2369d522f475SmrgCASE_BELL, 2370d522f475Smrg/* BS HT NL VT */ 2371d522f475SmrgCASE_BS, 2372d522f475SmrgCASE_TAB, 2373d522f475SmrgCASE_VMOT, 2374d522f475SmrgCASE_VMOT, 2375d522f475Smrg/* NP CR SO SI */ 2376d522f475SmrgCASE_VMOT, 2377d522f475SmrgCASE_CR, 2378d522f475SmrgCASE_SO, 2379d522f475SmrgCASE_SI, 2380d522f475Smrg/* DLE DC1 DC2 DC3 */ 2381d522f475SmrgCASE_IGNORE, 2382d522f475SmrgCASE_IGNORE, 2383d522f475SmrgCASE_IGNORE, 2384d522f475SmrgCASE_IGNORE, 2385d522f475Smrg/* DC4 NAK SYN ETB */ 2386d522f475SmrgCASE_IGNORE, 2387d522f475SmrgCASE_IGNORE, 2388d522f475SmrgCASE_IGNORE, 2389d522f475SmrgCASE_IGNORE, 2390d522f475Smrg/* CAN EM SUB ESC */ 2391d522f475SmrgCASE_GROUND_STATE, 2392d522f475SmrgCASE_IGNORE, 2393d522f475SmrgCASE_GROUND_STATE, 2394d522f475SmrgCASE_ESC, 2395d522f475Smrg/* FS GS RS US */ 2396d522f475SmrgCASE_IGNORE, 2397d522f475SmrgCASE_IGNORE, 2398d522f475SmrgCASE_IGNORE, 2399d522f475SmrgCASE_IGNORE, 2400d522f475Smrg/* SP ! " # */ 2401d522f475SmrgCASE_CSI_IGNORE, 2402d522f475SmrgCASE_CSI_IGNORE, 2403d522f475SmrgCASE_CSI_IGNORE, 2404d522f475SmrgCASE_CSI_IGNORE, 2405d522f475Smrg/* $ % & ' */ 2406d522f475SmrgCASE_CSI_IGNORE, 2407d522f475SmrgCASE_CSI_IGNORE, 2408d522f475SmrgCASE_CSI_IGNORE, 2409d522f475SmrgCASE_CSI_IGNORE, 2410d522f475Smrg/* ( ) * + */ 2411d522f475SmrgCASE_CSI_IGNORE, 2412d522f475SmrgCASE_CSI_IGNORE, 2413d522f475SmrgCASE_CSI_IGNORE, 2414d522f475SmrgCASE_CSI_IGNORE, 2415d522f475Smrg/* , - . / */ 2416d522f475SmrgCASE_CSI_IGNORE, 2417d522f475SmrgCASE_CSI_IGNORE, 2418d522f475SmrgCASE_CSI_IGNORE, 2419d522f475SmrgCASE_CSI_IGNORE, 2420d522f475Smrg/* 0 1 2 3 */ 2421d522f475SmrgCASE_CSI_IGNORE, 2422d522f475SmrgCASE_CSI_IGNORE, 2423d522f475SmrgCASE_CSI_IGNORE, 2424d522f475SmrgCASE_CSI_IGNORE, 2425d522f475Smrg/* 4 5 6 7 */ 2426d522f475SmrgCASE_CSI_IGNORE, 2427d522f475SmrgCASE_CSI_IGNORE, 2428d522f475SmrgCASE_CSI_IGNORE, 2429d522f475SmrgCASE_CSI_IGNORE, 2430d522f475Smrg/* 8 9 : ; */ 2431d522f475SmrgCASE_CSI_IGNORE, 2432d522f475SmrgCASE_CSI_IGNORE, 2433d522f475SmrgCASE_CSI_IGNORE, 2434d522f475SmrgCASE_CSI_IGNORE, 2435d522f475Smrg/* < = > ? */ 2436d522f475SmrgCASE_CSI_IGNORE, 2437d522f475SmrgCASE_CSI_IGNORE, 2438d522f475SmrgCASE_CSI_IGNORE, 2439d522f475SmrgCASE_CSI_IGNORE, 2440d522f475Smrg/* @ A B C */ 2441d522f475SmrgCASE_GROUND_STATE, 2442d522f475SmrgCASE_GROUND_STATE, 2443d522f475SmrgCASE_GROUND_STATE, 2444d522f475SmrgCASE_GROUND_STATE, 2445d522f475Smrg/* D E F G */ 2446d522f475SmrgCASE_GROUND_STATE, 2447d522f475SmrgCASE_GROUND_STATE, 2448d522f475SmrgCASE_GROUND_STATE, 2449d522f475SmrgCASE_GROUND_STATE, 2450d522f475Smrg/* H I J K */ 2451d522f475SmrgCASE_GROUND_STATE, 2452d522f475SmrgCASE_GROUND_STATE, 2453d522f475SmrgCASE_GROUND_STATE, 2454d522f475SmrgCASE_GROUND_STATE, 2455d522f475Smrg/* L M N O */ 2456d522f475SmrgCASE_GROUND_STATE, 2457d522f475SmrgCASE_GROUND_STATE, 2458d522f475SmrgCASE_GROUND_STATE, 2459d522f475SmrgCASE_GROUND_STATE, 2460d522f475Smrg/* P Q R S */ 2461d522f475SmrgCASE_GROUND_STATE, 2462d522f475SmrgCASE_GROUND_STATE, 2463d522f475SmrgCASE_GROUND_STATE, 2464d522f475SmrgCASE_GROUND_STATE, 2465d522f475Smrg/* T U V W */ 2466d522f475SmrgCASE_GROUND_STATE, 2467d522f475SmrgCASE_GROUND_STATE, 2468d522f475SmrgCASE_GROUND_STATE, 2469d522f475SmrgCASE_GROUND_STATE, 2470d522f475Smrg/* X Y Z [ */ 2471d522f475SmrgCASE_GROUND_STATE, 2472d522f475SmrgCASE_GROUND_STATE, 2473d522f475SmrgCASE_GROUND_STATE, 2474d522f475SmrgCASE_GROUND_STATE, 2475d522f475Smrg/* \ ] ^ _ */ 2476d522f475SmrgCASE_GROUND_STATE, 2477d522f475SmrgCASE_GROUND_STATE, 2478d522f475SmrgCASE_GROUND_STATE, 2479d522f475SmrgCASE_GROUND_STATE, 2480d522f475Smrg/* ` a b c */ 2481d522f475SmrgCASE_GROUND_STATE, 2482d522f475SmrgCASE_GROUND_STATE, 2483d522f475SmrgCASE_GROUND_STATE, 2484d522f475SmrgCASE_GROUND_STATE, 2485d522f475Smrg/* d e f g */ 2486d522f475SmrgCASE_GROUND_STATE, 2487d522f475SmrgCASE_GROUND_STATE, 2488d522f475SmrgCASE_GROUND_STATE, 2489d522f475SmrgCASE_GROUND_STATE, 2490d522f475Smrg/* h i j k */ 2491d522f475SmrgCASE_GROUND_STATE, 2492d522f475SmrgCASE_GROUND_STATE, 2493d522f475SmrgCASE_GROUND_STATE, 2494d522f475SmrgCASE_GROUND_STATE, 2495d522f475Smrg/* l m n o */ 2496d522f475SmrgCASE_GROUND_STATE, 2497d522f475SmrgCASE_GROUND_STATE, 2498d522f475SmrgCASE_GROUND_STATE, 2499d522f475SmrgCASE_GROUND_STATE, 2500d522f475Smrg/* p q r s */ 2501d522f475SmrgCASE_GROUND_STATE, 2502d522f475SmrgCASE_GROUND_STATE, 2503d522f475SmrgCASE_DECCARA, 2504d522f475SmrgCASE_GROUND_STATE, 2505d522f475Smrg/* t u v w */ 2506d522f475SmrgCASE_DECRARA, 2507d522f475SmrgCASE_GROUND_STATE, 2508d522f475SmrgCASE_DECCRA, 2509d522f475SmrgCASE_GROUND_STATE, 2510d522f475Smrg/* x y z { */ 2511d522f475SmrgCASE_DECFRA, 2512d522f475SmrgCASE_GROUND_STATE, 2513d522f475SmrgCASE_DECERA, 2514d522f475SmrgCASE_DECSERA, 2515d522f475Smrg/* | } ~ DEL */ 2516d522f475SmrgCASE_GROUND_STATE, 2517d522f475SmrgCASE_GROUND_STATE, 2518d522f475SmrgCASE_GROUND_STATE, 2519d522f475SmrgCASE_IGNORE, 2520d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 2521d522f475SmrgCASE_GROUND_STATE, 2522d522f475SmrgCASE_GROUND_STATE, 2523d522f475SmrgCASE_GROUND_STATE, 2524d522f475SmrgCASE_GROUND_STATE, 2525d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 2526d522f475SmrgCASE_IND, 2527d522f475SmrgCASE_NEL, 2528d522f475SmrgCASE_GROUND_STATE, 2529d522f475SmrgCASE_GROUND_STATE, 2530d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 2531d522f475SmrgCASE_HTS, 2532d522f475SmrgCASE_GROUND_STATE, 2533d522f475SmrgCASE_GROUND_STATE, 2534d522f475SmrgCASE_GROUND_STATE, 2535d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 2536d522f475SmrgCASE_GROUND_STATE, 2537d522f475SmrgCASE_RI, 2538d522f475SmrgCASE_SS2, 2539d522f475SmrgCASE_SS3, 2540d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 2541d522f475SmrgCASE_DCS, 2542d522f475SmrgCASE_GROUND_STATE, 2543d522f475SmrgCASE_GROUND_STATE, 2544d522f475SmrgCASE_GROUND_STATE, 2545d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 2546d522f475SmrgCASE_GROUND_STATE, 2547d522f475SmrgCASE_GROUND_STATE, 2548d522f475SmrgCASE_SPA, 2549d522f475SmrgCASE_EPA, 2550d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 2551d522f475SmrgCASE_SOS, 2552d522f475SmrgCASE_GROUND_STATE, 2553d522f475SmrgCASE_DECID, 2554d522f475SmrgCASE_CSI_STATE, 2555d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 2556d522f475SmrgCASE_ST, 2557d522f475SmrgCASE_OSC, 2558d522f475SmrgCASE_PM, 2559d522f475SmrgCASE_APC, 2560d522f475Smrg/* nobreakspace exclamdown cent sterling */ 2561d522f475SmrgCASE_CSI_IGNORE, 2562d522f475SmrgCASE_CSI_IGNORE, 2563d522f475SmrgCASE_CSI_IGNORE, 2564d522f475SmrgCASE_CSI_IGNORE, 2565d522f475Smrg/* currency yen brokenbar section */ 2566d522f475SmrgCASE_CSI_IGNORE, 2567d522f475SmrgCASE_CSI_IGNORE, 2568d522f475SmrgCASE_CSI_IGNORE, 2569d522f475SmrgCASE_CSI_IGNORE, 2570d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 2571d522f475SmrgCASE_CSI_IGNORE, 2572d522f475SmrgCASE_CSI_IGNORE, 2573d522f475SmrgCASE_CSI_IGNORE, 2574d522f475SmrgCASE_CSI_IGNORE, 2575d522f475Smrg/* notsign hyphen registered macron */ 2576d522f475SmrgCASE_CSI_IGNORE, 2577d522f475SmrgCASE_CSI_IGNORE, 2578d522f475SmrgCASE_CSI_IGNORE, 2579d522f475SmrgCASE_CSI_IGNORE, 2580d522f475Smrg/* degree plusminus twosuperior threesuperior */ 2581d522f475SmrgCASE_CSI_IGNORE, 2582d522f475SmrgCASE_CSI_IGNORE, 2583d522f475SmrgCASE_CSI_IGNORE, 2584d522f475SmrgCASE_CSI_IGNORE, 2585d522f475Smrg/* acute mu paragraph periodcentered */ 2586d522f475SmrgCASE_CSI_IGNORE, 2587d522f475SmrgCASE_CSI_IGNORE, 2588d522f475SmrgCASE_CSI_IGNORE, 2589d522f475SmrgCASE_CSI_IGNORE, 2590d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 2591d522f475SmrgCASE_CSI_IGNORE, 2592d522f475SmrgCASE_CSI_IGNORE, 2593d522f475SmrgCASE_CSI_IGNORE, 2594d522f475SmrgCASE_CSI_IGNORE, 2595d522f475Smrg/* onequarter onehalf threequarters questiondown */ 2596d522f475SmrgCASE_CSI_IGNORE, 2597d522f475SmrgCASE_CSI_IGNORE, 2598d522f475SmrgCASE_CSI_IGNORE, 2599d522f475SmrgCASE_CSI_IGNORE, 2600d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 2601d522f475SmrgCASE_GROUND_STATE, 2602d522f475SmrgCASE_GROUND_STATE, 2603d522f475SmrgCASE_GROUND_STATE, 2604d522f475SmrgCASE_GROUND_STATE, 2605d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 2606d522f475SmrgCASE_GROUND_STATE, 2607d522f475SmrgCASE_GROUND_STATE, 2608d522f475SmrgCASE_GROUND_STATE, 2609d522f475SmrgCASE_GROUND_STATE, 2610d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 2611d522f475SmrgCASE_GROUND_STATE, 2612d522f475SmrgCASE_GROUND_STATE, 2613d522f475SmrgCASE_GROUND_STATE, 2614d522f475SmrgCASE_GROUND_STATE, 2615d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 2616d522f475SmrgCASE_GROUND_STATE, 2617d522f475SmrgCASE_GROUND_STATE, 2618d522f475SmrgCASE_GROUND_STATE, 2619d522f475SmrgCASE_GROUND_STATE, 2620d522f475Smrg/* Eth Ntilde Ograve Oacute */ 2621d522f475SmrgCASE_GROUND_STATE, 2622d522f475SmrgCASE_GROUND_STATE, 2623d522f475SmrgCASE_GROUND_STATE, 2624d522f475SmrgCASE_GROUND_STATE, 2625d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 2626d522f475SmrgCASE_GROUND_STATE, 2627d522f475SmrgCASE_GROUND_STATE, 2628d522f475SmrgCASE_GROUND_STATE, 2629d522f475SmrgCASE_GROUND_STATE, 2630d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 2631d522f475SmrgCASE_GROUND_STATE, 2632d522f475SmrgCASE_GROUND_STATE, 2633d522f475SmrgCASE_GROUND_STATE, 2634d522f475SmrgCASE_GROUND_STATE, 2635d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 2636d522f475SmrgCASE_GROUND_STATE, 2637d522f475SmrgCASE_GROUND_STATE, 2638d522f475SmrgCASE_GROUND_STATE, 2639d522f475SmrgCASE_GROUND_STATE, 2640d522f475Smrg/* agrave aacute acircumflex atilde */ 2641d522f475SmrgCASE_GROUND_STATE, 2642d522f475SmrgCASE_GROUND_STATE, 2643d522f475SmrgCASE_GROUND_STATE, 2644d522f475SmrgCASE_GROUND_STATE, 2645d522f475Smrg/* adiaeresis aring ae ccedilla */ 2646d522f475SmrgCASE_GROUND_STATE, 2647d522f475SmrgCASE_GROUND_STATE, 2648d522f475SmrgCASE_GROUND_STATE, 2649d522f475SmrgCASE_GROUND_STATE, 2650d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 2651d522f475SmrgCASE_GROUND_STATE, 2652d522f475SmrgCASE_GROUND_STATE, 2653d522f475SmrgCASE_GROUND_STATE, 2654d522f475SmrgCASE_GROUND_STATE, 2655d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 2656d522f475SmrgCASE_GROUND_STATE, 2657d522f475SmrgCASE_GROUND_STATE, 2658d522f475SmrgCASE_GROUND_STATE, 2659d522f475SmrgCASE_GROUND_STATE, 2660d522f475Smrg/* eth ntilde ograve oacute */ 2661d522f475SmrgCASE_GROUND_STATE, 2662d522f475SmrgCASE_GROUND_STATE, 2663d522f475SmrgCASE_DECCARA, 2664d522f475SmrgCASE_GROUND_STATE, 2665d522f475Smrg/* ocircumflex otilde odiaeresis division */ 2666d522f475SmrgCASE_DECRARA, 2667d522f475SmrgCASE_GROUND_STATE, 2668d522f475SmrgCASE_DECCRA, 2669d522f475SmrgCASE_GROUND_STATE, 2670d522f475Smrg/* oslash ugrave uacute ucircumflex */ 2671d522f475SmrgCASE_DECFRA, 2672d522f475SmrgCASE_GROUND_STATE, 2673d522f475SmrgCASE_DECERA, 2674d522f475SmrgCASE_DECSERA, 2675d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 2676d522f475SmrgCASE_GROUND_STATE, 2677d522f475SmrgCASE_GROUND_STATE, 2678d522f475SmrgCASE_GROUND_STATE, 2679d522f475SmrgCASE_GROUND_STATE, 2680d522f475Smrg}; 2681d522f475Smrg 2682d522f475SmrgConst PARSE_T csi_star_table[] = /* CSI ... * */ 2683d522f475Smrg{ 2684d522f475Smrg/* NUL SOH STX ETX */ 2685d522f475SmrgCASE_IGNORE, 2686d522f475SmrgCASE_IGNORE, 2687d522f475SmrgCASE_IGNORE, 2688d522f475SmrgCASE_IGNORE, 2689d522f475Smrg/* EOT ENQ ACK BEL */ 2690d522f475SmrgCASE_IGNORE, 2691d522f475SmrgCASE_ENQ, 2692d522f475SmrgCASE_IGNORE, 2693d522f475SmrgCASE_BELL, 2694d522f475Smrg/* BS HT NL VT */ 2695d522f475SmrgCASE_BS, 2696d522f475SmrgCASE_TAB, 2697d522f475SmrgCASE_VMOT, 2698d522f475SmrgCASE_VMOT, 2699d522f475Smrg/* NP CR SO SI */ 2700d522f475SmrgCASE_VMOT, 2701d522f475SmrgCASE_CR, 2702d522f475SmrgCASE_SO, 2703d522f475SmrgCASE_SI, 2704d522f475Smrg/* DLE DC1 DC2 DC3 */ 2705d522f475SmrgCASE_IGNORE, 2706d522f475SmrgCASE_IGNORE, 2707d522f475SmrgCASE_IGNORE, 2708d522f475SmrgCASE_IGNORE, 2709d522f475Smrg/* DC4 NAK SYN ETB */ 2710d522f475SmrgCASE_IGNORE, 2711d522f475SmrgCASE_IGNORE, 2712d522f475SmrgCASE_IGNORE, 2713d522f475SmrgCASE_IGNORE, 2714d522f475Smrg/* CAN EM SUB ESC */ 2715d522f475SmrgCASE_GROUND_STATE, 2716d522f475SmrgCASE_IGNORE, 2717d522f475SmrgCASE_GROUND_STATE, 2718d522f475SmrgCASE_ESC, 2719d522f475Smrg/* FS GS RS US */ 2720d522f475SmrgCASE_IGNORE, 2721d522f475SmrgCASE_IGNORE, 2722d522f475SmrgCASE_IGNORE, 2723d522f475SmrgCASE_IGNORE, 2724d522f475Smrg/* SP ! " # */ 2725d522f475SmrgCASE_CSI_IGNORE, 2726d522f475SmrgCASE_CSI_IGNORE, 2727d522f475SmrgCASE_CSI_IGNORE, 2728d522f475SmrgCASE_CSI_IGNORE, 2729d522f475Smrg/* $ % & ' */ 2730d522f475SmrgCASE_CSI_IGNORE, 2731d522f475SmrgCASE_CSI_IGNORE, 2732d522f475SmrgCASE_CSI_IGNORE, 2733d522f475SmrgCASE_CSI_IGNORE, 2734d522f475Smrg/* ( ) * + */ 2735d522f475SmrgCASE_CSI_IGNORE, 2736d522f475SmrgCASE_CSI_IGNORE, 2737d522f475SmrgCASE_CSI_IGNORE, 2738d522f475SmrgCASE_CSI_IGNORE, 2739d522f475Smrg/* , - . / */ 2740d522f475SmrgCASE_CSI_IGNORE, 2741d522f475SmrgCASE_CSI_IGNORE, 2742d522f475SmrgCASE_CSI_IGNORE, 2743d522f475SmrgCASE_CSI_IGNORE, 2744d522f475Smrg/* 0 1 2 3 */ 2745d522f475SmrgCASE_CSI_IGNORE, 2746d522f475SmrgCASE_CSI_IGNORE, 2747d522f475SmrgCASE_CSI_IGNORE, 2748d522f475SmrgCASE_CSI_IGNORE, 2749d522f475Smrg/* 4 5 6 7 */ 2750d522f475SmrgCASE_CSI_IGNORE, 2751d522f475SmrgCASE_CSI_IGNORE, 2752d522f475SmrgCASE_CSI_IGNORE, 2753d522f475SmrgCASE_CSI_IGNORE, 2754d522f475Smrg/* 8 9 : ; */ 2755d522f475SmrgCASE_CSI_IGNORE, 2756d522f475SmrgCASE_CSI_IGNORE, 2757d522f475SmrgCASE_CSI_IGNORE, 2758d522f475SmrgCASE_CSI_IGNORE, 2759d522f475Smrg/* < = > ? */ 2760d522f475SmrgCASE_CSI_IGNORE, 2761d522f475SmrgCASE_CSI_IGNORE, 2762d522f475SmrgCASE_CSI_IGNORE, 2763d522f475SmrgCASE_CSI_IGNORE, 2764d522f475Smrg/* @ A B C */ 2765d522f475SmrgCASE_GROUND_STATE, 2766d522f475SmrgCASE_GROUND_STATE, 2767d522f475SmrgCASE_GROUND_STATE, 2768d522f475SmrgCASE_GROUND_STATE, 2769d522f475Smrg/* D E F G */ 2770d522f475SmrgCASE_GROUND_STATE, 2771d522f475SmrgCASE_GROUND_STATE, 2772d522f475SmrgCASE_GROUND_STATE, 2773d522f475SmrgCASE_GROUND_STATE, 2774d522f475Smrg/* H I J K */ 2775d522f475SmrgCASE_GROUND_STATE, 2776d522f475SmrgCASE_GROUND_STATE, 2777d522f475SmrgCASE_GROUND_STATE, 2778d522f475SmrgCASE_GROUND_STATE, 2779d522f475Smrg/* L M N O */ 2780d522f475SmrgCASE_GROUND_STATE, 2781d522f475SmrgCASE_GROUND_STATE, 2782d522f475SmrgCASE_GROUND_STATE, 2783d522f475SmrgCASE_GROUND_STATE, 2784d522f475Smrg/* P Q R S */ 2785d522f475SmrgCASE_GROUND_STATE, 2786d522f475SmrgCASE_GROUND_STATE, 2787d522f475SmrgCASE_GROUND_STATE, 2788d522f475SmrgCASE_GROUND_STATE, 2789d522f475Smrg/* T U V W */ 2790d522f475SmrgCASE_GROUND_STATE, 2791d522f475SmrgCASE_GROUND_STATE, 2792d522f475SmrgCASE_GROUND_STATE, 2793d522f475SmrgCASE_GROUND_STATE, 2794d522f475Smrg/* X Y Z [ */ 2795d522f475SmrgCASE_GROUND_STATE, 2796d522f475SmrgCASE_GROUND_STATE, 2797d522f475SmrgCASE_GROUND_STATE, 2798d522f475SmrgCASE_GROUND_STATE, 2799d522f475Smrg/* \ ] ^ _ */ 2800d522f475SmrgCASE_GROUND_STATE, 2801d522f475SmrgCASE_GROUND_STATE, 2802d522f475SmrgCASE_GROUND_STATE, 2803d522f475SmrgCASE_GROUND_STATE, 2804d522f475Smrg/* ` a b c */ 2805d522f475SmrgCASE_GROUND_STATE, 2806d522f475SmrgCASE_GROUND_STATE, 2807d522f475SmrgCASE_GROUND_STATE, 2808d522f475SmrgCASE_GROUND_STATE, 2809d522f475Smrg/* d e f g */ 2810d522f475SmrgCASE_GROUND_STATE, 2811d522f475SmrgCASE_GROUND_STATE, 2812d522f475SmrgCASE_GROUND_STATE, 2813d522f475SmrgCASE_GROUND_STATE, 2814d522f475Smrg/* h i j k */ 2815d522f475SmrgCASE_GROUND_STATE, 2816d522f475SmrgCASE_GROUND_STATE, 2817d522f475SmrgCASE_GROUND_STATE, 2818d522f475SmrgCASE_GROUND_STATE, 2819d522f475Smrg/* l m n o */ 2820d522f475SmrgCASE_GROUND_STATE, 2821d522f475SmrgCASE_GROUND_STATE, 2822d522f475SmrgCASE_GROUND_STATE, 2823d522f475SmrgCASE_GROUND_STATE, 2824d522f475Smrg/* p q r s */ 2825d522f475SmrgCASE_GROUND_STATE, 2826d522f475SmrgCASE_GROUND_STATE, 2827d522f475SmrgCASE_GROUND_STATE, 2828d522f475SmrgCASE_GROUND_STATE, 2829d522f475Smrg/* t u v w */ 2830d522f475SmrgCASE_GROUND_STATE, 2831d522f475SmrgCASE_GROUND_STATE, 2832d522f475SmrgCASE_GROUND_STATE, 2833d522f475SmrgCASE_GROUND_STATE, 2834d522f475Smrg/* x y z { */ 2835d522f475SmrgCASE_DECSACE, 2836d522f475SmrgCASE_GROUND_STATE, 2837d522f475SmrgCASE_GROUND_STATE, 2838d522f475SmrgCASE_GROUND_STATE, 2839d522f475Smrg/* | } ~ DEL */ 2840d522f475SmrgCASE_GROUND_STATE, 2841d522f475SmrgCASE_GROUND_STATE, 2842d522f475SmrgCASE_GROUND_STATE, 2843d522f475SmrgCASE_IGNORE, 2844d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 2845d522f475SmrgCASE_GROUND_STATE, 2846d522f475SmrgCASE_GROUND_STATE, 2847d522f475SmrgCASE_GROUND_STATE, 2848d522f475SmrgCASE_GROUND_STATE, 2849d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 2850d522f475SmrgCASE_IND, 2851d522f475SmrgCASE_NEL, 2852d522f475SmrgCASE_GROUND_STATE, 2853d522f475SmrgCASE_GROUND_STATE, 2854d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 2855d522f475SmrgCASE_HTS, 2856d522f475SmrgCASE_GROUND_STATE, 2857d522f475SmrgCASE_GROUND_STATE, 2858d522f475SmrgCASE_GROUND_STATE, 2859d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 2860d522f475SmrgCASE_GROUND_STATE, 2861d522f475SmrgCASE_RI, 2862d522f475SmrgCASE_SS2, 2863d522f475SmrgCASE_SS3, 2864d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 2865d522f475SmrgCASE_DCS, 2866d522f475SmrgCASE_GROUND_STATE, 2867d522f475SmrgCASE_GROUND_STATE, 2868d522f475SmrgCASE_GROUND_STATE, 2869d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 2870d522f475SmrgCASE_GROUND_STATE, 2871d522f475SmrgCASE_GROUND_STATE, 2872d522f475SmrgCASE_SPA, 2873d522f475SmrgCASE_EPA, 2874d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 2875d522f475SmrgCASE_SOS, 2876d522f475SmrgCASE_GROUND_STATE, 2877d522f475SmrgCASE_DECID, 2878d522f475SmrgCASE_CSI_STATE, 2879d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 2880d522f475SmrgCASE_ST, 2881d522f475SmrgCASE_OSC, 2882d522f475SmrgCASE_PM, 2883d522f475SmrgCASE_APC, 2884d522f475Smrg/* nobreakspace exclamdown cent sterling */ 2885d522f475SmrgCASE_CSI_IGNORE, 2886d522f475SmrgCASE_CSI_IGNORE, 2887d522f475SmrgCASE_CSI_IGNORE, 2888d522f475SmrgCASE_CSI_IGNORE, 2889d522f475Smrg/* currency yen brokenbar section */ 2890d522f475SmrgCASE_CSI_IGNORE, 2891d522f475SmrgCASE_CSI_IGNORE, 2892d522f475SmrgCASE_CSI_IGNORE, 2893d522f475SmrgCASE_CSI_IGNORE, 2894d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 2895d522f475SmrgCASE_CSI_IGNORE, 2896d522f475SmrgCASE_CSI_IGNORE, 2897d522f475SmrgCASE_CSI_IGNORE, 2898d522f475SmrgCASE_CSI_IGNORE, 2899d522f475Smrg/* notsign hyphen registered macron */ 2900d522f475SmrgCASE_CSI_IGNORE, 2901d522f475SmrgCASE_CSI_IGNORE, 2902d522f475SmrgCASE_CSI_IGNORE, 2903d522f475SmrgCASE_CSI_IGNORE, 2904d522f475Smrg/* degree plusminus twosuperior threesuperior */ 2905d522f475SmrgCASE_CSI_IGNORE, 2906d522f475SmrgCASE_CSI_IGNORE, 2907d522f475SmrgCASE_CSI_IGNORE, 2908d522f475SmrgCASE_CSI_IGNORE, 2909d522f475Smrg/* acute mu paragraph periodcentered */ 2910d522f475SmrgCASE_CSI_IGNORE, 2911d522f475SmrgCASE_CSI_IGNORE, 2912d522f475SmrgCASE_CSI_IGNORE, 2913d522f475SmrgCASE_CSI_IGNORE, 2914d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 2915d522f475SmrgCASE_CSI_IGNORE, 2916d522f475SmrgCASE_CSI_IGNORE, 2917d522f475SmrgCASE_CSI_IGNORE, 2918d522f475SmrgCASE_CSI_IGNORE, 2919d522f475Smrg/* onequarter onehalf threequarters questiondown */ 2920d522f475SmrgCASE_CSI_IGNORE, 2921d522f475SmrgCASE_CSI_IGNORE, 2922d522f475SmrgCASE_CSI_IGNORE, 2923d522f475SmrgCASE_CSI_IGNORE, 2924d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 2925d522f475SmrgCASE_GROUND_STATE, 2926d522f475SmrgCASE_GROUND_STATE, 2927d522f475SmrgCASE_GROUND_STATE, 2928d522f475SmrgCASE_GROUND_STATE, 2929d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 2930d522f475SmrgCASE_GROUND_STATE, 2931d522f475SmrgCASE_GROUND_STATE, 2932d522f475SmrgCASE_GROUND_STATE, 2933d522f475SmrgCASE_GROUND_STATE, 2934d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 2935d522f475SmrgCASE_GROUND_STATE, 2936d522f475SmrgCASE_GROUND_STATE, 2937d522f475SmrgCASE_GROUND_STATE, 2938d522f475SmrgCASE_GROUND_STATE, 2939d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 2940d522f475SmrgCASE_GROUND_STATE, 2941d522f475SmrgCASE_GROUND_STATE, 2942d522f475SmrgCASE_GROUND_STATE, 2943d522f475SmrgCASE_GROUND_STATE, 2944d522f475Smrg/* Eth Ntilde Ograve Oacute */ 2945d522f475SmrgCASE_GROUND_STATE, 2946d522f475SmrgCASE_GROUND_STATE, 2947d522f475SmrgCASE_GROUND_STATE, 2948d522f475SmrgCASE_GROUND_STATE, 2949d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 2950d522f475SmrgCASE_GROUND_STATE, 2951d522f475SmrgCASE_GROUND_STATE, 2952d522f475SmrgCASE_GROUND_STATE, 2953d522f475SmrgCASE_GROUND_STATE, 2954d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 2955d522f475SmrgCASE_GROUND_STATE, 2956d522f475SmrgCASE_GROUND_STATE, 2957d522f475SmrgCASE_GROUND_STATE, 2958d522f475SmrgCASE_GROUND_STATE, 2959d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 2960d522f475SmrgCASE_GROUND_STATE, 2961d522f475SmrgCASE_GROUND_STATE, 2962d522f475SmrgCASE_GROUND_STATE, 2963d522f475SmrgCASE_GROUND_STATE, 2964d522f475Smrg/* agrave aacute acircumflex atilde */ 2965d522f475SmrgCASE_GROUND_STATE, 2966d522f475SmrgCASE_GROUND_STATE, 2967d522f475SmrgCASE_GROUND_STATE, 2968d522f475SmrgCASE_GROUND_STATE, 2969d522f475Smrg/* adiaeresis aring ae ccedilla */ 2970d522f475SmrgCASE_GROUND_STATE, 2971d522f475SmrgCASE_GROUND_STATE, 2972d522f475SmrgCASE_GROUND_STATE, 2973d522f475SmrgCASE_GROUND_STATE, 2974d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 2975d522f475SmrgCASE_GROUND_STATE, 2976d522f475SmrgCASE_GROUND_STATE, 2977d522f475SmrgCASE_GROUND_STATE, 2978d522f475SmrgCASE_GROUND_STATE, 2979d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 2980d522f475SmrgCASE_GROUND_STATE, 2981d522f475SmrgCASE_GROUND_STATE, 2982d522f475SmrgCASE_GROUND_STATE, 2983d522f475SmrgCASE_GROUND_STATE, 2984d522f475Smrg/* eth ntilde ograve oacute */ 2985d522f475SmrgCASE_GROUND_STATE, 2986d522f475SmrgCASE_GROUND_STATE, 2987d522f475SmrgCASE_GROUND_STATE, 2988d522f475SmrgCASE_GROUND_STATE, 2989d522f475Smrg/* ocircumflex otilde odiaeresis division */ 2990d522f475SmrgCASE_GROUND_STATE, 2991d522f475SmrgCASE_GROUND_STATE, 2992d522f475SmrgCASE_GROUND_STATE, 2993d522f475SmrgCASE_GROUND_STATE, 2994d522f475Smrg/* oslash ugrave uacute ucircumflex */ 2995d522f475SmrgCASE_DECSACE, 2996d522f475SmrgCASE_GROUND_STATE, 2997d522f475SmrgCASE_GROUND_STATE, 2998d522f475SmrgCASE_GROUND_STATE, 2999d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 3000d522f475SmrgCASE_GROUND_STATE, 3001d522f475SmrgCASE_GROUND_STATE, 3002d522f475SmrgCASE_GROUND_STATE, 3003d522f475SmrgCASE_GROUND_STATE, 3004d522f475Smrg}; 3005d522f475Smrg#endif /* OPT_DEC_RECTOPS */ 3006d522f475Smrg 3007d522f475SmrgConst PARSE_T dec_table[] = /* CSI ? */ 3008d522f475Smrg{ 3009d522f475Smrg/* NUL SOH STX ETX */ 3010d522f475SmrgCASE_IGNORE, 3011d522f475SmrgCASE_IGNORE, 3012d522f475SmrgCASE_IGNORE, 3013d522f475SmrgCASE_IGNORE, 3014d522f475Smrg/* EOT ENQ ACK BEL */ 3015d522f475SmrgCASE_IGNORE, 3016d522f475SmrgCASE_ENQ, 3017d522f475SmrgCASE_IGNORE, 3018d522f475SmrgCASE_BELL, 3019d522f475Smrg/* BS HT NL VT */ 3020d522f475SmrgCASE_BS, 3021d522f475SmrgCASE_TAB, 3022d522f475SmrgCASE_VMOT, 3023d522f475SmrgCASE_VMOT, 3024d522f475Smrg/* NP CR SO SI */ 3025d522f475SmrgCASE_VMOT, 3026d522f475SmrgCASE_CR, 3027d522f475SmrgCASE_SO, 3028d522f475SmrgCASE_SI, 3029d522f475Smrg/* DLE DC1 DC2 DC3 */ 3030d522f475SmrgCASE_IGNORE, 3031d522f475SmrgCASE_IGNORE, 3032d522f475SmrgCASE_IGNORE, 3033d522f475SmrgCASE_IGNORE, 3034d522f475Smrg/* DC4 NAK SYN ETB */ 3035d522f475SmrgCASE_IGNORE, 3036d522f475SmrgCASE_IGNORE, 3037d522f475SmrgCASE_IGNORE, 3038d522f475SmrgCASE_IGNORE, 3039d522f475Smrg/* CAN EM SUB ESC */ 3040d522f475SmrgCASE_GROUND_STATE, 3041d522f475SmrgCASE_IGNORE, 3042d522f475SmrgCASE_GROUND_STATE, 3043d522f475SmrgCASE_ESC, 3044d522f475Smrg/* FS GS RS US */ 3045d522f475SmrgCASE_IGNORE, 3046d522f475SmrgCASE_IGNORE, 3047d522f475SmrgCASE_IGNORE, 3048d522f475SmrgCASE_IGNORE, 3049d522f475Smrg/* SP ! " # */ 3050d522f475SmrgCASE_CSI_IGNORE, 3051d522f475SmrgCASE_CSI_IGNORE, 3052d522f475SmrgCASE_CSI_IGNORE, 3053d522f475SmrgCASE_CSI_IGNORE, 3054d522f475Smrg/* $ % & ' */ 3055d522f475SmrgCASE_CSI_IGNORE, 3056d522f475SmrgCASE_CSI_IGNORE, 3057d522f475SmrgCASE_CSI_IGNORE, 3058d522f475SmrgCASE_CSI_IGNORE, 3059d522f475Smrg/* ( ) * + */ 3060d522f475SmrgCASE_CSI_IGNORE, 3061d522f475SmrgCASE_CSI_IGNORE, 3062d522f475SmrgCASE_CSI_IGNORE, 3063d522f475SmrgCASE_CSI_IGNORE, 3064d522f475Smrg/* , - . / */ 3065d522f475SmrgCASE_CSI_IGNORE, 3066d522f475SmrgCASE_CSI_IGNORE, 3067d522f475SmrgCASE_CSI_IGNORE, 3068d522f475SmrgCASE_CSI_IGNORE, 3069d522f475Smrg/* 0 1 2 3 */ 3070d522f475SmrgCASE_ESC_DIGIT, 3071d522f475SmrgCASE_ESC_DIGIT, 3072d522f475SmrgCASE_ESC_DIGIT, 3073d522f475SmrgCASE_ESC_DIGIT, 3074d522f475Smrg/* 4 5 6 7 */ 3075d522f475SmrgCASE_ESC_DIGIT, 3076d522f475SmrgCASE_ESC_DIGIT, 3077d522f475SmrgCASE_ESC_DIGIT, 3078d522f475SmrgCASE_ESC_DIGIT, 3079d522f475Smrg/* 8 9 : ; */ 3080d522f475SmrgCASE_ESC_DIGIT, 3081d522f475SmrgCASE_ESC_DIGIT, 3082d522f475SmrgCASE_CSI_IGNORE, 3083d522f475SmrgCASE_ESC_SEMI, 3084d522f475Smrg/* < = > ? */ 3085d522f475SmrgCASE_CSI_IGNORE, 3086d522f475SmrgCASE_CSI_IGNORE, 3087d522f475SmrgCASE_CSI_IGNORE, 3088d522f475SmrgCASE_CSI_IGNORE, 3089d522f475Smrg/* @ A B C */ 3090d522f475SmrgCASE_GROUND_STATE, 3091d522f475SmrgCASE_GROUND_STATE, 3092d522f475SmrgCASE_GROUND_STATE, 3093d522f475SmrgCASE_GROUND_STATE, 3094d522f475Smrg/* D E F G */ 3095d522f475SmrgCASE_GROUND_STATE, 3096d522f475SmrgCASE_GROUND_STATE, 3097d522f475SmrgCASE_GROUND_STATE, 3098d522f475SmrgCASE_GROUND_STATE, 3099d522f475Smrg/* H I J K */ 3100d522f475SmrgCASE_GROUND_STATE, 3101d522f475SmrgCASE_GROUND_STATE, 3102d522f475SmrgCASE_DECSED, 3103d522f475SmrgCASE_DECSEL, 3104d522f475Smrg/* L M N O */ 3105d522f475SmrgCASE_GROUND_STATE, 3106d522f475SmrgCASE_GROUND_STATE, 3107d522f475SmrgCASE_GROUND_STATE, 3108d522f475SmrgCASE_GROUND_STATE, 3109d522f475Smrg/* P Q R S */ 3110d522f475SmrgCASE_GROUND_STATE, 3111d522f475SmrgCASE_GROUND_STATE, 3112d522f475SmrgCASE_GROUND_STATE, 3113d522f475SmrgCASE_GROUND_STATE, 3114d522f475Smrg/* T U V W */ 3115d522f475SmrgCASE_GROUND_STATE, 3116d522f475SmrgCASE_GROUND_STATE, 3117d522f475SmrgCASE_GROUND_STATE, 3118d522f475SmrgCASE_GROUND_STATE, 3119d522f475Smrg/* X Y Z [ */ 3120d522f475SmrgCASE_GROUND_STATE, 3121d522f475SmrgCASE_GROUND_STATE, 3122d522f475SmrgCASE_GROUND_STATE, 3123d522f475SmrgCASE_GROUND_STATE, 3124d522f475Smrg/* \ ] ^ _ */ 3125d522f475SmrgCASE_GROUND_STATE, 3126d522f475SmrgCASE_GROUND_STATE, 3127d522f475SmrgCASE_GROUND_STATE, 3128d522f475SmrgCASE_GROUND_STATE, 3129d522f475Smrg/* ` a b c */ 3130d522f475SmrgCASE_GROUND_STATE, 3131d522f475SmrgCASE_GROUND_STATE, 3132d522f475SmrgCASE_GROUND_STATE, 3133d522f475SmrgCASE_GROUND_STATE, 3134d522f475Smrg/* d e f g */ 3135d522f475SmrgCASE_GROUND_STATE, 3136d522f475SmrgCASE_GROUND_STATE, 3137d522f475SmrgCASE_GROUND_STATE, 3138d522f475SmrgCASE_GROUND_STATE, 3139d522f475Smrg/* h i j k */ 3140d522f475SmrgCASE_DECSET, 3141d522f475SmrgCASE_DEC_MC, 3142d522f475SmrgCASE_GROUND_STATE, 3143d522f475SmrgCASE_GROUND_STATE, 3144d522f475Smrg/* l m n o */ 3145d522f475SmrgCASE_DECRST, 3146d522f475SmrgCASE_GROUND_STATE, 3147d522f475SmrgCASE_DSR, 3148d522f475SmrgCASE_GROUND_STATE, 3149d522f475Smrg/* p q r s */ 3150d522f475SmrgCASE_GROUND_STATE, 3151d522f475SmrgCASE_GROUND_STATE, 3152d522f475SmrgCASE_XTERM_RESTORE, 3153d522f475SmrgCASE_XTERM_SAVE, 3154d522f475Smrg/* t u v w */ 3155d522f475SmrgCASE_GROUND_STATE, 3156d522f475SmrgCASE_GROUND_STATE, 3157d522f475SmrgCASE_GROUND_STATE, 3158d522f475SmrgCASE_GROUND_STATE, 3159d522f475Smrg/* x y z { */ 3160d522f475SmrgCASE_GROUND_STATE, 3161d522f475SmrgCASE_GROUND_STATE, 3162d522f475SmrgCASE_GROUND_STATE, 3163d522f475SmrgCASE_GROUND_STATE, 3164d522f475Smrg/* | } ~ DEL */ 3165d522f475SmrgCASE_GROUND_STATE, 3166d522f475SmrgCASE_GROUND_STATE, 3167d522f475SmrgCASE_GROUND_STATE, 3168d522f475SmrgCASE_IGNORE, 3169d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 3170d522f475SmrgCASE_GROUND_STATE, 3171d522f475SmrgCASE_GROUND_STATE, 3172d522f475SmrgCASE_GROUND_STATE, 3173d522f475SmrgCASE_GROUND_STATE, 3174d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 3175d522f475SmrgCASE_IND, 3176d522f475SmrgCASE_NEL, 3177d522f475SmrgCASE_GROUND_STATE, 3178d522f475SmrgCASE_GROUND_STATE, 3179d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 3180d522f475SmrgCASE_HTS, 3181d522f475SmrgCASE_GROUND_STATE, 3182d522f475SmrgCASE_GROUND_STATE, 3183d522f475SmrgCASE_GROUND_STATE, 3184d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 3185d522f475SmrgCASE_GROUND_STATE, 3186d522f475SmrgCASE_RI, 3187d522f475SmrgCASE_SS2, 3188d522f475SmrgCASE_SS3, 3189d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 3190d522f475SmrgCASE_DCS, 3191d522f475SmrgCASE_GROUND_STATE, 3192d522f475SmrgCASE_GROUND_STATE, 3193d522f475SmrgCASE_GROUND_STATE, 3194d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 3195d522f475SmrgCASE_GROUND_STATE, 3196d522f475SmrgCASE_GROUND_STATE, 3197d522f475SmrgCASE_SPA, 3198d522f475SmrgCASE_EPA, 3199d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 3200d522f475SmrgCASE_SOS, 3201d522f475SmrgCASE_GROUND_STATE, 3202d522f475SmrgCASE_DECID, 3203d522f475SmrgCASE_CSI_STATE, 3204d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 3205d522f475SmrgCASE_ST, 3206d522f475SmrgCASE_OSC, 3207d522f475SmrgCASE_PM, 3208d522f475SmrgCASE_APC, 3209d522f475Smrg/* nobreakspace exclamdown cent sterling */ 3210d522f475SmrgCASE_CSI_IGNORE, 3211d522f475SmrgCASE_CSI_IGNORE, 3212d522f475SmrgCASE_CSI_IGNORE, 3213d522f475SmrgCASE_CSI_IGNORE, 3214d522f475Smrg/* currency yen brokenbar section */ 3215d522f475SmrgCASE_CSI_IGNORE, 3216d522f475SmrgCASE_CSI_IGNORE, 3217d522f475SmrgCASE_CSI_IGNORE, 3218d522f475SmrgCASE_CSI_IGNORE, 3219d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 3220d522f475SmrgCASE_CSI_IGNORE, 3221d522f475SmrgCASE_CSI_IGNORE, 3222d522f475SmrgCASE_CSI_IGNORE, 3223d522f475SmrgCASE_CSI_IGNORE, 3224d522f475Smrg/* notsign hyphen registered macron */ 3225d522f475SmrgCASE_CSI_IGNORE, 3226d522f475SmrgCASE_CSI_IGNORE, 3227d522f475SmrgCASE_CSI_IGNORE, 3228d522f475SmrgCASE_CSI_IGNORE, 3229d522f475Smrg/* degree plusminus twosuperior threesuperior */ 3230d522f475SmrgCASE_ESC_DIGIT, 3231d522f475SmrgCASE_ESC_DIGIT, 3232d522f475SmrgCASE_ESC_DIGIT, 3233d522f475SmrgCASE_ESC_DIGIT, 3234d522f475Smrg/* acute mu paragraph periodcentered */ 3235d522f475SmrgCASE_ESC_DIGIT, 3236d522f475SmrgCASE_ESC_DIGIT, 3237d522f475SmrgCASE_ESC_DIGIT, 3238d522f475SmrgCASE_ESC_DIGIT, 3239d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 3240d522f475SmrgCASE_ESC_DIGIT, 3241d522f475SmrgCASE_ESC_DIGIT, 3242d522f475SmrgCASE_CSI_IGNORE, 3243d522f475SmrgCASE_ESC_SEMI, 3244d522f475Smrg/* onequarter onehalf threequarters questiondown */ 3245d522f475SmrgCASE_CSI_IGNORE, 3246d522f475SmrgCASE_CSI_IGNORE, 3247d522f475SmrgCASE_CSI_IGNORE, 3248d522f475SmrgCASE_CSI_IGNORE, 3249d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 3250d522f475SmrgCASE_GROUND_STATE, 3251d522f475SmrgCASE_GROUND_STATE, 3252d522f475SmrgCASE_GROUND_STATE, 3253d522f475SmrgCASE_GROUND_STATE, 3254d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 3255d522f475SmrgCASE_GROUND_STATE, 3256d522f475SmrgCASE_GROUND_STATE, 3257d522f475SmrgCASE_GROUND_STATE, 3258d522f475SmrgCASE_GROUND_STATE, 3259d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 3260d522f475SmrgCASE_GROUND_STATE, 3261d522f475SmrgCASE_GROUND_STATE, 3262d522f475SmrgCASE_DECSED, 3263d522f475SmrgCASE_DECSEL, 3264d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 3265d522f475SmrgCASE_GROUND_STATE, 3266d522f475SmrgCASE_GROUND_STATE, 3267d522f475SmrgCASE_GROUND_STATE, 3268d522f475SmrgCASE_GROUND_STATE, 3269d522f475Smrg/* Eth Ntilde Ograve Oacute */ 3270d522f475SmrgCASE_GROUND_STATE, 3271d522f475SmrgCASE_GROUND_STATE, 3272d522f475SmrgCASE_GROUND_STATE, 3273d522f475SmrgCASE_GROUND_STATE, 3274d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 3275d522f475SmrgCASE_GROUND_STATE, 3276d522f475SmrgCASE_GROUND_STATE, 3277d522f475SmrgCASE_GROUND_STATE, 3278d522f475SmrgCASE_GROUND_STATE, 3279d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 3280d522f475SmrgCASE_GROUND_STATE, 3281d522f475SmrgCASE_GROUND_STATE, 3282d522f475SmrgCASE_GROUND_STATE, 3283d522f475SmrgCASE_GROUND_STATE, 3284d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 3285d522f475SmrgCASE_GROUND_STATE, 3286d522f475SmrgCASE_GROUND_STATE, 3287d522f475SmrgCASE_GROUND_STATE, 3288d522f475SmrgCASE_GROUND_STATE, 3289d522f475Smrg/* agrave aacute acircumflex atilde */ 3290d522f475SmrgCASE_GROUND_STATE, 3291d522f475SmrgCASE_GROUND_STATE, 3292d522f475SmrgCASE_GROUND_STATE, 3293d522f475SmrgCASE_GROUND_STATE, 3294d522f475Smrg/* adiaeresis aring ae ccedilla */ 3295d522f475SmrgCASE_GROUND_STATE, 3296d522f475SmrgCASE_GROUND_STATE, 3297d522f475SmrgCASE_GROUND_STATE, 3298d522f475SmrgCASE_GROUND_STATE, 3299d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 3300d522f475SmrgCASE_DECSET, 3301d522f475SmrgCASE_DEC_MC, 3302d522f475SmrgCASE_GROUND_STATE, 3303d522f475SmrgCASE_GROUND_STATE, 3304d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 3305d522f475SmrgCASE_DECRST, 3306d522f475SmrgCASE_GROUND_STATE, 3307d522f475SmrgCASE_DSR, 3308d522f475SmrgCASE_GROUND_STATE, 3309d522f475Smrg/* eth ntilde ograve oacute */ 3310d522f475SmrgCASE_GROUND_STATE, 3311d522f475SmrgCASE_GROUND_STATE, 3312d522f475SmrgCASE_XTERM_RESTORE, 3313d522f475SmrgCASE_XTERM_SAVE, 3314d522f475Smrg/* ocircumflex otilde odiaeresis division */ 3315d522f475SmrgCASE_GROUND_STATE, 3316d522f475SmrgCASE_GROUND_STATE, 3317d522f475SmrgCASE_GROUND_STATE, 3318d522f475SmrgCASE_GROUND_STATE, 3319d522f475Smrg/* oslash ugrave uacute ucircumflex */ 3320d522f475SmrgCASE_GROUND_STATE, 3321d522f475SmrgCASE_GROUND_STATE, 3322d522f475SmrgCASE_GROUND_STATE, 3323d522f475SmrgCASE_GROUND_STATE, 3324d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 3325d522f475SmrgCASE_GROUND_STATE, 3326d522f475SmrgCASE_GROUND_STATE, 3327d522f475SmrgCASE_GROUND_STATE, 3328d522f475SmrgCASE_IGNORE, 3329d522f475Smrg}; 3330d522f475Smrg 3331d522f475SmrgConst PARSE_T dec2_table[] = /* CSI > */ 3332d522f475Smrg{ 3333d522f475Smrg/* NUL SOH STX ETX */ 3334d522f475SmrgCASE_IGNORE, 3335d522f475SmrgCASE_IGNORE, 3336d522f475SmrgCASE_IGNORE, 3337d522f475SmrgCASE_IGNORE, 3338d522f475Smrg/* EOT ENQ ACK BEL */ 3339d522f475SmrgCASE_IGNORE, 3340d522f475SmrgCASE_ENQ, 3341d522f475SmrgCASE_IGNORE, 3342d522f475SmrgCASE_BELL, 3343d522f475Smrg/* BS HT NL VT */ 3344d522f475SmrgCASE_BS, 3345d522f475SmrgCASE_TAB, 3346d522f475SmrgCASE_VMOT, 3347d522f475SmrgCASE_VMOT, 3348d522f475Smrg/* NP CR SO SI */ 3349d522f475SmrgCASE_VMOT, 3350d522f475SmrgCASE_CR, 3351d522f475SmrgCASE_SO, 3352d522f475SmrgCASE_SI, 3353d522f475Smrg/* DLE DC1 DC2 DC3 */ 3354d522f475SmrgCASE_IGNORE, 3355d522f475SmrgCASE_IGNORE, 3356d522f475SmrgCASE_IGNORE, 3357d522f475SmrgCASE_IGNORE, 3358d522f475Smrg/* DC4 NAK SYN ETB */ 3359d522f475SmrgCASE_IGNORE, 3360d522f475SmrgCASE_IGNORE, 3361d522f475SmrgCASE_IGNORE, 3362d522f475SmrgCASE_IGNORE, 3363d522f475Smrg/* CAN EM SUB ESC */ 3364d522f475SmrgCASE_GROUND_STATE, 3365d522f475SmrgCASE_IGNORE, 3366d522f475SmrgCASE_GROUND_STATE, 3367d522f475SmrgCASE_ESC, 3368d522f475Smrg/* FS GS RS US */ 3369d522f475SmrgCASE_IGNORE, 3370d522f475SmrgCASE_IGNORE, 3371d522f475SmrgCASE_IGNORE, 3372d522f475SmrgCASE_IGNORE, 3373d522f475Smrg/* SP ! " # */ 3374d522f475SmrgCASE_CSI_IGNORE, 3375d522f475SmrgCASE_CSI_IGNORE, 3376d522f475SmrgCASE_CSI_IGNORE, 3377d522f475SmrgCASE_CSI_IGNORE, 3378d522f475Smrg/* $ % & ' */ 3379d522f475SmrgCASE_CSI_IGNORE, 3380d522f475SmrgCASE_CSI_IGNORE, 3381d522f475SmrgCASE_CSI_IGNORE, 3382d522f475SmrgCASE_CSI_IGNORE, 3383d522f475Smrg/* ( ) * + */ 3384d522f475SmrgCASE_CSI_IGNORE, 3385d522f475SmrgCASE_CSI_IGNORE, 3386d522f475SmrgCASE_CSI_IGNORE, 3387d522f475SmrgCASE_CSI_IGNORE, 3388d522f475Smrg/* , - . / */ 3389d522f475SmrgCASE_CSI_IGNORE, 3390d522f475SmrgCASE_CSI_IGNORE, 3391d522f475SmrgCASE_CSI_IGNORE, 3392d522f475SmrgCASE_CSI_IGNORE, 3393d522f475Smrg/* 0 1 2 3 */ 3394d522f475SmrgCASE_ESC_DIGIT, 3395d522f475SmrgCASE_ESC_DIGIT, 3396d522f475SmrgCASE_ESC_DIGIT, 3397d522f475SmrgCASE_ESC_DIGIT, 3398d522f475Smrg/* 4 5 6 7 */ 3399d522f475SmrgCASE_ESC_DIGIT, 3400d522f475SmrgCASE_ESC_DIGIT, 3401d522f475SmrgCASE_ESC_DIGIT, 3402d522f475SmrgCASE_ESC_DIGIT, 3403d522f475Smrg/* 8 9 : ; */ 3404d522f475SmrgCASE_ESC_DIGIT, 3405d522f475SmrgCASE_ESC_DIGIT, 3406d522f475SmrgCASE_CSI_IGNORE, 3407d522f475SmrgCASE_ESC_SEMI, 3408d522f475Smrg/* < = > ? */ 3409d522f475SmrgCASE_CSI_IGNORE, 3410d522f475SmrgCASE_CSI_IGNORE, 3411d522f475SmrgCASE_CSI_IGNORE, 3412d522f475SmrgCASE_CSI_IGNORE, 3413d522f475Smrg/* @ A B C */ 3414d522f475SmrgCASE_GROUND_STATE, 3415d522f475SmrgCASE_GROUND_STATE, 3416d522f475SmrgCASE_GROUND_STATE, 3417d522f475SmrgCASE_GROUND_STATE, 3418d522f475Smrg/* D E F G */ 3419d522f475SmrgCASE_GROUND_STATE, 3420d522f475SmrgCASE_GROUND_STATE, 3421d522f475SmrgCASE_GROUND_STATE, 3422d522f475SmrgCASE_GROUND_STATE, 3423d522f475Smrg/* H I J K */ 3424d522f475SmrgCASE_GROUND_STATE, 3425d522f475SmrgCASE_GROUND_STATE, 3426d522f475SmrgCASE_GROUND_STATE, 3427d522f475SmrgCASE_GROUND_STATE, 3428d522f475Smrg/* L M N O */ 3429d522f475SmrgCASE_GROUND_STATE, 3430d522f475SmrgCASE_GROUND_STATE, 3431d522f475SmrgCASE_GROUND_STATE, 3432d522f475SmrgCASE_GROUND_STATE, 3433d522f475Smrg/* P Q R S */ 3434d522f475SmrgCASE_GROUND_STATE, 3435d522f475SmrgCASE_GROUND_STATE, 3436d522f475SmrgCASE_GROUND_STATE, 3437d522f475SmrgCASE_GROUND_STATE, 3438d522f475Smrg/* T U V W */ 343920d2c4d2SmrgCASE_RM_TITLE, 3440d522f475SmrgCASE_GROUND_STATE, 3441d522f475SmrgCASE_GROUND_STATE, 3442d522f475SmrgCASE_GROUND_STATE, 3443d522f475Smrg/* X Y Z [ */ 3444d522f475SmrgCASE_GROUND_STATE, 3445d522f475SmrgCASE_GROUND_STATE, 3446d522f475SmrgCASE_GROUND_STATE, 3447d522f475SmrgCASE_GROUND_STATE, 3448d522f475Smrg/* \ ] ^ _ */ 3449d522f475SmrgCASE_GROUND_STATE, 3450d522f475SmrgCASE_GROUND_STATE, 3451d522f475SmrgCASE_GROUND_STATE, 3452d522f475SmrgCASE_GROUND_STATE, 3453d522f475Smrg/* ` a b c */ 3454d522f475SmrgCASE_GROUND_STATE, 3455d522f475SmrgCASE_GROUND_STATE, 3456d522f475SmrgCASE_GROUND_STATE, 3457d522f475SmrgCASE_DA2, 3458d522f475Smrg/* d e f g */ 3459d522f475SmrgCASE_GROUND_STATE, 3460d522f475SmrgCASE_GROUND_STATE, 3461d522f475SmrgCASE_GROUND_STATE, 3462d522f475SmrgCASE_GROUND_STATE, 3463d522f475Smrg/* h i j k */ 3464d522f475SmrgCASE_GROUND_STATE, 3465d522f475SmrgCASE_GROUND_STATE, 3466d522f475SmrgCASE_GROUND_STATE, 3467d522f475SmrgCASE_GROUND_STATE, 3468d522f475Smrg/* l m n o */ 3469d522f475SmrgCASE_GROUND_STATE, 3470d522f475SmrgCASE_SET_MOD_FKEYS, 3471d522f475SmrgCASE_SET_MOD_FKEYS0, 3472d522f475SmrgCASE_GROUND_STATE, 3473d522f475Smrg/* p q r s */ 3474d522f475SmrgCASE_HIDE_POINTER, 3475d522f475SmrgCASE_GROUND_STATE, 3476d522f475SmrgCASE_GROUND_STATE, 3477d522f475SmrgCASE_GROUND_STATE, 3478d522f475Smrg/* t u v w */ 347920d2c4d2SmrgCASE_SM_TITLE, 3480d522f475SmrgCASE_GROUND_STATE, 3481d522f475SmrgCASE_GROUND_STATE, 3482d522f475SmrgCASE_GROUND_STATE, 3483d522f475Smrg/* x y z { */ 3484d522f475SmrgCASE_GROUND_STATE, 3485d522f475SmrgCASE_GROUND_STATE, 3486d522f475SmrgCASE_GROUND_STATE, 3487d522f475SmrgCASE_GROUND_STATE, 3488d522f475Smrg/* | } ~ DEL */ 3489d522f475SmrgCASE_GROUND_STATE, 3490d522f475SmrgCASE_GROUND_STATE, 3491d522f475SmrgCASE_GROUND_STATE, 3492d522f475SmrgCASE_IGNORE, 3493d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 3494d522f475SmrgCASE_GROUND_STATE, 3495d522f475SmrgCASE_GROUND_STATE, 3496d522f475SmrgCASE_GROUND_STATE, 3497d522f475SmrgCASE_GROUND_STATE, 3498d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 3499d522f475SmrgCASE_IND, 3500d522f475SmrgCASE_NEL, 3501d522f475SmrgCASE_GROUND_STATE, 3502d522f475SmrgCASE_GROUND_STATE, 3503d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 3504d522f475SmrgCASE_HTS, 3505d522f475SmrgCASE_GROUND_STATE, 3506d522f475SmrgCASE_GROUND_STATE, 3507d522f475SmrgCASE_GROUND_STATE, 3508d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 3509d522f475SmrgCASE_GROUND_STATE, 3510d522f475SmrgCASE_RI, 3511d522f475SmrgCASE_SS2, 3512d522f475SmrgCASE_SS3, 3513d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 3514d522f475SmrgCASE_DCS, 3515d522f475SmrgCASE_GROUND_STATE, 3516d522f475SmrgCASE_GROUND_STATE, 3517d522f475SmrgCASE_GROUND_STATE, 3518d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 3519d522f475SmrgCASE_GROUND_STATE, 3520d522f475SmrgCASE_GROUND_STATE, 3521d522f475SmrgCASE_SPA, 3522d522f475SmrgCASE_EPA, 3523d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 3524d522f475SmrgCASE_SOS, 3525d522f475SmrgCASE_GROUND_STATE, 3526d522f475SmrgCASE_DECID, 3527d522f475SmrgCASE_CSI_STATE, 3528d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 3529d522f475SmrgCASE_ST, 3530d522f475SmrgCASE_OSC, 3531d522f475SmrgCASE_PM, 3532d522f475SmrgCASE_APC, 3533d522f475Smrg/* nobreakspace exclamdown cent sterling */ 3534d522f475SmrgCASE_CSI_IGNORE, 3535d522f475SmrgCASE_CSI_IGNORE, 3536d522f475SmrgCASE_CSI_IGNORE, 3537d522f475SmrgCASE_CSI_IGNORE, 3538d522f475Smrg/* currency yen brokenbar section */ 3539d522f475SmrgCASE_CSI_IGNORE, 3540d522f475SmrgCASE_CSI_IGNORE, 3541d522f475SmrgCASE_CSI_IGNORE, 3542d522f475SmrgCASE_CSI_IGNORE, 3543d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 3544d522f475SmrgCASE_CSI_IGNORE, 3545d522f475SmrgCASE_CSI_IGNORE, 3546d522f475SmrgCASE_CSI_IGNORE, 3547d522f475SmrgCASE_CSI_IGNORE, 3548d522f475Smrg/* notsign hyphen registered macron */ 3549d522f475SmrgCASE_CSI_IGNORE, 3550d522f475SmrgCASE_CSI_IGNORE, 3551d522f475SmrgCASE_CSI_IGNORE, 3552d522f475SmrgCASE_CSI_IGNORE, 3553d522f475Smrg/* degree plusminus twosuperior threesuperior */ 3554d522f475SmrgCASE_ESC_DIGIT, 3555d522f475SmrgCASE_ESC_DIGIT, 3556d522f475SmrgCASE_ESC_DIGIT, 3557d522f475SmrgCASE_ESC_DIGIT, 3558d522f475Smrg/* acute mu paragraph periodcentered */ 3559d522f475SmrgCASE_ESC_DIGIT, 3560d522f475SmrgCASE_ESC_DIGIT, 3561d522f475SmrgCASE_ESC_DIGIT, 3562d522f475SmrgCASE_ESC_DIGIT, 3563d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 3564d522f475SmrgCASE_ESC_DIGIT, 3565d522f475SmrgCASE_ESC_DIGIT, 3566d522f475SmrgCASE_CSI_IGNORE, 3567d522f475SmrgCASE_ESC_SEMI, 3568d522f475Smrg/* onequarter onehalf threequarters questiondown */ 3569d522f475SmrgCASE_CSI_IGNORE, 3570d522f475SmrgCASE_CSI_IGNORE, 3571d522f475SmrgCASE_CSI_IGNORE, 3572d522f475SmrgCASE_CSI_IGNORE, 3573d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 3574d522f475SmrgCASE_GROUND_STATE, 3575d522f475SmrgCASE_GROUND_STATE, 3576d522f475SmrgCASE_GROUND_STATE, 3577d522f475SmrgCASE_GROUND_STATE, 3578d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 3579d522f475SmrgCASE_GROUND_STATE, 3580d522f475SmrgCASE_GROUND_STATE, 3581d522f475SmrgCASE_GROUND_STATE, 3582d522f475SmrgCASE_GROUND_STATE, 3583d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 3584d522f475SmrgCASE_GROUND_STATE, 3585d522f475SmrgCASE_GROUND_STATE, 3586d522f475SmrgCASE_GROUND_STATE, 3587d522f475SmrgCASE_GROUND_STATE, 3588d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 3589d522f475SmrgCASE_GROUND_STATE, 3590d522f475SmrgCASE_GROUND_STATE, 3591d522f475SmrgCASE_GROUND_STATE, 3592d522f475SmrgCASE_GROUND_STATE, 3593d522f475Smrg/* Eth Ntilde Ograve Oacute */ 359420d2c4d2SmrgCASE_RM_TITLE, 3595d522f475SmrgCASE_GROUND_STATE, 3596d522f475SmrgCASE_GROUND_STATE, 3597d522f475SmrgCASE_GROUND_STATE, 3598d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 3599d522f475SmrgCASE_GROUND_STATE, 3600d522f475SmrgCASE_GROUND_STATE, 3601d522f475SmrgCASE_GROUND_STATE, 3602d522f475SmrgCASE_GROUND_STATE, 3603d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 3604d522f475SmrgCASE_GROUND_STATE, 3605d522f475SmrgCASE_GROUND_STATE, 3606d522f475SmrgCASE_GROUND_STATE, 3607d522f475SmrgCASE_GROUND_STATE, 3608d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 3609d522f475SmrgCASE_GROUND_STATE, 3610d522f475SmrgCASE_GROUND_STATE, 3611d522f475SmrgCASE_GROUND_STATE, 3612d522f475SmrgCASE_GROUND_STATE, 3613d522f475Smrg/* agrave aacute acircumflex atilde */ 3614d522f475SmrgCASE_GROUND_STATE, 3615d522f475SmrgCASE_GROUND_STATE, 3616d522f475SmrgCASE_GROUND_STATE, 3617d522f475SmrgCASE_DA2, 3618d522f475Smrg/* adiaeresis aring ae ccedilla */ 3619d522f475SmrgCASE_GROUND_STATE, 3620d522f475SmrgCASE_GROUND_STATE, 3621d522f475SmrgCASE_GROUND_STATE, 3622d522f475SmrgCASE_GROUND_STATE, 3623d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 3624d522f475SmrgCASE_GROUND_STATE, 3625d522f475SmrgCASE_GROUND_STATE, 3626d522f475SmrgCASE_GROUND_STATE, 3627d522f475SmrgCASE_GROUND_STATE, 3628d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 3629d522f475SmrgCASE_GROUND_STATE, 363020d2c4d2SmrgCASE_SET_MOD_FKEYS, 363120d2c4d2SmrgCASE_SET_MOD_FKEYS0, 3632d522f475SmrgCASE_GROUND_STATE, 3633d522f475Smrg/* eth ntilde ograve oacute */ 363420d2c4d2SmrgCASE_HIDE_POINTER, 3635d522f475SmrgCASE_GROUND_STATE, 3636d522f475SmrgCASE_GROUND_STATE, 3637d522f475SmrgCASE_GROUND_STATE, 3638d522f475Smrg/* ocircumflex otilde odiaeresis division */ 363920d2c4d2SmrgCASE_SM_TITLE, 3640d522f475SmrgCASE_GROUND_STATE, 3641d522f475SmrgCASE_GROUND_STATE, 3642d522f475SmrgCASE_GROUND_STATE, 3643d522f475Smrg/* oslash ugrave uacute ucircumflex */ 3644d522f475SmrgCASE_GROUND_STATE, 3645d522f475SmrgCASE_GROUND_STATE, 3646d522f475SmrgCASE_GROUND_STATE, 3647d522f475SmrgCASE_GROUND_STATE, 3648d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 3649d522f475SmrgCASE_GROUND_STATE, 3650d522f475SmrgCASE_GROUND_STATE, 3651d522f475SmrgCASE_GROUND_STATE, 3652d522f475SmrgCASE_IGNORE, 3653d522f475Smrg}; 3654d522f475Smrg 3655d522f475SmrgConst PARSE_T dec3_table[] = /* CSI = */ 3656d522f475Smrg{ 3657d522f475Smrg/* NUL SOH STX ETX */ 3658d522f475SmrgCASE_IGNORE, 3659d522f475SmrgCASE_IGNORE, 3660d522f475SmrgCASE_IGNORE, 3661d522f475SmrgCASE_IGNORE, 3662d522f475Smrg/* EOT ENQ ACK BEL */ 3663d522f475SmrgCASE_IGNORE, 3664d522f475SmrgCASE_ENQ, 3665d522f475SmrgCASE_IGNORE, 3666d522f475SmrgCASE_BELL, 3667d522f475Smrg/* BS HT NL VT */ 3668d522f475SmrgCASE_BS, 3669d522f475SmrgCASE_TAB, 3670d522f475SmrgCASE_VMOT, 3671d522f475SmrgCASE_VMOT, 3672d522f475Smrg/* NP CR SO SI */ 3673d522f475SmrgCASE_VMOT, 3674d522f475SmrgCASE_CR, 3675d522f475SmrgCASE_SO, 3676d522f475SmrgCASE_SI, 3677d522f475Smrg/* DLE DC1 DC2 DC3 */ 3678d522f475SmrgCASE_IGNORE, 3679d522f475SmrgCASE_IGNORE, 3680d522f475SmrgCASE_IGNORE, 3681d522f475SmrgCASE_IGNORE, 3682d522f475Smrg/* DC4 NAK SYN ETB */ 3683d522f475SmrgCASE_IGNORE, 3684d522f475SmrgCASE_IGNORE, 3685d522f475SmrgCASE_IGNORE, 3686d522f475SmrgCASE_IGNORE, 3687d522f475Smrg/* CAN EM SUB ESC */ 3688d522f475SmrgCASE_GROUND_STATE, 3689d522f475SmrgCASE_IGNORE, 3690d522f475SmrgCASE_GROUND_STATE, 3691d522f475SmrgCASE_ESC, 3692d522f475Smrg/* FS GS RS US */ 3693d522f475SmrgCASE_IGNORE, 3694d522f475SmrgCASE_IGNORE, 3695d522f475SmrgCASE_IGNORE, 3696d522f475SmrgCASE_IGNORE, 3697d522f475Smrg/* SP ! " # */ 3698d522f475SmrgCASE_CSI_IGNORE, 3699d522f475SmrgCASE_CSI_IGNORE, 3700d522f475SmrgCASE_CSI_IGNORE, 3701d522f475SmrgCASE_CSI_IGNORE, 3702d522f475Smrg/* $ % & ' */ 3703d522f475SmrgCASE_CSI_IGNORE, 3704d522f475SmrgCASE_CSI_IGNORE, 3705d522f475SmrgCASE_CSI_IGNORE, 3706d522f475SmrgCASE_CSI_IGNORE, 3707d522f475Smrg/* ( ) * + */ 3708d522f475SmrgCASE_CSI_IGNORE, 3709d522f475SmrgCASE_CSI_IGNORE, 3710d522f475SmrgCASE_CSI_IGNORE, 3711d522f475SmrgCASE_CSI_IGNORE, 3712d522f475Smrg/* , - . / */ 3713d522f475SmrgCASE_CSI_IGNORE, 3714d522f475SmrgCASE_CSI_IGNORE, 3715d522f475SmrgCASE_CSI_IGNORE, 3716d522f475SmrgCASE_CSI_IGNORE, 3717d522f475Smrg/* 0 1 2 3 */ 3718d522f475SmrgCASE_ESC_DIGIT, 3719d522f475SmrgCASE_ESC_DIGIT, 3720d522f475SmrgCASE_ESC_DIGIT, 3721d522f475SmrgCASE_ESC_DIGIT, 3722d522f475Smrg/* 4 5 6 7 */ 3723d522f475SmrgCASE_ESC_DIGIT, 3724d522f475SmrgCASE_ESC_DIGIT, 3725d522f475SmrgCASE_ESC_DIGIT, 3726d522f475SmrgCASE_ESC_DIGIT, 3727d522f475Smrg/* 8 9 : ; */ 3728d522f475SmrgCASE_ESC_DIGIT, 3729d522f475SmrgCASE_ESC_DIGIT, 3730d522f475SmrgCASE_CSI_IGNORE, 3731d522f475SmrgCASE_ESC_SEMI, 3732d522f475Smrg/* < = > ? */ 3733d522f475SmrgCASE_CSI_IGNORE, 3734d522f475SmrgCASE_CSI_IGNORE, 3735d522f475SmrgCASE_CSI_IGNORE, 3736d522f475SmrgCASE_CSI_IGNORE, 3737d522f475Smrg/* @ A B C */ 3738d522f475SmrgCASE_GROUND_STATE, 3739d522f475SmrgCASE_GROUND_STATE, 3740d522f475SmrgCASE_GROUND_STATE, 3741d522f475SmrgCASE_GROUND_STATE, 3742d522f475Smrg/* D E F G */ 3743d522f475SmrgCASE_GROUND_STATE, 3744d522f475SmrgCASE_GROUND_STATE, 3745d522f475SmrgCASE_GROUND_STATE, 3746d522f475SmrgCASE_GROUND_STATE, 3747d522f475Smrg/* H I J K */ 3748d522f475SmrgCASE_GROUND_STATE, 3749d522f475SmrgCASE_GROUND_STATE, 3750d522f475SmrgCASE_GROUND_STATE, 3751d522f475SmrgCASE_GROUND_STATE, 3752d522f475Smrg/* L M N O */ 3753d522f475SmrgCASE_GROUND_STATE, 3754d522f475SmrgCASE_GROUND_STATE, 3755d522f475SmrgCASE_GROUND_STATE, 3756d522f475SmrgCASE_GROUND_STATE, 3757d522f475Smrg/* P Q R S */ 3758d522f475SmrgCASE_GROUND_STATE, 3759d522f475SmrgCASE_GROUND_STATE, 3760d522f475SmrgCASE_GROUND_STATE, 3761d522f475SmrgCASE_GROUND_STATE, 3762d522f475Smrg/* T U V W */ 3763d522f475SmrgCASE_GROUND_STATE, 3764d522f475SmrgCASE_GROUND_STATE, 3765d522f475SmrgCASE_GROUND_STATE, 3766d522f475SmrgCASE_GROUND_STATE, 3767d522f475Smrg/* X Y Z [ */ 3768d522f475SmrgCASE_GROUND_STATE, 3769d522f475SmrgCASE_GROUND_STATE, 3770d522f475SmrgCASE_GROUND_STATE, 3771d522f475SmrgCASE_GROUND_STATE, 3772d522f475Smrg/* \ ] ^ _ */ 3773d522f475SmrgCASE_GROUND_STATE, 3774d522f475SmrgCASE_GROUND_STATE, 3775d522f475SmrgCASE_GROUND_STATE, 3776d522f475SmrgCASE_GROUND_STATE, 3777d522f475Smrg/* ` a b c */ 3778d522f475SmrgCASE_GROUND_STATE, 3779d522f475SmrgCASE_GROUND_STATE, 3780d522f475SmrgCASE_GROUND_STATE, 3781d522f475SmrgCASE_DECRPTUI, 3782d522f475Smrg/* d e f g */ 3783d522f475SmrgCASE_GROUND_STATE, 3784d522f475SmrgCASE_GROUND_STATE, 3785d522f475SmrgCASE_GROUND_STATE, 3786d522f475SmrgCASE_GROUND_STATE, 3787d522f475Smrg/* h i j k */ 3788d522f475SmrgCASE_GROUND_STATE, 3789d522f475SmrgCASE_GROUND_STATE, 3790d522f475SmrgCASE_GROUND_STATE, 3791d522f475SmrgCASE_GROUND_STATE, 3792d522f475Smrg/* l m n o */ 3793d522f475SmrgCASE_GROUND_STATE, 3794d522f475SmrgCASE_GROUND_STATE, 3795d522f475SmrgCASE_GROUND_STATE, 3796d522f475SmrgCASE_GROUND_STATE, 3797d522f475Smrg/* p q r s */ 3798d522f475SmrgCASE_GROUND_STATE, 3799d522f475SmrgCASE_GROUND_STATE, 3800d522f475SmrgCASE_GROUND_STATE, 3801d522f475SmrgCASE_GROUND_STATE, 3802d522f475Smrg/* t u v w */ 3803d522f475SmrgCASE_GROUND_STATE, 3804d522f475SmrgCASE_GROUND_STATE, 3805d522f475SmrgCASE_GROUND_STATE, 3806d522f475SmrgCASE_GROUND_STATE, 3807d522f475Smrg/* x y z { */ 3808d522f475SmrgCASE_GROUND_STATE, 3809d522f475SmrgCASE_GROUND_STATE, 3810d522f475SmrgCASE_GROUND_STATE, 3811d522f475SmrgCASE_GROUND_STATE, 3812d522f475Smrg/* | } ~ DEL */ 3813d522f475SmrgCASE_GROUND_STATE, 3814d522f475SmrgCASE_GROUND_STATE, 3815d522f475SmrgCASE_GROUND_STATE, 3816d522f475SmrgCASE_IGNORE, 3817d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 3818d522f475SmrgCASE_GROUND_STATE, 3819d522f475SmrgCASE_GROUND_STATE, 3820d522f475SmrgCASE_GROUND_STATE, 3821d522f475SmrgCASE_GROUND_STATE, 3822d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 3823d522f475SmrgCASE_IND, 3824d522f475SmrgCASE_NEL, 3825d522f475SmrgCASE_GROUND_STATE, 3826d522f475SmrgCASE_GROUND_STATE, 3827d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 3828d522f475SmrgCASE_HTS, 3829d522f475SmrgCASE_GROUND_STATE, 3830d522f475SmrgCASE_GROUND_STATE, 3831d522f475SmrgCASE_GROUND_STATE, 3832d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 3833d522f475SmrgCASE_GROUND_STATE, 3834d522f475SmrgCASE_RI, 3835d522f475SmrgCASE_SS2, 3836d522f475SmrgCASE_SS3, 3837d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 3838d522f475SmrgCASE_DCS, 3839d522f475SmrgCASE_GROUND_STATE, 3840d522f475SmrgCASE_GROUND_STATE, 3841d522f475SmrgCASE_GROUND_STATE, 3842d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 3843d522f475SmrgCASE_GROUND_STATE, 3844d522f475SmrgCASE_GROUND_STATE, 3845d522f475SmrgCASE_SPA, 3846d522f475SmrgCASE_EPA, 3847d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 3848d522f475SmrgCASE_SOS, 3849d522f475SmrgCASE_GROUND_STATE, 3850d522f475SmrgCASE_DECID, 3851d522f475SmrgCASE_CSI_STATE, 3852d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 3853d522f475SmrgCASE_ST, 3854d522f475SmrgCASE_OSC, 3855d522f475SmrgCASE_PM, 3856d522f475SmrgCASE_APC, 3857d522f475Smrg/* nobreakspace exclamdown cent sterling */ 3858d522f475SmrgCASE_CSI_IGNORE, 3859d522f475SmrgCASE_CSI_IGNORE, 3860d522f475SmrgCASE_CSI_IGNORE, 3861d522f475SmrgCASE_CSI_IGNORE, 3862d522f475Smrg/* currency yen brokenbar section */ 3863d522f475SmrgCASE_CSI_IGNORE, 3864d522f475SmrgCASE_CSI_IGNORE, 3865d522f475SmrgCASE_CSI_IGNORE, 3866d522f475SmrgCASE_CSI_IGNORE, 3867d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 3868d522f475SmrgCASE_CSI_IGNORE, 3869d522f475SmrgCASE_CSI_IGNORE, 3870d522f475SmrgCASE_CSI_IGNORE, 3871d522f475SmrgCASE_CSI_IGNORE, 3872d522f475Smrg/* notsign hyphen registered macron */ 3873d522f475SmrgCASE_CSI_IGNORE, 3874d522f475SmrgCASE_CSI_IGNORE, 3875d522f475SmrgCASE_CSI_IGNORE, 3876d522f475SmrgCASE_CSI_IGNORE, 3877d522f475Smrg/* degree plusminus twosuperior threesuperior */ 3878d522f475SmrgCASE_ESC_DIGIT, 3879d522f475SmrgCASE_ESC_DIGIT, 3880d522f475SmrgCASE_ESC_DIGIT, 3881d522f475SmrgCASE_ESC_DIGIT, 3882d522f475Smrg/* acute mu paragraph periodcentered */ 3883d522f475SmrgCASE_ESC_DIGIT, 3884d522f475SmrgCASE_ESC_DIGIT, 3885d522f475SmrgCASE_ESC_DIGIT, 3886d522f475SmrgCASE_ESC_DIGIT, 3887d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 3888d522f475SmrgCASE_ESC_DIGIT, 3889d522f475SmrgCASE_ESC_DIGIT, 3890d522f475SmrgCASE_CSI_IGNORE, 3891d522f475SmrgCASE_ESC_SEMI, 3892d522f475Smrg/* onequarter onehalf threequarters questiondown */ 3893d522f475SmrgCASE_CSI_IGNORE, 3894d522f475SmrgCASE_CSI_IGNORE, 3895d522f475SmrgCASE_CSI_IGNORE, 3896d522f475SmrgCASE_CSI_IGNORE, 3897d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 3898d522f475SmrgCASE_GROUND_STATE, 3899d522f475SmrgCASE_GROUND_STATE, 3900d522f475SmrgCASE_GROUND_STATE, 3901d522f475SmrgCASE_GROUND_STATE, 3902d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 3903d522f475SmrgCASE_GROUND_STATE, 3904d522f475SmrgCASE_GROUND_STATE, 3905d522f475SmrgCASE_GROUND_STATE, 3906d522f475SmrgCASE_GROUND_STATE, 3907d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 3908d522f475SmrgCASE_GROUND_STATE, 3909d522f475SmrgCASE_GROUND_STATE, 3910d522f475SmrgCASE_GROUND_STATE, 3911d522f475SmrgCASE_GROUND_STATE, 3912d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 3913d522f475SmrgCASE_GROUND_STATE, 3914d522f475SmrgCASE_GROUND_STATE, 3915d522f475SmrgCASE_GROUND_STATE, 3916d522f475SmrgCASE_GROUND_STATE, 3917d522f475Smrg/* Eth Ntilde Ograve Oacute */ 3918d522f475SmrgCASE_GROUND_STATE, 3919d522f475SmrgCASE_GROUND_STATE, 3920d522f475SmrgCASE_GROUND_STATE, 3921d522f475SmrgCASE_GROUND_STATE, 3922d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 3923d522f475SmrgCASE_GROUND_STATE, 3924d522f475SmrgCASE_GROUND_STATE, 3925d522f475SmrgCASE_GROUND_STATE, 3926d522f475SmrgCASE_GROUND_STATE, 3927d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 3928d522f475SmrgCASE_GROUND_STATE, 3929d522f475SmrgCASE_GROUND_STATE, 3930d522f475SmrgCASE_GROUND_STATE, 3931d522f475SmrgCASE_GROUND_STATE, 3932d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 3933d522f475SmrgCASE_GROUND_STATE, 3934d522f475SmrgCASE_GROUND_STATE, 3935d522f475SmrgCASE_GROUND_STATE, 3936d522f475SmrgCASE_GROUND_STATE, 3937d522f475Smrg/* agrave aacute acircumflex atilde */ 3938d522f475SmrgCASE_GROUND_STATE, 3939d522f475SmrgCASE_GROUND_STATE, 3940d522f475SmrgCASE_GROUND_STATE, 3941d522f475SmrgCASE_DECRPTUI, 3942d522f475Smrg/* adiaeresis aring ae ccedilla */ 3943d522f475SmrgCASE_GROUND_STATE, 3944d522f475SmrgCASE_GROUND_STATE, 3945d522f475SmrgCASE_GROUND_STATE, 3946d522f475SmrgCASE_GROUND_STATE, 3947d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 3948d522f475SmrgCASE_GROUND_STATE, 3949d522f475SmrgCASE_GROUND_STATE, 3950d522f475SmrgCASE_GROUND_STATE, 3951d522f475SmrgCASE_GROUND_STATE, 3952d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 3953d522f475SmrgCASE_GROUND_STATE, 3954d522f475SmrgCASE_GROUND_STATE, 3955d522f475SmrgCASE_GROUND_STATE, 3956d522f475SmrgCASE_GROUND_STATE, 3957d522f475Smrg/* eth ntilde ograve oacute */ 3958d522f475SmrgCASE_GROUND_STATE, 3959d522f475SmrgCASE_GROUND_STATE, 3960d522f475SmrgCASE_GROUND_STATE, 3961d522f475SmrgCASE_GROUND_STATE, 3962d522f475Smrg/* ocircumflex otilde odiaeresis division */ 3963d522f475SmrgCASE_GROUND_STATE, 3964d522f475SmrgCASE_GROUND_STATE, 3965d522f475SmrgCASE_GROUND_STATE, 3966d522f475SmrgCASE_GROUND_STATE, 3967d522f475Smrg/* oslash ugrave uacute ucircumflex */ 3968d522f475SmrgCASE_GROUND_STATE, 3969d522f475SmrgCASE_GROUND_STATE, 3970d522f475SmrgCASE_GROUND_STATE, 3971d522f475SmrgCASE_GROUND_STATE, 3972d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 3973d522f475SmrgCASE_GROUND_STATE, 3974d522f475SmrgCASE_GROUND_STATE, 3975d522f475SmrgCASE_GROUND_STATE, 3976d522f475SmrgCASE_IGNORE, 3977d522f475Smrg}; 3978d522f475Smrg 3979d522f475SmrgConst PARSE_T cigtable[] = /* CASE_CSI_IGNORE */ 3980d522f475Smrg{ 3981d522f475Smrg/* NUL SOH STX ETX */ 3982d522f475SmrgCASE_IGNORE, 3983d522f475SmrgCASE_IGNORE, 3984d522f475SmrgCASE_IGNORE, 3985d522f475SmrgCASE_IGNORE, 3986d522f475Smrg/* EOT ENQ ACK BEL */ 3987d522f475SmrgCASE_IGNORE, 3988d522f475SmrgCASE_ENQ, 3989d522f475SmrgCASE_IGNORE, 3990d522f475SmrgCASE_BELL, 3991d522f475Smrg/* BS HT NL VT */ 3992d522f475SmrgCASE_BS, 3993d522f475SmrgCASE_TAB, 3994d522f475SmrgCASE_VMOT, 3995d522f475SmrgCASE_VMOT, 3996d522f475Smrg/* NP CR SO SI */ 3997d522f475SmrgCASE_VMOT, 3998d522f475SmrgCASE_CR, 3999d522f475SmrgCASE_SO, 4000d522f475SmrgCASE_SI, 4001d522f475Smrg/* DLE DC1 DC2 DC3 */ 4002d522f475SmrgCASE_IGNORE, 4003d522f475SmrgCASE_IGNORE, 4004d522f475SmrgCASE_IGNORE, 4005d522f475SmrgCASE_IGNORE, 4006d522f475Smrg/* DC4 NAK SYN ETB */ 4007d522f475SmrgCASE_IGNORE, 4008d522f475SmrgCASE_IGNORE, 4009d522f475SmrgCASE_IGNORE, 4010d522f475SmrgCASE_IGNORE, 4011d522f475Smrg/* CAN EM SUB ESC */ 4012d522f475SmrgCASE_GROUND_STATE, 4013d522f475SmrgCASE_IGNORE, 4014d522f475SmrgCASE_GROUND_STATE, 4015d522f475SmrgCASE_ESC, 4016d522f475Smrg/* FS GS RS US */ 4017d522f475SmrgCASE_IGNORE, 4018d522f475SmrgCASE_IGNORE, 4019d522f475SmrgCASE_IGNORE, 4020d522f475SmrgCASE_IGNORE, 4021d522f475Smrg/* SP ! " # */ 4022d522f475SmrgCASE_IGNORE, 4023d522f475SmrgCASE_IGNORE, 4024d522f475SmrgCASE_IGNORE, 4025d522f475SmrgCASE_IGNORE, 4026d522f475Smrg/* $ % & ' */ 4027d522f475SmrgCASE_IGNORE, 4028d522f475SmrgCASE_IGNORE, 4029d522f475SmrgCASE_IGNORE, 4030d522f475SmrgCASE_IGNORE, 4031d522f475Smrg/* ( ) * + */ 4032d522f475SmrgCASE_IGNORE, 4033d522f475SmrgCASE_IGNORE, 4034d522f475SmrgCASE_IGNORE, 4035d522f475SmrgCASE_IGNORE, 4036d522f475Smrg/* , - . / */ 4037d522f475SmrgCASE_IGNORE, 4038d522f475SmrgCASE_IGNORE, 4039d522f475SmrgCASE_IGNORE, 4040d522f475SmrgCASE_IGNORE, 4041d522f475Smrg/* 0 1 2 3 */ 4042d522f475SmrgCASE_IGNORE, 4043d522f475SmrgCASE_IGNORE, 4044d522f475SmrgCASE_IGNORE, 4045d522f475SmrgCASE_IGNORE, 4046d522f475Smrg/* 4 5 6 7 */ 4047d522f475SmrgCASE_IGNORE, 4048d522f475SmrgCASE_IGNORE, 4049d522f475SmrgCASE_IGNORE, 4050d522f475SmrgCASE_IGNORE, 4051d522f475Smrg/* 8 9 : ; */ 4052d522f475SmrgCASE_IGNORE, 4053d522f475SmrgCASE_IGNORE, 4054d522f475SmrgCASE_IGNORE, 4055d522f475SmrgCASE_IGNORE, 4056d522f475Smrg/* < = > ? */ 4057d522f475SmrgCASE_IGNORE, 4058d522f475SmrgCASE_IGNORE, 4059d522f475SmrgCASE_IGNORE, 4060d522f475SmrgCASE_IGNORE, 4061d522f475Smrg/* @ A B C */ 4062d522f475SmrgCASE_GROUND_STATE, 4063d522f475SmrgCASE_GROUND_STATE, 4064d522f475SmrgCASE_GROUND_STATE, 4065d522f475SmrgCASE_GROUND_STATE, 4066d522f475Smrg/* D E F G */ 4067d522f475SmrgCASE_GROUND_STATE, 4068d522f475SmrgCASE_GROUND_STATE, 4069d522f475SmrgCASE_GROUND_STATE, 4070d522f475SmrgCASE_GROUND_STATE, 4071d522f475Smrg/* H I J K */ 4072d522f475SmrgCASE_GROUND_STATE, 4073d522f475SmrgCASE_GROUND_STATE, 4074d522f475SmrgCASE_GROUND_STATE, 4075d522f475SmrgCASE_GROUND_STATE, 4076d522f475Smrg/* L M N O */ 4077d522f475SmrgCASE_GROUND_STATE, 4078d522f475SmrgCASE_GROUND_STATE, 4079d522f475SmrgCASE_GROUND_STATE, 4080d522f475SmrgCASE_GROUND_STATE, 4081d522f475Smrg/* P Q R S */ 4082d522f475SmrgCASE_GROUND_STATE, 4083d522f475SmrgCASE_GROUND_STATE, 4084d522f475SmrgCASE_GROUND_STATE, 4085d522f475SmrgCASE_GROUND_STATE, 4086d522f475Smrg/* T U V W */ 4087d522f475SmrgCASE_GROUND_STATE, 4088d522f475SmrgCASE_GROUND_STATE, 4089d522f475SmrgCASE_GROUND_STATE, 4090d522f475SmrgCASE_GROUND_STATE, 4091d522f475Smrg/* X Y Z [ */ 4092d522f475SmrgCASE_GROUND_STATE, 4093d522f475SmrgCASE_GROUND_STATE, 4094d522f475SmrgCASE_GROUND_STATE, 4095d522f475SmrgCASE_GROUND_STATE, 4096d522f475Smrg/* \ ] ^ _ */ 4097d522f475SmrgCASE_GROUND_STATE, 4098d522f475SmrgCASE_GROUND_STATE, 4099d522f475SmrgCASE_GROUND_STATE, 4100d522f475SmrgCASE_GROUND_STATE, 4101d522f475Smrg/* ` a b c */ 4102d522f475SmrgCASE_GROUND_STATE, 4103d522f475SmrgCASE_GROUND_STATE, 4104d522f475SmrgCASE_GROUND_STATE, 4105d522f475SmrgCASE_GROUND_STATE, 4106d522f475Smrg/* d e f g */ 4107d522f475SmrgCASE_GROUND_STATE, 4108d522f475SmrgCASE_GROUND_STATE, 4109d522f475SmrgCASE_GROUND_STATE, 4110d522f475SmrgCASE_GROUND_STATE, 4111d522f475Smrg/* h i j k */ 4112d522f475SmrgCASE_GROUND_STATE, 4113d522f475SmrgCASE_GROUND_STATE, 4114d522f475SmrgCASE_GROUND_STATE, 4115d522f475SmrgCASE_GROUND_STATE, 4116d522f475Smrg/* l m n o */ 4117d522f475SmrgCASE_GROUND_STATE, 4118d522f475SmrgCASE_GROUND_STATE, 4119d522f475SmrgCASE_GROUND_STATE, 4120d522f475SmrgCASE_GROUND_STATE, 4121d522f475Smrg/* p q r s */ 4122d522f475SmrgCASE_GROUND_STATE, 4123d522f475SmrgCASE_GROUND_STATE, 4124d522f475SmrgCASE_GROUND_STATE, 4125d522f475SmrgCASE_GROUND_STATE, 4126d522f475Smrg/* t u v w */ 4127d522f475SmrgCASE_GROUND_STATE, 4128d522f475SmrgCASE_GROUND_STATE, 4129d522f475SmrgCASE_GROUND_STATE, 4130d522f475SmrgCASE_GROUND_STATE, 4131d522f475Smrg/* x y z { */ 4132d522f475SmrgCASE_GROUND_STATE, 4133d522f475SmrgCASE_GROUND_STATE, 4134d522f475SmrgCASE_GROUND_STATE, 4135d522f475SmrgCASE_GROUND_STATE, 4136d522f475Smrg/* | } ~ DEL */ 4137d522f475SmrgCASE_GROUND_STATE, 4138d522f475SmrgCASE_GROUND_STATE, 4139d522f475SmrgCASE_GROUND_STATE, 4140d522f475SmrgCASE_IGNORE, 4141d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 4142d522f475SmrgCASE_GROUND_STATE, 4143d522f475SmrgCASE_GROUND_STATE, 4144d522f475SmrgCASE_GROUND_STATE, 4145d522f475SmrgCASE_GROUND_STATE, 4146d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 4147d522f475SmrgCASE_IND, 4148d522f475SmrgCASE_NEL, 4149d522f475SmrgCASE_GROUND_STATE, 4150d522f475SmrgCASE_GROUND_STATE, 4151d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 4152d522f475SmrgCASE_HTS, 4153d522f475SmrgCASE_GROUND_STATE, 4154d522f475SmrgCASE_GROUND_STATE, 4155d522f475SmrgCASE_GROUND_STATE, 4156d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 4157d522f475SmrgCASE_GROUND_STATE, 4158d522f475SmrgCASE_RI, 4159d522f475SmrgCASE_SS2, 4160d522f475SmrgCASE_SS3, 4161d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 4162d522f475SmrgCASE_DCS, 4163d522f475SmrgCASE_GROUND_STATE, 4164d522f475SmrgCASE_GROUND_STATE, 4165d522f475SmrgCASE_GROUND_STATE, 4166d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 4167d522f475SmrgCASE_GROUND_STATE, 4168d522f475SmrgCASE_GROUND_STATE, 4169d522f475SmrgCASE_SPA, 4170d522f475SmrgCASE_EPA, 4171d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 4172d522f475SmrgCASE_SOS, 4173d522f475SmrgCASE_GROUND_STATE, 4174d522f475SmrgCASE_DECID, 4175d522f475SmrgCASE_CSI_STATE, 4176d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 4177d522f475SmrgCASE_ST, 4178d522f475SmrgCASE_OSC, 4179d522f475SmrgCASE_PM, 4180d522f475SmrgCASE_APC, 4181d522f475Smrg/* nobreakspace exclamdown cent sterling */ 4182d522f475SmrgCASE_IGNORE, 4183d522f475SmrgCASE_IGNORE, 4184d522f475SmrgCASE_IGNORE, 4185d522f475SmrgCASE_IGNORE, 4186d522f475Smrg/* currency yen brokenbar section */ 4187d522f475SmrgCASE_IGNORE, 4188d522f475SmrgCASE_IGNORE, 4189d522f475SmrgCASE_IGNORE, 4190d522f475SmrgCASE_IGNORE, 4191d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 4192d522f475SmrgCASE_IGNORE, 4193d522f475SmrgCASE_IGNORE, 4194d522f475SmrgCASE_IGNORE, 4195d522f475SmrgCASE_IGNORE, 4196d522f475Smrg/* notsign hyphen registered macron */ 4197d522f475SmrgCASE_IGNORE, 4198d522f475SmrgCASE_IGNORE, 4199d522f475SmrgCASE_IGNORE, 4200d522f475SmrgCASE_IGNORE, 4201d522f475Smrg/* degree plusminus twosuperior threesuperior */ 4202d522f475SmrgCASE_IGNORE, 4203d522f475SmrgCASE_IGNORE, 4204d522f475SmrgCASE_IGNORE, 4205d522f475SmrgCASE_IGNORE, 4206d522f475Smrg/* acute mu paragraph periodcentered */ 4207d522f475SmrgCASE_IGNORE, 4208d522f475SmrgCASE_IGNORE, 4209d522f475SmrgCASE_IGNORE, 4210d522f475SmrgCASE_IGNORE, 4211d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 4212d522f475SmrgCASE_IGNORE, 4213d522f475SmrgCASE_IGNORE, 4214d522f475SmrgCASE_IGNORE, 4215d522f475SmrgCASE_IGNORE, 4216d522f475Smrg/* onequarter onehalf threequarters questiondown */ 4217d522f475SmrgCASE_IGNORE, 4218d522f475SmrgCASE_IGNORE, 4219d522f475SmrgCASE_IGNORE, 4220d522f475SmrgCASE_IGNORE, 4221d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 4222d522f475SmrgCASE_GROUND_STATE, 4223d522f475SmrgCASE_GROUND_STATE, 4224d522f475SmrgCASE_GROUND_STATE, 4225d522f475SmrgCASE_GROUND_STATE, 4226d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 4227d522f475SmrgCASE_GROUND_STATE, 4228d522f475SmrgCASE_GROUND_STATE, 4229d522f475SmrgCASE_GROUND_STATE, 4230d522f475SmrgCASE_GROUND_STATE, 4231d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 4232d522f475SmrgCASE_GROUND_STATE, 4233d522f475SmrgCASE_GROUND_STATE, 4234d522f475SmrgCASE_GROUND_STATE, 4235d522f475SmrgCASE_GROUND_STATE, 4236d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 4237d522f475SmrgCASE_GROUND_STATE, 4238d522f475SmrgCASE_GROUND_STATE, 4239d522f475SmrgCASE_GROUND_STATE, 4240d522f475SmrgCASE_GROUND_STATE, 4241d522f475Smrg/* Eth Ntilde Ograve Oacute */ 4242d522f475SmrgCASE_GROUND_STATE, 4243d522f475SmrgCASE_GROUND_STATE, 4244d522f475SmrgCASE_GROUND_STATE, 4245d522f475SmrgCASE_GROUND_STATE, 4246d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 4247d522f475SmrgCASE_GROUND_STATE, 4248d522f475SmrgCASE_GROUND_STATE, 4249d522f475SmrgCASE_GROUND_STATE, 4250d522f475SmrgCASE_GROUND_STATE, 4251d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 4252d522f475SmrgCASE_GROUND_STATE, 4253d522f475SmrgCASE_GROUND_STATE, 4254d522f475SmrgCASE_GROUND_STATE, 4255d522f475SmrgCASE_GROUND_STATE, 4256d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 4257d522f475SmrgCASE_GROUND_STATE, 4258d522f475SmrgCASE_GROUND_STATE, 4259d522f475SmrgCASE_GROUND_STATE, 4260d522f475SmrgCASE_GROUND_STATE, 4261d522f475Smrg/* agrave aacute acircumflex atilde */ 4262d522f475SmrgCASE_GROUND_STATE, 4263d522f475SmrgCASE_GROUND_STATE, 4264d522f475SmrgCASE_GROUND_STATE, 4265d522f475SmrgCASE_GROUND_STATE, 4266d522f475Smrg/* adiaeresis aring ae ccedilla */ 4267d522f475SmrgCASE_GROUND_STATE, 4268d522f475SmrgCASE_GROUND_STATE, 4269d522f475SmrgCASE_GROUND_STATE, 4270d522f475SmrgCASE_GROUND_STATE, 4271d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 4272d522f475SmrgCASE_GROUND_STATE, 4273d522f475SmrgCASE_GROUND_STATE, 4274d522f475SmrgCASE_GROUND_STATE, 4275d522f475SmrgCASE_GROUND_STATE, 4276d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 4277d522f475SmrgCASE_GROUND_STATE, 4278d522f475SmrgCASE_GROUND_STATE, 4279d522f475SmrgCASE_GROUND_STATE, 4280d522f475SmrgCASE_GROUND_STATE, 4281d522f475Smrg/* eth ntilde ograve oacute */ 4282d522f475SmrgCASE_GROUND_STATE, 4283d522f475SmrgCASE_GROUND_STATE, 4284d522f475SmrgCASE_GROUND_STATE, 4285d522f475SmrgCASE_GROUND_STATE, 4286d522f475Smrg/* ocircumflex otilde odiaeresis division */ 4287d522f475SmrgCASE_GROUND_STATE, 4288d522f475SmrgCASE_GROUND_STATE, 4289d522f475SmrgCASE_GROUND_STATE, 4290d522f475SmrgCASE_GROUND_STATE, 4291d522f475Smrg/* oslash ugrave uacute ucircumflex */ 4292d522f475SmrgCASE_GROUND_STATE, 4293d522f475SmrgCASE_GROUND_STATE, 4294d522f475SmrgCASE_GROUND_STATE, 4295d522f475SmrgCASE_GROUND_STATE, 4296d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 4297d522f475SmrgCASE_GROUND_STATE, 4298d522f475SmrgCASE_GROUND_STATE, 4299d522f475SmrgCASE_GROUND_STATE, 4300d522f475SmrgCASE_IGNORE, 4301d522f475Smrg}; 4302d522f475Smrg 4303d522f475SmrgConst PARSE_T eigtable[] = /* CASE_ESC_IGNORE */ 4304d522f475Smrg{ 4305d522f475Smrg/* NUL SOH STX ETX */ 4306d522f475SmrgCASE_IGNORE, 4307d522f475SmrgCASE_IGNORE, 4308d522f475SmrgCASE_IGNORE, 4309d522f475SmrgCASE_IGNORE, 4310d522f475Smrg/* EOT ENQ ACK BEL */ 4311d522f475SmrgCASE_IGNORE, 4312d522f475SmrgCASE_ENQ, 4313d522f475SmrgCASE_IGNORE, 4314d522f475SmrgCASE_BELL, 4315d522f475Smrg/* BS HT NL VT */ 4316d522f475SmrgCASE_BS, 4317d522f475SmrgCASE_TAB, 4318d522f475SmrgCASE_VMOT, 4319d522f475SmrgCASE_VMOT, 4320d522f475Smrg/* NP CR SO SI */ 4321d522f475SmrgCASE_VMOT, 4322d522f475SmrgCASE_CR, 4323d522f475SmrgCASE_SO, 4324d522f475SmrgCASE_SI, 4325d522f475Smrg/* DLE DC1 DC2 DC3 */ 4326d522f475SmrgCASE_IGNORE, 4327d522f475SmrgCASE_IGNORE, 4328d522f475SmrgCASE_IGNORE, 4329d522f475SmrgCASE_IGNORE, 4330d522f475Smrg/* DC4 NAK SYN ETB */ 4331d522f475SmrgCASE_IGNORE, 4332d522f475SmrgCASE_IGNORE, 4333d522f475SmrgCASE_IGNORE, 4334d522f475SmrgCASE_IGNORE, 4335d522f475Smrg/* CAN EM SUB ESC */ 4336d522f475SmrgCASE_GROUND_STATE, 4337d522f475SmrgCASE_IGNORE, 4338d522f475SmrgCASE_GROUND_STATE, 4339d522f475SmrgCASE_ESC, 4340d522f475Smrg/* FS GS RS US */ 4341d522f475SmrgCASE_IGNORE, 4342d522f475SmrgCASE_IGNORE, 4343d522f475SmrgCASE_IGNORE, 4344d522f475SmrgCASE_IGNORE, 4345d522f475Smrg/* SP ! " # */ 4346d522f475SmrgCASE_IGNORE, 4347d522f475SmrgCASE_IGNORE, 4348d522f475SmrgCASE_IGNORE, 4349d522f475SmrgCASE_IGNORE, 4350d522f475Smrg/* $ % & ' */ 4351d522f475SmrgCASE_IGNORE, 4352d522f475SmrgCASE_IGNORE, 4353d522f475SmrgCASE_IGNORE, 4354d522f475SmrgCASE_IGNORE, 4355d522f475Smrg/* ( ) * + */ 4356d522f475SmrgCASE_IGNORE, 4357d522f475SmrgCASE_IGNORE, 4358d522f475SmrgCASE_IGNORE, 4359d522f475SmrgCASE_IGNORE, 4360d522f475Smrg/* , - . / */ 4361d522f475SmrgCASE_IGNORE, 4362d522f475SmrgCASE_IGNORE, 4363d522f475SmrgCASE_IGNORE, 4364d522f475SmrgCASE_IGNORE, 4365d522f475Smrg/* 0 1 2 3 */ 4366d522f475SmrgCASE_GROUND_STATE, 4367d522f475SmrgCASE_GROUND_STATE, 4368d522f475SmrgCASE_GROUND_STATE, 4369d522f475SmrgCASE_GROUND_STATE, 4370d522f475Smrg/* 4 5 6 7 */ 4371d522f475SmrgCASE_GROUND_STATE, 4372d522f475SmrgCASE_GROUND_STATE, 4373d522f475SmrgCASE_GROUND_STATE, 4374d522f475SmrgCASE_GROUND_STATE, 4375d522f475Smrg/* 8 9 : ; */ 4376d522f475SmrgCASE_GROUND_STATE, 4377d522f475SmrgCASE_GROUND_STATE, 4378d522f475SmrgCASE_GROUND_STATE, 4379d522f475SmrgCASE_GROUND_STATE, 4380d522f475Smrg/* < = > ? */ 4381d522f475SmrgCASE_GROUND_STATE, 4382d522f475SmrgCASE_GROUND_STATE, 4383d522f475SmrgCASE_GROUND_STATE, 4384d522f475SmrgCASE_GROUND_STATE, 4385d522f475Smrg/* @ A B C */ 4386d522f475SmrgCASE_GROUND_STATE, 4387d522f475SmrgCASE_GROUND_STATE, 4388d522f475SmrgCASE_GROUND_STATE, 4389d522f475SmrgCASE_GROUND_STATE, 4390d522f475Smrg/* D E F G */ 4391d522f475SmrgCASE_GROUND_STATE, 4392d522f475SmrgCASE_GROUND_STATE, 4393d522f475SmrgCASE_GROUND_STATE, 4394d522f475SmrgCASE_GROUND_STATE, 4395d522f475Smrg/* H I J K */ 4396d522f475SmrgCASE_GROUND_STATE, 4397d522f475SmrgCASE_GROUND_STATE, 4398d522f475SmrgCASE_GROUND_STATE, 4399d522f475SmrgCASE_GROUND_STATE, 4400d522f475Smrg/* L M N O */ 4401d522f475SmrgCASE_GROUND_STATE, 4402d522f475SmrgCASE_GROUND_STATE, 4403d522f475SmrgCASE_GROUND_STATE, 4404d522f475SmrgCASE_GROUND_STATE, 4405d522f475Smrg/* P Q R S */ 4406d522f475SmrgCASE_GROUND_STATE, 4407d522f475SmrgCASE_GROUND_STATE, 4408d522f475SmrgCASE_GROUND_STATE, 4409d522f475SmrgCASE_GROUND_STATE, 4410d522f475Smrg/* T U V W */ 4411d522f475SmrgCASE_GROUND_STATE, 4412d522f475SmrgCASE_GROUND_STATE, 4413d522f475SmrgCASE_GROUND_STATE, 4414d522f475SmrgCASE_GROUND_STATE, 4415d522f475Smrg/* X Y Z [ */ 4416d522f475SmrgCASE_GROUND_STATE, 4417d522f475SmrgCASE_GROUND_STATE, 4418d522f475SmrgCASE_GROUND_STATE, 4419d522f475SmrgCASE_GROUND_STATE, 4420d522f475Smrg/* \ ] ^ _ */ 4421d522f475SmrgCASE_GROUND_STATE, 4422d522f475SmrgCASE_GROUND_STATE, 4423d522f475SmrgCASE_GROUND_STATE, 4424d522f475SmrgCASE_GROUND_STATE, 4425d522f475Smrg/* ` a b c */ 4426d522f475SmrgCASE_GROUND_STATE, 4427d522f475SmrgCASE_GROUND_STATE, 4428d522f475SmrgCASE_GROUND_STATE, 4429d522f475SmrgCASE_GROUND_STATE, 4430d522f475Smrg/* d e f g */ 4431d522f475SmrgCASE_GROUND_STATE, 4432d522f475SmrgCASE_GROUND_STATE, 4433d522f475SmrgCASE_GROUND_STATE, 4434d522f475SmrgCASE_GROUND_STATE, 4435d522f475Smrg/* h i j k */ 4436d522f475SmrgCASE_GROUND_STATE, 4437d522f475SmrgCASE_GROUND_STATE, 4438d522f475SmrgCASE_GROUND_STATE, 4439d522f475SmrgCASE_GROUND_STATE, 4440d522f475Smrg/* l m n o */ 4441d522f475SmrgCASE_GROUND_STATE, 4442d522f475SmrgCASE_GROUND_STATE, 4443d522f475SmrgCASE_GROUND_STATE, 4444d522f475SmrgCASE_GROUND_STATE, 4445d522f475Smrg/* p q r s */ 4446d522f475SmrgCASE_GROUND_STATE, 4447d522f475SmrgCASE_GROUND_STATE, 4448d522f475SmrgCASE_GROUND_STATE, 4449d522f475SmrgCASE_GROUND_STATE, 4450d522f475Smrg/* t u v w */ 4451d522f475SmrgCASE_GROUND_STATE, 4452d522f475SmrgCASE_GROUND_STATE, 4453d522f475SmrgCASE_GROUND_STATE, 4454d522f475SmrgCASE_GROUND_STATE, 4455d522f475Smrg/* x y z { */ 4456d522f475SmrgCASE_GROUND_STATE, 4457d522f475SmrgCASE_GROUND_STATE, 4458d522f475SmrgCASE_GROUND_STATE, 4459d522f475SmrgCASE_GROUND_STATE, 4460d522f475Smrg/* | } ~ DEL */ 4461d522f475SmrgCASE_GROUND_STATE, 4462d522f475SmrgCASE_GROUND_STATE, 4463d522f475SmrgCASE_GROUND_STATE, 4464d522f475SmrgCASE_IGNORE, 4465d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 4466d522f475SmrgCASE_GROUND_STATE, 4467d522f475SmrgCASE_GROUND_STATE, 4468d522f475SmrgCASE_GROUND_STATE, 4469d522f475SmrgCASE_GROUND_STATE, 4470d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 4471d522f475SmrgCASE_IND, 4472d522f475SmrgCASE_NEL, 4473d522f475SmrgCASE_GROUND_STATE, 4474d522f475SmrgCASE_GROUND_STATE, 4475d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 4476d522f475SmrgCASE_HTS, 4477d522f475SmrgCASE_GROUND_STATE, 4478d522f475SmrgCASE_GROUND_STATE, 4479d522f475SmrgCASE_GROUND_STATE, 4480d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 4481d522f475SmrgCASE_GROUND_STATE, 4482d522f475SmrgCASE_RI, 4483d522f475SmrgCASE_SS2, 4484d522f475SmrgCASE_SS3, 4485d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 4486d522f475SmrgCASE_DCS, 4487d522f475SmrgCASE_GROUND_STATE, 4488d522f475SmrgCASE_GROUND_STATE, 4489d522f475SmrgCASE_GROUND_STATE, 4490d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 4491d522f475SmrgCASE_GROUND_STATE, 4492d522f475SmrgCASE_GROUND_STATE, 4493d522f475SmrgCASE_SPA, 4494d522f475SmrgCASE_EPA, 4495d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 4496d522f475SmrgCASE_SOS, 4497d522f475SmrgCASE_GROUND_STATE, 4498d522f475SmrgCASE_DECID, 4499d522f475SmrgCASE_CSI_STATE, 4500d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 4501d522f475SmrgCASE_ST, 4502d522f475SmrgCASE_OSC, 4503d522f475SmrgCASE_PM, 4504d522f475SmrgCASE_APC, 4505d522f475Smrg/* nobreakspace exclamdown cent sterling */ 4506d522f475SmrgCASE_IGNORE, 4507d522f475SmrgCASE_IGNORE, 4508d522f475SmrgCASE_IGNORE, 4509d522f475SmrgCASE_IGNORE, 4510d522f475Smrg/* currency yen brokenbar section */ 4511d522f475SmrgCASE_IGNORE, 4512d522f475SmrgCASE_IGNORE, 4513d522f475SmrgCASE_IGNORE, 4514d522f475SmrgCASE_IGNORE, 4515d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 4516d522f475SmrgCASE_IGNORE, 4517d522f475SmrgCASE_IGNORE, 4518d522f475SmrgCASE_IGNORE, 4519d522f475SmrgCASE_IGNORE, 4520d522f475Smrg/* notsign hyphen registered macron */ 4521d522f475SmrgCASE_IGNORE, 4522d522f475SmrgCASE_IGNORE, 4523d522f475SmrgCASE_IGNORE, 4524d522f475SmrgCASE_IGNORE, 4525d522f475Smrg/* degree plusminus twosuperior threesuperior */ 4526d522f475SmrgCASE_GROUND_STATE, 4527d522f475SmrgCASE_GROUND_STATE, 4528d522f475SmrgCASE_GROUND_STATE, 4529d522f475SmrgCASE_GROUND_STATE, 4530d522f475Smrg/* acute mu paragraph periodcentered */ 4531d522f475SmrgCASE_GROUND_STATE, 4532d522f475SmrgCASE_GROUND_STATE, 4533d522f475SmrgCASE_GROUND_STATE, 4534d522f475SmrgCASE_GROUND_STATE, 4535d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 4536d522f475SmrgCASE_GROUND_STATE, 4537d522f475SmrgCASE_GROUND_STATE, 4538d522f475SmrgCASE_GROUND_STATE, 4539d522f475SmrgCASE_GROUND_STATE, 4540d522f475Smrg/* onequarter onehalf threequarters questiondown */ 4541d522f475SmrgCASE_GROUND_STATE, 4542d522f475SmrgCASE_GROUND_STATE, 4543d522f475SmrgCASE_GROUND_STATE, 4544d522f475SmrgCASE_GROUND_STATE, 4545d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 4546d522f475SmrgCASE_GROUND_STATE, 4547d522f475SmrgCASE_GROUND_STATE, 4548d522f475SmrgCASE_GROUND_STATE, 4549d522f475SmrgCASE_GROUND_STATE, 4550d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 4551d522f475SmrgCASE_GROUND_STATE, 4552d522f475SmrgCASE_GROUND_STATE, 4553d522f475SmrgCASE_GROUND_STATE, 4554d522f475SmrgCASE_GROUND_STATE, 4555d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 4556d522f475SmrgCASE_GROUND_STATE, 4557d522f475SmrgCASE_GROUND_STATE, 4558d522f475SmrgCASE_GROUND_STATE, 4559d522f475SmrgCASE_GROUND_STATE, 4560d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 4561d522f475SmrgCASE_GROUND_STATE, 4562d522f475SmrgCASE_GROUND_STATE, 4563d522f475SmrgCASE_GROUND_STATE, 4564d522f475SmrgCASE_GROUND_STATE, 4565d522f475Smrg/* Eth Ntilde Ograve Oacute */ 4566d522f475SmrgCASE_GROUND_STATE, 4567d522f475SmrgCASE_GROUND_STATE, 4568d522f475SmrgCASE_GROUND_STATE, 4569d522f475SmrgCASE_GROUND_STATE, 4570d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 4571d522f475SmrgCASE_GROUND_STATE, 4572d522f475SmrgCASE_GROUND_STATE, 4573d522f475SmrgCASE_GROUND_STATE, 4574d522f475SmrgCASE_GROUND_STATE, 4575d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 4576d522f475SmrgCASE_GROUND_STATE, 4577d522f475SmrgCASE_GROUND_STATE, 4578d522f475SmrgCASE_GROUND_STATE, 4579d522f475SmrgCASE_GROUND_STATE, 4580d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 4581d522f475SmrgCASE_GROUND_STATE, 4582d522f475SmrgCASE_GROUND_STATE, 4583d522f475SmrgCASE_GROUND_STATE, 4584d522f475SmrgCASE_GROUND_STATE, 4585d522f475Smrg/* agrave aacute acircumflex atilde */ 4586d522f475SmrgCASE_GROUND_STATE, 4587d522f475SmrgCASE_GROUND_STATE, 4588d522f475SmrgCASE_GROUND_STATE, 4589d522f475SmrgCASE_GROUND_STATE, 4590d522f475Smrg/* adiaeresis aring ae ccedilla */ 4591d522f475SmrgCASE_GROUND_STATE, 4592d522f475SmrgCASE_GROUND_STATE, 4593d522f475SmrgCASE_GROUND_STATE, 4594d522f475SmrgCASE_GROUND_STATE, 4595d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 4596d522f475SmrgCASE_GROUND_STATE, 4597d522f475SmrgCASE_GROUND_STATE, 4598d522f475SmrgCASE_GROUND_STATE, 4599d522f475SmrgCASE_GROUND_STATE, 4600d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 4601d522f475SmrgCASE_GROUND_STATE, 4602d522f475SmrgCASE_GROUND_STATE, 4603d522f475SmrgCASE_GROUND_STATE, 4604d522f475SmrgCASE_GROUND_STATE, 4605d522f475Smrg/* eth ntilde ograve oacute */ 4606d522f475SmrgCASE_GROUND_STATE, 4607d522f475SmrgCASE_GROUND_STATE, 4608d522f475SmrgCASE_GROUND_STATE, 4609d522f475SmrgCASE_GROUND_STATE, 4610d522f475Smrg/* ocircumflex otilde odiaeresis division */ 4611d522f475SmrgCASE_GROUND_STATE, 4612d522f475SmrgCASE_GROUND_STATE, 4613d522f475SmrgCASE_GROUND_STATE, 4614d522f475SmrgCASE_GROUND_STATE, 4615d522f475Smrg/* oslash ugrave uacute ucircumflex */ 4616d522f475SmrgCASE_GROUND_STATE, 4617d522f475SmrgCASE_GROUND_STATE, 4618d522f475SmrgCASE_GROUND_STATE, 4619d522f475SmrgCASE_GROUND_STATE, 4620d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 4621d522f475SmrgCASE_GROUND_STATE, 4622d522f475SmrgCASE_GROUND_STATE, 4623d522f475SmrgCASE_GROUND_STATE, 4624d522f475SmrgCASE_IGNORE, 4625d522f475Smrg}; 4626d522f475Smrg 4627d522f475SmrgConst PARSE_T esc_table[] = /* ESC */ 4628d522f475Smrg{ 4629d522f475Smrg/* NUL SOH STX ETX */ 4630d522f475SmrgCASE_IGNORE, 4631d522f475SmrgCASE_IGNORE, 4632d522f475SmrgCASE_IGNORE, 4633d522f475SmrgCASE_IGNORE, 4634d522f475Smrg/* EOT ENQ ACK BEL */ 4635d522f475SmrgCASE_IGNORE, 4636d522f475SmrgCASE_ENQ, 4637d522f475SmrgCASE_IGNORE, 4638d522f475SmrgCASE_BELL, 4639d522f475Smrg/* BS HT NL VT */ 4640d522f475SmrgCASE_BS, 4641d522f475SmrgCASE_TAB, 4642d522f475SmrgCASE_VMOT, 4643d522f475SmrgCASE_VMOT, 4644d522f475Smrg/* NP CR SO SI */ 4645d522f475SmrgCASE_VMOT, 4646d522f475SmrgCASE_CR, 4647d522f475SmrgCASE_SO, 4648d522f475SmrgCASE_SI, 4649d522f475Smrg/* DLE DC1 DC2 DC3 */ 4650d522f475SmrgCASE_IGNORE, 4651d522f475SmrgCASE_IGNORE, 4652d522f475SmrgCASE_IGNORE, 4653d522f475SmrgCASE_IGNORE, 4654d522f475Smrg/* DC4 NAK SYN ETB */ 4655d522f475SmrgCASE_IGNORE, 4656d522f475SmrgCASE_IGNORE, 4657d522f475SmrgCASE_IGNORE, 4658d522f475SmrgCASE_IGNORE, 4659d522f475Smrg/* CAN EM SUB ESC */ 4660d522f475SmrgCASE_GROUND_STATE, 4661d522f475SmrgCASE_IGNORE, 4662d522f475SmrgCASE_GROUND_STATE, 4663d522f475SmrgCASE_ESC, 4664d522f475Smrg/* FS GS RS US */ 4665d522f475SmrgCASE_IGNORE, 4666d522f475SmrgCASE_IGNORE, 4667d522f475SmrgCASE_IGNORE, 4668d522f475SmrgCASE_IGNORE, 4669d522f475Smrg/* SP ! " # */ 4670d522f475SmrgCASE_ESC_SP_STATE, 4671d522f475SmrgCASE_ESC_IGNORE, 4672d522f475SmrgCASE_ESC_IGNORE, 4673d522f475SmrgCASE_SCR_STATE, 4674d522f475Smrg/* $ % & ' */ 4675d522f475SmrgCASE_ESC_IGNORE, 4676d522f475SmrgCASE_ESC_PERCENT, 4677d522f475SmrgCASE_ESC_IGNORE, 4678d522f475SmrgCASE_ESC_IGNORE, 4679d522f475Smrg/* ( ) * + */ 4680d522f475SmrgCASE_SCS0_STATE, 4681d522f475SmrgCASE_SCS1_STATE, 4682d522f475SmrgCASE_SCS2_STATE, 4683d522f475SmrgCASE_SCS3_STATE, 4684d522f475Smrg/* , - . / */ 4685d522f475SmrgCASE_ESC_IGNORE, 46862eaa94a1SchristosCASE_SCS1A_STATE, 46872eaa94a1SchristosCASE_SCS2A_STATE, 46882eaa94a1SchristosCASE_SCS3A_STATE, 4689d522f475Smrg/* 0 1 2 3 */ 4690d522f475SmrgCASE_GROUND_STATE, 4691d522f475SmrgCASE_GROUND_STATE, 4692d522f475SmrgCASE_GROUND_STATE, 4693d522f475SmrgCASE_GROUND_STATE, 4694d522f475Smrg/* 4 5 6 7 */ 4695d522f475SmrgCASE_GROUND_STATE, 4696d522f475SmrgCASE_GROUND_STATE, 4697d522f475SmrgCASE_GROUND_STATE, 4698d522f475SmrgCASE_DECSC, 4699d522f475Smrg/* 8 9 : ; */ 4700d522f475SmrgCASE_DECRC, 4701d522f475SmrgCASE_GROUND_STATE, 4702d522f475SmrgCASE_GROUND_STATE, 4703d522f475SmrgCASE_GROUND_STATE, 4704d522f475Smrg/* < = > ? */ 4705d522f475SmrgCASE_GROUND_STATE, 4706d522f475SmrgCASE_DECKPAM, 4707d522f475SmrgCASE_DECKPNM, 4708d522f475SmrgCASE_GROUND_STATE, 4709d522f475Smrg/* @ A B C */ 4710d522f475SmrgCASE_GROUND_STATE, 4711d522f475SmrgCASE_GROUND_STATE, 4712d522f475SmrgCASE_GROUND_STATE, 4713d522f475SmrgCASE_GROUND_STATE, 4714d522f475Smrg/* D E F G */ 4715d522f475SmrgCASE_IND, 4716d522f475SmrgCASE_NEL, 4717d522f475SmrgCASE_HP_BUGGY_LL, 4718d522f475SmrgCASE_GROUND_STATE, 4719d522f475Smrg/* H I J K */ 4720d522f475SmrgCASE_HTS, 4721d522f475SmrgCASE_GROUND_STATE, 4722d522f475SmrgCASE_GROUND_STATE, 4723d522f475SmrgCASE_GROUND_STATE, 4724d522f475Smrg/* L M N O */ 4725d522f475SmrgCASE_GROUND_STATE, 4726d522f475SmrgCASE_RI, 4727d522f475SmrgCASE_SS2, 4728d522f475SmrgCASE_SS3, 4729d522f475Smrg/* P Q R S */ 4730d522f475SmrgCASE_DCS, 4731d522f475SmrgCASE_GROUND_STATE, 4732d522f475SmrgCASE_GROUND_STATE, 4733d522f475SmrgCASE_GROUND_STATE, 4734d522f475Smrg/* T U V W */ 4735d522f475SmrgCASE_XTERM_TITLE, 4736d522f475SmrgCASE_GROUND_STATE, 4737d522f475SmrgCASE_SPA, 4738d522f475SmrgCASE_EPA, 4739d522f475Smrg/* X Y Z [ */ 4740d522f475SmrgCASE_SOS, 4741d522f475SmrgCASE_GROUND_STATE, 4742d522f475SmrgCASE_DECID, 4743d522f475SmrgCASE_CSI_STATE, 4744d522f475Smrg/* \ ] ^ _ */ 4745d522f475SmrgCASE_ST, 4746d522f475SmrgCASE_OSC, 4747d522f475SmrgCASE_PM, 4748d522f475SmrgCASE_APC, 4749d522f475Smrg/* ` a b c */ 4750d522f475SmrgCASE_GROUND_STATE, 4751d522f475SmrgCASE_GROUND_STATE, 4752d522f475SmrgCASE_GROUND_STATE, 4753d522f475SmrgCASE_RIS, 4754d522f475Smrg/* d e f g */ 4755d522f475SmrgCASE_GROUND_STATE, 4756d522f475SmrgCASE_GROUND_STATE, 4757d522f475SmrgCASE_GROUND_STATE, 4758d522f475SmrgCASE_GROUND_STATE, 4759d522f475Smrg/* h i j k */ 4760d522f475SmrgCASE_GROUND_STATE, 4761d522f475SmrgCASE_GROUND_STATE, 4762d522f475SmrgCASE_GROUND_STATE, 4763d522f475SmrgCASE_GROUND_STATE, 4764d522f475Smrg/* l m n o */ 4765d522f475SmrgCASE_HP_MEM_LOCK, 4766d522f475SmrgCASE_HP_MEM_UNLOCK, 4767d522f475SmrgCASE_LS2, 4768d522f475SmrgCASE_LS3, 4769d522f475Smrg/* p q r s */ 4770d522f475SmrgCASE_GROUND_STATE, 4771d522f475SmrgCASE_GROUND_STATE, 4772d522f475SmrgCASE_GROUND_STATE, 4773d522f475SmrgCASE_GROUND_STATE, 4774d522f475Smrg/* t u v w */ 4775d522f475SmrgCASE_GROUND_STATE, 4776d522f475SmrgCASE_GROUND_STATE, 4777d522f475SmrgCASE_GROUND_STATE, 4778d522f475SmrgCASE_GROUND_STATE, 4779d522f475Smrg/* x y z { */ 4780d522f475SmrgCASE_GROUND_STATE, 4781d522f475SmrgCASE_GROUND_STATE, 4782d522f475SmrgCASE_GROUND_STATE, 4783d522f475SmrgCASE_GROUND_STATE, 4784d522f475Smrg/* | } ~ DEL */ 4785d522f475SmrgCASE_LS3R, 4786d522f475SmrgCASE_LS2R, 4787d522f475SmrgCASE_LS1R, 4788d522f475SmrgCASE_IGNORE, 4789d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 4790d522f475SmrgCASE_GROUND_STATE, 4791d522f475SmrgCASE_GROUND_STATE, 4792d522f475SmrgCASE_GROUND_STATE, 4793d522f475SmrgCASE_GROUND_STATE, 4794d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 4795d522f475SmrgCASE_IND, 4796d522f475SmrgCASE_NEL, 4797d522f475SmrgCASE_GROUND_STATE, 4798d522f475SmrgCASE_GROUND_STATE, 4799d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 4800d522f475SmrgCASE_HTS, 4801d522f475SmrgCASE_GROUND_STATE, 4802d522f475SmrgCASE_GROUND_STATE, 4803d522f475SmrgCASE_GROUND_STATE, 4804d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 4805d522f475SmrgCASE_GROUND_STATE, 4806d522f475SmrgCASE_RI, 4807d522f475SmrgCASE_SS2, 4808d522f475SmrgCASE_SS3, 4809d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 4810d522f475SmrgCASE_DCS, 4811d522f475SmrgCASE_GROUND_STATE, 4812d522f475SmrgCASE_GROUND_STATE, 4813d522f475SmrgCASE_GROUND_STATE, 4814d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 4815d522f475SmrgCASE_GROUND_STATE, 4816d522f475SmrgCASE_GROUND_STATE, 4817d522f475SmrgCASE_SPA, 4818d522f475SmrgCASE_EPA, 4819d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 4820d522f475SmrgCASE_SOS, 4821d522f475SmrgCASE_GROUND_STATE, 4822d522f475SmrgCASE_DECID, 4823d522f475SmrgCASE_CSI_STATE, 4824d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 4825d522f475SmrgCASE_ST, 4826d522f475SmrgCASE_OSC, 4827d522f475SmrgCASE_PM, 4828d522f475SmrgCASE_APC, 4829d522f475Smrg/* nobreakspace exclamdown cent sterling */ 4830d522f475SmrgCASE_ESC_SP_STATE, 4831d522f475SmrgCASE_ESC_IGNORE, 4832d522f475SmrgCASE_ESC_IGNORE, 4833d522f475SmrgCASE_SCR_STATE, 4834d522f475Smrg/* currency yen brokenbar section */ 4835d522f475SmrgCASE_ESC_IGNORE, 4836d522f475SmrgCASE_ESC_PERCENT, 4837d522f475SmrgCASE_ESC_IGNORE, 4838d522f475SmrgCASE_ESC_IGNORE, 4839d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 4840d522f475SmrgCASE_SCS0_STATE, 4841d522f475SmrgCASE_SCS1_STATE, 4842d522f475SmrgCASE_SCS2_STATE, 4843d522f475SmrgCASE_SCS3_STATE, 4844d522f475Smrg/* notsign hyphen registered macron */ 4845d522f475SmrgCASE_ESC_IGNORE, 48462eaa94a1SchristosCASE_SCS1A_STATE, 48472eaa94a1SchristosCASE_SCS2A_STATE, 48482eaa94a1SchristosCASE_SCS3A_STATE, 4849d522f475Smrg/* degree plusminus twosuperior threesuperior */ 4850d522f475SmrgCASE_GROUND_STATE, 4851d522f475SmrgCASE_GROUND_STATE, 4852d522f475SmrgCASE_GROUND_STATE, 4853d522f475SmrgCASE_GROUND_STATE, 4854d522f475Smrg/* acute mu paragraph periodcentered */ 4855d522f475SmrgCASE_GROUND_STATE, 4856d522f475SmrgCASE_GROUND_STATE, 4857d522f475SmrgCASE_GROUND_STATE, 4858d522f475SmrgCASE_DECSC, 4859d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 4860d522f475SmrgCASE_DECRC, 4861d522f475SmrgCASE_GROUND_STATE, 4862d522f475SmrgCASE_GROUND_STATE, 4863d522f475SmrgCASE_GROUND_STATE, 4864d522f475Smrg/* onequarter onehalf threequarters questiondown */ 4865d522f475SmrgCASE_GROUND_STATE, 4866d522f475SmrgCASE_DECKPAM, 4867d522f475SmrgCASE_DECKPNM, 4868d522f475SmrgCASE_GROUND_STATE, 4869d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 4870d522f475SmrgCASE_GROUND_STATE, 4871d522f475SmrgCASE_GROUND_STATE, 4872d522f475SmrgCASE_GROUND_STATE, 4873d522f475SmrgCASE_GROUND_STATE, 4874d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 4875d522f475SmrgCASE_IND, 4876d522f475SmrgCASE_NEL, 4877d522f475SmrgCASE_HP_BUGGY_LL, 4878d522f475SmrgCASE_GROUND_STATE, 4879d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 4880d522f475SmrgCASE_HTS, 4881d522f475SmrgCASE_GROUND_STATE, 4882d522f475SmrgCASE_GROUND_STATE, 4883d522f475SmrgCASE_GROUND_STATE, 4884d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 4885d522f475SmrgCASE_GROUND_STATE, 4886d522f475SmrgCASE_RI, 4887d522f475SmrgCASE_SS2, 4888d522f475SmrgCASE_SS3, 4889d522f475Smrg/* Eth Ntilde Ograve Oacute */ 4890d522f475SmrgCASE_DCS, 4891d522f475SmrgCASE_GROUND_STATE, 4892d522f475SmrgCASE_GROUND_STATE, 4893d522f475SmrgCASE_GROUND_STATE, 4894d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 4895d522f475SmrgCASE_XTERM_TITLE, 4896d522f475SmrgCASE_GROUND_STATE, 4897d522f475SmrgCASE_SPA, 4898d522f475SmrgCASE_EPA, 4899d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 4900d522f475SmrgCASE_SOS, 4901d522f475SmrgCASE_GROUND_STATE, 4902d522f475SmrgCASE_DECID, 4903d522f475SmrgCASE_CSI_STATE, 4904d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 4905d522f475SmrgCASE_ST, 4906d522f475SmrgCASE_OSC, 4907d522f475SmrgCASE_PM, 4908d522f475SmrgCASE_APC, 4909d522f475Smrg/* agrave aacute acircumflex atilde */ 4910d522f475SmrgCASE_GROUND_STATE, 4911d522f475SmrgCASE_GROUND_STATE, 4912d522f475SmrgCASE_GROUND_STATE, 4913d522f475SmrgCASE_RIS, 4914d522f475Smrg/* adiaeresis aring ae ccedilla */ 4915d522f475SmrgCASE_GROUND_STATE, 4916d522f475SmrgCASE_GROUND_STATE, 4917d522f475SmrgCASE_GROUND_STATE, 4918d522f475SmrgCASE_GROUND_STATE, 4919d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 4920d522f475SmrgCASE_GROUND_STATE, 4921d522f475SmrgCASE_GROUND_STATE, 4922d522f475SmrgCASE_GROUND_STATE, 4923d522f475SmrgCASE_GROUND_STATE, 4924d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 4925d522f475SmrgCASE_HP_MEM_LOCK, 4926d522f475SmrgCASE_HP_MEM_UNLOCK, 4927d522f475SmrgCASE_LS2, 4928d522f475SmrgCASE_LS3, 4929d522f475Smrg/* eth ntilde ograve oacute */ 4930d522f475SmrgCASE_GROUND_STATE, 4931d522f475SmrgCASE_GROUND_STATE, 4932d522f475SmrgCASE_GROUND_STATE, 4933d522f475SmrgCASE_GROUND_STATE, 4934d522f475Smrg/* ocircumflex otilde odiaeresis division */ 4935d522f475SmrgCASE_GROUND_STATE, 4936d522f475SmrgCASE_GROUND_STATE, 4937d522f475SmrgCASE_GROUND_STATE, 4938d522f475SmrgCASE_GROUND_STATE, 4939d522f475Smrg/* oslash ugrave uacute ucircumflex */ 4940d522f475SmrgCASE_GROUND_STATE, 4941d522f475SmrgCASE_GROUND_STATE, 4942d522f475SmrgCASE_GROUND_STATE, 4943d522f475SmrgCASE_GROUND_STATE, 4944d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 4945d522f475SmrgCASE_LS3R, 4946d522f475SmrgCASE_LS2R, 4947d522f475SmrgCASE_LS1R, 4948d522f475SmrgCASE_IGNORE, 4949d522f475Smrg}; 4950d522f475Smrg 4951d522f475SmrgConst PARSE_T esc_sp_table[] = /* ESC SP */ 4952d522f475Smrg{ 4953d522f475Smrg/* NUL SOH STX ETX */ 4954d522f475SmrgCASE_IGNORE, 4955d522f475SmrgCASE_IGNORE, 4956d522f475SmrgCASE_IGNORE, 4957d522f475SmrgCASE_IGNORE, 4958d522f475Smrg/* EOT ENQ ACK BEL */ 4959d522f475SmrgCASE_IGNORE, 4960d522f475SmrgCASE_ENQ, 4961d522f475SmrgCASE_IGNORE, 4962d522f475SmrgCASE_BELL, 4963d522f475Smrg/* BS HT NL VT */ 4964d522f475SmrgCASE_BS, 4965d522f475SmrgCASE_TAB, 4966d522f475SmrgCASE_VMOT, 4967d522f475SmrgCASE_VMOT, 4968d522f475Smrg/* NP CR SO SI */ 4969d522f475SmrgCASE_VMOT, 4970d522f475SmrgCASE_CR, 4971d522f475SmrgCASE_SO, 4972d522f475SmrgCASE_SI, 4973d522f475Smrg/* DLE DC1 DC2 DC3 */ 4974d522f475SmrgCASE_IGNORE, 4975d522f475SmrgCASE_IGNORE, 4976d522f475SmrgCASE_IGNORE, 4977d522f475SmrgCASE_IGNORE, 4978d522f475Smrg/* DC4 NAK SYN ETB */ 4979d522f475SmrgCASE_IGNORE, 4980d522f475SmrgCASE_IGNORE, 4981d522f475SmrgCASE_IGNORE, 4982d522f475SmrgCASE_IGNORE, 4983d522f475Smrg/* CAN EM SUB ESC */ 4984d522f475SmrgCASE_GROUND_STATE, 4985d522f475SmrgCASE_IGNORE, 4986d522f475SmrgCASE_GROUND_STATE, 4987d522f475SmrgCASE_ESC, 4988d522f475Smrg/* FS GS RS US */ 4989d522f475SmrgCASE_IGNORE, 4990d522f475SmrgCASE_IGNORE, 4991d522f475SmrgCASE_IGNORE, 4992d522f475SmrgCASE_IGNORE, 4993d522f475Smrg/* SP ! " # */ 4994d522f475SmrgCASE_ESC_IGNORE, 4995d522f475SmrgCASE_ESC_IGNORE, 4996d522f475SmrgCASE_ESC_IGNORE, 4997d522f475SmrgCASE_ESC_IGNORE, 4998d522f475Smrg/* $ % & ' */ 4999d522f475SmrgCASE_ESC_IGNORE, 5000d522f475SmrgCASE_ESC_IGNORE, 5001d522f475SmrgCASE_ESC_IGNORE, 5002d522f475SmrgCASE_ESC_IGNORE, 5003d522f475Smrg/* ( ) * + */ 5004d522f475SmrgCASE_ESC_IGNORE, 5005d522f475SmrgCASE_ESC_IGNORE, 5006d522f475SmrgCASE_ESC_IGNORE, 5007d522f475SmrgCASE_ESC_IGNORE, 5008d522f475Smrg/* , - . / */ 5009d522f475SmrgCASE_ESC_IGNORE, 5010d522f475SmrgCASE_ESC_IGNORE, 5011d522f475SmrgCASE_ESC_IGNORE, 5012d522f475SmrgCASE_ESC_IGNORE, 5013d522f475Smrg/* 0 1 2 3 */ 5014d522f475SmrgCASE_GROUND_STATE, 5015d522f475SmrgCASE_GROUND_STATE, 5016d522f475SmrgCASE_GROUND_STATE, 5017d522f475SmrgCASE_GROUND_STATE, 5018d522f475Smrg/* 4 5 6 7 */ 5019d522f475SmrgCASE_GROUND_STATE, 5020d522f475SmrgCASE_GROUND_STATE, 5021d522f475SmrgCASE_GROUND_STATE, 5022d522f475SmrgCASE_GROUND_STATE, 5023d522f475Smrg/* 8 9 : ; */ 5024d522f475SmrgCASE_GROUND_STATE, 5025d522f475SmrgCASE_GROUND_STATE, 5026d522f475SmrgCASE_GROUND_STATE, 5027d522f475SmrgCASE_GROUND_STATE, 5028d522f475Smrg/* < = > ? */ 5029d522f475SmrgCASE_GROUND_STATE, 5030d522f475SmrgCASE_GROUND_STATE, 5031d522f475SmrgCASE_GROUND_STATE, 5032d522f475SmrgCASE_GROUND_STATE, 5033d522f475Smrg/* @ A B C */ 5034d522f475SmrgCASE_GROUND_STATE, 5035d522f475SmrgCASE_GROUND_STATE, 5036d522f475SmrgCASE_GROUND_STATE, 5037d522f475SmrgCASE_GROUND_STATE, 5038d522f475Smrg/* D E F G */ 5039d522f475SmrgCASE_GROUND_STATE, 5040d522f475SmrgCASE_GROUND_STATE, 5041d522f475SmrgCASE_S7C1T, 5042d522f475SmrgCASE_S8C1T, 5043d522f475Smrg/* H I J K */ 5044d522f475SmrgCASE_GROUND_STATE, 5045d522f475SmrgCASE_GROUND_STATE, 5046d522f475SmrgCASE_GROUND_STATE, 5047d522f475SmrgCASE_GROUND_STATE, 5048d522f475Smrg/* L M N O */ 5049d522f475SmrgCASE_ANSI_LEVEL_1, 5050d522f475SmrgCASE_ANSI_LEVEL_2, 5051d522f475SmrgCASE_ANSI_LEVEL_3, 5052d522f475SmrgCASE_GROUND_STATE, 5053d522f475Smrg/* P Q R S */ 5054d522f475SmrgCASE_GROUND_STATE, 5055d522f475SmrgCASE_GROUND_STATE, 5056d522f475SmrgCASE_GROUND_STATE, 5057d522f475SmrgCASE_GROUND_STATE, 5058d522f475Smrg/* T U V W */ 5059d522f475SmrgCASE_GROUND_STATE, 5060d522f475SmrgCASE_GROUND_STATE, 5061d522f475SmrgCASE_GROUND_STATE, 5062d522f475SmrgCASE_GROUND_STATE, 5063d522f475Smrg/* X Y Z [ */ 5064d522f475SmrgCASE_GROUND_STATE, 5065d522f475SmrgCASE_GROUND_STATE, 5066d522f475SmrgCASE_GROUND_STATE, 5067d522f475SmrgCASE_GROUND_STATE, 5068d522f475Smrg/* \ ] ^ _ */ 5069d522f475SmrgCASE_GROUND_STATE, 5070d522f475SmrgCASE_GROUND_STATE, 5071d522f475SmrgCASE_GROUND_STATE, 5072d522f475SmrgCASE_GROUND_STATE, 5073d522f475Smrg/* ` a b c */ 5074d522f475SmrgCASE_GROUND_STATE, 5075d522f475SmrgCASE_GROUND_STATE, 5076d522f475SmrgCASE_GROUND_STATE, 5077d522f475SmrgCASE_GROUND_STATE, 5078d522f475Smrg/* d e f g */ 5079d522f475SmrgCASE_GROUND_STATE, 5080d522f475SmrgCASE_GROUND_STATE, 5081d522f475SmrgCASE_GROUND_STATE, 5082d522f475SmrgCASE_GROUND_STATE, 5083d522f475Smrg/* h i j k */ 5084d522f475SmrgCASE_GROUND_STATE, 5085d522f475SmrgCASE_GROUND_STATE, 5086d522f475SmrgCASE_GROUND_STATE, 5087d522f475SmrgCASE_GROUND_STATE, 5088d522f475Smrg/* l m n o */ 5089d522f475SmrgCASE_GROUND_STATE, 5090d522f475SmrgCASE_GROUND_STATE, 5091d522f475SmrgCASE_GROUND_STATE, 5092d522f475SmrgCASE_GROUND_STATE, 5093d522f475Smrg/* p q r s */ 5094d522f475SmrgCASE_GROUND_STATE, 5095d522f475SmrgCASE_GROUND_STATE, 5096d522f475SmrgCASE_GROUND_STATE, 5097d522f475SmrgCASE_GROUND_STATE, 5098d522f475Smrg/* t u v w */ 5099d522f475SmrgCASE_GROUND_STATE, 5100d522f475SmrgCASE_GROUND_STATE, 5101d522f475SmrgCASE_GROUND_STATE, 5102d522f475SmrgCASE_GROUND_STATE, 5103d522f475Smrg/* x y z { */ 5104d522f475SmrgCASE_GROUND_STATE, 5105d522f475SmrgCASE_GROUND_STATE, 5106d522f475SmrgCASE_GROUND_STATE, 5107d522f475SmrgCASE_GROUND_STATE, 5108d522f475Smrg/* | } ~ DEL */ 5109d522f475SmrgCASE_GROUND_STATE, 5110d522f475SmrgCASE_GROUND_STATE, 5111d522f475SmrgCASE_GROUND_STATE, 5112d522f475SmrgCASE_IGNORE, 5113d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 5114d522f475SmrgCASE_GROUND_STATE, 5115d522f475SmrgCASE_GROUND_STATE, 5116d522f475SmrgCASE_GROUND_STATE, 5117d522f475SmrgCASE_GROUND_STATE, 5118d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 5119d522f475SmrgCASE_IND, 5120d522f475SmrgCASE_NEL, 5121d522f475SmrgCASE_GROUND_STATE, 5122d522f475SmrgCASE_GROUND_STATE, 5123d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 5124d522f475SmrgCASE_HTS, 5125d522f475SmrgCASE_GROUND_STATE, 5126d522f475SmrgCASE_GROUND_STATE, 5127d522f475SmrgCASE_GROUND_STATE, 5128d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 5129d522f475SmrgCASE_GROUND_STATE, 5130d522f475SmrgCASE_RI, 5131d522f475SmrgCASE_SS2, 5132d522f475SmrgCASE_SS3, 5133d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 5134d522f475SmrgCASE_DCS, 5135d522f475SmrgCASE_GROUND_STATE, 5136d522f475SmrgCASE_GROUND_STATE, 5137d522f475SmrgCASE_GROUND_STATE, 5138d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 5139d522f475SmrgCASE_GROUND_STATE, 5140d522f475SmrgCASE_GROUND_STATE, 5141d522f475SmrgCASE_SPA, 5142d522f475SmrgCASE_EPA, 5143d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 5144d522f475SmrgCASE_SOS, 5145d522f475SmrgCASE_GROUND_STATE, 5146d522f475SmrgCASE_DECID, 5147d522f475SmrgCASE_CSI_STATE, 5148d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 5149d522f475SmrgCASE_ST, 5150d522f475SmrgCASE_OSC, 5151d522f475SmrgCASE_PM, 5152d522f475SmrgCASE_APC, 5153d522f475Smrg/* nobreakspace exclamdown cent sterling */ 5154d522f475SmrgCASE_ESC_IGNORE, 5155d522f475SmrgCASE_ESC_IGNORE, 5156d522f475SmrgCASE_ESC_IGNORE, 5157d522f475SmrgCASE_ESC_IGNORE, 5158d522f475Smrg/* currency yen brokenbar section */ 5159d522f475SmrgCASE_ESC_IGNORE, 5160d522f475SmrgCASE_ESC_IGNORE, 5161d522f475SmrgCASE_ESC_IGNORE, 5162d522f475SmrgCASE_ESC_IGNORE, 5163d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 5164d522f475SmrgCASE_ESC_IGNORE, 5165d522f475SmrgCASE_ESC_IGNORE, 5166d522f475SmrgCASE_ESC_IGNORE, 5167d522f475SmrgCASE_ESC_IGNORE, 5168d522f475Smrg/* notsign hyphen registered macron */ 5169d522f475SmrgCASE_ESC_IGNORE, 5170d522f475SmrgCASE_ESC_IGNORE, 5171d522f475SmrgCASE_ESC_IGNORE, 5172d522f475SmrgCASE_ESC_IGNORE, 5173d522f475Smrg/* degree plusminus twosuperior threesuperior */ 5174d522f475SmrgCASE_GROUND_STATE, 5175d522f475SmrgCASE_GROUND_STATE, 5176d522f475SmrgCASE_GROUND_STATE, 5177d522f475SmrgCASE_GROUND_STATE, 5178d522f475Smrg/* acute mu paragraph periodcentered */ 5179d522f475SmrgCASE_GROUND_STATE, 5180d522f475SmrgCASE_GROUND_STATE, 5181d522f475SmrgCASE_GROUND_STATE, 5182d522f475SmrgCASE_GROUND_STATE, 5183d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 5184d522f475SmrgCASE_GROUND_STATE, 5185d522f475SmrgCASE_GROUND_STATE, 5186d522f475SmrgCASE_GROUND_STATE, 5187d522f475SmrgCASE_GROUND_STATE, 5188d522f475Smrg/* onequarter onehalf threequarters questiondown */ 5189d522f475SmrgCASE_GROUND_STATE, 5190d522f475SmrgCASE_GROUND_STATE, 5191d522f475SmrgCASE_GROUND_STATE, 5192d522f475SmrgCASE_GROUND_STATE, 5193d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 5194d522f475SmrgCASE_GROUND_STATE, 5195d522f475SmrgCASE_GROUND_STATE, 5196d522f475SmrgCASE_GROUND_STATE, 5197d522f475SmrgCASE_GROUND_STATE, 5198d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 5199d522f475SmrgCASE_GROUND_STATE, 5200d522f475SmrgCASE_GROUND_STATE, 5201d522f475SmrgCASE_S7C1T, 5202d522f475SmrgCASE_S8C1T, 5203d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 5204d522f475SmrgCASE_GROUND_STATE, 5205d522f475SmrgCASE_GROUND_STATE, 5206d522f475SmrgCASE_GROUND_STATE, 5207d522f475SmrgCASE_GROUND_STATE, 5208d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 5209d522f475SmrgCASE_ANSI_LEVEL_1, 5210d522f475SmrgCASE_ANSI_LEVEL_2, 5211d522f475SmrgCASE_ANSI_LEVEL_3, 5212d522f475SmrgCASE_GROUND_STATE, 5213d522f475Smrg/* Eth Ntilde Ograve Oacute */ 5214d522f475SmrgCASE_GROUND_STATE, 5215d522f475SmrgCASE_GROUND_STATE, 5216d522f475SmrgCASE_GROUND_STATE, 5217d522f475SmrgCASE_GROUND_STATE, 5218d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 5219d522f475SmrgCASE_GROUND_STATE, 5220d522f475SmrgCASE_GROUND_STATE, 5221d522f475SmrgCASE_GROUND_STATE, 5222d522f475SmrgCASE_GROUND_STATE, 5223d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 5224d522f475SmrgCASE_GROUND_STATE, 5225d522f475SmrgCASE_GROUND_STATE, 5226d522f475SmrgCASE_GROUND_STATE, 5227d522f475SmrgCASE_GROUND_STATE, 5228d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 5229d522f475SmrgCASE_GROUND_STATE, 5230d522f475SmrgCASE_GROUND_STATE, 5231d522f475SmrgCASE_GROUND_STATE, 5232d522f475SmrgCASE_GROUND_STATE, 5233d522f475Smrg/* agrave aacute acircumflex atilde */ 5234d522f475SmrgCASE_GROUND_STATE, 5235d522f475SmrgCASE_GROUND_STATE, 5236d522f475SmrgCASE_GROUND_STATE, 5237d522f475SmrgCASE_GROUND_STATE, 5238d522f475Smrg/* adiaeresis aring ae ccedilla */ 5239d522f475SmrgCASE_GROUND_STATE, 5240d522f475SmrgCASE_GROUND_STATE, 5241d522f475SmrgCASE_GROUND_STATE, 5242d522f475SmrgCASE_GROUND_STATE, 5243d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 5244d522f475SmrgCASE_GROUND_STATE, 5245d522f475SmrgCASE_GROUND_STATE, 5246d522f475SmrgCASE_GROUND_STATE, 5247d522f475SmrgCASE_GROUND_STATE, 5248d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 5249d522f475SmrgCASE_GROUND_STATE, 5250d522f475SmrgCASE_GROUND_STATE, 5251d522f475SmrgCASE_GROUND_STATE, 5252d522f475SmrgCASE_GROUND_STATE, 5253d522f475Smrg/* eth ntilde ograve oacute */ 5254d522f475SmrgCASE_GROUND_STATE, 5255d522f475SmrgCASE_GROUND_STATE, 5256d522f475SmrgCASE_GROUND_STATE, 5257d522f475SmrgCASE_GROUND_STATE, 5258d522f475Smrg/* ocircumflex otilde odiaeresis division */ 5259d522f475SmrgCASE_GROUND_STATE, 5260d522f475SmrgCASE_GROUND_STATE, 5261d522f475SmrgCASE_GROUND_STATE, 5262d522f475SmrgCASE_GROUND_STATE, 5263d522f475Smrg/* oslash ugrave uacute ucircumflex */ 5264d522f475SmrgCASE_GROUND_STATE, 5265d522f475SmrgCASE_GROUND_STATE, 5266d522f475SmrgCASE_GROUND_STATE, 5267d522f475SmrgCASE_GROUND_STATE, 5268d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 5269d522f475SmrgCASE_GROUND_STATE, 5270d522f475SmrgCASE_GROUND_STATE, 5271d522f475SmrgCASE_GROUND_STATE, 5272d522f475SmrgCASE_IGNORE, 5273d522f475Smrg}; 5274d522f475Smrg 5275d522f475SmrgConst PARSE_T scrtable[] = /* ESC # */ 5276d522f475Smrg{ 5277d522f475Smrg/* NUL SOH STX ETX */ 5278d522f475SmrgCASE_IGNORE, 5279d522f475SmrgCASE_IGNORE, 5280d522f475SmrgCASE_IGNORE, 5281d522f475SmrgCASE_IGNORE, 5282d522f475Smrg/* EOT ENQ ACK BEL */ 5283d522f475SmrgCASE_IGNORE, 5284d522f475SmrgCASE_ENQ, 5285d522f475SmrgCASE_IGNORE, 5286d522f475SmrgCASE_BELL, 5287d522f475Smrg/* BS HT NL VT */ 5288d522f475SmrgCASE_BS, 5289d522f475SmrgCASE_TAB, 5290d522f475SmrgCASE_VMOT, 5291d522f475SmrgCASE_VMOT, 5292d522f475Smrg/* NP CR SO SI */ 5293d522f475SmrgCASE_VMOT, 5294d522f475SmrgCASE_CR, 5295d522f475SmrgCASE_SO, 5296d522f475SmrgCASE_SI, 5297d522f475Smrg/* DLE DC1 DC2 DC3 */ 5298d522f475SmrgCASE_IGNORE, 5299d522f475SmrgCASE_IGNORE, 5300d522f475SmrgCASE_IGNORE, 5301d522f475SmrgCASE_IGNORE, 5302d522f475Smrg/* DC4 NAK SYN ETB */ 5303d522f475SmrgCASE_IGNORE, 5304d522f475SmrgCASE_IGNORE, 5305d522f475SmrgCASE_IGNORE, 5306d522f475SmrgCASE_IGNORE, 5307d522f475Smrg/* CAN EM SUB ESC */ 5308d522f475SmrgCASE_GROUND_STATE, 5309d522f475SmrgCASE_IGNORE, 5310d522f475SmrgCASE_GROUND_STATE, 5311d522f475SmrgCASE_ESC, 5312d522f475Smrg/* FS GS RS US */ 5313d522f475SmrgCASE_IGNORE, 5314d522f475SmrgCASE_IGNORE, 5315d522f475SmrgCASE_IGNORE, 5316d522f475SmrgCASE_IGNORE, 5317d522f475Smrg/* SP ! " # */ 5318d522f475SmrgCASE_ESC_IGNORE, 5319d522f475SmrgCASE_ESC_IGNORE, 5320d522f475SmrgCASE_ESC_IGNORE, 5321d522f475SmrgCASE_ESC_IGNORE, 5322d522f475Smrg/* $ % & ' */ 5323d522f475SmrgCASE_ESC_IGNORE, 5324d522f475SmrgCASE_ESC_IGNORE, 5325d522f475SmrgCASE_ESC_IGNORE, 5326d522f475SmrgCASE_ESC_IGNORE, 5327d522f475Smrg/* ( ) * + */ 5328d522f475SmrgCASE_ESC_IGNORE, 5329d522f475SmrgCASE_ESC_IGNORE, 5330d522f475SmrgCASE_ESC_IGNORE, 5331d522f475SmrgCASE_ESC_IGNORE, 5332d522f475Smrg/* , - . / */ 5333d522f475SmrgCASE_ESC_IGNORE, 5334d522f475SmrgCASE_ESC_IGNORE, 5335d522f475SmrgCASE_ESC_IGNORE, 5336d522f475SmrgCASE_ESC_IGNORE, 5337d522f475Smrg/* 0 1 2 3 */ 5338d522f475SmrgCASE_GROUND_STATE, 5339d522f475SmrgCASE_GROUND_STATE, 5340d522f475SmrgCASE_GROUND_STATE, 5341d522f475SmrgCASE_DECDHL, 5342d522f475Smrg/* 4 5 6 7 */ 5343d522f475SmrgCASE_DECDHL, 5344d522f475SmrgCASE_DECSWL, 5345d522f475SmrgCASE_DECDWL, 5346d522f475SmrgCASE_GROUND_STATE, 5347d522f475Smrg/* 8 9 : ; */ 5348d522f475SmrgCASE_DECALN, 5349d522f475SmrgCASE_GROUND_STATE, 5350d522f475SmrgCASE_GROUND_STATE, 5351d522f475SmrgCASE_GROUND_STATE, 5352d522f475Smrg/* < = > ? */ 5353d522f475SmrgCASE_GROUND_STATE, 5354d522f475SmrgCASE_GROUND_STATE, 5355d522f475SmrgCASE_GROUND_STATE, 5356d522f475SmrgCASE_GROUND_STATE, 5357d522f475Smrg/* @ A B C */ 5358d522f475SmrgCASE_GROUND_STATE, 5359d522f475SmrgCASE_GROUND_STATE, 5360d522f475SmrgCASE_GROUND_STATE, 5361d522f475SmrgCASE_GROUND_STATE, 5362d522f475Smrg/* D E F G */ 5363d522f475SmrgCASE_GROUND_STATE, 5364d522f475SmrgCASE_GROUND_STATE, 5365d522f475SmrgCASE_GROUND_STATE, 5366d522f475SmrgCASE_GROUND_STATE, 5367d522f475Smrg/* H I J K */ 5368d522f475SmrgCASE_GROUND_STATE, 5369d522f475SmrgCASE_GROUND_STATE, 5370d522f475SmrgCASE_GROUND_STATE, 5371d522f475SmrgCASE_GROUND_STATE, 5372d522f475Smrg/* L M N O */ 5373d522f475SmrgCASE_GROUND_STATE, 5374d522f475SmrgCASE_GROUND_STATE, 5375d522f475SmrgCASE_GROUND_STATE, 5376d522f475SmrgCASE_GROUND_STATE, 5377d522f475Smrg/* P Q R S */ 5378d522f475SmrgCASE_GROUND_STATE, 5379d522f475SmrgCASE_GROUND_STATE, 5380d522f475SmrgCASE_GROUND_STATE, 5381d522f475SmrgCASE_GROUND_STATE, 5382d522f475Smrg/* T U V W */ 5383d522f475SmrgCASE_GROUND_STATE, 5384d522f475SmrgCASE_GROUND_STATE, 5385d522f475SmrgCASE_GROUND_STATE, 5386d522f475SmrgCASE_GROUND_STATE, 5387d522f475Smrg/* X Y Z [ */ 5388d522f475SmrgCASE_GROUND_STATE, 5389d522f475SmrgCASE_GROUND_STATE, 5390d522f475SmrgCASE_GROUND_STATE, 5391d522f475SmrgCASE_GROUND_STATE, 5392d522f475Smrg/* \ ] ^ _ */ 5393d522f475SmrgCASE_GROUND_STATE, 5394d522f475SmrgCASE_GROUND_STATE, 5395d522f475SmrgCASE_GROUND_STATE, 5396d522f475SmrgCASE_GROUND_STATE, 5397d522f475Smrg/* ` a b c */ 5398d522f475SmrgCASE_GROUND_STATE, 5399d522f475SmrgCASE_GROUND_STATE, 5400d522f475SmrgCASE_GROUND_STATE, 5401d522f475SmrgCASE_GROUND_STATE, 5402d522f475Smrg/* d e f g */ 5403d522f475SmrgCASE_GROUND_STATE, 5404d522f475SmrgCASE_GROUND_STATE, 5405d522f475SmrgCASE_GROUND_STATE, 5406d522f475SmrgCASE_GROUND_STATE, 5407d522f475Smrg/* h i j k */ 5408d522f475SmrgCASE_GROUND_STATE, 5409d522f475SmrgCASE_GROUND_STATE, 5410d522f475SmrgCASE_GROUND_STATE, 5411d522f475SmrgCASE_GROUND_STATE, 5412d522f475Smrg/* l m n o */ 5413d522f475SmrgCASE_GROUND_STATE, 5414d522f475SmrgCASE_GROUND_STATE, 5415d522f475SmrgCASE_GROUND_STATE, 5416d522f475SmrgCASE_GROUND_STATE, 5417d522f475Smrg/* p q r s */ 5418d522f475SmrgCASE_GROUND_STATE, 5419d522f475SmrgCASE_GROUND_STATE, 5420d522f475SmrgCASE_GROUND_STATE, 5421d522f475SmrgCASE_GROUND_STATE, 5422d522f475Smrg/* t u v w */ 5423d522f475SmrgCASE_GROUND_STATE, 5424d522f475SmrgCASE_GROUND_STATE, 5425d522f475SmrgCASE_GROUND_STATE, 5426d522f475SmrgCASE_GROUND_STATE, 5427d522f475Smrg/* x y z { */ 5428d522f475SmrgCASE_GROUND_STATE, 5429d522f475SmrgCASE_GROUND_STATE, 5430d522f475SmrgCASE_GROUND_STATE, 5431d522f475SmrgCASE_GROUND_STATE, 5432d522f475Smrg/* | } ~ DEL */ 5433d522f475SmrgCASE_GROUND_STATE, 5434d522f475SmrgCASE_GROUND_STATE, 5435d522f475SmrgCASE_GROUND_STATE, 5436d522f475SmrgCASE_IGNORE, 5437d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 5438d522f475SmrgCASE_GROUND_STATE, 5439d522f475SmrgCASE_GROUND_STATE, 5440d522f475SmrgCASE_GROUND_STATE, 5441d522f475SmrgCASE_GROUND_STATE, 5442d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 5443d522f475SmrgCASE_IND, 5444d522f475SmrgCASE_NEL, 5445d522f475SmrgCASE_GROUND_STATE, 5446d522f475SmrgCASE_GROUND_STATE, 5447d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 5448d522f475SmrgCASE_HTS, 5449d522f475SmrgCASE_GROUND_STATE, 5450d522f475SmrgCASE_GROUND_STATE, 5451d522f475SmrgCASE_GROUND_STATE, 5452d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 5453d522f475SmrgCASE_GROUND_STATE, 5454d522f475SmrgCASE_RI, 5455d522f475SmrgCASE_SS2, 5456d522f475SmrgCASE_SS3, 5457d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 5458d522f475SmrgCASE_DCS, 5459d522f475SmrgCASE_GROUND_STATE, 5460d522f475SmrgCASE_GROUND_STATE, 5461d522f475SmrgCASE_GROUND_STATE, 5462d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 5463d522f475SmrgCASE_GROUND_STATE, 5464d522f475SmrgCASE_GROUND_STATE, 5465d522f475SmrgCASE_SPA, 5466d522f475SmrgCASE_EPA, 5467d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 5468d522f475SmrgCASE_SOS, 5469d522f475SmrgCASE_GROUND_STATE, 5470d522f475SmrgCASE_DECID, 5471d522f475SmrgCASE_CSI_STATE, 5472d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 5473d522f475SmrgCASE_ST, 5474d522f475SmrgCASE_OSC, 5475d522f475SmrgCASE_PM, 5476d522f475SmrgCASE_APC, 5477d522f475Smrg/* nobreakspace exclamdown cent sterling */ 5478d522f475SmrgCASE_ESC_IGNORE, 5479d522f475SmrgCASE_ESC_IGNORE, 5480d522f475SmrgCASE_ESC_IGNORE, 5481d522f475SmrgCASE_ESC_IGNORE, 5482d522f475Smrg/* currency yen brokenbar section */ 5483d522f475SmrgCASE_ESC_IGNORE, 5484d522f475SmrgCASE_ESC_IGNORE, 5485d522f475SmrgCASE_ESC_IGNORE, 5486d522f475SmrgCASE_ESC_IGNORE, 5487d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 5488d522f475SmrgCASE_ESC_IGNORE, 5489d522f475SmrgCASE_ESC_IGNORE, 5490d522f475SmrgCASE_ESC_IGNORE, 5491d522f475SmrgCASE_ESC_IGNORE, 5492d522f475Smrg/* notsign hyphen registered macron */ 5493d522f475SmrgCASE_ESC_IGNORE, 5494d522f475SmrgCASE_ESC_IGNORE, 5495d522f475SmrgCASE_ESC_IGNORE, 5496d522f475SmrgCASE_ESC_IGNORE, 5497d522f475Smrg/* degree plusminus twosuperior threesuperior */ 5498d522f475SmrgCASE_GROUND_STATE, 5499d522f475SmrgCASE_GROUND_STATE, 5500d522f475SmrgCASE_GROUND_STATE, 5501d522f475SmrgCASE_DECDHL, 5502d522f475Smrg/* acute mu paragraph periodcentered */ 5503d522f475SmrgCASE_DECDHL, 5504d522f475SmrgCASE_DECSWL, 5505d522f475SmrgCASE_DECDWL, 5506d522f475SmrgCASE_GROUND_STATE, 5507d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 5508d522f475SmrgCASE_DECALN, 5509d522f475SmrgCASE_GROUND_STATE, 5510d522f475SmrgCASE_GROUND_STATE, 5511d522f475SmrgCASE_GROUND_STATE, 5512d522f475Smrg/* onequarter onehalf threequarters questiondown */ 5513d522f475SmrgCASE_GROUND_STATE, 5514d522f475SmrgCASE_GROUND_STATE, 5515d522f475SmrgCASE_GROUND_STATE, 5516d522f475SmrgCASE_GROUND_STATE, 5517d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 5518d522f475SmrgCASE_GROUND_STATE, 5519d522f475SmrgCASE_GROUND_STATE, 5520d522f475SmrgCASE_GROUND_STATE, 5521d522f475SmrgCASE_GROUND_STATE, 5522d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 5523d522f475SmrgCASE_GROUND_STATE, 5524d522f475SmrgCASE_GROUND_STATE, 5525d522f475SmrgCASE_GROUND_STATE, 5526d522f475SmrgCASE_GROUND_STATE, 5527d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 5528d522f475SmrgCASE_GROUND_STATE, 5529d522f475SmrgCASE_GROUND_STATE, 5530d522f475SmrgCASE_GROUND_STATE, 5531d522f475SmrgCASE_GROUND_STATE, 5532d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 5533d522f475SmrgCASE_GROUND_STATE, 5534d522f475SmrgCASE_GROUND_STATE, 5535d522f475SmrgCASE_GROUND_STATE, 5536d522f475SmrgCASE_GROUND_STATE, 5537d522f475Smrg/* Eth Ntilde Ograve Oacute */ 5538d522f475SmrgCASE_GROUND_STATE, 5539d522f475SmrgCASE_GROUND_STATE, 5540d522f475SmrgCASE_GROUND_STATE, 5541d522f475SmrgCASE_GROUND_STATE, 5542d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 5543d522f475SmrgCASE_GROUND_STATE, 5544d522f475SmrgCASE_GROUND_STATE, 5545d522f475SmrgCASE_GROUND_STATE, 5546d522f475SmrgCASE_GROUND_STATE, 5547d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 5548d522f475SmrgCASE_GROUND_STATE, 5549d522f475SmrgCASE_GROUND_STATE, 5550d522f475SmrgCASE_GROUND_STATE, 5551d522f475SmrgCASE_GROUND_STATE, 5552d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 5553d522f475SmrgCASE_GROUND_STATE, 5554d522f475SmrgCASE_GROUND_STATE, 5555d522f475SmrgCASE_GROUND_STATE, 5556d522f475SmrgCASE_GROUND_STATE, 5557d522f475Smrg/* agrave aacute acircumflex atilde */ 5558d522f475SmrgCASE_GROUND_STATE, 5559d522f475SmrgCASE_GROUND_STATE, 5560d522f475SmrgCASE_GROUND_STATE, 5561d522f475SmrgCASE_GROUND_STATE, 5562d522f475Smrg/* adiaeresis aring ae ccedilla */ 5563d522f475SmrgCASE_GROUND_STATE, 5564d522f475SmrgCASE_GROUND_STATE, 5565d522f475SmrgCASE_GROUND_STATE, 5566d522f475SmrgCASE_GROUND_STATE, 5567d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 5568d522f475SmrgCASE_GROUND_STATE, 5569d522f475SmrgCASE_GROUND_STATE, 5570d522f475SmrgCASE_GROUND_STATE, 5571d522f475SmrgCASE_GROUND_STATE, 5572d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 5573d522f475SmrgCASE_GROUND_STATE, 5574d522f475SmrgCASE_GROUND_STATE, 5575d522f475SmrgCASE_GROUND_STATE, 5576d522f475SmrgCASE_GROUND_STATE, 5577d522f475Smrg/* eth ntilde ograve oacute */ 5578d522f475SmrgCASE_GROUND_STATE, 5579d522f475SmrgCASE_GROUND_STATE, 5580d522f475SmrgCASE_GROUND_STATE, 5581d522f475SmrgCASE_GROUND_STATE, 5582d522f475Smrg/* ocircumflex otilde odiaeresis division */ 5583d522f475SmrgCASE_GROUND_STATE, 5584d522f475SmrgCASE_GROUND_STATE, 5585d522f475SmrgCASE_GROUND_STATE, 5586d522f475SmrgCASE_GROUND_STATE, 5587d522f475Smrg/* oslash ugrave uacute ucircumflex */ 5588d522f475SmrgCASE_GROUND_STATE, 5589d522f475SmrgCASE_GROUND_STATE, 5590d522f475SmrgCASE_GROUND_STATE, 5591d522f475SmrgCASE_GROUND_STATE, 5592d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 5593d522f475SmrgCASE_GROUND_STATE, 5594d522f475SmrgCASE_GROUND_STATE, 5595d522f475SmrgCASE_GROUND_STATE, 5596d522f475SmrgCASE_IGNORE, 5597d522f475Smrg}; 5598d522f475Smrg 5599d522f475SmrgConst PARSE_T scstable[] = /* ESC ( etc. */ 5600d522f475Smrg{ 5601d522f475Smrg/* NUL SOH STX ETX */ 5602d522f475SmrgCASE_IGNORE, 5603d522f475SmrgCASE_IGNORE, 5604d522f475SmrgCASE_IGNORE, 5605d522f475SmrgCASE_IGNORE, 5606d522f475Smrg/* EOT ENQ ACK BEL */ 5607d522f475SmrgCASE_IGNORE, 5608d522f475SmrgCASE_ENQ, 5609d522f475SmrgCASE_IGNORE, 5610d522f475SmrgCASE_BELL, 5611d522f475Smrg/* BS HT NL VT */ 5612d522f475SmrgCASE_BS, 5613d522f475SmrgCASE_TAB, 5614d522f475SmrgCASE_VMOT, 5615d522f475SmrgCASE_VMOT, 5616d522f475Smrg/* NP CR SO SI */ 5617d522f475SmrgCASE_VMOT, 5618d522f475SmrgCASE_CR, 5619d522f475SmrgCASE_SO, 5620d522f475SmrgCASE_SI, 5621d522f475Smrg/* DLE DC1 DC2 DC3 */ 5622d522f475SmrgCASE_IGNORE, 5623d522f475SmrgCASE_IGNORE, 5624d522f475SmrgCASE_IGNORE, 5625d522f475SmrgCASE_IGNORE, 5626d522f475Smrg/* DC4 NAK SYN ETB */ 5627d522f475SmrgCASE_IGNORE, 5628d522f475SmrgCASE_IGNORE, 5629d522f475SmrgCASE_IGNORE, 5630d522f475SmrgCASE_IGNORE, 5631d522f475Smrg/* CAN EM SUB ESC */ 5632d522f475SmrgCASE_GROUND_STATE, 5633d522f475SmrgCASE_IGNORE, 5634d522f475SmrgCASE_GROUND_STATE, 5635d522f475SmrgCASE_ESC, 5636d522f475Smrg/* FS GS RS US */ 5637d522f475SmrgCASE_IGNORE, 5638d522f475SmrgCASE_IGNORE, 5639d522f475SmrgCASE_IGNORE, 5640d522f475SmrgCASE_IGNORE, 5641d522f475Smrg/* SP ! " # */ 5642d522f475SmrgCASE_ESC_IGNORE, 5643d522f475SmrgCASE_ESC_IGNORE, 5644d522f475SmrgCASE_ESC_IGNORE, 5645d522f475SmrgCASE_ESC_IGNORE, 5646d522f475Smrg/* $ % & ' */ 5647d522f475SmrgCASE_ESC_IGNORE, 5648d522f475SmrgCASE_ESC_IGNORE, 5649d522f475SmrgCASE_ESC_IGNORE, 5650d522f475SmrgCASE_ESC_IGNORE, 5651d522f475Smrg/* ( ) * + */ 5652d522f475SmrgCASE_ESC_IGNORE, 5653d522f475SmrgCASE_ESC_IGNORE, 5654d522f475SmrgCASE_ESC_IGNORE, 5655d522f475SmrgCASE_ESC_IGNORE, 5656d522f475Smrg/* , - . / */ 5657d522f475SmrgCASE_ESC_IGNORE, 5658d522f475SmrgCASE_ESC_IGNORE, 5659d522f475SmrgCASE_ESC_IGNORE, 5660d522f475SmrgCASE_ESC_IGNORE, 5661d522f475Smrg/* 0 1 2 3 */ 5662d522f475SmrgCASE_GSETS, 5663d522f475SmrgCASE_GSETS, 5664d522f475SmrgCASE_GSETS, 5665d522f475SmrgCASE_GROUND_STATE, 5666d522f475Smrg/* 4 5 6 7 */ 5667d522f475SmrgCASE_GSETS, 5668d522f475SmrgCASE_GSETS, 5669d522f475SmrgCASE_GSETS, 5670d522f475SmrgCASE_GSETS, 5671d522f475Smrg/* 8 9 : ; */ 5672d522f475SmrgCASE_GROUND_STATE, 5673d522f475SmrgCASE_GROUND_STATE, 5674d522f475SmrgCASE_GROUND_STATE, 5675d522f475SmrgCASE_GROUND_STATE, 5676d522f475Smrg/* < = > ? */ 5677d522f475SmrgCASE_GROUND_STATE, 5678d522f475SmrgCASE_GSETS, 5679d522f475SmrgCASE_GROUND_STATE, 5680d522f475SmrgCASE_GROUND_STATE, 5681d522f475Smrg/* @ A B C */ 5682d522f475SmrgCASE_GROUND_STATE, 5683d522f475SmrgCASE_GSETS, 5684d522f475SmrgCASE_GSETS, 5685d522f475SmrgCASE_GSETS, 5686d522f475Smrg/* D E F G */ 5687d522f475SmrgCASE_GROUND_STATE, 5688d522f475SmrgCASE_GSETS, 5689d522f475SmrgCASE_GROUND_STATE, 5690d522f475SmrgCASE_GROUND_STATE, 5691d522f475Smrg/* H I J K */ 5692d522f475SmrgCASE_GSETS, 5693d522f475SmrgCASE_GROUND_STATE, 5694d522f475SmrgCASE_GROUND_STATE, 5695d522f475SmrgCASE_GSETS, 5696d522f475Smrg/* L M N O */ 5697d522f475SmrgCASE_GROUND_STATE, 5698d522f475SmrgCASE_GROUND_STATE, 5699d522f475SmrgCASE_GROUND_STATE, 5700d522f475SmrgCASE_GROUND_STATE, 5701d522f475Smrg/* P Q R S */ 5702d522f475SmrgCASE_GROUND_STATE, 5703d522f475SmrgCASE_GSETS, 5704d522f475SmrgCASE_GSETS, 5705d522f475SmrgCASE_GROUND_STATE, 5706d522f475Smrg/* T U V W */ 5707d522f475SmrgCASE_GROUND_STATE, 5708d522f475SmrgCASE_GROUND_STATE, 5709d522f475SmrgCASE_GROUND_STATE, 5710d522f475SmrgCASE_GROUND_STATE, 5711d522f475Smrg/* X Y Z [ */ 5712d522f475SmrgCASE_GROUND_STATE, 5713d522f475SmrgCASE_GSETS, 5714d522f475SmrgCASE_GSETS, 5715d522f475SmrgCASE_GROUND_STATE, 5716d522f475Smrg/* \ ] ^ _ */ 5717d522f475SmrgCASE_GROUND_STATE, 5718d522f475SmrgCASE_GROUND_STATE, 5719d522f475SmrgCASE_GROUND_STATE, 5720d522f475SmrgCASE_GROUND_STATE, 5721d522f475Smrg/* ` a b c */ 5722d522f475SmrgCASE_GROUND_STATE, 5723d522f475SmrgCASE_GROUND_STATE, 5724d522f475SmrgCASE_GROUND_STATE, 5725d522f475SmrgCASE_GROUND_STATE, 5726d522f475Smrg/* d e f g */ 5727d522f475SmrgCASE_GROUND_STATE, 5728d522f475SmrgCASE_GROUND_STATE, 5729d522f475SmrgCASE_GROUND_STATE, 5730d522f475SmrgCASE_GROUND_STATE, 5731d522f475Smrg/* h i j k */ 5732d522f475SmrgCASE_GROUND_STATE, 5733d522f475SmrgCASE_GROUND_STATE, 5734d522f475SmrgCASE_GROUND_STATE, 5735d522f475SmrgCASE_GROUND_STATE, 5736d522f475Smrg/* l m n o */ 5737d522f475SmrgCASE_GROUND_STATE, 5738d522f475SmrgCASE_GROUND_STATE, 5739d522f475SmrgCASE_GROUND_STATE, 5740d522f475SmrgCASE_GROUND_STATE, 5741d522f475Smrg/* p q r s */ 5742d522f475SmrgCASE_GROUND_STATE, 5743d522f475SmrgCASE_GROUND_STATE, 5744d522f475SmrgCASE_GROUND_STATE, 5745d522f475SmrgCASE_GROUND_STATE, 5746d522f475Smrg/* t u v w */ 5747d522f475SmrgCASE_GROUND_STATE, 5748d522f475SmrgCASE_GROUND_STATE, 5749d522f475SmrgCASE_GROUND_STATE, 5750d522f475SmrgCASE_GROUND_STATE, 5751d522f475Smrg/* x y z { */ 5752d522f475SmrgCASE_GROUND_STATE, 5753d522f475SmrgCASE_GROUND_STATE, 5754d522f475SmrgCASE_GROUND_STATE, 5755d522f475SmrgCASE_GROUND_STATE, 5756d522f475Smrg/* | } ~ DEL */ 5757d522f475SmrgCASE_GROUND_STATE, 5758d522f475SmrgCASE_GROUND_STATE, 5759d522f475SmrgCASE_GROUND_STATE, 5760d522f475SmrgCASE_IGNORE, 5761d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 5762d522f475SmrgCASE_GROUND_STATE, 5763d522f475SmrgCASE_GROUND_STATE, 5764d522f475SmrgCASE_GROUND_STATE, 5765d522f475SmrgCASE_GROUND_STATE, 5766d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 5767d522f475SmrgCASE_IND, 5768d522f475SmrgCASE_NEL, 5769d522f475SmrgCASE_GROUND_STATE, 5770d522f475SmrgCASE_GROUND_STATE, 5771d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 5772d522f475SmrgCASE_HTS, 5773d522f475SmrgCASE_GROUND_STATE, 5774d522f475SmrgCASE_GROUND_STATE, 5775d522f475SmrgCASE_GROUND_STATE, 5776d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 5777d522f475SmrgCASE_GROUND_STATE, 5778d522f475SmrgCASE_RI, 5779d522f475SmrgCASE_SS2, 5780d522f475SmrgCASE_SS3, 5781d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 5782d522f475SmrgCASE_DCS, 5783d522f475SmrgCASE_GROUND_STATE, 5784d522f475SmrgCASE_GROUND_STATE, 5785d522f475SmrgCASE_GROUND_STATE, 5786d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 5787d522f475SmrgCASE_GROUND_STATE, 5788d522f475SmrgCASE_GROUND_STATE, 5789d522f475SmrgCASE_SPA, 5790d522f475SmrgCASE_EPA, 5791d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 5792d522f475SmrgCASE_SOS, 5793d522f475SmrgCASE_GROUND_STATE, 5794d522f475SmrgCASE_DECID, 5795d522f475SmrgCASE_CSI_STATE, 5796d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 5797d522f475SmrgCASE_ST, 5798d522f475SmrgCASE_OSC, 5799d522f475SmrgCASE_PM, 5800d522f475SmrgCASE_APC, 5801d522f475Smrg/* nobreakspace exclamdown cent sterling */ 5802d522f475SmrgCASE_ESC_IGNORE, 5803d522f475SmrgCASE_ESC_IGNORE, 5804d522f475SmrgCASE_ESC_IGNORE, 5805d522f475SmrgCASE_ESC_IGNORE, 5806d522f475Smrg/* currency yen brokenbar section */ 5807d522f475SmrgCASE_ESC_IGNORE, 5808d522f475SmrgCASE_ESC_IGNORE, 5809d522f475SmrgCASE_ESC_IGNORE, 5810d522f475SmrgCASE_ESC_IGNORE, 5811d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 5812d522f475SmrgCASE_ESC_IGNORE, 5813d522f475SmrgCASE_ESC_IGNORE, 5814d522f475SmrgCASE_ESC_IGNORE, 5815d522f475SmrgCASE_ESC_IGNORE, 5816d522f475Smrg/* notsign hyphen registered macron */ 5817d522f475SmrgCASE_ESC_IGNORE, 5818d522f475SmrgCASE_ESC_IGNORE, 5819d522f475SmrgCASE_ESC_IGNORE, 5820d522f475SmrgCASE_ESC_IGNORE, 5821d522f475Smrg/* degree plusminus twosuperior threesuperior */ 5822d522f475SmrgCASE_GSETS, 5823d522f475SmrgCASE_GSETS, 5824d522f475SmrgCASE_GSETS, 5825d522f475SmrgCASE_GROUND_STATE, 5826d522f475Smrg/* acute mu paragraph periodcentered */ 5827d522f475SmrgCASE_GSETS, 5828d522f475SmrgCASE_GSETS, 5829d522f475SmrgCASE_GSETS, 5830d522f475SmrgCASE_GSETS, 5831d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 5832d522f475SmrgCASE_GROUND_STATE, 5833d522f475SmrgCASE_GROUND_STATE, 5834d522f475SmrgCASE_GROUND_STATE, 5835d522f475SmrgCASE_GROUND_STATE, 5836d522f475Smrg/* onequarter onehalf threequarters questiondown */ 5837d522f475SmrgCASE_GROUND_STATE, 5838d522f475SmrgCASE_GSETS, 5839d522f475SmrgCASE_GROUND_STATE, 5840d522f475SmrgCASE_GROUND_STATE, 5841d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 5842d522f475SmrgCASE_GROUND_STATE, 5843d522f475SmrgCASE_GSETS, 5844d522f475SmrgCASE_GSETS, 5845d522f475SmrgCASE_GSETS, 5846d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 5847d522f475SmrgCASE_GROUND_STATE, 5848d522f475SmrgCASE_GSETS, 5849d522f475SmrgCASE_GROUND_STATE, 5850d522f475SmrgCASE_GROUND_STATE, 5851d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 5852d522f475SmrgCASE_GSETS, 5853d522f475SmrgCASE_GROUND_STATE, 5854d522f475SmrgCASE_GROUND_STATE, 5855d522f475SmrgCASE_GSETS, 5856d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 5857d522f475SmrgCASE_GROUND_STATE, 5858d522f475SmrgCASE_GROUND_STATE, 5859d522f475SmrgCASE_GROUND_STATE, 5860d522f475SmrgCASE_GROUND_STATE, 5861d522f475Smrg/* Eth Ntilde Ograve Oacute */ 5862d522f475SmrgCASE_GROUND_STATE, 5863d522f475SmrgCASE_GSETS, 5864d522f475SmrgCASE_GSETS, 5865d522f475SmrgCASE_GROUND_STATE, 5866d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 5867d522f475SmrgCASE_GROUND_STATE, 5868d522f475SmrgCASE_GROUND_STATE, 5869d522f475SmrgCASE_GROUND_STATE, 5870d522f475SmrgCASE_GROUND_STATE, 5871d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 5872d522f475SmrgCASE_GROUND_STATE, 5873d522f475SmrgCASE_GSETS, 5874d522f475SmrgCASE_GSETS, 5875d522f475SmrgCASE_GROUND_STATE, 5876d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 5877d522f475SmrgCASE_GROUND_STATE, 5878d522f475SmrgCASE_GROUND_STATE, 5879d522f475SmrgCASE_GROUND_STATE, 5880d522f475SmrgCASE_GROUND_STATE, 5881d522f475Smrg/* agrave aacute acircumflex atilde */ 5882d522f475SmrgCASE_GROUND_STATE, 58832eaa94a1SchristosCASE_GROUND_STATE, 58842eaa94a1SchristosCASE_GROUND_STATE, 58852eaa94a1SchristosCASE_GROUND_STATE, 58862eaa94a1Schristos/* adiaeresis aring ae ccedilla */ 58872eaa94a1SchristosCASE_GROUND_STATE, 58882eaa94a1SchristosCASE_GROUND_STATE, 58892eaa94a1SchristosCASE_GROUND_STATE, 58902eaa94a1SchristosCASE_GROUND_STATE, 58912eaa94a1Schristos/* egrave eacute ecircumflex ediaeresis */ 58922eaa94a1SchristosCASE_GROUND_STATE, 58932eaa94a1SchristosCASE_GROUND_STATE, 58942eaa94a1SchristosCASE_GROUND_STATE, 58952eaa94a1SchristosCASE_GROUND_STATE, 58962eaa94a1Schristos/* igrave iacute icircumflex idiaeresis */ 58972eaa94a1SchristosCASE_GROUND_STATE, 58982eaa94a1SchristosCASE_GROUND_STATE, 58992eaa94a1SchristosCASE_GROUND_STATE, 59002eaa94a1SchristosCASE_GROUND_STATE, 59012eaa94a1Schristos/* eth ntilde ograve oacute */ 59022eaa94a1SchristosCASE_GROUND_STATE, 59032eaa94a1SchristosCASE_GROUND_STATE, 59042eaa94a1SchristosCASE_GROUND_STATE, 59052eaa94a1SchristosCASE_GROUND_STATE, 59062eaa94a1Schristos/* ocircumflex otilde odiaeresis division */ 59072eaa94a1SchristosCASE_GROUND_STATE, 59082eaa94a1SchristosCASE_GROUND_STATE, 59092eaa94a1SchristosCASE_GROUND_STATE, 59102eaa94a1SchristosCASE_GROUND_STATE, 59112eaa94a1Schristos/* oslash ugrave uacute ucircumflex */ 59122eaa94a1SchristosCASE_GROUND_STATE, 59132eaa94a1SchristosCASE_GROUND_STATE, 59142eaa94a1SchristosCASE_GROUND_STATE, 59152eaa94a1SchristosCASE_GROUND_STATE, 59162eaa94a1Schristos/* udiaeresis yacute thorn ydiaeresis */ 59172eaa94a1SchristosCASE_GROUND_STATE, 59182eaa94a1SchristosCASE_GROUND_STATE, 59192eaa94a1SchristosCASE_GROUND_STATE, 59202eaa94a1SchristosCASE_IGNORE, 59212eaa94a1Schristos}; 59222eaa94a1Schristos 59232eaa94a1SchristosConst PARSE_T scs96table[] = /* ESC - etc. */ 59242eaa94a1Schristos{ 59252eaa94a1Schristos/* NUL SOH STX ETX */ 59262eaa94a1SchristosCASE_IGNORE, 59272eaa94a1SchristosCASE_IGNORE, 59282eaa94a1SchristosCASE_IGNORE, 59292eaa94a1SchristosCASE_IGNORE, 59302eaa94a1Schristos/* EOT ENQ ACK BEL */ 59312eaa94a1SchristosCASE_IGNORE, 59322eaa94a1SchristosCASE_ENQ, 59332eaa94a1SchristosCASE_IGNORE, 59342eaa94a1SchristosCASE_BELL, 59352eaa94a1Schristos/* BS HT NL VT */ 59362eaa94a1SchristosCASE_BS, 59372eaa94a1SchristosCASE_TAB, 59382eaa94a1SchristosCASE_VMOT, 59392eaa94a1SchristosCASE_VMOT, 59402eaa94a1Schristos/* NP CR SO SI */ 59412eaa94a1SchristosCASE_VMOT, 59422eaa94a1SchristosCASE_CR, 59432eaa94a1SchristosCASE_SO, 59442eaa94a1SchristosCASE_SI, 59452eaa94a1Schristos/* DLE DC1 DC2 DC3 */ 59462eaa94a1SchristosCASE_IGNORE, 59472eaa94a1SchristosCASE_IGNORE, 59482eaa94a1SchristosCASE_IGNORE, 59492eaa94a1SchristosCASE_IGNORE, 59502eaa94a1Schristos/* DC4 NAK SYN ETB */ 59512eaa94a1SchristosCASE_IGNORE, 59522eaa94a1SchristosCASE_IGNORE, 59532eaa94a1SchristosCASE_IGNORE, 59542eaa94a1SchristosCASE_IGNORE, 59552eaa94a1Schristos/* CAN EM SUB ESC */ 59562eaa94a1SchristosCASE_GROUND_STATE, 59572eaa94a1SchristosCASE_IGNORE, 59582eaa94a1SchristosCASE_GROUND_STATE, 59592eaa94a1SchristosCASE_ESC, 59602eaa94a1Schristos/* FS GS RS US */ 59612eaa94a1SchristosCASE_IGNORE, 59622eaa94a1SchristosCASE_IGNORE, 59632eaa94a1SchristosCASE_IGNORE, 59642eaa94a1SchristosCASE_IGNORE, 59652eaa94a1Schristos/* SP ! " # */ 59662eaa94a1SchristosCASE_ESC_IGNORE, 59672eaa94a1SchristosCASE_ESC_IGNORE, 59682eaa94a1SchristosCASE_ESC_IGNORE, 59692eaa94a1SchristosCASE_ESC_IGNORE, 59702eaa94a1Schristos/* $ % & ' */ 59712eaa94a1SchristosCASE_ESC_IGNORE, 59722eaa94a1SchristosCASE_ESC_IGNORE, 59732eaa94a1SchristosCASE_ESC_IGNORE, 59742eaa94a1SchristosCASE_ESC_IGNORE, 59752eaa94a1Schristos/* ( ) * + */ 59762eaa94a1SchristosCASE_ESC_IGNORE, 59772eaa94a1SchristosCASE_ESC_IGNORE, 59782eaa94a1SchristosCASE_ESC_IGNORE, 59792eaa94a1SchristosCASE_ESC_IGNORE, 59802eaa94a1Schristos/* , - . / */ 59812eaa94a1SchristosCASE_ESC_IGNORE, 59822eaa94a1SchristosCASE_ESC_IGNORE, 59832eaa94a1SchristosCASE_ESC_IGNORE, 59842eaa94a1SchristosCASE_ESC_IGNORE, 59852eaa94a1Schristos/* 0 1 2 3 */ 59862eaa94a1SchristosCASE_GROUND_STATE, 59872eaa94a1SchristosCASE_GROUND_STATE, 59882eaa94a1SchristosCASE_GROUND_STATE, 59892eaa94a1SchristosCASE_GROUND_STATE, 59902eaa94a1Schristos/* 4 5 6 7 */ 59912eaa94a1SchristosCASE_GROUND_STATE, 59922eaa94a1SchristosCASE_GROUND_STATE, 59932eaa94a1SchristosCASE_GROUND_STATE, 59942eaa94a1SchristosCASE_GROUND_STATE, 59952eaa94a1Schristos/* 8 9 : ; */ 59962eaa94a1SchristosCASE_GROUND_STATE, 59972eaa94a1SchristosCASE_GROUND_STATE, 59982eaa94a1SchristosCASE_GROUND_STATE, 59992eaa94a1SchristosCASE_GROUND_STATE, 60002eaa94a1Schristos/* < = > ? */ 60012eaa94a1SchristosCASE_GROUND_STATE, 60022eaa94a1SchristosCASE_GROUND_STATE, 60032eaa94a1SchristosCASE_GROUND_STATE, 60042eaa94a1SchristosCASE_GROUND_STATE, 60052eaa94a1Schristos/* @ A B C */ 60062eaa94a1SchristosCASE_GROUND_STATE, 60072eaa94a1SchristosCASE_GSETS, 60082eaa94a1SchristosCASE_GROUND_STATE, 60092eaa94a1SchristosCASE_GROUND_STATE, 60102eaa94a1Schristos/* D E F G */ 60112eaa94a1SchristosCASE_GROUND_STATE, 60122eaa94a1SchristosCASE_GROUND_STATE, 60132eaa94a1SchristosCASE_GROUND_STATE, 60142eaa94a1SchristosCASE_GROUND_STATE, 60152eaa94a1Schristos/* H I J K */ 60162eaa94a1SchristosCASE_GROUND_STATE, 60172eaa94a1SchristosCASE_GROUND_STATE, 60182eaa94a1SchristosCASE_GROUND_STATE, 60192eaa94a1SchristosCASE_GROUND_STATE, 60202eaa94a1Schristos/* L M N O */ 60212eaa94a1SchristosCASE_GROUND_STATE, 60222eaa94a1SchristosCASE_GROUND_STATE, 60232eaa94a1SchristosCASE_GROUND_STATE, 60242eaa94a1SchristosCASE_GROUND_STATE, 60252eaa94a1Schristos/* P Q R S */ 60262eaa94a1SchristosCASE_GROUND_STATE, 60272eaa94a1SchristosCASE_GROUND_STATE, 60282eaa94a1SchristosCASE_GROUND_STATE, 60292eaa94a1SchristosCASE_GROUND_STATE, 60302eaa94a1Schristos/* T U V W */ 60312eaa94a1SchristosCASE_GROUND_STATE, 60322eaa94a1SchristosCASE_GROUND_STATE, 60332eaa94a1SchristosCASE_GROUND_STATE, 60342eaa94a1SchristosCASE_GROUND_STATE, 60352eaa94a1Schristos/* X Y Z [ */ 60362eaa94a1SchristosCASE_GROUND_STATE, 60372eaa94a1SchristosCASE_GROUND_STATE, 60382eaa94a1SchristosCASE_GROUND_STATE, 60392eaa94a1SchristosCASE_GROUND_STATE, 60402eaa94a1Schristos/* \ ] ^ _ */ 60412eaa94a1SchristosCASE_GROUND_STATE, 60422eaa94a1SchristosCASE_GROUND_STATE, 60432eaa94a1SchristosCASE_GROUND_STATE, 60442eaa94a1SchristosCASE_GROUND_STATE, 60452eaa94a1Schristos/* ` a b c */ 60462eaa94a1SchristosCASE_GROUND_STATE, 60472eaa94a1SchristosCASE_GROUND_STATE, 60482eaa94a1SchristosCASE_GROUND_STATE, 60492eaa94a1SchristosCASE_GROUND_STATE, 60502eaa94a1Schristos/* d e f g */ 60512eaa94a1SchristosCASE_GROUND_STATE, 60522eaa94a1SchristosCASE_GROUND_STATE, 60532eaa94a1SchristosCASE_GROUND_STATE, 60542eaa94a1SchristosCASE_GROUND_STATE, 60552eaa94a1Schristos/* h i j k */ 60562eaa94a1SchristosCASE_GROUND_STATE, 60572eaa94a1SchristosCASE_GROUND_STATE, 60582eaa94a1SchristosCASE_GROUND_STATE, 60592eaa94a1SchristosCASE_GROUND_STATE, 60602eaa94a1Schristos/* l m n o */ 60612eaa94a1SchristosCASE_GROUND_STATE, 60622eaa94a1SchristosCASE_GROUND_STATE, 60632eaa94a1SchristosCASE_GROUND_STATE, 60642eaa94a1SchristosCASE_GROUND_STATE, 60652eaa94a1Schristos/* p q r s */ 60662eaa94a1SchristosCASE_GROUND_STATE, 60672eaa94a1SchristosCASE_GROUND_STATE, 60682eaa94a1SchristosCASE_GROUND_STATE, 60692eaa94a1SchristosCASE_GROUND_STATE, 60702eaa94a1Schristos/* t u v w */ 60712eaa94a1SchristosCASE_GROUND_STATE, 60722eaa94a1SchristosCASE_GROUND_STATE, 60732eaa94a1SchristosCASE_GROUND_STATE, 60742eaa94a1SchristosCASE_GROUND_STATE, 60752eaa94a1Schristos/* x y z { */ 60762eaa94a1SchristosCASE_GROUND_STATE, 60772eaa94a1SchristosCASE_GROUND_STATE, 60782eaa94a1SchristosCASE_GROUND_STATE, 60792eaa94a1SchristosCASE_GROUND_STATE, 60802eaa94a1Schristos/* | } ~ DEL */ 60812eaa94a1SchristosCASE_GROUND_STATE, 60822eaa94a1SchristosCASE_GROUND_STATE, 60832eaa94a1SchristosCASE_GROUND_STATE, 60842eaa94a1SchristosCASE_IGNORE, 60852eaa94a1Schristos/* 0x80 0x81 0x82 0x83 */ 60862eaa94a1SchristosCASE_GROUND_STATE, 60872eaa94a1SchristosCASE_GROUND_STATE, 60882eaa94a1SchristosCASE_GROUND_STATE, 60892eaa94a1SchristosCASE_GROUND_STATE, 60902eaa94a1Schristos/* 0x84 0x85 0x86 0x87 */ 60912eaa94a1SchristosCASE_IND, 60922eaa94a1SchristosCASE_NEL, 60932eaa94a1SchristosCASE_GROUND_STATE, 60942eaa94a1SchristosCASE_GROUND_STATE, 60952eaa94a1Schristos/* 0x88 0x89 0x8a 0x8b */ 60962eaa94a1SchristosCASE_HTS, 60972eaa94a1SchristosCASE_GROUND_STATE, 60982eaa94a1SchristosCASE_GROUND_STATE, 60992eaa94a1SchristosCASE_GROUND_STATE, 61002eaa94a1Schristos/* 0x8c 0x8d 0x8e 0x8f */ 61012eaa94a1SchristosCASE_GROUND_STATE, 61022eaa94a1SchristosCASE_RI, 61032eaa94a1SchristosCASE_SS2, 61042eaa94a1SchristosCASE_SS3, 61052eaa94a1Schristos/* 0x90 0x91 0x92 0x93 */ 61062eaa94a1SchristosCASE_DCS, 61072eaa94a1SchristosCASE_GROUND_STATE, 61082eaa94a1SchristosCASE_GROUND_STATE, 61092eaa94a1SchristosCASE_GROUND_STATE, 61102eaa94a1Schristos/* 0x94 0x95 0x96 0x97 */ 61112eaa94a1SchristosCASE_GROUND_STATE, 61122eaa94a1SchristosCASE_GROUND_STATE, 61132eaa94a1SchristosCASE_SPA, 61142eaa94a1SchristosCASE_EPA, 61152eaa94a1Schristos/* 0x98 0x99 0x9a 0x9b */ 61162eaa94a1SchristosCASE_SOS, 61172eaa94a1SchristosCASE_GROUND_STATE, 61182eaa94a1SchristosCASE_DECID, 61192eaa94a1SchristosCASE_CSI_STATE, 61202eaa94a1Schristos/* 0x9c 0x9d 0x9e 0x9f */ 61212eaa94a1SchristosCASE_ST, 61222eaa94a1SchristosCASE_OSC, 61232eaa94a1SchristosCASE_PM, 61242eaa94a1SchristosCASE_APC, 61252eaa94a1Schristos/* nobreakspace exclamdown cent sterling */ 61262eaa94a1SchristosCASE_ESC_IGNORE, 61272eaa94a1SchristosCASE_ESC_IGNORE, 61282eaa94a1SchristosCASE_ESC_IGNORE, 61292eaa94a1SchristosCASE_ESC_IGNORE, 61302eaa94a1Schristos/* currency yen brokenbar section */ 61312eaa94a1SchristosCASE_ESC_IGNORE, 61322eaa94a1SchristosCASE_ESC_IGNORE, 61332eaa94a1SchristosCASE_ESC_IGNORE, 61342eaa94a1SchristosCASE_ESC_IGNORE, 61352eaa94a1Schristos/* diaeresis copyright ordfeminine guillemotleft */ 61362eaa94a1SchristosCASE_ESC_IGNORE, 61372eaa94a1SchristosCASE_ESC_IGNORE, 61382eaa94a1SchristosCASE_ESC_IGNORE, 61392eaa94a1SchristosCASE_ESC_IGNORE, 61402eaa94a1Schristos/* notsign hyphen registered macron */ 61412eaa94a1SchristosCASE_ESC_IGNORE, 61422eaa94a1SchristosCASE_ESC_IGNORE, 61432eaa94a1SchristosCASE_ESC_IGNORE, 61442eaa94a1SchristosCASE_ESC_IGNORE, 61452eaa94a1Schristos/* degree plusminus twosuperior threesuperior */ 61462eaa94a1SchristosCASE_GROUND_STATE, 61472eaa94a1SchristosCASE_GROUND_STATE, 61482eaa94a1SchristosCASE_GROUND_STATE, 61492eaa94a1SchristosCASE_GROUND_STATE, 61502eaa94a1Schristos/* acute mu paragraph periodcentered */ 61512eaa94a1SchristosCASE_GROUND_STATE, 61522eaa94a1SchristosCASE_GROUND_STATE, 61532eaa94a1SchristosCASE_GROUND_STATE, 61542eaa94a1SchristosCASE_GROUND_STATE, 61552eaa94a1Schristos/* cedilla onesuperior masculine guillemotright */ 61562eaa94a1SchristosCASE_GROUND_STATE, 61572eaa94a1SchristosCASE_GROUND_STATE, 61582eaa94a1SchristosCASE_GROUND_STATE, 61592eaa94a1SchristosCASE_GROUND_STATE, 61602eaa94a1Schristos/* onequarter onehalf threequarters questiondown */ 61612eaa94a1SchristosCASE_GROUND_STATE, 61622eaa94a1SchristosCASE_GROUND_STATE, 61632eaa94a1SchristosCASE_GROUND_STATE, 61642eaa94a1SchristosCASE_GROUND_STATE, 61652eaa94a1Schristos/* Agrave Aacute Acircumflex Atilde */ 61662eaa94a1SchristosCASE_GROUND_STATE, 61672eaa94a1SchristosCASE_GSETS, 61682eaa94a1SchristosCASE_GROUND_STATE, 61692eaa94a1SchristosCASE_GROUND_STATE, 61702eaa94a1Schristos/* Adiaeresis Aring AE Ccedilla */ 61712eaa94a1SchristosCASE_GROUND_STATE, 61722eaa94a1SchristosCASE_GROUND_STATE, 61732eaa94a1SchristosCASE_GROUND_STATE, 61742eaa94a1SchristosCASE_GROUND_STATE, 61752eaa94a1Schristos/* Egrave Eacute Ecircumflex Ediaeresis */ 61762eaa94a1SchristosCASE_GROUND_STATE, 61772eaa94a1SchristosCASE_GROUND_STATE, 61782eaa94a1SchristosCASE_GROUND_STATE, 61792eaa94a1SchristosCASE_GROUND_STATE, 61802eaa94a1Schristos/* Igrave Iacute Icircumflex Idiaeresis */ 61812eaa94a1SchristosCASE_GROUND_STATE, 61822eaa94a1SchristosCASE_GROUND_STATE, 61832eaa94a1SchristosCASE_GROUND_STATE, 61842eaa94a1SchristosCASE_GROUND_STATE, 61852eaa94a1Schristos/* Eth Ntilde Ograve Oacute */ 61862eaa94a1SchristosCASE_GROUND_STATE, 61872eaa94a1SchristosCASE_GROUND_STATE, 61882eaa94a1SchristosCASE_GROUND_STATE, 61892eaa94a1SchristosCASE_GROUND_STATE, 61902eaa94a1Schristos/* Ocircumflex Otilde Odiaeresis multiply */ 61912eaa94a1SchristosCASE_GROUND_STATE, 61922eaa94a1SchristosCASE_GROUND_STATE, 61932eaa94a1SchristosCASE_GROUND_STATE, 61942eaa94a1SchristosCASE_GROUND_STATE, 61952eaa94a1Schristos/* Ooblique Ugrave Uacute Ucircumflex */ 61962eaa94a1SchristosCASE_GROUND_STATE, 61972eaa94a1SchristosCASE_GROUND_STATE, 61982eaa94a1SchristosCASE_GROUND_STATE, 61992eaa94a1SchristosCASE_GROUND_STATE, 62002eaa94a1Schristos/* Udiaeresis Yacute Thorn ssharp */ 62012eaa94a1SchristosCASE_GROUND_STATE, 62022eaa94a1SchristosCASE_GROUND_STATE, 62032eaa94a1SchristosCASE_GROUND_STATE, 62042eaa94a1SchristosCASE_GROUND_STATE, 62052eaa94a1Schristos/* agrave aacute acircumflex atilde */ 62062eaa94a1SchristosCASE_GROUND_STATE, 6207d522f475SmrgCASE_GROUND_STATE, 6208d522f475SmrgCASE_GROUND_STATE, 6209d522f475SmrgCASE_GROUND_STATE, 6210d522f475Smrg/* adiaeresis aring ae ccedilla */ 6211d522f475SmrgCASE_GROUND_STATE, 6212d522f475SmrgCASE_GROUND_STATE, 6213d522f475SmrgCASE_GROUND_STATE, 6214d522f475SmrgCASE_GROUND_STATE, 6215d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 6216d522f475SmrgCASE_GROUND_STATE, 6217d522f475SmrgCASE_GROUND_STATE, 6218d522f475SmrgCASE_GROUND_STATE, 6219d522f475SmrgCASE_GROUND_STATE, 6220d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 6221d522f475SmrgCASE_GROUND_STATE, 6222d522f475SmrgCASE_GROUND_STATE, 6223d522f475SmrgCASE_GROUND_STATE, 6224d522f475SmrgCASE_GROUND_STATE, 6225d522f475Smrg/* eth ntilde ograve oacute */ 6226d522f475SmrgCASE_GROUND_STATE, 6227d522f475SmrgCASE_GROUND_STATE, 6228d522f475SmrgCASE_GROUND_STATE, 6229d522f475SmrgCASE_GROUND_STATE, 6230d522f475Smrg/* ocircumflex otilde odiaeresis division */ 6231d522f475SmrgCASE_GROUND_STATE, 6232d522f475SmrgCASE_GROUND_STATE, 6233d522f475SmrgCASE_GROUND_STATE, 6234d522f475SmrgCASE_GROUND_STATE, 6235d522f475Smrg/* oslash ugrave uacute ucircumflex */ 6236d522f475SmrgCASE_GROUND_STATE, 6237d522f475SmrgCASE_GROUND_STATE, 6238d522f475SmrgCASE_GROUND_STATE, 6239d522f475SmrgCASE_GROUND_STATE, 6240d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 6241d522f475SmrgCASE_GROUND_STATE, 6242d522f475SmrgCASE_GROUND_STATE, 6243d522f475SmrgCASE_GROUND_STATE, 6244d522f475SmrgCASE_IGNORE, 6245d522f475Smrg}; 6246d522f475Smrg 6247d522f475Smrg/* 6248d522f475Smrg * This table is treated specially. The CASE_IGNORE entries correspond to the 6249d522f475Smrg * characters that can be accumulated for the string function (e.g., OSC). 6250d522f475Smrg */ 6251d522f475SmrgConst PARSE_T sos_table[] = /* OSC, DCS, etc. */ 6252d522f475Smrg{ 6253d522f475Smrg/* NUL SOH STX ETX */ 6254d522f475SmrgCASE_IGNORE, 6255d522f475SmrgCASE_IGNORE, 6256d522f475SmrgCASE_IGNORE, 6257d522f475SmrgCASE_IGNORE, 6258d522f475Smrg/* EOT ENQ ACK BEL */ 6259d522f475SmrgCASE_IGNORE, 6260d522f475SmrgCASE_IGNORE, 6261d522f475SmrgCASE_IGNORE, 6262d522f475SmrgCASE_BELL, 6263d522f475Smrg/* BS HT NL VT */ 6264d522f475SmrgCASE_IGNORE, 6265d522f475SmrgCASE_IGNORE, 6266d522f475SmrgCASE_IGNORE, 6267d522f475SmrgCASE_IGNORE, 6268d522f475Smrg/* NP CR SO SI */ 6269d522f475SmrgCASE_IGNORE, 6270d522f475SmrgCASE_IGNORE, 6271d522f475SmrgCASE_IGNORE, 6272d522f475SmrgCASE_IGNORE, 6273d522f475Smrg/* DLE DC1 DC2 DC3 */ 6274d522f475SmrgCASE_IGNORE, 6275d522f475SmrgCASE_IGNORE, 6276d522f475SmrgCASE_IGNORE, 6277d522f475SmrgCASE_IGNORE, 6278d522f475Smrg/* DC4 NAK SYN ETB */ 6279d522f475SmrgCASE_IGNORE, 6280d522f475SmrgCASE_IGNORE, 6281d522f475SmrgCASE_IGNORE, 6282d522f475SmrgCASE_IGNORE, 6283d522f475Smrg/* CAN EM SUB ESC */ 6284d522f475SmrgCASE_GROUND_STATE, 6285d522f475SmrgCASE_IGNORE, 6286d522f475SmrgCASE_GROUND_STATE, 6287d522f475SmrgCASE_ESC, 6288d522f475Smrg/* FS GS RS US */ 6289d522f475SmrgCASE_IGNORE, 6290d522f475SmrgCASE_IGNORE, 6291d522f475SmrgCASE_IGNORE, 6292d522f475SmrgCASE_IGNORE, 6293d522f475Smrg/* SP ! " # */ 6294d522f475SmrgCASE_IGNORE, 6295d522f475SmrgCASE_IGNORE, 6296d522f475SmrgCASE_IGNORE, 6297d522f475SmrgCASE_IGNORE, 6298d522f475Smrg/* $ % & ' */ 6299d522f475SmrgCASE_IGNORE, 6300d522f475SmrgCASE_IGNORE, 6301d522f475SmrgCASE_IGNORE, 6302d522f475SmrgCASE_IGNORE, 6303d522f475Smrg/* ( ) * + */ 6304d522f475SmrgCASE_IGNORE, 6305d522f475SmrgCASE_IGNORE, 6306d522f475SmrgCASE_IGNORE, 6307d522f475SmrgCASE_IGNORE, 6308d522f475Smrg/* , - . / */ 6309d522f475SmrgCASE_IGNORE, 6310d522f475SmrgCASE_IGNORE, 6311d522f475SmrgCASE_IGNORE, 6312d522f475SmrgCASE_IGNORE, 6313d522f475Smrg/* 0 1 2 3 */ 6314d522f475SmrgCASE_IGNORE, 6315d522f475SmrgCASE_IGNORE, 6316d522f475SmrgCASE_IGNORE, 6317d522f475SmrgCASE_IGNORE, 6318d522f475Smrg/* 4 5 6 7 */ 6319d522f475SmrgCASE_IGNORE, 6320d522f475SmrgCASE_IGNORE, 6321d522f475SmrgCASE_IGNORE, 6322d522f475SmrgCASE_IGNORE, 6323d522f475Smrg/* 8 9 : ; */ 6324d522f475SmrgCASE_IGNORE, 6325d522f475SmrgCASE_IGNORE, 6326d522f475SmrgCASE_IGNORE, 6327d522f475SmrgCASE_IGNORE, 6328d522f475Smrg/* < = > ? */ 6329d522f475SmrgCASE_IGNORE, 6330d522f475SmrgCASE_IGNORE, 6331d522f475SmrgCASE_IGNORE, 6332d522f475SmrgCASE_IGNORE, 6333d522f475Smrg/* @ A B C */ 6334d522f475SmrgCASE_IGNORE, 6335d522f475SmrgCASE_IGNORE, 6336d522f475SmrgCASE_IGNORE, 6337d522f475SmrgCASE_IGNORE, 6338d522f475Smrg/* D E F G */ 6339d522f475SmrgCASE_IGNORE, 6340d522f475SmrgCASE_IGNORE, 6341d522f475SmrgCASE_IGNORE, 6342d522f475SmrgCASE_IGNORE, 6343d522f475Smrg/* H I J K */ 6344d522f475SmrgCASE_IGNORE, 6345d522f475SmrgCASE_IGNORE, 6346d522f475SmrgCASE_IGNORE, 6347d522f475SmrgCASE_IGNORE, 6348d522f475Smrg/* L M N O */ 6349d522f475SmrgCASE_IGNORE, 6350d522f475SmrgCASE_IGNORE, 6351d522f475SmrgCASE_IGNORE, 6352d522f475SmrgCASE_IGNORE, 6353d522f475Smrg/* P Q R S */ 6354d522f475SmrgCASE_IGNORE, 6355d522f475SmrgCASE_IGNORE, 6356d522f475SmrgCASE_IGNORE, 6357d522f475SmrgCASE_IGNORE, 6358d522f475Smrg/* T U V W */ 6359d522f475SmrgCASE_IGNORE, 6360d522f475SmrgCASE_IGNORE, 6361d522f475SmrgCASE_IGNORE, 6362d522f475SmrgCASE_IGNORE, 6363d522f475Smrg/* X Y Z [ */ 6364d522f475SmrgCASE_IGNORE, 6365d522f475SmrgCASE_IGNORE, 6366d522f475SmrgCASE_IGNORE, 6367d522f475SmrgCASE_IGNORE, 6368d522f475Smrg/* \ ] ^ _ */ 6369d522f475SmrgCASE_IGNORE, 6370d522f475SmrgCASE_IGNORE, 6371d522f475SmrgCASE_IGNORE, 6372d522f475SmrgCASE_IGNORE, 6373d522f475Smrg/* ` a b c */ 6374d522f475SmrgCASE_IGNORE, 6375d522f475SmrgCASE_IGNORE, 6376d522f475SmrgCASE_IGNORE, 6377d522f475SmrgCASE_IGNORE, 6378d522f475Smrg/* d e f g */ 6379d522f475SmrgCASE_IGNORE, 6380d522f475SmrgCASE_IGNORE, 6381d522f475SmrgCASE_IGNORE, 6382d522f475SmrgCASE_IGNORE, 6383d522f475Smrg/* h i j k */ 6384d522f475SmrgCASE_IGNORE, 6385d522f475SmrgCASE_IGNORE, 6386d522f475SmrgCASE_IGNORE, 6387d522f475SmrgCASE_IGNORE, 6388d522f475Smrg/* l m n o */ 6389d522f475SmrgCASE_IGNORE, 6390d522f475SmrgCASE_IGNORE, 6391d522f475SmrgCASE_IGNORE, 6392d522f475SmrgCASE_IGNORE, 6393d522f475Smrg/* p q r s */ 6394d522f475SmrgCASE_IGNORE, 6395d522f475SmrgCASE_IGNORE, 6396d522f475SmrgCASE_IGNORE, 6397d522f475SmrgCASE_IGNORE, 6398d522f475Smrg/* t u v w */ 6399d522f475SmrgCASE_IGNORE, 6400d522f475SmrgCASE_IGNORE, 6401d522f475SmrgCASE_IGNORE, 6402d522f475SmrgCASE_IGNORE, 6403d522f475Smrg/* x y z { */ 6404d522f475SmrgCASE_IGNORE, 6405d522f475SmrgCASE_IGNORE, 6406d522f475SmrgCASE_IGNORE, 6407d522f475SmrgCASE_IGNORE, 6408d522f475Smrg/* | } ~ DEL */ 6409d522f475SmrgCASE_IGNORE, 6410d522f475SmrgCASE_IGNORE, 6411d522f475SmrgCASE_IGNORE, 6412d522f475SmrgCASE_IGNORE, 6413d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 6414d522f475SmrgCASE_GROUND_STATE, 6415d522f475SmrgCASE_GROUND_STATE, 6416d522f475SmrgCASE_GROUND_STATE, 6417d522f475SmrgCASE_GROUND_STATE, 6418d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 6419d522f475SmrgCASE_IND, 6420d522f475SmrgCASE_NEL, 6421d522f475SmrgCASE_GROUND_STATE, 6422d522f475SmrgCASE_GROUND_STATE, 6423d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 6424d522f475SmrgCASE_HTS, 6425d522f475SmrgCASE_GROUND_STATE, 6426d522f475SmrgCASE_GROUND_STATE, 6427d522f475SmrgCASE_GROUND_STATE, 6428d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 6429d522f475SmrgCASE_GROUND_STATE, 6430d522f475SmrgCASE_RI, 6431d522f475SmrgCASE_SS2, 6432d522f475SmrgCASE_SS3, 6433d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 6434d522f475SmrgCASE_DCS, 6435d522f475SmrgCASE_GROUND_STATE, 6436d522f475SmrgCASE_GROUND_STATE, 6437d522f475SmrgCASE_GROUND_STATE, 6438d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 6439d522f475SmrgCASE_GROUND_STATE, 6440d522f475SmrgCASE_GROUND_STATE, 6441d522f475SmrgCASE_SPA, 6442d522f475SmrgCASE_EPA, 6443d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 6444d522f475SmrgCASE_SOS, 6445d522f475SmrgCASE_GROUND_STATE, 6446d522f475SmrgCASE_DECID, 6447d522f475SmrgCASE_CSI_STATE, 6448d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 6449d522f475SmrgCASE_ST, 6450d522f475SmrgCASE_OSC, 6451d522f475SmrgCASE_PM, 6452d522f475SmrgCASE_APC, 6453d522f475Smrg/* nobreakspace exclamdown cent sterling */ 6454d522f475SmrgCASE_IGNORE, 6455d522f475SmrgCASE_IGNORE, 6456d522f475SmrgCASE_IGNORE, 6457d522f475SmrgCASE_IGNORE, 6458d522f475Smrg/* currency yen brokenbar section */ 6459d522f475SmrgCASE_IGNORE, 6460d522f475SmrgCASE_IGNORE, 6461d522f475SmrgCASE_IGNORE, 6462d522f475SmrgCASE_IGNORE, 6463d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 6464d522f475SmrgCASE_IGNORE, 6465d522f475SmrgCASE_IGNORE, 6466d522f475SmrgCASE_IGNORE, 6467d522f475SmrgCASE_IGNORE, 6468d522f475Smrg/* notsign hyphen registered macron */ 6469d522f475SmrgCASE_IGNORE, 6470d522f475SmrgCASE_IGNORE, 6471d522f475SmrgCASE_IGNORE, 6472d522f475SmrgCASE_IGNORE, 6473d522f475Smrg/* degree plusminus twosuperior threesuperior */ 6474d522f475SmrgCASE_IGNORE, 6475d522f475SmrgCASE_IGNORE, 6476d522f475SmrgCASE_IGNORE, 6477d522f475SmrgCASE_IGNORE, 6478d522f475Smrg/* acute mu paragraph periodcentered */ 6479d522f475SmrgCASE_IGNORE, 6480d522f475SmrgCASE_IGNORE, 6481d522f475SmrgCASE_IGNORE, 6482d522f475SmrgCASE_IGNORE, 6483d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 6484d522f475SmrgCASE_IGNORE, 6485d522f475SmrgCASE_IGNORE, 6486d522f475SmrgCASE_IGNORE, 6487d522f475SmrgCASE_IGNORE, 6488d522f475Smrg/* onequarter onehalf threequarters questiondown */ 6489d522f475SmrgCASE_IGNORE, 6490d522f475SmrgCASE_IGNORE, 6491d522f475SmrgCASE_IGNORE, 6492d522f475SmrgCASE_IGNORE, 6493d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 6494d522f475SmrgCASE_IGNORE, 6495d522f475SmrgCASE_IGNORE, 6496d522f475SmrgCASE_IGNORE, 6497d522f475SmrgCASE_IGNORE, 6498d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 6499d522f475SmrgCASE_IGNORE, 6500d522f475SmrgCASE_IGNORE, 6501d522f475SmrgCASE_IGNORE, 6502d522f475SmrgCASE_IGNORE, 6503d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 6504d522f475SmrgCASE_IGNORE, 6505d522f475SmrgCASE_IGNORE, 6506d522f475SmrgCASE_IGNORE, 6507d522f475SmrgCASE_IGNORE, 6508d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 6509d522f475SmrgCASE_IGNORE, 6510d522f475SmrgCASE_IGNORE, 6511d522f475SmrgCASE_IGNORE, 6512d522f475SmrgCASE_IGNORE, 6513d522f475Smrg/* Eth Ntilde Ograve Oacute */ 6514d522f475SmrgCASE_IGNORE, 6515d522f475SmrgCASE_IGNORE, 6516d522f475SmrgCASE_IGNORE, 6517d522f475SmrgCASE_IGNORE, 6518d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 6519d522f475SmrgCASE_IGNORE, 6520d522f475SmrgCASE_IGNORE, 6521d522f475SmrgCASE_IGNORE, 6522d522f475SmrgCASE_IGNORE, 6523d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 6524d522f475SmrgCASE_IGNORE, 6525d522f475SmrgCASE_IGNORE, 6526d522f475SmrgCASE_IGNORE, 6527d522f475SmrgCASE_IGNORE, 6528d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 6529d522f475SmrgCASE_IGNORE, 6530d522f475SmrgCASE_IGNORE, 6531d522f475SmrgCASE_IGNORE, 6532d522f475SmrgCASE_IGNORE, 6533d522f475Smrg/* agrave aacute acircumflex atilde */ 6534d522f475SmrgCASE_IGNORE, 6535d522f475SmrgCASE_IGNORE, 6536d522f475SmrgCASE_IGNORE, 6537d522f475SmrgCASE_IGNORE, 6538d522f475Smrg/* adiaeresis aring ae ccedilla */ 6539d522f475SmrgCASE_IGNORE, 6540d522f475SmrgCASE_IGNORE, 6541d522f475SmrgCASE_IGNORE, 6542d522f475SmrgCASE_IGNORE, 6543d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 6544d522f475SmrgCASE_IGNORE, 6545d522f475SmrgCASE_IGNORE, 6546d522f475SmrgCASE_IGNORE, 6547d522f475SmrgCASE_IGNORE, 6548d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 6549d522f475SmrgCASE_IGNORE, 6550d522f475SmrgCASE_IGNORE, 6551d522f475SmrgCASE_IGNORE, 6552d522f475SmrgCASE_IGNORE, 6553d522f475Smrg/* eth ntilde ograve oacute */ 6554d522f475SmrgCASE_IGNORE, 6555d522f475SmrgCASE_IGNORE, 6556d522f475SmrgCASE_IGNORE, 6557d522f475SmrgCASE_IGNORE, 6558d522f475Smrg/* ocircumflex otilde odiaeresis division */ 6559d522f475SmrgCASE_IGNORE, 6560d522f475SmrgCASE_IGNORE, 6561d522f475SmrgCASE_IGNORE, 6562d522f475SmrgCASE_IGNORE, 6563d522f475Smrg/* oslash ugrave uacute ucircumflex */ 6564d522f475SmrgCASE_IGNORE, 6565d522f475SmrgCASE_IGNORE, 6566d522f475SmrgCASE_IGNORE, 6567d522f475SmrgCASE_IGNORE, 6568d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 6569d522f475SmrgCASE_IGNORE, 6570d522f475SmrgCASE_IGNORE, 6571d522f475SmrgCASE_IGNORE, 6572d522f475SmrgCASE_IGNORE, 6573d522f475Smrg}; 6574d522f475Smrg 6575d522f475Smrg#if OPT_WIDE_CHARS 6576d522f475SmrgConst PARSE_T esc_pct_table[] = /* ESC % */ 6577d522f475Smrg{ 6578d522f475Smrg/* NUL SOH STX ETX */ 6579d522f475SmrgCASE_IGNORE, 6580d522f475SmrgCASE_IGNORE, 6581d522f475SmrgCASE_IGNORE, 6582d522f475SmrgCASE_IGNORE, 6583d522f475Smrg/* EOT ENQ ACK BEL */ 6584d522f475SmrgCASE_IGNORE, 6585d522f475SmrgCASE_ENQ, 6586d522f475SmrgCASE_IGNORE, 6587d522f475SmrgCASE_BELL, 6588d522f475Smrg/* BS HT NL VT */ 6589d522f475SmrgCASE_BS, 6590d522f475SmrgCASE_TAB, 6591d522f475SmrgCASE_VMOT, 6592d522f475SmrgCASE_VMOT, 6593d522f475Smrg/* NP CR SO SI */ 6594d522f475SmrgCASE_VMOT, 6595d522f475SmrgCASE_CR, 6596d522f475SmrgCASE_SO, 6597d522f475SmrgCASE_SI, 6598d522f475Smrg/* DLE DC1 DC2 DC3 */ 6599d522f475SmrgCASE_IGNORE, 6600d522f475SmrgCASE_IGNORE, 6601d522f475SmrgCASE_IGNORE, 6602d522f475SmrgCASE_IGNORE, 6603d522f475Smrg/* DC4 NAK SYN ETB */ 6604d522f475SmrgCASE_IGNORE, 6605d522f475SmrgCASE_IGNORE, 6606d522f475SmrgCASE_IGNORE, 6607d522f475SmrgCASE_IGNORE, 6608d522f475Smrg/* CAN EM SUB ESC */ 6609d522f475SmrgCASE_GROUND_STATE, 6610d522f475SmrgCASE_IGNORE, 6611d522f475SmrgCASE_GROUND_STATE, 6612d522f475SmrgCASE_ESC, 6613d522f475Smrg/* FS GS RS US */ 6614d522f475SmrgCASE_IGNORE, 6615d522f475SmrgCASE_IGNORE, 6616d522f475SmrgCASE_IGNORE, 6617d522f475SmrgCASE_IGNORE, 6618d522f475Smrg/* SP ! " # */ 6619d522f475SmrgCASE_ESC_IGNORE, 6620d522f475SmrgCASE_ESC_IGNORE, 6621d522f475SmrgCASE_ESC_IGNORE, 6622d522f475SmrgCASE_ESC_IGNORE, 6623d522f475Smrg/* $ % & ' */ 6624d522f475SmrgCASE_ESC_IGNORE, 6625d522f475SmrgCASE_ESC_IGNORE, 6626d522f475SmrgCASE_ESC_IGNORE, 6627d522f475SmrgCASE_ESC_IGNORE, 6628d522f475Smrg/* ( ) * + */ 6629d522f475SmrgCASE_ESC_IGNORE, 6630d522f475SmrgCASE_ESC_IGNORE, 6631d522f475SmrgCASE_ESC_IGNORE, 6632d522f475SmrgCASE_ESC_IGNORE, 6633d522f475Smrg/* , - . / */ 6634d522f475SmrgCASE_ESC_IGNORE, 6635d522f475SmrgCASE_ESC_IGNORE, 6636d522f475SmrgCASE_ESC_IGNORE, 6637d522f475SmrgCASE_ESC_IGNORE, 6638d522f475Smrg/* 0 1 2 3 */ 6639d522f475SmrgCASE_GROUND_STATE, 6640d522f475SmrgCASE_GROUND_STATE, 6641d522f475SmrgCASE_GROUND_STATE, 6642d522f475SmrgCASE_GROUND_STATE, 6643d522f475Smrg/* 4 5 6 7 */ 6644d522f475SmrgCASE_GROUND_STATE, 6645d522f475SmrgCASE_GROUND_STATE, 6646d522f475SmrgCASE_GROUND_STATE, 6647d522f475SmrgCASE_GROUND_STATE, 6648d522f475Smrg/* 8 9 : ; */ 6649d522f475SmrgCASE_GROUND_STATE, 6650d522f475SmrgCASE_GROUND_STATE, 6651d522f475SmrgCASE_GROUND_STATE, 6652d522f475SmrgCASE_GROUND_STATE, 6653d522f475Smrg/* < = > ? */ 6654d522f475SmrgCASE_GROUND_STATE, 6655d522f475SmrgCASE_GROUND_STATE, 6656d522f475SmrgCASE_GROUND_STATE, 6657d522f475SmrgCASE_GROUND_STATE, 6658d522f475Smrg/* @ A B C */ 6659d522f475SmrgCASE_UTF8, 6660d522f475SmrgCASE_GROUND_STATE, 6661d522f475SmrgCASE_GROUND_STATE, 6662d522f475SmrgCASE_GROUND_STATE, 6663d522f475Smrg/* D E F G */ 6664d522f475SmrgCASE_GROUND_STATE, 6665d522f475SmrgCASE_GROUND_STATE, 6666d522f475SmrgCASE_GROUND_STATE, 6667d522f475SmrgCASE_UTF8, 6668d522f475Smrg/* H I J K */ 6669d522f475SmrgCASE_GROUND_STATE, 6670d522f475SmrgCASE_GROUND_STATE, 6671d522f475SmrgCASE_GROUND_STATE, 6672d522f475SmrgCASE_GROUND_STATE, 6673d522f475Smrg/* L M N O */ 6674d522f475SmrgCASE_GROUND_STATE, 6675d522f475SmrgCASE_GROUND_STATE, 6676d522f475SmrgCASE_GROUND_STATE, 6677d522f475SmrgCASE_GROUND_STATE, 6678d522f475Smrg/* P Q R S */ 6679d522f475SmrgCASE_GROUND_STATE, 6680d522f475SmrgCASE_GROUND_STATE, 6681d522f475SmrgCASE_GROUND_STATE, 6682d522f475SmrgCASE_GROUND_STATE, 6683d522f475Smrg/* T U V W */ 6684d522f475SmrgCASE_GROUND_STATE, 6685d522f475SmrgCASE_GROUND_STATE, 6686d522f475SmrgCASE_GROUND_STATE, 6687d522f475SmrgCASE_GROUND_STATE, 6688d522f475Smrg/* X Y Z [ */ 6689d522f475SmrgCASE_GROUND_STATE, 6690d522f475SmrgCASE_GROUND_STATE, 6691d522f475SmrgCASE_GROUND_STATE, 6692d522f475SmrgCASE_GROUND_STATE, 6693d522f475Smrg/* \ ] ^ _ */ 6694d522f475SmrgCASE_GROUND_STATE, 6695d522f475SmrgCASE_GROUND_STATE, 6696d522f475SmrgCASE_GROUND_STATE, 6697d522f475SmrgCASE_GROUND_STATE, 6698d522f475Smrg/* ` a b c */ 6699d522f475SmrgCASE_GROUND_STATE, 6700d522f475SmrgCASE_GROUND_STATE, 6701d522f475SmrgCASE_GROUND_STATE, 6702d522f475SmrgCASE_GROUND_STATE, 6703d522f475Smrg/* d e f g */ 6704d522f475SmrgCASE_GROUND_STATE, 6705d522f475SmrgCASE_GROUND_STATE, 6706d522f475SmrgCASE_GROUND_STATE, 6707d522f475SmrgCASE_GROUND_STATE, 6708d522f475Smrg/* h i j k */ 6709d522f475SmrgCASE_GROUND_STATE, 6710d522f475SmrgCASE_GROUND_STATE, 6711d522f475SmrgCASE_GROUND_STATE, 6712d522f475SmrgCASE_GROUND_STATE, 6713d522f475Smrg/* l m n o */ 6714d522f475SmrgCASE_GROUND_STATE, 6715d522f475SmrgCASE_GROUND_STATE, 6716d522f475SmrgCASE_GROUND_STATE, 6717d522f475SmrgCASE_GROUND_STATE, 6718d522f475Smrg/* p q r s */ 6719d522f475SmrgCASE_GROUND_STATE, 6720d522f475SmrgCASE_GROUND_STATE, 6721d522f475SmrgCASE_GROUND_STATE, 6722d522f475SmrgCASE_GROUND_STATE, 6723d522f475Smrg/* t u v w */ 6724d522f475SmrgCASE_GROUND_STATE, 6725d522f475SmrgCASE_GROUND_STATE, 6726d522f475SmrgCASE_GROUND_STATE, 6727d522f475SmrgCASE_GROUND_STATE, 6728d522f475Smrg/* x y z { */ 6729d522f475SmrgCASE_GROUND_STATE, 6730d522f475SmrgCASE_GROUND_STATE, 6731d522f475SmrgCASE_GROUND_STATE, 6732d522f475SmrgCASE_GROUND_STATE, 6733d522f475Smrg/* | } ~ DEL */ 6734d522f475SmrgCASE_GROUND_STATE, 6735d522f475SmrgCASE_GROUND_STATE, 6736d522f475SmrgCASE_GROUND_STATE, 6737d522f475SmrgCASE_IGNORE, 6738d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 6739d522f475SmrgCASE_GROUND_STATE, 6740d522f475SmrgCASE_GROUND_STATE, 6741d522f475SmrgCASE_GROUND_STATE, 6742d522f475SmrgCASE_GROUND_STATE, 6743d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 6744d522f475SmrgCASE_IND, 6745d522f475SmrgCASE_NEL, 6746d522f475SmrgCASE_GROUND_STATE, 6747d522f475SmrgCASE_GROUND_STATE, 6748d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 6749d522f475SmrgCASE_HTS, 6750d522f475SmrgCASE_GROUND_STATE, 6751d522f475SmrgCASE_GROUND_STATE, 6752d522f475SmrgCASE_GROUND_STATE, 6753d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 6754d522f475SmrgCASE_GROUND_STATE, 6755d522f475SmrgCASE_RI, 6756d522f475SmrgCASE_SS2, 6757d522f475SmrgCASE_SS3, 6758d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 6759d522f475SmrgCASE_DCS, 6760d522f475SmrgCASE_GROUND_STATE, 6761d522f475SmrgCASE_GROUND_STATE, 6762d522f475SmrgCASE_GROUND_STATE, 6763d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 6764d522f475SmrgCASE_GROUND_STATE, 6765d522f475SmrgCASE_GROUND_STATE, 6766d522f475SmrgCASE_SPA, 6767d522f475SmrgCASE_EPA, 6768d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 6769d522f475SmrgCASE_SOS, 6770d522f475SmrgCASE_GROUND_STATE, 6771d522f475SmrgCASE_DECID, 6772d522f475SmrgCASE_CSI_STATE, 6773d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 6774d522f475SmrgCASE_ST, 6775d522f475SmrgCASE_OSC, 6776d522f475SmrgCASE_PM, 6777d522f475SmrgCASE_APC, 6778d522f475Smrg/* nobreakspace exclamdown cent sterling */ 6779d522f475SmrgCASE_ESC_IGNORE, 6780d522f475SmrgCASE_ESC_IGNORE, 6781d522f475SmrgCASE_ESC_IGNORE, 6782d522f475SmrgCASE_ESC_IGNORE, 6783d522f475Smrg/* currency yen brokenbar section */ 6784d522f475SmrgCASE_ESC_IGNORE, 6785d522f475SmrgCASE_ESC_IGNORE, 6786d522f475SmrgCASE_ESC_IGNORE, 6787d522f475SmrgCASE_ESC_IGNORE, 6788d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 6789d522f475SmrgCASE_ESC_IGNORE, 6790d522f475SmrgCASE_ESC_IGNORE, 6791d522f475SmrgCASE_ESC_IGNORE, 6792d522f475SmrgCASE_ESC_IGNORE, 6793d522f475Smrg/* notsign hyphen registered macron */ 6794d522f475SmrgCASE_ESC_IGNORE, 6795d522f475SmrgCASE_ESC_IGNORE, 6796d522f475SmrgCASE_ESC_IGNORE, 6797d522f475SmrgCASE_ESC_IGNORE, 6798d522f475Smrg/* degree plusminus twosuperior threesuperior */ 6799d522f475SmrgCASE_GROUND_STATE, 6800d522f475SmrgCASE_GROUND_STATE, 6801d522f475SmrgCASE_GROUND_STATE, 6802d522f475SmrgCASE_GROUND_STATE, 6803d522f475Smrg/* acute mu paragraph periodcentered */ 6804d522f475SmrgCASE_GROUND_STATE, 6805d522f475SmrgCASE_GROUND_STATE, 6806d522f475SmrgCASE_GROUND_STATE, 6807d522f475SmrgCASE_GROUND_STATE, 6808d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 6809d522f475SmrgCASE_GROUND_STATE, 6810d522f475SmrgCASE_GROUND_STATE, 6811d522f475SmrgCASE_GROUND_STATE, 6812d522f475SmrgCASE_GROUND_STATE, 6813d522f475Smrg/* onequarter onehalf threequarters questiondown */ 6814d522f475SmrgCASE_GROUND_STATE, 6815d522f475SmrgCASE_GROUND_STATE, 6816d522f475SmrgCASE_GROUND_STATE, 6817d522f475SmrgCASE_GROUND_STATE, 6818d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 6819d522f475SmrgCASE_UTF8, 6820d522f475SmrgCASE_GROUND_STATE, 6821d522f475SmrgCASE_GROUND_STATE, 6822d522f475SmrgCASE_GROUND_STATE, 6823d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 6824d522f475SmrgCASE_GROUND_STATE, 6825d522f475SmrgCASE_GROUND_STATE, 6826d522f475SmrgCASE_GROUND_STATE, 6827d522f475SmrgCASE_UTF8, 6828d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 6829d522f475SmrgCASE_GROUND_STATE, 6830d522f475SmrgCASE_GROUND_STATE, 6831d522f475SmrgCASE_GROUND_STATE, 6832d522f475SmrgCASE_GROUND_STATE, 6833d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 6834d522f475SmrgCASE_GROUND_STATE, 6835d522f475SmrgCASE_GROUND_STATE, 6836d522f475SmrgCASE_GROUND_STATE, 6837d522f475SmrgCASE_GROUND_STATE, 6838d522f475Smrg/* Eth Ntilde Ograve Oacute */ 6839d522f475SmrgCASE_GROUND_STATE, 6840d522f475SmrgCASE_GROUND_STATE, 6841d522f475SmrgCASE_GROUND_STATE, 6842d522f475SmrgCASE_GROUND_STATE, 6843d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 6844d522f475SmrgCASE_GROUND_STATE, 6845d522f475SmrgCASE_GROUND_STATE, 6846d522f475SmrgCASE_GROUND_STATE, 6847d522f475SmrgCASE_GROUND_STATE, 6848d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 6849d522f475SmrgCASE_GROUND_STATE, 6850d522f475SmrgCASE_GROUND_STATE, 6851d522f475SmrgCASE_GROUND_STATE, 6852d522f475SmrgCASE_GROUND_STATE, 6853d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 6854d522f475SmrgCASE_GROUND_STATE, 6855d522f475SmrgCASE_GROUND_STATE, 6856d522f475SmrgCASE_GROUND_STATE, 6857d522f475SmrgCASE_GROUND_STATE, 6858d522f475Smrg/* agrave aacute acircumflex atilde */ 6859d522f475SmrgCASE_GROUND_STATE, 6860d522f475SmrgCASE_GROUND_STATE, 6861d522f475SmrgCASE_GROUND_STATE, 6862d522f475SmrgCASE_GROUND_STATE, 6863d522f475Smrg/* adiaeresis aring ae ccedilla */ 6864d522f475SmrgCASE_GROUND_STATE, 6865d522f475SmrgCASE_GROUND_STATE, 6866d522f475SmrgCASE_GROUND_STATE, 6867d522f475SmrgCASE_GROUND_STATE, 6868d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 6869d522f475SmrgCASE_GROUND_STATE, 6870d522f475SmrgCASE_GROUND_STATE, 6871d522f475SmrgCASE_GROUND_STATE, 6872d522f475SmrgCASE_GROUND_STATE, 6873d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 6874d522f475SmrgCASE_GROUND_STATE, 6875d522f475SmrgCASE_GROUND_STATE, 6876d522f475SmrgCASE_GROUND_STATE, 6877d522f475SmrgCASE_GROUND_STATE, 6878d522f475Smrg/* eth ntilde ograve oacute */ 6879d522f475SmrgCASE_GROUND_STATE, 6880d522f475SmrgCASE_GROUND_STATE, 6881d522f475SmrgCASE_GROUND_STATE, 6882d522f475SmrgCASE_GROUND_STATE, 6883d522f475Smrg/* ocircumflex otilde odiaeresis division */ 6884d522f475SmrgCASE_GROUND_STATE, 6885d522f475SmrgCASE_GROUND_STATE, 6886d522f475SmrgCASE_GROUND_STATE, 6887d522f475SmrgCASE_GROUND_STATE, 6888d522f475Smrg/* oslash ugrave uacute ucircumflex */ 6889d522f475SmrgCASE_GROUND_STATE, 6890d522f475SmrgCASE_GROUND_STATE, 6891d522f475SmrgCASE_GROUND_STATE, 6892d522f475SmrgCASE_GROUND_STATE, 6893d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 6894d522f475SmrgCASE_GROUND_STATE, 6895d522f475SmrgCASE_GROUND_STATE, 6896d522f475SmrgCASE_GROUND_STATE, 6897d522f475SmrgCASE_IGNORE, 6898d522f475Smrg}; 6899d522f475Smrg#endif /* OPT_WIDE_CHARS */ 6900d522f475Smrg 6901d522f475Smrg#if OPT_VT52_MODE 6902d522f475SmrgConst PARSE_T vt52_table[] = 6903d522f475Smrg{ 6904d522f475Smrg/* NUL SOH STX ETX */ 6905d522f475SmrgCASE_IGNORE, 6906d522f475SmrgCASE_IGNORE, 6907d522f475SmrgCASE_IGNORE, 6908d522f475SmrgCASE_IGNORE, 6909d522f475Smrg/* EOT ENQ ACK BEL */ 6910d522f475SmrgCASE_IGNORE, 6911d522f475SmrgCASE_ENQ, 6912d522f475SmrgCASE_IGNORE, 6913d522f475SmrgCASE_BELL, 6914d522f475Smrg/* BS HT NL VT */ 6915d522f475SmrgCASE_BS, 6916d522f475SmrgCASE_TAB, 6917d522f475SmrgCASE_VMOT, 6918d522f475SmrgCASE_VMOT, 6919d522f475Smrg/* NP CR SO SI */ 6920d522f475SmrgCASE_VMOT, 6921d522f475SmrgCASE_CR, 6922d522f475SmrgCASE_IGNORE, 6923d522f475SmrgCASE_IGNORE, 6924d522f475Smrg/* DLE DC1 DC2 DC3 */ 6925d522f475SmrgCASE_IGNORE, 6926d522f475SmrgCASE_IGNORE, 6927d522f475SmrgCASE_IGNORE, 6928d522f475SmrgCASE_IGNORE, 6929d522f475Smrg/* DC4 NAK SYN ETB */ 6930d522f475SmrgCASE_IGNORE, 6931d522f475SmrgCASE_IGNORE, 6932d522f475SmrgCASE_IGNORE, 6933d522f475SmrgCASE_IGNORE, 6934d522f475Smrg/* CAN EM SUB ESC */ 6935d522f475SmrgCASE_GROUND_STATE, 6936d522f475SmrgCASE_IGNORE, 6937d522f475SmrgCASE_GROUND_STATE, 6938d522f475SmrgCASE_ESC, 6939d522f475Smrg/* FS GS RS US */ 6940d522f475SmrgCASE_IGNORE, 6941d522f475SmrgCASE_IGNORE, 6942d522f475SmrgCASE_IGNORE, 6943d522f475SmrgCASE_IGNORE, 6944d522f475Smrg/* SP ! " # */ 6945d522f475SmrgCASE_PRINT, 6946d522f475SmrgCASE_PRINT, 6947d522f475SmrgCASE_PRINT, 6948d522f475SmrgCASE_PRINT, 6949d522f475Smrg/* $ % & ' */ 6950d522f475SmrgCASE_PRINT, 6951d522f475SmrgCASE_PRINT, 6952d522f475SmrgCASE_PRINT, 6953d522f475SmrgCASE_PRINT, 6954d522f475Smrg/* ( ) * + */ 6955d522f475SmrgCASE_PRINT, 6956d522f475SmrgCASE_PRINT, 6957d522f475SmrgCASE_PRINT, 6958d522f475SmrgCASE_PRINT, 6959d522f475Smrg/* , - . / */ 6960d522f475SmrgCASE_PRINT, 6961d522f475SmrgCASE_PRINT, 6962d522f475SmrgCASE_PRINT, 6963d522f475SmrgCASE_PRINT, 6964d522f475Smrg/* 0 1 2 3 */ 6965d522f475SmrgCASE_PRINT, 6966d522f475SmrgCASE_PRINT, 6967d522f475SmrgCASE_PRINT, 6968d522f475SmrgCASE_PRINT, 6969d522f475Smrg/* 4 5 6 7 */ 6970d522f475SmrgCASE_PRINT, 6971d522f475SmrgCASE_PRINT, 6972d522f475SmrgCASE_PRINT, 6973d522f475SmrgCASE_PRINT, 6974d522f475Smrg/* 8 9 : ; */ 6975d522f475SmrgCASE_PRINT, 6976d522f475SmrgCASE_PRINT, 6977d522f475SmrgCASE_PRINT, 6978d522f475SmrgCASE_PRINT, 6979d522f475Smrg/* < = > ? */ 6980d522f475SmrgCASE_PRINT, 6981d522f475SmrgCASE_PRINT, 6982d522f475SmrgCASE_PRINT, 6983d522f475SmrgCASE_PRINT, 6984d522f475Smrg/* @ A B C */ 6985d522f475SmrgCASE_PRINT, 6986d522f475SmrgCASE_PRINT, 6987d522f475SmrgCASE_PRINT, 6988d522f475SmrgCASE_PRINT, 6989d522f475Smrg/* D E F G */ 6990d522f475SmrgCASE_PRINT, 6991d522f475SmrgCASE_PRINT, 6992d522f475SmrgCASE_PRINT, 6993d522f475SmrgCASE_PRINT, 6994d522f475Smrg/* H I J K */ 6995d522f475SmrgCASE_PRINT, 6996d522f475SmrgCASE_PRINT, 6997d522f475SmrgCASE_PRINT, 6998d522f475SmrgCASE_PRINT, 6999d522f475Smrg/* L M N O */ 7000d522f475SmrgCASE_PRINT, 7001d522f475SmrgCASE_PRINT, 7002d522f475SmrgCASE_PRINT, 7003d522f475SmrgCASE_PRINT, 7004d522f475Smrg/* P Q R S */ 7005d522f475SmrgCASE_PRINT, 7006d522f475SmrgCASE_PRINT, 7007d522f475SmrgCASE_PRINT, 7008d522f475SmrgCASE_PRINT, 7009d522f475Smrg/* T U V W */ 7010d522f475SmrgCASE_PRINT, 7011d522f475SmrgCASE_PRINT, 7012d522f475SmrgCASE_PRINT, 7013d522f475SmrgCASE_PRINT, 7014d522f475Smrg/* X Y Z [ */ 7015d522f475SmrgCASE_PRINT, 7016d522f475SmrgCASE_PRINT, 7017d522f475SmrgCASE_PRINT, 7018d522f475SmrgCASE_PRINT, 7019d522f475Smrg/* \ ] ^ _ */ 7020d522f475SmrgCASE_PRINT, 7021d522f475SmrgCASE_PRINT, 7022d522f475SmrgCASE_PRINT, 7023d522f475SmrgCASE_PRINT, 7024d522f475Smrg/* ` a b c */ 7025d522f475SmrgCASE_PRINT, 7026d522f475SmrgCASE_PRINT, 7027d522f475SmrgCASE_PRINT, 7028d522f475SmrgCASE_PRINT, 7029d522f475Smrg/* d e f g */ 7030d522f475SmrgCASE_PRINT, 7031d522f475SmrgCASE_PRINT, 7032d522f475SmrgCASE_PRINT, 7033d522f475SmrgCASE_PRINT, 7034d522f475Smrg/* h i j k */ 7035d522f475SmrgCASE_PRINT, 7036d522f475SmrgCASE_PRINT, 7037d522f475SmrgCASE_PRINT, 7038d522f475SmrgCASE_PRINT, 7039d522f475Smrg/* l m n o */ 7040d522f475SmrgCASE_PRINT, 7041d522f475SmrgCASE_PRINT, 7042d522f475SmrgCASE_PRINT, 7043d522f475SmrgCASE_PRINT, 7044d522f475Smrg/* p q r s */ 7045d522f475SmrgCASE_PRINT, 7046d522f475SmrgCASE_PRINT, 7047d522f475SmrgCASE_PRINT, 7048d522f475SmrgCASE_PRINT, 7049d522f475Smrg/* t u v w */ 7050d522f475SmrgCASE_PRINT, 7051d522f475SmrgCASE_PRINT, 7052d522f475SmrgCASE_PRINT, 7053d522f475SmrgCASE_PRINT, 7054d522f475Smrg/* x y z { */ 7055d522f475SmrgCASE_PRINT, 7056d522f475SmrgCASE_PRINT, 7057d522f475SmrgCASE_PRINT, 7058d522f475SmrgCASE_PRINT, 7059d522f475Smrg/* | } ~ DEL */ 7060d522f475SmrgCASE_PRINT, 7061d522f475SmrgCASE_PRINT, 7062d522f475SmrgCASE_PRINT, 7063d522f475SmrgCASE_IGNORE, 7064d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 7065d522f475SmrgCASE_IGNORE, 7066d522f475SmrgCASE_IGNORE, 7067d522f475SmrgCASE_IGNORE, 7068d522f475SmrgCASE_IGNORE, 7069d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 7070d522f475SmrgCASE_IGNORE, 7071d522f475SmrgCASE_IGNORE, 7072d522f475SmrgCASE_IGNORE, 7073d522f475SmrgCASE_IGNORE, 7074d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 7075d522f475SmrgCASE_IGNORE, 7076d522f475SmrgCASE_IGNORE, 7077d522f475SmrgCASE_IGNORE, 7078d522f475SmrgCASE_IGNORE, 7079d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 7080d522f475SmrgCASE_IGNORE, 7081d522f475SmrgCASE_IGNORE, 7082d522f475SmrgCASE_IGNORE, 7083d522f475SmrgCASE_IGNORE, 7084d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 7085d522f475SmrgCASE_IGNORE, 7086d522f475SmrgCASE_IGNORE, 7087d522f475SmrgCASE_IGNORE, 7088d522f475SmrgCASE_IGNORE, 7089d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 7090d522f475SmrgCASE_IGNORE, 7091d522f475SmrgCASE_IGNORE, 7092d522f475SmrgCASE_IGNORE, 7093d522f475SmrgCASE_IGNORE, 7094d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 7095d522f475SmrgCASE_IGNORE, 7096d522f475SmrgCASE_IGNORE, 7097d522f475SmrgCASE_IGNORE, 7098d522f475SmrgCASE_IGNORE, 7099d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 7100d522f475SmrgCASE_IGNORE, 7101d522f475SmrgCASE_IGNORE, 7102d522f475SmrgCASE_IGNORE, 7103d522f475SmrgCASE_IGNORE, 7104d522f475Smrg/* nobreakspace exclamdown cent sterling */ 7105d522f475SmrgCASE_IGNORE, 7106d522f475SmrgCASE_IGNORE, 7107d522f475SmrgCASE_IGNORE, 7108d522f475SmrgCASE_IGNORE, 7109d522f475Smrg/* currency yen brokenbar section */ 7110d522f475SmrgCASE_IGNORE, 7111d522f475SmrgCASE_IGNORE, 7112d522f475SmrgCASE_IGNORE, 7113d522f475SmrgCASE_IGNORE, 7114d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 7115d522f475SmrgCASE_IGNORE, 7116d522f475SmrgCASE_IGNORE, 7117d522f475SmrgCASE_IGNORE, 7118d522f475SmrgCASE_IGNORE, 7119d522f475Smrg/* notsign hyphen registered macron */ 7120d522f475SmrgCASE_IGNORE, 7121d522f475SmrgCASE_IGNORE, 7122d522f475SmrgCASE_IGNORE, 7123d522f475SmrgCASE_IGNORE, 7124d522f475Smrg/* degree plusminus twosuperior threesuperior */ 7125d522f475SmrgCASE_IGNORE, 7126d522f475SmrgCASE_IGNORE, 7127d522f475SmrgCASE_IGNORE, 7128d522f475SmrgCASE_IGNORE, 7129d522f475Smrg/* acute mu paragraph periodcentered */ 7130d522f475SmrgCASE_IGNORE, 7131d522f475SmrgCASE_IGNORE, 7132d522f475SmrgCASE_IGNORE, 7133d522f475SmrgCASE_IGNORE, 7134d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 7135d522f475SmrgCASE_IGNORE, 7136d522f475SmrgCASE_IGNORE, 7137d522f475SmrgCASE_IGNORE, 7138d522f475SmrgCASE_IGNORE, 7139d522f475Smrg/* onequarter onehalf threequarters questiondown */ 7140d522f475SmrgCASE_IGNORE, 7141d522f475SmrgCASE_IGNORE, 7142d522f475SmrgCASE_IGNORE, 7143d522f475SmrgCASE_IGNORE, 7144d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 7145d522f475SmrgCASE_IGNORE, 7146d522f475SmrgCASE_IGNORE, 7147d522f475SmrgCASE_IGNORE, 7148d522f475SmrgCASE_IGNORE, 7149d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 7150d522f475SmrgCASE_IGNORE, 7151d522f475SmrgCASE_IGNORE, 7152d522f475SmrgCASE_IGNORE, 7153d522f475SmrgCASE_IGNORE, 7154d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 7155d522f475SmrgCASE_IGNORE, 7156d522f475SmrgCASE_IGNORE, 7157d522f475SmrgCASE_IGNORE, 7158d522f475SmrgCASE_IGNORE, 7159d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 7160d522f475SmrgCASE_IGNORE, 7161d522f475SmrgCASE_IGNORE, 7162d522f475SmrgCASE_IGNORE, 7163d522f475SmrgCASE_IGNORE, 7164d522f475Smrg/* Eth Ntilde Ograve Oacute */ 7165d522f475SmrgCASE_IGNORE, 7166d522f475SmrgCASE_IGNORE, 7167d522f475SmrgCASE_IGNORE, 7168d522f475SmrgCASE_IGNORE, 7169d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 7170d522f475SmrgCASE_IGNORE, 7171d522f475SmrgCASE_IGNORE, 7172d522f475SmrgCASE_IGNORE, 7173d522f475SmrgCASE_IGNORE, 7174d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 7175d522f475SmrgCASE_IGNORE, 7176d522f475SmrgCASE_IGNORE, 7177d522f475SmrgCASE_IGNORE, 7178d522f475SmrgCASE_IGNORE, 7179d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 7180d522f475SmrgCASE_IGNORE, 7181d522f475SmrgCASE_IGNORE, 7182d522f475SmrgCASE_IGNORE, 7183d522f475SmrgCASE_IGNORE, 7184d522f475Smrg/* agrave aacute acircumflex atilde */ 7185d522f475SmrgCASE_IGNORE, 7186d522f475SmrgCASE_IGNORE, 7187d522f475SmrgCASE_IGNORE, 7188d522f475SmrgCASE_IGNORE, 7189d522f475Smrg/* adiaeresis aring ae ccedilla */ 7190d522f475SmrgCASE_IGNORE, 7191d522f475SmrgCASE_IGNORE, 7192d522f475SmrgCASE_IGNORE, 7193d522f475SmrgCASE_IGNORE, 7194d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 7195d522f475SmrgCASE_IGNORE, 7196d522f475SmrgCASE_IGNORE, 7197d522f475SmrgCASE_IGNORE, 7198d522f475SmrgCASE_IGNORE, 7199d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 7200d522f475SmrgCASE_IGNORE, 7201d522f475SmrgCASE_IGNORE, 7202d522f475SmrgCASE_IGNORE, 7203d522f475SmrgCASE_IGNORE, 7204d522f475Smrg/* eth ntilde ograve oacute */ 7205d522f475SmrgCASE_IGNORE, 7206d522f475SmrgCASE_IGNORE, 7207d522f475SmrgCASE_IGNORE, 7208d522f475SmrgCASE_IGNORE, 7209d522f475Smrg/* ocircumflex otilde odiaeresis division */ 7210d522f475SmrgCASE_IGNORE, 7211d522f475SmrgCASE_IGNORE, 7212d522f475SmrgCASE_IGNORE, 7213d522f475SmrgCASE_IGNORE, 7214d522f475Smrg/* oslash ugrave uacute ucircumflex */ 7215d522f475SmrgCASE_IGNORE, 7216d522f475SmrgCASE_IGNORE, 7217d522f475SmrgCASE_IGNORE, 7218d522f475SmrgCASE_IGNORE, 7219d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 7220d522f475SmrgCASE_IGNORE, 7221d522f475SmrgCASE_IGNORE, 7222d522f475SmrgCASE_IGNORE, 7223d522f475SmrgCASE_IGNORE, 7224d522f475Smrg}; 7225d522f475Smrg 7226d522f475SmrgConst PARSE_T vt52_esc_table[] = 7227d522f475Smrg{ 7228d522f475Smrg/* NUL SOH STX ETX */ 7229d522f475SmrgCASE_IGNORE, 7230d522f475SmrgCASE_IGNORE, 7231d522f475SmrgCASE_IGNORE, 7232d522f475SmrgCASE_IGNORE, 7233d522f475Smrg/* EOT ENQ ACK BEL */ 7234d522f475SmrgCASE_IGNORE, 7235d522f475SmrgCASE_ENQ, 7236d522f475SmrgCASE_IGNORE, 7237d522f475SmrgCASE_BELL, 7238d522f475Smrg/* BS HT NL VT */ 7239d522f475SmrgCASE_BS, 7240d522f475SmrgCASE_TAB, 7241d522f475SmrgCASE_VMOT, 7242d522f475SmrgCASE_VMOT, 7243d522f475Smrg/* NP CR SO SI */ 7244d522f475SmrgCASE_VMOT, 7245d522f475SmrgCASE_CR, 7246d522f475SmrgCASE_IGNORE, 7247d522f475SmrgCASE_IGNORE, 7248d522f475Smrg/* DLE DC1 DC2 DC3 */ 7249d522f475SmrgCASE_IGNORE, 7250d522f475SmrgCASE_IGNORE, 7251d522f475SmrgCASE_IGNORE, 7252d522f475SmrgCASE_IGNORE, 7253d522f475Smrg/* DC4 NAK SYN ETB */ 7254d522f475SmrgCASE_IGNORE, 7255d522f475SmrgCASE_IGNORE, 7256d522f475SmrgCASE_IGNORE, 7257d522f475SmrgCASE_IGNORE, 7258d522f475Smrg/* CAN EM SUB ESC */ 7259d522f475SmrgCASE_GROUND_STATE, 7260d522f475SmrgCASE_IGNORE, 7261d522f475SmrgCASE_GROUND_STATE, 7262d522f475SmrgCASE_ESC, 7263d522f475Smrg/* FS GS RS US */ 7264d522f475SmrgCASE_IGNORE, 7265d522f475SmrgCASE_IGNORE, 7266d522f475SmrgCASE_IGNORE, 7267d522f475SmrgCASE_IGNORE, 7268d522f475Smrg/* SP ! " # */ 7269d522f475SmrgCASE_VT52_IGNORE, 7270d522f475SmrgCASE_VT52_IGNORE, 7271d522f475SmrgCASE_VT52_IGNORE, 7272d522f475SmrgCASE_VT52_IGNORE, 7273d522f475Smrg/* $ % & ' */ 7274d522f475SmrgCASE_VT52_IGNORE, 7275d522f475SmrgCASE_VT52_IGNORE, 7276d522f475SmrgCASE_VT52_IGNORE, 7277d522f475SmrgCASE_VT52_IGNORE, 7278d522f475Smrg/* ( ) * + */ 7279d522f475SmrgCASE_VT52_IGNORE, 7280d522f475SmrgCASE_VT52_IGNORE, 7281d522f475SmrgCASE_VT52_IGNORE, 7282d522f475SmrgCASE_VT52_IGNORE, 7283d522f475Smrg/* , - . / */ 7284d522f475SmrgCASE_VT52_IGNORE, 7285d522f475SmrgCASE_VT52_IGNORE, 7286d522f475SmrgCASE_VT52_IGNORE, 7287d522f475SmrgCASE_VT52_IGNORE, 7288d522f475Smrg/* 0 1 2 3 */ 7289d522f475SmrgCASE_GROUND_STATE, 7290d522f475SmrgCASE_GROUND_STATE, 7291d522f475SmrgCASE_GROUND_STATE, 7292d522f475SmrgCASE_GROUND_STATE, 7293d522f475Smrg/* 4 5 6 7 */ 7294d522f475SmrgCASE_GROUND_STATE, 7295d522f475SmrgCASE_GROUND_STATE, 7296d522f475SmrgCASE_GROUND_STATE, 7297d522f475SmrgCASE_GROUND_STATE, 7298d522f475Smrg/* 8 9 : ; */ 7299d522f475SmrgCASE_GROUND_STATE, 7300d522f475SmrgCASE_GROUND_STATE, 7301d522f475SmrgCASE_GROUND_STATE, 7302d522f475SmrgCASE_GROUND_STATE, 7303d522f475Smrg/* < = > ? */ 7304d522f475SmrgCASE_VT52_FINISH, 7305d522f475SmrgCASE_DECKPAM, 7306d522f475SmrgCASE_DECKPNM, 7307d522f475SmrgCASE_GROUND_STATE, 7308d522f475Smrg/* @ A B C */ 7309d522f475SmrgCASE_GROUND_STATE, 7310d522f475SmrgCASE_CUU, 7311d522f475SmrgCASE_CUD, 7312d522f475SmrgCASE_CUF, 7313d522f475Smrg/* D E F G */ 7314d522f475SmrgCASE_CUB, 7315d522f475SmrgCASE_GROUND_STATE, 7316d522f475SmrgCASE_SO, 7317d522f475SmrgCASE_SI, 7318d522f475Smrg/* H I J K */ 7319d522f475SmrgCASE_CUP, 7320d522f475SmrgCASE_RI, 7321d522f475SmrgCASE_ED, 7322d522f475SmrgCASE_EL, 7323d522f475Smrg/* L M N O */ 7324d522f475SmrgCASE_GROUND_STATE, 7325d522f475SmrgCASE_GROUND_STATE, 7326d522f475SmrgCASE_GROUND_STATE, 7327d522f475SmrgCASE_GROUND_STATE, 7328d522f475Smrg/* P Q R S */ 7329d522f475SmrgCASE_GROUND_STATE, 7330d522f475SmrgCASE_GROUND_STATE, 7331d522f475SmrgCASE_GROUND_STATE, 7332d522f475SmrgCASE_GROUND_STATE, 7333d522f475Smrg/* T U V W */ 7334d522f475SmrgCASE_GROUND_STATE, 7335d522f475SmrgCASE_GROUND_STATE, 7336d522f475SmrgCASE_GROUND_STATE, 7337d522f475SmrgCASE_GROUND_STATE, 7338d522f475Smrg/* X Y Z [ */ 7339d522f475SmrgCASE_GROUND_STATE, 7340d522f475SmrgCASE_VT52_CUP, 7341d522f475SmrgCASE_DECID, 7342d522f475SmrgCASE_GROUND_STATE, 7343d522f475Smrg/* \ ] ^ _ */ 7344d522f475SmrgCASE_GROUND_STATE, 7345d522f475SmrgCASE_GROUND_STATE, 7346d522f475SmrgCASE_GROUND_STATE, 7347d522f475SmrgCASE_GROUND_STATE, 7348d522f475Smrg/* ` a b c */ 7349d522f475SmrgCASE_GROUND_STATE, 7350d522f475SmrgCASE_GROUND_STATE, 7351d522f475SmrgCASE_GROUND_STATE, 7352d522f475SmrgCASE_GROUND_STATE, 7353d522f475Smrg/* d e f g */ 7354d522f475SmrgCASE_GROUND_STATE, 7355d522f475SmrgCASE_GROUND_STATE, 7356d522f475SmrgCASE_GROUND_STATE, 7357d522f475SmrgCASE_GROUND_STATE, 7358d522f475Smrg/* h i j k */ 7359d522f475SmrgCASE_GROUND_STATE, 7360d522f475SmrgCASE_GROUND_STATE, 7361d522f475SmrgCASE_GROUND_STATE, 7362d522f475SmrgCASE_GROUND_STATE, 7363d522f475Smrg/* l m n o */ 7364d522f475SmrgCASE_GROUND_STATE, 7365d522f475SmrgCASE_GROUND_STATE, 7366d522f475SmrgCASE_GROUND_STATE, 7367d522f475SmrgCASE_GROUND_STATE, 7368d522f475Smrg/* p q r s */ 7369d522f475SmrgCASE_GROUND_STATE, 7370d522f475SmrgCASE_GROUND_STATE, 7371d522f475SmrgCASE_GROUND_STATE, 7372d522f475SmrgCASE_GROUND_STATE, 7373d522f475Smrg/* t u v w */ 7374d522f475SmrgCASE_GROUND_STATE, 7375d522f475SmrgCASE_GROUND_STATE, 7376d522f475SmrgCASE_GROUND_STATE, 7377d522f475SmrgCASE_GROUND_STATE, 7378d522f475Smrg/* x y z { */ 7379d522f475SmrgCASE_GROUND_STATE, 7380d522f475SmrgCASE_GROUND_STATE, 7381d522f475SmrgCASE_GROUND_STATE, 7382d522f475SmrgCASE_GROUND_STATE, 7383d522f475Smrg/* | } ~ DEL */ 7384d522f475SmrgCASE_GROUND_STATE, 7385d522f475SmrgCASE_GROUND_STATE, 7386d522f475SmrgCASE_GROUND_STATE, 7387d522f475SmrgCASE_IGNORE, 7388d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 7389d522f475SmrgCASE_IGNORE, 7390d522f475SmrgCASE_IGNORE, 7391d522f475SmrgCASE_IGNORE, 7392d522f475SmrgCASE_IGNORE, 7393d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 7394d522f475SmrgCASE_IGNORE, 7395d522f475SmrgCASE_IGNORE, 7396d522f475SmrgCASE_IGNORE, 7397d522f475SmrgCASE_IGNORE, 7398d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 7399d522f475SmrgCASE_IGNORE, 7400d522f475SmrgCASE_IGNORE, 7401d522f475SmrgCASE_IGNORE, 7402d522f475SmrgCASE_IGNORE, 7403d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 7404d522f475SmrgCASE_IGNORE, 7405d522f475SmrgCASE_IGNORE, 7406d522f475SmrgCASE_IGNORE, 7407d522f475SmrgCASE_IGNORE, 7408d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 7409d522f475SmrgCASE_IGNORE, 7410d522f475SmrgCASE_IGNORE, 7411d522f475SmrgCASE_IGNORE, 7412d522f475SmrgCASE_IGNORE, 7413d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 7414d522f475SmrgCASE_IGNORE, 7415d522f475SmrgCASE_IGNORE, 7416d522f475SmrgCASE_IGNORE, 7417d522f475SmrgCASE_IGNORE, 7418d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 7419d522f475SmrgCASE_IGNORE, 7420d522f475SmrgCASE_IGNORE, 7421d522f475SmrgCASE_IGNORE, 7422d522f475SmrgCASE_IGNORE, 7423d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 7424d522f475SmrgCASE_IGNORE, 7425d522f475SmrgCASE_IGNORE, 7426d522f475SmrgCASE_IGNORE, 7427d522f475SmrgCASE_IGNORE, 7428d522f475Smrg/* nobreakspace exclamdown cent sterling */ 7429d522f475SmrgCASE_IGNORE, 7430d522f475SmrgCASE_IGNORE, 7431d522f475SmrgCASE_IGNORE, 7432d522f475SmrgCASE_IGNORE, 7433d522f475Smrg/* currency yen brokenbar section */ 7434d522f475SmrgCASE_IGNORE, 7435d522f475SmrgCASE_IGNORE, 7436d522f475SmrgCASE_IGNORE, 7437d522f475SmrgCASE_IGNORE, 7438d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 7439d522f475SmrgCASE_IGNORE, 7440d522f475SmrgCASE_IGNORE, 7441d522f475SmrgCASE_IGNORE, 7442d522f475SmrgCASE_IGNORE, 7443d522f475Smrg/* notsign hyphen registered macron */ 7444d522f475SmrgCASE_IGNORE, 7445d522f475SmrgCASE_IGNORE, 7446d522f475SmrgCASE_IGNORE, 7447d522f475SmrgCASE_IGNORE, 7448d522f475Smrg/* degree plusminus twosuperior threesuperior */ 7449d522f475SmrgCASE_IGNORE, 7450d522f475SmrgCASE_IGNORE, 7451d522f475SmrgCASE_IGNORE, 7452d522f475SmrgCASE_IGNORE, 7453d522f475Smrg/* acute mu paragraph periodcentered */ 7454d522f475SmrgCASE_IGNORE, 7455d522f475SmrgCASE_IGNORE, 7456d522f475SmrgCASE_IGNORE, 7457d522f475SmrgCASE_IGNORE, 7458d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 7459d522f475SmrgCASE_IGNORE, 7460d522f475SmrgCASE_IGNORE, 7461d522f475SmrgCASE_IGNORE, 7462d522f475SmrgCASE_IGNORE, 7463d522f475Smrg/* onequarter onehalf threequarters questiondown */ 7464d522f475SmrgCASE_IGNORE, 7465d522f475SmrgCASE_IGNORE, 7466d522f475SmrgCASE_IGNORE, 7467d522f475SmrgCASE_IGNORE, 7468d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 7469d522f475SmrgCASE_IGNORE, 7470d522f475SmrgCASE_IGNORE, 7471d522f475SmrgCASE_IGNORE, 7472d522f475SmrgCASE_IGNORE, 7473d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 7474d522f475SmrgCASE_IGNORE, 7475d522f475SmrgCASE_IGNORE, 7476d522f475SmrgCASE_IGNORE, 7477d522f475SmrgCASE_IGNORE, 7478d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 7479d522f475SmrgCASE_IGNORE, 7480d522f475SmrgCASE_IGNORE, 7481d522f475SmrgCASE_IGNORE, 7482d522f475SmrgCASE_IGNORE, 7483d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 7484d522f475SmrgCASE_IGNORE, 7485d522f475SmrgCASE_IGNORE, 7486d522f475SmrgCASE_IGNORE, 7487d522f475SmrgCASE_IGNORE, 7488d522f475Smrg/* Eth Ntilde Ograve Oacute */ 7489d522f475SmrgCASE_IGNORE, 7490d522f475SmrgCASE_IGNORE, 7491d522f475SmrgCASE_IGNORE, 7492d522f475SmrgCASE_IGNORE, 7493d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 7494d522f475SmrgCASE_IGNORE, 7495d522f475SmrgCASE_IGNORE, 7496d522f475SmrgCASE_IGNORE, 7497d522f475SmrgCASE_IGNORE, 7498d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 7499d522f475SmrgCASE_IGNORE, 7500d522f475SmrgCASE_IGNORE, 7501d522f475SmrgCASE_IGNORE, 7502d522f475SmrgCASE_IGNORE, 7503d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 7504d522f475SmrgCASE_IGNORE, 7505d522f475SmrgCASE_IGNORE, 7506d522f475SmrgCASE_IGNORE, 7507d522f475SmrgCASE_IGNORE, 7508d522f475Smrg/* agrave aacute acircumflex atilde */ 7509d522f475SmrgCASE_IGNORE, 7510d522f475SmrgCASE_IGNORE, 7511d522f475SmrgCASE_IGNORE, 7512d522f475SmrgCASE_IGNORE, 7513d522f475Smrg/* adiaeresis aring ae ccedilla */ 7514d522f475SmrgCASE_IGNORE, 7515d522f475SmrgCASE_IGNORE, 7516d522f475SmrgCASE_IGNORE, 7517d522f475SmrgCASE_IGNORE, 7518d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 7519d522f475SmrgCASE_IGNORE, 7520d522f475SmrgCASE_IGNORE, 7521d522f475SmrgCASE_IGNORE, 7522d522f475SmrgCASE_IGNORE, 7523d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 7524d522f475SmrgCASE_IGNORE, 7525d522f475SmrgCASE_IGNORE, 7526d522f475SmrgCASE_IGNORE, 7527d522f475SmrgCASE_IGNORE, 7528d522f475Smrg/* eth ntilde ograve oacute */ 7529d522f475SmrgCASE_IGNORE, 7530d522f475SmrgCASE_IGNORE, 7531d522f475SmrgCASE_IGNORE, 7532d522f475SmrgCASE_IGNORE, 7533d522f475Smrg/* ocircumflex otilde odiaeresis division */ 7534d522f475SmrgCASE_IGNORE, 7535d522f475SmrgCASE_IGNORE, 7536d522f475SmrgCASE_IGNORE, 7537d522f475SmrgCASE_IGNORE, 7538d522f475Smrg/* oslash ugrave uacute ucircumflex */ 7539d522f475SmrgCASE_IGNORE, 7540d522f475SmrgCASE_IGNORE, 7541d522f475SmrgCASE_IGNORE, 7542d522f475SmrgCASE_IGNORE, 7543d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 7544d522f475SmrgCASE_IGNORE, 7545d522f475SmrgCASE_IGNORE, 7546d522f475SmrgCASE_IGNORE, 7547d522f475SmrgCASE_IGNORE, 7548d522f475Smrg}; 7549d522f475Smrg 7550d522f475SmrgConst PARSE_T vt52_ignore_table[] = 7551d522f475Smrg{ 7552d522f475Smrg/* NUL SOH STX ETX */ 7553d522f475SmrgCASE_IGNORE, 7554d522f475SmrgCASE_IGNORE, 7555d522f475SmrgCASE_IGNORE, 7556d522f475SmrgCASE_IGNORE, 7557d522f475Smrg/* EOT ENQ ACK BEL */ 7558d522f475SmrgCASE_IGNORE, 7559d522f475SmrgCASE_ENQ, 7560d522f475SmrgCASE_IGNORE, 7561d522f475SmrgCASE_BELL, 7562d522f475Smrg/* BS HT NL VT */ 7563d522f475SmrgCASE_BS, 7564d522f475SmrgCASE_TAB, 7565d522f475SmrgCASE_VMOT, 7566d522f475SmrgCASE_VMOT, 7567d522f475Smrg/* NP CR SO SI */ 7568d522f475SmrgCASE_VMOT, 7569d522f475SmrgCASE_CR, 7570d522f475SmrgCASE_IGNORE, 7571d522f475SmrgCASE_IGNORE, 7572d522f475Smrg/* DLE DC1 DC2 DC3 */ 7573d522f475SmrgCASE_IGNORE, 7574d522f475SmrgCASE_IGNORE, 7575d522f475SmrgCASE_IGNORE, 7576d522f475SmrgCASE_IGNORE, 7577d522f475Smrg/* DC4 NAK SYN ETB */ 7578d522f475SmrgCASE_IGNORE, 7579d522f475SmrgCASE_IGNORE, 7580d522f475SmrgCASE_IGNORE, 7581d522f475SmrgCASE_IGNORE, 7582d522f475Smrg/* CAN EM SUB ESC */ 7583d522f475SmrgCASE_GROUND_STATE, 7584d522f475SmrgCASE_IGNORE, 7585d522f475SmrgCASE_GROUND_STATE, 7586d522f475SmrgCASE_ESC, 7587d522f475Smrg/* FS GS RS US */ 7588d522f475SmrgCASE_IGNORE, 7589d522f475SmrgCASE_IGNORE, 7590d522f475SmrgCASE_IGNORE, 7591d522f475SmrgCASE_IGNORE, 7592d522f475Smrg/* SP ! " # */ 7593d522f475SmrgCASE_IGNORE, 7594d522f475SmrgCASE_IGNORE, 7595d522f475SmrgCASE_IGNORE, 7596d522f475SmrgCASE_IGNORE, 7597d522f475Smrg/* $ % & ' */ 7598d522f475SmrgCASE_IGNORE, 7599d522f475SmrgCASE_IGNORE, 7600d522f475SmrgCASE_IGNORE, 7601d522f475SmrgCASE_IGNORE, 7602d522f475Smrg/* ( ) * + */ 7603d522f475SmrgCASE_IGNORE, 7604d522f475SmrgCASE_IGNORE, 7605d522f475SmrgCASE_IGNORE, 7606d522f475SmrgCASE_IGNORE, 7607d522f475Smrg/* , - . / */ 7608d522f475SmrgCASE_IGNORE, 7609d522f475SmrgCASE_IGNORE, 7610d522f475SmrgCASE_IGNORE, 7611d522f475SmrgCASE_IGNORE, 7612d522f475Smrg/* 0 1 2 3 */ 7613d522f475SmrgCASE_GROUND_STATE, 7614d522f475SmrgCASE_GROUND_STATE, 7615d522f475SmrgCASE_GROUND_STATE, 7616d522f475SmrgCASE_GROUND_STATE, 7617d522f475Smrg/* 4 5 6 7 */ 7618d522f475SmrgCASE_GROUND_STATE, 7619d522f475SmrgCASE_GROUND_STATE, 7620d522f475SmrgCASE_GROUND_STATE, 7621d522f475SmrgCASE_GROUND_STATE, 7622d522f475Smrg/* 8 9 : ; */ 7623d522f475SmrgCASE_GROUND_STATE, 7624d522f475SmrgCASE_GROUND_STATE, 7625d522f475SmrgCASE_GROUND_STATE, 7626d522f475SmrgCASE_GROUND_STATE, 7627d522f475Smrg/* < = > ? */ 7628d522f475SmrgCASE_GROUND_STATE, 7629d522f475SmrgCASE_GROUND_STATE, 7630d522f475SmrgCASE_GROUND_STATE, 7631d522f475SmrgCASE_GROUND_STATE, 7632d522f475Smrg/* @ A B C */ 7633d522f475SmrgCASE_GROUND_STATE, 7634d522f475SmrgCASE_GROUND_STATE, 7635d522f475SmrgCASE_GROUND_STATE, 7636d522f475SmrgCASE_GROUND_STATE, 7637d522f475Smrg/* D E F G */ 7638d522f475SmrgCASE_GROUND_STATE, 7639d522f475SmrgCASE_GROUND_STATE, 7640d522f475SmrgCASE_GROUND_STATE, 7641d522f475SmrgCASE_GROUND_STATE, 7642d522f475Smrg/* H I J K */ 7643d522f475SmrgCASE_GROUND_STATE, 7644d522f475SmrgCASE_GROUND_STATE, 7645d522f475SmrgCASE_GROUND_STATE, 7646d522f475SmrgCASE_GROUND_STATE, 7647d522f475Smrg/* L M N O */ 7648d522f475SmrgCASE_GROUND_STATE, 7649d522f475SmrgCASE_GROUND_STATE, 7650d522f475SmrgCASE_GROUND_STATE, 7651d522f475SmrgCASE_GROUND_STATE, 7652d522f475Smrg/* P Q R S */ 7653d522f475SmrgCASE_GROUND_STATE, 7654d522f475SmrgCASE_GROUND_STATE, 7655d522f475SmrgCASE_GROUND_STATE, 7656d522f475SmrgCASE_GROUND_STATE, 7657d522f475Smrg/* T U V W */ 7658d522f475SmrgCASE_GROUND_STATE, 7659d522f475SmrgCASE_GROUND_STATE, 7660d522f475SmrgCASE_GROUND_STATE, 7661d522f475SmrgCASE_GROUND_STATE, 7662d522f475Smrg/* X Y Z [ */ 7663d522f475SmrgCASE_GROUND_STATE, 7664d522f475SmrgCASE_GROUND_STATE, 7665d522f475SmrgCASE_GROUND_STATE, 7666d522f475SmrgCASE_GROUND_STATE, 7667d522f475Smrg/* \ ] ^ _ */ 7668d522f475SmrgCASE_GROUND_STATE, 7669d522f475SmrgCASE_GROUND_STATE, 7670d522f475SmrgCASE_GROUND_STATE, 7671d522f475SmrgCASE_GROUND_STATE, 7672d522f475Smrg/* ` a b c */ 7673d522f475SmrgCASE_GROUND_STATE, 7674d522f475SmrgCASE_GROUND_STATE, 7675d522f475SmrgCASE_GROUND_STATE, 7676d522f475SmrgCASE_GROUND_STATE, 7677d522f475Smrg/* d e f g */ 7678d522f475SmrgCASE_GROUND_STATE, 7679d522f475SmrgCASE_GROUND_STATE, 7680d522f475SmrgCASE_GROUND_STATE, 7681d522f475SmrgCASE_GROUND_STATE, 7682d522f475Smrg/* h i j k */ 7683d522f475SmrgCASE_GROUND_STATE, 7684d522f475SmrgCASE_GROUND_STATE, 7685d522f475SmrgCASE_GROUND_STATE, 7686d522f475SmrgCASE_GROUND_STATE, 7687d522f475Smrg/* l m n o */ 7688d522f475SmrgCASE_GROUND_STATE, 7689d522f475SmrgCASE_GROUND_STATE, 7690d522f475SmrgCASE_GROUND_STATE, 7691d522f475SmrgCASE_GROUND_STATE, 7692d522f475Smrg/* p q r s */ 7693d522f475SmrgCASE_GROUND_STATE, 7694d522f475SmrgCASE_GROUND_STATE, 7695d522f475SmrgCASE_GROUND_STATE, 7696d522f475SmrgCASE_GROUND_STATE, 7697d522f475Smrg/* t u v w */ 7698d522f475SmrgCASE_GROUND_STATE, 7699d522f475SmrgCASE_GROUND_STATE, 7700d522f475SmrgCASE_GROUND_STATE, 7701d522f475SmrgCASE_GROUND_STATE, 7702d522f475Smrg/* x y z { */ 7703d522f475SmrgCASE_GROUND_STATE, 7704d522f475SmrgCASE_GROUND_STATE, 7705d522f475SmrgCASE_GROUND_STATE, 7706d522f475SmrgCASE_GROUND_STATE, 7707d522f475Smrg/* | } ~ DEL */ 7708d522f475SmrgCASE_GROUND_STATE, 7709d522f475SmrgCASE_GROUND_STATE, 7710d522f475SmrgCASE_GROUND_STATE, 7711d522f475SmrgCASE_IGNORE, 7712d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 7713d522f475SmrgCASE_IGNORE, 7714d522f475SmrgCASE_IGNORE, 7715d522f475SmrgCASE_IGNORE, 7716d522f475SmrgCASE_IGNORE, 7717d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 7718d522f475SmrgCASE_IGNORE, 7719d522f475SmrgCASE_IGNORE, 7720d522f475SmrgCASE_IGNORE, 7721d522f475SmrgCASE_IGNORE, 7722d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 7723d522f475SmrgCASE_IGNORE, 7724d522f475SmrgCASE_IGNORE, 7725d522f475SmrgCASE_IGNORE, 7726d522f475SmrgCASE_IGNORE, 7727d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 7728d522f475SmrgCASE_IGNORE, 7729d522f475SmrgCASE_IGNORE, 7730d522f475SmrgCASE_IGNORE, 7731d522f475SmrgCASE_IGNORE, 7732d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 7733d522f475SmrgCASE_IGNORE, 7734d522f475SmrgCASE_IGNORE, 7735d522f475SmrgCASE_IGNORE, 7736d522f475SmrgCASE_IGNORE, 7737d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 7738d522f475SmrgCASE_IGNORE, 7739d522f475SmrgCASE_IGNORE, 7740d522f475SmrgCASE_IGNORE, 7741d522f475SmrgCASE_IGNORE, 7742d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 7743d522f475SmrgCASE_IGNORE, 7744d522f475SmrgCASE_IGNORE, 7745d522f475SmrgCASE_IGNORE, 7746d522f475SmrgCASE_IGNORE, 7747d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 7748d522f475SmrgCASE_IGNORE, 7749d522f475SmrgCASE_IGNORE, 7750d522f475SmrgCASE_IGNORE, 7751d522f475SmrgCASE_IGNORE, 7752d522f475Smrg/* nobreakspace exclamdown cent sterling */ 7753d522f475SmrgCASE_IGNORE, 7754d522f475SmrgCASE_IGNORE, 7755d522f475SmrgCASE_IGNORE, 7756d522f475SmrgCASE_IGNORE, 7757d522f475Smrg/* currency yen brokenbar section */ 7758d522f475SmrgCASE_IGNORE, 7759d522f475SmrgCASE_IGNORE, 7760d522f475SmrgCASE_IGNORE, 7761d522f475SmrgCASE_IGNORE, 7762d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 7763d522f475SmrgCASE_IGNORE, 7764d522f475SmrgCASE_IGNORE, 7765d522f475SmrgCASE_IGNORE, 7766d522f475SmrgCASE_IGNORE, 7767d522f475Smrg/* notsign hyphen registered macron */ 7768d522f475SmrgCASE_IGNORE, 7769d522f475SmrgCASE_IGNORE, 7770d522f475SmrgCASE_IGNORE, 7771d522f475SmrgCASE_IGNORE, 7772d522f475Smrg/* degree plusminus twosuperior threesuperior */ 7773d522f475SmrgCASE_IGNORE, 7774d522f475SmrgCASE_IGNORE, 7775d522f475SmrgCASE_IGNORE, 7776d522f475SmrgCASE_IGNORE, 7777d522f475Smrg/* acute mu paragraph periodcentered */ 7778d522f475SmrgCASE_IGNORE, 7779d522f475SmrgCASE_IGNORE, 7780d522f475SmrgCASE_IGNORE, 7781d522f475SmrgCASE_IGNORE, 7782d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 7783d522f475SmrgCASE_IGNORE, 7784d522f475SmrgCASE_IGNORE, 7785d522f475SmrgCASE_IGNORE, 7786d522f475SmrgCASE_IGNORE, 7787d522f475Smrg/* onequarter onehalf threequarters questiondown */ 7788d522f475SmrgCASE_IGNORE, 7789d522f475SmrgCASE_IGNORE, 7790d522f475SmrgCASE_IGNORE, 7791d522f475SmrgCASE_IGNORE, 7792d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 7793d522f475SmrgCASE_IGNORE, 7794d522f475SmrgCASE_IGNORE, 7795d522f475SmrgCASE_IGNORE, 7796d522f475SmrgCASE_IGNORE, 7797d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 7798d522f475SmrgCASE_IGNORE, 7799d522f475SmrgCASE_IGNORE, 7800d522f475SmrgCASE_IGNORE, 7801d522f475SmrgCASE_IGNORE, 7802d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 7803d522f475SmrgCASE_IGNORE, 7804d522f475SmrgCASE_IGNORE, 7805d522f475SmrgCASE_IGNORE, 7806d522f475SmrgCASE_IGNORE, 7807d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 7808d522f475SmrgCASE_IGNORE, 7809d522f475SmrgCASE_IGNORE, 7810d522f475SmrgCASE_IGNORE, 7811d522f475SmrgCASE_IGNORE, 7812d522f475Smrg/* Eth Ntilde Ograve Oacute */ 7813d522f475SmrgCASE_IGNORE, 7814d522f475SmrgCASE_IGNORE, 7815d522f475SmrgCASE_IGNORE, 7816d522f475SmrgCASE_IGNORE, 7817d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 7818d522f475SmrgCASE_IGNORE, 7819d522f475SmrgCASE_IGNORE, 7820d522f475SmrgCASE_IGNORE, 7821d522f475SmrgCASE_IGNORE, 7822d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 7823d522f475SmrgCASE_IGNORE, 7824d522f475SmrgCASE_IGNORE, 7825d522f475SmrgCASE_IGNORE, 7826d522f475SmrgCASE_IGNORE, 7827d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 7828d522f475SmrgCASE_IGNORE, 7829d522f475SmrgCASE_IGNORE, 7830d522f475SmrgCASE_IGNORE, 7831d522f475SmrgCASE_IGNORE, 7832d522f475Smrg/* agrave aacute acircumflex atilde */ 7833d522f475SmrgCASE_IGNORE, 7834d522f475SmrgCASE_IGNORE, 7835d522f475SmrgCASE_IGNORE, 7836d522f475SmrgCASE_IGNORE, 7837d522f475Smrg/* adiaeresis aring ae ccedilla */ 7838d522f475SmrgCASE_IGNORE, 7839d522f475SmrgCASE_IGNORE, 7840d522f475SmrgCASE_IGNORE, 7841d522f475SmrgCASE_IGNORE, 7842d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 7843d522f475SmrgCASE_IGNORE, 7844d522f475SmrgCASE_IGNORE, 7845d522f475SmrgCASE_IGNORE, 7846d522f475SmrgCASE_IGNORE, 7847d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 7848d522f475SmrgCASE_IGNORE, 7849d522f475SmrgCASE_IGNORE, 7850d522f475SmrgCASE_IGNORE, 7851d522f475SmrgCASE_IGNORE, 7852d522f475Smrg/* eth ntilde ograve oacute */ 7853d522f475SmrgCASE_IGNORE, 7854d522f475SmrgCASE_IGNORE, 7855d522f475SmrgCASE_IGNORE, 7856d522f475SmrgCASE_IGNORE, 7857d522f475Smrg/* ocircumflex otilde odiaeresis division */ 7858d522f475SmrgCASE_IGNORE, 7859d522f475SmrgCASE_IGNORE, 7860d522f475SmrgCASE_IGNORE, 7861d522f475SmrgCASE_IGNORE, 7862d522f475Smrg/* oslash ugrave uacute ucircumflex */ 7863d522f475SmrgCASE_IGNORE, 7864d522f475SmrgCASE_IGNORE, 7865d522f475SmrgCASE_IGNORE, 7866d522f475SmrgCASE_IGNORE, 7867d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 7868d522f475SmrgCASE_IGNORE, 7869d522f475SmrgCASE_IGNORE, 7870d522f475SmrgCASE_IGNORE, 7871d522f475SmrgCASE_IGNORE, 7872d522f475Smrg}; 7873d522f475Smrg#endif /* OPT_VT52_MODE */ 7874